Commit Graph

89 Commits

Author SHA1 Message Date
RikkaW 4dbf7eb04b Fix spacing in module filter list 2020-12-06 23:49:23 -08:00
RikkaW a39577c44d Fix extra spacing in module list 2020-12-06 23:49:23 -08:00
RikkaW 0df891b336 Handle window insets with a new way
For example, switching pages in home should only have scale and alpha animations, but a "translate y" animation shows. This is because Data Binding is triggered later (like "in the next frame"), causing the animation runs before view attribute changes.

This commit introduces WindowInsetsHelper class and use it to handle all window insets. With the help of LayoutInflaterFactory from the previous commit, we can control insets behavior by adding our attributes to the XML and anything is done by WindowInsetsHelper class.

As changes are highly coupling, this commit also contains new ItemDecoration for lists, replacing the random combination of padding and empty drawable. And "fixEdgeEffect" extension for RecyclerView, making edge effects respect padding.
2020-11-19 23:24:39 -08:00
topjohnwu 0a14f43f9c Refactor class names 2020-10-10 22:40:57 -07:00
topjohnwu 311c1f0dfd Switch to new repo format 2020-10-10 14:31:30 -07:00
topjohnwu fc19b50290 Cleanup ActivityResult callbacks 2020-10-06 02:04:19 -07:00
vvb2060 de4e26b488 Allow download modules when Magisk is not installed 2020-09-23 20:57:19 -07:00
topjohnwu 9a16ab1bd7 Always show install button
Fix #3172
2020-09-16 23:55:50 -07:00
topjohnwu 01efe7a4ea 100% functional manager self upgrade
Fix #2929
2020-08-28 04:46:05 -07:00
topjohnwu 1ed67eed35 Rename classes and fields 2020-08-21 06:45:40 -07:00
topjohnwu abc5457136 Cleanup DownloadService 2020-08-21 06:27:13 -07:00
topjohnwu 7c319f5fc3 Moar refactoring 2020-08-19 05:19:24 -07:00
topjohnwu 34450cdddd More refactoring
Cleanups, move classes to sane locations, etc.
2020-08-19 02:05:23 -07:00
topjohnwu 846bbb4da1 Reorganize app source code 2020-08-18 06:31:15 -07:00
topjohnwu d7a26dbf27 Tidy up ViewEvents 2020-08-18 06:03:12 -07:00
topjohnwu 36a70e995f Remote -> Online 2020-08-11 03:36:41 -07:00
topjohnwu f5e547944a Do not toggle when clicking cards 2020-08-09 22:30:38 -07:00
topjohnwu f5aa6a3cf8 Update module fragment
Update UI and logic for loading modules
2020-08-09 21:41:23 -07:00
topjohnwu 893a8ec8d9 Strip out most StaggeredGridLayoutManager in code 2020-08-09 03:30:00 -07:00
topjohnwu 113eec59f9 Request storage rw for saving logs
Fix #2993
2020-07-17 01:27:52 -07:00
topjohnwu 6c6368fd81 Reduce usage of delegation 2020-07-15 01:21:57 -07:00
topjohnwu 7cf3da1b3b Update implementation to use new methods 2020-07-12 14:35:21 -07:00
topjohnwu 2c12fe6eb2 More efficient databinding 2020-07-12 03:17:50 -07:00
topjohnwu b41b2283f4 Rename package 2020-07-11 05:36:31 -07:00
topjohnwu 8647ba4729 Remove more RxJava 2020-07-09 04:49:14 -07:00
topjohnwu 18dab28c32 Remove usage of KObservableField 2020-07-08 06:14:32 -07:00
topjohnwu f191db2fe0 Allow ViewModel to opt-out RxJava
Transition period
2020-07-08 01:50:28 -07:00
topjohnwu dc8f0f6feb Bug fixes in modules fragment
- Progress is not updated in upgradable modules (and can cause crash)
- EndlessRecyclerScrollListener is not reset on new query
2020-07-08 01:40:08 -07:00
topjohnwu 01a43b03bd De-Rx ModuleViewModel 2020-07-08 01:26:45 -07:00
topjohnwu 86db0cd2cd Load installed modules with coroutine 2020-07-07 03:37:53 -07:00
topjohnwu 77032eced1 Load repos with coroutine 2020-07-07 01:57:56 -07:00
topjohnwu 23a33b4351 Remove core only mode
Replaced by native safe mode
2020-06-21 15:59:06 -07:00
topjohnwu e02386a6ac Move install module button to the top 2020-06-21 12:53:31 -07:00
Viktor De Pasquale ee3028e67d Updated layout of modules screen
The modules will show updates at the top, active modules in the middle and finally remote modules at the bottom. The modules "install" button will be at the top of the "active" list.
This is done over usability concerns, as updates are more important than a list of installed modules.
2020-04-12 05:40:19 -07:00
Viktor De Pasquale 1920a52829 Added progressbar indicating content loading on modules screen 2020-03-29 06:10:19 -07:00
Viktor De Pasquale 6e14a727b1 Fixed modules screen not offering reboot when local modules change 2020-03-29 06:10:19 -07:00
Viktor De Pasquale 6907651756 Updated flash screen so it's a fragment
The FlashActivity has been removed and all of it's functionality has been transferred to the FlashFragment.
The FlashFragment needs to be however launched in a different way than the activity using the MainActivity's stub and so seemingly massive changes had to be made.

