Skip to content

General: Add full-screen upgrade screen with pro benefits overview#427

Merged
d4rken merged 1 commit intomainfrom
feat/upgrade-screen
Mar 3, 2026
Merged

General: Add full-screen upgrade screen with pro benefits overview#427
d4rken merged 1 commit intomainfrom
feat/upgrade-screen

Conversation

@d4rken
Copy link
Copy Markdown
Member

@d4rken d4rken commented Mar 3, 2026

What changed

  • Replaced the upgrade dialog with a dedicated full-screen upgrade screen that presents pro benefits before the purchase action
  • Both FOSS (sponsor development) and Google Play (in-app purchase) flavors get their own tailored upgrade screen
  • All upgrade entry points (overview toolbar, general settings, reaction settings, widget configuration) now navigate to the new screen

Technical Context

  • Added per-flavor UpgradeScreen, UpgradeViewModel, and UpgradeNavigation under upgrade/ui/ packages
  • Removed launchBillingFlow from UpgradeRepo interface — billing flow is now encapsulated in the gplay UpgradeViewModel via BillingDataRepo
  • Widget configuration redirects non-pro users to MainActivity with a NAVIGATE_TO_UPGRADE intent extra, handled in both onCreate and onNewIntent
  • gplay ViewModel auto-navigates back when isPro becomes true by observing upgradeInfo flow
  • Restore purchase checks specifically for CapodSku.PRO_UPGRADE to avoid false positives from unrelated purchases

Add dedicated Compose upgrade screens for both FOSS and gplay flavors, presenting pro benefits before the purchase/sponsor action. Migrate all upgrade dialog callers to navigate to the new screen instead.
@d4rken d4rken added the enhancement Add a new feature of improve an existing feature label Mar 3, 2026
@d4rken d4rken merged commit abb189f into main Mar 3, 2026
9 checks passed
@d4rken d4rken deleted the feat/upgrade-screen branch March 3, 2026 20:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement Add a new feature of improve an existing feature

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant