Reduce Settings page and config reload overhead
Mount nearby shortcut and theme rows, preserve gallery keyboard navigation, reset page scrolling, and reuse native themes during palette transitions. Prepare and deduplicate live config reloads on a worker and apply only changed runtime sections. Align pointer focus and overview selection on overlapping outputs, add regression coverage, and clean up workspace Clippy warnings.
This commit is contained in:
1 parent
629414e0fb
commit
647eaf4ad9
23 files changed
+1098
-220
No files matched your search
@@ -96,6 +96,17 @@ fn main() -> Result<(), Box<dyn Error>> {
|
||||
let display = Display::new()?;
|
||||
let mut state = Ferese::new(&mut event_loop, display, runtime)?;
|
||||
state.config_source = initial_source.filter(|source| source.len() <= 60 * 1024);
|
||||
state.config_sections = state
|
||||
.config_source
|
||||
.as_deref()
|
||||
.and_then(|source| ferese_config::Document::parse(source).ok())
|
||||
.map(|document| {
|
||||
let mut value = document.value().clone();
|
||||
if let Some(object) = value.as_object_mut() {
|
||||
object.remove("theme");
|
||||
}
|
||||
value
|
||||
});
|
||||
theme::init(&mut event_loop, &mut state, candidate)?;
|
||||
resume::init(&mut event_loop)?;
|
||||
overview::init_font_loader(&mut event_loop, &mut state)?;
|
||||
|
||||
Reference in new issue
Block a user