mirror of
https://github.com/narrrl/proton-stream.git
synced 2026-11-03 16:41:26 +01:00
feat(app,android,ios): display type, artwork fade-in, shimmer, lifting tiles and paged shelves
A first pass at making the three clients look like a streaming app rather than a file browser, with no new data behind it. - Type: a Hero rung (34) set in Inter Display Bold, the optical size Inter draws for large text, for the banner's name and a title page's name where no logo stands in. Desktop `Role::Hero` and `theme::display`; Android and iOS `displayLarge`, at a tighter 1.1 leading. The font has its private use mappings stripped like the other two cuts. - Artwork fades in over its skeleton on Android and iOS, as it already did on desktop cards; art already decoded draws at once. Desktop episode stills and logos fade in too. - Skeletons shimmer: a soft diagonal highlight instead of a pulse. - Desktop tiles lift towards the viewer under the pointer, capped so a lifted tile never reaches its neighbour, and keyboard focus gets a ring of its own. - Desktop shelves share one `ui::shelf`: edges fade into the page and, under the pointer, round buttons page the row along. - Genres are chips on Android and iOS; quality (4K, HDR, 10-bit, Dual audio) moves out of the facts line into small outlined marks on all three. - Desktop title page and hero buttons use a tonal style beside the accent one, and the player's top bar a dark glass style, instead of egui's stock buttons. Episode numbers leave monospace for the type ramp. - The phone players' top and bottom bars are gradients rather than flat bands, and a double-tap seek is felt as well as seen.
This commit is contained in:
1 parent
3ebfd1a57b
commit
255e463fc8
33 files changed
+886
-290
No files matched your search
@@ -20,12 +20,13 @@ is the contract, and each side's copy is asserted against it by a test.
|
||||
|
||||
## Type
|
||||
|
||||
Nine rungs. The desktop names them; Android restates them because Material's own
|
||||
Ten rungs. The desktop names them; Android restates them because Material's own
|
||||
scale is a different one (`displayLarge` is 57sp, which is a size for a lock
|
||||
screen and not for anything in a library grid).
|
||||
|
||||
| Role | Size | What it is |
|
||||
|---|---|---|
|
||||
| Hero | 34 | the banner's name and a title page's name, where no logo stands in |
|
||||
| Display | 26 | the name of the thing you are looking at, once per page |
|
||||
| Title | 20 | an empty state, or a page heading with no display line |
|
||||
| Heading | 18 | the brand in the nav bar; a dialog's heading |
|
||||
@@ -39,8 +40,11 @@ screen and not for anything in a library grid).
|
||||
Weight and leading are each side's own. The desktop bundles Inter
|
||||
(`pstr-app/assets/fonts`, OFL) and sets Display, Title, Heading and Section in
|
||||
its semibold cut, which egui sees as a family of its own (`theme::semibold`);
|
||||
everything below Section is the regular cut. Compose derives line height as
|
||||
1.35 × size rather than naming it nine more times.
|
||||
everything below Section is the regular cut. Hero is set in Inter Display Bold,
|
||||
the optical size Inter draws for large text (`theme::display`); Android and iOS
|
||||
map it to `displayLarge`. Compose derives line height as 1.35 × size rather
|
||||
than naming it ten more times, except Hero at 1.1, where the text leading
|
||||
pushes a two-line name apart.
|
||||
|
||||
Icons on the desktop come from the Phosphor icon font (`egui-phosphor`,
|
||||
regular weight), installed right behind Inter so an icon can sit inside an
|
||||
|
||||
+4
-1
@@ -22,6 +22,9 @@ show it once.
|
||||
genre with at least three titles.
|
||||
- **All titles** is the full grid. Choose a filter and a sort order above it.
|
||||
|
||||
Rows that run past the window fade out at the edge. Point at a row to show the arrows at its
|
||||
ends, which move it along by a page.
|
||||
|
||||
| Filters | Sort orders |
|
||||
|---|---|
|
||||
| All, Series, Films, Watching, Not started, Downloaded | A – Z, Recently watched, Recently added, Newest, Highest rated, Most popular |
|
||||
@@ -78,7 +81,7 @@ Click a title to open its page. **Esc** goes back.
|
||||
it runs in the line under its name.
|
||||
- A title with no wide picture shows its poster blurred across the top of the page instead, and
|
||||
on the library's banner the poster itself beside it.
|
||||
- The line under the name also says what most of the files are, when their names say it: **4K**,
|
||||
- Small marks under the name say what most of the files are, when their names say it: **4K**,
|
||||
**1080p**, **HDR**, **10-bit** or **Dual audio**.
|
||||
|
||||
An episode counts as watched once you have seen 90% of it.
|
||||
|
||||
Reference in new issue
Block a user