[Xfce4-commits] r26274 - xfwm4/trunk/src
Olivier Fourdan
olivier at xfce.org
Wed Nov 7 23:26:34 CET 2007
Author: olivier
Date: 2007-11-07 22:26:34 +0000 (Wed, 07 Nov 2007)
New Revision: 26274
Modified:
xfwm4/trunk/src/client.c
xfwm4/trunk/src/focus.c
Log:
Keep transients and parent together
Modified: xfwm4/trunk/src/client.c
===================================================================
--- xfwm4/trunk/src/client.c 2007-11-07 22:01:28 UTC (rev 26273)
+++ xfwm4/trunk/src/client.c 2007-11-07 22:26:34 UTC (rev 26274)
@@ -4990,8 +4990,6 @@
if (passdata->c == NULL)
{
return EVENT_FILTER_CONTINUE;
- /* will never be executed */
- /* gtk_main_quit (); */
}
c = passdata->c;
@@ -5178,6 +5176,7 @@
if (passdata.c)
{
Client *focused;
+ Client *sibling;
int workspace;
c = passdata.c;
@@ -5195,9 +5194,10 @@
clientAdjustFullscreenLayer (focused, FALSE);
}
- clientShow (c, TRUE);
+ sibling = clientGetTransientFor(c);
+ clientRaise (sibling, None);
+ clientShow (sibling, TRUE);
clientSetFocus (screen_info, c, myDisplayGetCurrentTime (display_info), NO_FOCUS_FLAG);
- clientRaise (c, None);
}
myScreenUngrabKeyboard (screen_info);
Modified: xfwm4/trunk/src/focus.c
===================================================================
--- xfwm4/trunk/src/focus.c 2007-11-07 22:01:28 UTC (rev 26273)
+++ xfwm4/trunk/src/focus.c 2007-11-07 22:26:34 UTC (rev 26274)
@@ -327,12 +327,13 @@
{
if (c)
{
- if (clientIsModal (c))
+ if (clientIsTransientOrModal (c))
{
- /* If the window is a modal, send focus back to its parent window.
- Modals are transients, and we aren't interested in modal
- for group, so it safe to use clientGetTransient because
- it's really what we want...
+ /* If the window is a transient or modal, send focus back to
+ * its parent window.
+ * Modals are transients, and we aren't interested in modal
+ * for group, so it safe to use clientGetTransient because
+ * it's really what we want...
*/
c2 = clientGetTransient (c);
if (c2 && FLAG_TEST(c2->xfwm_flags, XFWM_FLAG_VISIBLE))
More information about the Xfce4-commits
mailing list