Hello community, here is the log from the commit of package xfdesktop for openSUSE:Factory checked in at 2012-04-19 10:42:37 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/xfdesktop (Old) and /work/SRC/openSUSE:Factory/.xfdesktop.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "xfdesktop", Maintainer is "" Changes: -------- --- /work/SRC/openSUSE:Factory/xfdesktop/xfdesktop.changes 2011-10-28 15:30:03.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.xfdesktop.new/xfdesktop.changes 2012-04-19 10:42:53.000000000 +0200 @@ -1,0 +2,14 @@ +Sat Apr 7 22:06:13 UTC 2012 - [email protected] + +- added xfdesktop-fix-slow-popup-menu.patch which adds a check for + GDK_GRAB_INVALID_TIME in xfdesktop_popup_grab_available to + mitigate slow menu popups on a right mouse click (bnc#669768, + bxo#7172) + +------------------------------------------------------------------- +Thu Mar 29 21:44:16 UTC 2012 - [email protected] + +- split off -lang subpackage +- specfile cleanup + +------------------------------------------------------------------- New: ---- xfdesktop-fix-slow-popup-menu.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ xfdesktop.spec ++++++ --- /var/tmp/diff_new_pack.mBFGDy/_old 2012-04-19 10:42:54.000000000 +0200 +++ /var/tmp/diff_new_pack.mBFGDy/_new 2012-04-19 10:42:54.000000000 +0200 @@ -1,7 +1,7 @@ # # spec file for package xfdesktop # -# Copyright (c) 2011 SUSE LINUX Products GmbH, Nuernberg, Germany. +# Copyright (c) 2012 SUSE LINUX Products GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -16,31 +16,37 @@ # - Name: xfdesktop Version: 4.8.3 -Release: 1 +Release: 0 +Summary: Desktop Manager for the Xfce Desktop Environment License: GPL-2.0+ -Summary: Desktop manager for the Xfce Desktop Environment -Url: http://www.xfce.org/projects/xfdesktop/ Group: System/GUI/XFCE -Source0: %{name}-%{version}.tar.bz2 +Url: http://docs.xfce.org/xfce/xfdesktop/start +Source0: http://archive.xfce.org/src/xfce/xfdesktop/4.8/%{name}-%{version}.tar.bz2 Source1: xfce4-desktop.xml +# PATCH-FIX-UPSTREAM xfdesktop-fix-slow-popup-menu.patch bnc#669768 bxo#7172 [email protected] -- Adds a check for GDK_GRAB_INVALID_TIME in xfdesktop_popup_grab_available to mitigate slow menu popups on a right mouse click (backported from upstream git) +Patch0: xfdesktop-fix-slow-popup-menu.patch BuildRequires: fdupes BuildRequires: intltool -BuildRequires: pkgconfig(garcon-1) +BuildRequires: update-desktop-files +BuildRequires: pkgconfig(dbus-glib-1) BuildRequires: pkgconfig(exo-1) +BuildRequires: pkgconfig(garcon-1) +BuildRequires: pkgconfig(gio-2.0) +BuildRequires: pkgconfig(gio-unix-2.0) +BuildRequires: pkgconfig(gmodule-2.0) +BuildRequires: pkgconfig(gobject-2.0) +BuildRequires: pkgconfig(gthread-2.0) BuildRequires: pkgconfig(gtk+-2.0) -BuildRequires: pkgconfig(dbus-glib-1) BuildRequires: pkgconfig(libnotify) -BuildRequires: pkgconfig(libstartup-notification-1.0) BuildRequires: pkgconfig(libwnck-1.0) BuildRequires: pkgconfig(libxfce4ui-1) BuildRequires: pkgconfig(libxfce4util-1.0) -BuildRequires: pkgconfig(thunarx-2) BuildRequires: pkgconfig(libxfconf-0) -BuildRequires: update-desktop-files -Requires: %{name}-branding >= %{version} +BuildRequires: pkgconfig(thunarx-2) +Requires: %{name}-branding = %{version} +Recommends: %{name}-lang = %{version} Provides: xfce4-desktop = %{version} Obsoletes: xfce4-desktop < %{version} BuildRoot: %{_tmppath}/%{name}-%{version}-build @@ -53,8 +59,8 @@ background images, as well as real multiscreen and xinerama support. %package branding-upstream -License: GPL-2.0+ -Summary: Upstream branding of xfce4-settings +Summary: Upstream Branding of xfce4-settings +Group: System/GUI/XFCE # BRAND: xfce4-desktop.xml: Control desktop appearance such as the default # BRAND: backdrop image. Conflicts: otherproviders(%{name}-branding) @@ -67,8 +73,11 @@ %description branding-upstream This package provides the upstream look and feel for the Xfce Desktop Manager. +%lang_package + %prep %setup -q +%patch0 -p1 %build export CFLAGS="%{optflags} -fno-strict-aliasing" @@ -77,18 +86,21 @@ %install %make_install + install -D -p -m 644 %{SOURCE1} \ %{buildroot}%{_sysconfdir}/xdg/xfce4/xfconf/xfce-perchannel-xml/xfce4-desktop.xml + %suse_update_desktop_file xfce-backdrop-settings + rm -rf %{buildroot}%{_datadir}/locale/{ast,kk,tl_PH,ur_PK} -%find_lang %{name} + +%find_lang %{name} %{?no_lang_C} + %fdupes %{buildroot}%{_datadir} %clean rm -rf %{buildroot} -%if 0%{?suse_version} >= 1140 - %post %desktop_database_post %icon_theme_cache_post @@ -96,9 +108,8 @@ %postun %desktop_database_postun %icon_theme_cache_postun -%endif -%files -f %name.lang +%files %defattr(-,root,root) %doc README COPYING AUTHORS ChangeLog TODO %{_bindir}/xfdesktop @@ -114,6 +125,8 @@ %dir %{_datadir}/xfce4/xfdesktop %doc %{_datadir}/xfce4/xfdesktop/html/ +%files lang -f %name.lang + %files branding-upstream %defattr(-,root,root) %dir %{_sysconfdir}/xdg/xfce4 ++++++ xfdesktop-fix-slow-popup-menu.patch ++++++ >From 803ea66061417317df2b2968a81a4cfdfd052e8d Mon Sep 17 00:00:00 2001 From: Eric Koegel <[email protected]> Date: Mon, 05 Dec 2011 11:44:59 +0000 Subject: Added a check for GDK_GRAB_INVALID_TIME in xfdesktop_popup_grab_available to mitigate slow menu popups on a right mouse click. Fixes bug 7172. --- diff --git a/common/xfdesktop-common.c b/common/xfdesktop-common.c index 9e4f22c..64aee8d 100644 --- a/common/xfdesktop-common.c +++ b/common/xfdesktop-common.c @@ -370,7 +370,10 @@ xfdesktop_popup_grab_available (GdkWindow *win, guint32 timestamp) while ((i++ < 2500) && (grab_failed = ((g1 != GDK_GRAB_SUCCESS) || (g2 != GDK_GRAB_SUCCESS)))) { - TRACE ("grab not available yet, waiting... (%i)", i); + TRACE ("grab not available yet, mouse reason: %d, keyboard reason: %d, waiting... (%i)", g1, g2, i); + if(g1 == GDK_GRAB_INVALID_TIME || g2 == GDK_GRAB_INVALID_TIME) + break; + g_usleep (100); if (g1 != GDK_GRAB_SUCCESS) { diff --git a/src/xfce-desktop.c b/src/xfce-desktop.c index cd98ae7..bcd4bd8 100644 --- a/src/xfce-desktop.c +++ b/src/xfce-desktop.c @@ -1340,29 +1340,29 @@ xfce_desktop_do_menu_popup(XfceDesktop *desktop, screen = gtk_widget_get_screen(GTK_WIDGET(desktop)); else screen = gdk_display_get_default_screen(gdk_display_get_default()); - - menu = gtk_menu_new(); - gtk_menu_set_screen(GTK_MENU(menu), screen); - g_signal_connect_swapped(G_OBJECT(menu), "deactivate", - G_CALLBACK(g_idle_add), - (gpointer)xfce_desktop_menu_destroy_idled); - - g_signal_emit(G_OBJECT(desktop), populate_signal, 0, menu); - - /* if nobody populated the menu, don't do anything */ - menu_children = gtk_container_get_children(GTK_CONTAINER(menu)); - if(!menu_children) { - gtk_widget_destroy(menu); - return; - } - - g_list_free(menu_children); - - gtk_menu_attach_to_widget(GTK_MENU(menu), GTK_WIDGET(desktop), NULL); - + if(xfdesktop_popup_grab_available(gdk_screen_get_root_window(screen), activate_time)) { + menu = gtk_menu_new(); + gtk_menu_set_screen(GTK_MENU(menu), screen); + g_signal_connect_swapped(G_OBJECT(menu), "deactivate", + G_CALLBACK(g_idle_add), + (gpointer)xfce_desktop_menu_destroy_idled); + + g_signal_emit(G_OBJECT(desktop), populate_signal, 0, menu); + + /* if nobody populated the menu, don't do anything */ + menu_children = gtk_container_get_children(GTK_CONTAINER(menu)); + if(!menu_children) { + gtk_widget_destroy(menu); + return; + } + + g_list_free(menu_children); + + gtk_menu_attach_to_widget(GTK_MENU(menu), GTK_WIDGET(desktop), NULL); + /* bug #3652: for some reason passing the correct button here breaks * on some systems but not others. always pass 0 for now. */ gtk_menu_popup(GTK_MENU(menu), NULL, NULL, NULL, NULL, 0, -- cgit v0.9.0.3 -- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
