Commit Graph

1085 Commits

Author SHA1 Message Date
Aayush Gupta
e27c4f210f compose: details: Remove prefix from components
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-08-27 15:55:49 +08:00
Aayush Gupta
8f2a673c6f compose: details: Encapsulate app-dependent navigation logic
Make it harder to accidentally navigate to an extra screen dependent upon
an app object which is unavailable.

Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-08-27 14:35:32 +08:00
Aayush Gupta
c3a4e4a4f0 compose: search: Force single pane layout for app details while searching
This looks awful on foldables as it still draws based on the window width and not the
pane width. I cannot find a simple way to differentiate the width between foldables and tablet
to display the side pane here so just disable it for now.

Hopefully, Google will add a way to adapt the adaptive layouts based on pane width.

Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-08-26 17:25:07 +08:00
Aayush Gupta
02fb25248b compose: navigation: Add missing scene setup entry decorator
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-08-26 15:46:19 +08:00
Aayush Gupta
3f621d6b07 Switch to android's text formatter class for download speed formatting
Also drop unused dependency upon lifecycle process

Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-08-25 22:31:30 +08:00
Aayush Gupta
682adc93d8 compose: details: Add back download speed and time remaining text
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-08-25 21:27:26 +08:00
Aayush Gupta
51dea058b5 compose: details: Switch from bodyVerySmall to bodySmall
Follow the material typography scheme completely. bodyVerySmall is quite hard to read
otherwise.

Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-08-25 20:57:42 +08:00
Aayush Gupta
704beac68c compose: search: Hide gms filter on anonymous mode
Web API doesn't provides information about dependencies for us to offer this filter

Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-08-25 17:11:01 +08:00
Aayush Gupta
6cdb744099 compose: search: Bring back filters for search results
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-08-25 16:02:15 +08:00
Aayush Gupta
a464d4e37c compose: details: Show loading and error screen for reviews
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-08-23 16:50:20 +08:00
Aayush Gupta
daea7ccc53 fixup! compose: details: Specify key for hiltViewModel
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-08-23 16:45:26 +08:00
Aayush Gupta
c58269c552 compose: search: Request focus on clearing textfield
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-08-23 12:36:33 +08:00
Aayush Gupta
da50177c57 compose: search: Limit suggestions to 3 with better padding
Align it to SearchBar's default suggestions layout

Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-08-22 16:59:12 +08:00
Aayush Gupta
4f7d744491 compose: search: Use scaffoldNavigator to navigateUp from details
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-08-22 16:41:56 +08:00
Aayush Gupta
7ecb142b3e compose: search: Switch to new AppBarWithSearch API
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-08-22 16:35:17 +08:00
Aayush Gupta
ef488ff2b4 NetworkPreference: Only show microG login switch if supported
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-08-21 16:45:16 +08:00
Aayush Gupta
0ff43042a0 fixup! compose: details: Adjust adaptive screens based on latest alpha changes
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-08-21 16:36:40 +08:00
Aayush Gupta
e324e9d69c Drop non-required SDK level checks for Android 6.0
Minimum supported version is now Android 6.0

Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-08-21 16:35:16 +08:00
Aayush Gupta
2f93879c1d compose: navigation: Migrate from navigation2 to navigation3
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-08-21 15:59:31 +08:00
Aayush Gupta
7f41ad0923 compose: details: Specify key for hiltViewModel
This ensures that hilt doesn't reuses ViewModel for another app with another one.

Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-08-21 15:16:47 +08:00
Aayush Gupta
94c5f90fbb compose: details: Adjust adaptive screens based on latest alpha changes
* WindowWidthSizeClass is deprecated, switch to WindowSizeClass and breakpoints instead with flipped logic
* Specify a dragHandle and adaptStratergy for supporting pane to levitate on single pane screens

Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-08-20 17:23:11 +08:00
Aayush Gupta
ade4a2d7e9 DownloadWorker: Address lint warning regarding response being non-null
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-08-20 10:14:42 +08:00
Aayush Gupta
a9afd0785e compose: Drop all optin for experimental APIs
Too many of them at this point. Simply set them in compiler arguments
and revisit to remove after 2-3 years.

Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-08-20 10:14:42 +08:00
Aayush Gupta
0432dc0f00 compose: Remove epoxy and view related logic for searching
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-08-20 10:14:42 +08:00
Aayush Gupta
62e81da258 compose: Initial migration of searching logic to compose
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-08-20 10:14:42 +08:00
Aayush Gupta
458b984a06 compose: AppDetailsScreen: Merge ScreenContentApp logic into one function
Makes paramater hell a bit easier to manage

Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-08-20 10:14:42 +08:00
Aayush Gupta
f8983c6744 details: Adapt for changes related to microg warning
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-08-20 10:14:42 +08:00
Aayush Gupta
6cd57c2454 extensions: Drop unused extensions
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-08-20 10:14:42 +08:00
Aayush Gupta
cd5da2b83c BaseFragment: Drop unused app parameter
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-08-20 10:14:42 +08:00
Aayush Gupta
2bb3bbec0c view: Drop logic related to details
This has been moved to compose

Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-08-20 10:14:42 +08:00
Aayush Gupta
fe6c62851b compose: dev: Fix searching for apps by publisher
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-08-20 10:14:42 +08:00
Aayush Gupta
d353115ae7 compose: details: Add preview for reviews
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-08-20 10:14:42 +08:00
Aayush Gupta
2eb4dd4abe compose: Relocate preview to top directory
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-08-20 10:14:42 +08:00
Aayush Gupta
d9267c7c3b details: review: Move nextPageUrl variable to function
This is only used pager, no need to expose to the class

Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-08-20 10:14:42 +08:00
Aayush Gupta
154d468322 details: Ensure app is not null before fetching more info
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-08-20 10:14:42 +08:00
Aayush Gupta
0a721fa571 compose: details: Load description of permissions as well
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-08-20 10:14:42 +08:00
Aayush Gupta
30dc819fa8 compose: details: Switch review summary container color to surface
We will use primary for user reviews.

Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-08-20 10:14:42 +08:00
Aayush Gupta
f9fd5b9644 Switch compose to Material3 Expressive theme
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-08-20 10:14:42 +08:00
Aayush Gupta
a37485080f Bump compose-material3 to latest alpha
The library hasn't hit a stable release in over an year by now

Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-08-20 10:14:42 +08:00
Aayush Gupta
cb216f6c01 compose: details: Simplify and fix showing app states
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-08-20 10:14:42 +08:00
Aayush Gupta
4c479e060b compose: details: Pass screen directly in single parameter
Reduces the function parameter hell for navigating to extra pane.
Credits to Torsten for suggesting this.

Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-08-20 10:14:42 +08:00
Aayush Gupta
e3215a6721 compose: details: Link privacy policy to data safety section header
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-08-20 10:14:42 +08:00
Aayush Gupta
70d68dc872 compose: details: Move manual download to independent screen
We want to allow users to select location to download files and select splits
in future too.

Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-08-20 10:14:42 +08:00
Aayush Gupta
38f96eacbc fixup! libs: Bump gplyapi to 3.5.0
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-08-20 10:14:42 +08:00
Aayush Gupta
e9f6bb42e9 view: details: Drop unused custom epoxy views
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-08-20 10:14:42 +08:00
Aayush Gupta
793db41bb7 compose: details: Setup permissions screen
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-08-20 10:14:42 +08:00
Aayush Gupta
5d0bb8b634 compose: details: Merge suggestions pane back into AppDetails
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-08-20 10:14:42 +08:00
Aayush Gupta
5276e70373 compose: details: Show 2nd review as featured
There are always 3 featured reviews, show the 2nd one as first
as that makes page indicator looks better

Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-08-20 10:14:42 +08:00
Aayush Gupta
0c439f3457 compose: details: Show featured reviews again (review summary)
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-08-20 10:14:42 +08:00
Aayush Gupta
f868a0f505 compose: details: Initial DevProfileScreen implementation
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
2025-08-20 10:14:42 +08:00