aboutsummarylogtreecommitdiffstats
path: root/popovers__file-chooser-list.patch
diff options
context:
space:
mode:
authorTomasz Gąsior2017-07-30 21:43:53 +0200
committerTomasz Gąsior2017-07-30 21:48:28 +0200
commitcffdd3e7a3e9fc41e676ed4c8cf4d35dd6b4bcc4 (patch)
treee05e15abc999038ccfd98e6849e52e952daac3e7 /popovers__file-chooser-list.patch
parenta6054beb52f10ac378ca008a44624b71cfdaabc3 (diff)
downloadaur-cffdd3e7a3e9fc41e676ed4c8cf4d35dd6b4bcc4.tar.gz
A lot of changes.
- Added ability to enable CSDs by GTK_CSD=0 or GTK_CSD=1 environment variable. - Changed icons of context menus in file chooser dialog to match old GTK2 file chooser and Caja places sidebar (because Caja is a fork of old Nautilus). - Disabled integration with GNOME assistive technologies by default to avoid errors in console output. - Structure of PKGBUILD and paches refactored. - gtk3-widget-factory application restored. - Files of original ArchLinux GTK3 package moved away.
Diffstat (limited to 'popovers__file-chooser-list.patch')
-rw-r--r--popovers__file-chooser-list.patch93
1 files changed, 93 insertions, 0 deletions
diff --git a/popovers__file-chooser-list.patch b/popovers__file-chooser-list.patch
new file mode 100644
index 000000000000..eb574116c706
--- /dev/null
+++ b/popovers__file-chooser-list.patch
@@ -0,0 +1,93 @@
+diff -U 5 -r -Z -B ./org/gtk/gtkfilechooserwidget.c ./mod/gtk/gtkfilechooserwidget.c
+--- ./org/gtk/gtkfilechooserwidget.c 2017-07-19 04:55:39.000000000 +0200
++++ ./mod/gtk/gtkfilechooserwidget.c 2017-07-30 15:26:07.513375549 +0200
+@@ -77,10 +77,11 @@
+ #include "gtkspinner.h"
+ #include "gtkseparator.h"
+ #include "gtkmodelbutton.h"
+ #include "gtkgesturelongpress.h"
+ #include "gtkdebug.h"
++#include "deprecated/gtkimagemenuitem.h"
+
+ #include <cairo-gobject.h>
+
+ #ifdef HAVE_UNISTD_H
+ #include <unistd.h>
+@@ -2222,10 +2223,14 @@
+ static GtkWidget *
+ append_separator (GtkWidget *box)
+ {
+ GtkWidget *separator;
+
++ separator = gtk_separator_menu_item_new();
++ gtk_widget_set_visible(GTK_WIDGET(separator), TRUE);
++ gtk_menu_shell_append(GTK_MENU_SHELL(box), separator);
++ return separator;
+ separator = g_object_new (GTK_TYPE_SEPARATOR,
+ "orientation", GTK_ORIENTATION_HORIZONTAL,
+ "visible", TRUE,
+ "margin-start", 12,
+ "margin-end", 12,
+@@ -2243,10 +2248,18 @@
+ const gchar *label,
+ const gchar *action)
+ {
+ GtkWidget *item;
+
++ if (g_str_match_string("toggle", action, TRUE))
++ item = gtk_check_menu_item_new_with_mnemonic(label);
++ else
++ item = gtk_image_menu_item_new_with_mnemonic(label);
++ g_object_set(G_OBJECT(item), "action-name", action, NULL);
++ gtk_widget_set_visible(GTK_WIDGET(item), TRUE);
++ gtk_menu_shell_append(GTK_MENU_SHELL(box), item);
++ return item;
+ item = g_object_new (GTK_TYPE_MODEL_BUTTON,
+ "visible", TRUE,
+ "action-name", action,
+ "text", label,
+ NULL);
+@@ -2267,10 +2280,13 @@
+ priv->browse_files_popover = gtk_popover_new (priv->browse_files_tree_view);
+ box = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0);
+ g_object_set (box, "margin", 10, NULL);
+ gtk_widget_show (box);
+ gtk_container_add (GTK_CONTAINER (priv->browse_files_popover), box);
++ priv->browse_files_popover = gtk_menu_new();
++ gtk_menu_attach_to_widget(GTK_MENU(priv->browse_files_popover), GTK_WIDGET(priv->browse_files_tree_view), NULL);
++ box = priv->browse_files_popover;
+
+ priv->visit_file_item = add_button (box, _("_Visit File"), "item.visit");
+ priv->open_folder_item = add_button (box, _("_Open With File Manager"), "item.open");
+ priv->copy_file_location_item = add_button (box, _("_Copy Location"), "item.copy-location");
+ priv->add_shortcut_item = add_button (box, _("_Add to Bookmarks"), "item.add-shortcut");
+@@ -2282,10 +2298,16 @@
+
+ priv->hidden_files_item = add_button (box, _("Show _Hidden Files"), "item.toggle-show-hidden");
+ priv->size_column_item = add_button (box, _("Show _Size Column"), "item.toggle-show-size");
+ priv->show_time_item = add_button (box, _("Show _Time"), "item.toggle-show-time");
+ priv->sort_directories_item = add_button (box, _("Sort _Folders before Files"), "item.toggle-sort-dirs-first");
++ g_object_set(priv->visit_file_item, "image", gtk_image_new_from_icon_name("gtk-jump-to",GTK_ICON_SIZE_MENU), NULL);
++ g_object_set(priv->open_folder_item, "image", gtk_image_new_from_icon_name("gtk-open",GTK_ICON_SIZE_MENU), NULL);
++ g_object_set(priv->copy_file_location_item, "image", gtk_image_new_from_icon_name("gtk-copy",GTK_ICON_SIZE_MENU), NULL);
++ g_object_set(priv->add_shortcut_item, "image", gtk_image_new_from_icon_name("gtk-add",GTK_ICON_SIZE_MENU), NULL);
++ g_object_set(priv->delete_file_item, "image", gtk_image_new_from_icon_name("gtk-delete",GTK_ICON_SIZE_MENU), NULL);
++ g_object_set(priv->trash_file_item, "image", gtk_image_new_from_icon_name("user-trash-full",GTK_ICON_SIZE_MENU), NULL);
+ }
+
+ /* Updates the popover for the file list, creating it if necessary */
+ static void
+ file_list_update_popover (GtkFileChooserWidget *impl)
+@@ -2338,10 +2360,12 @@
+ GList *list;
+ GtkTreePath *path;
+
+
+ file_list_update_popover (impl);
++ gtk_menu_popup_at_pointer(GTK_MENU(priv->browse_files_popover), NULL);
++ return;
+
+ selection = gtk_tree_view_get_selection (GTK_TREE_VIEW (priv->browse_files_tree_view));
+ list = gtk_tree_selection_get_selected_rows (selection, &model);
+ if (list)
+ {