From 1e5be379969b612571d5420fb4ee07af0c76543b Mon Sep 17 00:00:00 2001 From: chlorospingus Date: Sat, 26 Apr 2025 02:14:08 -0700 Subject: [PATCH] Move all wayland files into wayland namespace --- src/main.rs | 10 ++-------- src/{ => wayland}/layer_shell.rs | 3 +-- src/wayland/mod.rs | 8 ++++++++ src/{ => wayland}/shm.rs | 0 src/{ => wayland}/surface.rs | 2 +- src/{ => wayland}/vec_utils.rs | 0 src/{ => wayland}/wl_client.rs | 11 +---------- src/{ => wayland}/wl_registry.rs | 2 +- src/{ => wayland}/wl_shm.rs | 10 ++-------- 9 files changed, 16 insertions(+), 30 deletions(-) rename src/{ => wayland}/layer_shell.rs (97%) create mode 100644 src/wayland/mod.rs rename src/{ => wayland}/shm.rs (100%) rename src/{ => wayland}/surface.rs (97%) rename src/{ => wayland}/vec_utils.rs (100%) rename src/{ => wayland}/wl_client.rs (93%) rename src/{ => wayland}/wl_registry.rs (98%) rename src/{ => wayland}/wl_shm.rs (78%) diff --git a/src/main.rs b/src/main.rs index 101f7c9..4c47391 100644 --- a/src/main.rs +++ b/src/main.rs @@ -1,14 +1,8 @@ #![feature(unix_socket_ancillary_data)] use std::error::Error; -mod wl_client; -mod wl_registry; -mod wl_shm; -mod vec_utils; -mod shm; -mod surface; -mod layer_shell; -use wl_client::WlClient; +mod wayland; +use wayland::wl_client::WlClient; fn main() -> Result<(), Box> { let mut wl_client = WlClient::new()?; diff --git a/src/layer_shell.rs b/src/wayland/layer_shell.rs similarity index 97% rename from src/layer_shell.rs rename to src/wayland/layer_shell.rs index 225aaeb..d12d3e6 100644 --- a/src/layer_shell.rs +++ b/src/wayland/layer_shell.rs @@ -1,9 +1,8 @@ use std::{error::Error, io::Write}; -use crate::{surface::UnsetErr, vec_utils::WlMessage, WlClient}; +use crate::wayland::{vec_utils::WlMessage, wl_client::WlClient}; const NAMESPACE: &str = "chlorostart"; const OVERLAY: u32 = 3; -const STRIDE: usize = 4; const EXCLUSIVE: u32 = 0; // exclusize keyboard focus impl WlClient { diff --git a/src/wayland/mod.rs b/src/wayland/mod.rs new file mode 100644 index 0000000..e479b53 --- /dev/null +++ b/src/wayland/mod.rs @@ -0,0 +1,8 @@ + +pub mod layer_shell; +pub mod surface; +pub mod wl_client; +pub mod wl_shm; +pub mod vec_utils; +pub mod shm; +pub mod wl_registry; diff --git a/src/shm.rs b/src/wayland/shm.rs similarity index 100% rename from src/shm.rs rename to src/wayland/shm.rs diff --git a/src/surface.rs b/src/wayland/surface.rs similarity index 97% rename from src/surface.rs rename to src/wayland/surface.rs index d8d1af7..224cf28 100644 --- a/src/surface.rs +++ b/src/wayland/surface.rs @@ -1,6 +1,6 @@ use std::{error::Error, io::Write}; -use crate::{vec_utils::WlMessage, WlClient}; +use crate::wayland::{vec_utils::WlMessage, wl_client::WlClient}; use std::fmt; diff --git a/src/vec_utils.rs b/src/wayland/vec_utils.rs similarity index 100% rename from src/vec_utils.rs rename to src/wayland/vec_utils.rs diff --git a/src/wl_client.rs b/src/wayland/wl_client.rs similarity index 93% rename from src/wl_client.rs rename to src/wayland/wl_client.rs index 1ad1690..54c685b 100644 --- a/src/wl_client.rs +++ b/src/wayland/wl_client.rs @@ -1,6 +1,6 @@ use std::{env::var, error::Error, fmt::Debug, io::Read, os::unix::net::UnixStream, u32}; -use crate::{shm, vec_utils::WlMessage}; +use crate::wayland::shm; struct WlHeader { object: u32, @@ -8,15 +8,6 @@ struct WlHeader { size: u16, } -pub mod color { - pub const WHITE: u32 = 0xffffffff; - pub const BLACK: u32 = 0xff000000; - pub const RED: u32 = 0xffff0000; - pub const GREEN: u32 = 0xff00ff00; - pub const BLUE: u32 = 0xff0000ff; - pub const SAPPHIRE: u32 = 0xff74c7ec; -} - pub struct WlClient { pub socket: UnixStream, pub current_id: u32, diff --git a/src/wl_registry.rs b/src/wayland/wl_registry.rs similarity index 98% rename from src/wl_registry.rs rename to src/wayland/wl_registry.rs index 77fd4ee..33feabc 100644 --- a/src/wl_registry.rs +++ b/src/wayland/wl_registry.rs @@ -1,4 +1,4 @@ -use crate::{surface::UnsetErr, vec_utils::WlMessage, WlClient}; +use crate::wayland::{surface::UnsetErr, vec_utils::WlMessage, wl_client::WlClient}; use std::{io::Write, error::Error}; impl WlClient { diff --git a/src/wl_shm.rs b/src/wayland/wl_shm.rs similarity index 78% rename from src/wl_shm.rs rename to src/wayland/wl_shm.rs index d7068a4..dc3df8a 100644 --- a/src/wl_shm.rs +++ b/src/wayland/wl_shm.rs @@ -1,5 +1,5 @@ use std::{error::Error, io::Write, os::unix::net::SocketAncillary, u8}; -use crate::{shm, surface::UnsetErr, vec_utils::WlMessage, wl_client::color, WlClient}; +use crate::wayland::{shm, surface::UnsetErr, vec_utils::WlMessage, wl_client::WlClient}; const STRIDE: usize = 4; @@ -12,13 +12,7 @@ impl WlClient { pub fn wl_shm_create_pool(&mut self, width: usize, height: usize) -> Result<(), Box> { self.current_id += 1; self.shm_pool = Some(shm::ShmPool::new(width * height * STRIDE, self.current_id)?); - - self.shm_pool.as_mut().unwrap().write(&vec![color::RED; width * height/6], 0)?; - self.shm_pool.as_mut().unwrap().write(&vec![color::GREEN; width * height/6], (width*height*1/6) as isize)?; - self.shm_pool.as_mut().unwrap().write(&vec![color::BLUE; width * height/6], (width*height*2/6) as isize)?; - self.shm_pool.as_mut().unwrap().write(&vec![color::WHITE; width * height/6], (width*height*3/6) as isize)?; - self.shm_pool.as_mut().unwrap().write(&vec![color::BLACK; width * height/6], (width*height*4/6) as isize)?; - self.shm_pool.as_mut().unwrap().write(&vec![color::SAPPHIRE;width * height/6], (width*height*5/6) as isize)?; + self.shm_pool.as_mut().unwrap().write(&vec![0xffff0000; width * height], 0)?; let object = self.shm_id.ok_or(UnsetErr("shm_id".to_string()))?; const OPCODE: u16 = 0;