summaryrefslogtreecommitdiff
path: root/src/core/screen-private.h
diff options
context:
space:
mode:
authorStefano Karapetsas <[email protected]>2013-05-31 16:22:39 +0200
committerStefano Karapetsas <[email protected]>2013-05-31 16:22:39 +0200
commita87157176ca6e01c8c4047999ee584f00b63c11e (patch)
tree80e928a800b4b54f6831a6b38a952014c7f5ae5c /src/core/screen-private.h
parentcc760e2586cd0f98f8c60382ab8ff1f7373d9c1d (diff)
downloadmarco-a87157176ca6e01c8c4047999ee584f00b63c11e.tar.bz2
marco-a87157176ca6e01c8c4047999ee584f00b63c11e.tar.xz
Implement side-by-side tiling
Patch by Florian Müllner for Metacity https://bugzilla.gnome.org/show_bug.cgi?id=607694 When dragging a window over a screen edge and dropping it there, maximize it vertically and scale it horizontally to cover the corresponding half of the current monitor. Whenever a "hot area" which triggers this behavior is entered, an indication of window's target size is displayed after a short delay to avoid distraction when moving a window between monitors.
Diffstat (limited to 'src/core/screen-private.h')
-rw-r--r--src/core/screen-private.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/core/screen-private.h b/src/core/screen-private.h
index 77ea457f..8eb02d00 100644
--- a/src/core/screen-private.h
+++ b/src/core/screen-private.h
@@ -79,6 +79,9 @@ struct _MetaScreen
MetaRectangle rect; /* Size of screen; rect.x & rect.y are always 0 */
MetaUI *ui;
MetaTabPopup *tab_popup;
+ MetaTilePreview *tile_preview;
+
+ guint tile_preview_timeout_id;
MetaWorkspace *active_workspace;
@@ -160,6 +163,8 @@ void meta_screen_ensure_tab_popup (MetaScreen *scree
MetaTabList list_type,
MetaTabShowType show_type);
void meta_screen_ensure_workspace_popup (MetaScreen *screen);
+void meta_screen_tile_preview_update (MetaScreen *screen,
+ gboolean delay);
MetaWindow* meta_screen_get_mouse_window (MetaScreen *screen,
MetaWindow *not_this_one);