Kenny Levinsen
2d4b7a4e23
shell: Use new map/unmap events
...
For xwayland we must listen on associate/dissociate to set up and tear
down the map/unmap event handlers instead of during surface
create/destroy.
2024-01-26 23:45:57 +01:00
Kenny Levinsen
4ea6a8b1a7
shell: Use new try_from surface getters
2024-01-26 23:45:57 +01:00
Kenny Levinsen
8df120dafd
output: Use state field in wlr_output_event_commit
2024-01-26 23:45:57 +01:00
Kenny Levinsen
2f7ab094d4
output: Remove output mode handler
...
This is replaced by monitoring for WLR_OUTPUT_STATE_MODE on commit.
2024-01-26 23:45:57 +01:00
Kenny Levinsen
b51a6e950f
output: wlr_scene_output_commit NULL options
2024-01-26 23:45:57 +01:00
Kenny Levinsen
b772a00df8
output: Call wlr_scene_output_create
2024-01-26 23:45:57 +01:00
Kenny Levinsen
64e2a44124
output: Remove wlr_output_damage include
2024-01-26 23:45:57 +01:00
Kenny Levinsen
624355485a
Use new wlr_backend_autocreate signature
...
The session is now stored explicitly, with wlr_backend_get_session being
dropped.
2024-01-26 23:45:57 +01:00
Simon Ser
34eb3ec2c8
Make Xwayland optional at runtime
...
Closes: https://github.com/cage-kiosk/cage/issues/293
2023-12-11 17:25:08 +01:00
Moon Sungjoon
1f3e3043dd
CI: Set `fail-fast' to false
...
This allows other jobs to continue running even if one job fails
2023-11-22 15:21:03 +01:00
Jonathan GUILLOT
d40dd3bd99
cage: remove not really used variables in server initialization
2023-11-10 14:38:28 +01:00
Jonathan GUILLOT
2ab480910e
cage: add relative-pointer-unstable-v1 support
2023-11-10 14:38:28 +01:00
Jonathan GUILLOT
efbf7c035b
seat: move initial cursor center to dedicated function
2023-11-10 14:38:28 +01:00
Jonathan GUILLOT
4dc3cf80b2
output: fix crash when re-enabling DRM output
...
The output is disabled then re-enabled using the wlr-output-management
protocol with tool such as wlr-randr.
$ wlr-randr --output HDMI-A-1 --off
$ wlr-randr --output HDMI-A-1 --on
When re-enabled the new output configuration is committed before the
output to be added to the global output layout. However,
handle_output_commit() expects the output to be already part of this
global layout and assert failed. Now, do not treat this in
handle_output_commit() and simply ensure the resulting scene output is
not NULL in handle_output_frame().
2023-09-20 00:01:35 +09:00
Jonathan GUILLOT
a769943447
output: ensure output is marked as enabled before trying to set mode
...
Otherwise, testing to set preferred / "best" mode will always return an
error. Consequently, output will simply be configured with last and
probably "worst" mode.
2023-09-01 18:37:53 +09:00
Jonathan GUILLOT
96ffaa340e
output: do not always terminate when last output is destroyed
...
Only terminate if the last output was nested under the Wayland or X11
backend. If not, using DRM backend for example, terminating Cage when
unplugging the last monitor or simply turning it off does not seem to be
the right behavior.
2023-09-01 18:37:53 +09:00
Jonathan GUILLOT
7ec7e3df2b
seat: add missing touch_frame handler
...
wl_touch::frame() is expected to be sent to client to indicate end of
touch frame event and not sending it may cause issues.
For example, Qt applications using Qt Wayland platform plugin do not
consider touch events until this end of frame to be received.
2023-08-24 10:05:12 +02:00
Jonathan GUILLOT
121e3ac8b2
cage: return exit code of primary client
...
Some applications indicate different shutdown conditions by returning
specific exit codes. One of these is e.g. Kodi, which returns 64 in case
the user chose "Power off" and 66 in case the user chose "Reboot".
In order to act on these exit codes, it thus makes sense in some
situations to pass them on from the primary client to the caller of
Cage.
This exit code is only returned if the primary client is the cause of
Cage terminating.
Co-authored-by: Patrick Steinhardt <ps@pks.im>
2023-08-21 14:40:05 +02:00
Jan Beich
9a4310f8b6
Chase HTTP redirect
2023-08-14 09:18:22 +02:00
Jente Hidskes Ankarberg
d519b5b529
Establish chain of trust for signed releases
2023-07-29 10:27:05 +02:00
Simon Ser
ea95a8af72
readme: update PGP key ID
2023-07-29 01:08:56 +02:00
Simon Ser
83ffc574be
build: bump version to 0.1.5
2023-07-28 16:46:37 +02:00
Simon Ser
794803adc9
build: fix default xwayland option type
2023-07-28 16:42:58 +02:00
Simon Ser
8dcc901522
Log execvp() failures
...
Closes: https://github.com/cage-kiosk/cage/issues/255
2023-07-28 16:41:03 +02:00
Jonathan GUILLOT
b1129ca72e
output: fix segfault when using -m last option
...
Check output list length before accessing previous or next item to avoid
segfault.
2023-07-28 15:36:34 +02:00
Jonathan GUILLOT
6f78d9d5b2
cage: add basic wlr-output-management support
...
Co-authored-by: Dima Krasner <dima@dimakrasner.com>
2023-07-28 15:36:34 +02:00
Jente Hidskes
27b6971b36
cage: remove support for rotating outputs
...
This is now handled through wlr_output_management
2023-07-28 15:36:34 +02:00
ChemicalXandco
bd5b20e1fa
add wlr_virtual_keyboard_manager_v1 and wlr_virtual_pointer_manager_v1
2023-02-01 00:26:37 +01:00
Simon Ser
46f0ec1b72
readme: drop CI badge
...
cage currently uses GitHub CI, not SourceHut.
2023-01-03 22:30:54 +01:00
Alexander Orzechowski
5f4c43db04
CI: bump to wlroots 0.16
2022-12-17 21:56:03 +01:00
Alexander Orzechowski
a8e4e3d131
Enable single-pixel-buffer
...
Why not.
2022-12-17 21:56:03 +01:00
Alexander Orzechowski
491d508d75
meson: Bump wlroots version
2022-12-17 21:56:03 +01:00
Alexander Orzechowski
36c9c52d3f
Port 0.16 surface header includes
2022-12-17 21:56:03 +01:00
Alexander Orzechowski
3015e0368b
Give xdg_shell a version
2022-12-17 21:56:03 +01:00
Alexander Orzechowski
32c44ddb5f
Port 0.16 scene changes
2022-12-17 21:56:03 +01:00
Alexander Orzechowski
979ff58a24
Port 0.16 wlr_output_layout_get_box changes
...
Fixes memory leaks.
2022-12-17 21:56:03 +01:00
Alexander Orzechowski
5818a32a99
xdg_shell: Port 0.16 configure changes
2022-12-17 21:56:03 +01:00
Alexander Orzechowski
ea14819153
xdg_shell: Port to 0.16 double buffered geometry
2022-12-17 21:56:03 +01:00
Alexander Orzechowski
b43c7adcd9
xdg_shell: Port 0.16 xdg_toplevel changes
2022-12-17 21:56:03 +01:00
Alexander Orzechowski
47f5daba20
seat: Port 0.16 device changes
2022-12-17 21:56:03 +01:00
Phil Jones
a57e0067c1
Explicitly create wlr_subcompositor.
...
Following wlroots b6f43ab2, the subcompositor must now be created
explicitly, rather than being handled by wlr_compositor_create.
2022-12-17 21:56:03 +01:00
Jan Beich
d3d4a129e7
cage: allow running as root when not using setuid bit
2022-12-14 11:46:48 +01:00
Ethan D. Twardy
a81ab701d7
Update meson.build not to fail if git rev-parse fails
2022-08-19 11:59:41 +02:00
Ethan D. Twardy
1b9d750dc2
Fix warnings in `meson build' output for deprecated functions.
...
Previously, the output of `meson build` would warn about the use of
some functions that have been deprecated since meson v0.56.0, and
the use of the `check` kwarg in the `run_command()` function.
Update meson.build to fix these build warnings.
2022-08-19 11:59:41 +02:00
Leonardo Hernández Hernández
46778e6d6c
output: get scene_output by wlroots function
2022-03-22 16:58:24 +01:00
Jente Hidskes
f71844ab54
xdg_shell: add note why we're setting the size for fullscreen clients
2022-01-14 14:59:13 +01:00
Jente Hidskes
38f8566155
xdg_shell: check role in is_primary
2022-01-14 14:59:13 +01:00
Jente Hidskes
ee5410d3fb
util: remove unneeded module
2022-01-14 14:59:13 +01:00
Jente Hidskes
d708a73aca
view: require non-NULL surface in view_from_wlr_surface
2022-01-14 14:59:13 +01:00
Jente Hidskes
ba9c245393
view: implement view_from_wlr_surface in terms of wlr_surface->data pointer
2022-01-14 14:59:13 +01:00