parent
970728d0d9
commit
03368548ba
1 changed files with 10 additions and 7 deletions
|
|
@ -1373,34 +1373,37 @@ impl Event for zwp_tablet_tool_v2::Event {
|
||||||
} => {
|
} => {
|
||||||
let mut cmd = CommandBuffer::new();
|
let mut cmd = CommandBuffer::new();
|
||||||
{
|
{
|
||||||
|
let connection = &mut state.connection;
|
||||||
|
let world = &mut state.inner.world;
|
||||||
|
|
||||||
let Some(mut query) = surface.data().copied().and_then(|key| {
|
let Some(mut query) = surface.data().copied().and_then(|key| {
|
||||||
state
|
world
|
||||||
.world
|
.query_one::<(&WlSurface, &SurfaceScaleFactor, &x::Window)>(key)
|
||||||
.query_one::<(&WlSurface, &SurfaceScaleFactor)>(key)
|
|
||||||
.ok()
|
.ok()
|
||||||
}) else {
|
}) else {
|
||||||
warn!("tablet tool proximity_in failed: stale surface");
|
warn!("tablet tool proximity_in failed: stale surface");
|
||||||
return;
|
return;
|
||||||
};
|
};
|
||||||
let (surface, scale) = query.get().unwrap();
|
let (surface, scale, window) = query.get().unwrap();
|
||||||
cmd.insert(target, (*scale,));
|
cmd.insert(target, (*scale,));
|
||||||
|
|
||||||
let Some(s_tablet) =
|
let Some(s_tablet) =
|
||||||
tablet
|
tablet
|
||||||
.data()
|
.data()
|
||||||
.and_then(|key: &LateInitObjectKey<TabletClient>| {
|
.and_then(|key: &LateInitObjectKey<TabletClient>| {
|
||||||
state.world.get::<&TabletServer>(key.get()).ok()
|
world.get::<&TabletServer>(key.get()).ok()
|
||||||
})
|
})
|
||||||
else {
|
else {
|
||||||
warn!("tablet tool proximity_in failed: stale tablet");
|
warn!("tablet tool proximity_in failed: stale tablet");
|
||||||
return;
|
return;
|
||||||
};
|
};
|
||||||
|
|
||||||
state
|
world
|
||||||
.world
|
|
||||||
.get::<&TabletToolServer>(target)
|
.get::<&TabletToolServer>(target)
|
||||||
.unwrap()
|
.unwrap()
|
||||||
.proximity_in(serial, &s_tablet, surface);
|
.proximity_in(serial, &s_tablet, surface);
|
||||||
|
|
||||||
|
connection.raise_to_top(*window);
|
||||||
}
|
}
|
||||||
cmd.run_on(&mut state.world);
|
cmd.run_on(&mut state.world);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue