aboutsummaryrefslogtreecommitdiff
path: root/xwayland
AgeCommit message (Collapse)Author
2018-04-02Missed a spotDrew DeVault
2018-03-31xwayland: specify xwm cursor stride in bytesemersion
2018-03-30xwayland: rename map_notify to map for consistencyemersion
2018-03-25Fix segfault in xwm_read_data_sourceemersion
2018-03-04xwm.h: fix guard ifdef and remove wlr_ prefix from xwm_atoms_containsDominique Martinet
2018-03-03xcb errors: init errors context at startDominique Martinet
`xcb_errors_context_new` is more than just a malloc, it does a few xcb requests so we benefit from not generating a new context everytime
2018-03-03move xwm.h out of include/wlrDominique Martinet
xwm.h was meant to be private, so move it to include/xwayland/xwm.h We had an ifdef WLR_HAS_XCB_ICCCM in xwayland.h which was easy to move to xwm, it is not safe to use the WLR_HAS_* in the public headers. I checked a few of our current users and none rely on xwm.h being public as expected (rootston, sway, hsroots)
2018-03-03xcb error: get unhandled events namesDominique Martinet
This provides more friendly debug messages for unhandled events, for example: [xwayland/xwm.c:1033] unhandled X11 event: FocusOut (10) [xwayland/xwm.c:1033] unhandled X11 event: MappingNotify (34)
2018-03-03xcb error: always log sequenceDominique Martinet
2018-03-03xcb errors: address declare-assign styleDominique Martinet
2018-03-03xcb errors: optional dependency with improved messagesDominique Martinet
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-03xcb errors: log raw valuesDominique Martinet
2018-03-01xwm: fix call of xcb_change_window_attributes for old gcc versionsDominique Martinet
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-02-26add xwayland unmanaged tests to support dmenuMarkus Ongyerth
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-23xwayland: fix some use-after-free in xwmemersion
2018-02-19Revert "ELF Visibility"Drew DeVault
2018-02-19Explicitly export EFL symbolsScott Anderson
2018-02-16Merge pull request #629 from emersion/safe-wl-resource-get-user-dataDrew DeVault
Wrap wl_resource_get_user_data into safer helper functions
2018-02-14Add missing dependenciesRodrigo Lourenço
2018-02-13Wrap wl_resource_get_user_data into safer helper functionsemersion
This ensures we're not incorrectly casting a resource. Fixes #628
2018-02-12Reformat all #include directivesemersion
2018-02-12Make wlr_signal_emit_safe privateemersion
2018-02-12Add wlr_signal_emit_safeemersion
2018-01-21Merge remote-tracking branch 'upstream/master' into output-damageemersion
2018-01-21rootston: fix damage tracking for fullscreen xwayland viewsemersion
2018-01-21style: add else keywords in xwm.cJohannes Schramm
2018-01-21style: include brackets for if/while/for, even if it's a single statementJohannes Schramm
2018-01-21surface: add wlr_surface new_subsurface and wlr_subsurface destroy eventsemersion
2018-01-14xwayland: render children window in fullscreenemersion
2017-12-30seat: rename selection_source to selection_data_source, remove unused ↵emersion
data_device
2017-12-29xwm_get_render_format: fix typo in error messageDominique Martinet
2017-12-29wlr_xwayland: preserve end of struct on restartDominique Martinet
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-29xwm_get_render_format: check NULL return valueDominique Martinet
2017-12-29xwm_selection_finish: set NULL seat for xwaylandDominique Martinet
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-29xwayland: listen to wlr_seat destroy signalDominique Martinet
2017-12-29xwayland restart: copy seat and events overDominique Martinet
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-29xwayland selection: further cleanup on Xwayland exitDominique Martinet
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-29xwayland xwm_get_render_format: free replyDominique Martinet
2017-12-29Xwayland: remove xwm from selection seat listeners on destroyDominique Martinet
2017-12-28xwayland/selection: handle wl_array_add failure betterDominique Martinet
Just abort and deregister instead of trying to throw some input out, which would have lead to inconsistent paste
2017-12-28ENOMEM checks: consistently check wl_array_add returnDominique Martinet
2017-12-27config: Avoid clash with other config-headersBjörn Esser
2017-12-27Merge pull request #524 from acrisci/role-committedemersion
[wip] Role committed
2017-12-27xwayland: role committedTony Crisci
2017-12-27Merge pull request #519 from emersion/xwayland-primary-selectionTony Crisci
Implement xwayland primary selection sync
2017-12-27Add logging to selection message handlersemersion
2017-12-27Allow calling xwm_set_seat with a NULL seatemersion
2017-12-26config: Put all defines into config.hBjörn Esser
2017-12-26Fix primary selection not sent to xwayland when clipboard is emptyemersion
2017-12-25Fix use-after-free when destroying selection sourcesemersion