feat: support xdg toplevel icons

This commit is contained in:
Samuel Onoja committed 2026-09-25 02:22:44 +01:00
1 parent dbabe95a5e
commit 1a024e580b
2 files changed
+8

No files matched your search

+4
View File
@@ -37,6 +37,7 @@ use smithay::{
},
tablet_manager::TabletSeatHandler,
xdg_foreign::{XdgForeignHandler, XdgForeignState},
xdg_toplevel_icon::XdgToplevelIconHandler,
},
};
@@ -233,6 +234,8 @@ impl XdgForeignHandler for Ferese {
}
}
impl XdgToplevelIconHandler for Ferese {}
smithay::delegate_compositor!(Ferese);
smithay::delegate_cursor_shape!(Ferese);
smithay::delegate_data_device!(Ferese);
@@ -257,3 +260,4 @@ smithay::delegate_xdg_activation!(Ferese);
smithay::delegate_xdg_decoration!(Ferese);
smithay::delegate_xdg_foreign!(Ferese);
smithay::delegate_xdg_shell!(Ferese);
smithay::delegate_xdg_toplevel_icon!(Ferese);
+4
View File
@@ -68,6 +68,7 @@ use smithay::{
viewporter::ViewporterState,
xdg_activation::XdgActivationState,
xdg_foreign::XdgForeignState,
xdg_toplevel_icon::XdgToplevelIconManager,
},
};
@@ -126,6 +127,7 @@ pub struct Ferese {
pub xdg_activation_state: XdgActivationState,
pub xdg_foreign_state: XdgForeignState,
pub xdg_shell_state: XdgShellState,
pub xdg_toplevel_icon_manager: XdgToplevelIconManager,
}
pub struct RuntimeConfig {
@@ -321,6 +323,7 @@ impl Ferese {
let layer_shell_state = WlrLayerShellState::new::<Self>(&display_handle);
let xdg_activation_state = XdgActivationState::new::<Self>(&display_handle);
let xdg_foreign_state = XdgForeignState::new::<Self>(&display_handle);
let xdg_toplevel_icon_manager = XdgToplevelIconManager::new::<Self>(&display_handle);
let mut seat_state = SeatState::new();
let mut seat = seat_state.new_wl_seat(&display_handle, "ferese-winit");
seat.add_keyboard(Default::default(), 200, 25)?;
@@ -388,6 +391,7 @@ impl Ferese {
xdg_activation_state,
xdg_foreign_state,
xdg_shell_state,
xdg_toplevel_icon_manager,
})
}