Age | Commit message (Collapse) | Author |
|
Layer surfaces are not notified of cursor position changes if the surface moves, only if the cursor moves. This workaround emits a cursor position event every time a cursor ends up over a newly resized layer surface to make sure the following clicks land in the right place.
This change doesn't address sending leave events when a cursor previously present over the surface becomes away.
There are 2 separate mechanisms in play, because a layer surface gets resized in 2 steps:
1. Layer surface resize & rearrange.
2. Underlying surface resize.
The first step may affect all layer surfaces. The cursor events are sent to cursors placed over all layer surfaces which have moved (not been resized). The second step affects any layer surface whose surface changed size. The cursor event is sent only to that surface.
Together, these events cover all surfaces: those which moves, and those which changed size, as long as each layer surface resize is accompanied by an immediate surface resize.
|
|
|
|
After destroying a keyboard input device, seat's listeners could still be pointing to destroyed wlr_input_device signals. This patch makes sure the references are removed while the input device is being destroyed.
|
|
backend/drm: add support for DRM_MODE_CONNECTOR_DPI
|
|
|
|
Had an outdated copy of wlroots, so missed that one.
|
|
ctags: use -f instead of -o
|
|
Fix build on FreeBSD
|
|
The later does not exist on FreeBSD
See #725
|
|
|
|
move wlr_drm_connector_add_mode to wlr/backend/drm.h
|
|
|
|
Keep X11 backend windows from having an invalid size
|
|
Set the window width and height, not the location of the window.
|
|
This avoids leaving around zombies, without having to setup SIGCHLD
handler (which interferes with other fork/waitpid calls).
|
|
Events that set the window to either a width or height of zero are now
ignored and logged.
|
|
Fixes issue #1170
Also set the created window size to match the output size.
|
|
remove dangling declaration of wlr_xdg_surface_popup_get_position()
|
|
|
|
session: load GPU devices even if they have zero connectors
|
|
On some systems (most notably laptops with two GPUs) there are GPUs that
don't have attached outputs. However, we still want to load those GPUs
because they could still be used by the compositor for rendering.
|
|
rootston: add keybinding to toggle decoration mode
|
|
|
|
Check for DRM prime
|
|
This will indicate the user properly when multi-GPU is not supported by
their GPU driver.
|
|
Fix support for multiple GPU
|
|
These aren't used anymore and crashes when the gbm_bo tries to get
destroyed (e.g. on hotplug).
|
|
Create rendering resources on parent GPU, so that we can sample the
passed in texture properly. The cursor buffer needs to remain on the
same GPU.
|
|
xdg-output: fix segfault in handle_layout_destroy
|
|
|
|
All screens on secondary GPU in multiple GPU configurations
was flipped 180.
The flipped screens was always on secondary card (the primary card
was always correct).
Tested on nouveau with:
WLR_DRM_DEVICES=/dev/dri/card1:/dev/dri/card2
WLR_DRM_DEVICES=/dev/dri/card2:/dev/dri/card1
The commit is fixing this problem. Now all screens are "normal".
|
|
Texture functions, that create and manipulate textures should switch
the current context if necessary.
thanks to: @emersion
Fixes #934
|
|
backend_get_renderer() is now returning the renderer of the primary GPU, instead
of its own renderer, since that's the thing which actually does all of the "real"
rendering
wlr_multi_backend_add() is now adding all subbackends (otherwise only one GPU
is handled).
credits: @ascent12
|
|
Add missing dependency libinput to types/meson.build
|
|
The file `types/tablet_v2/wlr_tablet_v2.c` includes <libinput.h>.
Without this change, libinput.h may not be found on
some systems.
|
|
Implement wlr-gamma-control-unstable-v1
|
|
xwayland: document SIGUSR1 handler
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|