Commit Graph

1666 Commits

Author SHA1 Message Date
vvb2060
fb93af665d Remove obsolete SDK_INT check 2021-04-23 16:56:23 -07:00
topjohnwu
fb8000b58b Handle invalid SafetyNet results
Fix #4253
2021-04-20 03:39:47 -07:00
topjohnwu
1b9d8e068a Remove/move unused files 2021-04-18 05:04:14 -07:00
topjohnwu
038f73a5f7 Remove Koin
Non static DI is bad
2021-04-18 04:46:11 -07:00
topjohnwu
649b49ff45 Don't hold resources in Settings objects 2021-04-18 04:14:43 -07:00
topjohnwu
1418bc454d Don't hold resources in ViewModels 2021-04-18 02:12:53 -07:00
vvb2060
69b00d3782 Update dependencies
Jcenter will sunset
2021-04-17 23:44:19 -07:00
topjohnwu
a328e2bf3c Hide annoying stack traces when hidden 2021-04-17 22:35:36 -07:00
topjohnwu
7e01f9c95e Minor changes 2021-04-17 19:57:47 -07:00
topjohnwu
94ec11db58 Update snet.jar extension
The existing API key was revoked for some reason.
Release an updated extension jar with a new API key.

In addition, add some offline signature verification and change how
results are parsed to workaround some dumbass Xposed module "faking"
success results, since many users really don't know better.
2021-04-15 04:47:57 -07:00
topjohnwu
1f0a35f073 Set minSdkVersion to 21 2021-04-09 20:01:32 -07:00
Wang Han
f6e4a27fdd Don't export $API when initializing shell
* This becomes meanless after 9c0e189.
2021-04-09 01:47:52 -07:00
topjohnwu
257ceb99f7 SDK < 21 is EOL 2021-04-09 01:40:08 -07:00
topjohnwu
706d53065b Rename TransitiveText 2021-04-09 01:32:37 -07:00
topjohnwu
0f95a7babe Do not hold resources in SuperuserViewModel 2021-04-09 01:00:26 -07:00
vvb2060
d11358671e Fix isolated process display 2021-03-24 04:43:45 -07:00
vvb2060
6865652125 Fix process name in MagiskHide
close #3997
2021-03-24 04:43:45 -07:00
topjohnwu
ed4d0867e8 Make sure navigation happens on main thread
Fix #4044
2021-03-24 03:23:11 -07:00
osm0sis
4dd3f55407 App: add versionCode to magisk_patched.img filenames 2021-03-24 03:06:57 -07:00
osm0sis
0a4e7eea41 scripts: clean up remaining Manager references 2021-03-24 03:06:57 -07:00
topjohnwu
f152b4c26e Make LiveData nullable 2021-03-16 05:34:54 -07:00
topjohnwu
bd935b0553 Cleanup fragment navigations 2021-03-16 04:58:02 -07:00
vvb2060
bc51ce7c7b Fix reboot menu 2021-03-07 01:55:19 -08:00
topjohnwu
15e27e54fb Migrate to new endpoints 2021-03-05 05:09:25 -08:00
vvb2060
5e56a6bbee Fix isolated process name before Android 10 2021-02-26 21:36:58 -08:00
vvb2060
d05408c89f Delete outdated policies when refresh 2021-02-25 20:08:42 -08:00
vvb2060
ee0ec3fbfa Use UID_REMOVED action for multi-user and shared user id compatibility 2021-02-25 20:08:42 -08:00
vvb2060
122a73e086 Always show hidden apps 2021-02-25 20:08:42 -08:00
topjohnwu
60f3d62f00 Proper synchronization 2021-02-24 02:50:55 -08:00
vvb2060
8b2ab778c9 Fix show canary channel on stable build 2021-02-24 02:06:20 -08:00
topjohnwu
803982a271 Prevent multiple installation sessions running in parallel 2021-02-24 01:45:10 -08:00
topjohnwu
a1096b5bf0 Do not run pm install on main thread 2021-02-23 04:09:13 -08:00
topjohnwu
8c7bd77d33 Do not wrap twice 2021-02-23 01:49:15 -08:00
Shaka Huang
ba1ce16b8b Fix error in pure 64-bit environment
In Android S preview, there’s no 32-bit libraries in x86_64 system image for emulator.

Signed-off-by: Shaka Huang <shakalaca@gmail.com>
2021-02-22 03:28:54 -08:00
topjohnwu
68090943f4 Several changes
- Change error message strings
- Move non-root stub error to SplashActivity
- Skip shell init in non-root stub
2021-02-22 03:28:19 -08:00
vvb2060
a4fb1297b0 Fix crash in pure 64-bit devices 2021-02-22 03:08:51 -08:00
vvb2060
860a05abf2 Simplify UpdateChannel 2021-02-22 03:08:51 -08:00
vvb2060
8bb2f356c0 Allow offline restore app 2021-02-22 03:08:51 -08:00
vvb2060
4950020635 Prevent dot in the first position again 2021-02-22 03:08:51 -08:00
vvb2060
0a6140c6eb Try install with root first 2021-02-22 03:08:51 -08:00
vvb2060
bba2ac8817 Add unsupport env check 2021-02-22 03:08:51 -08:00
topjohnwu
331b1f542f Use standard Android APIs for install and launch 2021-02-20 20:12:35 -08:00
topjohnwu
ccb55205e6 Fix pre 21 support 2021-02-20 03:38:39 -08:00
topjohnwu
8476eb9f4b Avoid patching vendor_boot.img 2021-02-13 17:15:04 -08:00
topjohnwu
f88e812b63 Move behavior to XML 2021-02-13 15:26:32 -08:00
vvb2060
00659e4795
Hide OTA option on virtual A/B devices 2021-02-12 00:07:15 -08:00
topjohnwu
63590d379c Update hide icon strategy 2021-02-11 22:38:41 -08:00
topjohnwu
5f63e88984 Hide icons when things don't fit 2021-02-11 05:08:40 -08:00
topjohnwu
75584e2b19 App string resources overhaul 2021-02-11 02:34:27 -08:00
vvb2060
1426ee2ebd Fix Android build version sdk in script 2021-02-10 22:22:50 -08:00
topjohnwu
e7350d5041 Fix unable to patch images when app is hidden 2021-02-07 06:42:06 -08:00
topjohnwu
f37e8f4ca8 Fix boot image patching 2021-02-07 01:54:08 -08:00
topjohnwu
594c2accc0 Update dependencies 2021-02-05 04:41:01 -08:00
topjohnwu
2089223690 Fix #3785 2021-01-30 11:51:15 -08:00
topjohnwu
52e1b84d41 Symlink pre API 21 2021-01-30 01:12:49 -08:00
topjohnwu
f6126dd20e Support Shortcuts pre API 26
Close #3778
2021-01-29 23:16:09 -08:00
topjohnwu
bec5edca84 Avoiding using shell I/O 2021-01-29 05:15:22 -08:00
topjohnwu
eaf4d8064b Also download to external storage 2021-01-27 04:09:07 -08:00
topjohnwu
2a5f5b1bba Workaround zip extraction bug on older devices 2021-01-27 03:00:09 -08:00
topjohnwu
1024e68eb6 Remove class mapping in full APK 2021-01-26 07:27:35 -08:00
topjohnwu
6ae2c9387d Use stub APK hiding method for Android 5.0+
At the same time, disable app hiding on devices lower than 5.0
to simplify the logic in the app. By doing so, a hidden app always
implies running as stub.
2021-01-26 07:27:35 -08:00
topjohnwu
dc61dfbde6 Cache update check results 2021-01-25 04:13:08 -08:00
topjohnwu
21466426da Some code cleanup 2021-01-25 03:44:38 -08:00
topjohnwu
3f0136362b Move nand flash handling into boot_patch.sh 2021-01-25 03:37:41 -08:00
topjohnwu
e92d77bbec Some optimizations 2021-01-25 03:02:43 -08:00
topjohnwu
07bd36c94b Fix patching files
Fix #3765
2021-01-25 02:24:12 -08:00
vvb2060
4cc41eccb3 Skip download notes when loading notes url 2021-01-24 21:02:51 -08:00
vvb2060
8f08ae59ac Fix permission 2021-01-24 21:02:43 -08:00
vvb2060
e8d4e492d6 Fix CHANGELOG_URL 2021-01-24 21:02:37 -08:00
topjohnwu
c609a01e55 Proper shortcut name 2021-01-24 08:00:17 -08:00
topjohnwu
6951d926f7 Rename app name to just Magisk 2021-01-24 07:35:00 -08:00
vvb2060
8618cc383a Fix install modules
Fix #3759
2021-01-24 07:03:19 -08:00
topjohnwu
657056e636 Cache changelog files 2021-01-24 06:55:43 -08:00
topjohnwu
9d5efea66e Remove ManagerJson
Everything is now Magisk
2021-01-24 05:14:46 -08:00
topjohnwu
658d74e026 Update home fragment 2021-01-24 00:02:49 -08:00
vvb2060
96405c26d0 writeTo has closed InputStream 2021-01-23 18:12:19 -08:00
vvb2060
dbd13a2019 Clean code 2021-01-23 18:10:26 -08:00
vvb2060
e57556a8af Use ro.kernel.qemu to check emulator 2021-01-23 18:05:38 -08:00
vvb2060
b54b78c29d Fix prevent dot in the first position 2021-01-23 17:31:18 -08:00
topjohnwu
1060dd2906 Random refactoring 2021-01-23 13:26:28 -08:00
topjohnwu
5798536559 Remove unnecessary hacks 2021-01-22 20:25:37 -08:00
topjohnwu
c87fdbea0f Fix erroneous stream close 2021-01-22 03:07:39 -08:00
topjohnwu
ec8fffe61c Merge Magisk install zip into Magisk Manager
Distribute Magisk directly with Magisk Manager APK. The APK will
contain all required binaries and scripts for installation and
uninstallation. App versions will now align with Magisk releases.

Extra effort is spent to make the APK itself also a flashable zip that
can be used in custom recoveries, so those still prefer to install
Magisk with recoveries will not be affected with this change.

As a bonus, this makes the whole installation and uninstallation
process 100% offline. The existing Magisk Manager was not really
functional without an Internet connection, as the installation process
was highly tied to zips hosted on the server.

An additional bonus: since all binaries are now shipped as "native
libraries" of the APK, we can finally bump the target SDK version
higher than 28. The target SDK version was stuck at 28 for a long time
because newer SELinux restricts running executables from internal
storage. More details can be found here: https://github.com/termux/termux-app/issues/1072
The target SDK bump will be addressed in a future commit.

Co-authored with @vvb2060
2021-01-22 02:29:54 -08:00
topjohnwu
9100186dce Make emulator direct install env fix 2021-01-18 13:32:10 -08:00
topjohnwu
5a71998b4e Stop embedding magisk in magiskinit 2021-01-18 04:25:26 -08:00
topjohnwu
b5b62e03af Fix copySepolicyRules logic 2021-01-16 21:45:45 -08:00
Rikka
95a5b57265
Remove "Flashing" overlay
Fix #3579, fix #3250
2021-01-15 21:28:59 -08:00
vvb2060
20be99ec8a Restore mistakenly deleted codes 2021-01-15 19:59:55 -08:00
topjohnwu
79dfdb29e7 Minor tweaks for patching tar files 2021-01-11 19:47:36 -08:00
topjohnwu
5ce29c30d2 Fix sepolicy copying 2021-01-10 20:16:02 -08:00
topjohnwu
79fa0d3a90 Hide selection improvements 2020-12-30 16:40:22 -08:00
topjohnwu
8e61080a4a Preparation for hiding isolated processes 2020-12-30 15:55:53 -08:00
topjohnwu
f983bfc883 Embed keys into dex files 2020-12-26 21:33:30 -08:00
topjohnwu
d089698475 Don't use root for logging getprop
Might contain sensitive info that shouldn't be shared
2020-12-19 23:09:36 -08:00
vvb2060
8ed2dd6687 Skip query for log files and patched boot file 2020-12-19 22:26:10 -08:00
vvb2060
50305ca1fe Support save manager log 2020-12-19 22:25:44 -08:00
vvb2060
3e91567636 Add a suffix to magisk_patched.img
prevent it from being used as input file
2020-12-19 21:53:16 -08:00
vvb2060
984f32f994 Move copy_sepolicy_rules to manager
We don’t need it when patch boot
2020-12-19 13:58:53 -08:00
topjohnwu
1232113772 Update preference migration implementation
Only try to read preference through content provider when the app
is fresh install and a previous package ID is set. Also catch all
Exceptions to prevent crashing the app.

This prevents malicious settings injection and crashes when multiple
manager is installed.

Fix #3542
2020-12-09 02:07:58 -08:00
vvb2060
039d4936cb Disable superuser fragment properly 2020-12-09 01:16:30 -08:00
topjohnwu
784dd80965 Update MediaStoreUtils 2020-12-09 01:15:56 -08:00
vvb2060
1ffe9bd83b Fix update channel without description on release build 2020-12-09 00:40:33 -08:00
vvb2060
ec1af9dc1e Delete useless arrays 2020-12-09 00:17:58 -08:00
vvb2060
ff4cea229a Check environment on emulator
We need to test modules on emulator.
2020-12-09 00:16:27 -08:00
vvb2060
3f81f9371f Disable installation while downloading metadata 2020-12-09 00:16:13 -08:00
vvb2060
60e89a7d22 Ignore manager not installed state 2020-12-09 00:15:58 -08:00
vvb2060
c50daa5c9e Allow restore boot when no network 2020-12-09 00:15:41 -08:00
topjohnwu
58d00ab863 Remove some warnings 2020-12-07 00:06:02 -08:00
RikkaW
4dbf7eb04b Fix spacing in module filter list 2020-12-06 23:49:23 -08:00
RikkaW
a39577c44d Fix extra spacing in module list 2020-12-06 23:49:23 -08:00
topjohnwu
a848f10bba Update Kotlin 2020-11-23 12:35:24 -08:00
RikkaW
0df891b336 Handle window insets with a new way
For example, switching pages in home should only have scale and alpha animations, but a "translate y" animation shows. This is because Data Binding is triggered later (like "in the next frame"), causing the animation runs before view attribute changes.

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

As changes are highly coupling, this commit also contains new ItemDecoration for lists, replacing the random combination of padding and empty drawable. And "fixEdgeEffect" extension for RecyclerView, making edge effects respect padding.
2020-11-19 23:24:39 -08:00
RikkaW
385853a290 Introduce LayoutInflaterFactory
This add the ability touch layout XML instantiates process. And most importantly, we can access AttributeSet, making custom view attribute possible.

Some other changes requires this.
2020-11-19 23:24:39 -08:00
RikkaW
fa3ef8a1c1 Significantly simplify MagiskDialog layout
The goal of original implementation, wrap view again and again, seems to be use the shadow and customizable round corners from MaterialCardView. But this can be done with use MaterialShapeDrawable which used in MaterialCardView directly. This will significantly simplify the layout and MagiskDialog class.
2020-11-19 23:21:36 -08:00
RikkaW
c93ada03c7 Implement Edge-to-edge with newer APIs
The implementation adds a "Base" family styles, making creating themes across multiple API versions more clearer and easier.
2020-11-19 23:21:36 -08:00
topjohnwu
9241246de6 Only use MediaStore APIs on Android 11+
Fix #3428
2020-11-13 02:53:30 -08:00
topjohnwu
2739d3cb67 Update PayPal link 2020-11-07 15:10:10 -08:00
vvb2060
e9759a5868 Update HideViewModel 2020-11-07 14:47:44 -08:00
topjohnwu
16e4c67992 Significantly broaden sepolicy.rule compatibility
Previously, Magisk uses persist or cache for storing modules' custom
sepolicy rules. In this commit, we significantly broaden its
compatibility and also prevent mounting errors.

The persist partition is non-standard and also critical for Snapdragon
devices, so we prefer not to use it by default.

