Author: baggins Date: Thu Mar 3 12:47:02 2011 GMT Module: packages Tag: HEAD ---- Log message: - rel 7 - work around menu position not being updated after plugin movement by providing our menu position hook
---- Files affected: packages/xfce4-places-plugin: xfce4-places-plugin.spec (1.15 -> 1.16) , xfce4-places-plugin-position.patch (NONE -> 1.1) (NEW) ---- Diffs: ================================================================ Index: packages/xfce4-places-plugin/xfce4-places-plugin.spec diff -u packages/xfce4-places-plugin/xfce4-places-plugin.spec:1.15 packages/xfce4-places-plugin/xfce4-places-plugin.spec:1.16 --- packages/xfce4-places-plugin/xfce4-places-plugin.spec:1.15 Tue Feb 22 08:11:05 2011 +++ packages/xfce4-places-plugin/xfce4-places-plugin.spec Thu Mar 3 13:46:57 2011 @@ -3,7 +3,7 @@ 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 @@ -11,6 +11,7 @@ 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 @@ -56,6 +57,7 @@ %patch0 -p1 %patch1 -p1 %patch2 -p1 +%patch3 -p1 %build %{__libtoolize} @@ -93,6 +95,11 @@ All persons listed below can be reached at <cvs_login>@pld-linux.org $Log$ +Revision 1.16 2011/03/03 12:46:57 baggins +- rel 7 +- work around menu position not being updated after plugin movement by providing + our menu position hook + Revision 1.15 2011/02/22 07:11:05 baggins - rel 6 ================================================================ Index: packages/xfce4-places-plugin/xfce4-places-plugin-position.patch diff -u /dev/null packages/xfce4-places-plugin/xfce4-places-plugin-position.patch:1.1 --- /dev/null Thu Mar 3 13:47:02 2011 +++ packages/xfce4-places-plugin/xfce4-places-plugin-position.patch Thu Mar 3 13:46:57 2011 @@ -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 */ ================================================================ ---- CVS-web: http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/xfce4-places-plugin/xfce4-places-plugin.spec?r1=1.15&r2=1.16&f=u _______________________________________________ pld-cvs-commit mailing list [email protected] http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit
