From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from pigeon.gentoo.org ([208.92.234.80] helo=lists.gentoo.org) by finch.gentoo.org with esmtp (Exim 4.60) (envelope-from ) id 1R8Qgb-0006fs-9U for garchives@archives.gentoo.org; Tue, 27 Sep 2011 05:58:33 +0000 Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id BA2C921C0B8; Tue, 27 Sep 2011 05:58:03 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) by pigeon.gentoo.org (Postfix) with ESMTP id 580B221C0B8 for ; Tue, 27 Sep 2011 05:58:03 +0000 (UTC) Received: from pelican.gentoo.org (unknown [66.219.59.40]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 9ED791B4026 for ; Tue, 27 Sep 2011 05:58:02 +0000 (UTC) Received: from localhost.localdomain (localhost [127.0.0.1]) by pelican.gentoo.org (Postfix) with ESMTP id E9BC680037 for ; Tue, 27 Sep 2011 05:58:01 +0000 (UTC) From: "Alexandre Restovtsev" To: gentoo-commits@lists.gentoo.org Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Alexandre Restovtsev" Message-ID: Subject: [gentoo-commits] proj/gnome:gnome-next commit in: gnome-base/nautilus/, gnome-base/nautilus/files/ X-VCS-Repository: proj/gnome X-VCS-Files: gnome-base/nautilus/files/nautilus-3.0.2-segfault-in-gtk_icon_info_load_symbolic.patch gnome-base/nautilus/files/nautilus-3.1.90-XDG_CURRENT_DESKTOP.patch gnome-base/nautilus/files/nautilus-3.1.90-is_renaming.patch gnome-base/nautilus/files/nautilus-3.1.90-previewer-gerror-leak.patch gnome-base/nautilus/files/nautilus-3.1.90-revert-f76c50a0.patch gnome-base/nautilus/files/nautilus-3.1.90-window-keybindings.patch gnome-base/nautilus/files/nautilus-3.1.90-window-unref-NULL.patch gnome-base/nautilus/nautilus-3.1.90.ebuild gnome-base/nautilus/nautilus-3.2.0.ebuild gnome-base/nautilus/nautilus-9999.ebuild X-VCS-Directories: gnome-base/nautilus/ gnome-base/nautilus/files/ X-VCS-Committer: tetromino X-VCS-Committer-Name: Alexandre Restovtsev X-VCS-Revision: d35781f16fced09c5ba16ea77ffe88ad232691fb Date: Tue, 27 Sep 2011 05:58:01 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: quoted-printable X-Archives-Salt: X-Archives-Hash: 0630cd6e2a94d9546a9af8bb99f8e02d commit: d35781f16fced09c5ba16ea77ffe88ad232691fb Author: Alexandre Rostovtsev gmail com> AuthorDate: Tue Sep 27 03:52:45 2011 +0000 Commit: Alexandre Restovtsev gmail com> CommitDate: Tue Sep 27 03:53:30 2011 +0000 URL: http://git.overlays.gentoo.org/gitweb/?p=3Dproj/gnome.git;a=3D= commit;h=3Dd35781f1 gnome-base/nautilus: 3.1.90 =E2=86=92 3.2.0 Version bump, now with tracker support. Require glib-2.30.0 and gdbus-codegen-2.30.0 due to GDBus API changes between 2.29.92 and 2.30.0. The 3.1.90 patches were applied upstream, and the symbolic icon patch was fixed upstream in a different way (see gnome bug 651209). --- ...2-segfault-in-gtk_icon_info_load_symbolic.patch | 88 ----- .../nautilus-3.1.90-XDG_CURRENT_DESKTOP.patch | 62 ---- .../files/nautilus-3.1.90-is_renaming.patch | 341 --------------= ------ .../nautilus-3.1.90-previewer-gerror-leak.patch | 20 -- .../files/nautilus-3.1.90-revert-f76c50a0.patch | 151 --------- .../files/nautilus-3.1.90-window-keybindings.patch | 47 --- .../files/nautilus-3.1.90-window-unref-NULL.patch | 29 -- ...autilus-3.1.90.ebuild =3D> nautilus-3.2.0.ebuild} | 23 +- gnome-base/nautilus/nautilus-9999.ebuild | 12 +- 9 files changed, 16 insertions(+), 757 deletions(-) diff --git a/gnome-base/nautilus/files/nautilus-3.0.2-segfault-in-gtk_ico= n_info_load_symbolic.patch b/gnome-base/nautilus/files/nautilus-3.0.2-seg= fault-in-gtk_icon_info_load_symbolic.patch deleted file mode 100644 index 82781f7..0000000 --- a/gnome-base/nautilus/files/nautilus-3.0.2-segfault-in-gtk_icon_info_= load_symbolic.patch +++ /dev/null @@ -1,88 +0,0 @@ -From a37ecf869f4772b1ea3b578b687b5b83dd4bd067 Mon Sep 17 00:00:00 2001 -From: Alexandre Rostovtsev -Date: Fri, 27 May 2011 01:10:24 -0400 -Subject: [PATCH] Prevent segfault in gtk_icon_info_load_symbolic when ic= on is not found (gnome bug 651209) - -Users of Gentoo and Fedora have reported segfaults in nautilus-3.0.x -in gtk_icon_info_load_symbolic (see Gentoo bug 365779, Fedora bug -690357). One of them was helpful enough to post a backtrace with -debugging information: https://bugzilla.redhat.com/attachment.cgi?id=3D4= 89928 - -The backtrace shows that the crash occurs because we are passing a -NULL icon_info to gtk_icon_info_load_symbolic in lookup_and_color_symbol= ic_find -in nautilus-search-bar.c; indeed, icon_info will be NULL if -gtk_icon_theme_lookup_icon fails to find an icon. - -An identical problem exists in get_eject_icon in nautilus-places-sidebar= .c, -where gtk_icon_info_load_symbolic_for_context and -gtk_icon_theme_lookup_by_gicon are used. - -The solution is to check for the NULL icon_info, and return a -NULL GdkPixbuf. Note that returning a NULL from -lookup_and_color_symbolic_find and get_eject_icon is -safe: in both cases, the return value is only used in functions -that can safely deal with a NULL. ---- - src/nautilus-places-sidebar.c | 11 ++++++----- - src/nautilus-search-bar.c | 9 +++++---- - 2 files changed, 11 insertions(+), 9 deletions(-) - -diff --git a/src/nautilus-places-sidebar.c b/src/nautilus-places-sidebar= .c -index aa08f14..de53cd1 100644 ---- a/src/nautilus-places-sidebar.c -+++ b/src/nautilus-places-sidebar.c -@@ -214,7 +214,7 @@ static GdkPixbuf * - get_eject_icon (NautilusPlacesSidebar *sidebar, - gboolean highlighted) - { -- GdkPixbuf *eject; -+ GdkPixbuf *eject =3D NULL; - GtkIconInfo *icon_info; - GIcon *icon; - int icon_size; -@@ -227,10 +227,11 @@ get_eject_icon (NautilusPlacesSidebar *sidebar, - icon_info =3D gtk_icon_theme_lookup_by_gicon (icon_theme, icon, icon_s= ize, 0); -=20 - style =3D gtk_widget_get_style_context (GTK_WIDGET (sidebar)); -- eject =3D gtk_icon_info_load_symbolic_for_context (icon_info, -- style, -- NULL, -- NULL); -+ if (icon_info !=3D NULL) -+ eject =3D gtk_icon_info_load_symbolic_for_context (icon_info, -+ style, -+ NULL, -+ NULL); -=20 - if (highlighted) { - GdkPixbuf *high; -diff --git a/src/nautilus-search-bar.c b/src/nautilus-search-bar.c -index 6148807..17412d9 100644 ---- a/src/nautilus-search-bar.c -+++ b/src/nautilus-search-bar.c -@@ -160,7 +160,7 @@ lookup_and_color_symbolic_find (NautilusSearchBar *b= ar) - { - GtkIconInfo *icon_info; - GdkRGBA color; -- GdkPixbuf *icon; -+ GdkPixbuf *icon =3D NULL; - GtkStyleContext *context; -=20 - context =3D gtk_widget_get_style_context (GTK_WIDGET (bar)); -@@ -172,9 +172,10 @@ lookup_and_color_symbolic_find (NautilusSearchBar *= bar) - "edit-find-symbolic", - nautilus_get_icon_size_for_stock_size (GTK_ICON_SIZE_MENU), - GTK_ICON_LOOKUP_GENERIC_FALLBACK); -- icon =3D gtk_icon_info_load_symbolic (icon_info, &color, -- NULL, NULL, NULL, -- NULL, NULL); -+ if (icon_info !=3D NULL) -+ icon =3D gtk_icon_info_load_symbolic (icon_info, &color, -+ NULL, NULL, NULL, -+ NULL, NULL); -=20 - gtk_style_context_restore (context); -=20 ---=20 -1.7.5.rc3 - diff --git a/gnome-base/nautilus/files/nautilus-3.1.90-XDG_CURRENT_DESKTO= P.patch b/gnome-base/nautilus/files/nautilus-3.1.90-XDG_CURRENT_DESKTOP.p= atch deleted file mode 100644 index 3318b23..0000000 --- a/gnome-base/nautilus/files/nautilus-3.1.90-XDG_CURRENT_DESKTOP.patch +++ /dev/null @@ -1,62 +0,0 @@ -From 37e379a5a484b604bd25f0b4cb3269f6e4c942ba Mon Sep 17 00:00:00 2001 -From: Michael Terry -Date: Wed, 29 Jun 2011 15:56:31 +0000 -Subject: Look at XDG_CURRENT_DESKTOP to decide if a link is foreign - -https://bugzilla.gnome.org/show_bug.cgi?id=3D653660 ---- -diff --git a/libnautilus-private/nautilus-link.c b/libnautilus-private/n= autilus-link.c -index 2c56c0f..339a1b4 100644 ---- a/libnautilus-private/nautilus-link.c -+++ b/libnautilus-private/nautilus-link.c -@@ -554,6 +554,21 @@ string_array_contains (char **array, - return FALSE; - } -=20 -+static const gchar * -+get_session (void) -+{ -+ const gchar * session; -+ -+ session =3D g_getenv ("XDG_CURRENT_DESKTOP"); -+ -+ if (session =3D=3D NULL || session[0] =3D=3D 0) { -+ /* historic behavior */ -+ session =3D "GNOME"; -+ } -+ -+ return session; -+} -+ - void - nautilus_link_get_link_info_given_file_contents (const char *file_cont= ents, - int link_file_size, -@@ -568,7 +583,9 @@ nautilus_link_get_link_info_given_file_contents (con= st char *file_contents, - char *type; - char **only_show_in; - char **not_show_in; -+ const gchar *session; -=20 -+ session =3D get_session (); - key_file =3D g_key_file_new (); - if (!g_key_file_load_from_data (key_file, - file_contents, -@@ -594,14 +611,14 @@ nautilus_link_get_link_info_given_file_contents (c= onst char *file_contents, - *is_foreign =3D FALSE; - only_show_in =3D g_key_file_get_string_list (key_file, MAIN_GROUP, - "OnlyShowIn", NULL, NULL); -- if (only_show_in && !string_array_contains (only_show_in, "GNOME")) { -+ if (session && only_show_in && !string_array_contains (only_show_in, s= ession)) { - *is_foreign =3D TRUE; - } - g_strfreev (only_show_in); -=20 - not_show_in =3D g_key_file_get_string_list (key_file, MAIN_GROUP, - "NotShowIn", NULL, NULL); -- if (not_show_in && string_array_contains (not_show_in, "GNOME")) { -+ if (session && not_show_in && string_array_contains (not_show_in, sess= ion)) { - *is_foreign =3D TRUE; - } - g_strfreev (not_show_in); --- -cgit v0.9.0.2 diff --git a/gnome-base/nautilus/files/nautilus-3.1.90-is_renaming.patch = b/gnome-base/nautilus/files/nautilus-3.1.90-is_renaming.patch deleted file mode 100644 index b175a7a..0000000 --- a/gnome-base/nautilus/files/nautilus-3.1.90-is_renaming.patch +++ /dev/null @@ -1,341 +0,0 @@ -From a67212a39bbcd342f0a503d693ebd80fab48ac9c Mon Sep 17 00:00:00 2001 -From: Cosimo Cecchi -Date: Thu, 08 Sep 2011 16:06:39 +0000 -Subject: view: add an is_renaming property to NautilusView - -And keep it in sync with the renaming widget. This will be useful to -forward events to the view if it's renaming. ---- -diff --git a/libnautilus-private/nautilus-icon-container.c b/libnautilus= -private/nautilus-icon-container.c -index 3aa7d32..a46f75d 100644 ---- a/libnautilus-private/nautilus-icon-container.c -+++ b/libnautilus-private/nautilus-icon-container.c -@@ -239,10 +239,10 @@ enum { - ICON_POSITION_CHANGED, - GET_STORED_LAYOUT_TIMESTAMP, - STORE_LAYOUT_TIMESTAMP, -- ICON_TEXT_CHANGED, -+ ICON_RENAME_STARTED, -+ ICON_RENAME_ENDED, - ICON_STRETCH_STARTED, - ICON_STRETCH_ENDED, -- RENAMING_ICON, - LAYOUT_CHANGED, - MOVE_COPY_ITEMS, - HANDLE_NETSCAPE_URL, -@@ -5778,17 +5778,6 @@ nautilus_icon_container_class_init (NautilusIconC= ontainerClass *class) - G_TYPE_NONE, 2, - G_TYPE_POINTER, - G_TYPE_POINTER); -- signals[ICON_TEXT_CHANGED] -- =3D g_signal_new ("icon_text_changed", -- G_TYPE_FROM_CLASS (class), -- G_SIGNAL_RUN_LAST, -- G_STRUCT_OFFSET (NautilusIconContainerClass, -- icon_text_changed), -- NULL, NULL, -- g_cclosure_marshal_generic, -- G_TYPE_NONE, 2, -- G_TYPE_POINTER, -- G_TYPE_STRING); - signals[ICON_STRETCH_STARTED] - =3D g_signal_new ("icon_stretch_started", - G_TYPE_FROM_CLASS (class), -@@ -5809,16 +5798,27 @@ nautilus_icon_container_class_init (NautilusIcon= ContainerClass *class) - g_cclosure_marshal_VOID__POINTER, - G_TYPE_NONE, 1, - G_TYPE_POINTER); -- signals[RENAMING_ICON] -- =3D g_signal_new ("renaming_icon", -+ signals[ICON_RENAME_STARTED] -+ =3D g_signal_new ("icon_rename_started", - G_TYPE_FROM_CLASS (class), - G_SIGNAL_RUN_LAST, - G_STRUCT_OFFSET (NautilusIconContainerClass, -- renaming_icon), -+ icon_rename_started), - NULL, NULL, - g_cclosure_marshal_VOID__POINTER, - G_TYPE_NONE, 1, - G_TYPE_POINTER); -+ signals[ICON_RENAME_ENDED] -+ =3D g_signal_new ("icon_rename_ended", -+ G_TYPE_FROM_CLASS (class), -+ G_SIGNAL_RUN_LAST, -+ G_STRUCT_OFFSET (NautilusIconContainerClass, -+ icon_rename_ended), -+ NULL, NULL, -+ g_cclosure_marshal_generic, -+ G_TYPE_NONE, 2, -+ G_TYPE_POINTER, -+ G_TYPE_STRING); - signals[GET_ICON_URI] - =3D g_signal_new ("get_icon_uri", - G_TYPE_FROM_CLASS (class), -@@ -8325,7 +8325,7 @@ nautilus_icon_container_start_renaming_selected_it= em (NautilusIconContainer *con - end_offset); - =09 - g_signal_emit (container, -- signals[RENAMING_ICON], 0, -+ signals[ICON_RENAME_STARTED], 0, - GTK_EDITABLE (details->rename_widget)); - =09 - nautilus_icon_container_update_icon (container, icon); -@@ -8339,7 +8339,7 @@ static void - end_renaming_mode (NautilusIconContainer *container, gboolean commit) - { - NautilusIcon *icon; -- const char *changed_text; -+ const char *changed_text =3D NULL; -=20 - set_pending_icon_to_rename (container, NULL); -=20 -@@ -8363,18 +8363,18 @@ end_renaming_mode (NautilusIconContainer *contai= ner, gboolean commit) - if (commit) { - /* Verify that text has been modified before signalling change. */ =09 - changed_text =3D eel_editable_label_get_text (EEL_EDITABLE_LABEL (con= tainer->details->rename_widget)); -- if (strcmp (container->details->original_text, changed_text) !=3D 0) = { =09 -- g_signal_emit (container, -- signals[ICON_TEXT_CHANGED], 0, -- icon->data, -- changed_text); -+ if (strcmp (container->details->original_text, changed_text) =3D=3D 0= ) { -+ changed_text =3D NULL; - } - } -=20 -- gtk_widget_hide (container->details->rename_widget); -+ g_signal_emit (container, -+ signals[ICON_RENAME_ENDED], 0, -+ icon->data, -+ changed_text); -=20 -+ gtk_widget_hide (container->details->rename_widget); - g_free (container->details->original_text); -- - } -=20 - gboolean -diff --git a/libnautilus-private/nautilus-icon-container.h b/libnautilus= -private/nautilus-icon-container.h -index cdae0ca..ad6c926 100644 ---- a/libnautilus-private/nautilus-icon-container.h -+++ b/libnautilus-private/nautilus-icon-container.h -@@ -217,11 +217,11 @@ typedef struct { - void (* icon_position_changed) (NautilusIconContainer *cont= ainer, - NautilusIconData *data, - const NautilusIconPosition *position); -- void (* icon_text_changed) (NautilusIconContainer *cont= ainer, -+ void (* icon_rename_started) (NautilusIconContainer *cont= ainer, -+ GtkWidget *renaming_widget); -+ void (* icon_rename_ended) (NautilusIconContainer *cont= ainer, - NautilusIconData *data, - const char *text); -- void (* renaming_icon) (NautilusIconContainer *cont= ainer, -- GtkWidget *renaming_widget); - void (* icon_stretch_started) (NautilusIconContainer *contain= er, - NautilusIconData *data); - void (* icon_stretch_ended) (NautilusIconContainer *contain= er, -diff --git a/src/nautilus-icon-view.c b/src/nautilus-icon-view.c -index 0a42e14..aa00a90 100644 ---- a/src/nautilus-icon-view.c -+++ b/src/nautilus-icon-view.c -@@ -1772,20 +1772,6 @@ band_select_ended_callback (NautilusIconContainer= *container, - nautilus_view_stop_batching_selection_changes (NAUTILUS_VIEW (icon_vie= w)); - } -=20 --static void --renaming_icon_callback (NautilusIconContainer *container, -- GtkWidget *widget, -- gpointer callback_data) --{ -- NautilusView *directory_view; -- -- directory_view =3D NAUTILUS_VIEW (callback_data); -- nautilus_clipboard_set_up_editable -- (GTK_EDITABLE (widget), -- nautilus_view_get_ui_manager (directory_view), -- FALSE); --} -- - int - nautilus_icon_view_compare_files (NautilusIconView *icon_view, - NautilusFile *a, -@@ -1990,23 +1976,39 @@ icon_position_changed_callback (NautilusIconCont= ainer *container, -=20 - /* Attempt to change the filename to the new text. Notify user if oper= ation fails. */ - static void --nautilus_icon_view_icon_text_changed_callback (NautilusIconContainer *c= ontainer, -- NautilusFile *file, =20 -- char *new_name, -- NautilusIconView *icon_view) -+icon_rename_ended_cb (NautilusIconContainer *container, -+ NautilusFile *file, =20 -+ const char *new_name, -+ NautilusIconView *icon_view) - { - g_assert (NAUTILUS_IS_FILE (file)); -- g_assert (new_name !=3D NULL); -+ -+ nautilus_view_set_is_renaming (NAUTILUS_VIEW (icon_view), FALSE); -=20 - /* Don't allow a rename with an empty string. Revert to original=20 - * without notifying the user. - */ -- if (new_name[0] =3D=3D '\0') { -+ if ((new_name =3D=3D NULL) || (new_name[0] =3D=3D '\0')) { - return; - } -+ - nautilus_rename_file (file, new_name, NULL, NULL); - } -=20 -+static void -+icon_rename_started_cb (NautilusIconContainer *container, -+ GtkWidget *widget, -+ gpointer callback_data) -+{ -+ NautilusView *directory_view; -+ -+ directory_view =3D NAUTILUS_VIEW (callback_data); -+ nautilus_clipboard_set_up_editable -+ (GTK_EDITABLE (widget), -+ nautilus_view_get_ui_manager (directory_view), -+ FALSE); -+} -+ - static char * - get_icon_uri_callback (NautilusIconContainer *container, - NautilusFile *file, -@@ -2313,8 +2315,6 @@ create_icon_container (NautilusIconView *icon_view= ) - G_CALLBACK (icon_container_context_click_background_callback), ico= n_view, 0); - g_signal_connect_object (icon_container, "icon_position_changed", - G_CALLBACK (icon_position_changed_callback), icon_view, 0); -- g_signal_connect_object (icon_container, "icon_text_changed", -- G_CALLBACK (nautilus_icon_view_icon_text_changed_callback), icon_v= iew, 0); - g_signal_connect_object (icon_container, "selection_changed", - G_CALLBACK (selection_changed_callback), icon_view, 0); - /* FIXME: many of these should move into fm-icon-container as virtual = methods */ -@@ -2332,8 +2332,10 @@ create_icon_container (NautilusIconView *icon_vie= w) - G_CALLBACK (get_stored_icon_position_callback), icon_view, 0); - g_signal_connect_object (icon_container, "layout_changed", - G_CALLBACK (layout_changed_callback), icon_view, 0); -- g_signal_connect_object (icon_container, "renaming_icon", -- G_CALLBACK (renaming_icon_callback), icon_view, 0); -+ g_signal_connect_object (icon_container, "icon_rename_started", -+ G_CALLBACK (icon_rename_started_cb), icon_view, 0); -+ g_signal_connect_object (icon_container, "icon_rename_ended", -+ G_CALLBACK (icon_rename_ended_cb), icon_view, 0); - g_signal_connect_object (icon_container, "icon_stretch_started", - G_CALLBACK (nautilus_view_update_menus), icon_view, - G_CONNECT_SWAPPED); -diff --git a/src/nautilus-list-view.c b/src/nautilus-list-view.c -index 2858af5..cf30a93 100644 ---- a/src/nautilus-list-view.c -+++ b/src/nautilus-list-view.c -@@ -1205,8 +1205,10 @@ editable_focus_out_cb (GtkWidget *widget, - { - NautilusListView *view =3D user_data; -=20 -- nautilus_view_unfreeze_updates (NAUTILUS_VIEW (view)); - view->details->editable_widget =3D NULL; -+ -+ nautilus_view_set_is_renaming (NAUTILUS_VIEW (view), FALSE); -+ nautilus_view_unfreeze_updates (NAUTILUS_VIEW (view)); - } -=20 - static void -@@ -1236,10 +1238,11 @@ cell_renderer_editing_started_cb (GtkCellRendere= r *renderer, -=20 - static void - cell_renderer_editing_canceled (GtkCellRendererText *cell, -- NautilusListView *view) -+ NautilusListView *view) - { - view->details->editable_widget =3D NULL; -=20 -+ nautilus_view_set_is_renaming (NAUTILUS_VIEW (view), FALSE); - nautilus_view_unfreeze_updates (NAUTILUS_VIEW (view)); - } -=20 -@@ -1247,13 +1250,14 @@ static void - cell_renderer_edited (GtkCellRendererText *cell, - const char *path_str, - const char *new_text, -- NautilusListView *view) -+ NautilusListView *view) - { - GtkTreePath *path; - NautilusFile *file; - GtkTreeIter iter; -=20 - view->details->editable_widget =3D NULL; -+ nautilus_view_set_is_renaming (NAUTILUS_VIEW (view), FALSE); -=20 - /* Don't allow a rename with an empty string. Revert to original=20 - * without notifying the user. -@@ -2912,6 +2916,9 @@ nautilus_list_view_start_renaming_file (NautilusVi= ew *view, - return; - } -=20 -+ /* call parent class to make sure the right icon is selected */ -+ NAUTILUS_VIEW_CLASS (nautilus_list_view_parent_class)->start_renaming_= file (view, file, select_all); -+ - /* Freeze updates to the view to prevent losing rename focus when the = tree view updates */ - nautilus_view_freeze_updates (NAUTILUS_VIEW (view)); -=20 -diff --git a/src/nautilus-view.c b/src/nautilus-view.c -index 69379b0..399e8f6 100644 ---- a/src/nautilus-view.c -+++ b/src/nautilus-view.c -@@ -231,6 +231,8 @@ struct NautilusViewDetails - guint updates_queued; - gboolean needs_reload; -=20 -+ gboolean is_renaming; -+ - gboolean sort_directories_first; -=20 - gboolean show_foreign_files; -@@ -4090,11 +4092,26 @@ can_rename_file (NautilusView *view, NautilusFil= e *file) - return nautilus_file_can_rename (file); - } -=20 -+gboolean -+nautilus_view_get_is_renaming (NautilusView *view) -+{ -+ return view->details->is_renaming; -+} -+ -+void -+nautilus_view_set_is_renaming (NautilusView *view, -+ gboolean is_renaming) -+{ -+ view->details->is_renaming =3D is_renaming; -+} -+ - static void - start_renaming_file (NautilusView *view, - NautilusFile *file, - gboolean select_all) - { -+ view->details->is_renaming =3D TRUE; -+ - if (file !=3D NULL) { - nautilus_view_select_file (view, file); - } -diff --git a/src/nautilus-view.h b/src/nautilus-view.h -index 8d2e124..54f4650 100644 ---- a/src/nautilus-view.h -+++ b/src/nautilus-view.h -@@ -353,6 +353,9 @@ gboolean nautilus_view_handle_scroll_even= t (NautilusView -=20 - void nautilus_view_freeze_updates (Nau= tilusView *view); - void nautilus_view_unfreeze_updates (Nau= tilusView *view); -+gboolean nautilus_view_get_is_renaming (Nau= tilusView *view); -+void nautilus_view_set_is_renaming (Nau= tilusView *view, -+ gboolean renaming); - void nautilus_view_add_subdirectory (Naut= ilusView *view, - NautilusDirectory*directory); - void nautilus_view_remove_subdirectory (Naut= ilusView *view, --- -cgit v0.9.0.2 diff --git a/gnome-base/nautilus/files/nautilus-3.1.90-previewer-gerror-l= eak.patch b/gnome-base/nautilus/files/nautilus-3.1.90-previewer-gerror-le= ak.patch deleted file mode 100644 index 8294c88..0000000 --- a/gnome-base/nautilus/files/nautilus-3.1.90-previewer-gerror-leak.pat= ch +++ /dev/null @@ -1,20 +0,0 @@ -From af0022fc388a587726f1186bbe131c666e4d50a3 Mon Sep 17 00:00:00 2001 -From: Tomas Bzatek -Date: Fri, 02 Sep 2011 16:21:58 +0000 -Subject: previewer: Fix leaked GError - ---- -diff --git a/src/nautilus-previewer.c b/src/nautilus-previewer.c -index 742e083..3f53fce 100644 ---- a/src/nautilus-previewer.c -+++ b/src/nautilus-previewer.c -@@ -84,6 +84,7 @@ nautilus_previewer_init (NautilusPreviewer *self) -=20 - if (error !=3D NULL) { - g_printerr ("Unable to initialize DBus connection: %s", error->mess= age); -+ g_error_free (error); - return; - } - } --- -cgit v0.9.0.2 diff --git a/gnome-base/nautilus/files/nautilus-3.1.90-revert-f76c50a0.pa= tch b/gnome-base/nautilus/files/nautilus-3.1.90-revert-f76c50a0.patch deleted file mode 100644 index a7d55c3..0000000 --- a/gnome-base/nautilus/files/nautilus-3.1.90-revert-f76c50a0.patch +++ /dev/null @@ -1,151 +0,0 @@ -From 88b535828ddacd7ec2313d52a21f164aee535fa3 Mon Sep 17 00:00:00 2001 -From: Cosimo Cecchi -Date: Thu, 08 Sep 2011 14:29:29 +0000 -Subject: Revert "window: reverse the order of key-press event processing= " - -This reverts commit f76c50a0e46aa7786820f76b3f71b57b44b8d7fb. ---- -diff --git a/libnautilus-private/nautilus-icon-container.c b/libnautilus= -private/nautilus-icon-container.c -index bff309a..3aa7d32 100644 ---- a/libnautilus-private/nautilus-icon-container.c -+++ b/libnautilus-private/nautilus-icon-container.c -@@ -5492,6 +5492,12 @@ key_press_event (GtkWidget *widget, - "context_click_background"); - } - break; -+ case GDK_KEY_v: -+ /* Eat Control + v to not enable type ahead */ -+ if ((event->state & GDK_CONTROL_MASK) !=3D 0) { -+ handled =3D TRUE; -+ } -+ break; - default: - break; - } -@@ -5507,8 +5513,7 @@ key_press_event (GtkWidget *widget, - if (!handled && - event->keyval !=3D GDK_KEY_slash /* don't steal slash key event, u= sed for "go to" */ && - event->keyval !=3D GDK_KEY_BackSpace && -- event->keyval !=3D GDK_KEY_Delete && -- !(event->keyval =3D=3D GDK_KEY_v && event->state =3D=3D GDK_CONTRO= L_MASK)) { -+ event->keyval !=3D GDK_KEY_Delete) { - GdkEvent *new_event; - GdkWindow *window; - char *old_text; -diff --git a/src/nautilus-list-view.c b/src/nautilus-list-view.c -index 1cc69e2..2858af5 100644 ---- a/src/nautilus-list-view.c -+++ b/src/nautilus-list-view.c -@@ -1004,20 +1004,6 @@ subdirectory_unloaded_callback (NautilusListModel= *model, - } -=20 - static gboolean --key_release_callback (GtkWidget *widget, GdkEventKey *event, gpointer c= allback_data) --{ -- switch (event->keyval) { -- case GDK_KEY_v: -- /* Re-enable tree search entry; disabled in key_press_callback */ -- if ((event->state & GDK_CONTROL_MASK) !=3D 0) { -- gtk_tree_view_set_enable_search (GTK_TREE_VIEW (widget), TRUE); -- } -- } -- -- return FALSE; --} -- --static gboolean - key_press_callback (GtkWidget *widget, GdkEventKey *event, gpointer cal= lback_data) - { - NautilusView *view; -@@ -1088,21 +1074,9 @@ key_press_callback (GtkWidget *widget, GdkEventKe= y *event, gpointer callback_dat - handled =3D TRUE; - break; - case GDK_KEY_v: -- /* HACK: see https://bugzilla.gnome.org/show_bug.cgi?id=3D314431 -- * -- * We force event propagating to the focus window before the keybindi= ngs -- * in nautilus-window.c:nautilus_window_key_press_event(), -- * but that will trigger the type-ahead window when Ctrl+V is pressed= . -- * We used to special-case Ctrl+V here, and handle the event, -- * to block the default GtkTreeView handler to run and show the windo= w, -- * but that's ineffective as well, because it would break Copy/Paste,= as keybindings -- * are now processed later, and they won't run if we return TRUE here= . -- * So, we resort to disabling search while the handler runs, and re-e= nable it later -- * in the key_release callback, while not handling the event, so the = accelerator -- * can still run. -- */ -+ /* Eat Control + v to not enable type ahead */ - if ((event->state & GDK_CONTROL_MASK) !=3D 0) { -- gtk_tree_view_set_enable_search (tree_view, FALSE); -+ handled =3D TRUE; - } - break; -=20 -@@ -1648,8 +1622,6 @@ create_and_set_up_tree_view (NautilusListView *vie= w) - G_CALLBACK (button_release_callback), view, 0); - g_signal_connect_object (view->details->tree_view, "key_press_event", - G_CALLBACK (key_press_callback), view, 0); -- g_signal_connect_object (view->details->tree_view, "key_release_event"= , -- G_CALLBACK (key_release_callback), view, 0); - g_signal_connect_object (view->details->tree_view, "popup_menu", - G_CALLBACK (popup_menu_callback), view= , 0); - g_signal_connect_object (view->details->tree_view, "row_expanded", -diff --git a/src/nautilus-window.c b/src/nautilus-window.c -index 09a3f85..810f69f 100644 ---- a/src/nautilus-window.c -+++ b/src/nautilus-window.c -@@ -1091,27 +1091,10 @@ static gboolean - nautilus_window_key_press_event (GtkWidget *widget, - GdkEventKey *event) - { -- static gpointer grand_parent_class =3D NULL; - NautilusWindow *window; - int i; -- gboolean handled; -=20 - window =3D NAUTILUS_WINDOW (widget); -- handled =3D FALSE; -- -- if (!grand_parent_class) { -- grand_parent_class =3D g_type_class_peek_parent (nautilus_window_pare= nt_class); -- } -- -- /* See https://bugzilla.gnome.org/show_bug.cgi?id=3D314431 -- * -- * We need to handle the keybindings for the currently focused widget -- * before the common accelerator bindings. -- */ -- handled =3D gtk_window_propagate_key_event (GTK_WINDOW (window), event= ); -- if (handled) { -- return TRUE; -- } -=20 - for (i =3D 0; i < G_N_ELEMENTS (extra_window_keybindings); i++) { - if (extra_window_keybindings[i].keyval =3D=3D event->keyval) { -@@ -1129,22 +1112,14 @@ nautilus_window_key_press_event (GtkWidget *widg= et, - g_assert (action !=3D NULL); - if (gtk_action_is_sensitive (action)) { - gtk_action_activate (action); -- handled =3D TRUE; -+ return TRUE; - } -=20 - break; - } - } -=20 -- if (!handled) { -- handled =3D gtk_window_activate_key (GTK_WINDOW (window), event); -- } -- -- if (!handled) { -- handled =3D GTK_WIDGET_CLASS (grand_parent_class)->key_press_event (w= idget, event); -- } -- -- return handled; -+ return GTK_WIDGET_CLASS (nautilus_window_parent_class)->key_press_even= t (widget, event); - } -=20 - /* --- -cgit v0.9.0.2 diff --git a/gnome-base/nautilus/files/nautilus-3.1.90-window-keybindings= .patch b/gnome-base/nautilus/files/nautilus-3.1.90-window-keybindings.pat= ch deleted file mode 100644 index cb1971a..0000000 --- a/gnome-base/nautilus/files/nautilus-3.1.90-window-keybindings.patch +++ /dev/null @@ -1,47 +0,0 @@ -From 92e40dd094a812db6bcc3e60c0830d20b3f07b15 Mon Sep 17 00:00:00 2001 -From: Cosimo Cecchi -Date: Thu, 08 Sep 2011 16:07:37 +0000 -Subject: window: steal all accelerators/mnemonics keybindings when renam= ing - -If we're renaming, we really want to ignore all the accelerators -and mnemonics coming from NautilusWindow and NautilusView, as they might -conflict with the regular bindings expected in an editable widget, such -as an editable GtkCellRendererText or EelEditableLabel. -This should fix all the recent keybinding-related regressions, such as - -https://bugzilla.gnome.org/show_bug.cgi?id=3D658105 -https://bugzilla.gnome.org/show_bug.cgi?id=3D651574 ---- -diff --git a/src/nautilus-window.c b/src/nautilus-window.c -index 810f69f..1d86e26 100644 ---- a/src/nautilus-window.c -+++ b/src/nautilus-window.c -@@ -1092,10 +1092,26 @@ nautilus_window_key_press_event (GtkWidget *widg= et, - GdkEventKey *event) - { - NautilusWindow *window; -+ NautilusWindowSlot *active_slot; -+ NautilusView *view; - int i; -=20 - window =3D NAUTILUS_WINDOW (widget); -=20 -+ active_slot =3D nautilus_window_get_active_slot (window); -+ view =3D active_slot->content_view; -+ -+ if (view !=3D NULL && nautilus_view_get_is_renaming (view)) { -+ /* if we're renaming, just forward the event to the -+ * focused widget and return. We don't want to process the window -+ * accelerator bindings, as they might conflict with the=20 -+ * editable widget bindings. -+ */ -+ if (gtk_window_propagate_key_event (GTK_WINDOW (window), event)) { -+ return TRUE; -+ } -+ } -+ - for (i =3D 0; i < G_N_ELEMENTS (extra_window_keybindings); i++) { - if (extra_window_keybindings[i].keyval =3D=3D event->keyval) { - const GList *action_groups; --- -cgit v0.9.0.2 diff --git a/gnome-base/nautilus/files/nautilus-3.1.90-window-unref-NULL.= patch b/gnome-base/nautilus/files/nautilus-3.1.90-window-unref-NULL.patch deleted file mode 100644 index 714e9c7..0000000 --- a/gnome-base/nautilus/files/nautilus-3.1.90-window-unref-NULL.patch +++ /dev/null @@ -1,29 +0,0 @@ -From ee73c255d75165607c7f04defd5e8edfa3524914 Mon Sep 17 00:00:00 2001 -From: Cosimo Cecchi -Date: Thu, 08 Sep 2011 18:53:45 +0000 -Subject: window: make sure not to unref NULL GFiles - -The GFile pointed by parent here can be NULL after the cycle, so fold -the unref in the !=3D NULL block. ---- -diff --git a/src/nautilus-window-manage-views.c b/src/nautilus-window-ma= nage-views.c -index 247f66a..66d47cf 100644 ---- a/src/nautilus-window-manage-views.c -+++ b/src/nautilus-window-manage-views.c -@@ -712,11 +712,13 @@ begin_location_change (NautilusWindowSlot *slot, - from_folder =3D parent; - parent =3D g_file_get_parent (from_folder); - } -+ - if (parent !=3D NULL) { - new_selection =3D g_list_prepend (NULL, nautilus_file_get (from_fold= er)); -+ g_object_unref (parent); - } -+ - g_object_unref (from_folder); -- g_object_unref (parent); - } -=20 - end_location_change (slot); --- -cgit v0.9.0.2 diff --git a/gnome-base/nautilus/nautilus-3.1.90.ebuild b/gnome-base/naut= ilus/nautilus-3.2.0.ebuild similarity index 79% rename from gnome-base/nautilus/nautilus-3.1.90.ebuild rename to gnome-base/nautilus/nautilus-3.2.0.ebuild index d3e1fa7..1f0bba2 100644 --- a/gnome-base/nautilus/nautilus-3.1.90.ebuild +++ b/gnome-base/nautilus/nautilus-3.2.0.ebuild @@ -6,7 +6,7 @@ EAPI=3D"4" GCONF_DEBUG=3D"no" GNOME2_LA_PUNT=3D"yes" =20 -inherit eutils gnome2 virtualx +inherit gnome2 virtualx if [[ ${PV} =3D 9999 ]]; then inherit gnome2-live fi @@ -21,9 +21,11 @@ if [[ ${PV} =3D 9999 ]]; then else KEYWORDS=3D"~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-f= bsd ~x86-interix ~amd64-linux ~x86-linux" fi -IUSE=3D"doc exif gnome +introspection packagekit +previewer sendto xmp" +IUSE=3D"doc exif gnome +introspection packagekit +previewer sendto track= er xmp" =20 -COMMON_DEPEND=3D">=3Ddev-libs/glib-2.29.13:2 +# Require {glib,gdbus-codegen}-2.30.0 due to GDBus API changes between 2= .29.92 +# and 2.30.0 +COMMON_DEPEND=3D">=3Ddev-libs/glib-2.30.0:2 >=3Dx11-libs/pango-1.28.3 >=3Dx11-libs/gtk+-3.1.6:3[introspection?] >=3Ddev-libs/libxml2-2.7.8:2 @@ -38,10 +40,11 @@ COMMON_DEPEND=3D">=3Ddev-libs/glib-2.29.13:2 =20 exif? ( >=3Dmedia-libs/libexif-0.6.20 ) introspection? ( >=3Ddev-libs/gobject-introspection-0.6.4 ) + tracker? ( >=3Dapp-misc/tracker-0.12 ) xmp? ( >=3Dmedia-libs/exempi-2.1.0 )" DEPEND=3D"${COMMON_DEPEND} >=3Ddev-lang/perl-5 - dev-util/gdbus-codegen + >=3Ddev-util/gdbus-codegen-2.30.0 >=3Ddev-util/pkgconfig-0.9 >=3Ddev-util/intltool-0.40.1 sys-devel/gettext @@ -67,22 +70,12 @@ pkg_setup() { $(use_enable introspection) $(use_enable packagekit) $(use_enable sendto nst-extension) + $(use_enable tracker) $(use_enable xmp)" DOCS=3D"AUTHORS ChangeLog* HACKING MAINTAINERS NEWS README THANKS TODO" } =20 src_prepare() { - # Gentoo bug #365779 + https://bugzilla.gnome.org/show_bug.cgi?id=3D651= 209 - epatch "${FILESDIR}/${PN}-3.0.2-segfault-in-gtk_icon_info_load_symbolic= .patch" - - # Useful patches from upstream, will be in next release - epatch "${FILESDIR}/${P}-previewer-gerror-leak.patch" - epatch "${FILESDIR}/${P}-XDG_CURRENT_DESKTOP.patch" - epatch "${FILESDIR}/${P}-revert-f76c50a0.patch" - epatch "${FILESDIR}/${P}-is_renaming.patch" - epatch "${FILESDIR}/${P}-window-keybindings.patch" - epatch "${FILESDIR}/${P}-window-unref-NULL.patch" - gnome2_src_prepare =20 # Remove crazy CFLAGS diff --git a/gnome-base/nautilus/nautilus-9999.ebuild b/gnome-base/nautil= us/nautilus-9999.ebuild index 2e6f8b1..1f0bba2 100644 --- a/gnome-base/nautilus/nautilus-9999.ebuild +++ b/gnome-base/nautilus/nautilus-9999.ebuild @@ -6,7 +6,7 @@ EAPI=3D"4" GCONF_DEBUG=3D"no" GNOME2_LA_PUNT=3D"yes" =20 -inherit eutils gnome2 virtualx +inherit gnome2 virtualx if [[ ${PV} =3D 9999 ]]; then inherit gnome2-live fi @@ -21,9 +21,11 @@ if [[ ${PV} =3D 9999 ]]; then else KEYWORDS=3D"~alpha ~amd64 ~arm ~ia64 ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-f= bsd ~x86-interix ~amd64-linux ~x86-linux" fi -IUSE=3D"doc exif gnome +introspection packagekit +previewer sendto xmp" +IUSE=3D"doc exif gnome +introspection packagekit +previewer sendto track= er xmp" =20 -COMMON_DEPEND=3D">=3Ddev-libs/glib-2.29.13:2 +# Require {glib,gdbus-codegen}-2.30.0 due to GDBus API changes between 2= .29.92 +# and 2.30.0 +COMMON_DEPEND=3D">=3Ddev-libs/glib-2.30.0:2 >=3Dx11-libs/pango-1.28.3 >=3Dx11-libs/gtk+-3.1.6:3[introspection?] >=3Ddev-libs/libxml2-2.7.8:2 @@ -38,10 +40,11 @@ COMMON_DEPEND=3D">=3Ddev-libs/glib-2.29.13:2 =20 exif? ( >=3Dmedia-libs/libexif-0.6.20 ) introspection? ( >=3Ddev-libs/gobject-introspection-0.6.4 ) + tracker? ( >=3Dapp-misc/tracker-0.12 ) xmp? ( >=3Dmedia-libs/exempi-2.1.0 )" DEPEND=3D"${COMMON_DEPEND} >=3Ddev-lang/perl-5 - dev-util/gdbus-codegen + >=3Ddev-util/gdbus-codegen-2.30.0 >=3Ddev-util/pkgconfig-0.9 >=3Ddev-util/intltool-0.40.1 sys-devel/gettext @@ -67,6 +70,7 @@ pkg_setup() { $(use_enable introspection) $(use_enable packagekit) $(use_enable sendto nst-extension) + $(use_enable tracker) $(use_enable xmp)" DOCS=3D"AUTHORS ChangeLog* HACKING MAINTAINERS NEWS README THANKS TODO" }