xwm: Account for shadow and frame size when positioning transient windows

This commit is contained in:
Kristian Høgsberg 2012-05-21 13:55:19 -04:00
parent b4ad4cbdb2
commit 168288b177
1 changed files with 3 additions and 2 deletions

View File

@ -1920,6 +1920,7 @@ xserver_map_shell_surface(struct weston_wm *wm,
struct weston_shell_interface *shell_interface = struct weston_shell_interface *shell_interface =
&wm->server->compositor->shell_interface; &wm->server->compositor->shell_interface;
struct weston_wm_window *parent; struct weston_wm_window *parent;
struct theme *t = window->wm->theme;
if (!shell_interface->create_shell_surface) if (!shell_interface->create_shell_surface)
return; return;
@ -1934,8 +1935,8 @@ xserver_map_shell_surface(struct weston_wm *wm,
parent = hash_table_lookup(wm->window_hash, window->transient_for->id); parent = hash_table_lookup(wm->window_hash, window->transient_for->id);
shell_interface->set_transient(window->shsurf, parent->shsurf, shell_interface->set_transient(window->shsurf, parent->shsurf,
window->x - parent->x, window->x - parent->x + t->margin + t->width,
window->y - parent->y, window->y - parent->y + t->margin + t->titlebar_height,
WL_SHELL_SURFACE_TRANSIENT_INACTIVE); WL_SHELL_SURFACE_TRANSIENT_INACTIVE);
} }