Jason A. Donenfeld
8390553850
QuickTileService: require SYSTEM_ALERT_WINDOW to start background activity
...
Due to buggy changes in Android 14, we now need to bother the user about
enabling "draw over other apps" for the quick settings toggle to work
when the app isn't already running.
Link: https://issuetracker.google.com/issues/305035828
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-10-18 14:26:41 +02:00
Jason A. Donenfeld
db7f70736f
gradle: bump many deps
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-10-13 21:32:16 +02:00
SlipkHunter
0be12b8d07
ui: only show a snackbar for Android 12 and lower
...
Signed-off-by: SlipkHunter <abrito025@gmail.com>
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2023-09-12 12:23:46 +05:30
Jason A. Donenfeld
434534ac59
ui: hide corrupted message if no installer
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-07-07 05:06:04 +02:00
Jason A. Donenfeld
0f77af85d3
ui: sync with crowdin
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-07-07 04:24:14 +02:00
Jason A. Donenfeld
adefd16f7e
ui: remove unused elvis operators
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-07-06 19:05:52 +02:00
Jason A. Donenfeld
e4a49a5356
ui: use api 34's startActivityAndCollapse
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-07-06 19:05:52 +02:00
Jason A. Donenfeld
58ec110360
gradle: remove unused import
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-07-05 17:59:01 +02:00
Jason A. Donenfeld
a7ce5ad42a
gradle: bump to api 34
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-07-05 16:13:19 +02:00
Jason A. Donenfeld
fbcbfbd311
strings: sync with crowdin
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-05-26 16:19:52 +02:00
Jason A. Donenfeld
2abd426cdc
gradle: bump to agp 8.2.0-alpha05
...
I wanted to stay on 8.1 in hopes of landing on a stable channel, but
Google won't backport the RB fix, so we have to bump to 8.2 alphas.
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-05-26 16:19:52 +02:00
Jason A. Donenfeld
37a892a2da
gradle: sort extracted locales rather than generated XML
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-05-26 16:19:52 +02:00
Jason A. Donenfeld
f2d166a6a4
ui: add basic double update guard
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-05-26 16:19:52 +02:00
Jason A. Donenfeld
d883802178
ui: remove debug keys
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-05-26 16:19:52 +02:00
Jason A. Donenfeld
8d990be204
ui: add missing article to string
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-05-14 01:18:12 +02:00
Jason A. Donenfeld
9972d9607e
gradle: sort lines in localeConfig
...
This works around https://issuetracker.google.com/issues/281825213
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-05-13 01:12:15 +02:00
Jason A. Donenfeld
6a72194106
ui: use modal corruption alert instead of snackbar
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-05-11 13:50:26 +02:00
Jason A. Donenfeld
254e6164d7
ui: use applicationScope helper when possible
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-05-11 02:57:38 +02:00
Jason A. Donenfeld
675386241b
ui: cleanup quick tile and modernize
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-05-11 02:52:50 +02:00
Jason A. Donenfeld
fb08bb6bd4
strings: sync with crowdin
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-05-10 20:54:29 +02:00
Jason A. Donenfeld
70f8e5ab3a
ui: add shortcut for adding quick settings tile
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-05-10 20:48:11 +02:00
Jason A. Donenfeld
e53a8d76f9
gradle: hack around 8.1.0-beta02 api 21 outlining bug
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-05-10 19:56:08 +02:00
Jason A. Donenfeld
e0b4551bca
gradle: generate locales for per-app picking
...
Enable the per-app locale picking menu by adding the right metadata
automatically to the manifest with new AGP automation.
This attempts to follow:
https://developer.android.com/guide/topics/resources/app-languages#use-localeconfig
Using the new AGP feature:
https://developer.android.com/studio/preview/features#automatic-per-app-languages
It appears to work, and it also should squelch the "W AppCompatDelegate:
Checking for metadata for AppLocalesMetadataHolderService : " warnings
on old Android that syphyr pointed out.
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-05-10 19:56:04 +02:00
Jason A. Donenfeld
4156b83b84
ui: bifurcate only parts of release but nag about wrong context
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-05-10 19:10:53 +02:00
Jason A. Donenfeld
f829b8abe0
gradle: exclude version meta files in release build
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-05-10 16:54:12 +02:00
Jason A. Donenfeld
5cafd1ebe4
ui: use debug key in debug builds
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-05-08 14:00:09 +02:00
Jason A. Donenfeld
51991324a9
ui: only register contracts in constructors
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-05-08 13:31:33 +02:00
Jason A. Donenfeld
33a8a51962
gradle: restore play runtime detection
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-05-08 13:08:09 +02:00
Jason A. Donenfeld
40eaa54cf0
ui: reformat all code
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-05-05 13:18:30 +02:00
Jason A. Donenfeld
a3bfa6f1ab
ui: collect logs from IO thread only
...
Otherwise the pop() from the producer might causes an OOB read in the
consumer:
Exception java.lang.ArrayIndexOutOfBoundsException:
at androidx.collection.CircularArray.get (CircularArray.java)
at com.wireguard.android.activity.LogViewerActivity.rawLogBytes (LogViewerActivity.java)
at com.wireguard.android.activity.LogViewerActivity.onCreate$lambda$3 (LogViewerActivity.java:133)
at android.view.View.performClick (View.java:6935)
at android.view.View$PerformClick.run (View.java:26214)
at android.os.Handler.handleCallback (Handler.java:790)
at android.os.Handler.dispatchMessage (Handler.java:99)
at android.os.Looper.loop (Looper.java:164)
at android.app.ActivityThread.main (ActivityThread.java:7000)
at java.lang.reflect.Method.invoke
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:441)
at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1408)
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-05-05 02:56:51 +02:00
Jason A. Donenfeld
7778ff63b5
gradle: use matching fallback instead of build type
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-05-05 02:43:36 +02:00
Jason A. Donenfeld
9e30c7d2e9
strings: sync with crowdin
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-05-03 15:41:41 +02:00
Jason A. Donenfeld
d80129ba46
gradle: use += when possible
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-05-03 15:37:06 +02:00
Jason A. Donenfeld
dca96a52b4
gradle: reabstract package name
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-05-03 14:09:11 +02:00
Jason A. Donenfeld
cf4fca8086
gradle: remove runtime detection of play store
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-05-04 16:45:01 +02:00
Jason A. Donenfeld
4e28d57aee
gradle: use Java 17
...
It appears to work, even on API 21.
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-05-03 14:01:05 +02:00
Harsh Shandilya
6d67a3d5f5
gradle: upgrade Kotlin and AGP
...
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2023-05-03 00:52:52 +05:30
Harsh Shandilya
1b5f4d6dfd
gradle: move JVM target up to 11
...
1.8 is being deprecated across the board
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2023-05-03 00:49:47 +05:30
Harsh Shandilya
bed2f2e5d6
gradle: convert build files to Kotlin
...
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2023-05-03 00:43:18 +05:30
Jason A. Donenfeld
8800f861ed
ui: update cleanups
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-05-03 14:28:40 +02:00
Jason A. Donenfeld
e2f931b4cb
ui: use .seconds instead of .toDuration
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-05-05 12:55:51 +02:00
Jason A. Donenfeld
d6ad7d11d0
ui: handle update signatures
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-05-01 16:24:41 +02:00
Jason A. Donenfeld
0797e99559
proguard: cleanup unused parts
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-04-27 13:12:02 +02:00
Jason A. Donenfeld
b4fe9efadb
strings: sync with crowdin
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-04-13 18:49:36 +02:00
Jason A. Donenfeld
b1b08ce716
ui: display latest handshake time
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-04-24 18:07:03 +02:00
Jason A. Donenfeld
0b0a553123
ui: remove unused extra_margin constant
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-04-13 19:36:20 +02:00
Jason A. Donenfeld
c2fdd0ca93
ui: layout: don't stretch text fields, so that alignment is correct
...
This makes things look uniform on RTL.
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-04-13 17:47:36 +02:00
Jason A. Donenfeld
19044b0f53
ui: LogViewerActivity: cleanup ret val
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-04-13 16:06:54 +02:00
Jason A. Donenfeld
8152191277
ui: further reduce log viewer memory usage
...
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-04-12 13:48:55 +02:00
Jason A. Donenfeld
fdda87fd31
tunnel: defer enabling strict mode until later
...
Startup code can be synchronous.
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2023-04-11 19:20:26 +02:00