mirror of
https://github.com/wez/wezterm.git
synced 2024-12-24 22:01:47 +03:00
parent
bbadcb90e0
commit
f5f393bf2c
@ -51,6 +51,8 @@ pub enum Alert {
|
|||||||
/// When the title, or something that likely influences the title,
|
/// When the title, or something that likely influences the title,
|
||||||
/// has been changed
|
/// has been changed
|
||||||
TitleMaybeChanged,
|
TitleMaybeChanged,
|
||||||
|
/// When the color palette has been updated
|
||||||
|
PaletteChanged,
|
||||||
}
|
}
|
||||||
|
|
||||||
pub trait AlertHandler {
|
pub trait AlertHandler {
|
||||||
|
@ -3268,6 +3268,9 @@ impl<'a> Performer<'a> {
|
|||||||
self.screen.activate_primary_screen();
|
self.screen.activate_primary_screen();
|
||||||
self.erase_in_display(EraseInDisplay::EraseScrollback);
|
self.erase_in_display(EraseInDisplay::EraseScrollback);
|
||||||
self.erase_in_display(EraseInDisplay::EraseDisplay);
|
self.erase_in_display(EraseInDisplay::EraseDisplay);
|
||||||
|
if let Some(handler) = self.alert_handler.as_mut() {
|
||||||
|
handler.alert(Alert::PaletteChanged);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
_ => log::warn!("ESC: unhandled {:?}", esc),
|
_ => log::warn!("ESC: unhandled {:?}", esc),
|
||||||
@ -3435,6 +3438,9 @@ impl<'a> Performer<'a> {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if let Some(handler) = self.alert_handler.as_mut() {
|
||||||
|
handler.alert(Alert::PaletteChanged);
|
||||||
|
}
|
||||||
self.make_all_lines_dirty();
|
self.make_all_lines_dirty();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -3455,6 +3461,9 @@ impl<'a> Performer<'a> {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if let Some(handler) = self.alert_handler.as_mut() {
|
||||||
|
handler.alert(Alert::PaletteChanged);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
OperatingSystemCommand::ChangeDynamicColors(first_color, colors) => {
|
OperatingSystemCommand::ChangeDynamicColors(first_color, colors) => {
|
||||||
@ -3508,6 +3517,9 @@ impl<'a> Performer<'a> {
|
|||||||
}
|
}
|
||||||
idx += 1;
|
idx += 1;
|
||||||
}
|
}
|
||||||
|
if let Some(handler) = self.alert_handler.as_mut() {
|
||||||
|
handler.alert(Alert::PaletteChanged);
|
||||||
|
}
|
||||||
self.make_all_lines_dirty();
|
self.make_all_lines_dirty();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -3544,6 +3556,9 @@ impl<'a> Performer<'a> {
|
|||||||
| DynamicColorNumber::TektronixCursorColor => {}
|
| DynamicColorNumber::TektronixCursorColor => {}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
if let Some(handler) = self.alert_handler.as_mut() {
|
||||||
|
handler.alert(Alert::PaletteChanged);
|
||||||
|
}
|
||||||
self.make_all_lines_dirty();
|
self.make_all_lines_dirty();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -65,6 +65,10 @@ impl GuiFrontEnd {
|
|||||||
log::info!("Ding! (this is the bell)");
|
log::info!("Ding! (this is the bell)");
|
||||||
}
|
}
|
||||||
MuxNotification::Alert {
|
MuxNotification::Alert {
|
||||||
|
pane_id: _,
|
||||||
|
alert: Alert::PaletteChanged,
|
||||||
|
}
|
||||||
|
| MuxNotification::Alert {
|
||||||
pane_id: _,
|
pane_id: _,
|
||||||
alert: Alert::TitleMaybeChanged,
|
alert: Alert::TitleMaybeChanged,
|
||||||
} => {}
|
} => {}
|
||||||
|
@ -757,6 +757,12 @@ impl TermWindow {
|
|||||||
} => {
|
} => {
|
||||||
self.update_title();
|
self.update_title();
|
||||||
}
|
}
|
||||||
|
MuxNotification::Alert {
|
||||||
|
alert: Alert::PaletteChanged,
|
||||||
|
pane_id,
|
||||||
|
} => {
|
||||||
|
self.mux_pane_output_event(pane_id);
|
||||||
|
}
|
||||||
MuxNotification::PaneOutput(pane_id) => {
|
MuxNotification::PaneOutput(pane_id) => {
|
||||||
self.mux_pane_output_event(pane_id);
|
self.mux_pane_output_event(pane_id);
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user