Wayland compositor (wlroots)
git clone https://git.lucas.co/cce-compositor.git
src/lib.rs (3.5K)
1 // cce — Unified compositor server and window manager client
2
3 // ==========================================
4 // Compositor Server Modules
5 // ==========================================
6 #[path = "server/ffi.rs"]
7 pub mod ffi;
8 #[path = "server/server.rs"]
9 pub mod server;
10 #[path = "server/process.rs"]
11 pub mod process;
12 #[path = "server/util.rs"]
13 pub mod util;
14 pub use cce_window_manager::slotmap;
15 #[path = "server/window_manager.rs"]
16 pub mod window_manager;
17 #[path = "server/xkb_bindings.rs"]
18 pub mod xkb_bindings;
19 #[path = "server/layer_shell.rs"]
20 pub mod layer_shell;
21 #[path = "server/scene.rs"]
22 pub mod scene;
23 #[path = "server/text.rs"]
24 pub mod text;
25 // The window-management policy layer lives in the sibling crate
26 // `cce-window-manager` (pure Rust, no FFI). The aliases keep the historical
27 // `crate::policy::…` / `crate::tiling` / `crate::slotmap` paths working.
28 pub use cce_window_manager as policy;
29 pub use cce_window_manager::tiling;
30 #[path = "server/backdrop.rs"]
31 pub mod backdrop;
32 #[path = "server/config.rs"]
33 pub mod config;
34 #[path = "server/ipc_server.rs"]
35 pub mod ipc_server;
36 #[path = "server/screenshot.rs"]
37 pub mod screenshot;
38 #[path = "server/status_server.rs"]
39 pub mod status_server;
40 #[path = "server/global_shortcuts.rs"]
41 pub mod global_shortcuts;
42 #[path = "server/stream_server.rs"]
43 pub mod stream_server;
44 #[path = "server/scene_node_data.rs"]
45 pub mod scene_node_data;
46 #[path = "server/output.rs"]
47 pub mod output;
48 #[path = "server/output_manager.rs"]
49 pub mod output_manager;
50 #[path = "server/input_manager.rs"]
51 pub mod input_manager;
52 #[path = "server/libinput_config.rs"]
53 pub mod libinput_config;
54 #[path = "server/libinput_device.rs"]
55 pub mod libinput_device;
56 #[path = "server/libinput_accel_config.rs"]
57 pub mod libinput_accel_config;
58 #[path = "server/xkb_keyboard.rs"]
59 pub mod xkb_keyboard;
60 #[path = "server/xkb_config.rs"]
61 pub mod xkb_config;
62 #[path = "server/idle_inhibit_manager.rs"]
63 pub mod idle_inhibit_manager;
64 #[path = "server/idle.rs"]
65 pub mod idle;
66 #[path = "server/lock_manager.rs"]
67 pub mod lock_manager;
68 #[path = "server/input_device.rs"]
69 pub mod input_device;
70 #[path = "server/pointer_constraint.rs"]
71 pub mod pointer_constraint;
72 #[path = "server/keyboard.rs"]
73 pub mod keyboard;
74 #[path = "server/cursor.rs"]
75 pub mod cursor;
76 #[path = "server/seat.rs"]
77 pub mod seat;
78 #[path = "server/tablet.rs"]
79 pub mod tablet;
80 #[path = "server/tablet_tool.rs"]
81 pub mod tablet_tool;
82 #[path = "server/window.rs"]
83 pub mod window;
84 #[path = "server/xdg_toplevel.rs"]
85 pub mod xdg_toplevel;
86 #[path = "server/xdg_popup.rs"]
87 pub mod xdg_popup;
88 #[path = "server/shell_surface.rs"]
89 pub mod shell_surface;
90 #[path = "server/wm_node.rs"]
91 pub mod wm_node;
92 #[path = "server/xwayland_window.rs"]
93 pub mod xwayland_window;
94 #[path = "server/xwayland_override_redirect.rs"]
95 pub mod xwayland_override_redirect;
96 #[path = "server/text_input.rs"]
97 pub mod text_input;
98 #[path = "server/input_relay.rs"]
99 pub mod input_relay;
100 #[path = "server/input_popup.rs"]
101 pub mod input_popup;
102 #[path = "server/drag_icon.rs"]
103 pub mod drag_icon;
104 #[path = "server/pointer_binding.rs"]
105 pub mod pointer_binding;
106 #[path = "server/keyboard_group.rs"]
107 pub mod keyboard_group;
108 #[path = "server/inspector.rs"]
109 pub mod inspector;
110 #[path = "server/cce_window_management.rs"]
111 pub mod cce_window_management;
112
113 #[path = "server/run_server.rs"]
114 pub mod run_server;
115 pub use run_server::run_server;
116
117
118 // ==========================================
119 // IPC Client Modules
120 // ==========================================
121 #[path = "cce_ctl.rs"]
122 pub mod cce_ctl;
123 pub use cce_ctl::run_cce_ctl;
124
125 #[path = "migrate_input.rs"]
126 pub mod migrate_input;