2197 Commits
Author SHA1 Message Date
Max Lv 42bb5be390 Refine overture v4.4.2 2017-12-24 13:27:01 +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 723097fc8c Fix release build failing 2017-12-19 13:28:50 -08:00
Mygod 37ff7fddee Revert "Fix issues with proguard"
This reverts commit 2202041e80.
2017-12-19 13:28:44 -08:00
Mygod 536a1b4bbe Refrain from using private APIs for parseNumericAddress 2017-12-19 13:10:15 -08:00
Max Lv 2202041e80 Fix issues with proguard 2017-12-19 00:48:11 -08:00
Max Lv 37856ab4d2 Catch IOExpections when reading ACLs 2017-12-18 22:32:42 -08:00
Max Lv 3f30fc7b0c Bump version 2017-12-18 22:05:57 -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 4e71722a75 Parse ACL files properly in overture 2017-12-16 23:42:52 -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 9b87d6a796 Refine ACL handlingn in overture 2017-12-17 13:12:38 +08:00
Max Lv 0ac113e7ef Refine regexp in GFWList 2017-12-17 10:12:54 +08:00
Mygod 11a3bade54 Add unit test for PluginOptions 2017-12-16 16:20:21 -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 32d0789c94 Update Kotlin 2017-12-15 15:43:00 -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 8c28fffbdb Bump version v4.4.1 2017-12-15 01:41:49 -08:00
Max Lv 96c86b2441 Make QR code dialog public #1500 2017-12-14 20:04:37 -08:00
Mygod 15373f8d44 Add missing lint ignores 2017-12-14 15:34:45 -08:00
Mygod 30b56c97ea Add more tests, fix lint errors and add check to travis 2017-12-14 14:55:00 -08:00
Mygod d081d06903 Replace png with lossless webp 2017-12-14 14:53:11 -08:00
Mygod 090851ed3b Refine Travis cache 2017-12-14 13:07:01 -08:00
Mygod 9352f2dfe7 Fix SubnetTest 2017-12-14 12:41:09 -08:00
Mygod 9a2643ec2c Add missing error message 2017-12-14 12:00:13 -08:00