1
0
Fork 0
forked from wry/wry

toplevel-drag: move render logic into toplevel drag

This commit is contained in:
Julian Orth 2024-07-10 20:01:59 +02:00
parent 50b6999b0c
commit ac5a5ca949
3 changed files with 19 additions and 11 deletions

View file

@ -7,6 +7,8 @@ use {
},
leaks::Tracker,
object::{Object, Version},
rect::Rect,
renderer::Renderer,
utils::clonecell::CloneCell,
wire::{xdg_toplevel_drag_v1::*, XdgToplevelDragV1Id},
},
@ -49,6 +51,15 @@ impl XdgToplevelDragV1 {
tl.drag.take();
}
}
pub fn render(&self, renderer: &mut Renderer<'_>, cursor_rect: &Rect, x: i32, y: i32) {
if let Some(tl) = self.toplevel.get() {
if tl.xdg.surface.buffer.get().is_some() {
let (x, y) = cursor_rect.translate(x - self.x_off.get(), y - self.y_off.get());
renderer.render_xdg_surface(&tl.xdg, x, y, None)
}
}
}
}
impl XdgToplevelDragV1RequestHandler for XdgToplevelDragV1 {