refactor(wayland): naming conventions

This commit is contained in:
Nova
2025-09-06 15:09:39 -07:00
parent f44abad5b0
commit 053d468035
3 changed files with 70 additions and 50 deletions

View File

@@ -34,7 +34,7 @@ impl XdgBackend {
fn surface_from_id(&self, id: SurfaceId) -> Option<Arc<Surface>> {
match id {
SurfaceId::Toplevel(_) => Some(self.toplevel().surface()),
SurfaceId::Toplevel(_) => Some(self.toplevel().wl_surface()),
SurfaceId::Child(_) => None,
}
}
@@ -42,7 +42,7 @@ impl XdgBackend {
impl Backend for XdgBackend {
fn start_data(&self) -> Result<PanelItemInitData> {
let surface_state = self.toplevel().surface().current_state();
let surface_state = self.toplevel().wl_surface().current_state();
let size = surface_state
.buffer
@@ -84,7 +84,7 @@ impl Backend for XdgBackend {
fn close_toplevel(&self) {
let _ = self
.toplevel()
.surface()
.wl_surface()
.message_sink
.send(Message::CloseToplevel(self.toplevel().clone()));
}
@@ -92,7 +92,7 @@ impl Backend for XdgBackend {
fn auto_size_toplevel(&self) {
let _ = self
.toplevel()
.surface()
.wl_surface()
.message_sink
.send(Message::ResizeToplevel {
toplevel: self.toplevel().clone(),
@@ -103,7 +103,7 @@ impl Backend for XdgBackend {
fn set_toplevel_size(&self, size: Vector2<u32>) {
let _ = self
.toplevel()
.surface()
.wl_surface()
.message_sink
.send(Message::ResizeToplevel {
toplevel: self.toplevel().clone(),
@@ -114,7 +114,7 @@ impl Backend for XdgBackend {
fn set_toplevel_focused_visuals(&self, focused: bool) {
let _ = self
.toplevel()
.surface()
.wl_surface()
.message_sink
.send(Message::SetToplevelVisualActive {
toplevel: self.toplevel().clone(),
@@ -124,21 +124,29 @@ impl Backend for XdgBackend {
fn pointer_motion(&self, surface: &SurfaceId, position: Vector2<f32>) {
if let Some(surface) = self.surface_from_id(surface.clone()) {
let _ = self.toplevel().surface().message_sink.send(Message::Seat(
crate::wayland::core::seat::SeatMessage::PointerMotion { surface, position },
));
let _ = self
.toplevel()
.wl_surface()
.message_sink
.send(Message::Seat(
crate::wayland::core::seat::SeatMessage::PointerMotion { surface, position },
));
}
}
fn pointer_button(&self, surface: &SurfaceId, button: u32, pressed: bool) {
if let Some(surface) = self.surface_from_id(surface.clone()) {
let _ = self.toplevel().surface().message_sink.send(Message::Seat(
crate::wayland::core::seat::SeatMessage::PointerButton {
surface,
button,
pressed,
},
));
let _ = self
.toplevel()
.wl_surface()
.message_sink
.send(Message::Seat(
crate::wayland::core::seat::SeatMessage::PointerButton {
surface,
button,
pressed,
},
));
}
}
@@ -149,13 +157,17 @@ impl Backend for XdgBackend {
scroll_steps: Option<Vector2<f32>>,
) {
if let Some(surface) = self.surface_from_id(surface.clone()) {
let _ = self.toplevel().surface().message_sink.send(Message::Seat(
crate::wayland::core::seat::SeatMessage::PointerScroll {
surface,
scroll_distance,
scroll_steps,
},
));
let _ = self
.toplevel()
.wl_surface()
.message_sink
.send(Message::Seat(
crate::wayland::core::seat::SeatMessage::PointerScroll {
surface,
scroll_distance,
scroll_steps,
},
));
}
}
@@ -166,14 +178,18 @@ impl Backend for XdgBackend {
if pressed { "pressed" } else { "released" }
);
if let Some(surface) = self.surface_from_id(surface.clone()) {
let _ = self.toplevel().surface().message_sink.send(Message::Seat(
crate::wayland::core::seat::SeatMessage::KeyboardKey {
surface,
keymap_id,
key,
pressed,
},
));
let _ = self
.toplevel()
.wl_surface()
.message_sink
.send(Message::Seat(
crate::wayland::core::seat::SeatMessage::KeyboardKey {
surface,
keymap_id,
key,
pressed,
},
));
}
}
@@ -185,13 +201,17 @@ impl Backend for XdgBackend {
position.y
);
if let Some(surface) = self.surface_from_id(surface.clone()) {
let _ = self.toplevel().surface().message_sink.send(Message::Seat(
crate::wayland::core::seat::SeatMessage::TouchDown {
surface,
id,
position,
},
));
let _ = self
.toplevel()
.wl_surface()
.message_sink
.send(Message::Seat(
crate::wayland::core::seat::SeatMessage::TouchDown {
surface,
id,
position,
},
));
}
}
@@ -202,7 +222,7 @@ impl Backend for XdgBackend {
position.x,
position.y
);
let surface = self.toplevel().surface();
let surface = self.toplevel().wl_surface();
let _ = surface.message_sink.send(Message::Seat(
crate::wayland::core::seat::SeatMessage::TouchMove { id, position },
));
@@ -210,7 +230,7 @@ impl Backend for XdgBackend {
fn touch_up(&self, id: u32) {
tracing::debug!("Backend: Touch up {}", id);
let surface = self.toplevel().surface();
let surface = self.toplevel().wl_surface();
let _ = surface.message_sink.send(Message::Seat(
crate::wayland::core::seat::SeatMessage::TouchUp { id },
));
@@ -218,7 +238,7 @@ impl Backend for XdgBackend {
fn reset_input(&self) {
tracing::debug!("Backend: Reset input");
let surface = self.toplevel().surface();
let surface = self.toplevel().wl_surface();
let _ = surface.message_sink.send(Message::Seat(
crate::wayland::core::seat::SeatMessage::Reset,
));

View File

@@ -1,4 +1,4 @@
use super::{popup::Popup, positioner::Positioner, toplevel::Mapped};
use super::{popup::Popup, positioner::Positioner, toplevel::MappedInner};
use crate::wayland::util::ClientExt;
use crate::wayland::{
core::surface::SurfaceRole,
@@ -152,7 +152,7 @@ impl XdgSurface for Surface {
&& configured.load(std::sync::atomic::Ordering::SeqCst)
&& has_valid_buffer
{
mapped_lock.replace(Mapped::create(toplevel.clone(), pid));
mapped_lock.replace(MappedInner::create(toplevel.clone(), pid));
return false;
}
true

View File

@@ -17,11 +17,11 @@ use waynest::{
};
#[derive(Debug)]
pub struct Mapped {
pub struct MappedInner {
pub panel_item_node: Arc<Node>,
pub _panel_item: Arc<PanelItem<XdgBackend>>,
}
impl Mapped {
impl MappedInner {
pub fn create(toplevel: Arc<Toplevel>, pid: Option<i32>) -> Self {
let (panel_item_node, _panel_item) =
PanelItem::create(Box::new(XdgBackend::new(toplevel)), pid);
@@ -60,7 +60,7 @@ pub struct Toplevel {
pub id: ObjectId,
wl_surface: Weak<Surface>,
xdg_surface: Weak<super::surface::Surface>,
pub mapped: Mutex<Option<Mapped>>,
pub mapped: Mutex<Option<MappedInner>>,
data: Mutex<ToplevelData>,
}
impl Toplevel {
@@ -80,7 +80,7 @@ impl Toplevel {
}
}
pub fn surface(&self) -> Arc<Surface> {
pub fn wl_surface(&self) -> Arc<Surface> {
// We can safely unwrap as the surface must exist for the lifetime of the toplevel
self.wl_surface
.upgrade()
@@ -107,7 +107,7 @@ impl Toplevel {
// Helper to clamp size against constraints
fn clamp_size(&self, size: Vector2<u32>) -> Vector2<u32> {
let state = self.surface().current_state();
let state = self.wl_surface().current_state();
let mut clamped = size;
if let Some(min_size) = state.min_size {
@@ -254,7 +254,7 @@ impl XdgToplevel for Toplevel {
width: i32,
height: i32,
) -> Result<()> {
self.surface().pending_state().pending.max_size = if width == 0 && height == 0 {
self.wl_surface().pending_state().pending.max_size = if width == 0 && height == 0 {
None
} else {
Some([width as u32, height as u32].into())
@@ -269,7 +269,7 @@ impl XdgToplevel for Toplevel {
width: i32,
height: i32,
) -> Result<()> {
self.surface().pending_state().pending.min_size = if width == 0 && height == 0 {
self.wl_surface().pending_state().pending.min_size = if width == 0 && height == 0 {
None
} else {
Some([width as u32, height as u32].into())