emersion
62fd03a7be
rootston: refactor rendering
...
This implements rootston surface iterators to ease rendering, sending
frame/presentation events and accumulating damage.
6 years ago
emersion
9adcbabea4
rootston: make roots_view embedded and remove unions
6 years ago
emersion
9f11bf571e
rootston: add a view child interface
6 years ago
emersion
e86c7a3dd6
rootston: move part of desktop.c to view.c, use an interface for views
6 years ago
Ilia Bozhinov
8cce2d75a9
rootston: add support for wlr_foreign_toplevel_management_v1
6 years ago
Ilia Bozhinov
f387a840d8
rootston: add title/app_id/class listeners
6 years ago
Louis Taylor
0f3a061f60
rootston: use box for views position
6 years ago
Ilia Bozhinov
2e6eb097b6
rootston: focus newly-created surfaces
...
Whenever a new surface is created, we have to update the cursor focus,
even if there's no input event. So, we generate one motion event, and
reuse the code to update the proper cursor focus. We need to do this
for all surface roles - toplevels, popups, subsurfaces.
Fixes #1162
7 years ago
emersion
7cbef15206
util: add wlr_ prefix to log symbols
7 years ago
Markus Ongyerth
3994762ae0
Add wlr_surface_get_geometry
...
This function defaults and clips the xdg-surface geometry to the
bounding box of the surface + its subsurfaces, as specified by the
protocol spec.
7 years ago
Genki Sky
32013abae6
rootston: xdg-shell*: Fix get_size() for newly-mapped views
...
The user-visible issue is that newly-mapped xdg-shell* windows would
sometimes start with their top-left-corner, rather than their center, in
the center of the screen. This is because get_size() would
conservatively fall back on (width, height) == (0, 0) if both
set_window_geometry() had not been called, and it found
view->wlr_surface to be NULL.
But, view->wlr_surface is only set to non-NULL in view_map(). We call
get_size() before this. Fortunately, the wlr_surface in question is
accessible via view->xdg_shell{,_v6}->surface, so always fall back on
that. We can assert its presence instead of further falling back on
(width, height) == (0, 0).
Signed-off-by: Genki Sky <sky@genki.is>
7 years ago
emersion
393f7aaeff
Fix a rootston crash when a client creates non-topmost popups
7 years ago
Tony Crisci
2e63d1a0ca
toplevel_box to toplevel_sx_box
7 years ago
Tony Crisci
27f450ac0e
add todo for rotated unconstrained popup
7 years ago
Tony Crisci
71da20dbde
add comment for output box in toplevel coords
7 years ago
Tony Crisci
67c8aec77f
popup constraint handle empty output layout
7 years ago
Tony Crisci
0bfcce50a9
xdg-positioner: honor constraint flags
7 years ago
Tony Crisci
dbffda7549
xdg-positioner wlr abstractions
7 years ago
Tony Crisci
c5cd805098
positioner rootston cleanup and bugfix
7 years ago
Tony Crisci
e2c4e1ef54
fix xdg-positioner left constrain bug
7 years ago
Tony Crisci
738f5e3344
cleanup xdg-positioner rootston code
7 years ago
Tony Crisci
41e54ba632
Merge branch 'master' into xdg-positioner
7 years ago
Drew DeVault
88eec637a4
Address feedback
7 years ago
Tony Crisci
575bc81d54
Merge pull request #754 from emersion/popup-map-unmap-damage
...
[WIP] xdg-shell: damage view when popup is mapped/unmapped
7 years ago
emersion
19a525f3b5
rootston: damage view when zxdg-popup-v6 is mapped/unmapped
7 years ago
Tony Crisci
edb643fc6c
basic xdg-positioner
7 years ago
Tony Crisci
9ff84db06d
unconstrain stubs
7 years ago
Tony Crisci
8371e2f41d
implement flip_x
7 years ago
Tony Crisci
bbd0e23fa7
xdg-positioner constraint detection
7 years ago
emersion
334bab543d
xdg-shell-v6: move toplevel specific fields in wlr_xdg_toplevel_v6
7 years ago
Tony Crisci
f53575e3a3
unified xdg-surface close
7 years ago
emersion
ace738dbca
xdg-shell-v6: next_geometry and geometry fields are not longer pointers in wlr_xdg_surface_v6
7 years ago
emersion
149209b72e
xdg-shell-v6: rename toplevel and popup fields in wlr_xdg_surface_v6 for consistency
7 years ago
emersion
e74ddaaf10
xdg-shell-v6: redesign the configure/ack_configure workflow
7 years ago
emersion
42637a52cf
rootston: don't segfault when getting size of an unmapped xdg-shell view
7 years ago
emersion
6ac3534df6
rootston: add destroy to view interface
7 years ago
emersion
1f8854f217
rootston: remove xdg-shell-v6 map/unmap listeners on destroy
7 years ago
emersion
3f072bedd9
xdg-shell-v6: add map signal
7 years ago
emersion
c27fd1e1ee
rootston: add view_map and view_unmap
7 years ago
Guido Günther
e6ca78b0e4
rootston: add view_create
...
so we can do basic view setup. Will be used to initialize alpha.
7 years ago
emersion
c2e1474010
Reformat all #include directives
7 years ago
emersion
cdd55b5d19
Merge remote-tracking branch 'upstream/master' into output-damage
7 years ago
Vincent Vanlaer
712665b83b
Fix style error
7 years ago
Vincent Vanlaer
099c80e7d6
Fix jitter when quickly resizing windows
...
Surfaces and views get resized only on commit, therefore we may only
change the position of a window if there are no pending commits.
7 years ago
emersion
63736be214
rootston: fix damage tracking for SSD
7 years ago
emersion
66ae4071a7
rootston: damage tracking for xdg popups
7 years ago
emersion
a636d72fc7
rootston: track subsurface damage
7 years ago
emersion
bc001e90e9
rootston: fix artifacts when un-maximizing a view
7 years ago
emersion
96d6f34edd
rootston: replace view_damage with view_apply_damage and view_damage_whole
7 years ago
emersion
01bcc2ab01
rootston: damage views when moved
7 years ago