diff options
author | Derek Foreman <derek.foreman@collabora.com> | 2022-11-08 16:09:05 -0600 |
---|---|---|
committer | Derek Foreman <derek.foreman@collabora.com> | 2022-11-14 16:05:46 -0600 |
commit | d611ab24fd0004fb1a06fe2fc843251419fac784 (patch) | |
tree | bd026019794bb441d2700fe632bac5560992a13a /desktop-shell | |
parent | d3b74daabd8fa8f6410eabc4643895da11600409 (diff) | |
download | weston-d611ab24fd0004fb1a06fe2fc843251419fac784.tar.gz |
libweston: Update view transforms more often
These places all eventually lead to calling weston_view_to_global_float()
or weston_view_from_global_float() on a view with a dirty transform.
Signed-off-by: Derek Foreman <derek.foreman@collabora.com>
Diffstat (limited to 'desktop-shell')
-rw-r--r-- | desktop-shell/shell.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/desktop-shell/shell.c b/desktop-shell/shell.c index e9f74087..d6d307b7 100644 --- a/desktop-shell/shell.c +++ b/desktop-shell/shell.c @@ -2101,6 +2101,8 @@ desktop_surface_committed(struct weston_desktop_surface *desktop_surface, } } + weston_view_update_transform(shsurf->view); + if (shsurf->state.fullscreen) { shell_configure_fullscreen(shsurf); } else if (shsurf->state.maximized) { @@ -2614,6 +2616,11 @@ panel_committed(struct weston_surface *es, int32_t sx, int32_t sy) view = container_of(es->views.next, struct weston_view, surface_link); + /* XXX delete me eventually - it would be better if we didn't get here + * with a dirty transform at all, but for now just make sure the + * transform is updated here. */ + weston_view_update_transform(view); + get_panel_size(shell, view, &width, &height); switch (shell->panel_position) { case WESTON_DESKTOP_SHELL_PANEL_POSITION_TOP: |