diff --git a/src/wayland/protocols/workspace/cosmic_v2.rs b/src/wayland/protocols/workspace/cosmic_v2.rs index a42f45c5..4b635b48 100644 --- a/src/wayland/protocols/workspace/cosmic_v2.rs +++ b/src/wayland/protocols/workspace/cosmic_v2.rs @@ -7,8 +7,7 @@ use cosmic_protocols::workspace::v2::server::{ use smithay::reexports::{ wayland_protocols::ext::workspace::v1::server::ext_workspace_handle_v1::ExtWorkspaceHandleV1, wayland_server::{ - backend::ClientData, Client, DataInit, Dispatch, DisplayHandle, GlobalDispatch, New, - Resource, Weak, + Client, DataInit, Dispatch, DisplayHandle, GlobalDispatch, New, Resource, Weak, }, }; use std::sync::Mutex; @@ -31,12 +30,7 @@ pub struct CosmicWorkspaceV2Data { impl GlobalDispatch for WorkspaceState where - D: GlobalDispatch - + Dispatch - + Dispatch - + WorkspaceHandler - + 'static, - ::Client: ClientData + WorkspaceClientHandler + 'static, + D: WorkspaceHandler, { fn bind( _state: &mut D, @@ -56,12 +50,7 @@ where impl Dispatch for WorkspaceState where - D: GlobalDispatch - + Dispatch - + Dispatch - + WorkspaceHandler - + 'static, - ::Client: ClientData + WorkspaceClientHandler + 'static, + D: WorkspaceHandler, { fn request( state: &mut D, @@ -117,12 +106,7 @@ where impl Dispatch for WorkspaceState where - D: GlobalDispatch - + Dispatch - + Dispatch - + WorkspaceHandler - + 'static, - ::Client: ClientData + WorkspaceClientHandler + 'static, + D: WorkspaceHandler, { fn request( state: &mut D, diff --git a/src/wayland/protocols/workspace/ext.rs b/src/wayland/protocols/workspace/ext.rs index d813a399..0e657d01 100644 --- a/src/wayland/protocols/workspace/ext.rs +++ b/src/wayland/protocols/workspace/ext.rs @@ -3,8 +3,8 @@ use cosmic_protocols::workspace::v2::server::zcosmic_workspace_handle_v2::ZcosmicWorkspaceHandleV2; use smithay::reexports::wayland_server::{ - backend::{ClientData, ClientId}, - Client, DataInit, Dispatch, DisplayHandle, GlobalDispatch, New, Resource, Weak, + backend::ClientId, Client, DataInit, Dispatch, DisplayHandle, GlobalDispatch, New, Resource, + Weak, }; use std::sync::Mutex; @@ -33,13 +33,7 @@ pub type WorkspaceData = Mutex; impl GlobalDispatch for WorkspaceState where - D: GlobalDispatch - + Dispatch - + Dispatch - + Dispatch - + WorkspaceHandler - + 'static, - ::Client: ClientData + WorkspaceClientHandler + 'static, + D: WorkspaceHandler, { fn bind( state: &mut D, @@ -65,13 +59,7 @@ where impl Dispatch for WorkspaceState where - D: GlobalDispatch - + Dispatch - + Dispatch - + Dispatch - + WorkspaceHandler - + 'static, - ::Client: ClientData + WorkspaceClientHandler + 'static, + D: WorkspaceHandler, { fn request( state: &mut D, @@ -116,13 +104,7 @@ where impl Dispatch for WorkspaceState where - D: GlobalDispatch - + Dispatch - + Dispatch - + Dispatch - + WorkspaceHandler - + 'static, - ::Client: ClientData + WorkspaceClientHandler + 'static, + D: WorkspaceHandler, { fn request( state: &mut D, @@ -177,13 +159,7 @@ where impl Dispatch for WorkspaceState where - D: GlobalDispatch - + Dispatch - + Dispatch - + Dispatch - + WorkspaceHandler - + 'static, - ::Client: ClientData + WorkspaceClientHandler + 'static, + D: WorkspaceHandler, { fn request( state: &mut D, @@ -289,13 +265,7 @@ pub(super) fn send_group_to_client( group: &mut WorkspaceGroup, ) -> bool where - D: GlobalDispatch - + Dispatch - + Dispatch - + Dispatch - + WorkspaceHandler - + 'static, - ::Client: ClientData + WorkspaceClientHandler + 'static, + D: WorkspaceHandler, { let (_, instance) = match group.ext_instances.iter_mut().find(|(m, _)| m == mngr) { Some(i) => i, @@ -374,13 +344,7 @@ fn send_workspace_to_client( workspace: &mut Workspace, ) -> bool where - D: GlobalDispatch - + Dispatch - + Dispatch - + Dispatch - + WorkspaceHandler - + 'static, - ::Client: ClientData + WorkspaceClientHandler + 'static, + D: WorkspaceHandler, { let (_, instance) = match workspace.ext_instances.iter_mut().find(|(m, _)| m == mngr) { Some(i) => i, diff --git a/src/wayland/protocols/workspace/mod.rs b/src/wayland/protocols/workspace/mod.rs index 10f36e05..2012265d 100644 --- a/src/wayland/protocols/workspace/mod.rs +++ b/src/wayland/protocols/workspace/mod.rs @@ -49,16 +49,7 @@ bitflags::bitflags! { #[derive(Debug)] pub struct WorkspaceState where - D: GlobalDispatch - + Dispatch - + Dispatch - + Dispatch - + GlobalDispatch - + Dispatch - + Dispatch - + WorkspaceHandler - + 'static, - ::Client: ClientData + WorkspaceClientHandler + 'static, + D: WorkspaceHandler, { dh: DisplayHandle, ext_global: GlobalId, @@ -69,8 +60,7 @@ where } pub struct WorkspaceUpdateGuard<'a, D>(&'a mut WorkspaceState) where - D: WorkspaceHandler + 'static, - ::Client: ClientData + WorkspaceClientHandler + 'static; + D: WorkspaceHandler; crate::utils::id_gen!(next_group_id, GROUP_ID, GROUP_IDS); crate::utils::id_gen!(next_workspace_id, WORKSPACE_ID, WORKSPACE_IDS); @@ -189,16 +179,7 @@ pub trait WorkspaceClientHandler { impl WorkspaceState where - D: GlobalDispatch - + Dispatch - + Dispatch - + Dispatch - + GlobalDispatch - + Dispatch - + Dispatch - + WorkspaceHandler - + 'static, - ::Client: ClientData + WorkspaceClientHandler + 'static, + D: WorkspaceHandler, { pub fn new(dh: &DisplayHandle, client_filter: F) -> WorkspaceState where @@ -366,15 +347,7 @@ where impl<'a, D> WorkspaceUpdateGuard<'a, D> where - D: Dispatch - + Dispatch - + Dispatch - + GlobalDispatch - + Dispatch - + Dispatch - + WorkspaceHandler - + 'static, - ::Client: ClientData + WorkspaceClientHandler + 'static, + D: WorkspaceHandler, { pub fn create_workspace_group(&mut self) -> WorkspaceGroupHandle { let id = next_group_id(); @@ -609,16 +582,7 @@ where impl<'a, D> Drop for WorkspaceUpdateGuard<'a, D> where - D: GlobalDispatch - + Dispatch - + Dispatch - + Dispatch - + GlobalDispatch - + Dispatch - + Dispatch - + WorkspaceHandler - + 'static, - ::Client: ClientData + WorkspaceClientHandler + 'static, + D: WorkspaceHandler, { fn drop(&mut self) { self.0.done();