Commit Graph

2005 Commits

Author SHA1 Message Date
emersion 36dcad13d0
Merge pull request #707 from ascent12/xcb_fixes
Xcb fixes
2018-03-06 21:50:00 +01:00
Scott Anderson 3c9fc7c68e Add const to x11 and input interfaces 2018-03-06 21:16:18 +13:00
Scott Anderson 902d6cc240 Use xcb atoms properly 2018-03-06 21:15:47 +13:00
Drew DeVault c986cc24a9
Merge pull request #703 from swaywm/drop-travis
Remove Travis in favor of builds.sr.ht
2018-03-04 16:37:17 -05:00
Drew DeVault 925d7a4987 Remove Travis in favor of builds.sr.ht 2018-03-04 16:33:45 -05:00
Drew DeVault 3a291b189b
Merge pull request #699 from martinetd/xcb_errors
Print xcb errors
2018-03-04 08:39:14 -05:00
Dominique Martinet 2910972b25 xwm.h: fix guard ifdef and remove wlr_ prefix from xwm_atoms_contains 2018-03-04 11:16:18 +01:00
Drew DeVault 0713cb043f Change .build.yml upstream to GitHub 2018-03-03 23:11:06 -05:00
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
Drew DeVault 9a37a33f05
Merge pull request #701 from mikkeloscar/fix-arch-travis
Enable docker service in travis
2018-03-03 10:28:40 -05: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
Mikkel Oscar Lyderik Larsen 2c10344f8f
Enable docker service in travis
Adds the docker service in travis which is now required by arch-travis.

See: https://github.com/mikkeloscar/arch-travis/pull/40
2018-03-03 16:18:05 +01:00
Dominique Martinet 8026cd2a06 xcb error: always log sequence 2018-03-03 16:13:45 +01:00
Drew DeVault 0775d00c39
Merge pull request #700 from martinetd/gitignore
Update .gitignore
2018-03-03 09:27:41 -05:00
Dominique Martinet 69697e55a1 update .gitignore
- Remove old cmake ignores
- Add rootston.ini (example is rootston.ini.example)
2018-03-03 15:23:26 +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