Dominique Martinet
f8428d1063
xcb errors: optional dependency with improved messages
...
Now message can look like:
[xwayland/xwm.c:991] xcb error: op ChangeProperty (no minor), code Window (no extension), value 6291465
instead of this one when the lib is not available:
[xwayland/xwm.c:999] xcb error: op 18:0, code 3, sequence 103, value 6291465
The value in case of Window is the window id, so we can tell what
function applied on which window which is a good start.
The sequence ought to be able to tell us more precisely which
invocation it was, but we never log it when calling functions
so is useless in practice and no longer logged.
2018-03-03 11:46:04 +01:00
Dominique Martinet
2a9ba5c8dc
xcb errors: log raw values
2018-03-03 11:43:23 +01:00
Dominique Martinet
5ec06dcecd
xwm: fix call of xcb_change_window_attributes for old gcc versions
...
gcc 6.3.0 (at least) complains about &values:
expected ‘const uint32_t * {aka const unsigned int *}’ but argument
is of type ‘uint32_t (*)[1] {aka unsigned int (*)[1]}’
Reported by thorwil on irc
2018-03-01 21:13:00 +01:00
Markus Ongyerth
bb676013ed
add xwayland unmanaged tests to support dmenu
...
This adds `wlr_xwayland_surface_is_unamanged`, to allow compositors more
fine grained control over XWayland focus.
A surface that is unmanaged should not receive focus, while other
windows that are just override redirect may want it (dmenu).
The way unamanged is determined is taken from wlc.
2018-02-26 12:02:49 +01:00
emersion
b1e2718dd7
xwayland: fix some use-after-free in xwm
2018-02-23 10:20:53 +01:00
Drew DeVault
1d9be89e2d
Revert "ELF Visibility"
2018-02-19 18:01:27 -05:00
Scott Anderson
86269052eb
Explicitly export EFL symbols
2018-02-19 14:26:40 +13:00
Drew DeVault
8c1cc45c7d
Merge pull request #629 from emersion/safe-wl-resource-get-user-data
...
Wrap wl_resource_get_user_data into safer helper functions
2018-02-16 09:27:26 -05:00
Rodrigo Lourenço
168e26489a
Add missing dependencies
2018-02-14 18:42:39 +00:00
emersion
392d54a35d
Wrap wl_resource_get_user_data into safer helper functions
...
This ensures we're not incorrectly casting a resource.
Fixes #628
2018-02-13 23:48:46 +01:00
emersion
c2e1474010
Reformat all #include directives
2018-02-12 21:29:23 +01:00
emersion
36ead80cd1
Make wlr_signal_emit_safe private
2018-02-12 19:52:47 +01:00
emersion
5e58d46cc1
Add wlr_signal_emit_safe
2018-02-12 09:12:31 +01:00
emersion
59c53e8333
Merge remote-tracking branch 'upstream/master' into output-damage
2018-01-21 22:18:06 +01:00
emersion
f704c3d42b
rootston: fix damage tracking for fullscreen xwayland views
2018-01-21 22:08:38 +01:00
Johannes Schramm
47eb478c35
style: add else keywords in xwm.c
2018-01-21 17:04:23 +01:00
Johannes Schramm
dcc743047b
style: include brackets for if/while/for, even if it's a single statement
2018-01-21 16:28:21 +01:00
emersion
eeffe11337
surface: add wlr_surface new_subsurface and wlr_subsurface destroy events
2018-01-21 14:22:33 +01:00
emersion
65b28b3823
xwayland: render children window in fullscreen
2018-01-14 18:19:37 +01:00
emersion
38ed3b4245
seat: rename selection_source to selection_data_source, remove unused data_device
2017-12-30 09:58:04 +01:00
Dominique Martinet
6ed1884c84
xwm_get_render_format: fix typo in error message
2017-12-29 21:23:55 +01:00
Dominique Martinet
ec952931a1
wlr_xwayland: preserve end of struct on restart
...
This is more robust than trying to recopy a few fields.
Note: wlr_xwayland->events.ready now resets after each trigger, so one can
hook on it again and be called when restart is ready
2017-12-29 20:50:50 +01:00
Dominique Martinet
a6fb4b007b
xwm_get_render_format: check NULL return value
2017-12-29 20:31:04 +01:00
Dominique Martinet
41649a1f9a
xwm_selection_finish: set NULL seat for xwayland
...
While they could eventually be split appart, the current approach could lead to
double wl_list_remove() calls on selections which is incorrect
2017-12-29 20:30:49 +01:00
Dominique Martinet
e0eafa0429
xwayland: listen to wlr_seat destroy signal
2017-12-29 19:00:08 +01:00
Dominique Martinet
61b91a5721
xwayland restart: copy seat and events over
...
This is very ugly, there must be a better way to do that (not memset it?)
Meanwhile, this fixes rootston xwayland on restart
2017-12-29 17:33:11 +01:00
Dominique Martinet
bb0d888f25
xwayland selection: further cleanup on Xwayland exit
...
This is necessary if our last primary/clipboard selection was on Xwayland,
and we try to paste to native wayland after Xwayland died
2017-12-29 16:30:59 +01:00
Dominique Martinet
f8a346380c
xwayland xwm_get_render_format: free reply
2017-12-29 15:56:47 +01:00
Dominique Martinet
dad9543c51
Xwayland: remove xwm from selection seat listeners on destroy
2017-12-29 15:56:26 +01:00
Dominique Martinet
e5dd98c7f5
xwayland/selection: handle wl_array_add failure better
...
Just abort and deregister instead of trying to throw some input out,
which would have lead to inconsistent paste
2017-12-28 12:17:57 +01:00
Dominique Martinet
3eb4fa15ee
ENOMEM checks: consistently check wl_array_add return
2017-12-28 09:48:35 +01:00
Björn Esser
ff13849624
config: Avoid clash with other config-headers
2017-12-27 17:13:58 +01:00
emersion
a79dc7df51
Merge pull request #524 from acrisci/role-committed
...
[wip] Role committed
2017-12-27 13:02:49 +01:00
Tony Crisci
5c5f0611c4
xwayland: role committed
2017-12-27 06:50:21 -05:00
Tony Crisci
e809250171
Merge pull request #519 from emersion/xwayland-primary-selection
...
Implement xwayland primary selection sync
2017-12-27 06:23:04 -05:00
emersion
1c9b09ca92
Add logging to selection message handlers
2017-12-27 11:58:51 +01:00
emersion
b3072f81fe
Allow calling xwm_set_seat with a NULL seat
2017-12-27 11:49:25 +01:00
Björn Esser
57a09c8ca4
config: Put all defines into config.h
2017-12-26 18:51:27 +01:00
emersion
998267e291
Fix primary selection not sent to xwayland when clipboard is empty
2017-12-26 12:20:01 +01:00
emersion
4a11609b76
Fix use-after-free when destroying selection sources
2017-12-25 18:18:26 +01:00
emersion
cdc21cdcff
Properly free selection sources
2017-12-25 16:23:17 +01:00
emersion
6dffaa7bb7
Implement xwayland primary selection sync
2017-12-25 16:10:16 +01:00
emersion
810c4b119b
Fix clipboard from xwayland to wayland
2017-12-15 09:42:42 +01:00
emersion
76dcb694c1
Send empty selection when clipboard is empty
2017-12-15 09:37:04 +01:00
emersion
5584f42c1e
Destroy xwm selection window on destroy
2017-12-15 00:05:05 +01:00
emersion
6b42bfad18
Merge branch 'master' into xwm-selection
2017-12-14 23:59:04 +01:00
emersion
b884025558
Deny access to clipboard if no xwayland window is focused
2017-12-14 23:57:44 +01:00
emersion
75ef7860bb
Merge branch 'master' into display-destroy
2017-12-14 20:29:30 +01:00
emersion
343efd0c20
Only reply to clipboard selection events
2017-12-14 16:44:30 +01:00
emersion
a4094c82c7
Support selection MIME types from wayland to xwayland
2017-12-14 16:24:12 +01:00