import gtk3-3.22.30-5.el8

This commit is contained in:
CentOS Sources 2020-04-28 05:42:29 -04:00 committed by Andrew Lukoshko
parent 5d225ca015
commit 25145e4131
3 changed files with 138 additions and 1 deletions

View File

@ -0,0 +1,79 @@
From 044383fe4533c59a0bbd58c977ed2ba5fb5862b8 Mon Sep 17 00:00:00 2001
From: Matthias Clasen <mclasen@redhat.com>
Date: Fri, 31 May 2019 11:46:19 -0400
Subject: [PATCH 1/2] Add a gtk-overlay-scrolling setting
This is in preparation for letting user opt out of
overlay scrolling in the control-center.
---
gdk/wayland/gdkscreen-wayland.c | 2 +-
gdk/x11/gdksettings.c | 1 +
gtk/gtksettings.c | 21 ++++++++++++++++++++-
3 files changed, 22 insertions(+), 2 deletions(-)
diff --git a/gdk/wayland/gdkscreen-wayland.c b/gdk/wayland/gdkscreen-wayland.c
index 6aff3a5a1a..5e156072f2 100644
--- a/gdk/wayland/gdkscreen-wayland.c
+++ b/gdk/wayland/gdkscreen-wayland.c
@@ -502,6 +502,7 @@ static TranslationEntry translations[] = {
{ FALSE, "org.gnome.desktop.interface", "gtk-im-module", "gtk-im-module", G_TYPE_STRING, { .s = "simple" } },
{ FALSE, "org.gnome.desktop.interface", "enable-animations", "gtk-enable-animations", G_TYPE_BOOLEAN, { .b = TRUE } },
{ FALSE, "org.gnome.desktop.interface", "gtk-enable-primary-paste", "gtk-enable-primary-paste", G_TYPE_BOOLEAN, { .b = TRUE } },
+ { FALSE, "org.gnome.desktop.interface", "overlay-scrolling", "gtk-overlay-scrolling", G_TYPE_BOOLEAN, { .b = TRUE } },
{ FALSE, "org.gnome.settings-daemon.peripherals.mouse", "double-click", "gtk-double-click-time", G_TYPE_INT, { .i = 400 } },
{ FALSE, "org.gnome.settings-daemon.peripherals.mouse", "drag-threshold", "gtk-dnd-drag-threshold", G_TYPE_INT, {.i = 8 } },
{ FALSE, "org.gnome.desktop.sound", "theme-name", "gtk-sound-theme-name", G_TYPE_STRING, { .s = "freedesktop" } },
diff --git a/gdk/x11/gdksettings.c b/gdk/x11/gdksettings.c
index f8bb6d896b..869c239b18 100644
--- a/gdk/x11/gdksettings.c
+++ b/gdk/x11/gdksettings.c
@@ -69,6 +69,7 @@ static const struct {
{"Gtk/RecentFilesMaxAge", "gtk-recent-files-max-age"},
{"Gtk/RecentFilesEnabled", "gtk-recent-files-enabled"},
{"Gtk/KeynavUseCaret", "gtk-keynav-use-caret"},
+ {"Gtk/OverlayScrolling", "gtk-overlay-scrolling"},
/* These are here in order to be recognized, but are not sent to
gtk as they are handled internally by gdk: */
diff --git a/gtk/gtksettings.c b/gtk/gtksettings.c
index 571ae11cd4..b83d9d5561 100644
--- a/gtk/gtksettings.c
+++ b/gtk/gtksettings.c
@@ -224,7 +224,8 @@ enum {
PROP_ENABLE_PRIMARY_PASTE,
PROP_RECENT_FILES_ENABLED,
PROP_LONG_PRESS_TIME,
- PROP_KEYNAV_USE_CARET
+ PROP_KEYNAV_USE_CARET,
+ PROP_OVERLAY_SCROLLING
};
/* --- prototypes --- */
@@ -1767,6 +1768,24 @@ gtk_settings_class_init (GtkSettingsClass *class)
GTK_PARAM_READWRITE),
NULL);
g_assert (result == PROP_KEYNAV_USE_CARET);
+
+ /**
+ * GtkSettings:gtk-overlay-scrolling:
+ *
+ * Whether scrolled windows may use overlayed scrolling indicators.
+ * If this is set to %FALSE, scrolled windows will have permanent
+ * scrollbars.
+ *
+ * Since: 3.24.9
+ */
+ result = settings_install_property_parser (class,
+ g_param_spec_boolean ("gtk-overlay-scrolling",
+ P_("Whether to use overlay scrollbars"),
+ P_("Whether to use overlay scrollbars"),
+ TRUE,
+ GTK_PARAM_READWRITE),
+ NULL);
+ g_assert (result == PROP_OVERLAY_SCROLLING);
}
static void
--
2.23.0

