Skip to content

Replace the Search tab with a Kiwi tab (web-store listings only) - #10

Merged
GothwadTech merged 3 commits into
mainfrom
arena/fff6b37d-storeapp
Oct 18, 2026
Merged

GothwadTech merged 3 commits into
mainfrom
arena/fff6b37d-storeapp

Conversation

@GothwadTech

Copy link
Copy Markdown
Owner

What changed

Bottom bar: Home | Apps | Kiwi | Games | Profile — the Search tab is gone, the Kiwi tab takes its place (between Apps and Games).

Kiwi tab (app/src/main/java/com/gothwad/store/ui/screens/ListingScreens.kt → KiwiScreen)

  • Lists, in the same row/list form as the Apps tab, only the apps that are live on the Kiwi Store web (kiwistore.gothwadtech.com).
  • It reads the Worker catalogue only (StoreViewModel.refreshKiwi() → StoreRepository.firstPartyCatalog), so F-Droid / upstream mirrors can never leak into it.
  • Filter chips All | Apps | Games, explicit loading / error+retry / empty states, normal app detail + install actions.

Search

  • Search is no longer a tab. Every tab header — Home, Apps, Kiwi, Games, Profile — now carries a search action that opens the search screen.
  • No tab header shows a search bar, and there is no separate search tab.
  • The search screen is pushed as a normal sub-screen now, so its back arrow returns to the tab the user came from.

Files

  • ui/Routes.kt — Routes.KIWI added, Routes.SEARCH is no longer a tab.
  • ui/components/Chrome.kt — bottom-bar spec: Search → Kiwi (storefront icon).
  • ui/navigation/AppNavHost.kt — Kiwi tab destination; Search pushed as a sub-screen.
  • ui/StoreViewModel.kt — kiwi state + refreshKiwi() (first-party catalogue only).
  • data/model/StoreModels.kt — StoreApp.isKiwiStoreListing (excludes fdroid: listings).
  • ui/screens/{Home,Listing,Account}Screens.kt — search action in the tab headers.
  • ui/screens/SearchScreen.kt — no longer a tab; keeps clear of the system nav bar.
  • app/src/test/java/com/gothwad/store/KiwiTabTest.kt — new unit test for the tab list and the web-store filter.

Verification

  • ./gradlew testDebugUnitTest assembleDebug lintDebug runs in the Kiwi Store Quality Gate & Tests workflow on this PR (no local JDK/Android SDK in the authoring sandbox).
  • No device install has been performed yet.

GothwadTech and others added 3 commits October 18, 2026 10:14
- Bottom bar is now Home | Apps | Kiwi | Games | Profile.
- The Kiwi tab lists exactly the apps that are live on the Kiwi Store web
  (Worker catalogue only, no F-Droid/upstream mirrors) in the Apps-tab list
  form, with All/Apps/Games chips.
- Search is no longer a tab: every tab header (Home, Apps, Kiwi, Games,
  Profile) carries a search action that opens the search screen, and no tab
  header shows a search bar.
- The search screen is pushed as a sub-screen now, so the back arrow returns
  to the tab the user came from.

Co-authored-by: arena-agent <297053741+arena-agent@users.noreply.github.com>
Co-authored-by: arena-agent <297053741+arena-agent@users.noreply.github.com>
- Every tab (Home, Apps, Kiwi, Games, Profile) now uses the very same header:
  Kiwi Store icon on the left, a tappable search field in the middle and the
  profile avatar on the right. Tapping the search field opens the search
  screen, so the search tab stays gone and no tab shows a separate search bar.
- Apps and Games keep their section heading inside the list, since the header
  no longer carries a per-tab title.
- New Settings -> "App sources" screen (also reachable from the Profile tab):
  the Kiwi Store web catalogue, the F-Droid and IzzyOnDroid repositories with
  their URLs, index sizes, listing/release counts, last sync time and failover
  mirrors, the download counters (including the APKs that came from F-Droid)
  and a live "running right now" view (catalogue sync, download service,
  installer back-ends, network, account).
- FdroidCatalog now publishes a live FdroidStatus (per repo: apps, releases,
  index size, last sync, syncing/error) so the UI can show it.

Co-authored-by: arena-agent <297053741+arena-agent@users.noreply.github.com>
@GothwadTech
GothwadTech merged commit 2475fad into main Oct 18, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant