Markus Ongyerth
000b305ecc
backend/libinput: Manage tablet tool livetimes
...
This adds the management code to manage tablet tools lifetimes from
libinput.
It follows the suggestion made in the tablet-unstable-v2.xml to destroy
tablet_tools once all tablets that it got into contact with were removed
from the system. This is implemented via a refcount.
If a tool is *not* unique, it will be destroyed on proximity out. This
is libinput specific and mentioned in libinput docs that tools will not
be found again, so we shouldn't keep a reference to them.
Also they can't be on other tablets as well, because they cannot be
tracked.
The naming in this commit is a bit off (to not break things).
The wlr names stay the same, tablet_tool is the libinput_device with
capaiblity LIBINPUT_DEVICE_CAP_TABLET_TOOL which is more akin to
"tablet" in the tablet-unstable-v2 protocol.
The struct that corresponds to the tablet_tool in tablet-unstable-v2 is
called tablet_tool_tool, a rename should be done at some point in the
future.
7 years ago
Markus Ongyerth
bf8751d632
Start tablet protocol
7 years ago
Drew DeVault
4984ea49ee
Merge pull request #1132 from emersion/fix-screencopy-frame-error
...
screencopy: fix segfault when client supplies invalid buffer
7 years ago
Drew DeVault
b902c2bd7c
Revert "Move side-effect out of assert statement"
...
This reverts commit a0afedcd8f
.
7 years ago
emersion
935a3f2ebb
screencopy: fix segfault when client supplies invalid buffer
7 years ago
Drew DeVault
a0afedcd8f
Move side-effect out of assert statement
7 years ago
Drew DeVault
3ae423b0e3
Merge pull request #1130 from emersion/surface-opaque
...
Add wlr_surface.opaque_region
7 years ago
emersion
5bb272d7f3
surface: add wlr_surface.opaque_region
7 years ago
emersion
c4915d1492
render: add wlr_texture_is_opaque
7 years ago
emersion
d8bbdf3bd5
Merge pull request #1128 from agx/unbreak-xvfb
...
Unbreak xvfb
7 years ago
Drew DeVault
e226e2c011
Missed some old wlr_log calls
7 years ago
Drew DeVault
c0b4217fce
Merge pull request #1116 from emersion/surface-role
...
surface: replace wlr_surface_set_role_committed with wlr_surface_role
7 years ago
Guido Günther
40fe252c2d
x11: make sure event source is drained
...
Otherwise running under Xvfb will not deliver any events. This results
in e.g. weston-info reporting a 0x0 window size (which results in all
sorts of problems).
7 years ago
Guido Günther
8515b7c65b
x11: use correct type for events in wl_event_loop_add_fd
7 years ago
Guido Günther
e463b49166
x11: Check if xcb_configure_window worked
...
So far we did not check for any errors
7 years ago
Drew DeVault
2518de655c
Merge pull request #1126 from emersion/wlr-log-prefix
...
util: add wlr_ prefix to log symbols
7 years ago
emersion
7cbef15206
util: add wlr_ prefix to log symbols
7 years ago
emersion
e78d72f42e
Merge pull request #1124 from 5nefarious/handle-32bit-time
...
fix: handle 32 bit time_t (or smaller)
7 years ago
Arvin Ignaci
fad62a3e1c
fix: handle 32 bit time_t (or smaller)
7 years ago
Drew DeVault
ffc8780893
Merge pull request #1121 from emersion/rename-wl-resources-global
...
Rename wl_resources to resource, wl_global to global
7 years ago
emersion
deeca53e33
Rename wl_resources to resource, wl_global to global
7 years ago
emersion
66ac9e7f49
Merge pull request #1120 from vilhalmer/gamma-control-set-bail-on-destroyed-resource
...
Bail from setting gamma on destroyed resource
7 years ago
vilhalmer
0260f042d2
Bail from setting gamma on destroyed resource
7 years ago
Drew DeVault
c1a6422b33
Merge pull request #1118 from emersion/xdg-output-no-noop-updates
...
xdg-output: don't send no-op updates
7 years ago
emersion
c19d475753
xdg-output: don't send no-op updates
...
To begin with, no-op updates are unnecessary, so this patch is an
improvement on its own.
Then, this fixes hotplugging issues with xwayland. xwayland waits
for both wl_output and xdg_output to send a "done" event. However,
it doesn't handle well desynchronized "done" updates: if xdg-output
sends "done" twice, the second one will wait for the next wl_output
"done" event. This is an issue when the first is a no-op and the
second is a real update: the second isn't applied. I've considered
patching xwayland instead, but it seems pretty complicated.
7 years ago
Drew DeVault
024fc76eee
Merge pull request #1117 from emersion/inert-output
...
output: make wl_output resources inert
7 years ago
emersion
5fe50b9a28
output: make wl_output resources inert
7 years ago
emersion
33db4263a0
surface: replace wlr_surface_set_role_committed with wlr_surface_role
7 years ago
Drew DeVault
be54278207
Merge pull request #1095 from agx/output-add-mode
...
Allow to add additional modes to outputs
7 years ago
Guido Günther
60a83e99f4
rootston: use wl_list_empty instead of wl_list_length > 0
7 years ago
Guido Günther
709d7dd722
rootston: Handle modeline parameter
...
This allows to pass custom modes.
7 years ago
Guido Günther
8d72090afe
drm: Allow to add additional modes
...
This allows to add additional modes to the list of available video modes
using VESA Coordinated Video Timing information.
Closes #1080
7 years ago
Drew DeVault
7c6588d7ae
Merge pull request #1076 from emersion/redesign-surface-state
...
surface: redesign state
7 years ago
emersion
515d682312
surface: fix damage when moving subsurfaces with scale > 1
7 years ago
emersion
e665a74122
surface: don't clip input and opaque regions
...
These can be set to e.g. regions larger than the surface. If the
surface resizes itself, it doesn't need to set again these regions.
7 years ago
emersion
226306ed45
surface: rename wlr_surface_state.buffer to buffer_resource
7 years ago
emersion
68c133da2f
surface: fix crash on NULL commit
7 years ago
emersion
6f0eb11024
surface: fix previous state eating current state resources
7 years ago
emersion
f440708274
output: fix cursor attach coords handling
7 years ago
emersion
012e38fbe5
surface: add wlr_surface.previous
7 years ago
emersion
78555abba3
surface: move position and scale out of wlr_surface_state
7 years ago
emersion
233bfe2f4f
surface: do not monkey-patch state damage
7 years ago
emersion
adf0423f7c
surface: better buffer position handling
7 years ago
emersion
e6399c61b7
surface: fix WLR_SURFACE_STATE_BUFFER_DAMAGE value
7 years ago
emersion
3c0d672ebd
surface: make pending and current embedded structs
7 years ago
emersion
64836ddfe7
surface: remove wlr_surface_state.subsurface_position
7 years ago
emersion
3ee86b6105
surface: rename invalid state
7 years ago
Drew DeVault
5d1c5ff80b
Merge pull request #1112 from emersion/fix-debug-damage-tracking
...
Fix damage tracking debug mode
7 years ago
emersion
8c2b4244a1
Fix damage tracking debug mode
7 years ago
Drew DeVault
b0f7072737
Merge pull request #1111 from martinetd/wlr-seat-destroy
...
wlr_seat destroy: fix use-after-free when destroying clients
7 years ago