Publish theme snapshots through IPC from explicit live state
This commit is contained in:
1 parent
8195b82073
commit
ccf7497b6f
23 files changed
+287
-130
No files matched your search
@@ -80,7 +80,7 @@ fn main() -> iced::Result {
|
||||
|
||||
#[derive(Clone)]
|
||||
enum Message {
|
||||
ThemeChanged(Box<ferese_config::theme::Snapshot>),
|
||||
ThemeChanged(Box<ferese_ipc::theme::Snapshot>),
|
||||
WallpaperLoaded(u64, Result<widget::image::Handle, String>),
|
||||
Event(Box<Event>),
|
||||
Input(Zeroizing<String>),
|
||||
|
||||
@@ -6,6 +6,7 @@ license.workspace = true
|
||||
rust-version.workspace = true
|
||||
|
||||
[dependencies]
|
||||
ferese-ipc = { path = "../../crates/ferese-ipc" }
|
||||
ferese-config = { path = "../../crates/ferese-config" }
|
||||
ferese-theme = { path = "../../crates/ferese-theme" }
|
||||
glib = "0.21.5"
|
||||
|
||||
@@ -72,7 +72,7 @@ impl Appearance {
|
||||
|
||||
#[derive(Clone)]
|
||||
enum Message {
|
||||
ThemeChanged(Box<ferese_config::theme::Snapshot>),
|
||||
ThemeChanged(Box<ferese_ipc::theme::Snapshot>),
|
||||
WindowOpened(cosmic::iced::window::Id),
|
||||
MaterialAttached(Result<ferese_theme::material::ModalMaterial, String>),
|
||||
Tick,
|
||||
|
||||
@@ -81,7 +81,7 @@ enum Message {
|
||||
RefreshDisplays,
|
||||
DisplaysLoaded(Result<Vec<displays::Display>, String>),
|
||||
RefreshRate(String, displays::Mode, bool),
|
||||
ThemeChanged(Box<ferese_config::theme::Snapshot>),
|
||||
ThemeChanged(Box<ferese_ipc::theme::Snapshot>),
|
||||
DragWindow,
|
||||
Page(Page),
|
||||
PagePresented(Page),
|
||||
@@ -151,7 +151,7 @@ struct App {
|
||||
native_palette: visuals::Palette,
|
||||
family_ids: std::sync::Arc<Vec<String>>,
|
||||
gallery_focus: Option<(String, Option<ferese_config::theme::Appearance>)>,
|
||||
resolved: ferese_config::theme::Snapshot,
|
||||
resolved: ferese_ipc::theme::Snapshot,
|
||||
undo_revision: u64,
|
||||
auto_details: bool,
|
||||
advanced_theme: bool,
|
||||
|
||||
@@ -297,7 +297,7 @@ mod tests {
|
||||
let theme = ferese_config::theme::ResolvedTheme {
|
||||
appearance: preset.appearance,
|
||||
tokens,
|
||||
..Default::default()
|
||||
..ferese_config::theme::default_theme()
|
||||
};
|
||||
let palette = Palette::from_resolved(&theme);
|
||||
for background in [palette.background, palette.sidebar, palette.card] {
|
||||
@@ -348,7 +348,7 @@ mod tests {
|
||||
let resolved = ferese_config::theme::ResolvedTheme {
|
||||
appearance: item.appearance,
|
||||
tokens: ferese_config::theme::preset(item.id, item.appearance).unwrap(),
|
||||
..Default::default()
|
||||
..ferese_config::theme::default_theme()
|
||||
};
|
||||
assert_eq!(
|
||||
Palette::from_resolved(&resolved).native_theme().cosmic().is_dark,
|
||||
|
||||
@@ -223,7 +223,7 @@ struct OutputSurfaces {
|
||||
|
||||
#[derive(Clone, Debug)]
|
||||
enum Message {
|
||||
ThemeChanged(Box<ferese_config::theme::Snapshot>),
|
||||
ThemeChanged(Box<ferese_ipc::theme::Snapshot>),
|
||||
ThemeMode(ferese_config::theme::Mode),
|
||||
ThemeModeSet(Result<(), String>),
|
||||
BeginNoteEdit(String),
|
||||
|
||||
Reference in new issue
Block a user