Commit Graph
349 Commits
Author SHA1 Message Date
Max Lv f05761ac4d Refine the animation of snackbar 2018-01-04 19:25:31 +08:00
Mygod a33efea2b5 Add French 2018-01-04 19:03:07 +08:00
Mygod b2e6639901 Remove translatable 2018-01-04 18:23:45 +08:00
Max Lv db74988190 Fix the listview issue 2018-01-03 18:37:36 -08:00
Max Lv 9a43c78e7b Fix #1548 2018-01-03 17:21:46 -08:00
Max Lv a40f87f492 Fix a rounding issue on Android 4.4
We can use setTranslationY directly on Android 4.4. Otherwise, we need
to handle float to int routing issue very carefully.
2017-12-30 15:04:04 +08:00
Max Lv 56f4a36a18 Fix an issue when Accessibility enabled
Actually, it's not necessary to move our fragment upward, which contains
a list view.
2017-12-30 14:45:05 +08:00
Mygod c86b68c0e6 Add missing flush call in CustomRulesFragment 2017-12-29 22:55:08 +08:00
Mygod 56728a3f40 Hide profileName in secure lock screen 2017-12-29 22:43:01 +08:00
Mygod cc070223b4 Add doc for ServiceNotification 2017-12-29 22:32:07 +08:00
Mygod 0335d67dba Add animation for bottom bar during Snackbar transitions
Fix #1036 the one-year-old issue.

There are still some subtle blackness during the exit animation. Unfortunately this is something I am not able to fix as I don't and probably won't ever have enough knowledge about Android's drawing passes. Anyway this still looks much better than before.
2017-12-29 20:58:02 +08:00
Mygod 0d0c2d59de Add android:allowBackup to suppress warning 2017-12-29 18:32:49 +08:00
Mygod e03c34aa19 Refine bottom sheet paddings
Matches design in Google Authenticator app.
2017-12-27 12:28:21 +08:00
Mygod db011afcc0 Fix connected button not rendered correctly 2017-12-27 12:11:32 +08:00
Mygod ebe4d6fd0c Disable swipe to remove in selection mode 2017-12-27 11:47:46 +08:00
Mygod cb9356e5e0 Refine acls 2017-12-27 11:43:17 +08:00
Mygod 37c051c30a Fix #1515 2017-12-23 09:32:13 +08:00
Mygod 582a6e441b Revert "Donwload fonts through support library. #1515"
This reverts commit 6c89207eff.
2017-12-23 09:20:19 +08:00
Max Lv 6c89207eff Donwload fonts through support library. #1515 2017-12-22 00:29:31 -08:00
Mygod 0b2c9fbcfd Fix issues on Android 4.4 2017-12-20 10:24:35 -08:00
Mygod a742512892 Fix customRules not saved 2017-12-19 22:50:01 -08:00
Mygod 8b0c8168f8 Use JvmOverloads for BoundedGridLayout 2017-12-19 17:40:46 -08:00
Mygod 020a2a5d43 Refine "Catch IOExpections when reading ACLs"
This commit refines 37856ab4d2.
2017-12-19 17:36:12 -08:00
Mygod 7624f4ac52 Fix lint errors 2017-12-19 17:33:19 -08:00
Mygod ef519a8581 Clean up ServiceButton related code 2017-12-19 17:31:15 -08:00
Mygod 540b1d3710 Add some sweet animation to replace old circular progress 2017-12-19 17:01:11 -08:00
Mygod 6d6682d4a7 Merge paths in ic_start_* 2017-12-19 15:30:40 -08:00
Mygod 157a750e53 Remove the unmaintained fab progress circle 2017-12-19 15:24:39 -08:00
Mygod 6408450b31 Disable unavailable configurations for proxy mode
This prevents user confusion.
2017-12-19 13:45:30 -08:00
Mygod 536a1b4bbe Refrain from using private APIs for parseNumericAddress 2017-12-19 13:10:15 -08:00
Max Lv 37856ab4d2 Catch IOExpections when reading ACLs 2017-12-18 22:32:42 -08:00
Mygod f381ad6300 Fix crash when no profile is selected 2017-12-17 05:53:35 -08:00
Mygod b25e9a0905 Fix unit tests 2017-12-17 05:35:33 -08:00
Mygod 922eb8b202 Faster VPN connection and less wait
I just saved everyone ~0.9s every VPN connection.
2017-12-17 05:04:40 -08:00
Mygod 1010edc561 Speed up Acl.fromReader
It should run 9x faster than before now.

Past mistakes:

* InetAddress.parseNumericAddress throws TWO exceptions underthehood if the string passed is invalid. This caused a huge overhead;
* CharSequence.split in Kotlin is EXTREMELY SLOW.
2017-12-17 04:43:19 -08:00
Mygod bc22b0c481 Speed up AppManager
Also solves a cache problem.
2017-12-17 02:16:04 -08:00
Mygod 1bea09c5c6 Remove unnecessary call to linkToDeath 2017-12-17 01:36:20 -08:00
Mygod 5c252a2895 Fix incorrect back button color 2017-12-17 01:20:38 -08:00
Mygod 8ee9331222 Improve performance of reordering profiles 2017-12-17 00:21:31 -08:00
Mygod 870fd9e652 Move custom-rules.acl to PublicDatabase
Less files to backup. Less constants to keep track of.
2017-12-16 23:50:54 -08:00
Mygod e5cd145b24 Remove unnecessary bypassHostnames in Acl
Fix #1505
2017-12-16 22:38:47 -08:00
Max Lv f89088ef34 Update GFWList 2017-12-17 13:36:10 +08:00
Max Lv 0ac113e7ef Refine regexp in GFWList 2017-12-17 10:12:54 +08:00
Mygod 11dd7112c3 Implement plugin entirely in Kotlin 2017-12-16 16:07:01 -08:00
Max Lv 612a34a690 Merge pull request #1508 from Mygod/direct-boot
Implement direct boot awareness
2017-12-16 15:41:56 +08:00
Mygod f1934f876d Fix lint errors 2017-12-15 15:59:45 -08:00
Mygod 6eec78a343 Fix #1507 2017-12-15 15:43:39 -08:00
Mygod d7a11eaa3b Implement direct boot awareness
To do direct boot, important files need to be moved to device storage (i.e. not as safe storage). The only thing sensitive is user credentials (server settings in each profile) and the config file passed to libss-*.so. In order to implement direct boot, at least the active profile has to be moved/copied to device storage.

This commit keeps profile information (and temporary data used by ProfileConfigFragment) and Shadowsocks config in credential storage and move everything else to device storage. In order to make direct boot work, active profile is also copied into device storage and Shadowsocks config file is created in device storage during direct boot. Cleanup of those information is also implemented.

Fixes #1457.

NB:

* `android:directBootAware` can't be used on application element. That seems to be used by system apps.
* Works fine with multi-user;
* Old GSM files are not migrated (see App.kt) to device storage.
2017-12-15 15:36:19 -08:00
Mygod 14ac54c2de Add support for Auto Backup for Apps 2017-12-15 12:21:30 -08:00
Max Lv 96c86b2441 Make QR code dialog public #1500 2017-12-14 20:04:37 -08:00