refactor: move workspace policy into core

This commit is contained in:
Samuel Onoja committed 2026-09-24 11:11:30 +01:00
1 parent 3e692ba934
commit 28d845ee64
8 files changed
+25 -7

No files matched your search

Generated
+8
View File
@@ -368,6 +368,7 @@ checksum = "da7c62ceae207dd37ea5b845da6a0696c799f85e97da1ab5b7910be3c1c80223"
name = "ferese"
version = "0.1.0"
dependencies = [
"ferese-core",
"ferese-layout",
"libc",
"smithay",
@@ -375,6 +376,13 @@ dependencies = [
"tracing-subscriber",
]
[[package]]
name = "ferese-core"
version = "0.1.0"
dependencies = [
"ferese-layout",
]
[[package]]
name = "ferese-layout"
version = "0.1.0"
+1 -1
View File
@@ -1,5 +1,5 @@
[workspace]
members = ["compositor", "crates/ferese-layout"]
members = ["compositor", "crates/ferese-core", "crates/ferese-layout"]
resolver = "3"
[workspace.package]
+1
View File
@@ -6,6 +6,7 @@ license.workspace = true
rust-version.workspace = true
[dependencies]
ferese-core = { path = "../crates/ferese-core" }
ferese-layout = { path = "../crates/ferese-layout" }
libc.workspace = true
smithay.workspace = true
+2 -1
View File
@@ -6,7 +6,8 @@ use std::{
time::Instant,
};
use ferese_layout::{Axis, Direction, GapConfig, Rect, WindowId, WorkspaceSet};
use ferese_core::WorkspaceSet;
use ferese_layout::{Axis, Direction, GapConfig, Rect, WindowId};
use smithay::{
desktop::{PopupManager, Space, Window, WindowSurfaceType},
+9
View File
@@ -0,0 +1,9 @@
[package]
name = "ferese-core"
version.workspace = true
edition.workspace = true
license.workspace = true
rust-version.workspace = true
[dependencies]
ferese-layout = { path = "../ferese-layout" }
+3
View File
@@ -0,0 +1,3 @@
mod workspace;
pub use workspace::{Workspace, WorkspaceError, WorkspaceId, WorkspaceSet};
@@ -2,7 +2,7 @@ use std::collections::{HashMap, HashSet};
use std::error::Error;
use std::fmt;
use crate::{Axis, LayoutError, LayoutTree, WindowId};
use ferese_layout::{Axis, LayoutError, LayoutTree, WindowId};
#[derive(Clone, Copy, Debug, Eq, Hash, PartialEq)]
pub struct WorkspaceId(pub u64);
-4
View File
@@ -2,10 +2,6 @@ use std::collections::{HashMap, HashSet};
use std::error::Error;
use std::fmt;
mod workspace;
pub use workspace::{Workspace, WorkspaceError, WorkspaceId, WorkspaceSet};
const MIN_SPLIT_RATIO: f64 = 0.05;
const MAX_SPLIT_RATIO: f64 = 0.95;