]> git.pld-linux.org Git - packages/xfce4-places-plugin.git/commitdiff
- rel 7 auto/th/xfce4-places-plugin-1_2_0-7
authorJan Rękorajski <baggins@pld-linux.org>
Thu, 3 Mar 2011 12:46:57 +0000 (12:46 +0000)
committercvs2git <feedback@pld-linux.org>
Sun, 24 Jun 2012 12:13:13 +0000 (12:13 +0000)
- work around menu position not being updated after plugin movement by providing
  our menu position hook

Changed files:
    xfce4-places-plugin-position.patch -> 1.1
    xfce4-places-plugin.spec -> 1.16

xfce4-places-plugin-position.patch [new file with mode: 0644]
xfce4-places-plugin.spec

diff --git a/xfce4-places-plugin-position.patch b/xfce4-places-plugin-position.patch
new file mode 100644 (file)
index 0000000..48eb2e1
--- /dev/null
@@ -0,0 +1,69 @@
+diff -ur xfce4-places-plugin-1.2.0/panel-plugin/view.c xfce4-places-plugin-1.2.0-position/panel-plugin/view.c
+--- xfce4-places-plugin-1.2.0/panel-plugin/view.c      2011-03-03 13:43:31.938573607 +0100
++++ xfce4-places-plugin-1.2.0-position/panel-plugin/view.c     2011-03-03 13:42:28.099573608 +0100
+@@ -734,6 +734,55 @@
+ }
+ static void
++pview_position_menu (GtkMenu *menu,
++                     gint *x,
++                     gint *y,
++                     gboolean *push_in,
++                     PlacesView *view)
++{
++  GtkWidget *button;
++  GtkRequisition requisition;
++  GtkOrientation orientation;
++
++  button = view->button;
++  orientation = xfce_panel_plugin_get_orientation (view->plugin);
++  gtk_widget_size_request (GTK_WIDGET (menu), &requisition);
++  gdk_window_get_origin (GTK_WIDGET (view->plugin)->window, x, y);
++
++  switch (orientation)
++    {
++    case GTK_ORIENTATION_HORIZONTAL:
++      if (*y + button->allocation.height + requisition.height > gdk_screen_height ())
++        /* Show menu above */
++        *y -= requisition.height;
++      else
++        /* Show menu below */
++        *y += button->allocation.height;
++
++      if (*x + requisition.width > gdk_screen_width ())
++        /* Adjust horizontal position */
++        *x = gdk_screen_width () - requisition.width;
++      break;
++
++    case GTK_ORIENTATION_VERTICAL:
++      if (*x + button->allocation.width + requisition.width > gdk_screen_width ())
++        /* Show menu on the right */
++        *x -= requisition.width;
++      else
++        /* Show menu on the left */
++        *x += button->allocation.width;
++
++      if (*y + requisition.height > gdk_screen_height ())
++        /* Adjust vertical position */
++        *y = gdk_screen_height () - requisition.height;
++      break;
++
++    default:
++      break;
++    }
++}
++
++static void
+ pview_open_menu(PlacesView *pd)
+ {
+     /* check if menu is needed, or it needs an update */
+@@ -745,8 +794,7 @@
+     /* popup menu */
+     gtk_menu_popup (GTK_MENU (pd->menu), NULL, NULL,
+-                    xfce_panel_plugin_position_menu,
+-                    pd->plugin, 0,
++                    (GtkMenuPositionFunc)pview_position_menu, pd, 0,
+                     gtk_get_current_event_time ());
+     
+     /* menu timeout to poll for model changes */
index d7e923cc7eb58a5d89c55e9172b10d642902b349..f35960b9481fd3fb1aa4c01781bae039bfe326f9 100644 (file)
@@ -2,7 +2,7 @@ Summary:        A places plugin for the Xfce panel
 Summary(pl.UTF-8):     Wtyczka places dla panelu Xfce
 Name:          xfce4-places-plugin
 Version:       1.2.0
-Release:       6
+Release:       7
 License:       GPL v2
 Group:         X11/Applications
 Source0:       http://archive.xfce.org/src/panel-plugins/xfce4-places-plugin/1.2/%{name}-%{version}.tar.bz2
@@ -10,6 +10,7 @@ Source0:      http://archive.xfce.org/src/panel-plugins/xfce4-places-plugin/1.2/%{nam
 Patch0:                port-to-exo-1.patch
 Patch1:                %{name}-ui.patch
 Patch2:                %{name}-gio.patch
+Patch3:                %{name}-position.patch
 URL:           http://goodies.xfce.org/projects/panel-plugins/xfce4-places-plugin
 BuildRequires: Thunar-devel >= 1.2.0
 BuildRequires: autoconf
@@ -55,6 +56,7 @@ Nautilusem, panelem GNOME itp.
 %patch0 -p1
 %patch1 -p1
 %patch2 -p1
+%patch3 -p1
 
 %build
 %{__libtoolize}
This page took 0.160389 seconds and 4 git commands to generate.