Notably the RemoteFileService didn't seem to be calling Service.startForeground(), which has been crashing the application due to the system requirements, so that's been fixed.
2020-03-26 03:42:52 -07:00
Viktor De Pasquale bb9c362bab Added back button for ModuleFragment when displaying filter 2020-03-26 03:42:52 -07:00
Viktor De Pasquale 88d917b662 Added permission check for installing/downloading modules 2020-03-04 23:50:50 -08:00
topjohnwu 915fd3020b Small string resource reorganization
Close #2454
2020-02-29 14:49:06 -08:00
Viktor De Pasquale e9fc40d285 Removed grid scale gestures and reverted back to * simple list as a default
* disgusting (:
2020-02-11 10:42:05 -08:00
topjohnwu c38c473e11 Fix compile error 2020-01-29 17:38:36 +08:00
topjohnwu d0112f989c Cleanup classes 2020-01-29 01:49:59 +08:00
Viktor De Pasquale 9c4c310f46 Fixed messages on modules screen replicating indefinitely 2020-01-29 01:12:48 +08:00
Viktor De Pasquale 7bf7bfb9c6 Updated Flash / SuRequest activities with app themes
CompatActivity/Fragment logic has been moved to respective BaseUI. Some deprecated and unused styles have been removed in favor or newer themes.
2020-01-29 01:12:21 +08:00
Viktor De Pasquale f5d0cc9f32 Updated helper lists so they are lazily populated 2020-01-27 18:22:29 +08:00
Viktor De Pasquale 851ee81486 Updated removing of "empty list" messages
Before this commit, the loader removed messages _after_ it updated the
 list. Coincidentally the list updating mechanism is asynchronous to
 some extent and so slower devices might've had the message removed
 after changes have been dispatched which confused the recyclerview and
 caused the crash.
Now, the loader is stripped of the responsibility update the list
 holding helper messages. The responsibility is for the user itself to
 notify listeners and then clear the helper list. This should hopefully
 delay the removal to the point where choreographer had enough time to
 traverse through the hierarchy.

Stupid recycler view / layout managers. Literally unnecessary crash.
2020-01-25 22:31:19 +08:00
topjohnwu 2291be5d26 Merge string resources 2020-01-23 01:40:36 +08:00
Viktor De Pasquale c5e5b70e08 Added safe mode notice to modules 2020-01-21 22:01:55 +01:00
topjohnwu b2ddba4cbf Proper repo fetching behavior 2020-01-19 03:15:51 +08:00