]> git.pld-linux.org Git - packages/xfce4-mount-plugin.git/commitdiff
- rel 6 auto/th/xfce4-mount-plugin-0_5_5-6 auto/ti/xfce4-mount-plugin-0_5_5-6
authorJan Rękorajski <baggins@pld-linux.org>
Thu, 3 Mar 2011 19:45:38 +0000 (19:45 +0000)
committercvs2git <feedback@pld-linux.org>
Sun, 24 Jun 2012 12:13:13 +0000 (12:13 +0000)
- properly position menu under plugin icon

Changed files:
    xfce4-mount-plugin-position.patch -> 1.1
    xfce4-mount-plugin.spec -> 1.22

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

diff --git a/xfce4-mount-plugin-position.patch b/xfce4-mount-plugin-position.patch
new file mode 100644 (file)
index 0000000..d70cedf
--- /dev/null
@@ -0,0 +1,67 @@
+diff -ur xfce4-mount-plugin-0.5.5/panel-plugin/mount-plugin.c xfce4-mount-plugin-0.5.5-position/panel-plugin/mount-plugin.c
+--- xfce4-mount-plugin-0.5.5/panel-plugin/mount-plugin.c       2011-03-03 20:42:54.618752071 +0100
++++ xfce4-mount-plugin-0.5.5-position/panel-plugin/mount-plugin.c      2011-03-03 20:41:59.402752071 +0100
+@@ -357,6 +357,54 @@
+ }
++static void
++mounter_position_menu (GtkMenu *menu,
++                     gint *x,
++                     gint *y,
++                     gboolean *push_in,
++                     t_mounter *mounter)
++{
++  GtkWidget *button;
++  GtkRequisition requisition;
++  GtkOrientation orientation;
++
++  button = mounter->button;
++  orientation = xfce_panel_plugin_get_orientation (mounter->plugin);
++  gtk_widget_size_request (GTK_WIDGET (menu), &requisition);
++  gdk_window_get_origin (GTK_WIDGET (mounter->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 gboolean
+ on_button_press (GtkWidget *widget, GdkEventButton *event, t_mounter *mounter)
+@@ -366,7 +414,7 @@
+     {
+         mounter_refresh (mounter); /* refreshs infos regarding mounts data */
+-        gtk_menu_popup (GTK_MENU(mounter->menu), NULL, NULL, NULL, NULL, 0,
++        gtk_menu_popup (GTK_MENU(mounter->menu), NULL, NULL, (GtkMenuPositionFunc)mounter_position_menu, mounter, 0,
+                         event->time);
+         return TRUE;
+     }
index 4db3b228ad542f199d53e1ce7576e3176113b8cc..2b15999be173ec23af6e80055c319b96ff35d876 100644 (file)
@@ -2,13 +2,14 @@ Summary:      mount/umount utility for Xfce panel
 Summary(pl.UTF-8):     Narzędzie do montowania/odmontowywania dla panelu Xfce
 Name:          xfce4-mount-plugin
 Version:       0.5.5
-Release:       5
+Release:       6
 License:       GPL v2+
 Group:         X11/Applications
 Source0:       http://archive.xfce.org/src/panel-plugins/xfce4-mount-plugin/0.5/%{name}-%{version}.tar.bz2
 # Source0-md5: 1d237468fe23e4e8c29195d9b99c4c5d
 Patch0:                %{name}-label-uuid.patch
 Patch1:                %{name}-ui.patch
+Patch2:                %{name}-position.patch
 URL:           http://goodies.xfce.org/projects/panel-plugins/xfce4-mount-plugin
 BuildRequires: autoconf >= 2.63
 BuildRequires: automake
@@ -38,6 +39,7 @@ miejsca dostępnego na urządzeniu.
 %setup -q
 %patch0 -p1
 %patch1 -p1
+%patch2 -p1
 
 %build
 %{__intltoolize}
@@ -46,8 +48,7 @@ miejsca dostępnego na urządzeniu.
 %{__autoconf}
 %{__autoheader}
 %{__automake}
-%configure \
-       --disable-static
+%configure
 
 %{__make}
 
This page took 0.064674 seconds and 4 git commands to generate.