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>> { fn surface_from_id(&self, id: SurfaceId) -> Option<Arc<Surface>> {
match id { match id {
SurfaceId::Toplevel(_) => Some(self.toplevel().surface()), SurfaceId::Toplevel(_) => Some(self.toplevel().wl_surface()),
SurfaceId::Child(_) => None, SurfaceId::Child(_) => None,
} }
} }
@@ -42,7 +42,7 @@ impl XdgBackend {
impl Backend for XdgBackend { impl Backend for XdgBackend {
fn start_data(&self) -> Result<PanelItemInitData> { 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 let size = surface_state
.buffer .buffer
@@ -84,7 +84,7 @@ impl Backend for XdgBackend {
fn close_toplevel(&self) { fn close_toplevel(&self) {
let _ = self let _ = self
.toplevel() .toplevel()
.surface() .wl_surface()
.message_sink .message_sink
.send(Message::CloseToplevel(self.toplevel().clone())); .send(Message::CloseToplevel(self.toplevel().clone()));
} }
@@ -92,7 +92,7 @@ impl Backend for XdgBackend {
fn auto_size_toplevel(&self) { fn auto_size_toplevel(&self) {
let _ = self let _ = self
.toplevel() .toplevel()
.surface() .wl_surface()
.message_sink .message_sink
.send(Message::ResizeToplevel { .send(Message::ResizeToplevel {
toplevel: self.toplevel().clone(), toplevel: self.toplevel().clone(),
@@ -103,7 +103,7 @@ impl Backend for XdgBackend {
fn set_toplevel_size(&self, size: Vector2<u32>) { fn set_toplevel_size(&self, size: Vector2<u32>) {
let _ = self let _ = self
.toplevel() .toplevel()
.surface() .wl_surface()
.message_sink .message_sink
.send(Message::ResizeToplevel { .send(Message::ResizeToplevel {
toplevel: self.toplevel().clone(), toplevel: self.toplevel().clone(),
@@ -114,7 +114,7 @@ impl Backend for XdgBackend {
fn set_toplevel_focused_visuals(&self, focused: bool) { fn set_toplevel_focused_visuals(&self, focused: bool) {
let _ = self let _ = self
.toplevel() .toplevel()
.surface() .wl_surface()
.message_sink .message_sink
.send(Message::SetToplevelVisualActive { .send(Message::SetToplevelVisualActive {
toplevel: self.toplevel().clone(), toplevel: self.toplevel().clone(),
@@ -124,21 +124,29 @@ impl Backend for XdgBackend {
fn pointer_motion(&self, surface: &SurfaceId, position: Vector2<f32>) { fn pointer_motion(&self, surface: &SurfaceId, position: Vector2<f32>) {
if let Some(surface) = self.surface_from_id(surface.clone()) { if let Some(surface) = self.surface_from_id(surface.clone()) {
let _ = self.toplevel().surface().message_sink.send(Message::Seat( let _ = self
crate::wayland::core::seat::SeatMessage::PointerMotion { surface, position }, .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) { fn pointer_button(&self, surface: &SurfaceId, button: u32, pressed: bool) {
if let Some(surface) = self.surface_from_id(surface.clone()) { if let Some(surface) = self.surface_from_id(surface.clone()) {
let _ = self.toplevel().surface().message_sink.send(Message::Seat( let _ = self
crate::wayland::core::seat::SeatMessage::PointerButton { .toplevel()
surface, .wl_surface()
button, .message_sink
pressed, .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>>, scroll_steps: Option<Vector2<f32>>,
) { ) {
if let Some(surface) = self.surface_from_id(surface.clone()) { if let Some(surface) = self.surface_from_id(surface.clone()) {
let _ = self.toplevel().surface().message_sink.send(Message::Seat( let _ = self
crate::wayland::core::seat::SeatMessage::PointerScroll { .toplevel()
surface, .wl_surface()
scroll_distance, .message_sink
scroll_steps, .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 pressed { "pressed" } else { "released" }
); );
if let Some(surface) = self.surface_from_id(surface.clone()) { if let Some(surface) = self.surface_from_id(surface.clone()) {
let _ = self.toplevel().surface().message_sink.send(Message::Seat( let _ = self
crate::wayland::core::seat::SeatMessage::KeyboardKey { .toplevel()
surface, .wl_surface()
keymap_id, .message_sink
key, .send(Message::Seat(
pressed, crate::wayland::core::seat::SeatMessage::KeyboardKey {
}, surface,
)); keymap_id,
key,
pressed,
},
));
} }
} }
@@ -185,13 +201,17 @@ impl Backend for XdgBackend {
position.y position.y
); );
if let Some(surface) = self.surface_from_id(surface.clone()) { if let Some(surface) = self.surface_from_id(surface.clone()) {
let _ = self.toplevel().surface().message_sink.send(Message::Seat( let _ = self
crate::wayland::core::seat::SeatMessage::TouchDown { .toplevel()
surface, .wl_surface()
id, .message_sink
position, .send(Message::Seat(
}, crate::wayland::core::seat::SeatMessage::TouchDown {
)); surface,
id,
position,
},
));
} }
} }
@@ -202,7 +222,7 @@ impl Backend for XdgBackend {
position.x, position.x,
position.y position.y
); );
let surface = self.toplevel().surface(); let surface = self.toplevel().wl_surface();
let _ = surface.message_sink.send(Message::Seat( let _ = surface.message_sink.send(Message::Seat(
crate::wayland::core::seat::SeatMessage::TouchMove { id, position }, crate::wayland::core::seat::SeatMessage::TouchMove { id, position },
)); ));
@@ -210,7 +230,7 @@ impl Backend for XdgBackend {
fn touch_up(&self, id: u32) { fn touch_up(&self, id: u32) {
tracing::debug!("Backend: Touch up {}", id); tracing::debug!("Backend: Touch up {}", id);
let surface = self.toplevel().surface(); let surface = self.toplevel().wl_surface();
let _ = surface.message_sink.send(Message::Seat( let _ = surface.message_sink.send(Message::Seat(
crate::wayland::core::seat::SeatMessage::TouchUp { id }, crate::wayland::core::seat::SeatMessage::TouchUp { id },
)); ));
@@ -218,7 +238,7 @@ impl Backend for XdgBackend {
fn reset_input(&self) { fn reset_input(&self) {
tracing::debug!("Backend: Reset input"); tracing::debug!("Backend: Reset input");
let surface = self.toplevel().surface(); let surface = self.toplevel().wl_surface();
let _ = surface.message_sink.send(Message::Seat( let _ = surface.message_sink.send(Message::Seat(
crate::wayland::core::seat::SeatMessage::Reset, 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::util::ClientExt;
use crate::wayland::{ use crate::wayland::{
core::surface::SurfaceRole, core::surface::SurfaceRole,
@@ -152,7 +152,7 @@ impl XdgSurface for Surface {
&& configured.load(std::sync::atomic::Ordering::SeqCst) && configured.load(std::sync::atomic::Ordering::SeqCst)
&& has_valid_buffer && has_valid_buffer
{ {
mapped_lock.replace(Mapped::create(toplevel.clone(), pid)); mapped_lock.replace(MappedInner::create(toplevel.clone(), pid));
return false; return false;
} }
true true

View File

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