Il 29/06/2021 22:52, Sebastian Ramacher ha scritto:
The diff: 
https://salsa.debian.org/cinnamon-team/nemo/-/compare/debian%2F4.8.6-1...debian%2F4.8.6-2
Please attach a debdiff of the source packages in testing and unstable to the 
bug.

Cheers

Thanks for reply, the link to salsa with diff from 4.8.6-1 to 4.8.6-2 was correct and working, however now I attached the diff generates from debdiff dsc of testing and unstable as requested.

diff -Nru nemo-4.8.6/debian/changelog nemo-4.8.6/debian/changelog
--- nemo-4.8.6/debian/changelog 2021-03-12 23:47:45.000000000 +0100
+++ nemo-4.8.6/debian/changelog 2021-06-20 15:51:07.000000000 +0200
@@ -1,3 +1,10 @@
+nemo (4.8.6-2) unstable; urgency=medium
+
+  * d/patches: nemo-tree-sidebar.c: Fix states for pin/unpin and
+    create-folder menu items (Closes: #988924)
+
+ -- Fabio Fantoni <fantonifa...@tiscali.it>  Sun, 20 Jun 2021 15:51:07 +0200
+
 nemo (4.8.6-1) unstable; urgency=medium
 
   * New upstream version 4.8.6
diff -Nru nemo-4.8.6/debian/patches/fix-states-pin-create-folder-menu.patch 
nemo-4.8.6/debian/patches/fix-states-pin-create-folder-menu.patch
--- nemo-4.8.6/debian/patches/fix-states-pin-create-folder-menu.patch   
1970-01-01 01:00:00.000000000 +0100
+++ nemo-4.8.6/debian/patches/fix-states-pin-create-folder-menu.patch   
2021-06-20 15:51:07.000000000 +0200
@@ -0,0 +1,134 @@
+Author: Michael Webster <miketwebs...@gmail.com>
+Description: nemo-tree-sidebar.c: Fix states for pin/unpin and
+ create-folder menu items.
+
+- Don't allow pinning of items in the root tree level.
+- Correctly set visiblity/sensitivity of the create-folder menu item -
+  disallow in non-writeable locations and in favorites (this is
+  already forbidden elsewhere).
+- Fix incorrect jump when right-clicking a non-selected tree entry.
+
+Fixes #2759
+Origin: 
https://github.com/linuxmint/nemo/commit/d1807d43898861cf159d4bdf8be2f912b396ff05
+---
+ src/nemo-tree-sidebar.c | 44 +++++++++++++++++++++++++++++------------
+ 1 file changed, 31 insertions(+), 13 deletions(-)
+
+--- a/src/nemo-tree-sidebar.c
++++ b/src/nemo-tree-sidebar.c
+@@ -93,11 +93,13 @@
+       GtkWidget *popup_open_in_new_window;
+       GtkWidget *popup_open_in_new_tab;
+       GtkWidget *popup_create_folder;
++    GtkWidget *popup_post_create_folder_separator;
+       GtkWidget *popup_cut;
+       GtkWidget *popup_copy;
+       GtkWidget *popup_paste;
+       GtkWidget *popup_rename;
+     GtkWidget *popup_pin;
++    GtkWidget *popup_post_pin_separator;
+     GtkWidget *popup_unpin;
+       GtkWidget *popup_trash;
+       GtkWidget *popup_delete;
+@@ -689,13 +691,14 @@
+ button_pressed_callback (GtkTreeView *treeview, GdkEventButton *event,
+                        FMTreeView *view)
+ {
+-      GtkTreePath *path, *cursor_path;
++      GtkTreePath *path;
+       gboolean parent_file_is_writable;
+       gboolean file_is_home_or_desktop;
+       gboolean file_is_special_link;
+       gboolean can_move_file_to_trash;
+       gboolean can_delete_file;
+       gboolean using_browser;
++    gint is_toplevel;
+ 
+       using_browser = g_settings_get_boolean (nemo_preferences,
+                                               
NEMO_PREFERENCES_ALWAYS_USE_BROWSER);
+@@ -719,12 +722,11 @@
+                       gtk_tree_path_free (path);
+                       return FALSE;
+               }
+-              gtk_tree_view_get_cursor (view->details->tree_widget, 
&cursor_path, NULL);
+-
+-              gtk_tree_path_free (path);
+ 
+               create_popup_menu (view);
+ 
++        is_toplevel = gtk_tree_path_get_depth (path) == 1;
++
+               if (using_browser) {
+                       gtk_widget_set_sensitive 
(view->details->popup_open_in_new_window,
+                                                 nemo_file_is_directory 
(view->details->popup_file));
+@@ -735,6 +737,15 @@
+               gtk_widget_set_sensitive (view->details->popup_create_folder,
+                       nemo_file_is_directory (view->details->popup_file) &&
+                       nemo_file_can_write (view->details->popup_file));
++
++        if (nemo_file_is_in_favorites (view->details->popup_file)) {
++            gtk_widget_hide (view->details->popup_create_folder);
++            gtk_widget_hide 
(view->details->popup_post_create_folder_separator);
++        } else {
++            gtk_widget_show (view->details->popup_create_folder);
++            gtk_widget_show 
(view->details->popup_post_create_folder_separator);
++        }
++
+               gtk_widget_set_sensitive (view->details->popup_paste, FALSE);
+               if (nemo_file_is_directory (view->details->popup_file) &&
+                       nemo_file_can_write (view->details->popup_file)) {
+@@ -785,12 +796,20 @@
+                       gtk_widget_hide 
(view->details->popup_unmount_separator);
+               }
+ 
+-        if (nemo_file_get_pinning (view->details->popup_file)) {
+-            gtk_widget_hide (view->details->popup_pin);
+-            gtk_widget_show (view->details->popup_unpin);
++        if (!is_toplevel && !nemo_file_is_in_favorites 
(view->details->popup_file)) {
++            if (nemo_file_get_pinning (view->details->popup_file)) {
++                gtk_widget_hide (view->details->popup_pin);
++                gtk_widget_show (view->details->popup_unpin);
++            } else {
++                gtk_widget_show (view->details->popup_pin);
++                gtk_widget_hide (view->details->popup_unpin);
++            }
++
++            gtk_widget_show (view->details->popup_post_pin_separator);
+         } else {
+-            gtk_widget_show (view->details->popup_pin);
++            gtk_widget_hide (view->details->popup_pin);
+             gtk_widget_hide (view->details->popup_unpin);
++            gtk_widget_hide (view->details->popup_post_pin_separator);
+         }
+ 
+         gboolean actions_visible = FALSE;
+@@ -826,8 +845,8 @@
+                               NULL, NULL, NULL, NULL,
+                               event->button, event->time);
+ 
+-              gtk_tree_view_set_cursor (view->details->tree_widget, 
cursor_path, NULL, FALSE);
+-              gtk_tree_path_free (cursor_path);
++              gtk_tree_view_set_cursor (view->details->tree_widget, path, 
NULL, FALSE);
++        gtk_tree_path_free (path);
+ 
+               return FALSE;
+       } else if (event->button == 2 && event->type == GDK_BUTTON_PRESS) {
+@@ -1353,7 +1372,7 @@
+       gtk_menu_shell_append (GTK_MENU_SHELL (popup), menu_item);
+       view->details->popup_create_folder = menu_item;
+       
+-      eel_gtk_menu_append_separator (GTK_MENU (popup));
++    view->details->popup_post_create_folder_separator = GTK_WIDGET 
(eel_gtk_menu_append_separator (GTK_MENU (popup)));
+       
+       /* add the "cut folder" menu item */
+     menu_image = gtk_image_new_from_icon_name ("edit-cut-symbolic", 
GTK_ICON_SIZE_MENU);
+@@ -1418,8 +1437,7 @@
+     gtk_menu_shell_append (GTK_MENU_SHELL (popup), menu_item);
+     view->details->popup_unpin = menu_item;
+ 
+-
+-    eel_gtk_menu_append_separator (GTK_MENU (popup));
++    view->details->popup_post_pin_separator = GTK_WIDGET 
(eel_gtk_menu_append_separator (GTK_MENU (popup)));
+ 
+       /* add the "move to trash" menu item */
+       menu_image = gtk_image_new_from_icon_name 
(NEMO_ICON_SYMBOLIC_TRASH_FULL,
diff -Nru nemo-4.8.6/debian/patches/series nemo-4.8.6/debian/patches/series
--- nemo-4.8.6/debian/patches/series    1970-01-01 01:00:00.000000000 +0100
+++ nemo-4.8.6/debian/patches/series    2021-06-20 15:51:07.000000000 +0200
@@ -0,0 +1,2 @@
+fix-states-pin-create-folder-menu.patch
+

Attachment: OpenPGP_signature
Description: OpenPGP digital signature

Reply via email to