Files
simplex-chat/apps/multiplatform/common
another-simple-pixel bd9d31c5f4 toolbar: respect per-chat theme override
The toolbar background was always computed from the global CurrentColors
state flow, so a chat with a custom theme override (its own wallpaper or
color scheme) showed a toolbar tinted to the global Appearance scheme
rather than the chat's. On desktop two-pane the chatlist toolbar sat
next to the chat toolbar in different colors; on Android the chat info
and chat-customize modals kept the global tint above and below the
chat-themed content.

Expose the current theme as a new LocalActiveTheme composition local,
provided by SimpleXTheme (global scope) and SimpleXThemeOverride (chat
scope). panelBackgroundColor reads everything — both the wallpaper-hue
tint and the elevation fallback — from this local, so it tints to
whatever scope it renders in. A small ActiveChatThemeProvider helper
propagates the active chat's effective theme to UI surfaces that sit
outside the chat's SimpleXThemeOverride: the chatlist column on desktop,
and the fullscreen modal stack on Android.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-13 13:25:21 -07:00
..