aboutsummaryrefslogtreecommitdiff
path: root/src/input.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/input.rs')
-rw-r--r--src/input.rs7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/input.rs b/src/input.rs
index 9e7267a9..2f442c34 100644
--- a/src/input.rs
+++ b/src/input.rs
@@ -9,6 +9,7 @@ use smithay::input::pointer::{AxisFrame, ButtonEvent, MotionEvent, RelativeMotio
use smithay::utils::SERIAL_COUNTER;
use crate::niri::Niri;
+use crate::utils::get_monotonic_time;
enum Action {
None,
@@ -101,6 +102,12 @@ impl Niri {
let _span = tracy_client::span!("process_input_event");
trace!("process_input_event");
+ // A bit of a hack, but animation end runs some logic (i.e. workspace clean-up) and it
+ // doesn't always trigger due to damage, etc. So run it here right before it might prove
+ // important. Besides, animations affect the input, so it's best to have up-to-date values
+ // here.
+ self.monitor_set.advance_animations(get_monotonic_time());
+
match event {
InputEvent::Keyboard { event, .. } => {
let serial = SERIAL_COUNTER.next_serial();