summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/events.c6
-rw-r--r--src/list.c6
2 files changed, 12 insertions, 0 deletions
diff --git a/src/events.c b/src/events.c
index 1cdbb21..d3b4004 100644
--- a/src/events.c
+++ b/src/events.c
@@ -78,6 +78,12 @@ cleanup_frame (rp_window_frame *frame)
{
hide_transient_for_between (last_win, win);
}
+ else if (last_win->transient && win->transient &&
+ last_win->transient_for == win->transient_for)
+ {
+ /* Both last_win and win have the same transient_for so we
+ don't need to hide anything more */
+ }
else
{
hide_transient_for (last_win);
diff --git a/src/list.c b/src/list.c
index b3f97bd..4d0cc8e 100644
--- a/src/list.c
+++ b/src/list.c
@@ -529,6 +529,12 @@ set_active_window (rp_window *win)
/* We only need to hide the transients "between" last_win and win */
hide_transient_for_between (last_win, win);
}
+ else if (last_win && last_win->transient && win->transient &&
+ last_win->transient_for == win->transient_for)
+ {
+ /* Both last_win and win have the same transient_for so we
+ don't need to hide anything more */
+ }
else
{
hide_transient_for (last_win);