We will go through the following logic to find the best suitable
non-volatile, writable location to store and load sepolicy.rule files:

Unencrypted data -> FBE data unencrypted dir -> cache -> metadata -> persist

This should cover almost all possible cases: very old devices have
cache partitions; newer devices will use FBE; latest devices will use
metadata FBE (which guarantees a metadata parition); and finally,
all Snapdragon devices have the persist partition (as a last resort).

Fix #3179
2020-11-02 23:20:38 -08:00
topjohnwu
0d11f73a1d Handle unexpected exceptions
Fix #3276
2020-10-22 03:09:05 -07:00
vvb2060
533cb8eb58 Tapjacking protection 2020-10-22 02:40:47 -07:00
vvb2060
4a7c3c06bc Disable hide/restore when no remote info 2020-10-20 23:56:44 -07:00
vvb2060
da93bbc1fe Fix network 2020-10-20 23:56:21 -07:00
topjohnwu
fa2dbe981e Handle retrofit errors 2020-10-20 03:03:40 -07:00
vvb2060
468796c23d Add option to show OS apps 2020-10-17 05:57:43 -07:00
vvb2060
5833aadef5 Silence kotlin warnings 2020-10-17 05:57:35 -07:00
vvb2060
a4c48847d1 Cancel vibration to sync with notification channel 2020-10-17 05:56:07 -07:00
vvb2060
43288be091 Prevent dot in the first position 2020-10-17 05:55:58 -07:00
vvb2060
1ad7a6fe93 Update activity display when download fails 2020-10-17 05:54:34 -07:00
topjohnwu
4e0a3f5e72 Fix compile errors 2020-10-17 04:28:20 -07:00
topjohnwu
9087207dc0 Minor changes 2020-10-17 04:14:12 -07:00
vvb2060
2760f37e6b Add userspace reboot 2020-10-17 03:54:51 -07:00
topjohnwu
2e4dc91b96 Better stub hiding experience 2020-10-17 03:40:43 -07:00
topjohnwu
735b65c50c Update DoH implementation 2020-10-11 15:19:19 -07:00
topjohnwu
efb1eab327 Silence some warnings 2020-10-11 05:47:47 -07:00
topjohnwu
6092d7ca88 Minor cleanups 2020-10-11 05:10:02 -07:00
topjohnwu
0a14f43f9c Refactor class names 2020-10-10 22:40:57 -07:00
topjohnwu
311c1f0dfd Switch to new repo format 2020-10-10 14:31:30 -07:00
vvb2060
eeced2fb5b Only care about the main process when not expanded 2020-10-08 00:30:34 -07:00
topjohnwu
6509e3d4f5 Use ProgressDialog when restoring images
Close #3287
2020-10-08 00:27:16 -07:00
topjohnwu
d9382f59bf Fix logical error 2020-10-08 00:14:51 -07:00
topjohnwu
403a0c770a Fix typo 2020-10-07 20:15:23 -07:00
topjohnwu
f0f1cdc501 Disable LoggingInterceptor 2020-10-07 04:01:50 -07:00
topjohnwu
4e272b70ef Download GitHub files through CDN 2020-10-07 04:01:03 -07:00
topjohnwu
9225b47568 Tidy up network services
Add jsdelivr CDN for several files
2020-10-06 04:58:46 -07:00
topjohnwu
d462873e74 Prevent UI loop on low memory device
Fix #3215, close #3216
2020-10-06 02:21:57 -07:00
topjohnwu
fc19b50290 Cleanup ActivityResult callbacks 2020-10-06 02:04:19 -07:00
vvb2060
bacb5fa462 Truncate existing file when openOutputStream 2020-10-06 00:41:21 -07:00
topjohnwu
67f8dc494e Properly patch vbmeta.img
Close #3241
2020-10-06 00:40:57 -07:00
topjohnwu
716f06846b Use GitHub pages URLs for public channel JSONs 2020-10-03 02:51:51 -07:00
topjohnwu
241f2656fa Prepare for public release 2020-10-03 02:42:02 -07:00
topjohnwu
46de1ed968 Better handling of data encryption 2020-09-28 04:45:56 -07:00
topjohnwu
9bebe07d5a Better network connection observing 2020-09-27 21:21:38 -07:00
vvb2060
7ac55068db Catch ActivityNotFoundException 2020-09-27 04:33:46 -07:00
topjohnwu
2f232fc670 Support modern Samsung AP.tar patching 2020-09-26 13:32:51 -07:00
Viktor De Pasquale
63a9a7d643 Fixed bottom bar not hiding on device without root 2020-09-24 00:51:08 -07:00
vvb2060
fd552e68a9 Don't hide app with uid < 10000 2020-09-23 20:57:19 -07:00
vvb2060
de4e26b488 Allow download modules when Magisk is not installed 2020-09-23 20:57:19 -07:00
vvb2060
fa3865e962 Check command result 2020-09-23 20:57:19 -07:00
vvb2060
a6950b8aca Add failed state 2020-09-23 20:57:19 -07:00
topjohnwu
0ef92a4866 Hide OTA option on Pixel devices 2020-09-23 04:49:38 -07:00
topjohnwu
ca9f9fee9a Update device state detection 2020-09-23 04:49:38 -07:00
Viktor De Pasquale
b59e05c63e Added a check against view being initialized in its behavior
The view will be simply hidden if not
2020-09-22 20:40:28 -07:00
Viktor De Pasquale
3c0630bfc0 Added forced checks on view being attached to window before performing hiding on it 2020-09-22 20:40:28 -07:00
topjohnwu
9908dfd79a Hide MagiskHide entry when disabled 2020-09-20 14:30:57 -07:00
topjohnwu
9a16ab1bd7 Always show install button
Fix #3172
2020-09-16 23:55:50 -07:00
topjohnwu
9e5cb6cb91 Proper way to setup attr colors 2020-09-16 22:16:28 -07:00
topjohnwu
765b51285a Add settings to disable DoH
Close #3130
2020-09-13 04:34:00 -07:00
topjohnwu
8a338de696 Hide MagiskHide pre Kitkat 2020-09-13 03:55:12 -07:00
topjohnwu
8a61ae621d Disable DoH upon failure 2020-09-13 03:46:06 -07:00
topjohnwu
60e1e07e87 Proper SafetyNet UI databinding 2020-09-13 00:23:23 -07:00
topjohnwu
e51a3dacb9 Support theme switching pre SDK 21 2020-09-12 18:42:05 -07:00
topjohnwu
2eb001876a Code cleanup 2020-09-11 03:17:43 -07:00
topjohnwu
b510dc51ac Fix su request auto response 2020-09-11 03:09:01 -07:00
topjohnwu
d7f7508fa2 Move setContentView out of onCreate 2020-09-11 02:31:41 -07:00
topjohnwu
434efec860 Use FIFO for su request communication
Fix #3159
2020-09-10 00:38:29 -07:00
topjohnwu
5022f00a55 Cleanup homescreen 2020-09-08 23:40:44 -07:00
topjohnwu
8aac373ca3 Fix network status detection 2020-09-08 21:55:43 -07:00
topjohnwu
013a2e1336 Minor code changes 2020-08-31 04:02:47 -07:00
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
vvb2060
70174e093b
Optimize network status display 2020-08-30 12:56:36 -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
e394445f1b Properly handle dialog dismiss for SafetyNet
Fix #3103
2020-08-26 18:54:38 -07:00
topjohnwu
bf5798190d Fix dialog when toggling keyboard multiple times 2020-08-26 06:39:59 -07:00
topjohnwu
84f92bd661 Cleanup hide fragment code 2020-08-26 05:46:37 -07:00
topjohnwu
d6062944f1 Update snet extension to prevent crashes on release builds 2020-08-24 06:24:58 -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
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
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
7f225b3973 Minor MarkwonImagePlugin updates 2020-08-15 23:20:49 -07:00
vvb2060
a4c1ddd9f2 Use uid 2000 to install patched apk 2020-08-15 22:16:15 -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
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
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
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
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
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
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
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