View File

@ -0,0 +1,50 @@
From 26b24916c8570a73bdc9d7a736584ceb68384c81 Mon Sep 17 00:00:00 2001
From: Matthias Clasen <mclasen@redhat.com>
Date: Fri, 31 May 2019 11:51:20 -0400
Subject: [PATCH 2/2] scrolled window: respect overlay-scrolling setting
If the gtk-overlay-scrolling setting is FALSE,
don't use overlay scrollbars.
---
gtk/gtkscrolledwindow.c | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
diff --git a/gtk/gtkscrolledwindow.c b/gtk/gtkscrolledwindow.c
index d52ccf646c..b2dc1d1c79 100644
--- a/gtk/gtkscrolledwindow.c
+++ b/gtk/gtkscrolledwindow.c
@@ -704,6 +704,9 @@ gtk_scrolled_window_class_init (GtkScrolledWindowClass *class)
* is present. Otherwise, they are overlayed on top of the content,
* as narrow indicators.
*
+ * Note that overlay scrolling can also be globally disabled, with
+ * the #GtkSettings::gtk-overlay-scrolling setting.
+ *
* Since: 3.16
*/
properties[PROP_OVERLAY_SCROLLING] =
@@ -4163,6 +4166,7 @@ gtk_scrolled_window_map (GtkWidget *widget)
GTK_WIDGET_CLASS (gtk_scrolled_window_parent_class)->map (widget);
gtk_scrolled_window_update_animating (scrolled_window);
+ gtk_scrolled_window_update_use_indicators (scrolled_window);
}
static void
@@ -4439,8 +4443,12 @@ gtk_scrolled_window_update_use_indicators (GtkScrolledWindow *scrolled_window)
{
GtkScrolledWindowPrivate *priv = scrolled_window->priv;
gboolean use_indicators;
+ GtkSettings *settings = gtk_widget_get_settings (GTK_WIDGET (scrolled_window));
+ gboolean overlay_scrolling;
+
+ g_object_get (settings, "gtk-overlay-scrolling", &overlay_scrolling, NULL);
- use_indicators = priv->overlay_scrolling;
+ use_indicators = overlay_scrolling && priv->overlay_scrolling;
if (g_strcmp0 (g_getenv ("GTK_OVERLAY_SCROLLING"), "0") == 0)
use_indicators = FALSE;
--
2.23.0

View File

@ -22,7 +22,7 @@
Name: gtk3
Version: 3.22.30
Release: 4%{?dist}
Release: 5%{?dist}
Summary: GTK+ graphical user interface library
License: LGPLv2+
@ -34,6 +34,9 @@ Patch1: 0001-a11y-Check-X11-display-at-runtime.patch
Patch2: 0001-a11y-Check-display-in-grab_cell_focus.patch
# ehbz#1723836
Patch3: 0001-a11y-Include-window-management-buttons-in-headerbar.patch
# rhbz#1736742
Patch4: 0001-Add-a-gtk-overlay-scrolling-setting.patch
Patch5: 0002-scrolled-window-respect-overlay-scrolling-setting.patch
BuildRequires: pkgconfig(atk) >= %{atk_version}
BuildRequires: pkgconfig(atk-bridge-2.0)
@ -176,6 +179,8 @@ the functionality of the installed %{name} package.
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch5 -p1
%build
export CFLAGS='-fno-strict-aliasing %optflags'
@ -334,6 +339,9 @@ gtk-query-immodules-3.0-%{__isa_bits} --update-cache &>/dev/null || :
%{_datadir}/installed-tests
%changelog
* Thu Nov 21 2019 Benjamin Otte <otte@redhat.com> - 3.22.30-5
- Add setting for turning off overlay scrollbars (rhbz#1736742)
* Thu Aug 15 2019 Benjamin Otte <otte@redhat.com> - 3.22.30-4
- Include headerbar buttons in accessibility (rhbz#1723836)