Fix cropped popover for compress formats on X11

Resolves: #2024021
This commit is contained in:
Ondrej Holy 2021-12-07 09:36:57 +01:00
parent 79fd93239b
commit 26ee820cc1
2 changed files with 59 additions and 1 deletions

View File

@ -0,0 +1,52 @@
From 203d24f1e57991340b2870b0b956922144f0152a Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ant=C3=B3nio=20Fernandes?= <antoniojpfernandes@gmail.com>
Date: Mon, 8 Nov 2021 18:48:47 +0000
Subject: [PATCH] compress-dialog-controller: Fit popover fit on X11
Under X11, GTK3 cannot draw a GtkPopover outside of the main window area.
This means the popover for compress formats is clipped under X11.
As a workaround, make the window twice as tal when the popover is shown.
Fixes https://gitlab.gnome.org/GNOME/nautilus/-/issues/2018
---
src/nautilus-compress-dialog-controller.c | 15 +++++++++++++++
1 file changed, 15 insertions(+)
diff --git a/src/nautilus-compress-dialog-controller.c b/src/nautilus-compress-dialog-controller.c
index 3f7711ccb..de83b3717 100644
--- a/src/nautilus-compress-dialog-controller.c
+++ b/src/nautilus-compress-dialog-controller.c
@@ -21,6 +21,10 @@
#include <gnome-autoar/gnome-autoar.h>
#include <libhandy-1/handy.h>
+#ifdef GDK_WINDOWING_X11
+#include <gdk/gdkx.h>
+#endif
+
#include <eel/eel-vfs-extensions.h>
#include "nautilus-compress-dialog-controller.h"
@@ -394,6 +398,17 @@ popover_on_show (GtkWidget *widget,
}
break;
}
+
+#ifdef GDK_WINDOWING_X11
+ if (GDK_IS_X11_DISPLAY (gdk_display_get_default ()))
+ {
+ int w, h;
+
+ /* Workaround for https://gitlab.gnome.org/GNOME/nautilus/-/issues/2018 */
+ gtk_window_get_default_size (GTK_WINDOW (self->compress_dialog), &w, &h);
+ gtk_window_resize (GTK_WINDOW (self->compress_dialog), w, h * 2);
+ }
+#endif
}
NautilusCompressDialogController *
--
2.33.1

View File

@ -6,13 +6,16 @@
Name: nautilus
Version: 41.1
Release: 1%{?dist}
Release: 2%{?dist}
Summary: File manager for GNOME
License: GPLv3+
URL: https://wiki.gnome.org/Apps/Nautilus
Source0: https://download.gnome.org/sources/%{name}/41/%{name}-%{tarball_version}.tar.xz
# https://gitlab.gnome.org/GNOME/nautilus/-/issues/2018
Patch0: compress-dialog-controller-Fit-popover-fit-on-X11.patch
BuildRequires: desktop-file-utils
BuildRequires: gcc
BuildRequires: gettext
@ -143,6 +146,9 @@ desktop-file-validate $RPM_BUILD_ROOT%{_datadir}/applications/*.desktop
%doc %{_datadir}/gtk-doc/html/libnautilus-extension/
%changelog
* Tue Dec 07 2021 Ondrej Holy <oholy@redhat.com> - 41.1-2
- Fix cropped popover for compress formats on X11
* Mon Nov 01 2021 Kalev Lember <klember@redhat.com> - 41.1-1
- Update to 41.1