diff options
| author | Kirill Chibisov <contact@kchibisov.com> | 2023-10-17 16:53:04 +0400 |
|---|---|---|
| committer | Ivan Molodetskikh <yalterz@gmail.com> | 2023-10-24 17:26:01 +0400 |
| commit | c6ec36f422c0b7e955bddcc7f783a963e313a8a7 (patch) | |
| tree | cc0e1b9074907a0dad00e844abcde72c208012c5 /src/handlers | |
| parent | 8a06bf1558ee697437ad048e525019e6813f724a (diff) | |
| download | niri-c6ec36f422c0b7e955bddcc7f783a963e313a8a7.tar.gz niri-c6ec36f422c0b7e955bddcc7f783a963e313a8a7.tar.bz2 niri-c6ec36f422c0b7e955bddcc7f783a963e313a8a7.zip | |
Update smithay to the latest git
This fixes IME handling.
Diffstat (limited to 'src/handlers')
| -rw-r--r-- | src/handlers/mod.rs | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/handlers/mod.rs b/src/handlers/mod.rs index 81ef9806..19742fcc 100644 --- a/src/handlers/mod.rs +++ b/src/handlers/mod.rs @@ -10,7 +10,7 @@ use std::thread; use smithay::backend::allocator::dmabuf::Dmabuf; use smithay::backend::renderer::ImportDma; -use smithay::desktop::PopupKind; +use smithay::desktop::{PopupKind, PopupManager}; use smithay::input::pointer::CursorImageStatus; use smithay::input::{Seat, SeatHandler, SeatState}; use smithay::output::Output; @@ -75,6 +75,11 @@ impl InputMethodHandler for State { warn!("error tracking ime popup {err:?}"); } } + fn dismiss_popup(&mut self, surface: PopupSurface) { + if let Some(parent) = surface.get_parent().map(|parent| parent.surface.clone()) { + let _ = PopupManager::dismiss_popup(&parent, &PopupKind::from(surface)); + } + } fn parent_geometry(&self, parent: &WlSurface) -> Rectangle<i32, Logical> { self.niri .layout |
