diff --git a/src/input_handler/pointer.rs b/src/input_handler/pointer.rs index 5fcc0ec..805af17 100644 --- a/src/input_handler/pointer.rs +++ b/src/input_handler/pointer.rs @@ -7,9 +7,7 @@ use bevy::{ window::{CursorEntered, CursorLeft, CursorMoved, Window, WindowEvent}, }; use smithay_client_toolkit::{ - delegate_pointer, - reexports::{client::Proxy, csd_frame::WindowState}, - seat::pointer::PointerHandler, + delegate_pointer, reexports::client::Proxy, seat::pointer::PointerHandler, }; use crate::{surface_handler::WaylandSurfaces, WaylandState}; @@ -101,6 +99,27 @@ impl PointerHandler for WaylandState { .into(), }; let window_event: WindowEvent = pointer_event; + match window_event.clone() { + WindowEvent::CursorEntered(e) => { + self.world_mut().send_event(e); + } + WindowEvent::CursorLeft(e) => { + self.world_mut().send_event(e); + } + WindowEvent::CursorMoved(e) => { + self.world_mut().send_event(e); + } + WindowEvent::MouseButtonInput(e) => { + self.world_mut().send_event(e); + } + WindowEvent::MouseMotion(e) => { + self.world_mut().send_event(e); + } + WindowEvent::MouseWheel(e) => { + self.world_mut().send_event(e); + } + _ => {} + } self.world_mut().send_event::(window_event); } } diff --git a/src/lib.rs b/src/lib.rs index 180d8ff..ffd9b19 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -1,12 +1,11 @@ use bevy::{app::PluginsState, prelude::*}; use smithay_client_toolkit::{ delegate_registry, - globals::ProvidesBoundGlobal, output::OutputState, reexports::{ calloop::EventLoop, calloop_wayland_source::WaylandSource, - client::{globals::registry_queue_init, protocol::wl_compositor::WlCompositor, Connection}, + client::{globals::registry_queue_init, Connection}, }, registry::{ProvidesRegistryState, RegistryState}, registry_handlers,