Aayush Gupta
38c6c704d7
SessionInstaller: Clear enqueued installs properly
...
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2024-05-15 16:05:05 +05:30
Aayush Gupta
d0542c1a8b
SplashFragment: Remove toolbar instead of hiding it
...
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2024-05-10 13:02:35 +05:30
Aayush Gupta
128ae7f3d5
OnboardingFragment: Skip onboarding for TV
...
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2024-05-08 20:21:10 +05:30
Aayush Gupta
b5bde9d3a3
PermissionsFragment: Handle missing activity to grant storage manager perm on ATV
...
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2024-05-08 18:09:12 +05:30
Aayush Gupta
692cda2226
PackageUtil: Check for Android TV using recommended way
...
Ref: https://developer.android.com/training/tv/start/hardware.html#runtime-check
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2024-05-08 18:01:56 +05:30
Aayush Gupta
0a514444ef
PackageUtil: Use longVersion on API level 28 for shared library
...
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2024-05-08 17:46:17 +05:30
Aayush Gupta
d61c3342a7
InstallerFragment: Rename and relocate method to get available installer info
...
* Keep all installer related code to AppInstaller as much as possible
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2024-05-08 16:22:36 +05:30
Aayush Gupta
450cc0b6d2
InstallerFragment: Don't suggest unavailable installers
...
Other than Session and Native, all installers require third-party apps. No need to pollute
installers list with them if they are unavailable as users often gets confused otherwise.
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2024-05-08 15:56:04 +05:30
Aayush Gupta
1a7ed40ba9
OnboardingFragment: Rearrange permission fragment before app links
...
* Permissions are more important compared to app links
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2024-05-08 15:51:47 +05:30
Aayush Gupta
196f9d00c5
InstallerFragment: Relocate to settings instead of onboarding
...
* This makes onboarding minimal and only required screens are shown
* SessionInstaller is the recommended choice, user who needs a different can configure in settings
* Instead of showing minimal list, show installer fragment that contains more information
* Also show all installers like before
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2024-05-08 15:44:15 +05:30
Aayush Gupta
72ae9f5ec0
DevProfileFragment: Drop unused authData variable
...
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2024-05-08 14:53:10 +05:30
Aayush Gupta
6cba36f2e3
Drop unused preferences and variables
...
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2024-05-08 14:51:10 +05:30
Aayush Gupta
a38d2dca46
InstallationPreference: Use checks from AppInstaller class instead
...
No need to duplicate same code
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2024-05-08 14:37:08 +05:30
Aayush Gupta
8360274841
installer: Inject all installers using hilt
...
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2024-05-08 14:33:25 +05:30
Aayush Gupta
933b7b6886
DeviceOwnerReceiver: Add minimal support for device owner API
...
SessionInstaller can commit silent installs if the app is device owner. Implemented on
request of users.
This still needs user to set the app as device owner manually using ADB (only possible
if the device has no accounts setup yet).
Co-authored-by: Syuugo <pub@s1204.me >
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2024-05-07 13:21:23 +05:30
Aayush Gupta
00532f200e
DownloadWorker: Better handle individual file progress updates
...
* Don't filter InputStream updates as we are already guarding UI updates against total progress
* Update downloadedBytes based on bytesCopied to reflect real progress
* Use collect instead of collectLatest to ensure all updates from flow are handled
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2024-05-06 13:01:05 +05:30
Aayush Gupta
1b3554e695
ServiceInstaller: Run post-installation steps on Aurora Services too
...
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2024-05-04 17:01:50 +05:30
Aayush Gupta
f98c2ba5fd
NativeInstaller: Start activity on UI thread
...
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2024-05-04 14:48:01 +05:30
Aayush Gupta
8f4995221a
Move post-installation steps to AppInstaller class
...
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2024-05-04 14:48:01 +05:30
Aayush Gupta
f7667c17aa
NotificationUtil: Load install notification icon from package locally
...
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2024-05-04 13:32:33 +05:30
Aayush Gupta
43e11dac88
InstallerService: Drop unused installer service class
...
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2024-05-04 13:32:33 +05:30
Aayush Gupta
8b1830d5d5
fixup! SessionInstaller: Open write sessions with packageName only
...
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2024-05-04 11:38:15 +05:30
Aayush Gupta
58e615befb
DownloadWorkerUtil: Also delete old download directories when clearing downloads
...
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2024-05-02 20:12:39 +05:30
Aayush Gupta
68733e1ec1
DownloadPreference: Add a worker to regularly clear downloads cache
...
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2024-05-02 20:12:39 +05:30
Aayush Gupta
43e63a9452
InstallActivity: Unregister session callback onDestroy
...
Also finish activity if a valid download is not present
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2024-05-02 14:27:15 +05:30
Aayush Gupta
65fc2a2dbd
SessionInstaller: Open write sessions with packageName only
...
This allows to open same sessions multiple times when required untill it's
abandoned. Also specifiy file length as it is known.
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2024-05-02 13:24:33 +05:30
Aayush Gupta
a75838a57d
AuroraApp: Switch from GlobalScope to MainScope
...
Use MainScope instead of GlobalScope managed in the application class
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2024-05-02 12:22:06 +05:30
Aayush Gupta
4a109fa164
DownloadFragment: Display downloads in reversed order
...
Latest downloads should always be on top to allow users to easily manage them.
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2024-04-30 18:37:37 +05:30
Aayush Gupta
3918fc199d
GoogleFragment: Update EMBEDDED_SETUP_URL
...
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2024-04-24 09:06:32 +05:30
Aayush Gupta
b48cc00cbe
MoreDialogFragment: Better theme and color handling
...
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2024-04-19 12:18:45 +05:30
Aayush Gupta
92771bbaec
DownloadMenuSheet: Allow to export downloaded files
...
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2024-04-16 12:04:32 +05:30
Aayush Gupta
5f714e624b
MainActivity: Use NavigationRail on large screen devices
...
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2024-04-16 10:45:14 +05:30
Aayush Gupta
c3963519e0
MainActivity: Move navigation drawer items into dialogfragment
...
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2024-04-16 10:37:38 +05:30
Aayush Gupta
b85b2afd35
AboutFragment: Format app version name and code properly
...
Appending version code to name confuses users regarding version they are using.
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2024-04-04 13:51:38 +05:30
Aayush Gupta
687b8f0e68
Constants: Drop unused variables
...
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2024-04-04 13:46:39 +05:30
Aayush Gupta
8962260f0b
WelcomeFragment: Localize welcome screen strings
...
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2024-04-04 11:12:58 +05:30
Aayush Gupta
5612263e04
data: installer: Localize installer information
...
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2024-04-03 21:23:00 +05:30
Aayush Gupta
4dbe4c78a2
AppLinksFragment: Wrap app link activity start in try-catch block
...
Android warns that it may not exist on all devices and samsung devices
seems to prove that true.
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2024-04-01 15:17:38 +05:30
Aayush Gupta
ed4e8c8430
AppLinksFragment: Update button state when link is removed
...
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2024-04-01 15:02:43 +05:30
Aayush Gupta
4790ae1d83
PermissionBottomSheet: Highlight new permissions using accent color
...
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2024-03-30 13:29:59 +05:30
Aayush Gupta
b925aa3400
SessionInstaller: Register session callbacks on main thread
...
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2024-03-30 11:02:03 +05:30
Aayush Gupta
8abade8881
Avoid accessing file's path when working with downloads
...
This will help us to use document tree in future to allow users custom download
directory.
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2024-03-27 19:52:41 +05:30
Aayush Gupta
d15fd40296
PathUtil: Set default downloads to internal cache directory
...
This allows system to automatically free up space when required as well as
users to delete it manually from the app info settings without wiping out
aurora store specific configuration.
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2024-03-27 18:55:27 +05:30
Aayush Gupta
5c5b48c6c1
DownloadWorker: Update downloadedBytes when file exists as well
...
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2024-03-22 17:45:50 +05:30
Aayush Gupta
3067647724
fixup! DownloadWorker: Resume download when possible
...
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2024-03-22 16:38:02 +05:30
Aayush Gupta
ad64d512e5
DownloadWorker: Resume download when possible
...
* If file still exists, resume the download using range requests.
* Avoid deleting files when download fails as we can resume the download again.
* Assert for expected SHA and actual SHA to match
* Verify SHA after download is finished to avoid complicated logic
Ref: https://developer.mozilla.org/en-US/docs/Web/HTTP/Range_requests
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2024-03-22 16:19:53 +05:30
Aayush Gupta
dcddfc74bd
AppDetailsFragment: Better check for running downloads on setup
...
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2024-03-22 14:07:56 +05:30
Aayush Gupta
42a38ef741
DownloadWorker: Also consider speed when updating progress
...
This should fix the issue where progress gets stuck because download speed
gets really low but UI still mentions old speed and time remaining
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2024-03-22 13:51:44 +05:30
Aayush Gupta
1edc0b3f53
AppDetailsFragment: Access DetailsClusterViewModel using viewModels method
...
* Leftover of the great migration
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2024-03-20 19:17:08 +05:30
Aayush Gupta
795d0dddb7
BaseClusterViewModel: Use original cluster ID to append apps
...
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com >
2024-03-20 17:56:14 +05:30