feat(core): wire up status change notifications
This commit is contained in:
parent
a806e180e1
commit
93cb9680e6
|
@ -212,6 +212,8 @@ pub fn initialize_and_spawn(
|
||||||
let disable_options =
|
let disable_options =
|
||||||
process::middleware::disable::extract_disable_options(&*config_manager.default());
|
process::middleware::disable::extract_disable_options(&*config_manager.default());
|
||||||
|
|
||||||
|
let notification_manager = NotificationManager::new(&*ui_remote, default_config);
|
||||||
|
|
||||||
let mut processor = espanso_engine::process::default(
|
let mut processor = espanso_engine::process::default(
|
||||||
&matchers,
|
&matchers,
|
||||||
&config_manager,
|
&config_manager,
|
||||||
|
@ -229,6 +231,7 @@ pub fn initialize_and_spawn(
|
||||||
&config_manager,
|
&config_manager,
|
||||||
&modifier_state_store,
|
&modifier_state_store,
|
||||||
&combined_match_cache,
|
&combined_match_cache,
|
||||||
|
¬ification_manager,
|
||||||
);
|
);
|
||||||
|
|
||||||
let event_injector = EventInjectorAdapter::new(&*injector, &config_manager);
|
let event_injector = EventInjectorAdapter::new(&*injector, &config_manager);
|
||||||
|
@ -257,8 +260,6 @@ pub fn initialize_and_spawn(
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
let notification_manager = NotificationManager::new(&*ui_remote, default_config);
|
|
||||||
|
|
||||||
match start_reason.as_deref() {
|
match start_reason.as_deref() {
|
||||||
Some(flag) if flag == WORKER_START_REASON_CONFIG_CHANGED => {
|
Some(flag) if flag == WORKER_START_REASON_CONFIG_CHANGED => {
|
||||||
notification_manager.notify_config_reloaded(false);
|
notification_manager.notify_config_reloaded(false);
|
||||||
|
|
|
@ -54,3 +54,18 @@ impl<'a> NotificationManager<'a> {
|
||||||
self.notify("Updated keyboard layout!");
|
self.notify("Updated keyboard layout!");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
impl<'a> espanso_engine::process::NotificationManager for NotificationManager<'a> {
|
||||||
|
fn notify_status_change(&self, enabled: bool) {
|
||||||
|
// Don't notify the status change outside Linux for now
|
||||||
|
if !cfg!(target_os = "linux") {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if enabled {
|
||||||
|
self.notify("Espanso enabled!")
|
||||||
|
} else {
|
||||||
|
self.notify("Espanso disabled!")
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user