Skip to content

Make e-ink a responsive theme and disable UI motion - #24

Merged
Eoic merged 3 commits into
masterfrom
feature/eink-theme
Sep 6, 2026
Merged

Make e-ink a responsive theme and disable UI motion#24
Eoic merged 3 commits into
masterfrom
feature/eink-theme

Conversation

@Eoic

@Eoic Eoic commented Sep 6, 2026

Copy link
Copy Markdown
Member

Summary

Selecting e-ink previously forced mobile navigation even on large screens. E-ink now behaves as a theme: the current route and screen-width layout stay intact, while controls use stronger monochrome contrast and borders.

  • Apply a shared motion policy to overlays, navigation, charts, loading indicators, image fades, and interactive controls. Preserve keyboard focus and actual progress updates.
  • Use static calendar controls and instant drawer transitions where Flutter's built-in animations cannot be disabled through the theme.
  • Keep input labels above fields, snap focus borders between states, and remove hint fades. Preserve native text, selection, focus, and validation; light and dark retain their normal animations.
  • Remove the separate e-ink navigation shell and old e-ink-only sizing overrides. Document the theme and motion helpers.

Testing

Completed locally:

  • flutter test --no-pub: 1,145 passed, 10 skipped.
  • flutter analyze --no-pub: no issues.
  • flutter build web --release --no-pub: succeeded.
  • git diff --check: passed.

Regression coverage includes layouts at 390, 850, and 1440 pixels; theme changes during animations; overlays; date and range selection; drawers; rendered toggle states; repeated keyboard interaction; and pixel comparisons of input focus/blur.

To review manually, switch between light, dark, and e-ink at phone and desktop widths. Check that navigation stays in place, then open dialogs/drawers, edit dates, toggle controls, and focus/blur text fields. Confirm e-ink transitions snap while light/dark still animate.

UI evidence

No screenshots attached. Automated layout and rendered-pixel checks are included in app/test/themes/ and app/test/widgets/.

Compatibility and migration

No data migrations or dependency changes. Existing theme preferences remain supported.

Notes

See app/docs/eink-theme.md for the shared motion helpers and conventions for future UI additions.

Checklist

  • The branch, commits, and pull request title follow the repository conventions.
  • The change is complete and limited to the ticket's scope.
  • Relevant tests have been added or updated.
  • Formatting, analysis, and tests pass.
  • Documentation, UI evidence, and migration notes are included where relevant.
  • No credentials, personal data, copyrighted fixtures, or unrelated generated files are included.
  • The branch is up to date with its target branch.

Copilot AI lite review requested due to automatic review settings September 6, 2026 00:02

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@Eoic
Eoic merged commit da72c8c into master Sep 6, 2026
1 check passed
@Eoic
Eoic deleted the feature/eink-theme branch September 6, 2026 00:08
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.

2 participants