267fcd80b3
fix: keep compositor dbus off tokio runtime
2026-05-24 18:18:51 +02:00
56230f0ade
fix: keep tokio runtime available for compositor
2026-05-24 16:08:29 +02:00
Yureka
a74b6e3a9b
Add hooks for custom window decorations
...
This is a first use of the new hooks system, which allows customizing
cosmic-comp at compile-time.
In this case, the view() function of CosmicWindow / CosmicStack is
hooked and the hook can change what is rendered as the header bar.
Signed-off-by: Yureka <yuka@yuka.dev>
2025-10-29 11:27:14 +01:00
Yureka
d6e11de1f1
expose cosmic_comp as a library
...
Allows other programs to depend on the cosmic_comp library crate and
start a cosmic-comp in their process by calling `cosmic_comp::run()`.
Later, customization parameters can be added to `run()`.
Note that the interface of the cosmic_comp library crate is not stable
in any way and might change anytime.
Signed-off-by: Yureka <yuka@yuka.dev>
2025-10-29 11:27:14 +01:00
Vukašin Vojinović
1f7f0c70b7
chore: format for Rust 2024
2025-10-22 23:55:11 +02:00
Vukašin Vojinović
b6c5d00bec
cargo fmt
2025-10-22 23:55:11 +02:00
Vukašin Vojinović
0847247c33
chore: clippy
2025-10-22 23:55:11 +02:00
Ian Douglas Scott
cbab016cee
Call dbus::ready even when systemd is enabled
...
The Gentoo overlap packaged needed this to get socket activation working
properly (https://github.com/fsvm88/cosmic-overlay/pull/88 ).
For some reason I didn't seem to need this testing socket activation on
Pop!_OS? Unless someone knows exactly why or has a better idea, for now
apply this change along with the socket activation change in
https://github.com/pop-os/xdg-desktop-portal-cosmic/pull/176 .
2025-10-17 11:58:37 -07:00
Ian Douglas Scott
38fe84abcf
Log error return from main() with tracing
...
Previously this was printed to `stderr`, but not written to journald.
2025-08-06 11:45:18 +02:00
Victoria Brekenfeld
465813c1c5
shell: Using parking_lot's RwLock for fairness guarantees
2025-05-27 20:00:21 +02:00
Victoria Brekenfeld
d1e0e28d3c
kms: Add tracy profiling
2025-04-28 18:03:09 +02:00
Hugo
2b8a3f7894
Argument support with clap_lex
2025-03-31 18:16:31 +02:00
Victoria Brekenfeld
01bc39dade
main: throttle refresh
2025-03-06 21:28:52 +01:00
Michal Rostecki
9b50d0f506
main: Update D-Bus activation environment also on non-systemd systems
...
On systems without systemd, use zbus to update D-Bus activation
environment with `WAYLAND_DISPLAY` and `DISPLAY` variables.
Fixes #1037
2024-12-09 16:33:15 +01:00
Ashley Wulber
60558e18fd
overlay-notify: Implement handler
2024-11-27 13:20:18 +01:00
Victoria Brekenfeld
c07356fa01
main: Don't quit, when the last output is gone
2024-06-27 12:35:01 +02:00
Victoria Brekenfeld
92f3dbce01
chore: Cleanup
2024-06-26 12:59:33 +02:00
Victoria Brekenfeld
469a366207
kms: New backend
...
New backend utilizing a thread per surface for precise frame
scheduling.
2024-06-26 12:59:33 +02:00
Ian Douglas Scott
73b12194c0
Update smithay
2024-05-10 13:51:28 +02:00
Ian Douglas Scott
a9740e5040
Change how COSMIC_ENABLE_WAYLAND_SECURITY/privileged is handled
...
Manually starting `cosmic-panel` was not working properly in release
builds, because without `cfg!(debug_assertions)`, the `privileged` flag
wasn't sent on the panel, so it couldn't be propagated to the applets,
which also fail the `client_has_no_security_context()` check.
I don't see a way to have both the `cfg!(debug_assertions)` check and
`COSMIC_ENABLE_WAYLAND_SECURITY`. Now only the latter is used, and it
determines the value of `privileged` for clients started normally. In
the future, we could make the default value of
`COSMIC_ENABLE_WAYLAND_SECURITY` depend on `cfg!(debug_assertions)` if
desired.
This also corrects the inconsistency that the `cfg!(debug_assertions)`
check wasn't applied to the render-node-specific Wayland sockets.
2024-05-08 13:10:07 +02:00
Victoria Brekenfeld
5d5a510691
state: Move shell behind RwLock
2024-04-16 18:50:54 +02:00
Victoria Brekenfeld
647deb81f1
shell: Move seats into shell
2024-04-16 18:50:54 +02:00
Victoria Brekenfeld
6ba7242cfc
main: Increase soft file limit
2024-04-05 13:49:36 +02:00
Victoria Brekenfeld
b40d153809
cosmic-screencopy-v2
2024-03-25 16:55:31 +01:00
Victoria Brekenfeld
55eb2fe88e
xwayland: Globally track stacking order
2024-03-25 12:51:01 +01:00
Ian Douglas Scott
a1c8b3aa3e
Add support for profiling using tracy
2024-03-20 23:55:21 +01:00
Victoria Brekenfeld
4dbaa58483
event loop: Explicitly schedule frames for slow animations again
2024-03-04 19:20:52 +01:00
Victoria Brekenfeld
d8c1087ebe
dbus: Add power-daemon hotplug handling
2024-02-19 13:09:49 +01:00
Victoria Brekenfeld
ef3486f7e0
kms: Track used devices and free resources
2024-02-19 13:09:49 +01:00
Jeremy Soller
ec822e421f
Implement kiosk mode for cosmic-greeter
2024-02-06 17:45:25 +01:00
Ashley Wulber
abbe94e6e1
feat: theme integration
...
refactor: only apply updates if there is a change in the theme
refactor: include theme in state
cleanup: theme integration
2023-10-25 19:41:55 +02:00
Victoria Brekenfeld
4e12957169
chore: Update deps
2023-10-02 21:51:49 +02:00
Victoria Brekenfeld
6439b3a43c
Revert "loop: Schedule rendering for running animations on idle"
...
This reverts commit 5125337b42 .
2023-08-31 13:53:30 +02:00
Victoria Brekenfeld
5125337b42
loop: Schedule rendering for running animations on idle
2023-08-01 16:50:50 +02:00
Victoria Brekenfeld
c145b3c35a
tiling: Better synchronize configures
2023-07-06 00:08:46 +02:00
Victoria Brekenfeld
331b884f1e
tiling: Animate tree changes
2023-05-12 20:01:37 +02:00
Ian Douglas Scott
9fa8037809
Add default systemd feature flag to enable systemd integration
...
The `libsystemd` crate fails to build on FreeBSD and is presumably
undesirable on any non-systemd distros. At least at present it's easy to
make it optional.
2023-02-27 16:36:40 -08:00
Victoria Brekenfeld
35de500c00
chore: update smithay + switch to tracing
2023-02-24 17:43:07 +01:00
Victoria Brekenfeld
1d28574088
xwayland: Add initial support
2023-01-18 20:25:32 +01:00
Victoria Brekenfeld
fc04ef2157
state: Don't crash on error due to missing logger
2022-12-05 23:20:32 +01:00
Victoria Brekenfeld
38c0acb943
wayland: Explicitly handle destroyed surfaces
2022-11-23 16:10:37 +01:00
Victoria Brekenfeld
5a4df346a8
wip: screencopy
2022-11-23 16:09:58 +01:00
Victoria Brekenfeld
00f1b029da
wip: New shell logic
2022-11-23 16:08:32 +01:00
Victoria Brekenfeld
8e6537de39
deps: Update smithay
2022-09-28 15:18:04 +02:00
Victoria Brekenfeld
6690e13d54
deps: Update smithay
2022-08-31 13:01:23 +02:00
Victoria Brekenfeld
fe6329838e
main: Only handle systemd on the kms backend
2022-07-11 22:34:34 +02:00
Victoria Brekenfeld
bbe5af64c9
main: Allow privileged protocols in debug builds
2022-07-06 23:31:46 +02:00
Victoria Brekenfeld
55df9bce09
main: Handle cosmic-session ipc
2022-07-06 23:30:50 +02:00
Victoria Brekenfeld
39de286d51
cargo fmt
2022-07-04 16:01:06 +02:00
Victoria Brekenfeld
06d5989223
wayland: Rework handlers and protocols into separate files
2022-07-04 16:01:06 +02:00