feat(ui): in dark mode, filled and floating buttons in cobalt itself, white on it

In dark mode the primary colour is cobalt lightened (#AEB9FF), readable as
text and thin marks on the dark surfaces, and filled buttons took it: Todo's
send button glared bright beside everything else; floating buttons took
Material's dark primary container. Both are cobalt itself now, white on it,
as in light mode (decision 6 of the developer's list, 9 Nov 2026); links,
tabs and switches keep the lighter tone. Filled icon buttons take no theme
of their own in Flutter (the icon buttons' theme is the plain ones' too),
so they take filledIconButtonStyle: Learn's study and send buttons,
Todo's send buttons and Locate me, Meditate's stop dictating.

Whats-New: In dark mode, filled buttons and the + button are cobalt with a white icon, no longer a bright light blue.
Whats-New-De: Im dunklen Modus sind gefüllte Schaltflächen und die +-Schaltfläche kobaltblau mit weißem Symbol statt grell hellblau.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Signed-off-by: Tizian 「ティツィアーン」 <raisondetredev@pm.me>
This commit is contained in:
Tizian 「ティツィアーン」 2026-11-09 23:23:13 +01:00
commit cc7511f060
Signed by: raisondetredev
GPG key ID: 07F6FCF405488B64
3 changed files with 122 additions and 2 deletions

View file

@ -364,6 +364,7 @@ class _CommentsSheetState() extends State<_CommentsSheet> {
),
if (_focus.hasFocus || !_draft.isBlank)
IconButton.filled(
style: filledIconButtonStyle(context),
key: commentSendKey,
tooltip: l10n.commentSend,
icon: const Icon(LucideIcons.arrowUp),

View file

@ -873,6 +873,7 @@ class _LocationPickerState() extends State<LocationPicker> {
onPressed: () => _zoom(-1),
),
IconButton.filled(
style: filledIconButtonStyle(context),
tooltip: l10n.locationMine,
icon: const Icon(LucideIcons.locateFixed),
onPressed: () => unawaited(_locateAsked()),

View file

@ -788,12 +788,14 @@ class _QuickAddState() extends State<_QuickAdd> {
}
if (_title.text.trim().isNotEmpty || !_dictation.supported) {
return IconButton.filled(
style: filledIconButtonStyle(context),
tooltip: l10n.taskAdd,
icon: const Icon(LucideIcons.arrowUp),
onPressed: canSend ? _add : null,
);
}
return IconButton.filled(
style: filledIconButtonStyle(context),
tooltip: l10n.quickAddSpeak,
icon: const Icon(LucideIcons.mic),
onPressed: () => unawaited(_listen()),