window: Notify about size-change when tiling

Call meta_compositor_size_change_window while tiling in order
to emit the size-change signal. Since the untiling action is
considered a unmaximize size change, treat tiling as a maximize
size change for consistency.

https://bugzilla.gnome.org/show_bug.cgi?id=782968
This commit is contained in:
Alessandro Bono 2016-09-24 21:47:35 +02:00
parent 76198e0b3b
commit 270da95cbc

View File

@ -2890,6 +2890,7 @@ void
meta_window_tile (MetaWindow *window) meta_window_tile (MetaWindow *window)
{ {
MetaMaximizeFlags directions; MetaMaximizeFlags directions;
MetaRectangle old_frame_rect, old_buffer_rect;
/* Don't do anything if no tiling is requested */ /* Don't do anything if no tiling is requested */
if (window->tile_mode == META_TILE_NONE) if (window->tile_mode == META_TILE_NONE)
@ -2903,6 +2904,13 @@ meta_window_tile (MetaWindow *window)
meta_window_maximize_internal (window, directions, NULL); meta_window_maximize_internal (window, directions, NULL);
meta_screen_update_tile_preview (window->screen, FALSE); meta_screen_update_tile_preview (window->screen, FALSE);
meta_window_get_frame_rect (window, &old_frame_rect);
meta_window_get_buffer_rect (window, &old_buffer_rect);
meta_compositor_size_change_window (window->display->compositor, window,
META_SIZE_CHANGE_MAXIMIZE,
&old_frame_rect, &old_buffer_rect);
meta_window_move_resize_now (window); meta_window_move_resize_now (window);
if (window->frame) if (window->frame)