mirror of
https://github.com/cage-kiosk/cage.git
synced 2025-10-29 05:40:19 -04:00
Render popups separately from their toplevel view when possible
This commit is contained in:
parent
2db815aa23
commit
a53dca91ce
7 changed files with 101 additions and 33 deletions
|
|
@ -222,6 +222,13 @@ for_each_surface(struct cg_view *view, wlr_surface_iterator_func_t iterator, voi
|
|||
wlr_xdg_surface_for_each_surface(xdg_shell_view->xdg_surface, iterator, data);
|
||||
}
|
||||
|
||||
static void
|
||||
for_each_popup(struct cg_view *view, wlr_surface_iterator_func_t iterator, void *data)
|
||||
{
|
||||
struct cg_xdg_shell_view *xdg_shell_view = xdg_shell_view_from_view(view);
|
||||
wlr_xdg_surface_for_each_popup(xdg_shell_view->xdg_surface, iterator, data);
|
||||
}
|
||||
|
||||
static struct wlr_surface *
|
||||
wlr_surface_at(struct cg_view *view, double sx, double sy, double *sub_x, double *sub_y)
|
||||
{
|
||||
|
|
@ -297,6 +304,7 @@ static const struct cg_view_impl xdg_shell_view_impl = {
|
|||
.maximize = maximize,
|
||||
.destroy = destroy,
|
||||
.for_each_surface = for_each_surface,
|
||||
.for_each_popup = for_each_popup,
|
||||
.wlr_surface_at = wlr_surface_at,
|
||||
};
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue