Age | Commit message (Collapse) | Author |
|
Xcb fixes
|
|
|
|
|
|
Remove Travis in favor of builds.sr.ht
|
|
|
|
Print xcb errors
|
|
|
|
|
|
`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
|
|
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)
|
|
Enable docker service in travis
|
|
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)
|
|
Adds the docker service in travis which is now required by arch-travis.
See: https://github.com/mikkeloscar/arch-travis/pull/40
|
|
|
|
Update .gitignore
|
|
- Remove old cmake ignores
- Add rootston.ini (example is rootston.ini.example)
|
|
|
|
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.
|
|
|
|
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
|
|
Fix clients binding multiple times to the same output
|
|
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.
|
|
|
|
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
|
|
textures: tell us which texture format is unsupported
|
|
|
|
wlr_egl_create_image: return NULL when function is missing
|
|
This matches the return value of elgCreateImage in case of error.
|
|
set fullscreen alpha to 1
|
|
|
|
|
|
add xwayland unmanaged tests to support dmenu
|
|
rootston: drop saved.alpha from roots_view
|
|
It's currently unused.
|
|
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.
|
|
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.
|
|
Make wlr_render_with_matrix use alpha
|
|
|
|
|
|
|
|
so we can use the alpha channel to e.g. blend in textures
|
|
so we can do basic view setup. Will be used to initialize alpha.
|
|
destroy frame timer in headless output
|
|
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.
|