summaryrefslogtreecommitdiffhomepage
path: root/ui
AgeCommit message (Collapse)Author
2023-04-04ui: do not crash if tunnel preparation failsJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-04-04ui: do not OOM when leaving log window open for a whileJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-04-04ui: show bottom sheet sync to prevent double addJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-04-04ui: do not return to detail page when restoring stateJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-04-04ui: never access CREATOR directlyJason A. Donenfeld
All of the parcelers have their own type prefix. So we have to actually use the legit methods. This is a bit annoying, as there's no fully compatible way across all API versions, so we have to branch. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-04-04ui: never throw on link clicksJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-04-04build: exclude extra kotlin cruft from release buildJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-03-30ui: don't play with status and navigation colors on old APIsJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-03-30ui: do not allow double clicking fab to show menu twiceJason A. Donenfeld
Exception java.lang.IllegalStateException: at androidx.fragment.app.FragmentStore.addFragment (FragmentStore.java:92) at androidx.fragment.app.FragmentManager.addFragment (FragmentManager.java:1481) at androidx.fragment.app.BackStackRecord.executeOps (BackStackRecord.java:387) at androidx.fragment.app.FragmentManager.executeOps (FragmentManager.java:1965) at androidx.fragment.app.FragmentManager.executeOpsTogether (FragmentManager.java:1873) at androidx.fragment.app.FragmentManager.removeRedundantOperationsAndExecute (FragmentManager.java:1823) at androidx.fragment.app.FragmentManager.execPendingActions (FragmentManager.java:1760) at androidx.fragment.app.FragmentManager$5.run (FragmentManager.java:547) at android.os.Handler.handleCallback (Handler.java:938) at android.os.Handler.dispatchMessage (Handler.java:99) at android.os.Looper.loop (Looper.java:268) at android.app.ActivityThread.main (ActivityThread.java:8101) at java.lang.reflect.Method.invoke at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:627) at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:997) Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-03-30ui: remove unneeded @JvmStatic annotationsJason A. Donenfeld
These are only needed on methods called from databindings, since those compile to java. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-03-30ui: add list selection highlight color for tabletJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-03-30ui: the button is not always blue with Material YouJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-03-30ui: use app resources instead of ctx for strings in callbackJason A. Donenfeld
Exception java.lang.IllegalStateException: at androidx.fragment.app.Fragment.requireContext (Fragment.java:967) at com.wireguard.android.fragment.TunnelListFragment$tunnelFileImportResultLauncher$1$1.invokeSuspend (TunnelListFragment.kt:64) at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith (ContinuationImpl.kt:33) at kotlinx.coroutines.DispatchedTask.run (DispatchedTask.kt:104) at android.os.Handler.handleCallback (Handler.java:761) at android.os.Handler.dispatchMessage (Handler.java:98) at android.os.Looper.loop (Looper.java:156) at android.app.ActivityThread.main (ActivityThread.java:6617) at java.lang.reflect.Method.invoke at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run (ZygoteInit.java:942) at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:832) Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-03-30ui: use M3 theme for TV to prevent crashJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-03-28strings: sync crowdinJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-03-28ui: add log items in buffered batchesJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-03-28ui: color verbose logs the same as debug logsJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-03-28ui: don't call getColor on already resolved attributeJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-03-28ui: bring back dark log viewer colorsJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-03-28ui: fix inconsistent style namingHarsh Shandilya
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2023-03-28ui: adjust log viewer text sizesHarsh Shandilya
10sp is below the minimum 11sp recommended for readability Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2023-03-28ui: use M3 styles everywhereHarsh Shandilya
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2023-03-27ui: add possibility for themed iconJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-03-27ui: add list selection backgroundsJason A. Donenfeld
Harsh - feel free to replace this commit with something better. I'm sure it's the most terrible way to do it. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-03-27ui: cancel actionmode when pressing back buttonJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-03-27ui: simplify actionmode castJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-03-27ui: introduce a fresh set of Material3 themes and migrate to themHarsh Shandilya
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2023-03-27ui: use AndroidX `BundleCompat` for extracting parcelableHarsh Shandilya
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2023-03-25ui: switch from SwitchMaterial to MaterialSwitchJason A. Donenfeld
This required some weird changes to prevent clipping on the top, because apparently the new switch is a bit fatter. I think this actually looks a bit uglier than before, but it seems like that's what Material design wants. Maybe we can improve it? Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-03-24ui: bring back donation buttonJason A. Donenfeld
For Google Play Store builds, we'll display an alert box. This was inspired by the discussion around StreetComplete; hopefully we'll have a similar okay outcome. Link: https://github.com/streetcomplete/streetcomplete/issues/3768 Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-03-24strings: update from crowdinJason A. Donenfeld
This is after doing a rebuild on the crowdin side. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-03-24ui: fix inconsistent toolbar colorHarsh Shandilya
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2023-03-24ui: use Material switch componentHarsh Shandilya
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2023-03-24ui: migrate to OnBackPressedDispatcherJason A. Donenfeld
This is compatible with Android 13's prediction-based back gesture animation. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-03-24build: raise target SDK to 33Harsh Shandilya
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2023-03-24ui: set selected tunnel after creating fragmentsJason A. Donenfeld
I'm not sure why that comment (Samuel's) was there saying it was necessary. Given it's been async for a long while, this wasn't guaranteed anyway. So let's get rid of it and see what happens. Screen rotation seems fine thus far. Cc: Samuel Holland <samuel@sholland.org> Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-03-24ui: switch from using launchWhenCreated to using repeatOnLifecycleJason A. Donenfeld
Apparently the former is deprecated. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-03-24ui: simplify IME displaying in ConfigNamingDialogFragmentJason A. Donenfeld
Also cleanup some event listener flow. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-03-22ui: migrate to MenuProviderHarsh Shandilya
AndroidX Activity 1.4.0 introduced the new lifecycle-dependent MenuProvider APIs that supersede existing onCreateOptionsMenu-style menus. Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2023-03-22ui: address Parcelable API deprecationsHarsh Shandilya
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2023-03-22ui: address PackageManager API deprecationsHarsh Shandilya
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2023-03-22gradle: use idiomatic task handlingHarsh Shandilya
- The hand-rolled clean task is not required - Tasks should use configureEach to prevent eager evaluation Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2023-03-22tools: compile with latest NDKJason A. Donenfeld
The -mthumb -> -marm hack is unfortunate. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-03-22ui: set button text after loading app list in AppListDialogFragmentJason A. Donenfeld
Otherwise, for lots of apps, the dialog shows before they're enumerated, and the button text never gets set. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-03-21gradle: use same NDK for tunnel and UIL.W.Reek
Fixes: 4f261560 ("gradle: force the use of an older NDK version") Signed-off-by: L.W.Reek <syphyr@gmail.com> Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-03-21build: Google Play requires target API level 31 or higherL.W.Reek
Fix build failure from lint check Signed-off-by: L.W.Reek <syphyr@gmail.com> Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-03-21strings: sync with crowdinJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-03-21global: bump copyright dateJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-03-21build: update to gradle 7.4.2 and restructure lint blockJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-01-20gradle: adjust for and raise compileSdk to 33SlipkHunter
Signed-off-by: SlipkHunter <abrito025@gmail.com> Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>