mirror of
https://github.com/brl/mutter.git
synced 2025-07-23 01:51:38 +00: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:

committed by
Elijah Newren

parent
d8d77bd65b
commit
d178f5e330
@ -103,7 +103,6 @@ static void ensure_mru_position_after (MetaWindow *window,
|
||||
void meta_window_move_resize_now (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. */
|
||||
|
||||
@ -1299,8 +1298,8 @@ window_showing_on_its_workspace (MetaWindow *window)
|
||||
return showing;
|
||||
}
|
||||
|
||||
static gboolean
|
||||
window_should_be_showing (MetaWindow *window)
|
||||
gboolean
|
||||
meta_window_should_be_showing (MetaWindow *window)
|
||||
{
|
||||
gboolean on_workspace;
|
||||
|
||||
@ -1387,7 +1386,7 @@ implement_showing (MetaWindow *window,
|
||||
void
|
||||
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;
|
||||
@ -1449,7 +1448,7 @@ idle_calc_showing (gpointer data)
|
||||
|
||||
if (!window->placed)
|
||||
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);
|
||||
else
|
||||
should_hide = g_slist_prepend (should_hide, window);
|
||||
|
Reference in New Issue
Block a user