diff options
author | Erwann Chenede <erwann.chenede@sun.com> | 2008-04-27 20:09:47 +0000 |
---|---|---|
committer | Thomas James Alexander Thurman <tthurman@src.gnome.org> | 2008-04-27 20:09:47 +0000 |
commit | f13a8e6ab910e5788368b1d805f2b3690ecc93a3 (patch) | |
tree | b07b8bcbec09f20a870d4a30901437700b24762d | |
parent | fa1195b7f103a9107238d66250810baeb6ff1413 (diff) | |
download | metacity-f13a8e6ab910e5788368b1d805f2b3690ecc93a3.tar.gz |
re-enable cascade code which was wrongly removed a year ago. Closes
2008-04-27 Erwann Chenede <erwann.chenede@sun.com>
* src/core/place.c (meta_window_place): re-enable cascade
code which was wrongly removed a year ago. Closes #529925.
svn path=/trunk/; revision=3693
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | src/core/place.c | 10 |
2 files changed, 11 insertions, 4 deletions
@@ -1,3 +1,8 @@ +2008-04-27 Erwann Chenede <erwann.chenede@sun.com> + + * src/core/place.c (meta_window_place): re-enable cascade + code which was wrongly removed a year ago. Closes #529925. + 2008-04-22 Carlos Garnacho <carlos@imendio.com> * src/core/compositor.c (process_property_notify, diff --git a/src/core/place.c b/src/core/place.c index c92edd16..1e5e6c15 100644 --- a/src/core/place.c +++ b/src/core/place.c @@ -41,7 +41,6 @@ typedef enum META_BOTTOM } MetaWindowDirection; -#if 0 /* never used -- remove if nobody wants it */ static gint northwestcmp (gconstpointer a, gconstpointer b) { @@ -87,9 +86,7 @@ northwestcmp (gconstpointer a, gconstpointer b) else return 0; } -#endif /* 0 -- never used */ -#if 0 /* never used -- remove if nobody wants it */ static void find_next_cascade (MetaWindow *window, MetaFrameGeometry *fgeom, @@ -237,7 +234,6 @@ find_next_cascade (MetaWindow *window, *new_y = cascade_y + fgeom->top_height; } } -#endif /* 0 -- never used */ static void find_most_freespace (MetaWindow *window, @@ -875,6 +871,12 @@ meta_window_place (MetaWindow *window, } } + /* If no placement has been done, revert to cascade to avoid + * fully overlapping window (e.g. starting multiple terminals) + * */ + if (x == xi->rect.x && y == xi->rect.y) + find_next_cascade (window, fgeom, windows, x, y, &x, &y); + done_check_denied_focus: /* If the window is being denied focus and isn't a transient of the * focus window, we do NOT want it to overlap with the focus window |