Commit Graph

226 Commits

Author SHA1 Message Date
grrfe
20a0bea246 Implement Shizuku installer support 2023-06-21 19:30:29 +05:30
grrfe
b4c4ac7cef Move common session installer code to SessionInstallerBase
Required for Shizuku
2023-06-21 13:12:13 +05:30
Ingo Brückl
2bc4dcbb11 Choose a suitable string for the update title in singular or plural 2023-06-20 10:00:29 +02:00
Aayush Gupta
137fc10ae1 SearchResultsActivity: Don't hide already loaded search results
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2023-06-20 17:36:10 +05:30
Aayush Gupta
f3e2a8e852 Show packagename of the app below name
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2023-06-20 13:31:13 +05:30
Aayush Gupta
87af312f54 Always verify sessions before login
Also avoid auto-login if saved account is anonymous and invalid
as this results in fetching new account every time app is restarted
as long as the validation fails resulting in rate-limiting.

Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2023-06-19 20:32:34 +05:30
Aayush Gupta
9b8e3cf9c4 Implement automated updates check
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2023-06-18 17:56:50 +05:30
Aayush Gupta
42c54c5d1d BaseDetailsActivity: Hide user layout review on anonymous accounts
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2023-06-17 22:35:29 +05:30
Aayush Gupta
abd0632ebd fixup! Partial revert: AuthViewModel: Search in custom tab by default in anonymous accounts 2023-06-16 14:33:00 +05:30
Aayush Gupta
9e46a8b433 AppDetailsActivity: Trigger download on storage manager permission granted
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2023-06-02 23:58:19 +08:00
Aayush Gupta
c43b43cdfe UpdatesFrgament: Request storage permission if required before updating apps
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2023-06-02 23:57:12 +08:00
Aayush Gupta
2f80ef1109 SpoofActivity: Allow users to import spoof configs with open document contract
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2023-06-02 00:18:10 +08:00
Aayush Gupta
a0f13e6040 SpoofActivity: Use CreateDocument contract for exporting properties
This lets us not request external storage manager permissions

Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2023-06-01 23:21:45 +08:00
Aayush Gupta
71e5da32b4 AppDetailsActivity: Only request storage manager perms when required
Saving files in filesDir or externalFilesDir doesn't requires any perms as this
is app's own storage. We only need perm if user is either installing an app with
obb/patch files or has enabled external storage downloads

Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2023-06-01 22:55:34 +08:00
Aayush Gupta
1de331e5db Sanitize external intents properly
Also disable auto-download and installs from them

Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2023-06-01 14:26:17 +08:00
Aayush Gupta
0a27b007d4 Set missing displayName and iconArtwork for shared libraries
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2023-05-31 23:04:29 +08:00
Evengard
dbc12d7445 Implementing installation of dependent libraries before installing the main package 2023-05-31 12:26:47 +00:00
Aayush Gupta
574390e89f fixup! Read system xml blacklist as default
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2023-05-31 16:53:11 +08:00
Rahul Patel
6f50826953 Do not expose anonymous emails 2023-05-30 21:40:16 +05:30
Aayush Gupta
1b9eea69f0 fixup! Handle account UI login UI progress better 2023-05-28 10:47:00 +05:30
Aayush Gupta
cd3cd6f9b7 Handle account UI login UI progress better
* Show server down error message on 503 status
* Don't allow users to click another login option if another login is in progress
* Reset progress bar's visibility properly

Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2023-05-28 01:13:13 +05:30
Aayush Gupta
d9dd90df32 BlacklistViewModel: Don't filter for packages to be enabled again
getPackageInfoMap method already filters values based on PREFERENCE_UPDATES_EXTENDED
preference. Doing this again here without any check results in loss of
ability to blacklist disabled apps.

Credits: https://gitlab.com/AuroraOSS/AuroraStore/-/merge_requests/205

Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2023-05-25 14:41:20 +05:30
Aayush Gupta
020819d7a6 Partial revert: AuthViewModel: Search in custom tab by default in anonymous accounts
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2023-05-23 22:26:23 +05:30
Aayush Gupta
70a40d4f76 fixup! BaseDetailsActivity: Switch from Html to HtmlCompat 2023-05-23 19:43:15 +05:30
Aayush Gupta
f905821ee9 Don't query bundles if response code is 429
Recyeclerview is set to keep querying results automatically on scroll
or if results are less than 10

Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2023-05-22 10:23:57 +05:30
Aayush Gupta
3b79aa2407 MainActivity: Switch to FragmentContainerView for navigation
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2023-05-21 10:58:24 +05:30
Aayush Gupta
eaa82f5e8b SpoofActivity: Ensure permission and directories exist before exporting device config
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2023-05-19 10:44:24 +05:30
Aayush Gupta
40eae4da75 Add fallback for external installers
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2023-05-19 00:35:45 +05:30
Aayush Gupta
28a6758087 Switch to ActivityResultContracts for requesting permissions
QuickPermissions hasn't been updated since past few years hinting its
deprecated status

Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2023-05-18 16:42:04 +05:30
Aayush Gupta
794fb1d261 Update libsu to latest version
Migrate from su to cmd method as su has been deprecated

Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2023-05-18 11:18:13 +05:30
Aayush Gupta
6ef16a840d Drop dependency upon expansionpanel library
Deprecated

Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2023-05-18 11:10:24 +05:30
Aayush Gupta
00e93f53f6 Switch to StaggeredGridLayoutManager for accents
Gives almost same effect as FlexLayoutManager and is part of recyclerview
library letting us drop an additional dependency

Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2023-05-18 10:24:00 +05:30
Aayush Gupta
dbaf577f2a Drop dependency upon apache's commons-text
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2023-05-15 14:33:35 +05:30
Aayush Gupta
66d0f54ec9 Drop dependency upon apache's commons-io library
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2023-05-15 13:55:40 +05:30
Aayush Gupta
0bef2e3da7 fixup! AuthViewModel: Search in custom tab by default in anonymous accounts 2023-05-05 10:08:37 +05:30
Aayush Gupta
e116839d94 AuthViewModel: Search in custom tab by default in anonymous accounts
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2023-05-04 12:13:35 +05:30
Aayush Gupta
6b2f22350c Add preference to open custom tab for searching apps
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2023-05-04 12:13:34 +05:30
Aayush Gupta
614f367977 Add new advanced preference page
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2023-05-04 12:13:34 +05:30
Aayush Gupta
75eaba4c6e Update exodus trackers's JSON file
Fetched using postman via https://reports.exodus-privacy.eu.org/api/trackers endpoint

Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2023-05-04 12:13:34 +05:30
Aayush Gupta
88b3878afd fixup! treewide: Move lambda argument out of parentheses for livedata observeables 2023-05-04 12:13:34 +05:30
Aayush Gupta
e4a7b14ce6 fixup! FilterSheet: Switch to setOnCheckedStateChangeListener 2023-05-03 16:46:23 +05:30
Aayush Gupta
9713eefdd7 FilterSheet: Switch to setOnCheckedStateChangeListener
setOnCheckedChangeListener is deprecated

Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2023-05-01 20:15:16 +05:30
Aayush Gupta
8b7a5f9608 RootInstaller: Ensure sessionId is non-null
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2023-05-01 20:05:38 +05:30
Aayush Gupta
11ba1be403 BaseView: Switch to non-null upper bound
Type parameter 'T' has nullable upper bound, so override has incorrect signature comparing with a base member with NotNull annotation.
Please add a non-nullable upper bound (e.g. Any) to the type parameter.
See https://kotlinlang.org/docs/generics.html#upper-bounds and https://youtrack.jetbrains.com/issue/KT-36770 for more details.
This warning will become an error soon.

Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2023-05-01 20:05:38 +05:30
Aayush Gupta
730e71037c RequestBuilder: Drop inline from functions
Expected performance impact from inlining is insignificant

Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2023-05-01 20:05:38 +05:30
Aayush Gupta
b75a408ab9 BaseDetailsActivity: Switch from Html to HtmlCompat
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2023-05-01 20:05:38 +05:30
Aayush Gupta
943a1c2d49 Glide: Drop unused transitionOptions parameter
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2023-05-01 20:05:37 +05:30
Aayush Gupta
f3d5f627e7 Switch from onBackPressed to onBackPressedDispatcher
onBackPressed is deprecated

Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2023-05-01 20:05:33 +05:30
Aayush Gupta
eac0a95d06 Glide: Switch from ViewTarget to CustomViewTarget
ViewTarget has been deprecated

Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2023-05-01 18:17:33 +05:30
Aayush Gupta
695e1a59e0 Address PackageInfo and VersionCode deprecation warnings
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2023-05-01 13:35:01 +05:30