Implement the Pico CSS theme editor.

This commit is contained in:
2026-07-20 14:28:47 +02:00
parent 1d190d33c5
commit fe7dd82f33
20 changed files with 1033 additions and 161 deletions

View File

@@ -5,11 +5,10 @@ impl BdsApp {
match message {
Message::MainWindowLoaded(window_id) => {
self.main_window_id = window_id;
if self.active_post_uses_embedded_preview() {
self.sync_embedded_preview_for_active_post()
} else {
Task::none()
}
Task::batch([
self.sync_embedded_preview_for_active_post(),
self.sync_embedded_preview_for_style(),
])
}
Message::EmbeddedPreviewReady(result) => {
match result {
@@ -29,6 +28,24 @@ impl BdsApp {
}
Task::none()
}
Message::EmbeddedStylePreviewReady(result) => {
match result {
Ok(()) => {
let visible = self.active_style_uses_embedded_preview();
if let Some(preview) = &mut self.embedded_style_preview {
preview.controller.take_staged();
if let Some(url) = preview.current_url.as_deref() {
preview.controller.navigate(url);
}
preview.controller.set_visible(visible);
}
}
Err(error) => {
self.notify(ToastLevel::Error, &error);
}
}
Task::none()
}
_ => unreachable!("non-preview message routed to preview handler"),
}
}