Salah 0.4: center-magnified prayer times and larger clock

This commit is contained in:
2026-09-12 13:11:24 +01:00
parent 8e660f403b
commit d92609e046
6 changed files with 87 additions and 24 deletions
+15 -10
View File
@@ -19,18 +19,22 @@ Morocco (Ministry of Habous), matching AlAdhan `method=21`:
All computation happens **on the watch** — no GPS, no network. Pure solar math
(same Meeus approach as the sundial) lives in `src/common/prayer.js`.
## Screen (v0.3)
## Screen (v0.4)
- Pure #000000 AMOLED background, including the list and prayer rows
- Larger 42px clock, 28px prayer names and 36px times
- Native vertically swipe-scrollable list: 80px rows in a 320×240px viewport
- Top/bottom spacers let the first and last prayers scroll to the center
- Fixed next-prayer countdown; lavender outline/text highlight the next prayer
- Normal system back button exits; no crown support assumed
- 15s refresh; no changes to prayer calculations
- Pure #000000 AMOLED background
- Larger 50px clock; no swipe instruction label
- Prayer names above their times, in fixed 104px native list rows
- Center magnification: prayer times grow continuously from 30px to 60px as
their row approaches the physical screen center; names grow from 20px to 28px
- Scroll viewport 320×264 at x73/y101, centered at y233; 80px end spacers
- Fixed next-prayer countdown below the list; lavender next-prayer highlight
- Glyph sizes change without changing row heights, avoiding scroll-position drift
- 15s clock refresh preserves scroll focus; calculation logic unchanged
- Normal system back exits; crown support not assumed
Build and automated tests pass; v0.3 scrolling/rendering needs an on-watch check.
`preview-0.3.png` is a static layout mock with illustrative times, not a watch screenshot.
Automated math/page/focus/layout tests and release build pass. The live scroll
magnification still needs an on-watch check. `preview-0.4.png` is a static layout
mock with illustrative times, not a device screenshot.
## Project layout
@@ -56,6 +60,7 @@ npm run release
node tests/prayer.cjs
node tests/page.cjs
node tests/amoled.cjs
node tests/focus.cjs
```
## Install