[Xfce4-commits] r30404 - in xfwm4/branches/xfce_4_6: . src
Olivier Fourdan
olivier at xfce.org
Mon Jul 27 07:58:56 CEST 2009
Author: olivier
Date: 2009-07-27 05:58:56 +0000 (Mon, 27 Jul 2009)
New Revision: 30404
Modified:
xfwm4/branches/xfce_4_6/ChangeLog
xfwm4/branches/xfce_4_6/NEWS
xfwm4/branches/xfce_4_6/src/client.c
xfwm4/branches/xfce_4_6/src/focus.c
Log:
* src/focus.c: Place windows on top of stack even when not focused in
focus follow mouse (Bug #5479).
* src/client.c: Transition fullscreen windows back to their original
layer when another window is activated (Bug #3551)
Modified: xfwm4/branches/xfce_4_6/ChangeLog
===================================================================
--- xfwm4/branches/xfce_4_6/ChangeLog 2009-07-27 02:27:43 UTC (rev 30403)
+++ xfwm4/branches/xfce_4_6/ChangeLog 2009-07-27 05:58:56 UTC (rev 30404)
@@ -1,3 +1,10 @@
+2009-07-27 olivier
+
+ * src/focus.c: Place windows on top of stack even when not focused in
+ focus follow mouse (Bug #5479).
+ * src/client.c: Transition fullscreen windows back to their original
+ layer when another window is activated (Bug #3551)
+
2009-05-22 olivier
* frame.c, tabwin.c: Fix mixed RTL/LTR text not rendering properly
in title and tabwin
Modified: xfwm4/branches/xfce_4_6/NEWS
===================================================================
--- xfwm4/branches/xfce_4_6/NEWS 2009-07-27 02:27:43 UTC (rev 30403)
+++ xfwm4/branches/xfce_4_6/NEWS 2009-07-27 05:58:56 UTC (rev 30404)
@@ -1,7 +1,11 @@
4.6.2
=====
+- Transition fullscreen windows back to their original layer
+ when another window is activated (Bug #3551)
- Fix mixed RTL/LTR text not rendering properly in title and tabwin
+- Place windows on top of stack even when not focused in focus follow mouse
+ (Bug #5479)
4.6.1
=====
Modified: xfwm4/branches/xfce_4_6/src/client.c
===================================================================
--- xfwm4/branches/xfce_4_6/src/client.c 2009-07-27 02:27:43 UTC (rev 30403)
+++ xfwm4/branches/xfce_4_6/src/client.c 2009-07-27 05:58:56 UTC (rev 30404)
@@ -2548,6 +2548,7 @@
clientActivate (Client * c, guint32 timestamp)
{
ScreenInfo *screen_info;
+ Client *focused;
Client *sibling;
g_return_if_fail (c != NULL);
@@ -2555,8 +2556,15 @@
screen_info = c->screen_info;
sibling = clientGetTransientFor(c);
+ focused = clientGetFocus ();
+
if ((screen_info->current_ws == c->win_workspace) || (screen_info->params->activate_action != ACTIVATE_ACTION_NONE))
{
+ if ((focused) && (c != focused))
+ {
+ /* We might be able to avoid this if we are about to switch workspace */
+ clientAdjustFullscreenLayer (focused, FALSE);
+ }
if (screen_info->current_ws != c->win_workspace)
{
if (screen_info->params->activate_action == ACTIVATE_ACTION_BRING)
Modified: xfwm4/branches/xfce_4_6/src/focus.c
===================================================================
--- xfwm4/branches/xfce_4_6/src/focus.c 2009-07-27 02:27:43 UTC (rev 30403)
+++ xfwm4/branches/xfce_4_6/src/focus.c 2009-07-27 05:58:56 UTC (rev 30404)
@@ -214,7 +214,12 @@
{
Client *c2 = clientGetFocus();
- if ((c2 != NULL) && (c2->win_layer == c->win_layer))
+ /*
+ * Place windows under the currently focused only if focus
+ * stealing prevention had prevented the focus transition,
+ * otherwise, leave the unfocused window on top.
+ */
+ if ((c2 != NULL) && (c2->win_layer == c->win_layer) && prevented)
{
clientSortRing(c);
clientLower (c, c2->frame);
More information about the Xfce4-commits
mailing list