mirror of
https://gitlab.freedesktop.org/wlroots/wlroots.git
synced 2025-11-08 13:29:45 -05:00
rootston: damage tracking for xdg popups
This commit is contained in:
parent
d8b36357e4
commit
66ae4071a7
5 changed files with 235 additions and 169 deletions
|
|
@ -23,13 +23,15 @@ struct roots_wl_shell_surface {
|
|||
struct roots_xdg_surface_v6 {
|
||||
struct roots_view *view;
|
||||
|
||||
struct wl_listener commit;
|
||||
struct wl_listener destroy;
|
||||
struct wl_listener new_popup;
|
||||
struct wl_listener request_move;
|
||||
struct wl_listener request_resize;
|
||||
struct wl_listener request_maximize;
|
||||
struct wl_listener request_fullscreen;
|
||||
|
||||
struct wl_listener surface_commit;
|
||||
|
||||
uint32_t pending_move_resize_configure_serial;
|
||||
};
|
||||
|
||||
|
|
@ -133,6 +135,13 @@ struct roots_subsurface {
|
|||
struct wl_listener destroy;
|
||||
};
|
||||
|
||||
struct roots_xdg_popup_v6 {
|
||||
struct roots_view_child view_child;
|
||||
struct wlr_xdg_popup_v6 *wlr_popup;
|
||||
struct wl_listener destroy;
|
||||
struct wl_listener new_popup;
|
||||
};
|
||||
|
||||
void view_get_box(const struct roots_view *view, struct wlr_box *box);
|
||||
void view_activate(struct roots_view *view, bool active);
|
||||
void view_move(struct roots_view *view, double x, double y);
|
||||
|
|
|
|||
|
|
@ -34,6 +34,7 @@ struct wlr_xdg_client_v6 {
|
|||
|
||||
struct wlr_xdg_popup_v6 {
|
||||
struct wlr_xdg_surface_v6 *base;
|
||||
struct wl_list link;
|
||||
|
||||
struct wl_resource *resource;
|
||||
bool committed;
|
||||
|
|
@ -104,8 +105,7 @@ struct wlr_xdg_surface_v6 {
|
|||
struct wlr_xdg_popup_v6 *popup_state;
|
||||
};
|
||||
|
||||
struct wl_list popups;
|
||||
struct wl_list popup_link;
|
||||
struct wl_list popups; // wlr_xdg_popup_v6::link
|
||||
|
||||
bool configured;
|
||||
bool added;
|
||||
|
|
@ -126,6 +126,7 @@ struct wlr_xdg_surface_v6 {
|
|||
struct {
|
||||
struct wl_signal destroy;
|
||||
struct wl_signal ping_timeout;
|
||||
struct wl_signal new_popup;
|
||||
|
||||
struct wl_signal request_maximize;
|
||||
struct wl_signal request_fullscreen;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue