mirror of
https://github.com/brl/mutter.git
synced 2024-11-22 08:00:42 -05:00
When snap-moving, don't snap to transients of minimized windows since they
2004-12-19 Elijah Newren <newren@gmail.com> When snap-moving, don't snap to transients of minimized windows since they are hidden. Fixes #157180 * src/place.c (get_windows_on_same_workspace): make the logic to determine hidden windows more thorough by calling meta_window_should_be_showing() * src/window.c (meta_window_should_be_showing): rename this function from window_should_be_showing and also export it, (implement_showing): s/window_should_be_showing/meta_window_should_be_showing/, (idle_calc_showing): s/window_should_be_showing/meta_window_should_be_showing/ * src/window.h (meta_window_should_be_showing): Add this function to the list so that it can be used in src/place.c
This commit is contained in:
parent
d8d77bd65b
commit
d178f5e330
19
ChangeLog
19
ChangeLog
@ -1,3 +1,22 @@
|
|||||||
|
2004-12-19 Elijah Newren <newren@gmail.com>
|
||||||
|
|
||||||
|
When snap-moving, don't snap to transients of minimized windows
|
||||||
|
since they are hidden. Fixes #157180
|
||||||
|
|
||||||
|
* src/place.c (get_windows_on_same_workspace): make the logic to
|
||||||
|
determine hidden windows more thorough by calling
|
||||||
|
meta_window_should_be_showing()
|
||||||
|
|
||||||
|
* src/window.c (meta_window_should_be_showing): rename this
|
||||||
|
function from window_should_be_showing and also export it,
|
||||||
|
(implement_showing):
|
||||||
|
s/window_should_be_showing/meta_window_should_be_showing/,
|
||||||
|
(idle_calc_showing):
|
||||||
|
s/window_should_be_showing/meta_window_should_be_showing/
|
||||||
|
|
||||||
|
* src/window.h (meta_window_should_be_showing): Add this function
|
||||||
|
to the list so that it can be used in src/place.c
|
||||||
|
|
||||||
2004-12-19 Elijah Newren <newren@gmail.com>
|
2004-12-19 Elijah Newren <newren@gmail.com>
|
||||||
|
|
||||||
Focus the desktop when showing it. Fixes #159257.
|
Focus the desktop when showing it. Fixes #159257.
|
||||||
|
@ -876,10 +876,7 @@ get_windows_on_same_workspace (MetaWindow *window,
|
|||||||
{
|
{
|
||||||
MetaWindow *w = tmp->data;
|
MetaWindow *w = tmp->data;
|
||||||
|
|
||||||
if (!w->minimized &&
|
if (meta_window_should_be_showing (w) && w != window)
|
||||||
w != window &&
|
|
||||||
meta_window_visible_on_workspace (w,
|
|
||||||
window->screen->active_workspace))
|
|
||||||
{
|
{
|
||||||
windows = g_slist_prepend (windows, w);
|
windows = g_slist_prepend (windows, w);
|
||||||
++i;
|
++i;
|
||||||
|
@ -103,7 +103,6 @@ static void ensure_mru_position_after (MetaWindow *window,
|
|||||||
void meta_window_move_resize_now (MetaWindow *window);
|
void meta_window_move_resize_now (MetaWindow *window);
|
||||||
|
|
||||||
static gboolean window_showing_on_its_workspace (MetaWindow *window);
|
static gboolean window_showing_on_its_workspace (MetaWindow *window);
|
||||||
static gboolean window_should_be_showing (MetaWindow *window);
|
|
||||||
|
|
||||||
/* FIXME we need an abstraction that covers all these queues. */
|
/* FIXME we need an abstraction that covers all these queues. */
|
||||||
|
|
||||||
@ -1299,8 +1298,8 @@ window_showing_on_its_workspace (MetaWindow *window)
|
|||||||
return showing;
|
return showing;
|
||||||
}
|
}
|
||||||
|
|
||||||
static gboolean
|
gboolean
|
||||||
window_should_be_showing (MetaWindow *window)
|
meta_window_should_be_showing (MetaWindow *window)
|
||||||
{
|
{
|
||||||
gboolean on_workspace;
|
gboolean on_workspace;
|
||||||
|
|
||||||
@ -1387,7 +1386,7 @@ implement_showing (MetaWindow *window,
|
|||||||
void
|
void
|
||||||
meta_window_calc_showing (MetaWindow *window)
|
meta_window_calc_showing (MetaWindow *window)
|
||||||
{
|
{
|
||||||
implement_showing (window, window_should_be_showing (window));
|
implement_showing (window, meta_window_should_be_showing (window));
|
||||||
}
|
}
|
||||||
|
|
||||||
static guint calc_showing_idle = 0;
|
static guint calc_showing_idle = 0;
|
||||||
@ -1449,7 +1448,7 @@ idle_calc_showing (gpointer data)
|
|||||||
|
|
||||||
if (!window->placed)
|
if (!window->placed)
|
||||||
unplaced = g_slist_prepend (unplaced, window);
|
unplaced = g_slist_prepend (unplaced, window);
|
||||||
else if (window_should_be_showing (window))
|
else if (meta_window_should_be_showing (window))
|
||||||
should_show = g_slist_prepend (should_show, window);
|
should_show = g_slist_prepend (should_show, window);
|
||||||
else
|
else
|
||||||
should_hide = g_slist_prepend (should_hide, window);
|
should_hide = g_slist_prepend (should_hide, window);
|
||||||
|
@ -385,6 +385,9 @@ void meta_window_resize_with_gravity (MetaWindow *window,
|
|||||||
void meta_window_fill_horizontal (MetaWindow *window);
|
void meta_window_fill_horizontal (MetaWindow *window);
|
||||||
void meta_window_fill_vertical (MetaWindow *window);
|
void meta_window_fill_vertical (MetaWindow *window);
|
||||||
|
|
||||||
|
/* Return whether the window should be currently mapped */
|
||||||
|
gboolean meta_window_should_be_showing (MetaWindow *window);
|
||||||
|
|
||||||
/* This recalcs the window/frame size, and recalcs the frame
|
/* This recalcs the window/frame size, and recalcs the frame
|
||||||
* size/contents as well.
|
* size/contents as well.
|
||||||
*/
|
*/
|
||||||
|
Loading…
Reference in New Issue
Block a user