Drew DeVault
d466cc117f
Don't reset exclusive between layer shell passes
...
This is not the intended behavior of exclusive zones, the second pass is
meant to respect the usable area.
2018-04-02 14:55:17 -04:00
Drew DeVault
937362b552
FIx crash on touch down
2018-03-31 09:55:41 -04:00
Orestis Floros
3f6823092a
Initialize roots_output to fix -Wmaybe-uninitialized
...
With -O2:
../rootston/desktop.c: In function ‘desktop_surface_at’:
../rootston/desktop.c:714:18: error: ‘roots_output’ may be used uninitialized in this function [-Werror=maybe-uninitialized]
if ((surface = layer_surface_at(roots_output,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
&roots_output->layers[ZWLR_LAYER_SHELL_V1_LAYER_BOTTOM],
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
ox, oy, sx, sy))) {
~~~~~~~~~~~~~~~
2018-03-31 12:57:12 +03:00
emersion
692f1746cf
xwayland: specify xwm cursor stride in bytes
2018-03-31 00:22:58 -04:00
Drew DeVault
e19ee6d469
Add wlr_surface_point_accepts_input
...
Ref https://github.com/swaywm/sway/pull/1674
2018-03-30 23:02:11 -04:00
Drew DeVault
746e3759b7
Address review feedback
2018-03-30 20:34:00 -04:00
Drew DeVault
168f65fb7a
Minor bugfixes
2018-03-30 18:28:21 -04:00
Drew DeVault
e3eb487dc2
Add pointer support to layer shell example
2018-03-30 18:23:57 -04:00
Drew DeVault
dc412c514b
Find layer surfaces for input events
2018-03-30 17:27:10 -04:00
Drew DeVault
662f40b8ae
Refactor cursor event passhtrough
2018-03-30 17:27:10 -04:00
emersion
865b0aa123
xwayland: rename map_notify to map for consistency
2018-03-30 11:01:23 -04:00
Drew DeVault
b887af9a60
Fix maximized windows interaction with layer shell
...
If there were no layer surfaces the usable area of the output would be
an empty box.
2018-03-29 12:18:50 -04:00
emersion
a316396eab
Merge pull request #720 from acrisci/xdg-positioner
...
xdg-positioner
2018-03-29 01:02:40 -04:00
Tony Crisci
2e63d1a0ca
toplevel_box to toplevel_sx_box
2018-03-28 23:24:39 -04:00
Tony Crisci
27f450ac0e
add todo for rotated unconstrained popup
2018-03-28 22:26:56 -04:00
Tony Crisci
71da20dbde
add comment for output box in toplevel coords
2018-03-28 20:51:25 -04:00
Tony Crisci
67c8aec77f
popup constraint handle empty output layout
2018-03-28 18:36:48 -04:00
Tony Crisci
0bfcce50a9
xdg-positioner: honor constraint flags
2018-03-28 16:55:16 -04:00
Tony Crisci
dbffda7549
xdg-positioner wlr abstractions
2018-03-28 16:27:08 -04:00
Tony Crisci
c5cd805098
positioner rootston cleanup and bugfix
2018-03-28 12:46:41 -04:00
Tony Crisci
e2c4e1ef54
fix xdg-positioner left constrain bug
2018-03-28 12:12:00 -04:00
Drew DeVault
ac219cbda6
Remove width_mm from tablet events
2018-03-28 12:05:37 -04:00
Tony Crisci
738f5e3344
cleanup xdg-positioner rootston code
2018-03-28 11:42:01 -04:00
Drew DeVault
324b9d910d
Remove width_mm from wlr_touch events
2018-03-28 11:04:40 -04:00
Drew DeVault
a35a5786b0
Remove width_mm from wlr_pointer events
2018-03-28 10:46:50 -04:00
Tony Crisci
41e54ba632
Merge branch 'master' into xdg-positioner
2018-03-28 00:20:39 -04:00
Drew DeVault
3e5131e664
Address further review feedback
2018-03-27 21:28:22 -04:00
Drew DeVault
a1d5d20914
Address some more feedback
2018-03-27 18:51:41 -04:00
Drew DeVault
52fe2688ea
Address @emersion's feedback
2018-03-27 18:51:41 -04:00
Drew DeVault
776b81d499
Fix surface layer damage tracking
2018-03-27 18:50:32 -04:00
Drew DeVault
0e318df13d
Add margin animation to the example demo
2018-03-27 18:50:32 -04:00
Drew DeVault
86ca4bea6d
Fix layer rendering/layout bugs
2018-03-27 18:50:32 -04:00
Drew DeVault
097e87ca9f
Handle usable area for maximized windows
...
Also fixes some bugs
2018-03-27 18:50:32 -04:00
Drew DeVault
ab6c2bf584
Reset exclusivity after shell layer
...
Also fixes an issue which was applying exclusivity to all edges
2018-03-27 18:50:32 -04:00
Drew DeVault
df9dbf3170
Fix rebase issues; rearrange layers on destroy
2018-03-27 18:50:32 -04:00
Drew DeVault
11c57d22b0
Use 0 for default width/height (rather than -1)
2018-03-27 18:50:32 -04:00
Drew DeVault
d1c0e6fe2c
Add layer_surface.close
2018-03-27 18:50:32 -04:00
Drew DeVault
b73c4f48c1
Fix exclusive zone among other layers
2018-03-27 18:50:32 -04:00
Drew DeVault
8c98c18880
Gracefully deal with outputs being removed
2018-03-27 18:50:32 -04:00
Drew DeVault
f444a0d14c
Implement layer surface damage
2018-03-27 18:50:32 -04:00
Drew DeVault
4bf936360d
Arrange & render layer surfaces
2018-03-27 18:50:09 -04:00
Drew DeVault
fcf8c6c8a2
Fix issues preventing layer from getting allocated
...
Now all of the steps to get rootston a reference to the layer surface
are correctly wired up.
2018-03-27 18:50:09 -04:00
Drew DeVault
b31ce4220c
Add broken test client and rootston stubs
2018-03-27 18:50:09 -04:00
Drew DeVault
88eec637a4
Address feedback
2018-03-27 18:50:09 -04:00
Drew DeVault
f29d8b55ae
Initial scaffolding of layer shell
2018-03-27 18:50:09 -04:00
Tony Crisci
575bc81d54
Merge pull request #754 from emersion/popup-map-unmap-damage
...
[WIP] xdg-shell: damage view when popup is mapped/unmapped
2018-03-27 17:37:03 -04:00
emersion
4abca435cc
rootston: damage view when xdg-popup is mapped/unmapped
2018-03-27 17:27:58 -04:00
emersion
19a525f3b5
rootston: damage view when zxdg-popup-v6 is mapped/unmapped
2018-03-27 17:24:25 -04:00
Tony Crisci
edb643fc6c
basic xdg-positioner
2018-03-27 17:16:08 -04:00
Tony Crisci
9ff84db06d
unconstrain stubs
2018-03-27 15:13:35 -04:00
Tony Crisci
8371e2f41d
implement flip_x
2018-03-27 14:49:31 -04:00
Drew DeVault
1ed90541f9
Merge pull request #753 from emersion/xdg-shell-unmap-destroy
...
xdg-shell-v6: don't destroy role resources on unmap
2018-03-27 13:15:32 -04:00
emersion
171e28eaff
xdg-shell: don't destroy role resources on unmap, move toplevel fields
...
Ports 5233801530
and
334bab543d
to xdg-shell stable.
2018-03-27 10:25:02 -04:00
Drew DeVault
e9ccb705fb
Merge pull request #758 from martinetd/unfullscreen
...
rootston: Fix segfault in seat unfullscreening
2018-03-27 08:35:49 -04:00
Dominique Martinet
a0b52a0dff
Fix x11 backend
...
Need to include wlr/config.h before using the various WLR_HAS_xxx defines
2018-03-27 09:20:21 +02:00
Dominique Martinet
0c4d347d1e
rootston: Fix segfault in seat unfullscreening
...
==32557==ERROR: AddressSanitizer: SEGV on unknown address 0x000000000000 (pc 0x000000425f96 bp 0x7fff8ac19de0 sp 0x7fff8ac19d20 T0)
==32557==The signal is caused by a READ memory access.
==32557==Hint: address points to the zero page.
#0 0x425f95 in roots_seat_set_focus ../rootston/seat.c:737
#1 0x40bcd6 in roots_cursor_press_button ../rootston/cursor.c:272
#2 0x40c1f7 in roots_cursor_handle_button ../rootston/cursor.c:298
#3 0x42179b in handle_cursor_button ../rootston/seat.c:58
#4 0x7f1651062367 in wlr_signal_emit_safe ../util/signal.c:29
#5 0x7f165101b532 in handle_pointer_button ../types/wlr_cursor.c:344
#6 0x7f1651062367 in wlr_signal_emit_safe ../util/signal.c:29
#7 0x7f1650ff633b in handle_pointer_button ../backend/libinput/pointer.c:85
#8 0x7f1650ff5291 in wlr_libinput_event ../backend/libinput/events.c:215
#9 0x7f1650ff3990 in wlr_libinput_readable ../backend/libinput/backend.c:35
#10 0x7f1650d88c11 in wl_event_loop_dispatch (/lib64/libwayland-server.so.0+0x9c11)
#11 0x7f1650d87449 in wl_display_run (/lib64/libwayland-server.so.0+0x8449)
#12 0x418e90 in main ../rootston/main.c:81
#13 0x7f164ff7ef29 in __libc_start_main (/lib64/libc.so.6+0x20f29)
#14 0x405829 in _start (/home/shared/wayland/wlroots/build/rootston/rootston+0x405829)
introduced by #680
2018-03-27 09:17:47 +02:00
Tony Crisci
bbd0e23fa7
xdg-positioner constraint detection
2018-03-26 23:48:32 -04:00
Drew DeVault
d1d983a303
Merge pull request #680 from Ongy/roots_unfullscreen
...
unset fullscreen when surface is brought to front
2018-03-26 23:39:29 -04:00
Drew DeVault
b1c4f01bad
Merge pull request #713 from ManDay/master
...
Make X11 fully optional
2018-03-26 23:20:46 -04:00
Markus Ongyerth
07ca976489
only unfullscreen when necessary
...
Check whether the newly focused view is the same as the one currently
fullscreen on that output, or override redirect and don't unfullscreen
in these cases.
2018-03-26 23:18:50 -04:00
Markus Ongyerth
43d7459734
unset fullscreen when surface is brought to front
...
The output fullscreen surfaces are drawn in front of everything, without
consideration for view z-order.
If a view is brought to front, unset any fullscreen view that would
cover this view to make sure the view is visible.
2018-03-26 23:18:50 -04:00
Drew DeVault
706f77e3c7
Address review feedback
2018-03-26 23:15:21 -04:00
emersion
334bab543d
xdg-shell-v6: move toplevel specific fields in wlr_xdg_toplevel_v6
2018-03-26 19:32:21 -04:00
Drew DeVault
891610081f
Merge pull request #751 from emersion/rotated-surface-damage
...
Fix damage tracking for rotated surfaces
2018-03-26 18:05:35 -04:00
emersion
140bc19476
rootston: add -D flag to enable damage tracking debugging
2018-03-26 17:34:46 -04:00
emersion
4555fc8a54
Fix damage tracking for rotated surfaces
...
It was broken because the damage extents were rotated about its
own center, not about the center of the surface.
This adds a new wlr_region_rotated_bounds that rotates regions.
This allows us to have only one code path (for both non-rotated
views and rotated views) and optimizes rendering for rotated
views.
2018-03-26 15:31:08 -04:00
emersion
793c3b3047
render: add simple functions to render rectangles and ellipses
2018-03-26 12:41:51 -04:00
Tony Crisci
f53575e3a3
unified xdg-surface close
2018-03-24 15:11:26 -04:00
emersion
a854c2f246
Merge branch 'master' into gles2-renderer-redesign
2018-03-23 00:55:55 +01:00
Dominique Martinet
d9a3c66942
rootston/output: fix leak in damage_from_surface
2018-03-22 21:25:41 +01:00
emersion
3581573bdc
render/gles2: make wlr_renderer_begin take viewport size
...
This allows raw GL calls outside wlr_renderer to be removed.
2018-03-21 07:37:09 +01:00
emersion
c41de2d1be
render: split render.h into wlr_renderer.h and wlr_texture.h
2018-03-19 23:16:29 +01:00
Dominique Martinet
a491f780b8
rootston rotation: change view->rotation sign
...
The convetion with wlr_matrix changed and it's a good time to remove
all these pesky minus signs
2018-03-18 09:19:09 +01:00
Drew DeVault
1956d3cedb
Merge pull request #722 from emersion/matrix-redesign
...
Matrix redesign
2018-03-17 15:22:00 -04:00
Tony Crisci
09413aa7f1
Merge pull request #711 from emersion/map-unmap
...
Add map/unmap to xdg-shell
2018-03-17 10:00:54 -04:00
emersion
303883ce49
rootston: properly emit view unmap event
2018-03-15 21:47:20 +01:00
emersion
e607d0f7ee
xdg-shell: add map/unmap support
2018-03-15 20:15:09 +01:00
emersion
8b58e1a3ad
Merge branch 'master' into matrix-redesign
2018-03-15 15:48:09 +01:00
emersion
824a95ad19
matrix: use 2D matrices
2018-03-15 15:33:58 +01:00
emersion
de0e40d621
Merge pull request #698 from agx/linux-dmabuf
...
Add initial linux_dmabuf protocol support
2018-03-15 12:45:07 +01:00
Guido Günther
eb4337b5ee
Wire up linux_dmabuf in rootston
2018-03-15 12:40:18 +01:00
emersion
d26b67cb06
matrix: unify API, don't use array pointers
2018-03-15 11:10:56 +01:00
emersion
b6a3f240c7
matrix: move to types/
2018-03-15 09:11:27 +01:00
emersion
dd8a7a29e1
rootston: don't center view if maximized
2018-03-14 00:01:28 +01:00
emersion
ace738dbca
xdg-shell-v6: next_geometry and geometry fields are not longer pointers in wlr_xdg_surface_v6
2018-03-13 22:17:25 +01:00
emersion
149209b72e
xdg-shell-v6: rename toplevel and popup fields in wlr_xdg_surface_v6 for consistency
2018-03-13 22:09:44 +01:00
emersion
e74ddaaf10
xdg-shell-v6: redesign the configure/ack_configure workflow
2018-03-13 19:57:21 +01:00
emersion
125138f1a0
rootston: unmap view after emitting destroy signal in view_destroy
2018-03-13 12:34:29 +01:00
emersion
c1c88bfe5d
rootston: destroy seat view on unmap
2018-03-13 12:31:45 +01:00
emersion
42637a52cf
rootston: don't segfault when getting size of an unmapped xdg-shell view
2018-03-12 10:42:41 +01:00
emersion
6ac3534df6
rootston: add destroy to view interface
2018-03-12 09:17:06 +01:00
emersion
1f8854f217
rootston: remove xdg-shell-v6 map/unmap listeners on destroy
2018-03-12 09:00:59 +01:00
emersion
9d6e17fb11
rootston: fix segfault in handle_tablet_tool_destroy
2018-03-11 11:58:59 +01:00
emersion
3f072bedd9
xdg-shell-v6: add map signal
2018-03-10 11:18:50 +01:00
Cedric Sodhi
ebdabc2030
Make X11 fully optional
...
Make X11 Backend (in addition to XWayland) optional and small bug fix on XWayland includes.
2018-03-09 15:17:15 +01:00
emersion
c27fd1e1ee
rootston: add view_map and view_unmap
2018-03-09 10:29:22 +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
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