Update to 44.0 (#2159040)

This commit is contained in:
David King 2023-03-17 11:08:30 +00:00
parent d4d9bda4a1
commit d6b7734710
4 changed files with 7 additions and 96 deletions

1
.gitignore vendored
View File

@ -171,3 +171,4 @@ nautilus-2.31.6.tar.bz2
/nautilus-44.alpha.tar.xz /nautilus-44.alpha.tar.xz
/nautilus-44.beta.tar.xz /nautilus-44.beta.tar.xz
/nautilus-44.rc.tar.xz /nautilus-44.rc.tar.xz
/nautilus-44.0.tar.xz

View File

@ -1,88 +0,0 @@
From 4dd135e751374a5e2b2d88ae4c60db4084999837 Mon Sep 17 00:00:00 2001
From: Ondrej Holy <oholy@redhat.com>
Date: Tue, 14 Mar 2023 13:21:46 +0100
Subject: [PATCH] Revert "list-base: Remove rubberband hack"
This reverts commit c1c7ccb0e23772d8cfb509eb133d7e522706c697 as it
turned out that the workaround is still needed. I've only updated the
obsolete comment a bit. The issue was initially fixed by the
https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/4831 merge request,
but it has been broken later.
Related: https://gitlab.gnome.org/GNOME/gtk/-/issues/5670
Fixes: https://gitlab.gnome.org/GNOME/nautilus/-/issues/2844
---
src/nautilus-list-base.c | 29 +++++++++++++++++++++++++++++
1 file changed, 29 insertions(+)
diff --git a/src/nautilus-list-base.c b/src/nautilus-list-base.c
index 827a3e1de..8d16c682e 100644
--- a/src/nautilus-list-base.c
+++ b/src/nautilus-list-base.c
@@ -312,6 +312,28 @@ open_context_menu_on_press (NautilusListBase *self,
view_x, view_y);
}
+static void
+rubberband_set_state (NautilusListBase *self,
+ gboolean enabled)
+{
+ /* This is a temporary workaround to deal with the rubberbanding issues
+ * during a drag and drop. Disable rubberband on item press and enable
+ * rubberband on item release/stop. See:
+ * https://gitlab.gnome.org/GNOME/gtk/-/issues/5670 */
+
+ GtkWidget *view;
+
+ view = NAUTILUS_LIST_BASE_CLASS (G_OBJECT_GET_CLASS (self))->get_view_ui (self);
+ if (GTK_IS_GRID_VIEW (view))
+ {
+ gtk_grid_view_set_enable_rubberband (GTK_GRID_VIEW (view), enabled);
+ }
+ else if (GTK_IS_COLUMN_VIEW (view))
+ {
+ gtk_column_view_set_enable_rubberband (GTK_COLUMN_VIEW (view), enabled);
+ }
+}
+
static void
on_item_click_pressed (GtkGestureClick *gesture,
gint n_press,
@@ -337,6 +359,8 @@ on_item_click_pressed (GtkGestureClick *gesture,
n_press == 1 &&
!selection_mode);
+ rubberband_set_state (self, FALSE);
+
/* It's safe to claim event sequence on press in the following cases because
* they don't interfere with touch scrolling. */
if (button == GDK_BUTTON_PRIMARY && n_press == 2 && !priv->single_click_mode)
@@ -395,6 +419,7 @@ on_item_click_released (GtkGestureClick *gesture,
activate_selection_on_click (self, FALSE);
}
+ rubberband_set_state (self, TRUE);
priv->activate_on_release = FALSE;
priv->deny_background_click = FALSE;
}
@@ -407,6 +432,7 @@ on_item_click_stopped (GtkGestureClick *gesture,
g_autoptr (NautilusListBase) self = nautilus_view_cell_get_view (cell);
NautilusListBasePrivate *priv = nautilus_list_base_get_instance_private (self);
+ rubberband_set_state (self, TRUE);
priv->activate_on_release = FALSE;
priv->deny_background_click = FALSE;
}
@@ -978,6 +1004,9 @@ real_begin_loading (NautilusFilesView *files_view)
NautilusListBase *self = NAUTILUS_LIST_BASE (files_view);
NautilusListBasePrivate *priv = nautilus_list_base_get_instance_private (self);
+ /* Temporary workaround */
+ rubberband_set_state (self, TRUE);
+
/*TODO move this to the files view class begin_loading and hook up? */
--
2.40.0

View File

@ -6,18 +6,13 @@
%global tarball_version %%(echo %{version} | tr '~' '.') %global tarball_version %%(echo %{version} | tr '~' '.')
Name: nautilus Name: nautilus
Version: 44~rc Version: 44.0
Release: 2%{?dist} Release: 1%{?dist}
Summary: File manager for GNOME Summary: File manager for GNOME
License: GPL-3.0-or-later License: GPL-3.0-or-later
URL: https://wiki.gnome.org/Apps/Nautilus URL: https://wiki.gnome.org/Apps/Nautilus
Source0: https://download.gnome.org/sources/%{name}/44/%{name}-%{tarball_version}.tar.xz Source0: https://download.gnome.org/sources/%{name}/44/%{name}-%{tarball_version}.tar.xz
# https://bugzilla.redhat.com/show_bug.cgi?id=2176766
# https://gitlab.gnome.org/GNOME/nautilus/-/issues/2844
# https://gitlab.gnome.org/GNOME/nautilus/-/merge_requests/1151
# Restore the 'rubberband hack' that makes drag-and-drop reliable
Patch0: 0001-Revert-list-base-Remove-rubberband-hack.patch
BuildRequires: desktop-file-utils BuildRequires: desktop-file-utils
BuildRequires: gcc BuildRequires: gcc
@ -144,6 +139,9 @@ desktop-file-validate $RPM_BUILD_ROOT%{_datadir}/applications/*.desktop
%doc %{_datadir}/doc/nautilus/ %doc %{_datadir}/doc/nautilus/
%changelog %changelog
* Fri Mar 17 2023 David King <amigadave@amigadave.com> - 44.0-1
- Update to 44.0 (#2159040)
* Thu Mar 16 2023 Adam Williamson <awilliam@redhat.com> - 44~rc-2 * Thu Mar 16 2023 Adam Williamson <awilliam@redhat.com> - 44~rc-2
- Backport MR #1151 to fix drag-and-drop (#2176766) - Backport MR #1151 to fix drag-and-drop (#2176766)

View File

@ -1 +1 @@
SHA512 (nautilus-44.rc.tar.xz) = d7b537b3848e5320fa6278118d04ebfeefc06d4d47bcd3753ebeeed7dcc9c35521cdf806df3c932536318c7d245c26f3f718832c4ebb3df6a9d4d3ee243368ea SHA512 (nautilus-44.0.tar.xz) = fa06fe12d7e5de76bac532732c26a242056056b6d4fbbc0a582e288baccdc8c35aaa370789f2656b0d5e38bba5826d0fbc5710612640197337cfb756fa74dd9f