mirror of
https://github.com/simplex-chat/simplex-chat.git
synced 2026-05-15 03:46:23 +00:00
bd9d31c5f4
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>