Repository navigation
Commit 5c62554
authored
feat(bills): render bills at the app root; drop camera frosting (#1220)
* feat(bills): render bills at the app root; drop camera frosting
Phase B of moving bills out of the scanner. A presented bill now renders at the
app root instead of inside the camera screen, so it appears over ANY screen and
is fully decoupled from the camera.
- New BillOverlay (:shared:bills), mounted at the app root in App.kt next to
ScrimOverlay. It reads the app-scoped billState via LocalSessionController and
owns the swipe-to-dismiss gesture, enter/exit animation, tip-modal positioning,
and the below-bill decorators. Touch-transparent when no bill is present.
- ScannableContainer slims down to camera + HUD: it no longer draws the bill,
and hides its DecorView HUD while a bill is up (billState.bill != null).
- Remove the frosted tip-card camera backdrop entirely: delete
TipCardCameraBackdrop, drop the previewView plumbing from Scanner, and render
TipCard as a solid opaque card (LocalTipCard{Color,BaseAlpha} now default to
the opaque fallback; the backdrop composition local is gone).
The FrostedTipCard feature flag is now unused (left in place; harmless).
* feat(bills): hide the tab bar while a bill/tip card is presented
Bills render at the app root above everything, so the v2 tab bar would show
beneath a presented bill. Gate AppNavigationBar visibility on the app-scoped
billState (bill == null) so the bar slides out while a bill is up and returns
on dismiss.
* feat(bills): scrim behind the bill (over app content) via the root ScrimController
When a bill/tip card is presented over app content (not the camera), dim and
block the content beneath it so it reads as a focused modal. Drive the shared
root ScrimController (its ScrimOverlay already sits just below BillOverlay), so
it uses the theme scrim colour and gets tap-to-dismiss for free. Skipped on the
scanner tab, where the live camera stays visible behind the bill.
- ScrimController.hide() made public so BillOverlay can conceal the scrim when
the bill clears itself (e.g. swipe dismiss) without re-invoking onDismiss.1 parent 6ae70d7 commit 5c62554
9 files changed
Lines changed: 232 additions & 351 deletions
File tree
- apps/flipcash
- app
- src/main/kotlin/com/flipcash/app/internal/ui
- features/scanner/src/main/kotlin/com/flipcash/app/scanner/internal
- bills
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
183 | 183 | | |
184 | 184 | | |
185 | 185 | | |
| 186 | + | |
186 | 187 | | |
187 | 188 | | |
188 | 189 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
69 | 69 | | |
70 | 70 | | |
71 | 71 | | |
| 72 | + | |
72 | 73 | | |
73 | 74 | | |
74 | 75 | | |
| |||
223 | 224 | | |
224 | 225 | | |
225 | 226 | | |
| 227 | + | |
| 228 | + | |
| 229 | + | |
| 230 | + | |
| 231 | + | |
226 | 232 | | |
227 | 233 | | |
228 | 234 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
11 | 11 | | |
12 | 12 | | |
13 | 13 | | |
| 14 | + | |
14 | 15 | | |
15 | 16 | | |
16 | 17 | | |
| |||
25 | 26 | | |
26 | 27 | | |
27 | 28 | | |
| 29 | + | |
28 | 30 | | |
29 | 31 | | |
30 | 32 | | |
| 33 | + | |
| 34 | + | |
31 | 35 | | |
32 | 36 | | |
33 | 37 | | |
| |||
55 | 59 | | |
56 | 60 | | |
57 | 61 | | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
58 | 69 | | |
59 | 70 | | |
60 | 71 | | |
61 | 72 | | |
62 | 73 | | |
63 | 74 | | |
64 | | - | |
| 75 | + | |
65 | 76 | | |
66 | 77 | | |
67 | 78 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | 3 | | |
4 | | - | |
5 | 4 | | |
6 | 5 | | |
7 | 6 | | |
| |||
64 | 63 | | |
65 | 64 | | |
66 | 65 | | |
67 | | - | |
68 | | - | |
69 | | - | |
70 | 66 | | |
71 | 67 | | |
72 | 68 | | |
| |||
84 | 80 | | |
85 | 81 | | |
86 | 82 | | |
87 | | - | |
88 | 83 | | |
89 | 84 | | |
90 | 85 | | |
| |||
116 | 111 | | |
117 | 112 | | |
118 | 113 | | |
119 | | - | |
120 | 114 | | |
121 | 115 | | |
122 | 116 | | |
| |||
0 commit comments