Hello community, here is the log from the commit of package xfwm4 for openSUSE:Factory checked in at Wed Sep 21 17:29:49 CEST 2011.
-------- --- xfwm4/xfwm4.changes 2011-02-18 15:17:18.000000000 +0100 +++ /mounts/work_src_done/STABLE/xfwm4/xfwm4.changes 2011-09-20 16:11:07.000000000 +0200 @@ -1,0 +2,11 @@ +Tue Sep 20 14:00:02 UTC 2011 - [email protected] + +- added xfwm4-4.8.1-fix-panel-plugins-not-receiving-focus.patch in + order to fix panel plugins not receiving focus in focus follow + mouse mode (backported from upstream git) +- added xfwm4-4.8.1-always-initialize-display-session.patch which + ensures the display struct's session member is always initialized + in order to prevent crashes when quitting (backported from + upstream git) + +------------------------------------------------------------------- calling whatdependson for head-i586 New: ---- xfwm4-4.8.1-always-initialize-display-session.patch xfwm4-4.8.1-fix-panel-plugins-not-receiving-focus.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ xfwm4.spec ++++++ --- /var/tmp/diff_new_pack.45PQn9/_old 2011-09-21 17:29:44.000000000 +0200 +++ /var/tmp/diff_new_pack.45PQn9/_new 2011-09-21 17:29:44.000000000 +0200 @@ -30,6 +30,10 @@ Source3: Gilouche-xfwm4.tar.bz2 Source4: COPYING.Gilouche Source5: xfwm4.xml +# PATCH-FIX-UPSTREAM xfwm4-4.8.1-fix-panel-plugins-not-receiving-focus.patch bxo#6617 bxo#6649 [email protected] -- Fix panel plugins not receiving focus in focus follow mouse mode (backported from upstream git) +Patch0: xfwm4-4.8.1-fix-panel-plugins-not-receiving-focus.patch +# PATCH-FIX-UPSTREAM xfwm4-4.8.1-always-initialize-display-session.patch [email protected] -- Ensure the display struct's session member is always initialized in order to prevent crashes when quitting (backported from upstream git) +Patch1: xfwm4-4.8.1-always-initialize-display-session.patch BuildRequires: fdupes BuildRequires: intltool BuildRequires: pkgconfig(gtk+-2.0) @@ -72,6 +76,8 @@ %prep %setup -q -a1 -a3 +%patch0 -p1 +%patch1 -p1 %build export CFLAGS="%{optflags} -fno-strict-aliasing" ++++++ xfwm4-4.8.1-always-initialize-display-session.patch ++++++ diff --git a/src/session.c b/src/session.c index e46407c..1c75ea5 100644 --- a/src/session.c +++ b/src/session.c @@ -762,11 +762,10 @@ sessionStart (DisplayInfo *display_info) session = xfce_sm_client_get (); xfce_sm_client_set_restart_style (session, XFCE_SM_CLIENT_RESTART_IMMEDIATELY); xfce_sm_client_set_priority (session, XFCE_SM_CLIENT_PRIORITY_WM); + display_info->session = session; if (xfce_sm_client_connect(session, &error)) { - display_info->session = session; - if (xfce_sm_client_is_resumed (session)) sessionLoad (display_info); ++++++ xfwm4-4.8.1-fix-panel-plugins-not-receiving-focus.patch ++++++ diff --git a/src/client.c b/src/client.c index a7cd5f7..64bd2e7 100644 --- a/src/client.c +++ b/src/client.c @@ -2607,8 +2607,16 @@ clientActivate (Client * c, guint32 timestamp, gboolean source_is_application) } clientRaise (sibling, None); clientShow (sibling, TRUE); - if (source_is_application || screen_info->params->click_to_focus) + if (source_is_application || screen_info->params->click_to_focus || (c->type & WINDOW_TYPE_DONT_FOCUS)) { + /* + It's a bit tricky here, we want to honor the activate request only if: + + - The window use the _NET_ACTIVE_WINDOW protocol and identify itself as an application, + - Or we use the click to focus model, in that case we focus the raised window anyway, + - Or the request comes from an application that we would not focus by default, + such as panels for example + */ clientSetFocus (screen_info, c, timestamp, NO_FOCUS_FLAG); } clientSetLastRaise (c); -- cgit ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Remember to have fun... -- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
