Simon Ser
7b7562eb65
backend/headless: allow variable refresh rate
...
Instead of waking up each 16ms to emit a frame event, arm the timer
when the output is committed. This allows the headless backend to
idle when nothing changes on screen, and behaves similarly to the
other backends.
2022-05-10 16:37:21 +00:00
Kirill Primak
8b0d4947cc
xdg-toplevel: store states on the stack
2022-05-10 19:19:08 +03:00
Kirill Primak
0326ceff90
examples/layer-shell: premultiply alpha
2022-05-09 10:08:44 +00:00
Johannes
12d84f8c36
examples/egl_common: switch rgba format
...
The current ARGB2101010 has really "corase" control over the alpha.
Particularily, examples/layer-shell would look really strange with certain
parameters. For examples, when passing an alpha of 0.84, the box would not
appear transparent at all anymore.
Patched as suggested by @mstoeckl -- thank you!
2022-05-09 09:38:32 +00:00
Simon Ser
f575e445ec
xwayland: terminate when no client is connected
...
Automatically shutdown Xwayland 10s after all X11 clients have
gone away.
2022-05-07 19:25:44 +00:00
Simon Ser
352064d76d
xwayland: add wlr_xwayland_server_options.terminate_delay
...
This allows users to specify a delay after which the Xwayland process
terminates itself when there are no more X11 clients connected.
2022-05-07 19:25:44 +00:00
Manuel Stoeckl
7ad67e0f1d
render/gles: add support for some 16-bpc unsigned shm formats
...
These formats require EXT_texture_norm16, which in turn needs OpenGL
ES 3.1. The EXT_texture_norm16 extension does not support passing
gl_internalformat = GL_RGBA to glTexImage2D, as can be done for
formats available in OpenGL ES 2.0, so this commit adds a field to
wlr_gles2_pixel_format to provide a more specific internalformat
parameter to glTexImage2D.
2022-05-07 16:25:38 +00:00
xiaoyaobing
cb012c5cb5
tinywl/tinywl: clean up tinywl_output when wlr_output is gone
...
Add destroy event processing.
Fixes: https://gitlab.freedesktop.org/wlroots/wlroots/-/issues/3416
2022-05-06 20:05:17 +03:00
Simon Ser
410c08cdc6
drm-lease-v1: skip device on wlr_drm_backend_get_non_master_fd failure
...
On some setups, wlr_drm_backend_get_non_master_fd may fail because
of permission issues. Instead of exposing a bogus global, bail out.
Closes: https://gitlab.freedesktop.org/wlroots/wlroots/-/issues/3391
2022-05-02 15:44:16 +00:00
Antonin Décimo
95d3529edf
xcursor: check that XDG base directory path is absolute
...
The spec reads:
> All paths set in these environment variables must be absolute. If an
> implementation encounters a relative path in any of these variables it should
> consider the path invalid and ignore it.
and
> If $XDG_DATA_HOME is either not set or empty, a default equal to
> $HOME/.local/share should be used.
Testing that the path is absolute also entails that is is non-empty.
2022-05-02 15:15:24 +02:00
zccrs
48c811ffb6
render/vulkan: fix undefined reference to wlr_texture_is_vk
...
Added the implement of wlr_texture_is_vk.
Fixes: https://gitlab.freedesktop.org/wlroots/wlroots/-/issues/3419
2022-05-01 14:46:18 +08:00
Kirill Primak
bc4350c976
backend/wayland: reset active pointer on destroy
2022-04-29 21:55:04 +03:00
Kirill Primak
ec2af17674
CONTRIBUTING.md: update init/finish description
2022-04-28 08:30:26 +00:00
Simon Ser
a1e1e9aba8
Revert "backend/wayland: zero out finished input devices"
...
This reverts commit 03c88b07ba
.
init functions now zero out the structs.
2022-04-28 10:09:50 +02:00
Simon Ser
6c350799b2
Zero-initialize structs in init functions
...
Ensures there is no field left to its previous undefined value after
calling an init function.
2022-04-28 10:09:50 +02:00
Simon Ser
54653b5d95
util/addon: fix public include
...
Everything in wlr/ is public and should be included via angle-bracket
include directives.
2022-04-26 09:43:10 +02:00
tiosgz
c091a07589
CONTRIBUTING.md: make forks public to let the CI run
...
This little note helps first-time contributors who are in doubt regarding the
repo visibility.
2022-04-24 17:07:04 +00:00
zsugabubus
91da4c557b
xwayland: do not double free server on destroy
2022-04-23 08:08:33 +00:00
Kirill Primak
03c88b07ba
backend/wayland: zero out finished input devices
2022-04-22 17:51:24 +00:00
Kirill Primak
a43d105a50
backend/wayland/pointer: fix indentation
2022-04-22 17:51:24 +00:00
Alexander Orzechowski
2ce0305483
seat: Don't finish wlr_keyboard if server was never started
2022-04-22 01:49:58 +00:00
John Lindgren
640f3b9f21
Revert "Copy xcb_icccm structs into wlroots"
...
The original commit introduced a bug by transposing the order of
some of the fields in xcb_size_hints_t. Since XCB ICCCM support is
required now, we can just eliminate the duplicate structs.
With minor changes:
- Remove #ifdef HAS_XCB_ICCCM guards
- Fix #includes
- Fix references to local size_hints struct
This reverts commit 12b9b1a4bd
.
2022-04-17 14:44:52 +00:00
Ferdinand Bachmann
d3a2ea33e5
types/seat/wlr_seat.c: fix focused_client being null after seat_client recreation
2022-04-16 20:56:30 +02:00
Ferdinand Bachmann
2d4e813530
types/wlr_pointer_gestures_v1.c: get client from seat client instead of resource
2022-04-16 20:53:52 +02:00
Ferdinand Bachmann
eedb9df531
types/wlr_pointer_gestures_v1: null-check both focused_surface and focused_client
...
(fixes #3385 )
2022-04-15 16:06:16 +02:00
Kirill Primak
4ba8458255
scene/output-layout: fix scene destroy handler
2022-04-14 06:51:39 +00:00
Kirill Primak
dec2565f2b
xdg-toplevel: don't schedule configures on state requests
2022-04-13 17:00:06 +00:00
Kirill Primak
04aa44b4df
xdg-foreign-v2: treat unmapped parents as NULL
2022-04-13 16:48:15 +00:00
Kirill Primak
dac040f87f
xdg-foreign-v1: treat unmapped parents as NULL
2022-04-13 16:48:15 +00:00
Kirill Primak
bf3f60ff73
xdg-toplevel: treat unmapped parents as NULL
2022-04-13 16:48:15 +00:00
Kirill Chibisov
2e14bed9f7
meson: use target_machine instead of host_machine
2022-04-03 11:46:25 +00:00
Kirill Primak
578e5614d4
tinywl: remove outdated non-feature from README.md
...
Now that tinywl uses wlr_scene under the hood, damage tracking comes for
free.
2022-04-01 14:22:28 +00:00
Kirill Primak
62fbf3f4ba
tinywl: don't generate xdg-shell-protocol.c
...
It's unused, and wlroots-based compositors don't need to do this anyway.
2022-04-01 11:51:24 +03:00
Kenny Levinsen
bb32349c97
meson: soversion arg should be string
...
muon, a meson implementation in C, is more strict with its types and
revealed this discrepancy between meson behavior and documentation.
2022-03-28 20:21:49 +02:00
Guido Günther
dd03d839ab
xdg-activation: Deduplicate token creation code
...
There were three places initializing a token:
- wlr_xdg_activation_v1_add_token
- wlr_xdg_activation_token_v1_create
- activation_handle_get_activation_token
The initialization of the token.destroy was missing in the first one. To
prevent these functions from getting out of sync move the token creation
into a common function.
Fixes 4c59f7d4
("xdg-activation: Allow to submit tokens")
2022-03-26 17:28:51 +01:00
Leonardo Hernández Hernández
4519117a68
seat: take wlr_keyboard in wlr_seat_set_keyboard()
...
Signed-off-by: Leonardo Hernández Hernández <leohdz172@protonmail.com>
2022-03-23 13:08:41 +00:00
Guido Günther
4cc2a03620
layer-shell: Make wlr_layer_surface_v1_from_resource public
...
This allows compositors to leverage the `wl_instance_of` based type
check.
2022-03-23 09:19:43 +00:00
Simon Zeni
aaf787ee56
types/wlr_touch: uniformize events name
2022-03-17 18:16:14 +00:00
Simon Zeni
e732c5c895
types/wlr_tablet_tool: uniformize events name
2022-03-17 18:16:14 +00:00
Simon Zeni
d1f543a9d8
types/wlr_tablet_pad: uniformize events name
2022-03-17 18:16:14 +00:00
Simon Zeni
13d7fa2f03
types/wlr_switch: uniformize events name
2022-03-17 18:16:14 +00:00
Simon Zeni
9a17200446
types/wlr_keyboard: uniformize events name
2022-03-17 18:16:14 +00:00
Simon Zeni
bd6c000d14
types/wlr_pointer: uniformize events name
2022-03-17 18:16:14 +00:00
Simon Zeni
96ccc50c57
types/wlr_input_device: move width_mm and height_mm fields to wlr_tablet and wlr_touch
2022-03-17 13:44:19 -04:00
Simon Zeni
a92e5f8d46
types/wlr_input_device: move output_name field to wlr_pointer and wlr_touch
2022-03-17 13:44:18 -04:00
Simon Zeni
2001441a37
backend/wayland: remove wl_seat_listener from public API
2022-03-17 17:16:47 +00:00
Simon Zeni
b7e9ad7989
backend/wayland: remove wlr_wl_input_device
2022-03-17 17:16:47 +00:00
Simon Zeni
56f7c000b5
backend/wayland/tablet_v2: give wlr_tablet_* ownership to wlr_wl_seat
2022-03-17 17:16:47 +00:00
Simon Zeni
d3fb44314c
backend/wayland: give wlr_touch ownership to wlr_wl_seat
2022-03-17 17:16:47 +00:00
Simon Zeni
e723dd928b
backend/wayland: drop wlr_switch support
2022-03-17 17:16:47 +00:00