Kenny Levinsen
330c50b48d
session: Add missing init to direct-freebsd
...
bad1e9afa8
("session: Add libseat backend") introduced a change to to
how session backends initialize, but failed to update the FreeBSD
specific version of the direct backend accordingly.
Closes: https://github.com/swaywm/wlroots/issues/2376
4 years ago
Simon Ser
297354f847
Remove unnecessary wl_display_dispatch calls
...
wl_display_roundtrip already takes care of dispatching the display.
4 years ago
Kenny Levinsen
bad1e9afa8
session: Add libseat backend
4 years ago
Ilia Bozhinov
9feeb2738d
backend/wayland: destroy relative pointer when output is disconnected
...
Fixes #2243
Fixes #2106
4 years ago
Simon Ser
379835c42f
examples/simple: use wlr_renderer instead of GL
4 years ago
Simon Ser
801c7670b7
examples/simple: use wlr_output_preferred_mode
4 years ago
Daniel De Graaf
c236f60bb6
wlr_virtual_keyboard: fix fd leak
4 years ago
Ryan Walklin
7e990a2991
Don't set XDG_SESSION_TYPE unless logind SetType succeeds
4 years ago
Ryan Walklin
e81d2086c0
Also set XDG_SESSION_TYPE
4 years ago
Ryan Walklin
f0d03fb892
Implement logind session SetType method to change session type to wayland
4 years ago
Simon Ser
30226eb1fb
gamma-control-v1: fix use-after-free in gamma_control_handle_set_gamma
...
gamma_control_send_failed destroys gamma_control.
4 years ago
Ilia Bozhinov
0032954c75
make sure to fail setting gamma on disabled outputs
4 years ago
Devin J. Pohly
aaf490d794
drm: fix uninitialized read
...
get_drm_prop_blob does not set path_len if it returns NULL. Check the
return value before path_len to avoid reading uninitialized memory.
(Granted, this doesn't change the logic at all, but it does make
Valgrind a bit happier.)
4 years ago
Ilia Bozhinov
74f7be7287
xwayland: do not allow apps to change focus after wlroots request
4 years ago
Simon Ser
1dbcfdaf81
render/gles2: remove gles2_procs
...
Move the global into wlr_gles2_renderer. This removes global state and
allows us to have multiple renderers with different GL loaders.
4 years ago
Simon Ser
62da61716f
render/gles2: make push/pop debug functions take a wlr_renderer
4 years ago
Simon Ser
e8872d9ed7
render/gles2: keep ref to wlr_gles2_renderer in wlr_gles2_texture
4 years ago
Simon Ser
26af316b3b
render/gles2: make wlr_gles2_texture_from_* private
...
These functions are unused by compositors (see e.g. [1]) and prevent
wlr_gles2_texture from accessing wlr_gles2_renderer state. This is an
issue for proper teardown [2] and for accessing GLES2 extensions.
[1]: https://github.com/swaywm/wlroots/pull/1962#issuecomment-569511830
[2]: https://github.com/swaywm/wlroots/pull/1962
4 years ago
Rouven Czerwinski
c32d89ee3e
examples: remove unnecessary gles2.h imports
4 years ago
Scott Moreau
6d0ee53e1a
xwm: Set _NET_WM_STATE_FOCUSED property for the focused surface
...
Certain clients require this property to be set for expected behavior.
Most notably, steam client CSD maximize button no longer worked
after unmaximizing once, unless the state was changed by another
method. The state is unset whenever another surface gains focus.
4 years ago
Antonin Décimo
1ae2d976c0
xwayland: free server in error path
4 years ago
Antonin Décimo
d9bb792794
Fix incorrect format parameters
4 years ago
Ronan Pigott
39fd2335bf
virtual_pointer: remember current axis for axis events
4 years ago
Simon Ser
c72efcd1ce
xwayland/xwm: use initializer for props in xsurface_set_wm_state
...
This avoids uninitialized items and makes it clear where the magic
number 2 is coming from.
4 years ago
Simon Ser
13f35139d3
xwayland/xwm: add prop count assert in xsurface_set_net_wm_state
...
This helps mitigate buffer overflows.
4 years ago
Simon Ser
cd4827b3b6
xwayland/xwm: don't insert surface in list on error
...
In case wl_event_loop_add_timer errors out, don't insert the free'd
wlr_xwayland_surface in the list.
Closes: https://github.com/swaywm/wlroots/issues/1721
4 years ago
Antonin Décimo
9686895b4e
Fix typos
4 years ago
Tobias Langendorf
bd387da62d
xwm: add support for xwayland minimize
4 years ago
Simon Ser
751a21d94f
Update version to 0.11.0
4 years ago
Tudor Brindus
a145430afa
input/pointer: add wlr_seat_pointer_wrap
...
It allows a compositor to do things like skip motion events on pointer
constraint unlock.
References: https://github.com/swaywm/sway/pull/5431
4 years ago
Andri Yngvason
6ef5d18757
render: egl: Use current display to restore NULL context
...
eglGetCurrentDisplay() returns EGL_NO_DISPLAY when there is no context current
and eglMakeCurrent() needs a display argument.
Fixes #2327
4 years ago
xdavidwu
842df2bd6c
examples/input-method-keyboard-grab: new example
4 years ago
xdavidwu
595f324f8b
input-method: implement keyboard grabs
4 years ago
xdavidwu
61e2ebac90
virtual-keyboard: add wlr_input_device_get_virtual_keyboard
4 years ago
Simon Ser
b6377b59ff
backend/drm: check drm_surface_make_current return value
...
drm_connector_set_cursor wasn't checking the return value of the
drm_surface_make_current call. On failure, this results in a failed
assertion in wlr_renderer_begin (because no rendering context is
current).
4 years ago
Simon Ser
cccca368c5
backend/drm: fix typo in drm_surface_make_current arg
4 years ago
Isaac Freund
92c85858a9
layer-shell: remove unused surface list
...
This was rendered useless in 5cde359
.
4 years ago
j-n-f
b61a98c417
examples: fix improper use of `free`
...
Closes #2303
4 years ago
Greg V
b2bd536308
xdg-shell: check for existing role before setting xdg_popup_surface_role
...
Hopefully fixes #2056
4 years ago
John Chadwick
58bcec9d94
xwm: end transfers when the requestor is destroyed
...
This improves the failure cases when incremental transfers fail to
complete successfully for one reason or another.
4 years ago
Simon Ser
f82a27f55a
backend/drm: fix DPMS on legacy interface
...
This mirrors what the atomic code does in create_mode_blob.
Closes: https://github.com/swaywm/wlroots/issues/2312
4 years ago
Andri Yngvason
a54ed85881
examples: screencopy-dmabuf: Fix y-inversion
4 years ago
Andri Yngvason
1d835f2035
screencopy: Use correct dmabuf to get y-inversion flag
...
Because wlr_renderer_blit_dmabuf() undoes y-inversion on the source
buffer, it is incorrect to pass the y-inversion flag of the source
buffer to the user.
4 years ago
Andri Yngvason
e05a85327f
render: gles2: Fix y-inversion in gles2_blit_dmabuf()
4 years ago
Scott Moreau
b1a47245a1
xwm: Destroy xwm on hangup or error
...
If Xwayland is restarted, the ready handler assumes there is no xwm instance.
This means all of xwm was leaked on Xwayland restart. This caused compositors
to consume all cpu resources, where time is spent dispatching. Now we destroy
xwm if we get an event mask containing WL_EVENT_HANGUP or WL_EVENT_ERROR.
4 years ago
Scott Moreau
84d2f30faa
xwayland: Don't discard ready signals
...
The xwayland ready signals are used to do initial setup like starting xwm.
Discarding the signals means that the handler functions will not be called
in the case that Xwayland is restarted and thus, xwm managed clients fail.
Fixes #2174."
4 years ago
Simon Ser
c611a8f7e7
output: add backend docs
4 years ago
Isaac Freund
45c0877e34
layer-shell: upgrade to v3, implement destructor
4 years ago
Kenny Levinsen
d2ca220fda
wlr_drag: Destroy drag after releasing grabs
...
wlr_drag sets up keyboard, pointer and touch grabs, which block 'enter'
events (and thus focus changes). For the compositor to be able to update
focus (e.g. to focus the drop target) from the destroy handler, the
grabs must be released before the destroy event is signalled.
4 years ago
Kirill Chibisov
6c8f66ff59
xcursor: add xorg-x11 and cursors path to XCURSORPATH
...
This should match default XCURSORPATH, which is used by libwayland-cursor
and other xcursor loading libraries more closely.
4 years ago