Dominique Martinet
d9a724c4a2
xcb errors: init errors context at start
...
`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-03 17:06:30 +01:00
Dominique Martinet
7d1870c6f1
move xwm.h out of include/wlr
...
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-03 17:03:21 +01:00
Dominique Martinet
f481791669
xcb error: get unhandled events names
...
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-03 16:27:29 +01:00
Dominique Martinet
8026cd2a06
xcb error: always log sequence
2018-03-03 16:13:45 +01:00
Dominique Martinet
6f9da97565
xcb errors: address declare-assign style
2018-03-03 12:00:32 +01:00
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
emersion
3d176fcd1a
Merge pull request #697 from martinetd/xwm_values
...
xwm: fix call of xcb_change_window_attributes for old gcc versions
2018-03-01 21:44:52 +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
Drew DeVault
0820557c8c
Merge pull request #693 from emersion/fix-output-bind-multiple
...
Fix clients binding multiple times to the same output
2018-03-01 11:23:41 -05:00
emersion
7340cf19ea
Merge pull request #694 from Ongy/keep_current_mode
...
prevent current_mode null on output_enable(false)
2018-03-01 17:08:48 +01:00
Markus Ongyerth
2cea430488
prevent current_mode null on output_enable(false)
...
The current mode was set to NULL to abuse it as state variable
persisting DRM suspend/resume, this results resulted in a segfault on
normal DPMS cycle.
This reverts that change and uses the wlr_output enabled variable, which
also persists and makes more sense.
2018-03-01 15:48:25 +01:00
emersion
90148e64ab
Fix clients binding multiple times to the same output
2018-03-01 10:19:48 +01:00
emersion
d9571f27e6
Merge pull request #691 from agx/egl_ext_match
...
Avoid false positives on egl extension matching
2018-02-28 21:22:00 +01:00
Guido Günther
d9f2e90df6
Avoid false positives on egl extension matching
...
Due to the strstr prefix match EGL_EXT_foo would be incorrectly matched
if EGL_EXT_foobar would be available but not foo.
This doesn't matter for the currently checked extensions but will matter
for EGL_EXT_image_dma_buf_import_modifiers vs
EGL_EXT_image_dma_buf_import
Code borrowed from weston
2018-02-28 20:03:06 +01:00
emersion
8ba8cc37f2
Merge pull request #692 from agx/texture_format_err
...
textures: tell us which texture format is unsupported
2018-02-28 18:56:55 +01:00
Guido Günther
2dc8a35db2
textures: tell us which texture format is unsupported
2018-02-28 18:36:32 +01:00
emersion
73045a7d9d
Merge pull request #690 from agx/eglCreateImageKHR
...
wlr_egl_create_image: return NULL when function is missing
2018-02-28 08:55:37 +01:00
Guido Günther
d928ddc36c
wlr_egl_create_image: return NULL when function is missing
...
This matches the return value of elgCreateImage in case of error.
2018-02-28 08:44:00 +01:00
emersion
75a7340a27
Merge pull request #689 from Ongy/fullscreen-opacity
...
set fullscreen alpha to 1
2018-02-27 18:22:31 +01:00
Markus Ongyerth
14bb550bff
set alpha to 1.0 for drag icons
2018-02-27 18:18:39 +01:00
Markus Ongyerth
333110515e
set fullscreen alpha to 1
2018-02-27 10:55:05 +01:00
emersion
c2ba1869ce
Merge pull request #670 from Ongy/xwayland_unmanaged
...
add xwayland unmanaged tests to support dmenu
2018-02-27 09:47:23 +01:00
emersion
1171368cfc
Merge pull request #687 from agx/roots_view.alpha
...
rootston: drop saved.alpha from roots_view
2018-02-26 19:53:55 +01:00
Guido Günther
f97ef3f5d4
rootston: drop saved.alpha from roots_view
...
It's currently unused.
2018-02-26 19:45:24 +01:00
Drew DeVault
bae17ab97c
Merge pull request #683 from Ongy/drm_remember_dpms
...
restore dpms state on drm resume
2018-02-26 13:07:29 -05:00
Markus Ongyerth
a65ef8ea86
restore dpms state on drm resume
...
If there is no current mode, set outputs to dpms off in drm resume.
Sets current mode to null on disable to ensure this can be checked.
2018-02-26 18:12:51 +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
Drew DeVault
3296365ce5
Merge pull request #659 from agx/alpha
...
Make wlr_render_with_matrix use alpha
2018-02-25 13:16:35 -05:00
Guido Günther
202a728ee9
rootstion: handle alpha in server side decorations
2018-02-25 16:53:36 +01:00
Guido Günther
9864f1c136
rootston: wire up window alpha keybinding
2018-02-25 16:53:36 +01:00
Guido Günther
e2ea1ebe48
rootston: Add alpha channel to views
2018-02-25 16:53:36 +01:00
Guido Günther
d08792bfff
Add alpha to wlr_render_with_matrix
...
so we can use the alpha channel to e.g. blend in textures
2018-02-25 13:47:48 +01:00
Guido Günther
e6ca78b0e4
rootston: add view_create
...
so we can do basic view setup. Will be used to initialize alpha.
2018-02-25 13:47:43 +01:00
Drew DeVault
7da653bbb4
Merge pull request #669 from acrisci/headless-output-frame-timer
...
destroy frame timer in headless output
2018-02-25 00:26:32 -05:00
Drew DeVault
f5260361c8
Merge pull request #668 from dlrobertson/fix_null_deref
...
Fix null deref in wlr_libinput_backend_destroy
2018-02-25 00:26:22 -05:00
Tony Crisci
721e4ec55f
remove frame timer from headless output
2018-02-24 22:32:57 -05:00
Dan Robertson
99e6cba3c3
Fix null deref in wlr_libinput_backend_destroy
...
If input_event is null (e.g. if backend_start has not been called yet)
wl_event_source_remove will result in a null deref.
2018-02-25 02:26:56 +00:00
Drew DeVault
9dc868a27f
Merge pull request #667 from Ongy/screenshot_tmpfile_template
...
prevent screenshot from resuing template array
2018-02-24 18:05:38 -05:00
Markus Ongyerth
8ab0073b49
prevent screenshot from resuing template array
...
The template array given to mkstemp was declared static. This reused the
memory, which caused mkstemp to fail if backingfile is run more than
once, because the array no longer contained the template syntax
(which is forced to end in XXXXXX) but the previous file name.
2018-02-24 23:55:48 +01:00
Drew DeVault
3bce37f99a
Merge pull request #666 from acrisci/syms-wlr-vlog
...
add _wlr_vlog to syms global
2018-02-24 12:27:24 -05:00
Tony Crisci
47c9d29919
add _wlr_vlog to syms global
2018-02-24 12:12:05 -05:00
Tony Crisci
b7b86a9591
Merge pull request #641 from Ongy/idle-inhibit
...
Add idle-inhibit implementation
2018-02-24 10:15:18 -05:00
Tony Crisci
94d53d53f9
Merge pull request #657 from emersion/wl-backend-uninitialized-field
...
backend/wayland: fix uninitialized wlr_event_keyboard_key::update_state
2018-02-24 10:14:22 -05:00
emersion
69409ea3cb
Merge pull request #654 from emersion/send-frame-done
...
rootston: send frame done events unconditionally
2018-02-23 18:55:18 +01:00
Drew DeVault
c2df2801a5
Merge pull request #658 from agx/x11-vendor
...
x11: parse vendor and model out of xcb setup information
2018-02-23 08:20:00 -05:00
Drew DeVault
5ad15c90d5
Merge pull request #664 from emersion/fix-various-use-after-free
...
Fix a bunch of use-after-free
2018-02-23 08:19:37 -05:00
Markus Ongyerth
67285c1d57
idle-inhibit: style adjustments and motivation
2018-02-23 13:18:05 +01:00
emersion
ca3a947864
rootston: fix user-after-free in output_handle_destroy
2018-02-23 10:29:18 +01:00
emersion
5dba27216c
rootston: fix use-after-free in handle_keyboard_destroy
2018-02-23 10:24:28 +01:00