Hello community, here is the log from the commit of package xfdesktop for openSUSE:Factory checked in at 2018-06-20 15:25:57 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/xfdesktop (Old) and /work/SRC/openSUSE:Factory/.xfdesktop.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "xfdesktop" Wed Jun 20 15:25:57 2018 rev:36 rq:617424 version:4.12.4 Changes: -------- --- /work/SRC/openSUSE:Factory/xfdesktop/xfdesktop.changes 2017-08-24 18:41:32.293185866 +0200 +++ /work/SRC/openSUSE:Factory/.xfdesktop.new/xfdesktop.changes 2018-06-20 15:26:07.457466014 +0200 @@ -1,0 +2,8 @@ +Sun Jun 17 20:44:23 UTC 2018 - [email protected] + +- update thunarx dependency +- add 0001-Use-the-new-Thunarx-3-API.patch for thunarx-3 usage +- use %license intead of %doc for COPYING file +- remove empty %post/%postun + +------------------------------------------------------------------- New: ---- 0001-Use-the-new-Thunarx-3-API.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ xfdesktop.spec ++++++ --- /var/tmp/diff_new_pack.h3A6Y4/_old 2018-06-20 15:26:08.473429161 +0200 +++ /var/tmp/diff_new_pack.h3A6Y4/_new 2018-06-20 15:26:08.473429161 +0200 @@ -1,7 +1,7 @@ # # spec file for package xfdesktop # -# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -20,7 +20,7 @@ Version: 4.12.4 Release: 0 Summary: Desktop Manager for the Xfce Desktop Environment -License: GPL-2.0+ +License: GPL-2.0-or-later Group: System/GUI/XFCE Url: http://docs.xfce.org/xfce/xfdesktop/start Source0: http://archive.xfce.org/src/xfce/xfdesktop/4.12/%{name}-%{version}.tar.bz2 @@ -28,6 +28,8 @@ Patch0: xfdesktop-backgrounds-path.patch # PATCH-FEATURE-OPENSUSE xfdesktop-default-backdrop-image.patch [email protected] -- Sets the default background image to a symlink that is delivered by branding packages Patch1: xfdesktop-default-background-image.patch +# PATCH-FIX-UPSTREAM 0001-Use-the-new-Thunarx-3-API.patch [email protected] -- backport from 4.13 for thunarx-3 +Patch2: 0001-Use-the-new-Thunarx-3-API.patch BuildRequires: fdupes BuildRequires: intltool BuildRequires: update-desktop-files @@ -46,7 +48,7 @@ BuildRequires: pkgconfig(libxfce4ui-1) >= 4.9.0 BuildRequires: pkgconfig(libxfce4util-1.0) >= 4.9.0 BuildRequires: pkgconfig(libxfconf-0) >= 4.9.0 -BuildRequires: pkgconfig(thunarx-2) +BuildRequires: pkgconfig(thunarx-3) Provides: xfce4-desktop = %{version} Obsoletes: xfce4-desktop < %{version} Requires: %{name}-branding = %{version} @@ -84,6 +86,7 @@ %setup -q %patch0 -p1 %patch1 -p1 +%patch2 -p1 %build xdt-autogen @@ -105,17 +108,10 @@ %fdupes %{buildroot}%{_datadir} -%post -%desktop_database_post -%icon_theme_cache_post - -%postun -%desktop_database_postun -%icon_theme_cache_postun - %files %defattr(-,root,root) -%doc README COPYING AUTHORS NEWS TODO +%doc README AUTHORS NEWS TODO +%license COPYING %{_bindir}/xfdesktop %{_bindir}/xfdesktop-settings %{_datadir}/applications/xfce-backdrop-settings.desktop ++++++ 0001-Use-the-new-Thunarx-3-API.patch ++++++ >From 4c77522252500818869654832594a2d38c3dc291 Mon Sep 17 00:00:00 2001 From: Andre Miranda <[email protected]> Date: Fri, 3 Nov 2017 15:39:17 +0300 Subject: [PATCH] Use the new Thunarx-3 API Signed-off-by: Eric Koegel <[email protected]> --- src/xfdesktop-file-icon-manager.c | 80 ++++++++++++++++++++++--------- 1 file changed, 58 insertions(+), 22 deletions(-) diff --git a/src/xfdesktop-file-icon-manager.c b/src/xfdesktop-file-icon-manager.c index fa8cbe37..48045c12 100644 --- a/src/xfdesktop-file-icon-manager.c +++ b/src/xfdesktop-file-icon-manager.c @@ -1269,19 +1269,55 @@ xfdesktop_file_icon_menu_fill_template_menu(GtkWidget *menu, } #ifdef HAVE_THUNARX +static void +thunarx_action_callback (GtkAction *action, + gpointer callback_data) +{ + thunarx_menu_item_activate (THUNARX_MENU_ITEM (callback_data)); +} + + + +static GtkWidget* +xfdesktop_menu_create_menu_item_from_thunarx_menu_item (GObject *item) +{ + gchar *label, *icon_name; + GtkWidget *mi, *img; + + g_return_val_if_fail (THUNARX_IS_MENU_ITEM (item), NULL); + + g_object_get (G_OBJECT (item), + "label", &label, + "icon", &icon_name, + NULL); + + img = gtk_image_new_from_icon_name(icon_name, GTK_ICON_SIZE_MENU); + mi = xfdesktop_menu_create_menu_item_with_mnemonic (label, img); + + g_signal_connect_data (mi, "activate", + G_CALLBACK (thunarx_action_callback), + g_object_ref (item), + (GClosureNotify) g_object_unref, 0); + + g_free (label); + g_free (icon_name); + + return mi; +} + + + static inline void -xfdesktop_menu_shell_append_action_list(GtkMenuShell *menu_shell, - GList *actions) +xfdesktop_menu_shell_append_thunarx_menu_item_list(GtkMenuShell *menu_shell, + GList *items) { GList *l; - GtkAction *action; GtkWidget *mi; - - for(l = actions; l; l = l->next) { - action = GTK_ACTION(l->data); - mi = gtk_action_create_menu_item(action); + + for(l = items; l; l = l->next) { + mi = xfdesktop_menu_create_menu_item_from_thunarx_menu_item (l->data); gtk_widget_show(mi); - gtk_menu_shell_append(menu_shell, mi); + gtk_menu_shell_append(menu_shell, mi); } } #endif @@ -1751,35 +1787,35 @@ xfdesktop_file_icon_manager_populate_context_menu(XfceDesktop *desktop, #ifdef HAVE_THUNARX if(!multi_sel_special && fmanager->priv->thunarx_menu_providers) { - GList *menu_actions = NULL; + GList *menu_items = NULL; ThunarxMenuProvider *provider; if(selected->data == fmanager->priv->desktop_icon) { /* click on the desktop itself, only show folder actions */ for(l = fmanager->priv->thunarx_menu_providers; l; l = l->next) { provider = THUNARX_MENU_PROVIDER(l->data); - menu_actions = g_list_concat(menu_actions, - thunarx_menu_provider_get_folder_actions(provider, - toplevel, - THUNARX_FILE_INFO(file_icon))); + menu_items = g_list_concat(menu_items, + thunarx_menu_provider_get_folder_menu_items(provider, + toplevel, + THUNARX_FILE_INFO(file_icon))); } } else { /* thunar file specific actions (allows them to operate on folders * that are on the desktop as well) */ for(l = fmanager->priv->thunarx_menu_providers; l; l = l->next) { provider = THUNARX_MENU_PROVIDER(l->data); - menu_actions = g_list_concat(menu_actions, - thunarx_menu_provider_get_file_actions(provider, - toplevel, - selected)); + menu_items = g_list_concat(menu_items, + thunarx_menu_provider_get_file_menu_items(provider, + toplevel, + selected)); } } - if(menu_actions) { - xfdesktop_menu_shell_append_action_list(GTK_MENU_SHELL(menu), - menu_actions); - g_list_foreach(menu_actions, (GFunc)g_object_unref, NULL); - g_list_free(menu_actions); + if(menu_items) { + xfdesktop_menu_shell_append_thunarx_menu_item_list(GTK_MENU_SHELL(menu), + menu_items); + g_list_foreach(menu_items, (GFunc)g_object_unref, NULL); + g_list_free(menu_items); mi = gtk_separator_menu_item_new(); gtk_widget_show(mi); -- 2.17.1
