Commit Graph

206 Commits

Author SHA1 Message Date
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
emersion 62a16a356d
Support selection MIME types from xwayland to wayland 2017-12-14 13:59:36 +01:00
emersion 6ef0219763
Merge branch 'master' into xwm-selection 2017-12-14 11:20:38 +01:00
Tony Crisci ea4b871e16 xwm: user custom event handler 2017-12-13 17:54:19 -05:00
emersion c67a5824b8
Merge branch 'master' into display-destroy 2017-12-11 16:14:03 +01:00
Tony Crisci 4da4048189 remove todo 2017-12-09 09:21:11 -05:00
Tony Crisci a4bb0574c4 selection fixes 2017-12-08 09:46:50 -05:00
Tony Crisci 52cda5653b Revert "xwm: only take clipboard if window is focused"
This reverts commit e3542d879d.
2017-12-08 09:23:26 -05:00
Tony Crisci 35188834db Merge branch 'master' into feature/xwm-selection 2017-12-08 09:22:44 -05:00
Tony Crisci 31bafc2461 xwm: use edges enum 2017-12-08 06:03:57 -05:00
emersion e30b943fbd
Destroy xwayland client when possible 2017-12-08 10:58:36 +01:00
emersion b06535718d
Do not destroy wl_client in wlr_xwayland_finish 2017-12-08 01:38:45 +01:00
emersion 18eb1eee3f
Listen to display destroy in xwayland, rename wlr_egl_free 2017-12-08 00:59:37 +01:00
Tony Crisci 86df909256 xwayland: remove xwayland param from xsurface methods 2017-12-03 17:30:57 -05:00
Tony Crisci 5d7eb438d9
Merge pull request #437 from emersion/fullscreen
Fullscreen support
2017-11-30 03:25:05 -05:00
Tony Crisci e3542d879d xwm: only take clipboard if window is focused 2017-11-22 14:58:36 -05:00
Greg V 1ae944c071 Use SIGUSR2 for vt switching instead of SIGUSR1
Xwayland uses SIGUSR1 to signal readiness.
With direct(-freebsd) session and Xwayland, wlroots was confusing the
Xwayland readiness signal with a vt switch signal, freezing the desktop.

Same problem was found in Weston in 2014:
https://phabricator.freedesktop.org/T7080
2017-11-22 16:29:31 +03:00
Tony Crisci fc17c74516 xwayland: clean up seat setting 2017-11-22 08:23:23 -05:00
Tony Crisci b0683874e9 xwm: send selection data 2017-11-22 08:10:06 -05:00
Greg V 71aa634ac5 Fix Xwayland second socket path on non-Linux systems
It was creating two sockets with the same path
2017-11-22 15:17:10 +03:00
Tony Crisci ea6f77b484 xwm: get selection data 2017-11-21 18:25:21 -05:00
Tony Crisci 39e2ea8420 xwm: get selection targets 2017-11-21 18:09:25 -05:00
emersion dcb168914e
Merge branch 'master' into fullscreen 2017-11-21 18:34:12 +01:00
Tony Crisci 1ada1b7f0b xwm: x11 data source 2017-11-21 11:19:55 -05:00
Tony Crisci c67cf2e9e4 xwm: handle selection stubs 2017-11-21 10:18:44 -05:00
Tony Crisci 1f976a0f25 xwm: xfixes selection notify 2017-11-21 09:25:05 -05:00
Tony Crisci e786d17f63 Merge branch 'master' into feature/xwm-selection 2017-11-21 07:55:36 -05:00
emersion 151901123f
Merge branch 'master' into refactor-wlr-list 2017-11-20 21:15:58 +01:00
emersion bc68f26960
Fix evince fullscreen under xwayland 2017-11-20 19:52:47 +01:00
Tony Crisci 444257b6b1 xwm: selection init 2017-11-20 08:51:40 -05:00
Tony Crisci 3880fb0a53 xwm: selection stubs 2017-11-20 07:42:09 -05:00
Tony Crisci 0672d9cb52 bug: properly send WM_STATE 2017-11-19 17:55:02 -05:00
emersion 016744ef4d
Refactor wlr_list inside wlroots 2017-11-19 00:17:40 +01:00
Drew DeVault a317ecdab8 Run startup command after xwayland is ready 2017-11-12 16:01:48 -05:00
emersion 26dadacb71
Add wl_shell support for maximized views 2017-11-09 20:06:05 +01:00
emersion 758514fe5d
Fix xwayland _NET_WM_STATE handling 2017-11-09 11:21:55 +01:00
emersion 900fb326f7
Fixes segfault when no xcb_render_pictforminfo_t is available 2017-11-02 17:21:00 +01:00
emersion bb76f52640
Fetch xcb_render_pictformat_t at startup 2017-11-02 16:59:57 +01:00
emersion 3f4ad47421
Use compositor theme for xwm cursor 2017-11-02 16:49:22 +01:00
emersion ddd7b7711c
Load xwm cursor from theme 2017-11-02 15:52:02 +01:00
emersion 4254c28138
Free xwm cursor in xwm_destroy 2017-11-02 11:09:14 +01:00
emersion bdaf66a292
Set xwayland root cursor 2017-11-02 00:03:55 +01:00
Dominique Martinet bf225a60d8 rootston: flush 'close' command on Xwayland
The close would otherwise wait for another xcb event to happen.
Flushing helps 'close' feel reactive.
2017-11-01 20:08:26 +01:00
Tony Crisci ce72a687ce xwm: cleanup send focus window logic 2017-10-29 10:40:16 -04:00
Tony Crisci 88316e7921 xwm: get rid of xcb call macro 2017-10-29 10:36:16 -04:00
Tony Crisci 942a19a069 xwm: cleanup and consistent naming 2017-10-29 10:31:01 -04:00
Tony Crisci 680f8a169d xwm: remove duplicate calls in net wm state read 2017-10-27 15:32:19 -04:00
Tony Crisci 325def3841 xwm: create colormap and visual depth detection 2017-10-27 15:20:50 -04:00
Tony Crisci be297d9d14 xwm: net wm state 2017-10-27 13:17:34 -04:00
Tony Crisci 6a4290b86a xwm: moveresize events 2017-10-27 10:48:09 -04:00
Tony Crisci 4a106648c4 xwm: remove incorrect implementation of net wm state 2017-10-26 15:58:18 -04:00
Tony Crisci 32b848bd46 xwm: handle focus in 2017-10-26 11:54:39 -04:00
Tony Crisci 930ab06857 xwm: send net_wm_state 2017-10-26 11:39:08 -04:00
Tony Crisci 263279b7e0 xwm: rewrite xwm initialization 2017-10-26 10:39:36 -04:00
Tony Crisci ff0006d0f0 xwm: refactor client message handler 2017-10-26 09:01:53 -04:00
Tony Crisci a861b380ef xwm: add net active window to supported 2017-10-25 20:41:55 -04:00
Tony Crisci 7914f4bda9 xwm: dont focus override redirect windows 2017-10-25 20:40:55 -04:00
Tony Crisci d6a1e6fd79 xwm: dont flush if no events 2017-10-25 18:51:15 -04:00
Tony Crisci b443b9a998 xwm: set net active window on xwm create 2017-10-25 08:42:42 -04:00
Tony Crisci 0d1dd84a48 xwm: improve activation and dont send focus twice 2017-10-25 08:39:28 -04:00
Tony Crisci 1be650d78a xwm: only emit unmap notify once 2017-10-25 07:12:25 -04:00
Tony Crisci e5ee01254b xwm: map and unmap notify 2017-10-24 21:07:46 -04:00
Tony Crisci 22435e00c5 xwm: 80col cleanup 2017-10-24 19:18:31 -04:00
Tony Crisci 7643765e7b xwm: unpaired surface list cleanup 2017-10-24 19:16:50 -04:00
Alexander Taylor 3277c6d994 Fix order of WM_HINTS and WM_PROTOCOLS in xwm atom_map 2017-10-24 19:11:57 -04:00
Tony Crisci 2ff94d0036 xwm: get rid of displayable surfaces list 2017-10-24 18:57:20 -04:00
Tony Crisci 79e14f65e0 xwm: fix lists 2017-10-24 14:37:18 -04:00
Tony Crisci fa94a06fd6 xwm: handle configure notify 2017-10-24 13:57:10 -04:00
Tony Crisci a9d70a6256 xwm: set window attributes on create 2017-10-24 13:24:26 -04:00
Tony Crisci a3f2754668 xwm: add surface to rootston on surface commit 2017-10-24 12:00:43 -04:00