summaryrefslogtreecommitdiffhomepage
path: root/ui
AgeCommit message (Collapse)Author
2020-03-28TunnelComparator: naturally sort tunnel listJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-28strings: Sync from CrowdinHarsh Shandilya
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-03-28ObservableTunnel: Don't recurse in getConfigHarsh Shandilya
The correct way to retrieve the value inside a getter/setter is to use `field` to ensure you don't invoke the getter while inside the getter and trigger a stack overflow Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-03-27strings: update Russian translateAlexey
Signed-off-by: Alexey <zasranecc@bk.ru> Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-27databinding: simplify and address warningsJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-27ui: Replace ErrorMessages getter with indexing operatorHarsh Shandilya
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-03-27Convert ErrorMessages to KotlinHarsh Shandilya
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-03-27Convert AsyncWorker to KotlinHarsh Shandilya
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-03-27databinding: rewrite in kotlinJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-27util: begin conversion to kotlinJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-26TunnelManager: convert to kotlinJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-26util: Start converting to KotlinHarsh Shandilya
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-03-26ObservableTunnel: port to kotlinJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-26LogViewerActivity: merge lines that don't match regexJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-26LogViewerActivity: re-add error case to log exportJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-26strings: update Russian translateAlexey
Signed-off-by: Alexey <zasranecc@bk.ru> Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-26LogViewerActivity: constify requestJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-26LogViewerActivity: set a separate titleJason A. Donenfeld
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-03-26ui: root: rewrite in kotlinJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-26ui: cleanup various pieces of kotlinJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-26xml: cleanupJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-26preferences: add key to all items to squelch warningsJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-26Introduce realtime log viewerHarsh Shandilya
This contains a share button and a save button, the former using a custom content provider. Co-authored-by: Jason A. Donenfeld <Jason@zx2c4.com> Signed-off-by: Harsh Shandilya <me@msfjarvis.dev> Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-25strings: update Russian translateAlexey
Signed-off-by: Alexey <zasranecc@bk.ru> Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-25LogExporterPreference: Don't ask for storage permissions on Android 10 and aboveHarsh Shandilya
We use the proper MediaStore implementation on Android 10 which makes it unnecessary. Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-03-25strings: Explicit indexing for 'import_partial_success'Eiji Tanioka
When translate it to Japanese, values are exchanged. For example, '1 of 10' is '10 個中の 1'. So this string should be explicit indexed. Signed-off-by: Eiji Tanioka <tanioka404@gmail.com> Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-03-24ui: squelch warningsJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-24TunnelManager: disallow remote apps for LJason A. Donenfeld
I don't trust old Android versions to have gotten this right. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-24Resolve manifest warningsHarsh Shandilya
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-03-23TunnelManager: save settings before restartJason A. Donenfeld
Otherwise these get lost and then the restored state is confusing. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-22Preferences: hide advanced settingsJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-22SettingsActivity: remove from parent instead of fixed screenJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-22TunnelManager: enable Tasker supportJason A. Donenfeld
Also fix up wording for the permission prompt that Tasker will show when initially setting this up. Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-22model: begin conversionJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-21strings: Update Japanese translation.Eiji Tanioka
Signed-off-by: Eiji Tanioka <tanioka404@gmail.com> Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-03-21viewmodel: port to kotlinJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-20Replace PermissionRequestCallback with direct methodsHarsh Shandilya
These are much cleaner in Kotlin code. Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-03-20build: Load keystore file from rootProjectHarsh Shandilya
Since the signing config is also stored in the project root it makes sense to have storeFile path be relative to it. Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-03-20Convert activity package to KotlinHarsh Shandilya
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-03-20AddTunnels: rearrange and relabelJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-20widget: rewrite in kotlinJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-20EdgeToEdge: move into widgetJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-19strings: Update Indonesian translationFiqri Ardyansyah
Signed-off-by: Fiqri Ardyansyah <fiqri15072019@gmail.com> Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-03-19preferences: rewrite in kotlinJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-19TunnelListFragment: cleanup list typeJason A. Donenfeld
Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-19TunnelListFragment: catch all parsing exceptionsJason A. Donenfeld
Otherwise we crash if weird things happen. Reported-by: Luis Ressel <aranea@aixah.de> Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
2020-03-19Use more Kotlin-esque code where applicableHarsh Shandilya
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-03-19ui: Convert fragment package to KotlinHarsh Shandilya
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-03-19ui: Convert configStore package to KotlinHarsh Shandilya
Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>
2020-03-19strings: Update Japanese TranslationEiji Tanioka
Signed-off-by: Eiji Tanioka <tanioka404@gmail.com> Signed-off-by: Harsh Shandilya <me@msfjarvis.dev>