topjohnwu
fbaf2bded6
Patch AndroidManifest.xml properly
...
Parse and rebuild the string pool of the AXML format for patching
string in AndroidManifest.xml
2020-08-31 03:39:20 -07:00
o4x
38a34a7eeb
Add persian language
2020-08-30 12:57:03 -07:00
vvb2060
70174e093b
Optimize network status display
2020-08-30 12:56:36 -07:00
vvb2060
0333e82e86
Fix string
2020-08-30 12:46:22 -07:00
peter9811
36a8839cf8
Update strings.xml
2020-08-30 12:46:03 -07:00
peter9811
d0ed6e7fe3
Update spanish
2020-08-30 12:46:03 -07:00
孟武.尼德霍格.龍
72dfbf5e44
更新繁體中文字串
...
更新繁體字串到適用v295的版本及以後
2020-08-30 12:45:19 -07:00
topjohnwu
114a3c037f
Some minor UI tweaks
2020-08-29 22:55:18 -07:00
topjohnwu
782adc9a9f
Cleanup some styles
2020-08-29 21:42:05 -07:00
vvb2060
e0642b018d
Update zh-rCN translation
2020-08-28 04:54:32 -07:00
topjohnwu
6bd4006652
Rename method
2020-08-28 04:50:46 -07:00
topjohnwu
01efe7a4ea
100% functional manager self upgrade
...
Fix #2929
2020-08-28 04:46:05 -07:00
topjohnwu
7e133b0cf4
UI tweaks for pre API 21
2020-08-27 05:46:41 -07:00
topjohnwu
fd808bd51e
Use the correct handler
2020-08-27 04:17:21 -07:00
topjohnwu
b4e8860ee4
Only make navbar and status bar transparent on 21+
...
There is no easy way to handle insets pre 21, forget about it
2020-08-27 04:07:34 -07:00
topjohnwu
fb3f8605fd
Change to a more recognizable icon
2020-08-27 03:10:25 -07:00
topjohnwu
e394445f1b
Properly handle dialog dismiss for SafetyNet
...
Fix #3103
2020-08-26 18:54:38 -07:00
topjohnwu
ca1b0bf1ce
Fix strings
2020-08-26 18:51:22 -07:00
topjohnwu
bf5798190d
Fix dialog when toggling keyboard multiple times
2020-08-26 06:39:59 -07:00
AdiityaAndre
ca5030a646
Updated stub translation
...
* small derp in main translation
2020-08-26 06:00:00 -07:00
AdiityaAndre
e22324e434
Update and improve Indonesian translation
2020-08-26 06:00:00 -07:00
JoanVC100
e46d4ecd3e
Corrections and update ca-strings
2020-08-26 05:58:10 -07:00
topjohnwu
84f92bd661
Cleanup hide fragment code
2020-08-26 05:46:37 -07:00
vvb2060
b44dcc2da0
Fix SafetyNet
2020-08-24 06:27:05 -07:00
topjohnwu
d6062944f1
Update snet extension to prevent crashes on release builds
2020-08-24 06:24:58 -07:00
Ilya Kushnir
79f549795b
Update main RU strings
2020-08-24 04:14:03 -07:00
Rom
1ac379c17a
Update French translation
2020-08-24 04:12:58 -07:00
kubalav
51a4dbf263
Update strings.xml
2020-08-24 04:08:30 -07:00
topjohnwu
e437ffdbae
Improvements to the installation UI
...
- No longer show irrelevant options to the user
- No longer require an additional button press to start installation
2020-08-24 04:04:52 -07:00
topjohnwu
ccde8b73a2
Cleanup install screen layout
2020-08-24 00:19:08 -07:00
topjohnwu
65f88e4ae2
Remove unnecessary permissions
2020-08-23 04:36:22 -07:00
topjohnwu
354440ee8a
Fix hide manager dialog
2020-08-23 04:24:06 -07:00
topjohnwu
59106e4f52
Make sure app relaunching works after upgrade
2020-08-23 03:47:05 -07:00
topjohnwu
31681c9c5f
Remove ProcessPhoenix
2020-08-23 00:12:58 -07:00
topjohnwu
0e5a32b476
Close streams
2020-08-22 20:33:50 -07:00
topjohnwu
a22a1dd284
Only offer shortcuts when running as stub
2020-08-22 10:51:32 -07:00
topjohnwu
27c59dbb65
Disable animations in toolbar
...
Fix #2907
2020-08-22 05:52:57 -07:00
topjohnwu
fb04e32480
Bypass external rw check in the proper location
2020-08-22 05:27:30 -07:00
topjohnwu
14a2f63b8b
Several changes for using MediaStore
...
- Change config key name so default downloads to folder 'Download'
- Always use getFile as we do not need existing file deleted
- Fallback to use File based I/O pre API 29 as officially MediaStore
APIs do not support general purpose usage. And also, it was working
fine on all devices before. If it ain't broke, don't fix it
- Show full download path in settings to make it more clear to the user
- Close streams after using them
2020-08-22 04:38:51 -07:00
vvb2060
9e81db8692
Support scoped storage
2020-08-22 04:38:51 -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
4b238a9cd0
Add feature to create launch shortcuts
2020-08-21 03:36:12 -07:00
topjohnwu
f200d472ef
Move icon resources out of stubs
2020-08-20 06:02:22 -07:00
topjohnwu
105b2fc114
Ensure SplashActivity is ran before MainActivity
2020-08-19 05:19:24 -07:00
topjohnwu
5ed4071f74
Change ActivityExecutor signature
2020-08-19 05:19:24 -07:00
topjohnwu
551a478fdc
Fix occasional broken animation
2020-08-19 05:19:24 -07:00
topjohnwu
7c319f5fc3
Moar refactoring
2020-08-19 05:19:24 -07:00
topjohnwu
1fcf35ebeb
Do not hardcode appcompat widget classes
...
They should be handled by the theme
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
a86d5b3e61
Remove unnecessary abstractions
2020-08-18 05:03:56 -07:00
topjohnwu
b2bece9ef6
Fix resources
2020-08-18 02:53:47 -07:00
topjohnwu
7f225b3973
Minor MarkwonImagePlugin updates
2020-08-15 23:20:49 -07:00
孟武.尼德霍格.龍
72e7605fce
更新繁體中文字串
...
同上
2020-08-15 22:16:43 -07:00
vvb2060
a4c1ddd9f2
Use uid 2000 to install patched apk
2020-08-15 22:16:15 -07:00
cristisilaghi
ddd513110f
Update Romanian
2020-08-15 22:07:35 -07:00
topjohnwu
e33d623d40
Update dependencies
2020-08-15 05:43:28 -07:00
Rom
eec19ba9af
Update French translation
...
It should contain all new strings.
2020-08-14 03:24:07 -07:00
Mevlüt TOPÇU
413b3f394b
Update strings.xml
...
Hi,
Update Turkish language
Merge please
Thanks
2020-08-14 03:20:58 -07:00
Ilya Kushnir
88cee1212b
Update RU strings
2020-08-14 03:20:02 -07:00
vvb2060
cf25fa8ed8
Update build.gradle
2020-08-14 03:18:45 -07:00
topjohnwu
3f053b8547
Minor code changes
2020-08-14 03:17:10 -07:00
Viktor De Pasquale
79aa261ca2
Fixed manager beginning to hide immediately on field change
...
Bug was caused by lenient usage of "value" property defined in the "line item" in settings. Developer error allowed to use the internal value, that was not properly protected, in a way that did not conform with the latest "Observer" rewrite.
Additional comments were added to hopefully prevent bugs of this kind in the future. The property is now properly protected so it gives away clues that this access is considered "not cool".
2020-08-14 02:23:03 -07:00
topjohnwu
ac2a9da4c4
Fix Markdown rendering
...
Close #3074
2020-08-14 02:00:06 -07:00
Viktor De Pasquale
d8b1d79879
Fixed first title being partially obscured by toolbar
2020-08-12 04:33:00 -07:00
topjohnwu
feb0f4b7b5
Fix MagiskDialog
2020-08-12 03:33:19 -07:00
topjohnwu
6c8fe46590
Remove unused resources
2020-08-11 04:33:07 -07:00
Taras
5e3c9e5022
Update Ukrainian translation
2020-08-11 03:39:29 -07:00
Vladimír Kubala
f7f821b93c
Update Slovak translation
2020-08-11 03:39:01 -07:00
topjohnwu
36a70e995f
Remote -> Online
2020-08-11 03:36:41 -07:00
topjohnwu
537ae1a315
Cleanup setting items
2020-08-11 03:30:00 -07:00
topjohnwu
87b6bf2c26
Remove strip in settings item
2020-08-11 00:54:19 -07:00
topjohnwu
9df6b0618a
Update MagiskHide list
2020-08-10 07:05:07 -07:00
topjohnwu
c7e30ac63e
Update superuser list
2020-08-10 02:33:44 -07:00
topjohnwu
f5e547944a
Do not toggle when clicking cards
2020-08-09 22:30:38 -07:00
topjohnwu
d10680187d
Nest CardView with alpha in another FrameLayout
...
RecyclerView animator will mess with alpha when animating
Check this StackOverflow question for more info:
https://stackoverflow.com/questions/40942116/setalpha-on-onbindview-in-recyclerview-doesnt-work-on-first-display
2020-08-09 22:04:09 -07:00
topjohnwu
f5aa6a3cf8
Update module fragment
...
Update UI and logic for loading modules
2020-08-09 21:41:23 -07:00
topjohnwu
c944277e78
Use switches with 2 way binding instead of custom ImageView
2020-08-09 14:50:16 -07:00
topjohnwu
2e5402d741
Disable scroll effect for icon links
2020-08-09 13:29:18 -07:00
topjohnwu
24f6024383
More homescreen UI improvements
2020-08-09 06:52:02 -07:00
topjohnwu
15b1215972
Only show SafetyNet when GMS exists
2020-08-09 04:39:12 -07:00
topjohnwu
11222c89d4
Update SafetyNet icon
2020-08-09 03:37:34 -07:00
topjohnwu
893a8ec8d9
Strip out most StaggeredGridLayoutManager in code
2020-08-09 03:30:00 -07:00
topjohnwu
da2b00de59
Several home screen changes
2020-08-09 02:32:13 -07:00
RoySchutte
1276c28e03
Update strings.xml
2020-08-08 05:26:21 -07:00
topjohnwu
0835ff88b2
Update zipsigner version
2020-08-08 05:12:02 -07:00
vvb2060
2e95d9f07e
Update to APK Signature Scheme v2
2020-08-08 05:12:02 -07:00
topjohnwu
fe2388394d
Update dependencies
2020-08-08 04:12:08 -07:00
topjohnwu
aed3ab994e
Update libsu
2020-07-24 00:26:21 -07:00
topjohnwu
5b28a713e0
Move functions around
2020-07-23 22:43:25 -07:00
topjohnwu
f1fb7404c2
Catch exceptions when loading remote modules
...
Fix #3004
2020-07-20 22:35:50 -07:00
topjohnwu
fc67c0195f
Workaround bug in AOSP code
...
Fix #2983 , https://issuetracker.google.com/issues/36984866
2020-07-20 22:22:57 -07:00
topjohnwu
2f02f9a580
Update libsu
2020-07-20 21:58:23 -07:00
topjohnwu
07f712a1ce
Always show hidden apps
2020-07-17 06:05:38 -07:00
topjohnwu
c7044b0d20
Remember show system app toggle in MagiskHide list
2020-07-17 05:32:08 -07:00
topjohnwu
15866cfba9
Fix incorrect command
...
Fix #2992
2020-07-17 05:28:18 -07:00
topjohnwu
4c2570628d
Make SettingsItems make much more sense
2020-07-17 03:02:58 -07:00
topjohnwu
113eec59f9
Request storage rw for saving logs
...
Fix #2993
2020-07-17 01:27:52 -07:00
topjohnwu
f7abc03dac
Move copy util_functions.sh from Python scripts to gradle
2020-07-17 00:44:51 -07:00
antikruk
ef3f188a2c
bel
2020-07-17 00:16:32 -07:00
topjohnwu
dd62fe89f7
Use CallbackList for collecting STDOUT in flash screen
...
Fix #2988
2020-07-17 00:13:18 -07:00
topjohnwu
ec2d7d77eb
Reduce usage of ObservableField
2020-07-15 02:52:15 -07:00
topjohnwu
6c6368fd81
Reduce usage of delegation
2020-07-15 01:21:57 -07:00
topjohnwu
ba31c6b625
Use coroutines instead of raw executors
2020-07-14 02:37:52 -07:00
topjohnwu
cad189d2dc
Remove unnecessary indirection
2020-07-12 14:37:07 -07:00
topjohnwu
7cf3da1b3b
Update implementation to use new methods
2020-07-12 14:35:21 -07:00
topjohnwu
45fabf8e03
Update SettingsItems
2020-07-12 06:15:32 -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
e8e7cd5008
Simply redirect isConnected ObservableField
2020-07-11 03:22:17 -07:00
topjohnwu
7873433977
Remove RxJava as dependency
2020-07-10 23:12:09 -07:00
topjohnwu
52d19d3ea2
Roll our own NetworkObserver
2020-07-10 23:12:09 -07:00
topjohnwu
6348d0a6fb
Remove more code using RxJava
2020-07-10 04:19:18 -07:00
topjohnwu
f7a650b9a4
Clear up RxJava from ViewModels
2020-07-09 05:15:53 -07:00
topjohnwu
a97d278bcd
Remove RxBus
2020-07-09 05:13:24 -07:00
topjohnwu
8647ba4729
Remove more RxJava
2020-07-09 04:49:14 -07:00
topjohnwu
4631077c49
Call the correct constructor
2020-07-09 04:40:07 -07:00
topjohnwu
18dab28c32
Remove usage of KObservableField
2020-07-08 06:14:32 -07:00
topjohnwu
8ffbffddb3
Update SuRequest handler
2020-07-08 03:13:01 -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
ae6dd50ccd
Fix RepoUpdater force refresh bug
2020-07-07 03:18:01 -07:00
topjohnwu
77032eced1
Load repos with coroutine
2020-07-07 01:57:56 -07:00
topjohnwu
820427e93b
Have some fun with Kotlin Coroutines
2020-07-06 22:30:21 -07:00
topjohnwu
89e11c9cc8
Minor changes in flash viewmodel
2020-07-06 21:05:43 -07:00
topjohnwu
05cf53fe6f
Merge files
2020-07-06 15:40:05 -07:00
topjohnwu
7922f65243
Welcome Gradle Kotlin DSL
2020-07-04 06:54:53 -07:00
topjohnwu
67f7935421
Restructure project
2020-07-04 04:09:19 -07:00
topjohnwu
0f7caa66fb
Remove usage of grid layouts
2020-07-04 03:28:21 -07:00
Mexit
bd14994eb9
Update Polish translation
2020-07-04 03:01:55 -07:00
vvb2060
08818e8542
Remove force_pm_install
...
gms package verifier only checks the `notBefore` value of the certificate
2020-07-04 03:00:51 -07:00
topjohnwu
706eba329d
Add release notes to the install fragment
2020-07-04 02:55:19 -07:00
waffshappen
cef14d4576
Fix release build XLint error for translations
...
Due to the accidental safety>N<et the release build would fail with XLint complaining about a missing default translation. Correcting this to be in line with the actual translation fixes the build error.
Xlint Error in Question:
```res/values-in/strings.xml:106: Error: "safetyNet_api_error" is translated here but not found in default locale [ExtraTranslation]
<string name="safetyNet_api_error">Kesalahan API SafetyNet</string>```
2020-07-01 09:56:14 -07:00
topjohnwu
73203a55ca
Use fancy NestedScrollView for Magisk logs
2020-06-30 04:14:23 -07:00
topjohnwu
397f7326a3
Update SafetyNet UI to show evalType
2020-06-30 03:56:41 -07:00
topjohnwu
4bbd7989dd
Update snet extension
...
Receive full snet payload from extension
2020-06-30 02:24:58 -07:00
topjohnwu
a0b47f3ca3
Precompute TextView in I/O thread for performance
2020-06-29 05:26:07 -07:00
topjohnwu
89e9e7c176
Simplify UI code for Magisk logs
...
We have all texts, no need to go through recyclerview
2020-06-29 05:22:16 -07:00
topjohnwu
ddc2f317ab
Update dependencies
2020-06-29 03:58:19 -07:00
topjohnwu
867bab8513
Restart activity with fresh intent
...
Fix #2706
2020-06-29 03:30:23 -07:00
topjohnwu
b1e0c5ff38
Export MAGISKTMP so it survives exec
...
Fix #2926
2020-06-29 03:24:53 -07:00
topjohnwu
3c78344812
Refactor version handling
2020-06-28 06:52:02 -07:00
Ilya Kushnir
594f268885
Update RU strings
2020-06-27 13:23:45 -07:00
Fox2Code
93d5716414
Disable Volumes keys on flash
...
- Thank Diareuse for helping me
2020-06-27 13:22:09 -07:00
vvb2060
fc6ef7dd57
Show magisk update notification only when magisk is installed
2020-06-27 04:54:58 -07:00
mustafairaqi8
c881fd4964
Updated Arabic Translation
2020-06-25 10:02:15 -07:00
Viktor De Pasquale
4bcc2b2f03
Added bottom padding to hide screen
...
Close #2903
2020-06-25 10:01:37 -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
YFdyh000
1ededc637e
l10n: Update Chinese Simplified translations
2020-06-20 12:12:40 -07:00
topjohnwu
45b5e89912
Remove canary debug channel
...
All canary builds will be debug only
2020-06-20 02:45:02 -07:00
Albert I
a748d5291a
app: l10n: Update Indonesian translations
...
Signed-off-by: Albert I <kras@raphielgang.org>
2020-06-20 01:37:47 -07:00
Peter Meiser
f5131fae56
Update German translation
2020-06-20 01:37:27 -07:00
topjohnwu
43146b8316
Update su request process
...
Due to changes in ec3705f2ed187863efc34af5415495e1ee7775d2, the app can
no longer communicate with the dameon through a socket opened on the
daemon side due to SELinux restrictions. The workaround here is to have
the daemon decide a socket name, send it to the app, have the app create
the socket server, then finally the daemon connects to the app through
the socket.
2020-06-19 03:52:25 -07:00
topjohnwu
b71b4bd4e5
Fix colors in su request dialog
2020-06-19 03:14:23 -07:00
topjohnwu
eecb66f4f1
Create ForegroundTracker
2020-06-17 04:07:31 -07:00
topjohnwu
e7f1c03151
Cleanup code for su request
2020-06-17 03:47:12 -07:00
topjohnwu
56602cb9a3
Update gradle files
2020-06-17 02:33:33 -07:00
topjohnwu
6030b00ee2
Remove excessive logging
2020-06-03 01:28:50 -07:00
topjohnwu
a17908f6e1
Only resolve via DoH for specific hostnames
2020-06-03 01:15:05 -07:00
Chris Renshaw
ad94f10205
Fix direct install on NAND devices
...
Co-authored-by: John Wu <topjohnwu@gmail.com>
2020-06-01 02:08:13 -07:00
Ilya Kushnir
f8a814a588
Fix RU strings
2020-05-31 05:32:18 -07:00
topjohnwu
4c4338cc02
Adapt to AGP 4.0
2020-05-30 13:06:03 -07:00
Facundo Montero
5675a1ae7d
app/stub: values-es: update to provide more consistency.
...
This update aims to provide better consistency to the Spanish
translation by properly separating each possible pronoun.
Other small grammar errors have also been corrected.
2020-05-30 12:56:37 -07:00
AioiLight
0952224c3d
Update JA strings
2020-05-30 12:56:02 -07:00
JoanVC100
4e26c10287
Fix CA strings
2020-05-30 12:55:26 -07:00
vvb2060
f3e82b9ef1
Add DoH using cloudflare-dns
2020-05-30 12:53:46 -07:00
topjohnwu
fde78be2b4
Update Android Studio
2020-05-30 12:50:08 -07:00
Tornike Khintibidze
18a09703de
Updated Georgian translation
2020-05-17 15:09:51 -07:00
Hen Ry
1bcef38739
Fix German translation
2020-05-16 22:29:26 -07:00
topjohnwu
85755e3022
Tone down our DTB patching
...
- Do not attempt to patch DTB anywhere outside of boot images as they
are no longer essential. This makes Magisk installation to only modify
strictly boot/recovery partitions again.
- The only required patch for DTB is to strip verity out of partitions
2020-05-05 03:29:36 -07:00
topjohnwu
f9ff814955
Update gradle files
2020-04-19 02:47:22 -07:00
topjohnwu
37d38b62b1
Fix strings
2020-04-12 05:53:23 -07:00
Ilya Kushnir
f9bb517142
Update RU strings
2020-04-12 05:50:58 -07:00
tzagim
efe9b867d5
Add Hebrew Translation
2020-04-12 05:49:22 -07:00
Viktor De Pasquale
d9cf33d1ba
Fixed shortcuts
...
This has been broken due to recent transition to navigation components
2020-04-12 05:40:19 -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
d810e6c82d
Fixed modules screen crashing on load
...
This commit fixes the issue of adding single-span items in between full-span items whilst using `StaggeredGridLayoutManager` on recycler view.
Adding such items results in:
```
java.lang.ArrayIndexOutOfBoundsException: Array index out of range: 13
at java.util.Arrays.rangeCheck(Arrays.java:123)
at java.util.Arrays.fill(Arrays.java:2828)
at androidx.recyclerview.widget.StaggeredGridLayoutManager$LazySpanLookup.invalidateAfter(StaggeredGridLayoutManager.java:2876)
at androidx.recyclerview.widget.StaggeredGridLayoutManager.handleUpdate(StaggeredGridLayoutManager.java:1548)
at androidx.recyclerview.widget.StaggeredGridLayoutManager.onItemsUpdated(StaggeredGridLayoutManager.java:1524)
at androidx.recyclerview.widget.RecyclerView$6.dispatchUpdate(RecyclerView.java:1021)
at androidx.recyclerview.widget.RecyclerView$6.onDispatchSecondPass(RecyclerView.java:1032)
at androidx.recyclerview.widget.AdapterHelper.consumePostponedUpdates(AdapterHelper.java:121)
at androidx.recyclerview.widget.AdapterHelper.consumeUpdatesInOnePass(AdapterHelper.java:557)
at androidx.recyclerview.widget.RecyclerView.dispatchLayoutStep2(RecyclerView.java:4128)
at androidx.recyclerview.widget.RecyclerView.dispatchLayout(RecyclerView.java:3851)
at androidx.recyclerview.widget.RecyclerView.onLayout(RecyclerView.java:4404)
...and more
```
Affects versions including and prior to androidx.recyclerview:recyclerview:1.2.0-alpha02 (at the time of this commit) and possibly more after that.
This bug is caused by a single fact and that is - array inside of `LazySpanLookup` is not being invalidated and resized correctly when non-full-span item is being added in between of two full-span items. The invalidation however passes on some (high performance) devices so it doesn't necessarily cause issues for _some_ users; others keep getting the same crash over and over again.
Possible fix for anyone reading this, in the hope of fixing the same error, is to copy-paste the `StaggeredGridLayoutManager` and fix the array length before calling `Arrays.fill()`. There's no fix from user's perspective if you need to keep the UI as-is.
We however don't need the UI as-is, so we're instead opting to use LinearLayoutManager until is the issue resolved.
Continues tracking at https://issuetracker.google.com/issues/37034096
Close #2631
2020-04-12 05:40:19 -07:00
topjohnwu
e165a1e65c
Use BusyBox standalone mode if available
2020-04-11 02:21:47 -07:00
topjohnwu
93aedcfeb7
Update all hardcode paths in app and script
2020-04-05 01:27:07 -07:00
topjohnwu
5537b083a8
Move surequest out of legacy
2020-03-30 23:53:21 -07:00
Viktor De Pasquale
6b0854749f
Added setting resetting state on install screen
...
It will additionally show that download is complete rather than being stuck on loading.
2020-03-30 21:58:26 -07:00
Viktor De Pasquale
09ba4772b8
Fixed using wrong argument for flashing order
2020-03-30 21:58:26 -07:00
topjohnwu
06a1d08465
Replace ellipsis with recommended characters
2020-03-30 04:50:10 -07:00
fessmm
d510ead877
fix letters
2020-03-30 04:47:10 -07:00
topjohnwu
2968a1559e
Get rid of the final Java file in app
2020-03-30 04:41:54 -07:00
topjohnwu
cba26eedb5
Move several stuffs out of shared
2020-03-30 04:25:42 -07:00
topjohnwu
23e74b2781
Prevent showing empty screen in stealth mode
2020-03-30 04:03:56 -07:00
topjohnwu
a623a5b7cc
Set proper component name in FlashFragment
2020-03-29 23:11:09 -07:00
Davy Defaud
be8479fdba
French translation update
2020-03-29 06:13:28 -07:00
Taras
e97e6d467c
Update Ukrainian strings
2020-03-29 06:12:56 -07:00
JoanVC100
75ec890d46
module_permission_declined string
2020-03-29 06:12:27 -07:00
Vladimír Kubala
871a9c29c8
Update strings.xml
2020-03-29 06:12:10 -07:00
dark-basic
a4f903d947
Update strings.xml
...
Add new line.
2020-03-29 06:11:55 -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
ea855837df
Fixed melting UI on pre A10 devices
2020-03-29 06:10:19 -07:00
Chris Renshaw
d05ed0e59c
Manager: remove v from download names
...
- now that Canaries are only commit hashes for the version string, the v is unnecessary/confusing, so the simplest solution is to just remove the v from the filename for all Manager-based downloads of Magisk and Manager
2020-03-28 22:53:38 -07:00
topjohnwu
e4b20abf8e
Update gradle files
2020-03-27 22:42:02 -07:00
topjohnwu
9371515ecc
Disable animations in superuser fragment
2020-03-27 00:53:38 -07:00
topjohnwu
a83e055b19
Fix strings
2020-03-27 00:53:13 -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
fc2d0246e6
Added requesting navigation being hidden when showing alternative view
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
51402e68d2
Fixed log not displaying back button when alternative view is shown
2020-03-26 03:42:52 -07:00
Viktor De Pasquale
1b8813228b
Updated the app to use navigation components instead of custom solution
...
Welcome to mid 2018.
2020-03-26 03:42:52 -07:00
Viktor De Pasquale
922e36cfb0
Updated the width of bottom navigation
2020-03-26 03:42:52 -07:00
Viktor De Pasquale
edff094626
Added log as primary fragment
2020-03-26 03:42:52 -07:00
Heimen Stoffels
b8ef491bc7
Updated Dutch translation
2020-03-22 13:45:26 -07:00
kam821
ea1ebb8d00
Polish translation - fix missing string
...
Add previously deleted string, due incorrent (duplicated) variable name.
Described in: 31142180cb
2020-03-22 13:45:02 -07:00
topjohnwu
31142180cb
Fix strings
2020-03-21 13:13:26 -07:00
Vladimír Kubala
38b0fa04a8
Small translation fix
2020-03-21 13:10:04 -07:00
fessmm
29817245ba
update de strings
2020-03-21 13:09:37 -07:00
Ilya Kushnir
925fe6f152
Update RU strings
2020-03-21 04:34:45 -07:00
孟武.尼德霍格.龍
93fd574b75
更新繁體中文字串
...
更新繁體中文字串(適用278版)
2020-03-21 04:34:09 -07:00
kam821
0de88bcbb9
Polish translation - add missing strings, small improvements.
2020-03-21 04:33:43 -07:00
topjohnwu
72f6770d61
Fix string resources
2020-03-15 00:39:56 -07:00
topjohnwu
8101f3f67d
Set proper permissions
2020-03-12 00:51:46 -07:00
Tornike Khintibidze
4579825758
Updated Georgian strings
2020-03-12 00:33:04 -07:00
Ilya Kushnir
ef91c33f55
Update RU strings
2020-03-12 00:31:55 -07:00
dark-basic
511d5993df
Update Strings-es.xml
2020-03-12 00:31:34 -07:00
Viktor De Pasquale
9f4958e869
Updated safetynet success color to primary
2020-03-12 00:30:00 -07:00
Vladimír Kubala
07228279a3
Update Slovak translation
2020-03-08 23:26:08 -07:00
JoanVC100
6877ef790f
Add strings
2020-03-08 23:25:25 -07:00
cristisilaghi
a3809648dd
Update Romanian
2020-03-08 23:25:05 -07:00
topjohnwu
541fa5cb1f
Update dependencies
2020-03-08 22:54:14 -07:00
Shaka Huang
9582379e1b
Fix error patching boot.img
...
Signed-off-by: Shaka Huang <shakalaca@gmail.com>
2020-03-08 22:27:18 -07:00
Viktor De Pasquale
409cb06ea0
Fixed layout not reacting to nested scroll on su screen
2020-03-04 23:51:06 -08:00
Viktor De Pasquale
88d917b662
Added permission check for installing/downloading modules
2020-03-04 23:50:50 -08:00
topjohnwu
faf077b494
Min ver is 19.0, don't need legacy commands
2020-02-29 15:41:15 -08:00
topjohnwu
915fd3020b
Small string resource reorganization
...
Close #2454
2020-02-29 14:49:06 -08:00
micheleberrettis1
642788abec
Typo fix.
...
Fixed two typos in the Italian translation.
2020-02-29 02:09:08 -08:00
Vladimír Kubala
3cd11dd9a0
Update Slovak translation
2020-02-29 02:08:52 -08:00
kam821
bf2c5ce368
Updated Polish translation
...
Synced with latest strings file, some minor fixes.
2020-02-29 02:08:36 -08:00
cristisilaghi
65c510a211
Update Romanian strings
2020-02-29 02:08:23 -08:00
topjohnwu
6fbc38d764
Add more notice/messages
2020-02-29 02:04:31 -08:00
topjohnwu
200bf993d8
Show unsupported message when running low versions
2020-02-28 21:09:52 -08:00
topjohnwu
fc05f377fb
Update env fix handling logic
2020-02-28 17:44:03 -08:00
topjohnwu
5c0e86383c
Add test button toggle in code
2020-02-28 11:53:25 -08:00
topjohnwu
64f5ff5475
Use global A/B detection
2020-02-28 10:30:53 -08:00
topjohnwu
758777111a
Improve application startup
2020-02-27 12:54:42 -08:00
topjohnwu
b90e0430f8
Don't do layered cards
2020-02-27 01:43:00 -08:00
topjohnwu
0ce7da1bf6
Upgrade AGP
2020-02-25 15:14:24 -08:00
Viktor De Pasquale
e6464c5c7f
Fixed module filter list not respecting single column layout
2020-02-25 15:03:31 -08:00
topjohnwu
c6b3f06b95
Cleanup stuffs
2020-02-22 01:28:33 -08:00
topjohnwu
581419b6a3
Update dependencies
2020-02-21 23:40:20 -08:00
topjohnwu
3e70a61e33
Fix strings
2020-02-18 16:14:11 -08:00
dark-basic
76f35d02b7
Update strings-es
2020-02-18 16:00:40 -08:00
Ilya Kushnir
356b417a04
Update RU strings
2020-02-18 16:00:23 -08:00
Tornike Khintibidze
56147a80b5
Updated Translations
2020-02-18 16:00:09 -08:00
JoanVC100
0f7e59d288
Update + Fixes ca-strings
2020-02-18 15:59:01 -08:00
Gozzwip
f33028c645
some changes
2020-02-18 15:58:47 -08:00
Davy Defaud
f9149ad433
French translation
2020-02-18 15:58:17 -08:00
topjohnwu
0d7474cc88
Fix all locale issues
2020-02-18 14:02:08 -08:00
topjohnwu
1e7e06d1cc
Proper canary version detection
2020-02-17 22:05:32 -08:00
topjohnwu
8453282fa6
Improve flash console screen
2020-02-16 19:04:26 -08:00
topjohnwu
40f971d18a
Add entrypoint for testing
...
Should do it with proper unit test, but duh
2020-02-15 21:57:03 -08:00
topjohnwu
ce7cb1eeae
Remove device section
2020-02-12 13:26:10 -08:00
Viktor De Pasquale
d2701616da
Fixed bottom navigation colors so it doesn't blend together with the misused layout underneath
2020-02-12 10:48:24 -08:00
Fox2Code
10eb159e1b
Disable Grant Button for 1 seconds after popup display
2020-02-11 21:45:10 -08:00
topjohnwu
36897ceb19
Add slight stroke to navigation card
2020-02-11 21:32:44 -08:00
topjohnwu
9a8274130b
Manually set referenced resource ID for barriers
2020-02-11 20:54:23 -08:00
topjohnwu
c8d050c3e3
Fix strings resources
2020-02-11 20:05:17 -08:00
孟武.尼德霍格.龍
a46cd63c9d
更新繁體中文字串
...
更新繁體中文字串到 740559e3bc3e524ea62bd00c975a0575273338fb 基準
2020-02-11 20:00:53 -08:00
zrq8
e9e6eaf079
Update Simplified Chinese Translation
2020-02-11 20:00:40 -08:00
Mevlüt TOPÇU
cb5897af93
Update Turkish translation
...
Hi,
Merge please.
Thanks
2020-02-11 20:00:31 -08:00
Vladimír Kubala
d701d6eb82
Update Slovak translation
2020-02-11 19:59:52 -08:00
Ilya Kushnir
470ebb54e2
Update RU strings
2020-02-11 19:58:51 -08:00
dark-basic
632cab398e
ReFormat Strings
2020-02-11 19:58:38 -08:00
Taras
189c4cc9d8
Update UK strings
2020-02-11 19:58:23 -08:00
topjohnwu
70d5e2dee8
Remove board info from home screen
2020-02-11 19:57:33 -08:00
topjohnwu
c586106e51
Remove confusing scrambled "Manager" text
2020-02-11 19:55:21 -08:00
topjohnwu
ffa85a616a
Update home screen layout (yet again)
2020-02-11 19:46:29 -08:00
Viktor De Pasquale
e5ea3e4a43
Fixed button text color on flash screen
2020-02-11 10:42:17 -08:00
Viktor De Pasquale
0492e63862
Added unified switches to install screen
2020-02-11 10:42:05 -08:00
Viktor De Pasquale
9952387356
Updated layouts to fit new widget that should visually represent a switch
...
The switch is not actually a switch, but a representation of internal state, the layouts continue to accept touch events as beforehand.
2020-02-11 10:42:05 -08:00
Viktor De Pasquale
d7653e6e42
Cleaned up unused resources
2020-02-11 10:42:05 -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
9471577b3b
Properly detect advanced device info
2020-02-10 16:33:58 -08:00
topjohnwu
e85d5e54e2
Update root shell preparation
2020-02-10 16:31:41 -08:00
topjohnwu
5fb071d80b
Merge app scripts
2020-02-10 03:36:28 -08:00
Fox2Code
022151fefd
Prevent fake clicks on SuRequest
2020-02-10 02:08:53 -08:00
topjohnwu
3b8d2fe8b7
Add ramdisk detection
2020-02-10 01:56:34 -08:00
topjohnwu
d51d549a28
Refactor string resources
2020-02-10 01:43:28 -08:00
topjohnwu
b5ac24f239
Fix strings
2020-02-09 21:11:27 -08:00
dark-basic
3ca99005f8
Update strings.xml
...
New lines added.
2020-02-09 21:06:47 -08:00
Ilya Kushnir
0b9f2921d2
Update RU strings
2020-02-09 21:06:34 -08:00
kam821
389501ad0c
Polish translation - Added missing strings
2020-02-09 21:06:20 -08:00
Hen Ry
082e4eb05c
Update strings.xml
...
Fix
2020-02-09 21:06:06 -08:00
Oliver Cervera
47f885a566
Update Italian translation
2020-02-09 21:05:52 -08:00
Taras
bc964b8588
Update Ukrainian (UK) translation
2020-02-09 21:05:36 -08:00
zrq8
b57b3313e4
Update Simplified Chinese Translation
2020-02-09 21:05:21 -08:00
JoanVC100
f185cefa11
Missing string
2020-02-09 21:05:09 -08:00
cristisilaghi
9d256e02d7
Add missing string for Romanian
2020-02-09 21:04:58 -08:00
Vladimír Kubala
086c64c0be
Update Slovak translation
2020-02-09 21:04:43 -08:00
Tornike Khintibidze
798fe57025
Update Georgian translation
2020-02-09 21:04:26 -08:00
Eun Gang Ku
a03f744648
Update strings.xml
...
Add new strings
2020-02-09 21:03:57 -08:00
topjohnwu
64f35744c4
Reorganize home screen layout
2020-02-09 17:03:05 -08:00
Viktor De Pasquale
b512528148
Updated toolbar layout to match the new aesthetic
2020-02-09 03:20:38 -08:00
Viktor De Pasquale
fdfa037dca
Added very slight hint of the card being selectable
2020-02-09 03:20:28 -08:00
Viktor De Pasquale
db4ef1443d
Removed unnecessary code
2020-02-09 03:20:14 -08:00
Viktor De Pasquale
810468c279
Added offline states for magisk and manager sections
2020-02-09 03:20:14 -08:00
Viktor De Pasquale
8146d0830d
Fixed wrong horizontal bias
2020-02-09 03:20:14 -08:00
Viktor De Pasquale
7e946b040c
Updated uninstall button to match aesthetic
2020-02-09 03:20:14 -08:00
Viktor De Pasquale
97d24a7d4d
Removed single-use reboot menu
...
This addition will be used in modules as soon as the homepage gets merged
2020-02-09 03:20:14 -08:00
Viktor De Pasquale
f8bea66313
Fixed menu inflating unnecessarily on every click
2020-02-09 03:20:14 -08:00
Viktor De Pasquale
dd9129017f
Added a condition to hide reboot button when no root is available
2020-02-09 03:20:14 -08:00
Viktor De Pasquale
cbe3602cb7
Fixed views hiding the view below with them
2020-02-09 03:20:14 -08:00
Viktor De Pasquale
1d831d65f3
Added overflow menu for reboot
2020-02-09 03:20:14 -08:00
Viktor De Pasquale
c35d020731
Added uninstall button to magisk details
2020-02-09 03:20:14 -08:00
Viktor De Pasquale
c18db555a4
Updated sections' title colors
2020-02-09 03:20:14 -08:00
Viktor De Pasquale
373092af16
Updated homepage layout
...
The updated layout has extended features such as reboot (not implemented yet), more details with not text ellipsis and easy extendability with further parameters, detail or whatever
More improvements to homescreen to come in upcoming commits.
2020-02-09 03:20:14 -08:00
zrq8
ed58cf953a
Add missing string resources
2020-02-03 13:25:29 +08:00
cristisilaghi
ec26bc5ab7
Corrections for Romanian
2020-02-03 13:25:11 +08:00
kam821
0586760347
Polish translation - Minor corrections/improvements
2020-02-02 16:06:36 +08:00
Tornike Khintibidze
d535f244ad
Corrected translation
2020-02-02 16:06:12 +08:00
Mevlüt TOPÇU
613d46824d
Update
...
Hi
Update Turkish language translations
Merge please
Thanks
2020-02-02 16:05:35 +08:00
Wagg13
041355f182
Final Language Update PT-BR
2020-02-02 16:04:54 +08:00
Viktor De Pasquale
6977dc082f
Fixed texts being incorrect if injected from context
2020-02-02 16:01:50 +08:00
Viktor De Pasquale
d3dffe8165
Updated legacy theme to match error color instead of having separate secondary color
2020-02-02 16:00:15 +08:00
Viktor De Pasquale
6812f9d202
Updated su request dialog to match overall app theme
2020-02-02 16:00:04 +08:00
Viktor De Pasquale
555e7cc907
Fixed dialog not being centered
...
Close #2369
2020-02-02 15:59:44 +08:00
topjohnwu
497efc9f5e
Make scrambled text prettier
2020-01-31 04:48:02 +08:00
topjohnwu
19d76b635c
Fix de strings
2020-01-31 04:29:06 +08:00
Davy Defaud
4875def31c
Complete and improve French translation
...
- fix some typos
- translate the two last strings
- fit French orthotypographic rules (use true apostrophes and hyphens…)
2020-01-31 04:24:10 +08:00
Vladimír Kubala
155c0e3609
Update Slovak language
2020-01-31 04:22:34 +08:00
kam821
00ea15dc19
Update and fix Polish language
...
- Added missing strings.
- Fixed some incorrect translations
- Improved grammar.
Many lines rewritten to keep original (EN) meaning as much as possible.
2020-01-31 04:20:06 +08:00
Hen Ry
f04c4cb78a
Update de strings
2020-01-31 04:19:40 +08:00
topjohnwu
6e4777692e
Change recreate logic
...
Although this new behavior is a little more annoying, at least
it properly kills the activity and restarts it with updated configs.
2020-01-31 04:17:17 +08:00
Viktor De Pasquale
4638fdf2d7
Fixed dialog content being squished unnecessarily
...
...by updating constraint layout
...lol
2020-01-31 04:13:08 +08:00
wiki de pasquale
0783d385d5
Removed security note
...
Note, and the backdrop, has been removed, since users which have chosen device that doesn't receive security updates in, at least 2 months, are getting triggered by their own choices (:
2020-01-31 04:12:49 +08:00
Viktor De Pasquale
cf918e7df8
Updated text "variant" transparency
2020-01-31 04:09:45 +08:00
Viktor De Pasquale
1ba9faf35b
Added legacy theme (Fraxure)
...
Theme is, in color, identical to legacy colors.
2020-01-31 04:09:45 +08:00
Viktor De Pasquale
6e48294f2a
Removed unnecessary files and merged styles
2020-01-31 04:09:45 +08:00
topjohnwu
e938e717b0
Refactor PatchAPK code
2020-01-31 03:37:39 +08:00
topjohnwu
8a6b3644be
Strip only debug and verbose logging
2020-01-29 22:16:53 +08:00
topjohnwu
1d89fe503b
Fix manager hiding
...
Workaround bizarre optimization bugs
2020-01-29 20:55:20 +08:00
topjohnwu
c38c473e11
Fix compile error
2020-01-29 17:38:36 +08:00
Eun Gang Ku
83f9767254
Update strings.xml
...
Add small corrections.
2020-01-29 13:34:49 +08:00
JoanVC100
3e0352eee6
Update strings + Corrections
2020-01-29 01:51:17 +08:00
Rom
28faff6425
Fix French translation
2020-01-29 01:51:07 +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
Mevlüt TOPÇU
fbe776db0b
Update Turkish language
...
Hi
Update Turkish language
Merge please
Thanks
2020-01-27 21:54:44 +08:00
topjohnwu
1e2de1bb14
Preserve everything in package 'a'
...
Close #2301
2020-01-27 21:25:41 +08:00
Tornike Khintibidze
30286f0ea5
Fixed translations
2020-01-27 18:24:26 +08:00
cristisilaghi
60ee742855
Update RO strings
2020-01-27 18:23:52 +08:00
Rom
a913ede48f
French translation update
2020-01-27 18:23:43 +08:00
Wagg13
9592583783
Language update PT-BR
...
Minor improvements and some corrections that better match words in the language.
I adapt it as I test it.
2020-01-27 18:23:34 +08:00
zrq8
ad49d3ad26
Update Simplified Chinese Translation
2020-01-27 18:23:17 +08:00
dark-basic
21ee73c2a3
Translation Correction
2020-01-27 18:23:02 +08:00
Viktor De Pasquale
f5d0cc9f32
Updated helper lists so they are lazily populated
2020-01-27 18:22:29 +08:00
John Wu
88920e0546
Merge pull request #2320 from Displax/RU
...
Update RU strings
2020-01-26 12:19:58 +08:00
dark-basic
d27773de03
Add missing string-es resources
2020-01-26 12:19:43 +08:00
Tornike Khintibidze
8abdaeb044
Translated newest string
2020-01-26 12:19:22 +08:00
孟武.尼德霍格.龍
9682d2f84a
更新繁體中文字串
...
新增一處字串
2020-01-26 12:18:57 +08:00
Ilya Kushnir
a86b9e81e9
Update RU strings
2020-01-25 17:30:59 +02:00
topjohnwu
a8bb7c68a3
Add missing string resources
2020-01-25 23:03:39 +08:00
topjohnwu
bdad29adab
Fix pt-rBR strings
2020-01-25 23:03:14 +08:00
Tornike Khintibidze
fadcfe5f7a
Added new Georgian (ქართული) translation
2020-01-25 22:56:40 +08:00
Wagg13
fbd83b5ff3
Update language Portuguese (pt-br)
2020-01-25 22:56:22 +08:00
Ilya Kushnir
c351174fa4
Preliminary Russian translation refactoring
2020-01-25 22:56:00 +08:00
zrq8
cc4f99fe28
Update Simplified Chinese Translation
2020-01-25 22:55:41 +08:00
dark-basic
b2a9b88fe5
Updated Spanish translations
2020-01-25 22:55:27 +08:00
孟武.尼德霍格.龍
da06e0ec76
更新繁體中文字串
...
-針對 v7.5.2(270)以後的 Manager 進行翻譯的增補
-祝您新年快樂
2020-01-25 22:55:01 +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
0dc9f5c324
Rename some string IDs
2020-01-23 02:34:18 +08:00
topjohnwu
36513c2301
Don't direct reference R id
2020-01-23 02:23:42 +08:00
topjohnwu
3a10597aed
Remove unused resources
2020-01-23 02:14:00 +08:00
topjohnwu
2291be5d26
Merge string resources
2020-01-23 01:40:36 +08:00
topjohnwu
345c3ef15e
Remove old settings page
2020-01-23 00:57:32 +08:00
topjohnwu
c1dad11cb3
Merge branch 'md2'
2020-01-22 14:55:06 +08:00
jjhitel
12b219e7b2
Update Korean translation
2020-01-22 14:50:33 +08:00
topjohnwu
12a9792c7d
Remove old install dialog
2020-01-22 14:49:46 +08:00
Viktor De Pasquale
c5e5b70e08
Added safe mode notice to modules
2020-01-21 22:01:55 +01:00
Viktor De Pasquale
327b186240
Fixed theme mode title
2020-01-21 21:50:13 +01:00
Viktor De Pasquale
5c1417e276
Updated home layout
2020-01-21 21:47:57 +01:00
topjohnwu
b2ddba4cbf
Proper repo fetching behavior
2020-01-19 03:15:51 +08:00
topjohnwu
053251d566
Merge ViewModel Koin modules
2020-01-18 04:07:15 +08:00
topjohnwu
cf161a5dd9
Show url dialog only if necessary
2020-01-18 03:59:02 +08:00
topjohnwu
e4bcdbd0c4
Make settings page more reasonable
2020-01-18 03:06:33 +08:00
topjohnwu
cae43b26f4
Improve settings item code
2020-01-18 01:34:46 +08:00
topjohnwu
b95cf9b9a3
Show detail descriptions in settings
2020-01-17 17:02:40 +08:00
topjohnwu
e6f443cb24
More backwards compatibility
2020-01-17 00:40:16 +08:00
topjohnwu
087ccd69c9
Cleanup resources
2020-01-16 00:07:40 +08:00
topjohnwu
7532477a2f
Make release builds work
2020-01-15 00:51:27 +08:00
topjohnwu
433ae89e53
Make things run on API 17
2020-01-15 00:05:44 +08:00
topjohnwu
de853a2651
Fix crash when manually refresh repo db
2020-01-14 22:03:29 +08:00
topjohnwu
47c3045980
Log full stack trace for unhandled exception
2020-01-14 20:14:20 +08:00
topjohnwu
dd50c19ba3
Consolidate stubs
2020-01-13 23:10:17 +08:00
topjohnwu
707d7b3342
Separate core components
2020-01-13 22:01:46 +08:00
topjohnwu
ba1a2fbce4
Remove deprecate APIs
2020-01-13 04:00:35 +08:00
topjohnwu
84f1e78660
Consolidate base viewmodel implementation
2020-01-13 03:56:03 +08:00
topjohnwu
3490ba0a56
Redesign is now the new norm
2020-01-13 00:43:09 +08:00
topjohnwu
1449486958
Replace old design with redesign (p3)
2020-01-12 21:52:32 +08:00
topjohnwu
9094cf7ce3
Replace old design with redesign (p2)
2020-01-12 16:07:30 +08:00
topjohnwu
df0a5b59f8
Replace old design with redesign (p1)
2020-01-12 15:00:49 +08:00
topjohnwu
0827044caf
Make Room incremental
2020-01-12 04:54:20 +08:00
topjohnwu
fc690b9f02
Update dependencies
2020-01-12 03:50:12 +08:00
topjohnwu
22c9d836e0
Merge branch 'master' into feature/redesign
2020-01-12 03:02:03 +08:00
topjohnwu
984997e73b
Update paths
...
Close #2244
2020-01-11 12:37:08 +08:00
topjohnwu
0b41cd8564
Fix sk strings
2020-01-10 01:55:23 +08:00
topjohnwu
7db523071d
Update changelog
2020-01-10 01:41:39 +08:00
JoanVC100
974ee58b9c
New string added
2020-01-10 01:37:32 +08:00
Kamil Kras
1e88f2c382
Updated polish translation
...
Added translation for:
unsupport_magisk_msg
settings_su_biometric_title
settings_su_biometric_summary
no_biometric
2020-01-10 01:37:20 +08:00
Vladimír Kubala
0bdcfcaaf5
Update Slovak translation
2020-01-10 01:37:05 +08:00
Albert I
5f9c78d04f
app: l10n: Update Indonesian translations
...
Signed-off-by: Albert I <kras@raphielgang.org>
2020-01-10 01:36:55 +08:00
Viktor De Pasquale
afa178fdec
Fixed the checkbox being wrongly recognized as clickable
2020-01-09 18:06:30 +01:00
Viktor De Pasquale
fcedd06e72
Added grid column count settings
...
*Cough, cough* Use pinch to zoom gesture instead, not a fan of this.
2020-01-06 20:00:33 +01:00
Viktor De Pasquale
6a2acbe929
Added tiny hint that magisk can be uninstalled using the icon
2020-01-06 19:31:06 +01:00
Viktor De Pasquale
4cfff40475
Updated special chars to their full-width variants
...
Close #2219
2020-01-06 19:06:19 +01:00
Viktor De Pasquale
904948dc7d
Added empty states for all remaining screens
...
Fixed some issues in the process as the MergeObservableList doesn't support additions or deletions, duh...
2020-01-06 19:03:36 +01:00
Viktor De Pasquale
7342509b2e
Added resetting state of the recyclerview scroll listener
...
In some edge-cases the listener can still think that the content is loading.
2020-01-06 18:37:45 +01:00
Viktor De Pasquale
ed837ba26f
Updated the logic that refreshes the modules
...
Also added empty states for installed and made updatable modules visible all the time to avoid unnecessary transitions
2020-01-06 17:46:08 +01:00
Viktor De Pasquale
13262fdb18
Fixed the dialog not being actually closed on click outside
...
Misplaced methods ftw
2020-01-06 16:41:44 +01:00
Viktor De Pasquale
baf18a8762
Fixed cardview resizing itself idiotically in constraint layout
2020-01-06 16:33:55 +01:00
Viktor De Pasquale
c0b56b927f
Updated the material library back to alpha03 version
...
The aforementioned fragment has fixed issue with layouts being oversized on API21 (maybe a bit lower and higher as well, did not test) which was notable on homepage.
Unfortunately it deprecated most of the logic behind hiding of the top action view. Since it inherited and overridden the functionality from HideBottomViewOnScrollBehavior it no longer called the old methods and so the whole class was rendered _useless_. Fortunately we didn't need the whole backing implementation so the parent class was changed to the bare minimum. Hopefully this incident will not repeat.
Thanks goes to material team for introducing breaking changes in feature update.
2020-01-06 16:24:27 +01:00
topjohnwu
ea9947081f
Use widgets from AndroidX
2020-01-05 16:27:28 +08:00
topjohnwu
e04f943980
Backwards support back to API 21
...
Things still crash pre-21
2020-01-05 16:05:22 +08:00
topjohnwu
b38e940088
Fix font files
2020-01-05 14:24:36 +08:00
Viktor De Pasquale
bc0bb92f7a
Updated indication of whether the module is enabled
2020-01-04 16:46:13 +01:00
Viktor De Pasquale
8737be2623
Updated policy (apps) layout to be more compact
...
Added pinch in to increase list span count / out to decrease
The setting will be remembered across the whole app (every list that uses Staggered Grid)
Updated indication of whether the policy has root access enabled permitted or not
Displays crossed out app logo if not permitted
2020-01-04 16:07:53 +01:00
Viktor De Pasquale
eb929160b3
Reverted updating material library
2020-01-04 13:30:33 +01:00
Viktor De Pasquale
b8b0f257db
Updated navigation behavior to be consistent and easily manageable
2020-01-04 13:30:21 +01:00
Viktor De Pasquale
67b5f39df2
Updated device info view to be expanded by default
2020-01-04 11:52:29 +01:00
topjohnwu
7e9b3f1a60
Merge components
2020-01-04 04:48:13 +08:00
topjohnwu
465aaeff82
Remove dexter dependency
2020-01-03 02:06:53 +08:00
topjohnwu
40c64d50d5
Merge branch 'master' into feature/redesign
2020-01-02 14:52:50 +08:00
topjohnwu
e0d02a61a9
Add v7.5.0 changelog
2020-01-02 12:09:36 +08:00
topjohnwu
b3328a0ec2
Make sure shell command won't block
2020-01-02 02:19:56 +08:00
nikk gitanes
3c2041933f
Remote focus fixes (classic UI)
2020-01-01 15:06:24 +08:00
孟武.尼德霍格.龍
e88b1cc443
繁體中文字串更新
2020-01-01 15:05:07 +08:00
Davy Defaud
71b05b18a0
Spelling, typographical and wording fixes
...
- spelling fixes
- typographical fixes : thin spaces before exclamation and interrogation marks, true apostrophes instead of single quotes, non-breaking spaces to avoid orphan words, etc.
- rewording for a better French translation
- fix various misinterpretation
2020-01-01 15:04:34 +08:00
topjohnwu
1b4a3d2d9f
More precise env detection in non-root
2020-01-01 14:19:24 +08:00
topjohnwu
3049a81c3b
Update several scripts
...
- Update backup format as we might be patching multiple partitions
- Update uninstaller to remove files in persist (sepolicy.rule)
- Better handling for dtb/dtbo partition patching
2020-01-01 14:02:44 +08:00
topjohnwu
7fa2625a03
Fix strings
2019-12-27 20:37:33 +08:00
topjohnwu
33d62d7f21
Handle sepolicy.rule when disable/remove in app
2019-12-27 19:03:45 +08:00
topjohnwu
02761f5f35
Fix French resources
...
Close #2169
2019-12-21 06:01:18 -05:00
JoanVC100
404104208f
Update ca-strings + Fixes
2019-12-15 19:49:12 -05:00
Rom
b4d0ad9713
Update French translation
2019-12-15 19:49:05 -05:00
Viktor De Pasquale
89b1fa341b
Added assigning repo to installed modules to show readme
...
Close #1089
2019-12-13 15:19:56 +01:00
Viktor De Pasquale
3bda7cb26b
Removed exclusive usage of 29 level API
2019-12-13 14:41:49 +01:00
Viktor De Pasquale
85a350b6c8
Fixed minor RTL issues
2019-12-06 20:53:22 +01:00
Viktor De Pasquale
eae4eff92f
Fixed custom dialog behaving oddly while displaying scrollable content
2019-12-06 20:34:25 +01:00
Viktor De Pasquale
848be8f806
Fixed rtl for reveal animations
2019-12-06 18:06:59 +01:00
Viktor De Pasquale
c79b79b37e
Cleaned up extensions and utilities in redesign
2019-12-06 16:28:41 +01:00
Viktor De Pasquale
8a03c366b8
Updated settings item location >in code<
2019-12-06 15:39:12 +01:00
Viktor De Pasquale
37677f389c
Finished rebranding core-only mode to safe mode
...
In compliance with #2131
Mentioned features are not contained within this commit
2019-12-06 15:00:55 +01:00
topjohnwu
3e275b7dba
Update a bunch of stuffs
2019-12-06 00:30:00 -05:00
Mevlüt TOPÇU
291c718ba2
Update Turkish language
...
Hi,
Update Turkish language
Merge please
Thanks
2019-12-05 17:21:42 -05:00
Hen Ry
fcd6071c57
Update de strings
2019-12-05 17:21:31 -05:00
Viktor De Pasquale
2692234b8c
Updated hide items to follow suit with the rest of scrollable content
2019-12-02 18:53:55 +01:00
Viktor De Pasquale
bfb5d7e5ac
Reverted tinting headlines
2019-12-02 18:51:22 +01:00
Viktor De Pasquale
8c818e707f
Updated homepage to be less aggressive
2019-12-02 18:39:22 +01:00
Viktor De Pasquale
3efea47ca8
Updated settings to level functionality with the legacy
2019-12-02 18:35:48 +01:00
Viktor De Pasquale
89da45f9ac
Fixed state not being propagated correctly on startup
2019-11-29 21:04:47 +01:00
Viktor De Pasquale
34a0a00e3c
Updated constraint layout to fix layout issue in dialog
2019-11-29 21:04:32 +01:00
Viktor De Pasquale
dec1094a59
Added "input" settings item, that opens custom input dialog
...
Updated order of some items in settings
2019-11-29 20:22:24 +01:00
Viktor De Pasquale
02e323133d
Updated selector "selection" design
2019-11-29 14:49:41 +01:00
Viktor De Pasquale
cb96b536a2
Added fair amount of settings implemented from the UI side
...
Updated dialog to create recycler as it behaves better than regular listview
2019-11-28 21:53:31 +01:00
Viktor De Pasquale
627b40799c
Fixed checkbox (switch) colors
2019-11-28 18:58:04 +01:00
Viktor De Pasquale
73c4b21285
Added (partially) settings screen
...
Most importantly added design and functionality backing for these items
2019-11-27 19:47:20 +01:00
Viktor De Pasquale
78d7c45be3
Merge remote-tracking branch 'john/master' into feature/redesign
2019-11-26 14:34:38 +01:00
topjohnwu
72edbfc455
Some platforms do not like null Bundles
2019-11-25 19:09:54 -05:00
Viktor De Pasquale
ac5ecf222e
Fixed style for announcement card
2019-11-25 17:54:04 +01:00
Viktor De Pasquale
a20594ed48
Added emphasis on support section
2019-11-25 17:25:49 +01:00
Viktor De Pasquale
cb59cc92a3
Updated action cards to be more colorful
2019-11-25 16:58:57 +01:00
Viktor De Pasquale
cc7e47bbb6
Added themes
...
All files (that used styles) were refactored to use styles directly so themes can only actually adjust colors
- Elaborate themes would be super hard to maintain and would certainly break over time
2019-11-22 19:29:53 +01:00
Lennoard
474cc7d56d
Updated pt-BR strings (based on current
...
values/strings.xml)
2019-11-21 17:44:27 -05:00
Viktor De Pasquale
42606162b2
Fixed text color in logs not changing with theme
2019-11-21 18:21:08 +01:00
Viktor De Pasquale
e82bc1b7bc
Fixed issues after merge
2019-11-21 18:07:13 +01:00
Viktor De Pasquale
4f0e1c6c61
Merge remote-tracking branch 'john/master' into feature/redesign
...
# Conflicts:
# app/build.gradle
# app/src/main/java/com/topjohnwu/magisk/Hacks.kt
# app/src/main/java/com/topjohnwu/magisk/data/database/RepoDatabase.kt
# app/src/main/java/com/topjohnwu/magisk/data/repository/LogRepository.kt
# app/src/main/java/com/topjohnwu/magisk/di/DatabaseModule.kt
# app/src/main/java/com/topjohnwu/magisk/extensions/RxJava.kt
# app/src/main/java/com/topjohnwu/magisk/extensions/XAndroid.kt
# app/src/main/java/com/topjohnwu/magisk/extensions/XJava.kt
# app/src/main/java/com/topjohnwu/magisk/model/download/RemoteFileService.kt
# app/src/main/java/com/topjohnwu/magisk/model/entity/recycler/LogRvItem.kt
# app/src/main/java/com/topjohnwu/magisk/model/events/ViewEvents.kt
# app/src/main/java/com/topjohnwu/magisk/ui/SplashActivity.kt
# app/src/main/res/xml/app_settings.xml
2019-11-21 17:46:59 +01:00
Viktor De Pasquale
550f6aff7e
Updated showing / hiding filters
2019-11-21 17:35:29 +01:00
Viktor De Pasquale
67c50d7504
Added magisk log screen
2019-11-21 17:31:37 +01:00
Viktor De Pasquale
94f0c61619
Added ignoring emulators for env_fix dialog
2019-11-21 14:30:12 +01:00
Viktor De Pasquale
8a86b30fd1
Fixed core UI elements not behaving properly after recreating
2019-11-21 14:24:14 +01:00
Viktor De Pasquale
6379108a75
Added new log screen
2019-11-20 22:42:44 +01:00
Viktor De Pasquale
fbeaad077f
Updated themes so they are separated from styles
2019-11-19 18:53:50 +01:00
Viktor De Pasquale
8918113a31
Added colored borderless ripple effect
2019-11-19 17:56:32 +01:00
Viktor De Pasquale
c5385b5b4c
Added custom markdown window for redesign
2019-11-19 17:41:24 +01:00
Viktor De Pasquale
35475e1d25
Added option to include simple view to MagiskDialog
2019-11-19 17:41:09 +01:00
Viktor De Pasquale
fb2c292f35
Updated dialog base to handle large content
2019-11-19 17:40:42 +01:00
Viktor De Pasquale
afc3fb10c7
Updated icon padding for all buttons
2019-11-19 17:16:07 +01:00
Viktor De Pasquale
0a239c2fef
Added QOL improvements
...
- fast scroll in module/filter list
- auto closing keyboard on scroll
2019-11-19 17:15:44 +01:00
Viktor De Pasquale
f5342a09d3
Added back safe mode notice
2019-11-19 16:07:19 +01:00
Viktor De Pasquale
f72de687c5
Fixed module lists not being strictly typed in builder
2019-11-19 15:56:10 +01:00
Viktor De Pasquale
833269fd0a
Updated install from storage button to be more expressive
2019-11-18 17:49:03 +01:00
Viktor De Pasquale
332c1a6c59
Removed overcomplicated updates loading
...
The mechanism was replaced by loading updated directly by id to the initial list. There are two factors why yesterday-me was dumb:
1) By asynchronously loading update state, you have no control over it - hence no search
2) It's incredibly wasteful; running that hardcore search on every query? Not cool
...and from UX stand-point having updates inlined right under installed modules is by far better than nitpicking it from the list or in the search
2019-11-18 17:21:23 +01:00
Viktor De Pasquale
0f1f43057e
Updated handling queries so first query is always instant
2019-11-18 16:29:27 +01:00
Viktor De Pasquale
784a7a7f24
Added back press closing filters in hide and module screens
2019-11-17 13:53:41 +01:00
Viktor De Pasquale
8e34baa59f
Fixed bottom padding being too small
2019-11-17 13:48:52 +01:00
Viktor De Pasquale
2926772bba
Added checks for updatable state on remote repos
2019-11-17 13:46:56 +01:00
topjohnwu
da159e4655
Better environment status detection
2019-11-16 17:38:10 -05:00
Viktor De Pasquale
a7f4496db7
Added info dialog for repos
2019-11-16 20:51:56 +01:00
Viktor De Pasquale
f972f02fff
Fixed clipping version string so it better shows the update's impact
...
Incremental canary bugfix will be:
b4b2c4 > f5d2e6
Version bump will be always:
20.2 > 20.3 (regardless of canary/beta/stable)
2019-11-16 20:21:09 +01:00
Viktor De Pasquale
1c77e26c05
Added sorting order to modules
2019-11-16 20:07:59 +01:00
Viktor De Pasquale
59c5363933
Updated colors and styles
...
Namely added secondary button
2019-11-16 20:07:35 +01:00
Viktor De Pasquale
b744bb0a5a
Fixed loading showing in incorrect view-states
2019-11-16 19:20:44 +01:00
Viktor De Pasquale
0f140b408c
Added installing external modules from storage
2019-11-16 19:16:59 +01:00
Nick
44ed0a3279
Update RU strings
...
Minor improvements and fixes
2019-11-16 03:23:32 -05:00
dark-basic
9964e1bb8e
Update strings.xml
2019-11-16 03:23:20 -05:00
Viktor De Pasquale
8b8f725499
Fixed log items not being refreshed
...
Close #2079
2019-11-16 03:20:43 -05:00
topjohnwu
bab856bce2
Move biometric settings higher in the list
2019-11-16 03:19:25 -05:00
Viktor De Pasquale
711799b194
Added forced loading per user's demand
...
Added reselecting action (scroll up real fast)
2019-11-15 22:26:00 +01:00
topjohnwu
3d285b91c6
Use ContextCompat
2019-11-15 11:01:39 -05:00
vvb2060
1dc531930d
Update zh-rCN translation
2019-11-15 10:55:51 -05:00
Ilya Kushnir
3d3345acac
Update RU strings
2019-11-15 10:55:41 -05:00
Viktor De Pasquale
2105cacce3
Fixed fab background color in dark mode
...
Now it's recognizable from the background
2019-11-14 19:10:49 +01:00
Viktor De Pasquale
9d1d1710eb
Added new search functionality to module screen
2019-11-14 18:56:03 +01:00
Viktor De Pasquale
c69dcf3e20
Added hiding keyboard when "done" button pressed
2019-11-14 15:19:48 +01:00
Viktor De Pasquale
eec5b37da1
Fixed inconsistent animations in hide
2019-11-14 15:12:53 +01:00
topjohnwu
b29f0ca4d1
Support using BiometricPrompt
2019-11-14 05:42:39 -05:00
topjohnwu
576efbdc1b
Move su logs out of magiskdb
2019-11-14 00:01:06 -05:00
topjohnwu
a7f0510a3e
Update build.gradle
2019-11-13 17:17:21 -05:00
topjohnwu
2ef088cb60
Update RepoDao
2019-11-13 13:23:58 -05:00
topjohnwu
7c320b6fc4
Reformat RxJava extensions
2019-11-13 13:22:51 -05:00
Viktor De Pasquale
e1bda4ee8b
Added new filter for hide section
...
Parts of which will be reused in modules down the line
2019-11-13 18:29:30 +01:00
孟武.尼德霍格.龍
9b297b752e
Update strings.xml
2019-11-13 02:37:35 -05:00
vvb2060
1d6ba58ccd
Update zh-rCN translation
2019-11-13 02:37:10 -05:00
topjohnwu
a6f0aff659
Only store UID for current user
2019-11-13 02:36:34 -05:00
Viktor De Pasquale
54930024f5
Added biometric dialog instead of fingerprint one
2019-11-12 18:01:24 +01:00
Viktor De Pasquale
c5f2f63458
Fixed slow scrolling and list updates on hide screen
2019-11-12 17:23:27 +01:00
Viktor De Pasquale
b2b81a5d0f
Fixed "enabled" state for download action button
2019-11-12 16:45:28 +01:00
Viktor De Pasquale
265dca3723
Removed intermediate loading item
...
- adding intermediate items causes recyclerview renderer to display artifacts (copies of some views)
2019-11-12 15:58:32 +01:00
topjohnwu
171ddab32b
Reorganize code handling su requests
2019-11-12 03:20:07 -05:00
topjohnwu
2aee0b0be0
Refactor code for handling MagiskDB
2019-11-11 15:46:02 -05:00
vvb2060
817cdf7113
fix multiuser owner_managed mode
2019-11-11 14:12:26 -05:00
Viktor De Pasquale
495e734428
Updated module sections so it looks more consistent
2019-11-11 19:36:40 +01:00
Viktor De Pasquale
82120cf47f
Added processing of the download states
2019-11-11 18:01:23 +01:00
Viktor De Pasquale
027a5695f2
Added progressbars to repo items
2019-11-11 18:00:36 +01:00
Viktor De Pasquale
d6d82edff5
Fixed file service not broadcasting indeterminate states
2019-11-11 17:59:44 +01:00
Viktor De Pasquale
a12eb3fc6f
Fixed incorrect indeterminate progressbar color
2019-11-11 17:59:09 +01:00
Viktor De Pasquale
6c84574366
Added loading item to modules
2019-11-11 16:22:33 +01:00
topjohnwu
1a38f25bd9
Properly invoke method
2019-11-10 14:59:19 -05:00
topjohnwu
ad40e53349
Update hacks
2019-11-09 18:17:16 -05:00
topjohnwu
a2ddf362d8
Make a.a not extend AppComponentFactory
...
Fix #2053
2019-11-09 16:13:15 -05:00
Ilya Kushnir
65eca31635
Updating RU translation
2019-11-09 04:40:10 -05:00
Viktor De Pasquale
bc5cbe9fba
Updated module item design to follow suit with the rest of the app
2019-11-08 19:19:19 +01:00
Viktor De Pasquale
f83f92d3fa
Updated modules screen so it displays all the content in one recyclerview
...
Added "endless" scrolling support
- this is done in order to display everything very swiftly and load as user needs it
- for the most part we'll download only ~10 items and load the rest as scroll progresses, this accomplishes the illusion that whole list is being populated
Added sections and updated repo view
2019-11-08 19:04:30 +01:00
topjohnwu
61de63a518
Cleanup manifest
2019-11-08 02:15:30 -05:00
topjohnwu
d952cc2327
Properly solve the connection problem
2019-11-07 17:41:59 -05:00
Viktor De Pasquale
19fd4dd89c
Partially reverted removing "moveToState"
2019-11-06 18:52:58 +01:00
Viktor De Pasquale
f941f5c0b0
Fixed observer not being called immediately
2019-11-06 18:37:11 +01:00
Viktor De Pasquale
c7cad7e4aa
Updated modules so they are properly arranged to respective sections
...
Small updates to module UI
2019-11-06 17:22:26 +01:00
Viktor De Pasquale
1c8988d3f7
Updated "night" style of elevated card
2019-11-05 19:39:06 +01:00
Viktor De Pasquale
70a3dbe2b0
Added primitive implementation of modules screen
2019-11-05 19:38:02 +01:00
Viktor De Pasquale
efbb3ab25f
Fixed red tint regarding system security not being spanned across the whole card
2019-11-05 16:19:41 +01:00
topjohnwu
a6e62e07a2
Sort modules ignore case
...
Close #2024
2019-11-04 17:14:18 -05:00
topjohnwu
b1d25e0503
Reuse ALPHANUM
2019-11-04 15:42:40 -05:00
topjohnwu
25c557248c
Use ContentProvider call method for communication
...
Previously, we use either BroadcastReceivers or Activities to receive
messages from our native daemon, but both have their own downsides.
Some OEMs blocks broadcasts if the app is not running in the background,
regardless of who the caller is. Activities on the other hand, despite
working 100% of the time, will steal the focus of the current foreground
app, even though we are just doing some logging and showing a toast.
In addition, since stubs for hiding Magisk Manager is introduced, our
only communication method is left with the broadcast option, as
only broadcasting allows targeting a specific package name, not a
component name (which will be obfuscated in the case of stubs).
To make sure root requests will work on all devices, Magisk had to do
some experiments every boot to test whether broadcast is deliverable or
not. This makes the whole thing even more complicated then ever.
So lets take a look at another kind of component in Android apps:
ContentProviders. It is a vital part of Android's ecosystem, and as far
as I know no OEMs will block requests to ContentProviders (or else
tons of functionality will break catastrophically). Starting at API 11,
the system supports calling a specific method in ContentProviders,
optionally sending extra data along with the method call. This is
perfect for the native daemon to start a communication with Magisk
Manager. Another cool thing is that we no longer need to know the
component name of the reciever, as ContentProviders identify themselves
with an "authority" name, which in Magisk Manager's case is tied to the
package name. We already have a mechanism to keep track of our current
manager package name, so this works out of the box.
So yay! No more flaky broadcast tests, no more stupid OEMs blocking
broadcasts for some bizzare reasons. This method should in theory
work on almost all devices and situations.
2019-11-04 14:32:28 -05:00
Viktor De Pasquale
b0e7c65504
Added icon for "all processes hidden" state
2019-11-04 17:40:13 +01:00
Viktor De Pasquale
b18b044b63
Updated filter card to be more compact
2019-11-04 17:39:51 +01:00
Viktor De Pasquale
8f5f8db717
Fixed dark mode colors
2019-11-04 17:39:17 +01:00
Viktor De Pasquale
016e28383b
Added animated progressbar
2019-11-04 16:58:39 +01:00
Viktor De Pasquale
f1427e9279
Updated hide item layout
2019-11-04 16:45:54 +01:00
Viktor De Pasquale
169e9ab5ad
Updated hide fragment layout and design of the filter window
2019-11-04 16:02:23 +01:00
topjohnwu
472cde29b8
Allow non supported Magisk to use Magisk Manager
...
Close #1576
2019-11-04 03:24:27 -05:00
linar10
73525d19e9
Update strings.xml
2019-11-03 17:15:17 -05:00
topjohnwu
26618f8d73
Don't do broadcast tests from app
...
Running broadcast tests from the app does not accurately verifies
whether the broadcasts can be delivered when the app is not running in
the foreground, which is why we are running the test.
The only sane way to verify broadcasts is to trigger the broadcast test
directly from the daemon on boot complete. If it is not deliverable,
then activity mode shall be chosen.
In the meantime, cleanup AndroidManifest.xml
2019-11-03 17:01:09 -05:00
topjohnwu
6f7c13b814
Refactor JarMap
2019-11-03 04:45:35 -05:00
topjohnwu
0c9feedb37
Support restarting app when obfuscated
2019-11-03 02:55:22 -05:00
Viktor De Pasquale
dad52724db
Updated hide fragment with more robust filtering UI
2019-11-02 18:31:20 +01:00
Vladimír Kubala
14ba002cbc
Update Slovak translation
2019-11-02 11:59:20 -04:00
Viktor De Pasquale
d48e9d5d72
Removed button patterns defying MD
2019-11-02 15:59:07 +01:00
topjohnwu
7da97489cc
Add v7.4.0 release notes
2019-11-02 01:24:56 -04:00
Oliver Cervera
2dad751889
Update Italian translation
...
- updated existing strings based on english updates
- added new strings
2019-11-02 00:28:07 -04:00
osm0sis
c85b1c56af
signing: fixes for bootimg hdr_v1 and hdr_v2
...
- increase SignBoot bootimg header version maximum from 4 to 8 (upstream AOSP is already at 3) and make a variable for future ease
- hdr read size of 1024 bytes was too small as hdr_v1 and hdr_v2 have increased the used header page areas to 1632 and 1648 bytes, respectively, so raise this to the minimum page size of 2048 and also make a variable for future ease
- do not return "not signed" for all caught exceptions, show StackTrace for future debugging then still return false for script purposes
- correct "test keys" boot image signing strings (scripts and app) to "verity keys"
2019-11-02 00:27:56 -04:00
topjohnwu
4cd154675f
Random dname
2019-11-01 18:52:37 -04:00
Viktor De Pasquale
24e2c3a5e9
Removed unused icons
2019-11-01 21:30:29 +01:00
Viktor De Pasquale
064523ef25
Updated checkbox height
2019-11-01 21:15:02 +01:00
Viktor De Pasquale
85f293a44e
Updated policy colors and internal ids
2019-11-01 21:10:00 +01:00
Viktor De Pasquale
8e412bee5f
Updated radio button sizes
2019-11-01 19:15:05 +01:00
Viktor De Pasquale
7d5555f82e
Added safety notice and support section description
2019-11-01 19:02:30 +01:00
Viktor De Pasquale
6720725d27
Added clarifying tooltips and captions
2019-11-01 18:12:52 +01:00
Viktor De Pasquale
fe5c65d798
Fixed use of RxBus for toggling policies
2019-11-01 17:58:42 +01:00
Viktor De Pasquale
253f3cf1ba
Fixed inconsistent icon sizes
2019-11-01 17:55:25 +01:00
Viktor De Pasquale
d8d72f92b3
Fixed policy toggle being impossible to cancel
2019-11-01 14:47:59 +01:00
topjohnwu
10ce11d671
Fix config/locale issues
...
Close #1977
2019-10-31 17:13:06 -04:00
Viktor De Pasquale
db2e48b49f
Added manager mode recognition
2019-10-31 20:58:17 +01:00
Viktor De Pasquale
5e089451af
Added loaders to superuser and hide
2019-10-31 20:53:57 +01:00
Viktor De Pasquale
6aa22267f4
Updated Hide screen to be fully functioning
...
...although still misses search :(
2019-10-31 20:34:07 +01:00
topjohnwu
0f34457a10
Directly store strings in viewmodel
2019-10-31 15:33:13 -04:00
topjohnwu
34c65e13bc
Fix strings
...
Close #2012
2019-10-31 12:39:54 -04:00
Rom
0a89edf3b0
Update French translation
2019-10-31 02:04:00 -04:00
Viktor De Pasquale
f76c020dd7
Added implementation of hide screen
...
Very much wip and doesn't work at all
2019-10-30 21:58:42 +01:00
Viktor De Pasquale
722fba7805
Updated bottom nav width to not spread useless spaces
2019-10-30 21:09:00 +01:00
Viktor De Pasquale
86551909fc
Added safe mode notice to modules screen
2019-10-30 17:59:03 +01:00
Viktor De Pasquale
588e94c11d
Updated locations of certain elements
...
Settings are now only on home screen as it directly relates to what user might want to do. It is highly unlikely that they would jump from any other screen to settings.
Log is no longer main destination as it's not used very widely; it's been moved to Superuser screen. This screen now encapsulates all root-related stuff.
Home screen is now strictly info-based, except install buttons, of course.
2019-10-30 17:11:42 +01:00
topjohnwu
31e003bda5
Fix bug in version detection
2019-10-30 05:24:22 -04:00
topjohnwu
fdf04f77f2
Send bitmap to notifications and shortcuts
...
On API 23+, the platform unifies the way to handle drawable
resources across processes: all drawables can be passed via Icon.
This allows us to send raw bitmap to the system without the need to
specify a resource ID. This means that we are allowed to NOT include
these drawable resources within our stub APK, since our full APK can
draw the images programmatically and send raw bitmaps to the system.
2019-10-30 01:02:53 -04:00
Viktor De Pasquale
9e66310c28
Updated fragment container
2019-10-29 16:58:46 +01:00
Viktor De Pasquale
93c422dce6
Added post-merge fixes
2019-10-29 16:52:42 +01:00
Viktor De Pasquale
7d6eebdae3
Fixed unreasonable change resulting in major breakage all around the app
2019-10-29 16:50:01 +01:00
Viktor De Pasquale
f11bb609c9
Merge remote-tracking branch 'john/master' into feature/redesign
...
# Conflicts:
# app/build.gradle
# app/src/main/java/com/topjohnwu/magisk/ClassMap.kt
# app/src/main/java/com/topjohnwu/magisk/Info.kt
# app/src/main/java/com/topjohnwu/magisk/extensions/XAndroid.kt
# app/src/main/java/com/topjohnwu/magisk/ui/SplashActivity.kt
# app/src/main/java/com/topjohnwu/magisk/ui/settings/SettingsFragment.kt
# app/src/main/java/com/topjohnwu/magisk/utils/DataBindingAdapters.kt
2019-10-29 15:53:53 +01:00
topjohnwu
5e87483f34
Move addAssetPath to shared
2019-10-29 07:37:19 -04:00
topjohnwu
f7aa451591
Update strings
2019-10-29 07:36:50 -04:00
Viktor De Pasquale
b910a92731
Fixed ui issues in unrooted state
2019-10-27 11:00:16 +01:00
topjohnwu
ee447bc4ce
Improve Keygen yet again
2019-10-26 21:11:32 -04:00
topjohnwu
7693024c29
Replace general resources with platform
2019-10-26 19:23:57 -04:00
Mevlüt TOPÇU
9628700a2f
Update Turkish language
...
Hi,
Merge please
Thanks
2019-10-26 19:03:52 -04:00
Taras
38576173cb
Update Ukrainian translation
2019-10-26 19:03:37 -04:00
topjohnwu
19a769c12e
Update dependencies
2019-10-26 19:02:11 -04:00
topjohnwu
626507093a
Don't need to wrap another layer of context
2019-10-26 15:37:12 -04:00
Viktor De Pasquale
ee7d297ca8
Partially reverted developer section changes
2019-10-26 21:14:01 +02:00
Viktor De Pasquale
a70c0174e1
Added device info card
2019-10-26 21:03:25 +02:00
Viktor De Pasquale
da707afa3f
Updated install ui to better fit app's theme
2019-10-26 17:40:29 +02:00
Viktor De Pasquale
a41597431c
Added more information to magisk/manager cards
2019-10-26 17:33:27 +02:00
Viktor De Pasquale
d0b817381e
Added "caching" of the safetynet response
2019-10-26 16:03:07 +02:00
Viktor De Pasquale
60a2e9b5dc
Updated home info cards to be more compressed
2019-10-26 15:14:20 +02:00
Viktor De Pasquale
df3a37b0a3
Updated developer section to be horizontally scrollable instead of vertically
...
In order to make room for more information
2019-10-26 12:41:34 +02:00
Viktor De Pasquale
5f4718cd13
Added string resources for install screen
2019-10-25 19:17:13 +02:00
Viktor De Pasquale
3cc5cb3123
Updated the install flow
...
Now the binary is downloaded after user selects a method. It also shows download progress as the file's being downloaded
2019-10-25 19:13:54 +02:00
Viktor De Pasquale
8a2872afa4
Removed pre-download while installing magisk
2019-10-25 17:46:20 +02:00
Viktor De Pasquale
85941c4729
Removed lol code
2019-10-25 15:40:46 +02:00
topjohnwu
588b3d14a3
Fix typo
2019-10-24 15:37:32 -04:00
vvb2060
815efa7791
Update zh-rCN translation
2019-10-24 13:04:36 -04:00
topjohnwu
97a691ce2f
Improve keygen for signing repackaged manager
2019-10-24 13:04:15 -04:00
Viktor De Pasquale
82eeefb544
Added system version to the details section for safetynet checks
2019-10-24 18:40:15 +02:00
topjohnwu
9d948f2c2b
Temporary disable verification when hiding app
...
For some reason, Google Play Protect randomly blocks our self-signed
repackaged Magisk Manager APKs. Since we are root, the sky is our
limit, so yeah, disable package verification temporarily when installing
patched APKs, LOLz
Close #1979
2019-10-24 12:23:03 -04:00
Viktor De Pasquale
f6061ba00e
Fixed bottom navigation popping up when it shouldn't
2019-10-24 18:07:36 +02:00
Viktor De Pasquale
9e3afcfe7a
Added safetynet implementation
2019-10-24 18:00:51 +02:00
topjohnwu
0b87108174
Move things around
2019-10-24 05:21:42 -04:00
topjohnwu
7fc7809cfc
More precise channel targeting
2019-10-24 04:25:05 -04:00
topjohnwu
c30be20e49
Minor CachedValue fix
2019-10-24 04:02:01 -04:00
topjohnwu
25c64db0a1
Treat outdated stub as outdated manager
2019-10-24 03:54:16 -04:00
topjohnwu
676e9c6593
Provide upgrade path for stubs
2019-10-24 02:47:40 -04:00
topjohnwu
d459859361
Show stub version
2019-10-24 00:54:40 -04:00
topjohnwu
294db93fde
Copy instead of move
...
We might be copying from CE to DE storage, which cannot be moved
2019-10-23 17:20:55 -04:00
Viktor De Pasquale
21f2f86cb8
Added safetynet implementation
...
The implementation itself was moved from fragment to self contained event. The result resolution might be moved to the event as well
2019-10-23 21:17:53 +02:00
Viktor De Pasquale
04576ca828
Added install implementation
2019-10-23 19:14:39 +02:00
Viktor De Pasquale
067cb0cd9d
Fixed magisk button states
2019-10-23 16:20:01 +02:00
topjohnwu
7f971f7173
Make sure our constructor is preserved
2019-10-23 07:51:32 -04:00
topjohnwu
5c7b59524d
Fix strings
2019-10-23 07:15:28 -04:00
topjohnwu
5133e5910e
Don't relaunch app immediately
2019-10-23 07:12:00 -04:00
Abhishek Dubey
3eb9633231
Add Hindi Translation
2019-10-23 06:53:46 -04:00
onevt
ac67b48247
Fix swedish translation typo
2019-10-23 06:53:07 -04:00
topjohnwu
45c1f6bc27
Fix restore manager when running as stub
2019-10-23 06:43:08 -04:00
topjohnwu
0d31e5c8b1
Properly migrate update channels when repackaging
2019-10-23 06:41:25 -04:00
topjohnwu
f8fcaadb5b
Hide manager with stub if feasible
2019-10-23 05:50:06 -04:00
topjohnwu
0b5fd3ee76
Only allow hide/restore app if connected
2019-10-23 05:43:01 -04:00
topjohnwu
71136d7347
Manually trigger broadcast tests if necessary
2019-10-22 16:04:20 -04:00
topjohnwu
a18c552ddf
Guard env state behind cached objects
2019-10-22 15:37:55 -04:00
Viktor De Pasquale
17fb8f2298
Added new magisk install flow
2019-10-22 20:46:09 +02:00
Viktor De Pasquale
fbfc4e72ca
Updated appbar design to be more android-like
2019-10-22 18:09:26 +02:00
Viktor De Pasquale
d2e171eabc
Added a way to listen to download service from homepage and behave accordingly
2019-10-22 17:29:45 +02:00
Viktor De Pasquale
e50094af80
Added install fragment
2019-10-22 16:29:01 +02:00
Viktor De Pasquale
93edf72993
Rationalize download failure
2019-10-22 16:26:28 +02:00
Viktor De Pasquale
a230d63cf9
Fixed having an error doesn't inform external listeners
2019-10-22 16:22:28 +02:00
topjohnwu
9656878ef3
Actually apply the input name
2019-10-22 05:06:17 -04:00
Viktor De Pasquale
7ded7de39a
Added custom dialog for setting app's name after repackaging
2019-10-22 04:52:19 -04:00
topjohnwu
0f74e89b44
Introduce component agnostic communication
...
Usually, the communication between native and the app is done via
sending intents to either broadcast or activity. These communication
channels are for launching root requests dialogs, sending root request
notifications (the toast you see when an app gained root access), and
root request logging.
Sending intents by am (activity manager) usually requires specifying
the component name in the format of <pkg>/<class name>. This means parts
of Magisk Manager cannot be randomized or else the native daemon is
unable to know where to send data to the app.
On modern Android (not sure which API is it introduced), it is possible
to send broadcasts to a package, not a specific component. Which
component will receive the intent depends on the intent filter declared
in AndroidManifest.xml. Since we already have a mechanism in native code
to keep track of the package name of Magisk Manager, this makes it
perfect to pass intents to Magisk Manager that have components being
randomly obfuscated (stub APKs).
There are a few caveats though. Although this broadcasting method works
perfectly fine on AOSP and most systems, there are OEMs out there
shipping ROMs blocking broadcasts unexpectedly. In order to make sure
Magisk works in all kinds of scenarios, we run actual tests every boot
to determine which communication method should be used.
We have 3 methods in total, ordered in preference:
1. Broadcasting to a package
2. Broadcasting to a specific component
3. Starting a specific activity component
Method 3 will always work on any device, but the downside is anytime
a communication happens, Magisk Manager will steal foreground focus
regardless of whether UI is drawn. Method 1 is the only way to support
obfuscated stub APKs. The communication test will test method 1 and 2,
and if Magisk Manager is able to receive the messages, it will then
update the daemon configuration to use whichever is preferable. If none
of the broadcasts can be delivered, then the fallback method 3 will be
used.
2019-10-21 13:59:04 -04:00
Viktor De Pasquale
2bb39bee2f
Updated redesign button design
2019-10-21 19:30:14 +02:00
Viktor De Pasquale
ce2ca5446a
Fixed checkbox's theme implementation in dark mode
2019-10-21 19:22:56 +02:00
Viktor De Pasquale
8a014ff786
Added most of the remaining functionality for Magisk install dialog
2019-10-21 19:22:16 +02:00
topjohnwu
96a8a2a8b8
Make SuRequest default to Translucent.NoTitleBar
...
Close #1959
2019-10-20 17:35:38 -04:00
Viktor De Pasquale
dc09ec7598
Added theme mode picker dialog
...
Redesigned settings' selector for dark mode a bit
2019-10-20 17:28:18 +02:00
Viktor De Pasquale
27fb0474d5
Added more standard night-mode system
2019-10-20 17:27:39 +02:00
Viktor De Pasquale
7f0a87742a
Fixed design issues in dialogs
...
Dark theme not being properly implemented
Icons were not set
2019-10-20 17:26:00 +02:00
Viktor De Pasquale
47e236788c
Added uninstall dialog
2019-10-20 16:47:02 +02:00
topjohnwu
325d9a0b86
Generate keys for signing hidden Magisk Manager
2019-10-20 06:56:33 -04:00
Viktor De Pasquale
236ad57608
Added showing download progress in the home ui
2019-10-20 12:40:50 +02:00
Viktor De Pasquale
6d03798314
Added internal download pseudo broadcasts
2019-10-20 12:40:26 +02:00
Viktor De Pasquale
c954a4f7bc
Updated icons and texts for magisk hide and safetynet
2019-10-20 11:29:04 +02:00
Viktor De Pasquale
ba588d1097
Updated position of quick links on superuser screen
2019-10-20 11:24:45 +02:00
Viktor De Pasquale
44f7c9a545
Added animations for toolbar transitions
2019-10-20 11:14:49 +02:00
Viktor De Pasquale
b910db322b
Fixed snackbar behavior in contrast with bottom navigation
2019-10-20 10:57:29 +02:00
Viktor De Pasquale
c44a942fb7
Added entry for safetynet attestation
2019-10-19 22:28:01 +02:00
Viktor De Pasquale
d713ad3499
Added "advanced" install options for installing magisk
2019-10-19 22:14:23 +02:00
Viktor De Pasquale
ddf40df649
Updated colors and elevation to be less distracting
2019-10-19 21:12:30 +02:00
Viktor De Pasquale
7c6d85221d
Updated policy items design
2019-10-19 21:07:06 +02:00
Viktor De Pasquale
b66b82a6e9
Added logic to superuser screen
2019-10-19 20:51:28 +02:00
Viktor De Pasquale
c44b85ea87
Fixed paddings on su screen
2019-10-19 18:29:48 +02:00
topjohnwu
a02493fbaa
Workaround R8 bug
2019-10-19 05:44:56 -04:00
Viktor De Pasquale
fcbf56e93a
Added superuser screen implementation
...
* partially
2019-10-18 19:38:55 +02:00
Viktor De Pasquale
a539ffb188
Updated styles due to low accessibility
2019-10-18 18:15:22 +02:00
Viktor De Pasquale
512f533a80
Added hide fragment for future use
2019-10-18 17:04:41 +02:00
Viktor De Pasquale
96ef9cdbee
Fixed insets not being implicitly asked for by the framework resulting in no coverage for other than main fragments
2019-10-18 16:39:08 +02:00
Viktor De Pasquale
28fcbbcf7b
Added basic preferences to settings
2019-10-17 19:26:35 +02:00
Viktor De Pasquale
0f4326151f
Added titles
2019-10-17 19:26:25 +02:00
Viktor De Pasquale
e0e27774ad
Added remaining stubs for the redesign
2019-10-17 18:57:00 +02:00
Viktor De Pasquale
1223b48b2c
Fixed dialog automatically dismissing itself
2019-10-17 15:52:52 +02:00
Viktor De Pasquale
d8338f0b48
Fixed event duplication
2019-10-17 15:47:11 +02:00
Viktor De Pasquale
38019f7f42
Added env check to homepage
2019-10-17 15:37:10 +02:00
topjohnwu
78daa2eb62
Do not use string resources for app label
...
This not only simplifies hiding stub APKs (no resource IDs involved),
but also opens the opportunity to allow users to customize whatever
app name they want after it is hidden.
2019-10-17 04:47:46 -04:00
topjohnwu
40eda05a30
Make main app fully independent from the stub
...
- Skip 0x7f01XXXX - 0x7f05XXXX resource IDs in the main app; they are
reserved for stub resources
- Support sending additional data from host to guest
- Use resource mapping passed from host when they are being sent
to the system framework (notifications and shortcuts)
2019-10-17 02:55:42 -04:00
topjohnwu
9f9de8c43b
Obfuscate WorkManager components
...
Remove unused components and hack the context sent into WorkManager
2019-10-16 17:03:55 -04:00
Viktor De Pasquale
23978ef4d2
Updated bottom padding for home fragment
2019-10-16 19:04:37 +02:00
Viktor De Pasquale
3b4cb23112
Fixed error in navigation implementation
2019-10-16 18:53:38 +02:00
Viktor De Pasquale
974cb1167f
Added post-merge fixes
2019-10-16 17:53:35 +02:00
Viktor De Pasquale
6ccbc272c6
Merge remote-tracking branch 'john/master' into feature/redesign
...
# Conflicts:
# app/build.gradle
# app/src/main/AndroidManifest.xml
# app/src/main/java/com/topjohnwu/magisk/model/events/ViewEvents.kt
# app/src/main/java/com/topjohnwu/magisk/model/navigation/MagiskNavigationEvent.kt
# app/src/main/java/com/topjohnwu/magisk/ui/SplashActivity.kt
# app/src/main/java/com/topjohnwu/magisk/ui/settings/SettingsFragment.kt
# app/src/main/java/com/topjohnwu/magisk/view/MagiskDialog.kt
# app/src/main/res/layout/dialog_magisk_base.xml
2019-10-16 17:33:54 +02:00
Viktor De Pasquale
0eb28c3265
Added navigation delegation to bypass default one
...
By making a delegate like such we protect ourselves against intrusions in views' logic
2019-10-16 17:27:11 +02:00
Viktor De Pasquale
2daa131fb2
Added layout behavior to dismiss toolbars when scrolling
2019-10-16 16:08:07 +02:00
Viktor De Pasquale
51247d36c5
Added disabled state for sections where unrooted user shouldn't have access
2019-10-16 15:47:41 +02:00
topjohnwu
a910c8ccd8
Support stub APK upgrades
2019-10-16 05:07:29 -04:00
topjohnwu
43bda2d4a4
Allow component classname obfuscation
2019-10-16 04:38:31 -04:00
topjohnwu
5673a9bace
Move system accessible resources to shared
2019-10-15 05:49:23 -04:00
topjohnwu
34ff764515
Stabilize resource IDs
2019-10-15 04:37:12 -04:00
topjohnwu
a49002bb2c
Reorganize string resources
2019-10-15 03:33:22 -04:00
Omar Kharrab
7342fc2307
Update Arabic translation
2019-10-15 02:57:43 -04:00
topjohnwu
5ffb9eaa5b
Support loading Magisk Manager from stub on 9.0+
...
In the effort of preventing apps from crawling APK contents across the
whole installed app list to detect Magisk Manager, the solution here
is to NOT install the actual APK into the system, but instead
dynamically load the full app at runtime by a stub app. The full APK
will be stored in the application's private internal data where
non-root processes cannot read or scan.
The basis of this implementation is the class "AppComponentFactory"
that is introduced in API 28. If assigned, the system framework will
delegate app component instantiation to our custom implementation,
which allows us to do all sorts of crazy stuffs, in our case dynamically
load classes and create objects that does not exist in our APK.
There are a few challenges to achieve our goal though. First, Java
ClassLoaders follow the "delegation pattern", which means class loading
resolution will first be delegated to the parent loader before we get
a chance to do anything. This includes DexClassLoader, which is what
we will be using to load DEX files at runtime. This is a problem
because our stub app and full app share quite a lot of class names.
A custom ClassLoader, DynamicClassLoader, is created to overcome this
issue: it will always load classes in its current dex path before
delegating it to the parent.
Second, all app components (with the exception of runtime
BroadcastReceivers) are required to be declared in AndroidManifest.xml.
The full Magisk Manager has quite a lot of components (including
those from WorkManager and Room). The solution is to copy the complete
AndroidManifest.xml from the full app to the stub, and our
AppComponentFactory is responsible to construct the proper objects or
return dummy implementations in case the full APK isn't downloaded yet.
Third, other than classes, all resources required to run the full app
are also not bundled with the stub APK. We have to call an internal API
`AssetManager.addAssetPath(String)` to add our downloaded full APK into
AssetManager in order to access resources within our full app. That
internal API has existed forever, and is whitelisted from restricted
API access on modern Android versions, so it is pretty safe to use.
Fourth, on the subject of resources, some resources are not just being
used by our app at runtime. Resources such as the app icon, app label,
launch theme, basically everything referred in AndroidManifest.xml,
are used by the system to display the app properly. The system get these
resources via resource IDs and direct loading from the installed APK.
This subset of resources would have to be copied into the stub to make
the app work properly.
Fifth, resource IDs are used all over the place in XMLs and Java code.
The resource IDs in the stub and full app cannot missmatch, or
somewhere, either it be the system or AssetManager, will refer to the
incorrect resource. The full app will have to include all resources in
the stub, and all of them have to be assigned to the exact same IDs in
both APKs. To achieve this, we use AAPT2's "--emit-ids" option to dump
the resource ID mapping when building the stub, and "--stable-ids" when
building the full APK to make sure all overlapping resources in full
and stub are always assigned to the same ID.
Finally, both stub and full app have to work properly independently.
On 9.0+, the stub will have to first launch an Activity to download
the full APK before it can relaunch into the full app. On pre-9.0, the
stub should behave as it always did: download and prompt installation
to upgrade itself to full Magisk Manager. In the full app, the goal
is to introduce minimal intrusion to the code base to make sure this
whole thing is maintainable in the future. Fortunately, the solution
ends up pretty slick: all ContextWrappers in the app will be injected
with custom Contexts. The custom Contexts will return our patched
Resources object and the ClassLoader that loads itself, which will be
DynamicClassLoader in the case of running as a delegate app.
By directly patching the base Context of ContextWrappers (which covers
tons of app components) and in the Koin DI, the effect propagates deep
into every aspect of the code, making this change basically fully
transparent to almost every piece of code in full Magisk Manager.
After this commit, the stub app is able to properly download and launch
the full app, with most basic functionalities working just fine.
Do not expect Magisk Manager upgrades and hiding (repackaging) to
work properly, and some other minor issues might pop up.
This feature is still in the early WIP stages.
2019-10-14 03:49:17 -04:00
Viktor De Pasquale
37fa227fb5
Added refreshing upon connection restore
2019-10-12 16:30:18 +02:00
Viktor De Pasquale
9dd272b357
Fixed main cards collapsing on themselves
2019-10-12 16:22:12 +02:00
Viktor De Pasquale
277298feae
Updated night style for elevated cards
2019-10-12 16:11:05 +02:00
Viktor De Pasquale
ff24bc0b68
Updated card design on homepage
2019-10-12 16:10:44 +02:00
topjohnwu
de969a9dab
Downgrade recyclerview
2019-10-12 00:53:04 -04:00
topjohnwu
59fd38bbf8
Add v7.3.5 changelog
2019-10-11 16:12:32 -04:00
topjohnwu
06dc6df270
Allow dalvik runtime to load snet
2019-10-11 03:58:04 -04:00
topjohnwu
ff8460b361
Update dependencies
2019-10-11 03:29:55 -04:00
topjohnwu
674d272eaa
Support pre-5.0 without GMS
...
Fix #1912
2019-10-11 01:46:15 -04:00
dark-basic
175d920c94
Update strings.xml
...
I'M BACK.
New translations were added.
2019-10-10 17:17:09 -04:00
Viktor De Pasquale
700c51f95c
Added animated home icons
2019-10-10 22:00:39 +02:00
topjohnwu
04920883ea
Change code for handling tar files
2019-10-10 15:07:45 -04:00
Viktor De Pasquale
659914afbe
Updated navigation icons
2019-10-10 19:08:15 +02:00
Viktor De Pasquale
ee06aed94b
Updated toolbar and bottom bar design implementation
...
TBD:
Both toolbars should move away from the screen when scrolling
2019-10-10 17:34:06 +02:00
Viktor De Pasquale
af1f5d5ab2
Fixed showing magisk version when not installed
2019-10-10 16:51:20 +02:00
topjohnwu
4a45ba3c14
Update magisk_files commit hashes
2019-10-08 14:53:04 -04:00
Viktor De Pasquale
4292ddd0ae
Added custom install dialogs
2019-10-08 20:29:55 +02:00
Viktor De Pasquale
4a68fd65b6
Updated UI so magisk cannot be updated unless latest manager is installed
2019-10-08 18:51:31 +02:00
Viktor De Pasquale
0e33632e79
Added package name when it differs from the default one
2019-10-08 18:30:23 +02:00
Viktor De Pasquale
a9b20dae33
Fixed showing update information
2019-10-08 18:29:58 +02:00
Madis
dbc8bed234
Estonian update
2019-10-07 23:04:19 -04:00
Mevlüt TOPÇU
479972e3ae
Update Turkish language
...
Hi
Merge please
Thank's
2019-10-07 23:02:29 -04:00
Viktor De Pasquale
3ea28b0afb
Fixed permission event not being executed
2019-10-07 22:58:14 -04:00
Viktor De Pasquale
2b3cc28966
Fixed snackbar not showing up for dumping files
2019-10-07 22:58:14 -04:00
Viktor De Pasquale
751642b39a
Fixed back button not working on flash screen
2019-10-07 22:58:14 -04:00
Viktor De Pasquale
e595937740
Added versions to home screen
...
To overview (when updatable)
- It is very hard to spot a difference in versions so versions are now regarded as commit messages (after dash [-]) when applicable
- This will result in more clear, understandable text
- Bleeding edge (canary) user would see:
ffed229 > ffe02ed or 19.4 > ffe02ed
as opposed to:
19.4-ffed229 (19404)
19.5-ffe02ed (19501)
- Regular beta+ user would see:
19.4 > 19.5
To bottom of the screen
- This change is with respect to regular user. They don't care which version they run as long as they know that "up-to-date" is a gold standard
- It takes tons of real-estate on the screen which takes away the glance-ability from the overview.
2019-10-07 20:09:12 +02:00
Viktor De Pasquale
72eb584e65
Fixed fonts for the thousandth time
2019-10-07 19:23:57 +02:00
Viktor De Pasquale
8999a57f06
Added in-app settings shortcut from system settings
2019-10-06 12:20:05 +02:00
Viktor De Pasquale
8024089bde
Added indication of whether the manager is hidden
2019-10-06 12:06:31 +02:00
Viktor De Pasquale
5e01f785ae
Added handling for state with no connection
2019-10-06 12:06:09 +02:00
Viktor De Pasquale
d35d1b8860
Added more styles to be used on top of primary color
2019-10-06 11:14:11 +02:00
Viktor De Pasquale
88027f2151
Fixed fonts
2019-10-05 23:31:05 +02:00
Viktor De Pasquale
cd41e7108b
Fixed fonts
2019-10-05 23:13:17 +02:00
Viktor De Pasquale
6da566faff
Fixed overlay color for home item
2019-10-05 22:59:28 +02:00
Viktor De Pasquale
df7a866617
Fixed widget order
...
Content mustn't overlay appbar
2019-10-05 22:59:04 +02:00
Viktor De Pasquale
1cc8f13d54
Added section icons
2019-10-05 22:20:57 +02:00
Viktor De Pasquale
086ce63c6c
Updated material library
2019-10-05 22:04:34 +02:00
Viktor De Pasquale
f1dcecc6cf
Added link opening on homepage
2019-10-05 22:04:03 +02:00
Viktor De Pasquale
fe1ce08a6c
Added self-handling event types
2019-10-05 21:53:33 +02:00
Viktor De Pasquale
1d64ddb7f5
Fixed dimensions and padding throughout the homescreen
2019-10-05 12:53:40 +02:00
Viktor De Pasquale
823b121cc7
Added support section content
2019-10-05 12:42:27 +02:00
Viktor De Pasquale
149d35c687
Updated strings
2019-10-05 11:39:33 +02:00
Viktor De Pasquale
3a18e68751
Updated arrangement of manager/magisk sections
2019-10-04 19:57:27 +02:00
Viktor De Pasquale
6afcc83955
Added logic to redesigned home
...
(partially)
2019-10-04 19:36:26 +02:00
Viktor De Pasquale
277d8773f2
Added automated loading to new compat-based redesign
2019-10-04 19:35:22 +02:00
Viktor De Pasquale
f161cf8b0a
Removed no-root state
2019-10-04 18:56:35 +02:00
Viktor De Pasquale
dc62ae95a6
Added icons for navigation
2019-10-04 18:25:06 +02:00
Viktor De Pasquale
f4ecc315d0
Replaced temporary id names
2019-10-04 18:03:06 +02:00
Viktor De Pasquale
cb2a1e57fe
Added text switchers for descriptions
2019-10-04 17:56:30 +02:00
Viktor De Pasquale
1396faf433
Added animated icon for magisk (and its uninstall)
2019-10-04 17:12:28 +02:00
Viktor De Pasquale
dc8d2ae683
Added basic navigation
2019-10-03 19:38:57 +02:00
Viktor De Pasquale
191c7c50b6
Added night theme colors
2019-10-03 19:17:11 +02:00
Viktor De Pasquale
c6725b0518
Added icons for magisk/manager
2019-10-03 19:08:35 +02:00
Viktor De Pasquale
4820a6e01c
Updated toolbar to look more android-like
2019-10-03 18:41:04 +02:00
Viktor De Pasquale
57a9b5bc0c
Added home screen
2019-10-03 17:31:45 +02:00
Viktor De Pasquale
8c224da5d5
Added compat layer for activities and fragments
...
This change is made so logic is not placed within the "old" base substrate. Changes made in the redesign could potentially affect the already working part which we obviously do not want.
2019-10-03 16:42:47 +02:00
Viktor De Pasquale
14e49f3c80
Added redesign base
...
... also basic switching to redesign was added, haha
2019-10-02 19:42:38 +02:00
Viktor De Pasquale
cc8f1adca3
Added more styles regarding homescreen
2019-10-02 18:15:16 +02:00
topjohnwu
5b7ddbbb01
Fix status report UI
2019-09-30 15:32:28 -04:00
Viktor De Pasquale
6352fbb3b2
Added additional sorting for installed modules
2019-09-30 14:07:14 -04:00
Viktor De Pasquale
122e2f7a8e
Updated styles and simplified dimension usage
2019-09-30 19:37:57 +02:00
Viktor De Pasquale
b4e1585e2b
Added custom font
2019-09-30 19:36:51 +02:00
topjohnwu
d3f49334e2
Move function as extension
2019-09-28 12:17:34 -04:00
topjohnwu
c4356171b3
Update dependencies block
2019-09-28 05:01:51 -04:00
topjohnwu
5c5625911d
Fix back button behavior
2019-09-28 05:01:25 -04:00
topjohnwu
6a10cc9c55
Remove dependency Dexter
2019-09-28 04:23:21 -04:00
topjohnwu
6b317f918e
Rename base class names
2019-09-28 03:50:11 -04:00
topjohnwu
08b528dc4f
Reorganize classes
...
- Move base classes to its own package
- Move most logic out of MagiskActivity to MainActivity
2019-09-28 03:37:24 -04:00
topjohnwu
fc886a5a47
Merge Teanity into sources
2019-09-28 01:56:16 -04:00
topjohnwu
0cb90e2e55
Update BasePreferenceFragment
2019-09-27 19:54:03 -04:00
Viktor De Pasquale
578a50b464
Added hiding actions on notifications typed "Download"
2019-09-26 03:15:46 -04:00
Viktor De Pasquale
a5830599c4
Added initial load of styles and attributes
...
Required for creating basic screens
2019-09-24 20:29:35 +02:00
topjohnwu
debd1d7d54
Update canary channel links
2019-09-24 03:09:02 -04:00
topjohnwu
19906575a3
Update v7.3.4 changelogs
2019-09-19 05:29:45 -04:00
impulsiva
f383d11d10
Update TR strings
...
Fixed several typos and mistranslated strings.
2019-09-13 16:29:25 -04:00
topjohnwu
3f057367e3
Update dependencies
2019-09-12 12:50:44 -04:00
topjohnwu
0118f2efa7
Merge styles
2019-09-09 19:58:19 -04:00
topjohnwu
15312e4709
Remove unused resources
2019-09-09 17:57:25 -04:00
topjohnwu
bf1568a73a
Fix strings
2019-09-09 17:43:16 -04:00
Rom
9375748d9b
Update French translation
2019-09-09 17:38:22 -04:00
Gozzwip
201df54e79
new strings added
2019-09-09 17:37:41 -04:00
vvb2060
0b54fe477b
Update zh-rCN translation
2019-09-09 17:37:08 -04:00
Ilya Kushnir
4119e6669e
Update RU strings
2019-09-09 17:36:57 -04:00
Taras
d33e5226b3
Update Ukrainian translation
2019-09-09 17:36:39 -04:00
topjohnwu
d73f39c706
Fix manager update after hidden
...
Fix #1828
2019-09-09 17:24:29 -04:00
topjohnwu
86481c74ff
Allow user to select recovery mode
...
Close #1674
2019-09-08 00:44:26 -04:00
topjohnwu
5b937fb1fa
Random changes
2019-09-05 11:36:48 -04:00
topjohnwu
ff828116bc
Only cache magisk zips
2019-09-05 11:26:35 -04:00
topjohnwu
0cb449e1d6
We need to support pre-5.0 platforms
2019-09-03 16:28:27 -04:00
topjohnwu
e6adb7abca
Make kotlin version a variable globally
2019-09-03 16:27:57 -04:00
cristisilaghi
8d87eae11b
Update RO
2019-09-01 02:17:13 +08:00
topjohnwu
fba33cbbe9
Fix strings
2019-09-01 01:15:15 +08:00
Rom
5d17c1f588
French translation update
2019-09-01 01:11:54 +08:00
linar10
a75c00d94e
Update strings.xml
2019-09-01 01:11:40 +08:00
Albert I
cd19517414
app: l10n: Update Indonesian translations
...
* Update the wordings
* Delocalize "Core Only" strings
* Add 3 months worth of missing translations
Signed-off-by: Albert I <kras@raphielgang.org>
2019-09-01 01:11:33 +08:00
Gozzwip
155f39aab5
Some changes
2019-09-01 01:11:06 +08:00
Mevlüt TOPÇU
4514d0b467
Update Turkish language
...
Hi,
Merge please
Thanks.
2019-09-01 01:10:51 +08:00
zertyuiop
6f4a938a31
Added missing strings
2019-09-01 01:10:33 +08:00
VergeDX
1303ea95dd
Update & Fix Chinese Translate.
2019-09-01 01:10:19 +08:00
Oliver Cervera
727fe1bd15
Update Italian translation
...
Added new strings
2019-09-01 01:10:10 +08:00
topjohnwu
c859ddfb8f
Upgrade Kotlin
2019-08-27 02:30:10 +08:00
topjohnwu
a6126c5eda
Cosmetic changes
2019-08-23 03:05:41 +08:00
topjohnwu
85d9bd9106
Fix compile errors
2019-08-23 00:30:21 +08:00
Viktor De Pasquale
39e9622205
Fixed magisk version
...
Added refreshing versions before and after the request to remote
2019-08-22 08:03:17 +02:00
topjohnwu
2e7ce2a769
Update gradle files
2019-08-21 10:38:09 +08:00
topjohnwu
84f0ff2fad
Fix manager package name database management
2019-08-12 03:31:59 -07:00
topjohnwu
e6561e5f84
Fix XML parsing Kotlin error
2019-08-12 03:14:51 -07:00
topjohnwu
5fa452aa74
Multiple minor changes
2019-08-12 01:54:33 -07:00
topjohnwu
2225ccb146
Flush settings to persistent storage
2019-08-12 00:05:19 -07:00
topjohnwu
5aafc78847
Cleanup const
2019-08-11 23:53:43 -07:00
topjohnwu
0d03833cff
Name module zips with version code
2019-08-11 22:46:39 -07:00
topjohnwu
a797d5d396
Update snet extension
2019-08-08 04:18:32 -07:00
topjohnwu
f2494374f8
Eliminate any traces of Java in app
2019-08-08 00:59:23 -07:00
topjohnwu
48395ba860
Remove unused files
2019-08-08 00:29:27 -07:00
topjohnwu
5ba5f5f94e
Observe network connnectivity
...
Observe internet connectivity will ping google.com
2019-08-07 22:26:44 -07:00
topjohnwu
42ce6fd334
Workaround stupid Moshi proguard rules
2019-08-07 22:26:25 -07:00
Viktor De Pasquale
f5c3ee3ae1
Added elements of UI to "hide list"
2019-08-07 03:07:18 -07:00
Viktor De Pasquale
3c7ece1605
Fixed not showing current version
...
Current version was not displaying under circumstances that involve loss of connection. Versions are displayed whether the device is connected or not.
2019-08-07 03:07:18 -07:00
Viktor De Pasquale
870efc49ea
Fixed using mapping function incorrectly
2019-08-07 03:07:18 -07:00
Viktor De Pasquale
085ede6d93
Added simple ui blocks for whenever connection drops out
2019-08-07 03:07:18 -07:00
Viktor De Pasquale
4ef19d17da
Added a flag for connection status
...
Reactively updated flag which only checks whether the "data" / "wifi" / "ethernet" is plugged in or enabled. If the user connects to the wifi but has no actual connection, the app will never know.
Please refrain from using other access methods (like pinging a host), it can get picked up by a VPN or other methods and possibly expose MM.
2019-08-07 03:07:18 -07:00
topjohnwu
223913c30a
Remove unnecessary App usage
2019-08-05 00:21:38 -07:00
topjohnwu
010e4de4e1
Introduce DynamicClassLoader
2019-08-04 23:49:09 -07:00
topjohnwu
41134466ed
Upgrade dependencies
2019-08-04 18:33:20 -07:00
topjohnwu
8f07747452
Remove net module
2019-08-04 18:33:20 -07:00
topjohnwu
eb5ce5be1e
Fix saving logs
...
Fix #1722
2019-08-04 14:17:01 -07:00
topjohnwu
71d855e836
Cleanup more code
2019-08-04 13:47:14 -07:00
topjohnwu
33b7ab593c
Migrate PatchAPK to Kotlin
2019-08-04 13:00:27 -07:00
topjohnwu
7cfab33ebb
Make sure DownloadService always start with app context
2019-08-02 01:21:22 -07:00
topjohnwu
1ababc8c7f
RepoDB does not need to run on main thread
2019-08-02 01:20:16 -07:00
topjohnwu
1f75e63c37
Fix crashes in MarkdownWindow
...
Fix #1628
2019-08-02 01:16:04 -07:00
topjohnwu
cb3f9b9740
More tweaking to Rx pipeline
2019-08-01 23:08:58 -07:00
topjohnwu
9784353223
Fix ActivityTracker
...
Koin does not support nullable types
2019-07-29 04:18:05 -07:00
topjohnwu
7d93ca5c73
Modernize MagiskInstaller
2019-07-29 04:05:54 -07:00
topjohnwu
ac20063e86
Disable cache for Magisk Manager
2019-07-29 03:56:35 -07:00
topjohnwu
debaec32af
Remove old download progress update system
2019-07-29 00:42:53 -07:00
topjohnwu
0e9b71e7a9
Show notification on error
2019-07-29 00:37:01 -07:00
topjohnwu
85f5ff3c14
Download Magisk Manager via new service
2019-07-29 00:26:18 -07:00
Taras
fb70a2e52d
Update Ukrainian translation
2019-07-28 15:32:01 -07:00
JoanVC100
460e85a1b5
New lines added and fixs
2019-07-28 15:31:49 -07:00
cheese1
539b64bd57
update german language-file
2019-07-28 15:31:24 -07:00
linar10
90e38a06a2
Update strings.xml
2019-07-28 15:31:03 -07:00
zertyuiop
09ab910630
Added missing strings
2019-07-28 15:30:54 -07:00
topjohnwu
c15f80b33f
Improve Rx pipeline
2019-07-28 14:49:06 -07:00
topjohnwu
b2e6ba3c4a
Move no thanks from dialogs
2019-07-28 03:54:46 -07:00
topjohnwu
b16f696b0e
Cleanups
2019-07-28 03:47:07 -07:00
topjohnwu
9adfb382e8
Only launch FlashActivity if app is foreground
2019-07-28 03:38:27 -07:00
topjohnwu
44368383f4
Fix fetching repo ordering
2019-07-28 02:21:55 -07:00
topjohnwu
d1ff7e0ffe
Move extensions to its own package
2019-07-28 02:10:22 -07:00
topjohnwu
42e7db8d13
Modernize Repo class for Magisk modules
...
- Use Kotlin
- Use Room database
- Use retrofit for networking
- Use RxJava pipeline for repo updating
2019-07-28 01:54:34 -07:00
topjohnwu
0c17ea5755
Migrate Magisk Modules to Kotlin
2019-07-27 15:46:44 -07:00
topjohnwu
cdaff5b39c
Update module download pipeline
2019-07-26 02:26:02 -07:00
topjohnwu
2b1b970e78
Update dependencies
2019-07-26 02:00:42 -07:00
topjohnwu
0aebc0a8e3
Use new service to download uninstall.zip
2019-07-25 03:10:24 -07:00
topjohnwu
c3a89f589e
Download to proper filename
2019-07-25 01:54:42 -07:00
topjohnwu
971cd73fb3
Dismiss notification on error
2019-07-25 01:37:47 -07:00
topjohnwu
1947860d61
Dismiss notification after flashing
2019-07-25 01:05:06 -07:00
topjohnwu
55aaa421e8
Directly download to target location
2019-07-23 01:31:59 -07:00
topjohnwu
a8932706d8
Consolidate Magisk download subject
2019-07-23 00:55:12 -07:00
topjohnwu
a97972aac0
Update notification once per second
2019-07-23 00:33:28 -07:00
topjohnwu
094c3d559a
Minor fixes and cleanups
2019-07-22 01:49:21 -07:00
topjohnwu
6fb032b3c2
Clean ups
2019-07-20 22:37:34 -07:00
topjohnwu
8ca188f4d4
Stream and process module zips
2019-07-20 21:04:06 -07:00
topjohnwu
746a1d8d59
Directly download to magisk.zip for flashing
2019-07-20 14:57:03 -07:00
Viktor De Pasquale
9d2e5d6665
Updated design for custom channel field so it matches the other dialog
2019-07-20 14:57:03 -07:00
Viktor De Pasquale
f6045bf8b5
Added custom dialog for download location only
2019-07-20 14:57:03 -07:00
Viktor De Pasquale
e83f40d5c5
Added actions for opening files in the file browser
...
No icons are added at this time, so crashes might occur
2019-07-20 14:57:03 -07:00
Viktor De Pasquale
e5118418b2
Added option to have custom download location
...
The location is automatically added to list of supported paths for caching
2019-07-20 14:57:03 -07:00
Viktor De Pasquale
7cd814d917
Updated service to use extra transformer so the service itself is not plagued by unnecessary code
2019-07-20 14:57:03 -07:00
Viktor De Pasquale
78282c1a49
Removed unused entry
2019-07-20 14:57:03 -07:00
Viktor De Pasquale
fd4214ccf3
Fixed minor bugs regarding notification cancellation
2019-07-20 14:57:03 -07:00
Viktor De Pasquale
0785945635
Added appending installers to modules
2019-07-20 14:57:03 -07:00
Viktor De Pasquale
967bdeae7b
Updated service architecture and extracted useful tools to separate class
2019-07-20 14:57:03 -07:00
Viktor De Pasquale
452db51669
Updated flash location so it's one layer deeper preventing accidental cache deletion
2019-07-20 14:57:03 -07:00
Viktor De Pasquale
5875ced367
Fixed launching activities on newer systems
2019-07-20 14:57:03 -07:00
Viktor De Pasquale
fbac6bcfd0
Fixed substrate handling multiple downloads at once
2019-07-20 14:57:03 -07:00
Viktor De Pasquale
0dcd3ece9d
Updated downloading modules
2019-07-20 14:57:03 -07:00
Viktor De Pasquale
224fff89e3
Updated object usage for module subjects
2019-07-20 14:57:03 -07:00
Viktor De Pasquale
22e73644f9
Added option to run service in foreground right away
2019-07-20 14:57:03 -07:00
Viktor De Pasquale
6a0f6ab319
Updated magisk installer so it uses predownloaded file
2019-07-20 14:57:03 -07:00
Viktor De Pasquale
88a394836f
Replaced all install methods with the download service
2019-07-20 14:57:03 -07:00
Viktor De Pasquale
f822c1c2e4
Added default to flash configuration
2019-07-20 14:57:03 -07:00
Viktor De Pasquale
1d16d980b3
Added second slot flashing capability
2019-07-20 14:57:03 -07:00
Viktor De Pasquale
501b18f986
Added default value to magisk subject
2019-07-20 14:57:03 -07:00
Viktor De Pasquale
21ed759e53
Removed duplicate helper
2019-07-20 14:57:03 -07:00
Viktor De Pasquale
8d50dfd93c
Fixed overwriting file in download mode
...
Added prevention of copying itself to itself
2019-07-20 14:57:03 -07:00
Viktor De Pasquale
51e40dd98c
Fixed crashes caused by file exposure beyond app bounds
2019-07-20 14:57:03 -07:00
Viktor De Pasquale
b2048379af
Fixed uris so in case there's no additional the data one (with zips) is selected instead
2019-07-20 14:57:03 -07:00
Viktor De Pasquale
011539f6f1
Added permission requirements for using service
2019-07-20 14:57:03 -07:00
Viktor De Pasquale
5457c3803f
Added remaining methods of installation/flashing/uninstall to service
...
Updated parameters of patching step and fixed new ordered flashing format
2019-07-20 14:57:03 -07:00
Viktor De Pasquale
b3d777bb6c
Updated configuration to hold data when necessary
2019-07-20 14:57:03 -07:00
Viktor De Pasquale
12e00c3054
Updated method naming scheme
...
Added new configurations
Added flashing methods and annotated viewModel's uri as deprecated in function
2019-07-20 14:57:03 -07:00
Viktor De Pasquale
40b683111c
Added an option to disable the new caching mechanism completely
2019-07-20 14:57:03 -07:00
Viktor De Pasquale
9542ca773f
Added new CompoundDownloadService which will encapsulate all downloads and should manage post-download events as well
...
As of now it's still in a development stage and isn't connected to anything
2019-07-20 14:57:03 -07:00
Viktor De Pasquale
8af832a496
Added several calls to FlashActivity so it manages its launch parameters by itself
...
Its reach will be deepened further in the future commits
2019-07-20 14:57:03 -07:00
Viktor De Pasquale
6836130fda
Added overloaded method call for progress notification so it accepts foreign context
2019-07-20 14:57:03 -07:00
Viktor De Pasquale
724893879f
Added option to intercept progress while copying files
2019-07-20 14:57:03 -07:00
Gozzwip
d64d12afe8
Some fixes
2019-07-16 01:20:10 -07:00
Viktor De Pasquale
188ea2644a
Updated downloading magisk to pull the zip from cache if eligible
2019-07-08 11:40:02 -07:00
Marius
4bb2fd6ba6
Fix typos in german translation
2019-07-07 12:40:20 -07:00
Rom
19a521d2e9
French translation update
2019-06-27 18:59:29 -04:00
cristisilaghi
dd6e55ac31
[ro] Add translators
2019-06-27 04:10:51 -04:00
osm0sis
b1e63f0f14
Manager: fix ModulesFragment reboot menu
...
- correct 'booloader' typo breaking bootloader entry
- remove extra bootloader entry Shell.su line which is unnecessary since it's covered by reboot()
- revert to using `reboot recovery` for recovery entry since `svc power reboot recovery` triggers a very disconcerting "Factory data reset" reboot dialog on many devices
- add Reboot to EDL mode option for good measure
2019-06-27 04:09:41 -04:00
topjohnwu
120bd6cd68
v7.3.2 Changelog
2019-06-21 01:12:50 -07:00
JoanVC100
9aef06d1b8
Fix traductors
2019-06-21 04:00:54 -04:00
Viktor De Pasquale
5dd677756f
Fixed multiple fetch tasks running at once
...
Disposing wouldn't help since the shell doesn't appear to handle concurrency well
2019-06-21 00:36:37 -07:00
Viktor De Pasquale
b77c590910
Fixed the searchView being collapsed after searching through it
...
Now they have their state synced with viewModel to allow continuity
2019-06-21 00:36:37 -07:00
Viktor De Pasquale
7e5f2822ae
Fix superuser fragment crashes
...
Fix superuser screen encountering inconsistencies when refreshing the data rapidly
2019-06-21 00:36:01 -07:00
topjohnwu
12bbc7fd6b
Update v7.3.1 changelog
2019-06-17 22:15:38 -07:00
topjohnwu
bf9ac8252b
Cleanup UpdateInfo
2019-06-16 16:47:30 -07:00
topjohnwu
4a3f5dc619
Cleanups
2019-06-16 14:35:51 -07:00
Viktor De Pasquale
ca156befbd
Fixed mapping generic pairs to policy crashing when no policy is found
...
The policy (app) is now deleted when found invalid (uninstalled)
2019-06-16 16:50:08 -04:00
Viktor De Pasquale
4db41e2ac4
Added attempted fix for parsing data off default thread
2019-06-16 16:50:08 -04:00
Viktor De Pasquale
982a43fce1
Moved diff computation of policy list to the background thread
2019-06-16 16:50:08 -04:00
Viktor De Pasquale
dd76a74e1c
Fixed fast scroll button crashing while scrolling to undefined position
2019-06-16 16:50:08 -04:00
Viktor De Pasquale
70cb52b2c7
Fixed fast scroll button being visible when log is empty
2019-06-16 16:50:08 -04:00
topjohnwu
4a697ca2ec
Add 7.3.0 changelog
2019-06-14 22:39:31 -07:00
topjohnwu
58bec7f2c9
Update dependencies
2019-06-14 22:39:31 -07:00
Wenlin Shen
213f84985c
Update Chinese (Traditional) translate
...
Update wordings to improve readability.
2019-06-13 21:33:24 -07:00
Viktor De Pasquale
074b1f8c61
Added one-click scroll to the bottom
2019-06-12 16:08:02 +02:00
topjohnwu
326eee8c83
Migrate a lot of classes to Kotlin
2019-06-12 03:29:38 -07:00
topjohnwu
00bff4912e
Use svc for reboot if feasible
...
Close #1488
2019-06-12 00:55:21 -07:00
Viktor De Pasquale
0ce1720516
Fixed magisk log screen lines having multiple lines
2019-06-11 21:52:03 -07:00
topjohnwu
1d54c5144e
Fix background update checks
2019-06-10 21:25:42 -07:00
topjohnwu
e40d4318fa
Let Kotlin target Java 8
2019-06-10 21:22:07 -07:00
topjohnwu
7756e10779
Rewrite configs with Kotlin delagate properties
2019-06-10 04:37:56 -07:00
topjohnwu
3e58d502d0
Update SettingsFragment to Kotlin
2019-06-09 03:04:37 -07:00
topjohnwu
1c8846dc57
Make PreferenceModel an interface
2019-06-08 16:30:12 -07:00
topjohnwu
2f320c7239
Update ClassMap
2019-06-08 15:34:15 -07:00
topjohnwu
e799918ab6
Update update check service
2019-06-08 15:28:59 -07:00
topjohnwu
86c4928e0f
Fix locale settings
...
AppCompatActivity changed its impl again...
2019-06-08 02:11:10 -07:00
topjohnwu
0293eb5c51
Never refetch magisk version dynamically
2019-06-08 01:44:02 -07:00
topjohnwu
1ee75b6aa6
Download snet package without legacy impl
2019-06-08 01:39:22 -07:00
topjohnwu
4b30b224b5
Remove separate constant class
2019-06-08 00:41:03 -07:00
topjohnwu
16b232d2a3
Enable okhttp logging in debug only
2019-06-07 02:03:17 -07:00
topjohnwu
3f3b1f5b1d
Sort policy with app name
2019-06-07 01:24:54 -07:00
topjohnwu
cec017b7bf
More MagidkDB fixes
2019-06-07 01:05:54 -07:00
topjohnwu
3123cc1059
Update AndroidX dependencies
2019-06-07 00:27:07 -07:00
topjohnwu
caa9df86bc
Switch to R8 friendly room-runtime
2019-06-07 00:17:00 -07:00
topjohnwu
f417389a7a
Fix magisk database code in app
2019-06-06 00:39:24 -07:00
topjohnwu
662a5c8ea6
Upgrade Retrofit 2.6.0
2019-06-05 23:41:51 -07:00
Viktor De Pasquale
d1dfda405f
Removed Kotpref and replaced it with PreferenceModel
2019-06-04 00:59:57 -07:00
Emanuel Hajnzic
28efded624
Update and cleanup for german strings.xml
2019-06-03 23:37:57 -07:00
topjohnwu
80d834fb55
Use kotshi instead of moshi-kotlin-codegen
2019-06-01 13:18:11 -07:00
topjohnwu
4122ebe18f
Remove unused Room database code
2019-06-01 02:20:40 -07:00
topjohnwu
7d87777bf8
Improve proguard rules
2019-06-01 01:13:29 -07:00
topjohnwu
4a73d634e0
Tidy things up
2019-05-31 21:46:59 -07:00
topjohnwu
373dc10a40
Use moshi code-gen
2019-05-31 21:46:42 -07:00
Ian Macdonald
ed43ec8ea2
Populate Config variables based on update channel parameters.
...
With thanks to @diareuse.
2019-05-31 20:48:21 -07:00
topjohnwu
c0d1ce96d1
Cleanup
2019-05-30 01:05:48 -07:00
topjohnwu
b31d3802eb
Properly force refresh
2019-05-29 23:45:18 -07:00
Viktor De Pasquale
be1228c3b4
Reverted removing UpdateRepos temporarily
2019-05-29 18:40:16 +02:00
Viktor De Pasquale
15c94c6b34
Merge remote-tracking branch 'john/master' into development
...
# Conflicts:
# build.gradle
2019-05-29 18:28:50 +02:00
Viktor De Pasquale
202d23426a
Fixed update cards having their text resized
2019-05-29 16:35:02 +02:00
Viktor De Pasquale
fc26de48b2
Removed hiding advanced settings when no root is detected
...
This change was made in order to allow proper adjustment of boot image
2019-05-29 16:28:33 +02:00
Vladimír Kubala
73bb850209
Update Slovak translation
2019-05-27 15:04:30 -07:00
Gozzwip
8dfec12330
Some fixes
...
There is a missing string which I couldn't find in this file but in app it appears when you install a module, please check.
2019-05-27 15:04:12 -07:00
Viktor De Pasquale
f392afe87f
Added error message in case Markdown window fails to load
2019-05-25 19:20:36 +02:00
Viktor De Pasquale
6a243ec7bc
Fixed inconsistent displaying of repos and improved their sorting
2019-05-25 18:09:45 +02:00
Viktor De Pasquale
8cd3b603df
Fixed cached repos not being ordered by settings
2019-05-25 18:03:32 +02:00
Viktor De Pasquale
6e1aefe6d8
Added feature that prevents repositories from being downloaded every single time that user requests to show Module/Download fragment unless requested by user
2019-05-25 16:42:34 +02:00
Viktor De Pasquale
1c90b6eca3
Fixed notification popping up every time update is scheduled
2019-05-25 16:33:55 +02:00
Viktor De Pasquale
c33cf9f878
Fixed stable channel asking for custom URL when previously selected
2019-05-25 16:15:08 +02:00
Viktor De Pasquale
27cb40eec9
Removed test options from proguard
2019-05-24 16:02:47 +02:00
Viktor De Pasquale
c06081b75d
Added more proguard restrictions and rules for kotlin and moshi
2019-05-24 15:54:08 +02:00
Viktor De Pasquale
a7eec2f0a0
Fixed initial crashes occurring due to improperly obfuscated constructors and inner fields
2019-05-24 15:53:08 +02:00
Viktor De Pasquale
4fd0fe3194
Fixed repo not being correctly marked as jsonclass hence it crashed when fetching obfuscated
2019-05-24 15:51:18 +02:00
Viktor De Pasquale
cc74593ddd
Removed useless constructor parameter from home vm
2019-05-24 15:50:20 +02:00
Viktor De Pasquale
fdb7c5dba1
Added Timber as marked for stripping
2019-05-24 15:49:11 +02:00
Viktor De Pasquale
77470c7cfa
Updated koin
2019-05-24 12:28:57 +02:00
Viktor De Pasquale
f0a734fdab
Fixed clearing cache crashing due to operations on main thread
2019-05-24 12:28:40 +02:00
Viktor De Pasquale
076e5cea3b
Fixed selection not persisting throughout root requests
2019-05-23 20:01:47 +02:00
Viktor De Pasquale
8515971ccf
Fixed deleting "one-time" root requests whilst removing outdated
2019-05-23 19:18:16 +02:00
Viktor De Pasquale
d86fb033ea
Fixed conditions being inaccurately represented
2019-05-23 19:17:41 +02:00
Viktor De Pasquale
99d7d8ddbc
Fixed background being transparent for su request
2019-05-23 18:32:51 +02:00
Viktor De Pasquale
df78fd2d41
Fixed setting custom channels and switching between official ones being broken
2019-05-23 18:11:23 +02:00
Viktor De Pasquale
dabe6267b9
Fixed error that prevented flashing
2019-05-23 16:50:31 +02:00
Viktor De Pasquale
0119ebddbe
Added back clearing repository cache
2019-05-23 15:28:05 +02:00
Viktor De Pasquale
ea1f75f80e
Merge remote-tracking branch 'john/master' into development
2019-05-20 15:10:54 +02:00
topjohnwu
c595a87ccf
Update Magisk Manager changelog
2019-05-20 01:05:27 -07:00
topjohnwu
c63fdbbc6b
Add traditional Chinese translations
2019-05-19 17:39:05 -07:00
zertyuiop
ed43452c1a
Added missing strings
2019-05-19 13:50:08 -07:00
Oliver Cervera
8f28d4028f
Update Italian structure
2019-05-19 13:49:51 -07:00
Cristian Silaghi
b54543b18c
Update RO language
2019-05-19 13:49:25 -07:00
topjohnwu
966d6593ca
Fix strings
2019-05-13 23:21:01 -07:00
JoanVC100
ad95b1c9d1
Addition, reorganisation and fixing Catalan strings
2019-05-13 23:13:48 -07:00
Ingan121
3bfa38c60a
Update strings.xml
2019-05-13 23:13:34 -07:00
Viktor De Pasquale
80855e89ec
Merge remote-tracking branch 'john/master' into development
...
# Conflicts:
# app/build.gradle
# app/src/main/java/com/topjohnwu/magisk/model/receiver/GeneralReceiver.kt
# app/src/main/java/com/topjohnwu/magisk/ui/hide/HideViewModel.kt
# app/src/main/java/com/topjohnwu/magisk/ui/home/HomeViewModel.kt
2019-05-13 16:50:08 +02:00
Viktor De Pasquale
0850401dc4
Fixed crash where new application asks for root access
2019-05-13 15:56:27 +02:00
Viktor De Pasquale
337fda2023
Removed unnecessary classes
2019-05-13 15:41:46 +02:00
Viktor De Pasquale
64f238191e
Converted constants to kotlin
2019-05-13 15:39:33 +02:00
Viktor De Pasquale
eb169cb133
Converted classmap to kotlin
2019-05-13 15:34:53 +02:00
topjohnwu
80cd85b061
Try to use broadcast for su logging and notify
...
In commit 8d4c407, native Magisk always launches an activity for
communicating with Magisk Manager. While this works extremely well,
since it also workaround stupid OEMs that blocks broadcasts, it has a
problem: launching an activity will claim the focus of the device,
which could be super annoying in some circumstances.
This commit adds a new feature to run a broadcast test on boot complete.
If Magisk Manager successfully receives the broadcast, it will toggle
a setting in magiskd so all future su loggings and notifies will always
use broadcasts instead of launching activities.
Fix #1412
2019-05-13 02:01:10 -07:00
topjohnwu
e7339ba619
We don't need BouncyCastle provider on Android
2019-05-12 16:06:22 -07:00
topjohnwu
d9ad7d522c
Update dependencies
2019-05-12 13:42:53 -07:00
Viktor De Pasquale
92789c3113
Added caching repositories to device
2019-05-12 20:21:55 +02:00
Viktor De Pasquale
c1c677e161
Removed old database helper
2019-05-12 19:45:07 +02:00
Viktor De Pasquale
2fe917ff82
Fixed updating values with sql
2019-05-12 19:42:05 +02:00
Viktor De Pasquale
0e6c205732
Fixed snackbar for changed su states being incorrect
2019-05-12 18:56:42 +02:00
Viktor De Pasquale
125ae0a173
Fixed conditions in sql queries
2019-05-12 18:34:28 +02:00
Viktor De Pasquale
0245e13591
Removed usage of old database object
2019-05-12 18:00:58 +02:00
Viktor De Pasquale
d546733287
Removed direct static usages of database from app
2019-05-12 17:25:26 +02:00
Viktor De Pasquale
c275326d59
Removed direct static usages of database from app
2019-05-12 16:56:56 +02:00
Viktor De Pasquale
d4561507b8
Raised deprecation level on old database
2019-05-12 14:37:24 +02:00
topjohnwu
ef0e22cc41
Slightly update scripts
2019-05-11 02:29:13 -07:00
topjohnwu
62db65bf18
Reset SafetyNet status on refresh
2019-05-11 01:55:44 -07:00
topjohnwu
d5371f752c
Sort hide targets by app name
2019-05-11 01:53:37 -07:00
topjohnwu
a5f5e94115
Always reload string from resource
2019-05-11 01:50:01 -07:00
Viktor De Pasquale
2624706c69
Added missing repositories
2019-05-10 19:13:15 +02:00
Viktor De Pasquale
d39d885ec2
Removed repo db helper
2019-05-10 18:21:07 +02:00
Viktor De Pasquale
d83c744725
Replaced base settings fragment by its kotlin counterpart
2019-05-10 17:54:24 +02:00
Viktor De Pasquale
843995cdb9
Removed Event for good
...
http://bit.ly/2Ymrm61
2019-05-10 17:34:53 +02:00
Viktor De Pasquale
9491ba77e0
Removed locale manager loading languages in advance
...
Instead they are loaded on demand
2019-05-10 17:30:25 +02:00
Viktor De Pasquale
58a449d437
Merge branch 'remote-master' into development
...
# Conflicts:
# app/src/main/java/com/topjohnwu/magisk/di/ViewModelsModule.kt
# app/src/main/java/com/topjohnwu/magisk/ui/home/HomeViewModel.kt
# app/src/main/java/com/topjohnwu/magisk/utils/XString.kt
2019-05-10 16:43:37 +02:00
Viktor De Pasquale
7f55e0f05b
Fixed picking up wrong locale for dates
2019-05-10 16:41:31 +02:00
Viktor De Pasquale
67c3f40adb
Fixed language won't change in certain views unless app restarts
2019-05-10 16:22:03 +02:00
topjohnwu
ff7a0ba599
Force apply preferred locale in applyOverrideConfiguration
...
Close #1442
2019-05-10 00:19:28 -07:00
osm0sis
ac28e6e5ca
Fix uninstaller missing recent changes
...
- group unsupported formats into the same code (86f778c0aa (diff-93690a8d9f50c177ef97416af3be8726)
)
- support A only system-as-root devices (e72c6685ed (diff-93690a8d9f50c177ef97416af3be8726)
)
- remove unnecessary '--' from magiskboot actions (7f08c06943 (diff-93690a8d9f50c177ef97416af3be8726)
)
- get_flags need to be before find_boot_image (a4f5d47e72
)
closes #1371 , closes #1431 , closes #1439
2019-05-09 20:28:48 -07:00
Viktor De Pasquale
4f9e8d2e8a
Merge remote-tracking branch 'john/master' into development
2019-05-09 18:23:05 +02:00
Viktor De Pasquale
21be2f46f3
Moved fetch/toggle logic for hiding to repo
...
Fixed sorting
2019-05-09 18:21:38 +02:00
Viktor De Pasquale
a6e7680212
Fixed logs being bugged down by unreliable code
2019-05-09 17:38:13 +02:00
Viktor De Pasquale
e79e744e08
Fixed magisk db not returning stuff due to bad syntax
2019-05-09 17:13:02 +02:00
Viktor De Pasquale
7abdac72a4
Replaced log calls from magiskdb to repo
2019-05-09 17:01:34 +02:00
Viktor De Pasquale
90d85eaf7d
Removed update repos as it can be done via repository
2019-05-09 15:56:06 +02:00
Viktor De Pasquale
7538f89b56
Removed unnecessary calls from splash
2019-05-07 15:45:27 +02:00
Viktor De Pasquale
7c755a3991
Removed events from modules / replaced with retrofit/rx
2019-05-07 15:41:56 +02:00
Viktor De Pasquale
10e903c9fc
Added direct fetch from network and fixed build issues
2019-05-06 20:12:31 +02:00
Viktor De Pasquale
b018124226
Added (ported back) features from initial design [retrofit,moshi,kotpref]
...
Marked most of the old classes using Networking as deprecated to clearly visualise their future removal
2019-05-06 19:03:28 +02:00
dark-basic
a9350f50c9
Update strings.xml
...
New Lines Added.
2019-05-05 12:28:57 -07:00
Andrea Cioccarelli
ed7babcbf1
Translation fixes
2019-05-05 12:24:37 -07:00
Viktor De Pasquale
0167bd76f1
Removed unnecessary overriding of observable list and replaced it copy function within observable changed callback
2019-05-05 11:33:17 -07:00
Viktor De Pasquale
79d704008b
Fixed rewritten java code being java-styled in kotlin
...
Fixed accessing kotlin code illegally via companion helper
2019-05-05 11:33:17 -07:00
Viktor De Pasquale
0a703585b0
Fixed items in navView not being checked
2019-05-05 11:33:17 -07:00
Viktor De Pasquale
5d632d0d90
Removed unnecessary overriding of observable list and replaced it copy function within observable changed callback
2019-05-05 12:46:28 +02:00
Viktor De Pasquale
4eecaea601
Fixed rewritten java code being java-styled in kotlin
...
Fixed accessing kotlin code illegally via companion helper
2019-05-05 12:17:32 +02:00
Viktor De Pasquale
63055818ec
Fixed items in navView not being checked
2019-05-05 11:50:27 +02:00
topjohnwu
b27801a27c
Remove unused dependencies
2019-05-04 17:56:02 -07:00
topjohnwu
a0cfce7cbc
Rewrite FlashZip in Kotlin
2019-05-03 04:42:57 -04:00
topjohnwu
8b7144c986
Rewrite ZipUtils in Kotlin
2019-05-03 04:10:27 -04:00
topjohnwu
d3f5f5ee59
Rewrite RootUtils in Kotlin
2019-05-03 03:36:39 -04:00
topjohnwu
a2a3c7f438
Collect both STDOUT and STDERR for logs
2019-05-03 02:05:51 -04:00
Viktor De Pasquale
4496f82d5b
Added scrolling to latest items while flashing
...
Since the adapter might be set _after_ the request, as there is no guaranteed order, it's done with waiting recursion yuck
2019-05-03 00:50:46 -04:00
Viktor De Pasquale
09d531557d
Fixed requesting permissions off main thread
2019-05-03 00:50:46 -04:00
Viktor De Pasquale
7fee82f731
Fixed shell long dumping to UI
2019-05-03 00:50:46 -04:00
Viktor De Pasquale
475054c48a
Fixed backpress not working
2019-05-03 00:50:46 -04:00