summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCoprDistGit <infra@openeuler.org>2024-08-05 02:28:10 +0000
committerCoprDistGit <infra@openeuler.org>2024-08-05 02:28:10 +0000
commitbbc589d72d27dbd9ac74ebd62f4f430d26811b88 (patch)
treee391febf6c988cf2c6c50c7de2e9bae9b37151ba
parent6a108312dcb3c7d5f325acbf88db42f66db89862 (diff)
automatic import of gtk3openeuler24.03_LTS
-rw-r--r--.gitignore1
-rw-r--r--0001-Stop-looking-for-modules-in-cwd.patch35
-rw-r--r--0001-theme-Reduce-the-height-of-titlebars.patch683
-rw-r--r--gtk3-3.24.30-entry-no-emoji-context-menu.patch41
-rw-r--r--gtk3-3.24.31-meson-reftest.patch53
-rw-r--r--gtk3-3.24.31-meson.patch316
-rw-r--r--gtk3-3.24.31-treeview-a11y-leak-fix.patch27
-rw-r--r--gtk3.spec1297
-rw-r--r--sources1
9 files changed, 2454 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index e69de29..2262e06 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/gtk+-3.24.31.tar.xz
diff --git a/0001-Stop-looking-for-modules-in-cwd.patch b/0001-Stop-looking-for-modules-in-cwd.patch
new file mode 100644
index 0000000..a66beb6
--- /dev/null
+++ b/0001-Stop-looking-for-modules-in-cwd.patch
@@ -0,0 +1,35 @@
+From 3bbf0b6176d42836d23c36a6ac410e807ec0a7a7 Mon Sep 17 00:00:00 2001
+From: Matthias Clasen <mclasen@redhat.com>
+Date: Sat, 15 Jun 2024 14:18:01 -0400
+Subject: [PATCH] Stop looking for modules in cwd
+
+This is just not a good idea. It is surprising, and can be misused.
+
+Fixes: #6786
+---
+ gtk/gtkmodules.c | 9 ++-------
+ 1 file changed, 2 insertions(+), 7 deletions(-)
+
+diff --git a/gtk/gtkmodules.c b/gtk/gtkmodules.c
+index 704e412aeb..f93101c272 100644
+--- a/gtk/gtkmodules.c
++++ b/gtk/gtkmodules.c
+@@ -214,13 +214,8 @@ find_module (const gchar *name)
+ gchar *module_name;
+
+ module_name = _gtk_find_module (name, "modules");
+- if (!module_name)
+- {
+- /* As last resort, try loading without an absolute path (using system
+- * library path)
+- */
+- module_name = g_module_build_path (NULL, name);
+- }
++ if (module_name == NULL)
++ return NULL;
+
+ module = g_module_open (module_name, G_MODULE_BIND_LOCAL | G_MODULE_BIND_LAZY);
+
+--
+2.45.2
+
diff --git a/0001-theme-Reduce-the-height-of-titlebars.patch b/0001-theme-Reduce-the-height-of-titlebars.patch
new file mode 100644
index 0000000..95c49c2
--- /dev/null
+++ b/0001-theme-Reduce-the-height-of-titlebars.patch
@@ -0,0 +1,683 @@
+From 29b39c35dcf0b031df644e999e03cadfed36e943 Mon Sep 17 00:00:00 2001
+From: Matthias Clasen <mclasen@redhat.com>
+Date: Thu, 2 May 2024 09:40:28 -0400
+Subject: [PATCH] theme: Reduce the height of titlebars
+
+The height of our titlebars is geared towards headerbars that can
+host controls. For a traditional title-only titlebar, a smaller
+footprint is sufficient and frees up some valuable vertical space.
+---
+ gtk/theme/Adwaita/_common.scss | 8 +-
+ gtk/theme/Adwaita/gtk-contained-dark.css | 112 +++++++++++-----------
+ gtk/theme/Adwaita/gtk-contained.css | 114 ++++++++++++-----------
+ 3 files changed, 119 insertions(+), 115 deletions(-)
+
+diff --git a/gtk/theme/Adwaita/_common.scss b/gtk/theme/Adwaita/_common.scss
+index b9db6041d5..c4b0243a36 100644
+--- a/gtk/theme/Adwaita/_common.scss
++++ b/gtk/theme/Adwaita/_common.scss
+@@ -1757,12 +1757,12 @@ headerbar {
+ }
+
+ &.default-decoration {
+- min-height: 28px;
+- padding: 4px;
++ padding: 0px 2px;
++ min-height: 0;
+
+ button.titlebutton {
+- min-height: 26px;
+- min-width: 26px;
++ min-height: 18px;
++ min-width: 18px;
+ margin: 0;
+ padding: 0;
+ }
+diff --git a/gtk/theme/Adwaita/gtk-contained-dark.css b/gtk/theme/Adwaita/gtk-contained-dark.css
+index 32b7fb969e..592fc88996 100644
+--- a/gtk/theme/Adwaita/gtk-contained-dark.css
++++ b/gtk/theme/Adwaita/gtk-contained-dark.css
+@@ -19,7 +19,7 @@
+
+ .gtkstyle-fallback:selected { color: #ffffff; background-color: #15539e; }
+
+-.view, iconview, .view text, iconview text, textview text { color: white; background-color: #2d2d2d; }
++.view, iconview, .view text, iconview text, textview text { color: white; caret-color: #f7f7f7; background-color: #2d2d2d; }
+
+ .view:backdrop, iconview:backdrop, .view text:backdrop, iconview text:backdrop, textview text:backdrop { color: #d6d6d6; background-color: #303030; }
+
+@@ -162,7 +162,7 @@ spinbutton:not(.vertical) progress:backdrop, entry progress:backdrop { backgroun
+
+ .linked:not(.vertical) > spinbutton:focus:not(.vertical) + spinbutton:not(.vertical), .linked:not(.vertical) > spinbutton:focus:not(.vertical) + button, .linked:not(.vertical) > spinbutton:focus:not(.vertical) + combobox > box > button.combo, .linked:not(.vertical) > spinbutton:focus:not(.vertical) + entry, .linked:not(.vertical) > entry:focus + button, .linked:not(.vertical) > entry:focus + combobox > box > button.combo, .linked:not(.vertical) > entry:focus + spinbutton:not(.vertical), .linked:not(.vertical) > entry:focus + entry { border-left-color: #030c17; }
+
+-.linked:not(.vertical) > spinbutton.error:focus:not(.vertical) + spinbutton:not(.vertical), .linked:not(.vertical) > spinbutton.error:focus:not(.vertical) + button, .linked:not(.vertical) > spinbutton.error:focus:not(.vertical) + combobox > box > button.combo, .linked:not(.vertical) > spinbutton.error:focus:not(.vertical) + entry, .linked:not(.vertical) > entry.error:focus + button, .linked:not(.vertical) > entry.error:focus + combobox > box > button.combo, .linked:not(.vertical) > entry.error:focus + spinbutton:not(.vertical), .linked:not(.vertical) > entry.error:focus + entry { border-left-color: #1a0000; }
++.linked:not(.vertical) > spinbutton:focus.error:not(.vertical) + spinbutton:not(.vertical), .linked:not(.vertical) > spinbutton:focus.error:not(.vertical) + button, .linked:not(.vertical) > spinbutton:focus.error:not(.vertical) + combobox > box > button.combo, .linked:not(.vertical) > spinbutton:focus.error:not(.vertical) + entry, .linked:not(.vertical) > entry:focus.error + button, .linked:not(.vertical) > entry:focus.error + combobox > box > button.combo, .linked:not(.vertical) > entry:focus.error + spinbutton:not(.vertical), .linked:not(.vertical) > entry:focus.error + entry { border-left-color: #1a0000; }
+
+ .linked:not(.vertical) > spinbutton:drop(active):not(.vertical) + spinbutton:not(.vertical), .linked:not(.vertical) > spinbutton:drop(active):not(.vertical) + button, .linked:not(.vertical) > spinbutton:drop(active):not(.vertical) + combobox > box > button.combo, .linked:not(.vertical) > spinbutton:drop(active):not(.vertical) + entry, .linked:not(.vertical) > entry:drop(active) + button, .linked:not(.vertical) > entry:drop(active) + combobox > box > button.combo, .linked:not(.vertical) > entry:drop(active) + spinbutton:not(.vertical), .linked:not(.vertical) > entry:drop(active) + entry { border-left-color: #4e9a06; }
+
+@@ -174,13 +174,13 @@ spinbutton:not(.vertical) progress:backdrop, entry progress:backdrop { backgroun
+
+ .linked.vertical > spinbutton:not(.vertical) + spinbutton:focus:not(:only-child):not(.vertical), .linked.vertical > spinbutton:not(.vertical) + entry:focus:not(:only-child), .linked.vertical > entry + spinbutton:focus:not(:only-child):not(.vertical), .linked.vertical > entry + entry:focus:not(:only-child) { border-top-color: #030c17; }
+
+-.linked.vertical > spinbutton:not(.vertical) + spinbutton.error:focus:not(:only-child):not(.vertical), .linked.vertical > spinbutton:not(.vertical) + entry.error:focus:not(:only-child), .linked.vertical > entry + spinbutton.error:focus:not(:only-child):not(.vertical), .linked.vertical > entry + entry.error:focus:not(:only-child) { border-top-color: #1a0000; }
++.linked.vertical > spinbutton:not(.vertical) + spinbutton:focus.error:not(:only-child):not(.vertical), .linked.vertical > spinbutton:not(.vertical) + entry:focus.error:not(:only-child), .linked.vertical > entry + spinbutton:focus.error:not(:only-child):not(.vertical), .linked.vertical > entry + entry:focus.error:not(:only-child) { border-top-color: #1a0000; }
+
+ .linked.vertical > spinbutton:not(.vertical) + spinbutton:drop(active):not(:only-child):not(.vertical), .linked.vertical > spinbutton:not(.vertical) + entry:drop(active):not(:only-child), .linked.vertical > entry + spinbutton:drop(active):not(:only-child):not(.vertical), .linked.vertical > entry + entry:drop(active):not(:only-child) { border-top-color: #4e9a06; }
+
+ .linked.vertical > spinbutton:focus:not(:only-child):not(.vertical) + spinbutton:not(.vertical), .linked.vertical > spinbutton:focus:not(:only-child):not(.vertical) + entry, .linked.vertical > spinbutton:focus:not(:only-child):not(.vertical) + button, .linked.vertical > spinbutton:focus:not(:only-child):not(.vertical) + combobox > box > button.combo, .linked.vertical > entry:focus:not(:only-child) + spinbutton:not(.vertical), .linked.vertical > entry:focus:not(:only-child) + entry, .linked.vertical > entry:focus:not(:only-child) + button, .linked.vertical > entry:focus:not(:only-child) + combobox > box > button.combo { border-top-color: #030c17; }
+
+-.linked.vertical > spinbutton.error:focus:not(:only-child):not(.vertical) + spinbutton:not(.vertical), .linked.vertical > spinbutton.error:focus:not(:only-child):not(.vertical) + entry, .linked.vertical > spinbutton.error:focus:not(:only-child):not(.vertical) + button, .linked.vertical > spinbutton.error:focus:not(:only-child):not(.vertical) + combobox > box > button.combo, .linked.vertical > entry.error:focus:not(:only-child) + spinbutton:not(.vertical), .linked.vertical > entry.error:focus:not(:only-child) + entry, .linked.vertical > entry.error:focus:not(:only-child) + button, .linked.vertical > entry.error:focus:not(:only-child) + combobox > box > button.combo { border-top-color: #1a0000; }
++.linked.vertical > spinbutton:focus.error:not(:only-child):not(.vertical) + spinbutton:not(.vertical), .linked.vertical > spinbutton:focus.error:not(:only-child):not(.vertical) + entry, .linked.vertical > spinbutton:focus.error:not(:only-child):not(.vertical) + button, .linked.vertical > spinbutton:focus.error:not(:only-child):not(.vertical) + combobox > box > button.combo, .linked.vertical > entry:focus.error:not(:only-child) + spinbutton:not(.vertical), .linked.vertical > entry:focus.error:not(:only-child) + entry, .linked.vertical > entry:focus.error:not(:only-child) + button, .linked.vertical > entry:focus.error:not(:only-child) + combobox > box > button.combo { border-top-color: #1a0000; }
+
+ .linked.vertical > spinbutton:drop(active):not(:only-child):not(.vertical) + spinbutton:not(.vertical), .linked.vertical > spinbutton:drop(active):not(:only-child):not(.vertical) + entry, .linked.vertical > spinbutton:drop(active):not(:only-child):not(.vertical) + button, .linked.vertical > spinbutton:drop(active):not(:only-child):not(.vertical) + combobox > box > button.combo, .linked.vertical > entry:drop(active):not(:only-child) + spinbutton:not(.vertical), .linked.vertical > entry:drop(active):not(:only-child) + entry, .linked.vertical > entry:drop(active):not(:only-child) + button, .linked.vertical > entry:drop(active):not(:only-child) + combobox > box > button.combo { border-top-color: #4e9a06; }
+
+@@ -224,13 +224,13 @@ notebook > header > tabs > arrow:hover, button:hover { color: #eeeeec; outline-c
+
+ notebook > header > tabs > arrow:active, notebook > header > tabs > arrow:checked, button:active, button:checked { color: #eeeeec; outline-color: rgba(238, 238, 236, 0.3); border-color: #1b1b1b; background-image: image(#1e1e1e); box-shadow: inset 0 1px rgba(255, 255, 255, 0); text-shadow: none; -gtk-icon-shadow: none; transition-duration: 50ms; }
+
+-notebook > header > tabs > arrow:backdrop, button.flat:backdrop, button:backdrop { color: #919190; border-color: #202020; background-image: image(#353535); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); transition: 200ms ease-out; -gtk-icon-effect: none; }
++notebook > header > tabs > arrow:backdrop, button:backdrop.flat, button:backdrop { color: #919190; border-color: #202020; background-image: image(#353535); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); transition: 200ms ease-out; -gtk-icon-effect: none; }
+
+-notebook > header > tabs > arrow:backdrop:active, notebook > header > tabs > arrow:backdrop:checked, button.flat:backdrop:active, button.flat:backdrop:checked, button:backdrop:active, button:backdrop:checked { color: #919190; border-color: #202020; background-image: image(#2a2a2a); box-shadow: inset 0 1px rgba(255, 255, 255, 0); }
++notebook > header > tabs > arrow:backdrop:active, notebook > header > tabs > arrow:backdrop:checked, button:backdrop.flat:active, button:backdrop.flat:checked, button:backdrop:active, button:backdrop:checked { color: #919190; border-color: #202020; background-image: image(#2a2a2a); box-shadow: inset 0 1px rgba(255, 255, 255, 0); }
+
+-notebook > header > tabs > arrow:backdrop:disabled, button.flat:backdrop:disabled, button:backdrop:disabled { color: #5b5b5b; border-color: #202020; background-image: image(#323232); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); }
++notebook > header > tabs > arrow:backdrop:disabled, button:backdrop.flat:disabled, button:backdrop:disabled { color: #5b5b5b; border-color: #202020; background-image: image(#323232); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); }
+
+-notebook > header > tabs > arrow:backdrop:disabled:active, notebook > header > tabs > arrow:backdrop:disabled:checked, button.flat:backdrop:disabled:active, button.flat:backdrop:disabled:checked, button:backdrop:disabled:active, button:backdrop:disabled:checked { color: #5b5b5b; border-color: #202020; background-image: image(#2a2a2a); box-shadow: inset 0 1px rgba(255, 255, 255, 0); }
++notebook > header > tabs > arrow:backdrop:disabled:active, notebook > header > tabs > arrow:backdrop:disabled:checked, button:backdrop.flat:disabled:active, button:backdrop.flat:disabled:checked, button:backdrop:disabled:active, button:backdrop:disabled:checked { color: #5b5b5b; border-color: #202020; background-image: image(#2a2a2a); box-shadow: inset 0 1px rgba(255, 255, 255, 0); }
+
+ button.titlebutton:backdrop, button.sidebar-button:backdrop, notebook > header > tabs > arrow:backdrop, button.titlebutton:disabled, button.sidebar-button:disabled, notebook > header > tabs > arrow:disabled, button.flat:backdrop, button.flat:disabled, button.flat:backdrop:disabled { border-color: transparent; background-color: transparent; background-image: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); text-shadow: none; -gtk-icon-shadow: none; }
+
+@@ -598,11 +598,11 @@ searchbar > revealer > box { margin: -6px; padding: 6px; }
+
+ .selection-mode .titlebar:not(headerbar) button:active, .selection-mode .titlebar:not(headerbar) button:checked, .selection-mode.titlebar:not(headerbar) button:active, .selection-mode.titlebar:not(headerbar) button:checked, .selection-mode headerbar button:active, .selection-mode headerbar button:checked, .selection-mode headerbar button.toggle:checked, .selection-mode headerbar button.toggle:active, headerbar.selection-mode button:active, headerbar.selection-mode button:checked, headerbar.selection-mode button.toggle:checked, headerbar.selection-mode button.toggle:active { color: #ffffff; outline-color: rgba(255, 255, 255, 0.3); border-color: #0f3b71; background-image: image(#103e75); box-shadow: inset 0 1px rgba(255, 255, 255, 0); text-shadow: none; -gtk-icon-shadow: none; }
+
+-.selection-mode .titlebar:not(headerbar) button:backdrop, .selection-mode.titlebar:not(headerbar) button:backdrop, .selection-mode headerbar button.flat:backdrop, .selection-mode headerbar button:backdrop, headerbar.selection-mode button.flat:backdrop, headerbar.selection-mode button:backdrop { color: #d0ddec; border-color: #0f3b71; background-image: image(#15539e); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); -gtk-icon-effect: none; border-color: #030c17; }
++.selection-mode .titlebar:not(headerbar) button:backdrop, .selection-mode.titlebar:not(headerbar) button:backdrop, .selection-mode headerbar button:backdrop.flat, .selection-mode headerbar button:backdrop, headerbar.selection-mode button:backdrop.flat, headerbar.selection-mode button:backdrop { color: #d0ddec; border-color: #0f3b71; background-image: image(#15539e); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); -gtk-icon-effect: none; border-color: #030c17; }
+
+-.selection-mode .titlebar:not(headerbar) button:backdrop:active, .selection-mode .titlebar:not(headerbar) button:backdrop:checked, .selection-mode.titlebar:not(headerbar) button:backdrop:active, .selection-mode.titlebar:not(headerbar) button:backdrop:checked, .selection-mode headerbar button.flat:backdrop:active, .selection-mode headerbar button.flat:backdrop:checked, .selection-mode headerbar button:backdrop:active, .selection-mode headerbar button:backdrop:checked, headerbar.selection-mode button.flat:backdrop:active, headerbar.selection-mode button.flat:backdrop:checked, headerbar.selection-mode button:backdrop:active, headerbar.selection-mode button:backdrop:checked { color: #d0dae5; border-color: #0f3b71; background-image: image(#16447c); box-shadow: inset 0 1px rgba(255, 255, 255, 0); border-color: #030c17; }
++.selection-mode .titlebar:not(headerbar) button:backdrop:active, .selection-mode .titlebar:not(headerbar) button:backdrop:checked, .selection-mode.titlebar:not(headerbar) button:backdrop:active, .selection-mode.titlebar:not(headerbar) button:backdrop:checked, .selection-mode headerbar button:backdrop.flat:active, .selection-mode headerbar button:backdrop.flat:checked, .selection-mode headerbar button:backdrop:active, .selection-mode headerbar button:backdrop:checked, headerbar.selection-mode button:backdrop.flat:active, headerbar.selection-mode button:backdrop.flat:checked, headerbar.selection-mode button:backdrop:active, headerbar.selection-mode button:backdrop:checked { color: #d0dae5; border-color: #0f3b71; background-image: image(#16447c); box-shadow: inset 0 1px rgba(255, 255, 255, 0); border-color: #030c17; }
+
+-.selection-mode .titlebar:not(headerbar) button:backdrop:disabled, .selection-mode.titlebar:not(headerbar) button:backdrop:disabled, .selection-mode headerbar button.flat:backdrop:disabled, .selection-mode headerbar button:backdrop:disabled, headerbar.selection-mode button.flat:backdrop:disabled, headerbar.selection-mode button:backdrop:disabled { color: #6a8bb5; border-color: #0f3b71; background-image: image(#194d8d); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); border-color: #030c17; }
++.selection-mode .titlebar:not(headerbar) button:backdrop:disabled, .selection-mode.titlebar:not(headerbar) button:backdrop:disabled, .selection-mode headerbar button:backdrop.flat:disabled, .selection-mode headerbar button:backdrop:disabled, headerbar.selection-mode button:backdrop.flat:disabled, headerbar.selection-mode button:backdrop:disabled { color: #6a8bb5; border-color: #0f3b71; background-image: image(#194d8d); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); border-color: #030c17; }
+
+ .selection-mode .titlebar:not(headerbar) button:backdrop:disabled:active, .selection-mode .titlebar:not(headerbar) button:backdrop:disabled:checked, .selection-mode.titlebar:not(headerbar) button:backdrop:disabled:active, .selection-mode.titlebar:not(headerbar) button:backdrop:disabled:checked, .selection-mode headerbar button:backdrop:disabled:active, .selection-mode headerbar button:backdrop:disabled:checked, headerbar.selection-mode button:backdrop:disabled:active, headerbar.selection-mode button:backdrop:disabled:checked { color: #6885aa; border-color: #0f3b71; background-image: image(#16447c); box-shadow: inset 0 1px rgba(255, 255, 255, 0); border-color: #030c17; }
+
+@@ -632,9 +632,9 @@ searchbar > revealer > box { margin: -6px; padding: 6px; }
+
+ .tiled .titlebar:not(headerbar), .tiled-top .titlebar:not(headerbar), .tiled-right .titlebar:not(headerbar), .tiled-bottom .titlebar:not(headerbar), .tiled-left .titlebar:not(headerbar), .maximized .titlebar:not(headerbar), .fullscreen .titlebar:not(headerbar), .tiled headerbar, .tiled-top headerbar, .tiled-right headerbar, .tiled-bottom headerbar, .tiled-left headerbar, .maximized headerbar, .fullscreen headerbar { border-radius: 0; }
+
+-.default-decoration.titlebar:not(headerbar), headerbar.default-decoration { min-height: 28px; padding: 4px; }
++.default-decoration.titlebar:not(headerbar), headerbar.default-decoration { padding: 0px 2px; min-height: 0; }
+
+-.default-decoration.titlebar:not(headerbar) button.titlebutton, headerbar.default-decoration button.titlebutton { min-height: 26px; min-width: 26px; margin: 0; padding: 0; }
++.default-decoration.titlebar:not(headerbar) button.titlebutton, headerbar.default-decoration button.titlebutton { min-height: 18px; min-width: 18px; margin: 0; padding: 0; }
+
+ .titlebar:not(headerbar) separator.titlebutton, headerbar separator.titlebutton { opacity: 0; }
+
+@@ -704,9 +704,9 @@ treeview.view:backdrop { border-left-color: #636362; border-top: #353535; }
+
+ treeview.view:drop(active) { border-style: solid none; border-width: 1px; border-color: #030c17; }
+
+-treeview.view.after:drop(active) { border-top-style: none; }
++treeview.view:drop(active).after { border-top-style: none; }
+
+-treeview.view.before:drop(active) { border-bottom-style: none; }
++treeview.view:drop(active).before { border-bottom-style: none; }
+
+ treeview.view.expander { -gtk-icon-source: -gtk-icontheme("pan-end-symbolic"); color: silver; }
+
+@@ -911,21 +911,21 @@ notebook > header tab { min-height: 30px; min-width: 30px; padding: 3px 12px; ou
+
+ notebook > header tab:hover { color: #eeeeec; background-color: #2b2b2b; }
+
+-notebook > header tab.reorderable-page:hover { border-color: rgba(27, 27, 27, 0.3); background-color: rgba(53, 53, 53, 0.2); }
++notebook > header tab:hover.reorderable-page { border-color: rgba(27, 27, 27, 0.3); background-color: rgba(53, 53, 53, 0.2); }
+
+ notebook > header tab:backdrop { color: #6c6c6c; }
+
+-notebook > header tab.reorderable-page:backdrop { border-color: transparent; background-color: transparent; }
++notebook > header tab:backdrop.reorderable-page { border-color: transparent; background-color: transparent; }
+
+ notebook > header tab:checked { color: #eeeeec; }
+
+-notebook > header tab.reorderable-page:checked { border-color: rgba(27, 27, 27, 0.5); background-color: rgba(53, 53, 53, 0.5); }
++notebook > header tab:checked.reorderable-page { border-color: rgba(27, 27, 27, 0.5); background-color: rgba(53, 53, 53, 0.5); }
+
+-notebook > header tab.reorderable-page:checked:hover { background-color: rgba(53, 53, 53, 0.7); }
++notebook > header tab:checked.reorderable-page:hover { background-color: rgba(53, 53, 53, 0.7); }
+
+ notebook > header tab:backdrop:checked { color: #919190; }
+
+-notebook > header tab.reorderable-page:backdrop:checked { border-color: #202020; background-color: #353535; }
++notebook > header tab:backdrop:checked.reorderable-page { border-color: #202020; background-color: #353535; }
+
+ notebook > header tab button.flat { padding: 0; margin-top: 4px; margin-bottom: 4px; min-width: 20px; min-height: 20px; }
+
+@@ -1006,13 +1006,13 @@ scrollbar.overlay-indicator:not(.dragging):not(.hovering) slider { margin: 0; mi
+
+ scrollbar.overlay-indicator:not(.dragging):not(.hovering) button { min-width: 5px; min-height: 5px; background-color: #eeeeec; background-clip: padding-box; border-radius: 100%; border: 1px solid black; -gtk-icon-source: none; }
+
+-scrollbar.overlay-indicator.horizontal:not(.dragging):not(.hovering) slider { margin: 0 2px; min-width: 40px; }
++scrollbar.overlay-indicator:not(.dragging):not(.hovering).horizontal slider { margin: 0 2px; min-width: 40px; }
+
+-scrollbar.overlay-indicator.horizontal:not(.dragging):not(.hovering) button { margin: 1px 2px; min-width: 5px; }
++scrollbar.overlay-indicator:not(.dragging):not(.hovering).horizontal button { margin: 1px 2px; min-width: 5px; }
+
+-scrollbar.overlay-indicator.vertical:not(.dragging):not(.hovering) slider { margin: 2px 0; min-height: 40px; }
++scrollbar.overlay-indicator:not(.dragging):not(.hovering).vertical slider { margin: 2px 0; min-height: 40px; }
+
+-scrollbar.overlay-indicator.vertical:not(.dragging):not(.hovering) button { margin: 2px 1px; min-height: 5px; }
++scrollbar.overlay-indicator:not(.dragging):not(.hovering).vertical button { margin: 2px 1px; min-height: 5px; }
+
+ scrollbar.overlay-indicator.dragging, scrollbar.overlay-indicator.hovering { opacity: 0.8; }
+
+@@ -1285,99 +1285,99 @@ scale.vertical.fine-tune indicator { min-width: 3px; }
+
+ scale.horizontal.marks-before:not(.marks-after) slider { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-horz-scale-has-marks-above-dark.png"), url("assets/slider-horz-scale-has-marks-above-dark@2.png")); min-height: 26px; min-width: 22px; margin-top: -14px; background-position: top; background-repeat: no-repeat; box-shadow: none; }
+
+-scale.horizontal.marks-before.fine-tune:not(.marks-after) slider { margin: -7px; margin-top: -11px; }
++scale.horizontal.marks-before:not(.marks-after).fine-tune slider { margin: -7px; margin-top: -11px; }
+
+ scale.horizontal.marks-before:not(.marks-after) slider:hover { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-horz-scale-has-marks-above-hover-dark.png"), url("assets/slider-horz-scale-has-marks-above-hover-dark@2.png")); min-height: 26px; min-width: 22px; margin-top: -14px; background-position: top; background-repeat: no-repeat; box-shadow: none; }
+
+-scale.horizontal.marks-before.fine-tune:not(.marks-after) slider { margin: -7px; margin-top: -11px; }
++scale.horizontal.marks-before:not(.marks-after).fine-tune slider { margin: -7px; margin-top: -11px; }
+
+ scale.horizontal.marks-before:not(.marks-after) slider:active { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-horz-scale-has-marks-above-active-dark.png"), url("assets/slider-horz-scale-has-marks-above-active-dark@2.png")); min-height: 26px; min-width: 22px; margin-top: -14px; background-position: top; background-repeat: no-repeat; box-shadow: none; }
+
+-scale.horizontal.marks-before.fine-tune:not(.marks-after) slider { margin: -7px; margin-top: -11px; }
++scale.horizontal.marks-before:not(.marks-after).fine-tune slider { margin: -7px; margin-top: -11px; }
+
+ scale.horizontal.marks-before:not(.marks-after) slider:disabled { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-horz-scale-has-marks-above-insensitive-dark.png"), url("assets/slider-horz-scale-has-marks-above-insensitive-dark@2.png")); min-height: 26px; min-width: 22px; margin-top: -14px; background-position: top; background-repeat: no-repeat; box-shadow: none; }
+
+-scale.horizontal.marks-before.fine-tune:not(.marks-after) slider { margin: -7px; margin-top: -11px; }
++scale.horizontal.marks-before:not(.marks-after).fine-tune slider { margin: -7px; margin-top: -11px; }
+
+ scale.horizontal.marks-before:not(.marks-after) slider:backdrop { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-horz-scale-has-marks-above-backdrop-dark.png"), url("assets/slider-horz-scale-has-marks-above-backdrop-dark@2.png")); min-height: 26px; min-width: 22px; margin-top: -14px; background-position: top; background-repeat: no-repeat; box-shadow: none; }
+
+-scale.horizontal.marks-before.fine-tune:not(.marks-after) slider { margin: -7px; margin-top: -11px; }
++scale.horizontal.marks-before:not(.marks-after).fine-tune slider { margin: -7px; margin-top: -11px; }
+
+ scale.horizontal.marks-before:not(.marks-after) slider:backdrop:disabled { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-horz-scale-has-marks-above-backdrop-insensitive-dark.png"), url("assets/slider-horz-scale-has-marks-above-backdrop-insensitive-dark@2.png")); min-height: 26px; min-width: 22px; margin-top: -14px; background-position: top; background-repeat: no-repeat; box-shadow: none; }
+
+-scale.horizontal.marks-before.fine-tune:not(.marks-after) slider { margin: -7px; margin-top: -11px; }
++scale.horizontal.marks-before:not(.marks-after).fine-tune slider { margin: -7px; margin-top: -11px; }
+
+ scale.horizontal.marks-after:not(.marks-before) slider { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-horz-scale-has-marks-below-dark.png"), url("assets/slider-horz-scale-has-marks-below-dark@2.png")); min-height: 26px; min-width: 22px; margin-bottom: -14px; background-position: bottom; background-repeat: no-repeat; box-shadow: none; }
+
+-scale.horizontal.marks-after.fine-tune:not(.marks-before) slider { margin: -7px; margin-bottom: -11px; }
++scale.horizontal.marks-after:not(.marks-before).fine-tune slider { margin: -7px; margin-bottom: -11px; }
+
+ scale.horizontal.marks-after:not(.marks-before) slider:hover { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-horz-scale-has-marks-below-hover-dark.png"), url("assets/slider-horz-scale-has-marks-below-hover-dark@2.png")); min-height: 26px; min-width: 22px; margin-bottom: -14px; background-position: bottom; background-repeat: no-repeat; box-shadow: none; }
+
+-scale.horizontal.marks-after.fine-tune:not(.marks-before) slider { margin: -7px; margin-bottom: -11px; }
++scale.horizontal.marks-after:not(.marks-before).fine-tune slider { margin: -7px; margin-bottom: -11px; }
+
+ scale.horizontal.marks-after:not(.marks-before) slider:active { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-horz-scale-has-marks-below-active-dark.png"), url("assets/slider-horz-scale-has-marks-below-active-dark@2.png")); min-height: 26px; min-width: 22px; margin-bottom: -14px; background-position: bottom; background-repeat: no-repeat; box-shadow: none; }
+
+-scale.horizontal.marks-after.fine-tune:not(.marks-before) slider { margin: -7px; margin-bottom: -11px; }
++scale.horizontal.marks-after:not(.marks-before).fine-tune slider { margin: -7px; margin-bottom: -11px; }
+
+ scale.horizontal.marks-after:not(.marks-before) slider:disabled { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-horz-scale-has-marks-below-insensitive-dark.png"), url("assets/slider-horz-scale-has-marks-below-insensitive-dark@2.png")); min-height: 26px; min-width: 22px; margin-bottom: -14px; background-position: bottom; background-repeat: no-repeat; box-shadow: none; }
+
+-scale.horizontal.marks-after.fine-tune:not(.marks-before) slider { margin: -7px; margin-bottom: -11px; }
++scale.horizontal.marks-after:not(.marks-before).fine-tune slider { margin: -7px; margin-bottom: -11px; }
+
+ scale.horizontal.marks-after:not(.marks-before) slider:backdrop { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-horz-scale-has-marks-below-backdrop-dark.png"), url("assets/slider-horz-scale-has-marks-below-backdrop-dark@2.png")); min-height: 26px; min-width: 22px; margin-bottom: -14px; background-position: bottom; background-repeat: no-repeat; box-shadow: none; }
+
+-scale.horizontal.marks-after.fine-tune:not(.marks-before) slider { margin: -7px; margin-bottom: -11px; }
++scale.horizontal.marks-after:not(.marks-before).fine-tune slider { margin: -7px; margin-bottom: -11px; }
+
+ scale.horizontal.marks-after:not(.marks-before) slider:backdrop:disabled { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-horz-scale-has-marks-below-backdrop-insensitive-dark.png"), url("assets/slider-horz-scale-has-marks-below-backdrop-insensitive-dark@2.png")); min-height: 26px; min-width: 22px; margin-bottom: -14px; background-position: bottom; background-repeat: no-repeat; box-shadow: none; }
+
+-scale.horizontal.marks-after.fine-tune:not(.marks-before) slider { margin: -7px; margin-bottom: -11px; }
++scale.horizontal.marks-after:not(.marks-before).fine-tune slider { margin: -7px; margin-bottom: -11px; }
+
+ scale.vertical.marks-before:not(.marks-after) slider { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-vert-scale-has-marks-above-dark.png"), url("assets/slider-vert-scale-has-marks-above-dark@2.png")); min-height: 22px; min-width: 26px; margin-left: -14px; background-position: left bottom; background-repeat: no-repeat; box-shadow: none; }
+
+-scale.vertical.marks-before.fine-tune:not(.marks-after) slider { margin: -7px; margin-left: -11px; }
++scale.vertical.marks-before:not(.marks-after).fine-tune slider { margin: -7px; margin-left: -11px; }
+
+ scale.vertical.marks-before:not(.marks-after) slider:hover { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-vert-scale-has-marks-above-hover-dark.png"), url("assets/slider-vert-scale-has-marks-above-hover-dark@2.png")); min-height: 22px; min-width: 26px; margin-left: -14px; background-position: left bottom; background-repeat: no-repeat; box-shadow: none; }
+
+-scale.vertical.marks-before.fine-tune:not(.marks-after) slider { margin: -7px; margin-left: -11px; }
++scale.vertical.marks-before:not(.marks-after).fine-tune slider { margin: -7px; margin-left: -11px; }
+
+ scale.vertical.marks-before:not(.marks-after) slider:active { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-vert-scale-has-marks-above-active-dark.png"), url("assets/slider-vert-scale-has-marks-above-active-dark@2.png")); min-height: 22px; min-width: 26px; margin-left: -14px; background-position: left bottom; background-repeat: no-repeat; box-shadow: none; }
+
+-scale.vertical.marks-before.fine-tune:not(.marks-after) slider { margin: -7px; margin-left: -11px; }
++scale.vertical.marks-before:not(.marks-after).fine-tune slider { margin: -7px; margin-left: -11px; }
+
+ scale.vertical.marks-before:not(.marks-after) slider:disabled { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-vert-scale-has-marks-above-insensitive-dark.png"), url("assets/slider-vert-scale-has-marks-above-insensitive-dark@2.png")); min-height: 22px; min-width: 26px; margin-left: -14px; background-position: left bottom; background-repeat: no-repeat; box-shadow: none; }
+
+-scale.vertical.marks-before.fine-tune:not(.marks-after) slider { margin: -7px; margin-left: -11px; }
++scale.vertical.marks-before:not(.marks-after).fine-tune slider { margin: -7px; margin-left: -11px; }
+
+ scale.vertical.marks-before:not(.marks-after) slider:backdrop { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-vert-scale-has-marks-above-backdrop-dark.png"), url("assets/slider-vert-scale-has-marks-above-backdrop-dark@2.png")); min-height: 22px; min-width: 26px; margin-left: -14px; background-position: left bottom; background-repeat: no-repeat; box-shadow: none; }
+
+-scale.vertical.marks-before.fine-tune:not(.marks-after) slider { margin: -7px; margin-left: -11px; }
++scale.vertical.marks-before:not(.marks-after).fine-tune slider { margin: -7px; margin-left: -11px; }
+
+ scale.vertical.marks-before:not(.marks-after) slider:backdrop:disabled { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-vert-scale-has-marks-above-backdrop-insensitive-dark.png"), url("assets/slider-vert-scale-has-marks-above-backdrop-insensitive-dark@2.png")); min-height: 22px; min-width: 26px; margin-left: -14px; background-position: left bottom; background-repeat: no-repeat; box-shadow: none; }
+
+-scale.vertical.marks-before.fine-tune:not(.marks-after) slider { margin: -7px; margin-left: -11px; }
++scale.vertical.marks-before:not(.marks-after).fine-tune slider { margin: -7px; margin-left: -11px; }
+
+ scale.vertical.marks-after:not(.marks-before) slider { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-vert-scale-has-marks-below-dark.png"), url("assets/slider-vert-scale-has-marks-below-dark@2.png")); min-height: 22px; min-width: 26px; margin-right: -14px; background-position: right bottom; background-repeat: no-repeat; box-shadow: none; }
+
+-scale.vertical.marks-after.fine-tune:not(.marks-before) slider { margin: -7px; margin-right: -11px; }
++scale.vertical.marks-after:not(.marks-before).fine-tune slider { margin: -7px; margin-right: -11px; }
+
+ scale.vertical.marks-after:not(.marks-before) slider:hover { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-vert-scale-has-marks-below-hover-dark.png"), url("assets/slider-vert-scale-has-marks-below-hover-dark@2.png")); min-height: 22px; min-width: 26px; margin-right: -14px; background-position: right bottom; background-repeat: no-repeat; box-shadow: none; }
+
+-scale.vertical.marks-after.fine-tune:not(.marks-before) slider { margin: -7px; margin-right: -11px; }
++scale.vertical.marks-after:not(.marks-before).fine-tune slider { margin: -7px; margin-right: -11px; }
+
+ scale.vertical.marks-after:not(.marks-before) slider:active { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-vert-scale-has-marks-below-active-dark.png"), url("assets/slider-vert-scale-has-marks-below-active-dark@2.png")); min-height: 22px; min-width: 26px; margin-right: -14px; background-position: right bottom; background-repeat: no-repeat; box-shadow: none; }
+
+-scale.vertical.marks-after.fine-tune:not(.marks-before) slider { margin: -7px; margin-right: -11px; }
++scale.vertical.marks-after:not(.marks-before).fine-tune slider { margin: -7px; margin-right: -11px; }
+
+ scale.vertical.marks-after:not(.marks-before) slider:disabled { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-vert-scale-has-marks-below-insensitive-dark.png"), url("assets/slider-vert-scale-has-marks-below-insensitive-dark@2.png")); min-height: 22px; min-width: 26px; margin-right: -14px; background-position: right bottom; background-repeat: no-repeat; box-shadow: none; }
+
+-scale.vertical.marks-after.fine-tune:not(.marks-before) slider { margin: -7px; margin-right: -11px; }
++scale.vertical.marks-after:not(.marks-before).fine-tune slider { margin: -7px; margin-right: -11px; }
+
+ scale.vertical.marks-after:not(.marks-before) slider:backdrop { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-vert-scale-has-marks-below-backdrop-dark.png"), url("assets/slider-vert-scale-has-marks-below-backdrop-dark@2.png")); min-height: 22px; min-width: 26px; margin-right: -14px; background-position: right bottom; background-repeat: no-repeat; box-shadow: none; }
+
+-scale.vertical.marks-after.fine-tune:not(.marks-before) slider { margin: -7px; margin-right: -11px; }
++scale.vertical.marks-after:not(.marks-before).fine-tune slider { margin: -7px; margin-right: -11px; }
+
+ scale.vertical.marks-after:not(.marks-before) slider:backdrop:disabled { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-vert-scale-has-marks-below-backdrop-insensitive-dark.png"), url("assets/slider-vert-scale-has-marks-below-backdrop-insensitive-dark@2.png")); min-height: 22px; min-width: 26px; margin-right: -14px; background-position: right bottom; background-repeat: no-repeat; box-shadow: none; }
+
+-scale.vertical.marks-after.fine-tune:not(.marks-before) slider { margin: -7px; margin-right: -11px; }
++scale.vertical.marks-after:not(.marks-before).fine-tune slider { margin: -7px; margin-right: -11px; }
+
+ scale.color { min-height: 0; min-width: 0; }
+
+@@ -1548,7 +1548,7 @@ row.activatable:backdrop:hover { background-color: transparent; }
+
+ row.activatable:selected:active { box-shadow: inset 0 2px 3px -1px rgba(0, 0, 0, 0.5); }
+
+-row.activatable.has-open-popup:selected, row.activatable:selected:hover { background-color: #2b62a6; }
++row.activatable:selected.has-open-popup, row.activatable:selected:hover { background-color: #2b62a6; }
+
+ row.activatable:selected:backdrop { background-color: #15539e; }
+
+@@ -1619,9 +1619,9 @@ filechooserbutton:drop(active) { box-shadow: none; border-color: transparent; }
+ /*********** Sidebar * */
+ .sidebar { border-style: none; background-color: #313131; }
+
+-stacksidebar.sidebar:dir(ltr) list, stacksidebar.sidebar.left list, stacksidebar.sidebar.left:dir(rtl) list, .sidebar:not(separator):dir(ltr), .sidebar.left:not(separator) { border-right: 1px solid #1b1b1b; border-left-style: none; }
++stacksidebar.sidebar:dir(ltr) list, stacksidebar.sidebar.left list, stacksidebar.sidebar.left:dir(rtl) list, .sidebar:not(separator):dir(ltr), .sidebar:not(separator).left { border-right: 1px solid #1b1b1b; border-left-style: none; }
+
+-stacksidebar.sidebar:dir(rtl) list, stacksidebar.sidebar.right list, .sidebar:not(separator):dir(rtl), .sidebar.right:not(separator) { border-left: 1px solid #1b1b1b; border-right-style: none; }
++stacksidebar.sidebar:dir(rtl) list, stacksidebar.sidebar.right list, .sidebar:not(separator):dir(rtl), .sidebar:not(separator).right { border-left: 1px solid #1b1b1b; border-right-style: none; }
+
+ .sidebar:backdrop { background-color: #323232; border-color: #202020; transition: 200ms ease-out; }
+
+@@ -1790,9 +1790,9 @@ colorswatch.light overlay:backdrop { color: rgba(0, 0, 0, 0.5); }
+
+ colorswatch:drop(active) { box-shadow: none; }
+
+-colorswatch.light:drop(active) overlay { border-color: #4e9a06; box-shadow: inset 0 0 0 2px #1b1b1b, inset 0 0 0 1px #4e9a06; }
++colorswatch:drop(active).light overlay { border-color: #4e9a06; box-shadow: inset 0 0 0 2px #1b1b1b, inset 0 0 0 1px #4e9a06; }
+
+-colorswatch.dark:drop(active) overlay { border-color: #4e9a06; box-shadow: inset 0 0 0 2px #1b1b1b, inset 0 0 0 1px #4e9a06; }
++colorswatch:drop(active).dark overlay { border-color: #4e9a06; box-shadow: inset 0 0 0 2px #1b1b1b, inset 0 0 0 1px #4e9a06; }
+
+ colorswatch overlay { border: 1px solid #1b1b1b; }
+
+@@ -1850,6 +1850,8 @@ decoration:backdrop { box-shadow: 0 3px 9px 1px transparent, 0 2px 6px 2px rgba(
+
+ .ssd decoration:backdrop { box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.75); }
+
++.ssd.maximized decoration, .ssd.maximized decoration:backdrop { box-shadow: none; }
++
+ .csd.popup decoration { border-radius: 5px; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2), 0 0 0 1px rgba(0, 0, 0, 0.65); }
+
+ tooltip.csd decoration { border-radius: 5px; box-shadow: none; }
+@@ -1870,9 +1872,9 @@ button.titlebutton:backdrop { -gtk-icon-shadow: none; }
+
+ .selection-mode headerbar button.titlebutton:backdrop, .selection-mode .titlebar button.titlebutton:backdrop, headerbar.selection-mode button.titlebutton:backdrop, .titlebar.selection-mode button.titlebutton:backdrop { -gtk-icon-shadow: none; }
+
+-.view:selected:focus, .view:selected, .view text:selected:focus, textview text:selected:focus, .view text:selected, textview text:selected, .view text selection:focus, .view text selection, textview text selection:focus, textview text selection, iconview:selected:focus, iconview:selected, iconview text selection:focus, .view text selection, iconview text selection, flowbox flowboxchild:selected, entry selection, modelbutton.flat:selected, .menuitem.button.flat:selected, spinbutton:not(.vertical) selection, treeview.view:selected:focus, treeview.view:selected, row:selected, calendar:selected { background-color: #15539e; }
++.view:selected:focus, .view:selected, .view text:selected:focus, textview text:selected:focus, .view text:selected, textview text:selected, .view text selection:focus, .view text selection, textview text selection:focus, textview text selection, iconview:selected:focus, iconview:selected, iconview text selection:focus, iconview text selection, flowbox flowboxchild:selected, entry selection, modelbutton.flat:selected, .menuitem.button.flat:selected, spinbutton:not(.vertical) selection, treeview.view:selected:focus, treeview.view:selected, row:selected, calendar:selected { background-color: #15539e; }
+
+-label:selected, .selection-mode button.titlebutton, .view:selected:focus, .view:selected, .view text:selected:focus, textview text:selected:focus, .view text:selected, textview text:selected, .view text selection:focus, .view text selection, textview text selection:focus, textview text selection, iconview:selected:focus, iconview:selected, iconview text selection:focus, .view text selection, iconview text selection, flowbox flowboxchild:selected, entry selection, modelbutton.flat:selected, .menuitem.button.flat:selected, spinbutton:not(.vertical) selection, treeview.view:selected:focus, treeview.view:selected, row:selected, calendar:selected { color: #ffffff; }
++label:selected, .selection-mode button.titlebutton, .view:selected:focus, .view:selected, .view text:selected:focus, textview text:selected:focus, .view text:selected, textview text:selected, .view text selection:focus, .view text selection, textview text selection:focus, textview text selection, iconview:selected:focus, iconview:selected, iconview text selection:focus, iconview text selection, flowbox flowboxchild:selected, entry selection, modelbutton.flat:selected, .menuitem.button.flat:selected, spinbutton:not(.vertical) selection, treeview.view:selected:focus, treeview.view:selected, row:selected, calendar:selected { color: #ffffff; }
+
+ label:disabled selection, label:disabled:selected, .selection-mode button.titlebutton:disabled, .view:disabled:selected, textview text:disabled:selected:focus, .view text:disabled:selected, textview text:disabled:selected, .view text selection:disabled, textview text selection:disabled:focus, textview text selection:disabled, iconview:disabled:selected:focus, iconview:disabled:selected, iconview text selection:disabled:focus, iconview text selection:disabled, flowbox flowboxchild:disabled:selected, entry selection:disabled, modelbutton.flat:disabled:selected, .menuitem.button.flat:disabled:selected, spinbutton:not(.vertical) selection:disabled, treeview.view:disabled:selected, row:disabled:selected, calendar:disabled:selected { color: #8aa9ce; }
+
+diff --git a/gtk/theme/Adwaita/gtk-contained.css b/gtk/theme/Adwaita/gtk-contained.css
+index 729b1fc8f0..892a9e6b83 100644
+--- a/gtk/theme/Adwaita/gtk-contained.css
++++ b/gtk/theme/Adwaita/gtk-contained.css
+@@ -19,7 +19,7 @@
+
+ .gtkstyle-fallback:selected { color: #ffffff; background-color: #3584e4; }
+
+-.view, iconview, .view text, iconview text, textview text { color: black; background-color: #ffffff; }
++.view, iconview, .view text, iconview text, textview text { color: black; caret-color: #0d0d0d; background-color: #ffffff; }
+
+ .view:backdrop, iconview:backdrop, .view text:backdrop, iconview text:backdrop, textview text:backdrop { color: #323232; background-color: #fcfcfc; }
+
+@@ -162,7 +162,7 @@ spinbutton:not(.vertical) progress:backdrop, entry progress:backdrop { backgroun
+
+ .linked:not(.vertical) > spinbutton:focus:not(.vertical) + spinbutton:not(.vertical), .linked:not(.vertical) > spinbutton:focus:not(.vertical) + button, .linked:not(.vertical) > spinbutton:focus:not(.vertical) + combobox > box > button.combo, .linked:not(.vertical) > spinbutton:focus:not(.vertical) + entry, .linked:not(.vertical) > entry:focus + button, .linked:not(.vertical) > entry:focus + combobox > box > button.combo, .linked:not(.vertical) > entry:focus + spinbutton:not(.vertical), .linked:not(.vertical) > entry:focus + entry { border-left-color: #3584e4; }
+
+-.linked:not(.vertical) > spinbutton.error:focus:not(.vertical) + spinbutton:not(.vertical), .linked:not(.vertical) > spinbutton.error:focus:not(.vertical) + button, .linked:not(.vertical) > spinbutton.error:focus:not(.vertical) + combobox > box > button.combo, .linked:not(.vertical) > spinbutton.error:focus:not(.vertical) + entry, .linked:not(.vertical) > entry.error:focus + button, .linked:not(.vertical) > entry.error:focus + combobox > box > button.combo, .linked:not(.vertical) > entry.error:focus + spinbutton:not(.vertical), .linked:not(.vertical) > entry.error:focus + entry { border-left-color: #cc0000; }
++.linked:not(.vertical) > spinbutton:focus.error:not(.vertical) + spinbutton:not(.vertical), .linked:not(.vertical) > spinbutton:focus.error:not(.vertical) + button, .linked:not(.vertical) > spinbutton:focus.error:not(.vertical) + combobox > box > button.combo, .linked:not(.vertical) > spinbutton:focus.error:not(.vertical) + entry, .linked:not(.vertical) > entry:focus.error + button, .linked:not(.vertical) > entry:focus.error + combobox > box > button.combo, .linked:not(.vertical) > entry:focus.error + spinbutton:not(.vertical), .linked:not(.vertical) > entry:focus.error + entry { border-left-color: #cc0000; }
+
+ .linked:not(.vertical) > spinbutton:drop(active):not(.vertical) + spinbutton:not(.vertical), .linked:not(.vertical) > spinbutton:drop(active):not(.vertical) + button, .linked:not(.vertical) > spinbutton:drop(active):not(.vertical) + combobox > box > button.combo, .linked:not(.vertical) > spinbutton:drop(active):not(.vertical) + entry, .linked:not(.vertical) > entry:drop(active) + button, .linked:not(.vertical) > entry:drop(active) + combobox > box > button.combo, .linked:not(.vertical) > entry:drop(active) + spinbutton:not(.vertical), .linked:not(.vertical) > entry:drop(active) + entry { border-left-color: #4e9a06; }
+
+@@ -174,13 +174,13 @@ spinbutton:not(.vertical) progress:backdrop, entry progress:backdrop { backgroun
+
+ .linked.vertical > spinbutton:not(.vertical) + spinbutton:focus:not(:only-child):not(.vertical), .linked.vertical > spinbutton:not(.vertical) + entry:focus:not(:only-child), .linked.vertical > entry + spinbutton:focus:not(:only-child):not(.vertical), .linked.vertical > entry + entry:focus:not(:only-child) { border-top-color: #3584e4; }
+
+-.linked.vertical > spinbutton:not(.vertical) + spinbutton.error:focus:not(:only-child):not(.vertical), .linked.vertical > spinbutton:not(.vertical) + entry.error:focus:not(:only-child), .linked.vertical > entry + spinbutton.error:focus:not(:only-child):not(.vertical), .linked.vertical > entry + entry.error:focus:not(:only-child) { border-top-color: #cc0000; }
++.linked.vertical > spinbutton:not(.vertical) + spinbutton:focus.error:not(:only-child):not(.vertical), .linked.vertical > spinbutton:not(.vertical) + entry:focus.error:not(:only-child), .linked.vertical > entry + spinbutton:focus.error:not(:only-child):not(.vertical), .linked.vertical > entry + entry:focus.error:not(:only-child) { border-top-color: #cc0000; }
+
+ .linked.vertical > spinbutton:not(.vertical) + spinbutton:drop(active):not(:only-child):not(.vertical), .linked.vertical > spinbutton:not(.vertical) + entry:drop(active):not(:only-child), .linked.vertical > entry + spinbutton:drop(active):not(:only-child):not(.vertical), .linked.vertical > entry + entry:drop(active):not(:only-child) { border-top-color: #4e9a06; }
+
+ .linked.vertical > spinbutton:focus:not(:only-child):not(.vertical) + spinbutton:not(.vertical), .linked.vertical > spinbutton:focus:not(:only-child):not(.vertical) + entry, .linked.vertical > spinbutton:focus:not(:only-child):not(.vertical) + button, .linked.vertical > spinbutton:focus:not(:only-child):not(.vertical) + combobox > box > button.combo, .linked.vertical > entry:focus:not(:only-child) + spinbutton:not(.vertical), .linked.vertical > entry:focus:not(:only-child) + entry, .linked.vertical > entry:focus:not(:only-child) + button, .linked.vertical > entry:focus:not(:only-child) + combobox > box > button.combo { border-top-color: #3584e4; }
+
+-.linked.vertical > spinbutton.error:focus:not(:only-child):not(.vertical) + spinbutton:not(.vertical), .linked.vertical > spinbutton.error:focus:not(:only-child):not(.vertical) + entry, .linked.vertical > spinbutton.error:focus:not(:only-child):not(.vertical) + button, .linked.vertical > spinbutton.error:focus:not(:only-child):not(.vertical) + combobox > box > button.combo, .linked.vertical > entry.error:focus:not(:only-child) + spinbutton:not(.vertical), .linked.vertical > entry.error:focus:not(:only-child) + entry, .linked.vertical > entry.error:focus:not(:only-child) + button, .linked.vertical > entry.error:focus:not(:only-child) + combobox > box > button.combo { border-top-color: #cc0000; }
++.linked.vertical > spinbutton:focus.error:not(:only-child):not(.vertical) + spinbutton:not(.vertical), .linked.vertical > spinbutton:focus.error:not(:only-child):not(.vertical) + entry, .linked.vertical > spinbutton:focus.error:not(:only-child):not(.vertical) + button, .linked.vertical > spinbutton:focus.error:not(:only-child):not(.vertical) + combobox > box > button.combo, .linked.vertical > entry:focus.error:not(:only-child) + spinbutton:not(.vertical), .linked.vertical > entry:focus.error:not(:only-child) + entry, .linked.vertical > entry:focus.error:not(:only-child) + button, .linked.vertical > entry:focus.error:not(:only-child) + combobox > box > button.combo { border-top-color: #cc0000; }
+
+ .linked.vertical > spinbutton:drop(active):not(:only-child):not(.vertical) + spinbutton:not(.vertical), .linked.vertical > spinbutton:drop(active):not(:only-child):not(.vertical) + entry, .linked.vertical > spinbutton:drop(active):not(:only-child):not(.vertical) + button, .linked.vertical > spinbutton:drop(active):not(:only-child):not(.vertical) + combobox > box > button.combo, .linked.vertical > entry:drop(active):not(:only-child) + spinbutton:not(.vertical), .linked.vertical > entry:drop(active):not(:only-child) + entry, .linked.vertical > entry:drop(active):not(:only-child) + button, .linked.vertical > entry:drop(active):not(:only-child) + combobox > box > button.combo { border-top-color: #4e9a06; }
+
+@@ -224,13 +224,13 @@ notebook > header > tabs > arrow:hover, button:hover { color: #2e3436; outline-c
+
+ notebook > header > tabs > arrow:active, notebook > header > tabs > arrow:checked, button:active, button:checked { color: #2e3436; outline-color: rgba(46, 52, 54, 0.3); border-color: #cdc7c2; background-image: image(#d6d1cd); box-shadow: inset 0 1px rgba(255, 255, 255, 0); text-shadow: none; -gtk-icon-shadow: none; transition-duration: 50ms; }
+
+-notebook > header > tabs > arrow:backdrop, button.flat:backdrop, button:backdrop { color: #929595; border-color: #d5d0cc; background-image: image(#f6f5f4); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); transition: 200ms ease-out; -gtk-icon-effect: none; }
++notebook > header > tabs > arrow:backdrop, button:backdrop.flat, button:backdrop { color: #929595; border-color: #d5d0cc; background-image: image(#f6f5f4); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); transition: 200ms ease-out; -gtk-icon-effect: none; }
+
+-notebook > header > tabs > arrow:backdrop:active, notebook > header > tabs > arrow:backdrop:checked, button.flat:backdrop:active, button.flat:backdrop:checked, button:backdrop:active, button:backdrop:checked { color: #929595; border-color: #d5d0cc; background-image: image(#e4e4e0); box-shadow: inset 0 1px rgba(255, 255, 255, 0); }
++notebook > header > tabs > arrow:backdrop:active, notebook > header > tabs > arrow:backdrop:checked, button:backdrop.flat:active, button:backdrop.flat:checked, button:backdrop:active, button:backdrop:checked { color: #929595; border-color: #d5d0cc; background-image: image(#e4e4e0); box-shadow: inset 0 1px rgba(255, 255, 255, 0); }
+
+-notebook > header > tabs > arrow:backdrop:disabled, button.flat:backdrop:disabled, button:backdrop:disabled { color: #d4cfca; border-color: #d5d0cc; background-image: image(#faf9f8); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); }
++notebook > header > tabs > arrow:backdrop:disabled, button:backdrop.flat:disabled, button:backdrop:disabled { color: #d4cfca; border-color: #d5d0cc; background-image: image(#faf9f8); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); }
+
+-notebook > header > tabs > arrow:backdrop:disabled:active, notebook > header > tabs > arrow:backdrop:disabled:checked, button.flat:backdrop:disabled:active, button.flat:backdrop:disabled:checked, button:backdrop:disabled:active, button:backdrop:disabled:checked { color: #d4cfca; border-color: #d5d0cc; background-image: image(#e4e4e0); box-shadow: inset 0 1px rgba(255, 255, 255, 0); }
++notebook > header > tabs > arrow:backdrop:disabled:active, notebook > header > tabs > arrow:backdrop:disabled:checked, button:backdrop.flat:disabled:active, button:backdrop.flat:disabled:checked, button:backdrop:disabled:active, button:backdrop:disabled:checked { color: #d4cfca; border-color: #d5d0cc; background-image: image(#e4e4e0); box-shadow: inset 0 1px rgba(255, 255, 255, 0); }
+
+ button.titlebutton:backdrop, button.sidebar-button:backdrop, notebook > header > tabs > arrow:backdrop, button.titlebutton:disabled, button.sidebar-button:disabled, notebook > header > tabs > arrow:disabled, button.flat:backdrop, button.flat:disabled, button.flat:backdrop:disabled { border-color: transparent; background-color: transparent; background-image: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); text-shadow: none; -gtk-icon-shadow: none; }
+
+@@ -606,11 +606,11 @@ searchbar > revealer > box { margin: -6px; padding: 6px; }
+
+ .selection-mode .titlebar:not(headerbar) button:active, .selection-mode .titlebar:not(headerbar) button:checked, .selection-mode.titlebar:not(headerbar) button:active, .selection-mode.titlebar:not(headerbar) button:checked, .selection-mode headerbar button:active, .selection-mode headerbar button:checked, .selection-mode headerbar button.toggle:checked, .selection-mode headerbar button.toggle:active, headerbar.selection-mode button:active, headerbar.selection-mode button:checked, headerbar.selection-mode button.toggle:checked, headerbar.selection-mode button.toggle:active { color: #ffffff; outline-color: rgba(255, 255, 255, 0.3); border-color: #1b6acb; background-image: image(#1961b9); box-shadow: inset 0 1px rgba(255, 255, 255, 0); text-shadow: none; -gtk-icon-shadow: none; }
+
+-.selection-mode .titlebar:not(headerbar) button:backdrop, .selection-mode.titlebar:not(headerbar) button:backdrop, .selection-mode headerbar button.flat:backdrop, .selection-mode headerbar button:backdrop, headerbar.selection-mode button.flat:backdrop, headerbar.selection-mode button:backdrop { color: #d7e6fa; border-color: #3584e4; background-image: image(#3584e4); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); -gtk-icon-effect: none; border-color: #185fb4; }
++.selection-mode .titlebar:not(headerbar) button:backdrop, .selection-mode.titlebar:not(headerbar) button:backdrop, .selection-mode headerbar button:backdrop.flat, .selection-mode headerbar button:backdrop, headerbar.selection-mode button:backdrop.flat, headerbar.selection-mode button:backdrop { color: #d7e6fa; border-color: #3584e4; background-image: image(#3584e4); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); -gtk-icon-effect: none; border-color: #185fb4; }
+
+-.selection-mode .titlebar:not(headerbar) button:backdrop:active, .selection-mode .titlebar:not(headerbar) button:backdrop:checked, .selection-mode.titlebar:not(headerbar) button:backdrop:active, .selection-mode.titlebar:not(headerbar) button:backdrop:checked, .selection-mode headerbar button.flat:backdrop:active, .selection-mode headerbar button.flat:backdrop:checked, .selection-mode headerbar button:backdrop:active, .selection-mode headerbar button:backdrop:checked, headerbar.selection-mode button.flat:backdrop:active, headerbar.selection-mode button.flat:backdrop:checked, headerbar.selection-mode button:backdrop:active, headerbar.selection-mode button:backdrop:checked { color: #d5e6f9; border-color: #2f80e3; background-image: image(#2f80e3); box-shadow: inset 0 1px rgba(255, 255, 255, 0); border-color: #185fb4; }
++.selection-mode .titlebar:not(headerbar) button:backdrop:active, .selection-mode .titlebar:not(headerbar) button:backdrop:checked, .selection-mode.titlebar:not(headerbar) button:backdrop:active, .selection-mode.titlebar:not(headerbar) button:backdrop:checked, .selection-mode headerbar button:backdrop.flat:active, .selection-mode headerbar button:backdrop.flat:checked, .selection-mode headerbar button:backdrop:active, .selection-mode headerbar button:backdrop:checked, headerbar.selection-mode button:backdrop.flat:active, headerbar.selection-mode button:backdrop.flat:checked, headerbar.selection-mode button:backdrop:active, headerbar.selection-mode button:backdrop:checked { color: #d5e6f9; border-color: #2f80e3; background-image: image(#2f80e3); box-shadow: inset 0 1px rgba(255, 255, 255, 0); border-color: #185fb4; }
+
+-.selection-mode .titlebar:not(headerbar) button:backdrop:disabled, .selection-mode.titlebar:not(headerbar) button:backdrop:disabled, .selection-mode headerbar button.flat:backdrop:disabled, .selection-mode headerbar button:backdrop:disabled, headerbar.selection-mode button.flat:backdrop:disabled, headerbar.selection-mode button:backdrop:disabled { color: #8fbbf0; border-color: #5396e8; background-image: image(#5396e8); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); border-color: #185fb4; }
++.selection-mode .titlebar:not(headerbar) button:backdrop:disabled, .selection-mode.titlebar:not(headerbar) button:backdrop:disabled, .selection-mode headerbar button:backdrop.flat:disabled, .selection-mode headerbar button:backdrop:disabled, headerbar.selection-mode button:backdrop.flat:disabled, headerbar.selection-mode button:backdrop:disabled { color: #8fbbf0; border-color: #5396e8; background-image: image(#5396e8); text-shadow: none; -gtk-icon-shadow: none; box-shadow: inset 0 1px rgba(255, 255, 255, 0); border-color: #185fb4; }
+
+ .selection-mode .titlebar:not(headerbar) button:backdrop:disabled:active, .selection-mode .titlebar:not(headerbar) button:backdrop:disabled:checked, .selection-mode.titlebar:not(headerbar) button:backdrop:disabled:active, .selection-mode.titlebar:not(headerbar) button:backdrop:disabled:checked, .selection-mode headerbar button:backdrop:disabled:active, .selection-mode headerbar button:backdrop:disabled:checked, headerbar.selection-mode button:backdrop:disabled:active, headerbar.selection-mode button:backdrop:disabled:checked { color: #78aced; border-color: #2f80e3; background-image: image(#2f80e3); box-shadow: inset 0 1px rgba(255, 255, 255, 0); border-color: #185fb4; }
+
+@@ -640,9 +640,9 @@ searchbar > revealer > box { margin: -6px; padding: 6px; }
+
+ .tiled .titlebar:not(headerbar), .tiled-top .titlebar:not(headerbar), .tiled-right .titlebar:not(headerbar), .tiled-bottom .titlebar:not(headerbar), .tiled-left .titlebar:not(headerbar), .maximized .titlebar:not(headerbar), .fullscreen .titlebar:not(headerbar), .tiled headerbar, .tiled-top headerbar, .tiled-right headerbar, .tiled-bottom headerbar, .tiled-left headerbar, .maximized headerbar, .fullscreen headerbar { border-radius: 0; }
+
+-.default-decoration.titlebar:not(headerbar), headerbar.default-decoration { min-height: 28px; padding: 4px; }
++.default-decoration.titlebar:not(headerbar), headerbar.default-decoration { padding: 0px 2px; min-height: 0; }
+
+-.default-decoration.titlebar:not(headerbar) button.titlebutton, headerbar.default-decoration button.titlebutton { min-height: 26px; min-width: 26px; margin: 0; padding: 0; }
++.default-decoration.titlebar:not(headerbar) button.titlebutton, headerbar.default-decoration button.titlebutton { min-height: 18px; min-width: 18px; margin: 0; padding: 0; }
+
+ .titlebar:not(headerbar) separator.titlebutton, headerbar separator.titlebutton { opacity: 0; }
+
+@@ -712,9 +712,9 @@ treeview.view:backdrop { border-left-color: #c4c5c5; border-top: #f6f5f4; }
+
+ treeview.view:drop(active) { border-style: solid none; border-width: 1px; border-color: #185fb4; }
+
+-treeview.view.after:drop(active) { border-top-style: none; }
++treeview.view:drop(active).after { border-top-style: none; }
+
+-treeview.view.before:drop(active) { border-bottom-style: none; }
++treeview.view:drop(active).before { border-bottom-style: none; }
+
+ treeview.view.expander { -gtk-icon-source: -gtk-icontheme("pan-end-symbolic"); color: #4d4d4d; }
+
+@@ -919,21 +919,21 @@ notebook > header tab { min-height: 30px; min-width: 30px; padding: 3px 12px; ou
+
+ notebook > header tab:hover { color: #2e3436; background-color: #edebe9; }
+
+-notebook > header tab.reorderable-page:hover { border-color: rgba(205, 199, 194, 0.3); background-color: rgba(246, 245, 244, 0.2); }
++notebook > header tab:hover.reorderable-page { border-color: rgba(205, 199, 194, 0.3); background-color: rgba(246, 245, 244, 0.2); }
+
+ notebook > header tab:backdrop { color: #babbbb; }
+
+-notebook > header tab.reorderable-page:backdrop { border-color: transparent; background-color: transparent; }
++notebook > header tab:backdrop.reorderable-page { border-color: transparent; background-color: transparent; }
+
+ notebook > header tab:checked { color: #2e3436; }
+
+-notebook > header tab.reorderable-page:checked { border-color: rgba(205, 199, 194, 0.5); background-color: rgba(246, 245, 244, 0.5); }
++notebook > header tab:checked.reorderable-page { border-color: rgba(205, 199, 194, 0.5); background-color: rgba(246, 245, 244, 0.5); }
+
+-notebook > header tab.reorderable-page:checked:hover { background-color: rgba(246, 245, 244, 0.7); }
++notebook > header tab:checked.reorderable-page:hover { background-color: rgba(246, 245, 244, 0.7); }
+
+ notebook > header tab:backdrop:checked { color: #929595; }
+
+-notebook > header tab.reorderable-page:backdrop:checked { border-color: #d5d0cc; background-color: #f6f5f4; }
++notebook > header tab:backdrop:checked.reorderable-page { border-color: #d5d0cc; background-color: #f6f5f4; }
+
+ notebook > header tab button.flat { padding: 0; margin-top: 4px; margin-bottom: 4px; min-width: 20px; min-height: 20px; }
+
+@@ -1014,13 +1014,13 @@ scrollbar.overlay-indicator:not(.dragging):not(.hovering) slider { margin: 0; mi
+
+ scrollbar.overlay-indicator:not(.dragging):not(.hovering) button { min-width: 5px; min-height: 5px; background-color: #2e3436; background-clip: padding-box; border-radius: 100%; border: 1px solid white; -gtk-icon-source: none; }
+
+-scrollbar.overlay-indicator.horizontal:not(.dragging):not(.hovering) slider { margin: 0 2px; min-width: 40px; }
++scrollbar.overlay-indicator:not(.dragging):not(.hovering).horizontal slider { margin: 0 2px; min-width: 40px; }
+
+-scrollbar.overlay-indicator.horizontal:not(.dragging):not(.hovering) button { margin: 1px 2px; min-width: 5px; }
++scrollbar.overlay-indicator:not(.dragging):not(.hovering).horizontal button { margin: 1px 2px; min-width: 5px; }
+
+-scrollbar.overlay-indicator.vertical:not(.dragging):not(.hovering) slider { margin: 2px 0; min-height: 40px; }
++scrollbar.overlay-indicator:not(.dragging):not(.hovering).vertical slider { margin: 2px 0; min-height: 40px; }
+
+-scrollbar.overlay-indicator.vertical:not(.dragging):not(.hovering) button { margin: 2px 1px; min-height: 5px; }
++scrollbar.overlay-indicator:not(.dragging):not(.hovering).vertical button { margin: 2px 1px; min-height: 5px; }
+
+ scrollbar.overlay-indicator.dragging, scrollbar.overlay-indicator.hovering { opacity: 0.8; }
+
+@@ -1301,99 +1301,99 @@ scale.vertical.fine-tune indicator { min-width: 3px; }
+
+ scale.horizontal.marks-before:not(.marks-after) slider { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-horz-scale-has-marks-above.png"), url("assets/slider-horz-scale-has-marks-above@2.png")); min-height: 26px; min-width: 22px; margin-top: -14px; background-position: top; background-repeat: no-repeat; box-shadow: none; }
+
+-scale.horizontal.marks-before.fine-tune:not(.marks-after) slider { margin: -7px; margin-top: -11px; }
++scale.horizontal.marks-before:not(.marks-after).fine-tune slider { margin: -7px; margin-top: -11px; }
+
+ scale.horizontal.marks-before:not(.marks-after) slider:hover { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-horz-scale-has-marks-above-hover.png"), url("assets/slider-horz-scale-has-marks-above-hover@2.png")); min-height: 26px; min-width: 22px; margin-top: -14px; background-position: top; background-repeat: no-repeat; box-shadow: none; }
+
+-scale.horizontal.marks-before.fine-tune:not(.marks-after) slider { margin: -7px; margin-top: -11px; }
++scale.horizontal.marks-before:not(.marks-after).fine-tune slider { margin: -7px; margin-top: -11px; }
+
+ scale.horizontal.marks-before:not(.marks-after) slider:active { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-horz-scale-has-marks-above-active.png"), url("assets/slider-horz-scale-has-marks-above-active@2.png")); min-height: 26px; min-width: 22px; margin-top: -14px; background-position: top; background-repeat: no-repeat; box-shadow: none; }
+
+-scale.horizontal.marks-before.fine-tune:not(.marks-after) slider { margin: -7px; margin-top: -11px; }
++scale.horizontal.marks-before:not(.marks-after).fine-tune slider { margin: -7px; margin-top: -11px; }
+
+ scale.horizontal.marks-before:not(.marks-after) slider:disabled { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-horz-scale-has-marks-above-insensitive.png"), url("assets/slider-horz-scale-has-marks-above-insensitive@2.png")); min-height: 26px; min-width: 22px; margin-top: -14px; background-position: top; background-repeat: no-repeat; box-shadow: none; }
+
+-scale.horizontal.marks-before.fine-tune:not(.marks-after) slider { margin: -7px; margin-top: -11px; }
++scale.horizontal.marks-before:not(.marks-after).fine-tune slider { margin: -7px; margin-top: -11px; }
+
+ scale.horizontal.marks-before:not(.marks-after) slider:backdrop { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-horz-scale-has-marks-above-backdrop.png"), url("assets/slider-horz-scale-has-marks-above-backdrop@2.png")); min-height: 26px; min-width: 22px; margin-top: -14px; background-position: top; background-repeat: no-repeat; box-shadow: none; }
+
+-scale.horizontal.marks-before.fine-tune:not(.marks-after) slider { margin: -7px; margin-top: -11px; }
++scale.horizontal.marks-before:not(.marks-after).fine-tune slider { margin: -7px; margin-top: -11px; }
+
+ scale.horizontal.marks-before:not(.marks-after) slider:backdrop:disabled { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-horz-scale-has-marks-above-backdrop-insensitive.png"), url("assets/slider-horz-scale-has-marks-above-backdrop-insensitive@2.png")); min-height: 26px; min-width: 22px; margin-top: -14px; background-position: top; background-repeat: no-repeat; box-shadow: none; }
+
+-scale.horizontal.marks-before.fine-tune:not(.marks-after) slider { margin: -7px; margin-top: -11px; }
++scale.horizontal.marks-before:not(.marks-after).fine-tune slider { margin: -7px; margin-top: -11px; }
+
+ scale.horizontal.marks-after:not(.marks-before) slider { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-horz-scale-has-marks-below.png"), url("assets/slider-horz-scale-has-marks-below@2.png")); min-height: 26px; min-width: 22px; margin-bottom: -14px; background-position: bottom; background-repeat: no-repeat; box-shadow: none; }
+
+-scale.horizontal.marks-after.fine-tune:not(.marks-before) slider { margin: -7px; margin-bottom: -11px; }
++scale.horizontal.marks-after:not(.marks-before).fine-tune slider { margin: -7px; margin-bottom: -11px; }
+
+ scale.horizontal.marks-after:not(.marks-before) slider:hover { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-horz-scale-has-marks-below-hover.png"), url("assets/slider-horz-scale-has-marks-below-hover@2.png")); min-height: 26px; min-width: 22px; margin-bottom: -14px; background-position: bottom; background-repeat: no-repeat; box-shadow: none; }
+
+-scale.horizontal.marks-after.fine-tune:not(.marks-before) slider { margin: -7px; margin-bottom: -11px; }
++scale.horizontal.marks-after:not(.marks-before).fine-tune slider { margin: -7px; margin-bottom: -11px; }
+
+ scale.horizontal.marks-after:not(.marks-before) slider:active { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-horz-scale-has-marks-below-active.png"), url("assets/slider-horz-scale-has-marks-below-active@2.png")); min-height: 26px; min-width: 22px; margin-bottom: -14px; background-position: bottom; background-repeat: no-repeat; box-shadow: none; }
+
+-scale.horizontal.marks-after.fine-tune:not(.marks-before) slider { margin: -7px; margin-bottom: -11px; }
++scale.horizontal.marks-after:not(.marks-before).fine-tune slider { margin: -7px; margin-bottom: -11px; }
+
+ scale.horizontal.marks-after:not(.marks-before) slider:disabled { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-horz-scale-has-marks-below-insensitive.png"), url("assets/slider-horz-scale-has-marks-below-insensitive@2.png")); min-height: 26px; min-width: 22px; margin-bottom: -14px; background-position: bottom; background-repeat: no-repeat; box-shadow: none; }
+
+-scale.horizontal.marks-after.fine-tune:not(.marks-before) slider { margin: -7px; margin-bottom: -11px; }
++scale.horizontal.marks-after:not(.marks-before).fine-tune slider { margin: -7px; margin-bottom: -11px; }
+
+ scale.horizontal.marks-after:not(.marks-before) slider:backdrop { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-horz-scale-has-marks-below-backdrop.png"), url("assets/slider-horz-scale-has-marks-below-backdrop@2.png")); min-height: 26px; min-width: 22px; margin-bottom: -14px; background-position: bottom; background-repeat: no-repeat; box-shadow: none; }
+
+-scale.horizontal.marks-after.fine-tune:not(.marks-before) slider { margin: -7px; margin-bottom: -11px; }
++scale.horizontal.marks-after:not(.marks-before).fine-tune slider { margin: -7px; margin-bottom: -11px; }
+
+ scale.horizontal.marks-after:not(.marks-before) slider:backdrop:disabled { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-horz-scale-has-marks-below-backdrop-insensitive.png"), url("assets/slider-horz-scale-has-marks-below-backdrop-insensitive@2.png")); min-height: 26px; min-width: 22px; margin-bottom: -14px; background-position: bottom; background-repeat: no-repeat; box-shadow: none; }
+
+-scale.horizontal.marks-after.fine-tune:not(.marks-before) slider { margin: -7px; margin-bottom: -11px; }
++scale.horizontal.marks-after:not(.marks-before).fine-tune slider { margin: -7px; margin-bottom: -11px; }
+
+ scale.vertical.marks-before:not(.marks-after) slider { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-vert-scale-has-marks-above.png"), url("assets/slider-vert-scale-has-marks-above@2.png")); min-height: 22px; min-width: 26px; margin-left: -14px; background-position: left bottom; background-repeat: no-repeat; box-shadow: none; }
+
+-scale.vertical.marks-before.fine-tune:not(.marks-after) slider { margin: -7px; margin-left: -11px; }
++scale.vertical.marks-before:not(.marks-after).fine-tune slider { margin: -7px; margin-left: -11px; }
+
+ scale.vertical.marks-before:not(.marks-after) slider:hover { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-vert-scale-has-marks-above-hover.png"), url("assets/slider-vert-scale-has-marks-above-hover@2.png")); min-height: 22px; min-width: 26px; margin-left: -14px; background-position: left bottom; background-repeat: no-repeat; box-shadow: none; }
+
+-scale.vertical.marks-before.fine-tune:not(.marks-after) slider { margin: -7px; margin-left: -11px; }
++scale.vertical.marks-before:not(.marks-after).fine-tune slider { margin: -7px; margin-left: -11px; }
+
+ scale.vertical.marks-before:not(.marks-after) slider:active { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-vert-scale-has-marks-above-active.png"), url("assets/slider-vert-scale-has-marks-above-active@2.png")); min-height: 22px; min-width: 26px; margin-left: -14px; background-position: left bottom; background-repeat: no-repeat; box-shadow: none; }
+
+-scale.vertical.marks-before.fine-tune:not(.marks-after) slider { margin: -7px; margin-left: -11px; }
++scale.vertical.marks-before:not(.marks-after).fine-tune slider { margin: -7px; margin-left: -11px; }
+
+ scale.vertical.marks-before:not(.marks-after) slider:disabled { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-vert-scale-has-marks-above-insensitive.png"), url("assets/slider-vert-scale-has-marks-above-insensitive@2.png")); min-height: 22px; min-width: 26px; margin-left: -14px; background-position: left bottom; background-repeat: no-repeat; box-shadow: none; }
+
+-scale.vertical.marks-before.fine-tune:not(.marks-after) slider { margin: -7px; margin-left: -11px; }
++scale.vertical.marks-before:not(.marks-after).fine-tune slider { margin: -7px; margin-left: -11px; }
+
+ scale.vertical.marks-before:not(.marks-after) slider:backdrop { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-vert-scale-has-marks-above-backdrop.png"), url("assets/slider-vert-scale-has-marks-above-backdrop@2.png")); min-height: 22px; min-width: 26px; margin-left: -14px; background-position: left bottom; background-repeat: no-repeat; box-shadow: none; }
+
+-scale.vertical.marks-before.fine-tune:not(.marks-after) slider { margin: -7px; margin-left: -11px; }
++scale.vertical.marks-before:not(.marks-after).fine-tune slider { margin: -7px; margin-left: -11px; }
+
+ scale.vertical.marks-before:not(.marks-after) slider:backdrop:disabled { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-vert-scale-has-marks-above-backdrop-insensitive.png"), url("assets/slider-vert-scale-has-marks-above-backdrop-insensitive@2.png")); min-height: 22px; min-width: 26px; margin-left: -14px; background-position: left bottom; background-repeat: no-repeat; box-shadow: none; }
+
+-scale.vertical.marks-before.fine-tune:not(.marks-after) slider { margin: -7px; margin-left: -11px; }
++scale.vertical.marks-before:not(.marks-after).fine-tune slider { margin: -7px; margin-left: -11px; }
+
+ scale.vertical.marks-after:not(.marks-before) slider { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-vert-scale-has-marks-below.png"), url("assets/slider-vert-scale-has-marks-below@2.png")); min-height: 22px; min-width: 26px; margin-right: -14px; background-position: right bottom; background-repeat: no-repeat; box-shadow: none; }
+
+-scale.vertical.marks-after.fine-tune:not(.marks-before) slider { margin: -7px; margin-right: -11px; }
++scale.vertical.marks-after:not(.marks-before).fine-tune slider { margin: -7px; margin-right: -11px; }
+
+ scale.vertical.marks-after:not(.marks-before) slider:hover { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-vert-scale-has-marks-below-hover.png"), url("assets/slider-vert-scale-has-marks-below-hover@2.png")); min-height: 22px; min-width: 26px; margin-right: -14px; background-position: right bottom; background-repeat: no-repeat; box-shadow: none; }
+
+-scale.vertical.marks-after.fine-tune:not(.marks-before) slider { margin: -7px; margin-right: -11px; }
++scale.vertical.marks-after:not(.marks-before).fine-tune slider { margin: -7px; margin-right: -11px; }
+
+ scale.vertical.marks-after:not(.marks-before) slider:active { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-vert-scale-has-marks-below-active.png"), url("assets/slider-vert-scale-has-marks-below-active@2.png")); min-height: 22px; min-width: 26px; margin-right: -14px; background-position: right bottom; background-repeat: no-repeat; box-shadow: none; }
+
+-scale.vertical.marks-after.fine-tune:not(.marks-before) slider { margin: -7px; margin-right: -11px; }
++scale.vertical.marks-after:not(.marks-before).fine-tune slider { margin: -7px; margin-right: -11px; }
+
+ scale.vertical.marks-after:not(.marks-before) slider:disabled { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-vert-scale-has-marks-below-insensitive.png"), url("assets/slider-vert-scale-has-marks-below-insensitive@2.png")); min-height: 22px; min-width: 26px; margin-right: -14px; background-position: right bottom; background-repeat: no-repeat; box-shadow: none; }
+
+-scale.vertical.marks-after.fine-tune:not(.marks-before) slider { margin: -7px; margin-right: -11px; }
++scale.vertical.marks-after:not(.marks-before).fine-tune slider { margin: -7px; margin-right: -11px; }
+
+ scale.vertical.marks-after:not(.marks-before) slider:backdrop { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-vert-scale-has-marks-below-backdrop.png"), url("assets/slider-vert-scale-has-marks-below-backdrop@2.png")); min-height: 22px; min-width: 26px; margin-right: -14px; background-position: right bottom; background-repeat: no-repeat; box-shadow: none; }
+
+-scale.vertical.marks-after.fine-tune:not(.marks-before) slider { margin: -7px; margin-right: -11px; }
++scale.vertical.marks-after:not(.marks-before).fine-tune slider { margin: -7px; margin-right: -11px; }
+
+ scale.vertical.marks-after:not(.marks-before) slider:backdrop:disabled { margin: -10px; border-style: none; border-radius: 0; background-color: transparent; background-image: -gtk-scaled(url("assets/slider-vert-scale-has-marks-below-backdrop-insensitive.png"), url("assets/slider-vert-scale-has-marks-below-backdrop-insensitive@2.png")); min-height: 22px; min-width: 26px; margin-right: -14px; background-position: right bottom; background-repeat: no-repeat; box-shadow: none; }
+
+-scale.vertical.marks-after.fine-tune:not(.marks-before) slider { margin: -7px; margin-right: -11px; }
++scale.vertical.marks-after:not(.marks-before).fine-tune slider { margin: -7px; margin-right: -11px; }
+
+ scale.color { min-height: 0; min-width: 0; }
+
+@@ -1564,7 +1564,7 @@ row.activatable:backdrop:hover { background-color: transparent; }
+
+ row.activatable:selected:active { box-shadow: inset 0 2px 3px -1px rgba(0, 0, 0, 0.5); }
+
+-row.activatable.has-open-popup:selected, row.activatable:selected:hover { background-color: #347cd3; }
++row.activatable:selected.has-open-popup, row.activatable:selected:hover { background-color: #347cd3; }
+
+ row.activatable:selected:backdrop { background-color: #3584e4; }
+
+@@ -1635,9 +1635,9 @@ filechooserbutton:drop(active) { box-shadow: none; border-color: transparent; }
+ /*********** Sidebar * */
+ .sidebar { border-style: none; background-color: #fbfafa; }
+
+-stacksidebar.sidebar:dir(ltr) list, stacksidebar.sidebar.left list, stacksidebar.sidebar.left:dir(rtl) list, .sidebar:not(separator):dir(ltr), .sidebar.left:not(separator) { border-right: 1px solid #cdc7c2; border-left-style: none; }
++stacksidebar.sidebar:dir(ltr) list, stacksidebar.sidebar.left list, stacksidebar.sidebar.left:dir(rtl) list, .sidebar:not(separator):dir(ltr), .sidebar:not(separator).left { border-right: 1px solid #cdc7c2; border-left-style: none; }
+
+-stacksidebar.sidebar:dir(rtl) list, stacksidebar.sidebar.right list, .sidebar:not(separator):dir(rtl), .sidebar.right:not(separator) { border-left: 1px solid #cdc7c2; border-right-style: none; }
++stacksidebar.sidebar:dir(rtl) list, stacksidebar.sidebar.right list, .sidebar:not(separator):dir(rtl), .sidebar:not(separator).right { border-left: 1px solid #cdc7c2; border-right-style: none; }
+
+ .sidebar:backdrop { background-color: #f9f9f8; border-color: #d5d0cc; transition: 200ms ease-out; }
+
+@@ -1806,9 +1806,9 @@ colorswatch.light overlay:backdrop { color: rgba(0, 0, 0, 0.5); }
+
+ colorswatch:drop(active) { box-shadow: none; }
+
+-colorswatch.light:drop(active) overlay { border-color: #4e9a06; box-shadow: inset 0 0 0 2px #3d7805, inset 0 0 0 1px #4e9a06; }
++colorswatch:drop(active).light overlay { border-color: #4e9a06; box-shadow: inset 0 0 0 2px #3d7805, inset 0 0 0 1px #4e9a06; }
+
+-colorswatch.dark:drop(active) overlay { border-color: #4e9a06; box-shadow: inset 0 0 0 2px rgba(0, 0, 0, 0.3), inset 0 0 0 1px #4e9a06; }
++colorswatch:drop(active).dark overlay { border-color: #4e9a06; box-shadow: inset 0 0 0 2px rgba(0, 0, 0, 0.3), inset 0 0 0 1px #4e9a06; }
+
+ colorswatch overlay { border: 1px solid rgba(0, 0, 0, 0.3); }
+
+@@ -1856,7 +1856,7 @@ decoration:backdrop { box-shadow: 0 3px 9px 1px transparent, 0 2px 6px 2px rgba(
+
+ .maximized decoration, .fullscreen decoration { border-radius: 0; box-shadow: none; }
+
+-.tiled decoration, .tiled-top decoration, .tiled-right decoration, .tiled-bottom decoration, .tiled-left decoration { border-radius: 0; box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.18), 0 0 0 20px transparent; }
++.tiled decoration, .tiled-top decoration, .tiled-right decoration, .tiled-bottom decoration, .tiled-left decoration { border-radius: 0; box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.23), 0 0 0 20px transparent; }
+
+ .tiled decoration:backdrop, .tiled-top decoration:backdrop, .tiled-right decoration:backdrop, .tiled-bottom decoration:backdrop, .tiled-left decoration:backdrop { box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.18), 0 0 0 20px transparent; }
+
+@@ -1866,6 +1866,8 @@ decoration:backdrop { box-shadow: 0 3px 9px 1px transparent, 0 2px 6px 2px rgba(
+
+ .ssd decoration:backdrop { box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.18); }
+
++.ssd.maximized decoration, .ssd.maximized decoration:backdrop { box-shadow: none; }
++
+ .csd.popup decoration { border-radius: 5px; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2), 0 0 0 1px rgba(0, 0, 0, 0.13); }
+
+ tooltip.csd decoration { border-radius: 5px; box-shadow: none; }
+@@ -1886,9 +1888,9 @@ button.titlebutton:backdrop { -gtk-icon-shadow: none; }
+
+ .selection-mode headerbar button.titlebutton:backdrop, .selection-mode .titlebar button.titlebutton:backdrop, headerbar.selection-mode button.titlebutton:backdrop, .titlebar.selection-mode button.titlebutton:backdrop { -gtk-icon-shadow: none; }
+
+-.view:selected:focus, .view:selected, .view text:selected:focus, textview text:selected:focus, .view text:selected, textview text:selected, .view text selection:focus, .view text selection, textview text selection:focus, textview text selection, iconview:selected:focus, iconview:selected, iconview text selection:focus, .view text selection, iconview text selection, flowbox flowboxchild:selected, entry selection, modelbutton.flat:selected, .menuitem.button.flat:selected, spinbutton:not(.vertical) selection, treeview.view:selected:focus, treeview.view:selected, row:selected, calendar:selected { background-color: #3584e4; }
++.view:selected:focus, .view:selected, .view text:selected:focus, textview text:selected:focus, .view text:selected, textview text:selected, .view text selection:focus, .view text selection, textview text selection:focus, textview text selection, iconview:selected:focus, iconview:selected, iconview text selection:focus, iconview text selection, flowbox flowboxchild:selected, entry selection, modelbutton.flat:selected, .menuitem.button.flat:selected, spinbutton:not(.vertical) selection, treeview.view:selected:focus, treeview.view:selected, row:selected, calendar:selected { background-color: #3584e4; }
+
+-label:selected, .selection-mode button.titlebutton, .view:selected:focus, .view:selected, .view text:selected:focus, textview text:selected:focus, .view text:selected, textview text:selected, .view text selection:focus, .view text selection, textview text selection:focus, textview text selection, iconview:selected:focus, iconview:selected, iconview text selection:focus, .view text selection, iconview text selection, flowbox flowboxchild:selected, entry selection, modelbutton.flat:selected, .menuitem.button.flat:selected, spinbutton:not(.vertical) selection, treeview.view:selected:focus, treeview.view:selected, row:selected, calendar:selected { color: #ffffff; }
++label:selected, .selection-mode button.titlebutton, .view:selected:focus, .view:selected, .view text:selected:focus, textview text:selected:focus, .view text:selected, textview text:selected, .view text selection:focus, .view text selection, textview text selection:focus, textview text selection, iconview:selected:focus, iconview:selected, iconview text selection:focus, iconview text selection, flowbox flowboxchild:selected, entry selection, modelbutton.flat:selected, .menuitem.button.flat:selected, spinbutton:not(.vertical) selection, treeview.view:selected:focus, treeview.view:selected, row:selected, calendar:selected { color: #ffffff; }
+
+ label:disabled selection, label:disabled:selected, .selection-mode button.titlebutton:disabled, .view:disabled:selected, textview text:disabled:selected:focus, .view text:disabled:selected, textview text:disabled:selected, .view text selection:disabled, textview text selection:disabled:focus, textview text selection:disabled, iconview:disabled:selected:focus, iconview:disabled:selected, iconview text selection:disabled:focus, iconview text selection:disabled, flowbox flowboxchild:disabled:selected, entry selection:disabled, modelbutton.flat:disabled:selected, .menuitem.button.flat:disabled:selected, spinbutton:not(.vertical) selection:disabled, treeview.view:disabled:selected, row:disabled:selected, calendar:disabled:selected { color: #9ac2f2; }
+
+--
+2.45.0
+
diff --git a/gtk3-3.24.30-entry-no-emoji-context-menu.patch b/gtk3-3.24.30-entry-no-emoji-context-menu.patch
new file mode 100644
index 0000000..162e2a5
--- /dev/null
+++ b/gtk3-3.24.30-entry-no-emoji-context-menu.patch
@@ -0,0 +1,41 @@
+From 12a00f024c16a4540d5f457389fada2a4886d884 Mon Sep 17 00:00:00 2001
+From: Matthias Clasen <mclasen@redhat.com>
+Date: Tue, 25 May 2021 16:07:58 -0400
+Subject: [PATCH] entry: Only offer Emoji if requested
+
+Only offer the "Insert Emoji" context menu when input
+hints explicitly suggest supporting Emoji.
+---
+ gtk/gtkentry.c | 2 +-
+ gtk/gtktextview.c | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/gtk/gtkentry.c b/gtk/gtkentry.c
+index a01684101f..1f5a790ccc 100644
+--- a/gtk/gtkentry.c
++++ b/gtk/gtkentry.c
+@@ -9591,7 +9591,7 @@ popup_targets_received (GtkClipboard *clipboard,
+ gtk_menu_shell_append (GTK_MENU_SHELL (menu), menuitem);
+
+ if (info_entry_priv->show_emoji_icon ||
+- (gtk_entry_get_input_hints (entry) & GTK_INPUT_HINT_NO_EMOJI) == 0)
++ (gtk_entry_get_input_hints (entry) & GTK_INPUT_HINT_EMOJI) != 0)
+ {
+ menuitem = gtk_menu_item_new_with_mnemonic (_("Insert _Emoji"));
+ gtk_widget_set_sensitive (menuitem,
+diff --git a/gtk/gtktextview.c b/gtk/gtktextview.c
+index e0b1e20e87..eb53843fa6 100644
+--- a/gtk/gtktextview.c
++++ b/gtk/gtktextview.c
+@@ -9521,7 +9521,7 @@ popup_targets_received (GtkClipboard *clipboard,
+ gtk_widget_show (menuitem);
+ gtk_menu_shell_append (GTK_MENU_SHELL (priv->popup_menu), menuitem);
+
+- if ((gtk_text_view_get_input_hints (text_view) & GTK_INPUT_HINT_NO_EMOJI) == 0)
++ if ((gtk_text_view_get_input_hints (text_view) & GTK_INPUT_HINT_EMOJI) != 0)
+ {
+ menuitem = gtk_menu_item_new_with_mnemonic (_("Insert _Emoji"));
+ gtk_widget_set_sensitive (menuitem, can_insert);
+--
+2.31.1
+
diff --git a/gtk3-3.24.31-meson-reftest.patch b/gtk3-3.24.31-meson-reftest.patch
new file mode 100644
index 0000000..16873e2
--- /dev/null
+++ b/gtk3-3.24.31-meson-reftest.patch
@@ -0,0 +1,53 @@
+From 7f295eeb324c3d793bdf302fa7ea9ebdd8a52bcf Mon Sep 17 00:00:00 2001
+From: David King <amigadave@amigadave.com>
+Date: Thu, 23 Dec 2021 10:53:57 +0000
+Subject: [PATCH] meson: Do not install reftests
+
+Match the testsuite in the main branch.
+---
+ testsuite/reftests/meson.build | 25 +------------------------
+ 1 file changed, 1 insertion(+), 24 deletions(-)
+
+diff --git a/testsuite/reftests/meson.build b/testsuite/reftests/meson.build
+index b4bf6784cc..2135ebb434 100644
+--- a/testsuite/reftests/meson.build
++++ b/testsuite/reftests/meson.build
+@@ -22,9 +22,7 @@ libreftest = shared_library('reftest',
+
+ gtk_reftest = executable('gtk-reftest', 'gtk-reftest.c',
+ link_with : [libgtkreftestprivate, libreftest],
+- dependencies : libgtk_dep,
+- install: get_option('installed_tests'),
+- install_dir: installed_test_bindir)
++ dependencies : libgtk_dep)
+
+ test_data = [
+ '721800-0px-dotted-border.css',
+@@ -457,24 +455,3 @@ foreach testname : test_data
+ is_parallel: false)
+ endif
+ endforeach
+-
+-reftests_installed_tests = [
+- 'reftests-dark.test',
+- 'reftests-hc.test',
+- 'reftests-hci.test',
+- 'reftests.test',
+-]
+-
+-if get_option('installed_tests')
+- test_cdata = configuration_data()
+- test_cdata.set('libexecdir', gtk_libexecdir)
+-
+- foreach t: reftests_installed_tests
+- configure_file(input: '@0@.in'.format(t),
+- output: t,
+- configuration: test_cdata,
+- install_dir: installed_test_datadir)
+- endforeach
+-
+- install_data(test_data, install_dir: testexecdir)
+-endif
+--
+2.33.1
+
diff --git a/gtk3-3.24.31-meson.patch b/gtk3-3.24.31-meson.patch
new file mode 100644
index 0000000..0d97626
--- /dev/null
+++ b/gtk3-3.24.31-meson.patch
@@ -0,0 +1,316 @@
+From 9bad0a2d5e35fdd2d89efedae1298d7c3dd158a3 Mon Sep 17 00:00:00 2001
+From: David King <amigadave@amigadave.com>
+Date: Tue, 21 Dec 2021 10:09:29 +0000
+Subject: [PATCH 1/3] meson: Remove missing reftests
+
+Removed from autotools build in commit
+93e1f7f1ec709325fe9b0554b92add06ad988ae8.
+---
+ testsuite/reftests/meson.build | 7 -------
+ 1 file changed, 7 deletions(-)
+
+diff --git a/testsuite/reftests/meson.build b/testsuite/reftests/meson.build
+index 9bfe1bb698..b4bf6784cc 100644
+--- a/testsuite/reftests/meson.build
++++ b/testsuite/reftests/meson.build
+@@ -291,9 +291,6 @@ test_data = [
+ 'label-text-shadow-clipping.css',
+ 'label-text-shadow-clipping.ref.ui',
+ 'label-text-shadow-clipping.ui',
+- 'label-text-shadow-changes-modify-clip.css',
+- 'label-text-shadow-changes-modify-clip.ref.ui',
+- 'label-text-shadow-changes-modify-clip.ui',
+ 'label-width-chars-dont-shrink.ref.ui',
+ 'label-width-chars-dont-shrink.ui',
+ 'label-wrap-justify.ref.ui',
+@@ -405,10 +402,6 @@ test_data = [
+ 'textview-margins.ui',
+ 'textview-tags.ref.ui',
+ 'textview-tags.ui',
+- 'toplevel-vs-popup.ref.ui',
+- 'toplevel-vs-popup.ui',
+- 'treeview-crash-too-wide.ref.ui',
+- 'treeview-crash-too-wide.ui',
+ 'treeview-fixed-height.css',
+ 'treeview-fixed-height.ref.ui',
+ 'treeview-fixed-height.ui',
+--
+2.33.1
+
+
+From 2b566f0633a740cca2b30941231f0507de873002 Mon Sep 17 00:00:00 2001
+From: David King <amigadave@amigadave.com>
+Date: Tue, 21 Dec 2021 11:10:37 +0000
+Subject: [PATCH 2/3] meson: Install example schema XML
+
+---
+ examples/application10/meson.build | 4 +++-
+ examples/application5/meson.build | 4 +++-
+ examples/application6/meson.build | 4 +++-
+ examples/application7/meson.build | 4 +++-
+ examples/application8/meson.build | 4 +++-
+ examples/application9/meson.build | 4 +++-
+ 6 files changed, 18 insertions(+), 6 deletions(-)
+
+diff --git a/examples/application10/meson.build b/examples/application10/meson.build
+index ce842ae794..417a64155e 100644
+--- a/examples/application10/meson.build
++++ b/examples/application10/meson.build
+@@ -5,7 +5,7 @@ app10_resources = gnome.compile_resources(
+ source_dir: '.'
+ )
+
+-app10_schemas = gnome.compile_schemas()
++app10_schemas = gnome.compile_schemas(depend_files: files(['org.gtk.exampleapp.gschema.xml']))
+
+
+ app10 = executable(
+@@ -21,3 +21,5 @@ app10 = executable(
+ app10_schemas,
+ dependencies: libgtk_dep
+ )
++
++install_data('org.gtk.exampleapp.gschema.xml', install_dir: gtk_schemasdir)
+diff --git a/examples/application5/meson.build b/examples/application5/meson.build
+index f0fed1ca59..8ecb41948e 100644
+--- a/examples/application5/meson.build
++++ b/examples/application5/meson.build
+@@ -5,7 +5,7 @@ app5_resources = gnome.compile_resources(
+ source_dir: '.'
+ )
+
+-app5_schemas = gnome.compile_schemas()
++app5_schemas = gnome.compile_schemas(depend_files: files(['org.gtk.exampleapp.gschema.xml']))
+
+
+ app5 = executable(
+@@ -19,3 +19,5 @@ app5 = executable(
+ app5_schemas,
+ dependencies: libgtk_dep
+ )
++
++install_data('org.gtk.exampleapp.gschema.xml', install_dir: gtk_schemasdir)
+diff --git a/examples/application6/meson.build b/examples/application6/meson.build
+index 2d923f35a3..8a172e2e26 100644
+--- a/examples/application6/meson.build
++++ b/examples/application6/meson.build
+@@ -5,7 +5,7 @@ app6_resources = gnome.compile_resources(
+ source_dir: '.'
+ )
+
+-app6_schemas = gnome.compile_schemas()
++app6_schemas = gnome.compile_schemas(depend_files: files(['org.gtk.exampleapp.gschema.xml']))
+
+
+ app6 = executable(
+@@ -21,3 +21,5 @@ app6 = executable(
+ app6_schemas,
+ dependencies: libgtk_dep
+ )
++
++install_data('org.gtk.exampleapp.gschema.xml', install_dir: gtk_schemasdir)
+diff --git a/examples/application7/meson.build b/examples/application7/meson.build
+index cc32f36ad0..4c46221085 100644
+--- a/examples/application7/meson.build
++++ b/examples/application7/meson.build
+@@ -5,7 +5,7 @@ app7_resources = gnome.compile_resources(
+ source_dir: '.'
+ )
+
+-app7_schemas = gnome.compile_schemas()
++app7_schemas = gnome.compile_schemas(depend_files: files(['org.gtk.exampleapp.gschema.xml']))
+
+
+ app7 = executable(
+@@ -21,3 +21,5 @@ app7 = executable(
+ app7_schemas,
+ dependencies: libgtk_dep
+ )
++
++install_data('org.gtk.exampleapp.gschema.xml', install_dir: gtk_schemasdir)
+diff --git a/examples/application8/meson.build b/examples/application8/meson.build
+index 1192f4d688..ee49034d2b 100644
+--- a/examples/application8/meson.build
++++ b/examples/application8/meson.build
+@@ -5,7 +5,7 @@ app8_resources = gnome.compile_resources(
+ source_dir: '.'
+ )
+
+-app8_schemas = gnome.compile_schemas()
++app8_schemas = gnome.compile_schemas(depend_files: files(['org.gtk.exampleapp.gschema.xml']))
+
+
+ app8 = executable(
+@@ -21,3 +21,5 @@ app8 = executable(
+ app8_schemas,
+ dependencies: libgtk_dep
+ )
++
++install_data('org.gtk.exampleapp.gschema.xml', install_dir: gtk_schemasdir)
+diff --git a/examples/application9/meson.build b/examples/application9/meson.build
+index fccee738cb..46b77c4d17 100644
+--- a/examples/application9/meson.build
++++ b/examples/application9/meson.build
+@@ -5,7 +5,7 @@ app9_resources = gnome.compile_resources(
+ source_dir: '.'
+ )
+
+-app9_schemas = gnome.compile_schemas()
++app9_schemas = gnome.compile_schemas(depend_files: files(['org.gtk.exampleapp.gschema.xml']))
+
+
+ app9 = executable(
+@@ -21,3 +21,5 @@ app9 = executable(
+ app9_schemas,
+ dependencies: libgtk_dep
+ )
++
++install_data('org.gtk.exampleapp.gschema.xml', install_dir: gtk_schemasdir)
+--
+2.33.1
+
+
+From e36849e6a397bc7e0356bd51583d79f821f9c3db Mon Sep 17 00:00:00 2001
+From: David King <amigadave@amigadave.com>
+Date: Tue, 21 Dec 2021 14:04:40 +0000
+Subject: [PATCH 3/3] Revert "meson: simplify builtin_immodules build option"
+
+This reverts commit 749a58ab26bc01381d66ccefdd3aa42a34353e70.
+
+This maintains feature parity with the autotools build.
+---
+ gtk/meson.build | 2 +-
+ meson.build | 30 ++++++++++++++++++++++++------
+ meson_options.txt | 4 ++--
+ modules/input/meson.build | 2 +-
+ 4 files changed, 28 insertions(+), 10 deletions(-)
+
+diff --git a/gtk/meson.build b/gtk/meson.build
+index 9754686cca..12aa7db5c3 100644
+--- a/gtk/meson.build
++++ b/gtk/meson.build
+@@ -959,7 +959,7 @@ foreach l: immodules
+ cond = l.get(2, true)
+ cflags = l.get(3, [])
+
+- if cond and builtin_immodules
++ if cond and (builtin_immodules.contains(name) or builtin_all_immodules)
+ gtk_cargs += ['-DINCLUDE_IM_@0@'.format(name.underscorify())]
+ mod = static_library('staticimmodule-@0@'.format(name),
+ sources + gtk_dep_sources,
+diff --git a/meson.build b/meson.build
+index 16d1597116..15cca3de15 100644
+--- a/meson.build
++++ b/meson.build
+@@ -499,6 +499,8 @@ else
+ cdata.set_quoted('ISO_CODES_PREFIX', get_option('prefix'))
+ endif
+
++backend_immodules = []
++
+ pc_gdk_extra_libs = []
+
+ cairo_found_type = cairo_dep.type_name()
+@@ -554,6 +556,7 @@ if wayland_enabled
+ wlprotocolsdep = dependency('wayland-protocols', version: wayland_proto_req)
+ wlcursordep = dependency('wayland-cursor', version: wayland_req)
+ wlegldep = dependency('wayland-egl')
++ backend_immodules += ['wayland']
+
+ wayland_pkgs = [
+ 'wayland-client', wayland_req,
+@@ -578,6 +581,8 @@ if x11_enabled
+ fontconfig_dep = dependency('fontconfig', fallback: ['fontconfig', 'fontconfig_dep'])
+ atkbridge_dep = dependency('atk-bridge-2.0', version: at_spi2_atk_req)
+
++ backend_immodules += ['xim']
++
+ x11_pkgs = ['fontconfig', 'x11', 'xext', 'xi', 'xrandr']
+
+ if xcursor_dep.found()
+@@ -656,10 +661,12 @@ endif
+
+ if broadway_enabled
+ pc_gdk_extra_libs += ['-lz']
++ backend_immodules += ['broadway']
+ endif
+
+ if quartz_enabled
+ pc_gdk_extra_libs += ['-Wl,-framework,Cocoa', '-Wl,-framework,Carbon', '-Wl,-framework,CoreGraphics']
++ backend_immodules += ['quartz']
+ endif
+
+ extra_demo_ldflags = []
+@@ -674,6 +681,7 @@ if win32_enabled
+ pc_gdk_extra_libs += ['-Wl,-luuid']
+ endif
+ pc_gdk_extra_libs += ['-lwinmm', '-ldwmapi', '-lsetupapi', '-lcfgmgr32']
++ backend_immodules += ['ime']
+
+ # Check whether libepoxy is built with EGL support on Windows
+ win32_has_egl = epoxy_dep.get_variable(
+@@ -684,20 +692,30 @@ endif
+
+ # IMModules stuff-unfortunately we need to put items here
+ # as they can be built as modules or built directly into GTK
++builtin_all_immodules = false
++
+ builtin_modules_opt = get_option('builtin_immodules')
+-if builtin_modules_opt == 'auto'
++builtin_immodules = []
++
++if builtin_modules_opt == ''
+ if os_win32
+ # Current MSVC projects build all immodules directly into GTK by default,
+ # as does the mingw autotools build
+ message('IMModules are built into GTK for MSVC builds by default')
+- builtin_immodules = true
++ builtin_immodules = ['all']
+ else
+- builtin_immodules = false
++ builtin_immodules = ['none']
+ endif
+-elif builtin_modules_opt == 'yes'
+- builtin_immodules = true
+ else
+- builtin_immodules = false
++ builtin_immodules = builtin_modules_opt.split(',')
++endif
++
++if builtin_immodules.contains('none')
++ builtin_immodules = []
++elif builtin_immodules.contains('all')
++ builtin_all_immodules = true
++elif builtin_immodules.contains('backend')
++ builtin_immodules += backend_immodules
+ endif
+
+ proto_sources = [
+diff --git a/meson_options.txt b/meson_options.txt
+index 1ca55b1467..94099aa01e 100644
+--- a/meson_options.txt
++++ b/meson_options.txt
+@@ -45,5 +45,5 @@ option('installed_tests', type: 'boolean', value: 'false',
+ description : 'enable installed tests')
+
+ # input modules
+-option('builtin_immodules', type: 'combo', choices : ['yes', 'no', 'auto'],
+- value: 'auto', description: 'Build immodules into GTK so/DLL')
++option('builtin_immodules', type: 'string',
++ value: '', description: 'Build specified immodules into GTK so/DLL (comma-separated list), "all", "none" or "backend"')
+diff --git a/modules/input/meson.build b/modules/input/meson.build
+index 7b201af894..95534b05ec 100644
+--- a/modules/input/meson.build
++++ b/modules/input/meson.build
+@@ -7,7 +7,7 @@ foreach l: immodules
+ cond = l.get(2, true)
+ cflags = l.get(3, [])
+
+- if cond and not builtin_immodules
++ if cond and not (builtin_immodules.contains(name) or builtin_all_immodules)
+ shared_module('im-@0@'.format(name),
+ immod_sources,
+ c_args: common_cflags + cflags,
+--
+2.33.1
+
diff --git a/gtk3-3.24.31-treeview-a11y-leak-fix.patch b/gtk3-3.24.31-treeview-a11y-leak-fix.patch
new file mode 100644
index 0000000..f2dc206
--- /dev/null
+++ b/gtk3-3.24.31-treeview-a11y-leak-fix.patch
@@ -0,0 +1,27 @@
+From cc977be580b9a7c2683810fe36fe485ee8583ec0 Mon Sep 17 00:00:00 2001
+From: Matthias Clasen <mclasen@redhat.com>
+Date: Fri, 11 Feb 2022 18:39:55 -0500
+Subject: [PATCH] Fix a leak of cell accessibles
+
+gtk_container_cell_accessible_add_child is transfer none,
+so we need to drop the reference we hold, otherwise it
+leaks.
+---
+ gtk/a11y/gtktreeviewaccessible.c | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/gtk/a11y/gtktreeviewaccessible.c b/gtk/a11y/gtktreeviewaccessible.c
+index c1a2097a1e..c2b7e8add0 100644
+--- a/gtk/a11y/gtktreeviewaccessible.c
++++ b/gtk/a11y/gtktreeviewaccessible.c
+@@ -413,6 +413,7 @@ create_cell_accessible (GtkTreeView *treeview,
+ {
+ cell = create_cell_accessible_for_renderer (l->data, GTK_WIDGET (treeview), ATK_OBJECT (container));
+ gtk_container_cell_accessible_add_child (container, cell);
++ g_object_unref (cell);
+ }
+
+ cell = GTK_CELL_ACCESSIBLE (container);
+--
+GitLab
+
diff --git a/gtk3.spec b/gtk3.spec
new file mode 100644
index 0000000..7674906
--- /dev/null
+++ b/gtk3.spec
@@ -0,0 +1,1297 @@
+%if 0%{?fedora}
+%global with_broadway 1
+%endif
+
+%global glib2_version 2.57.2
+%global pango_version 1.41.0
+%global atk_version 2.35.1
+%global cairo_version 1.14.0
+%global gdk_pixbuf_version 2.30.0
+%global xrandr_version 1.5.0
+%global wayland_protocols_version 1.17
+%global wayland_version 1.14.91
+%global epoxy_version 1.4
+
+%global bin_version 3.0.0
+
+# Filter provides for private modules
+%global __provides_exclude_from ^%{_libdir}/gtk-3.0
+
+Name: gtk3
+Version: 3.24.31
+Release: 5%{?dist}
+Summary: GTK+ graphical user interface library
+
+License: LGPLv2+
+URL: http://www.gtk.org
+Source0: http://download.gnome.org/sources/gtk+/3.24/gtk+-%{version}.tar.xz
+
+# https://bugzilla.redhat.com/show_bug.cgi?id=2025439
+Patch0: gtk3-3.24.30-entry-no-emoji-context-menu.patch
+
+# https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/4273
+Patch1: gtk3-3.24.31-meson.patch
+# https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/4280
+Patch2: gtk3-3.24.31-meson-reftest.patch
+# https://bugzilla.redhat.com/show_bug.cgi?id=2055013
+Patch3: gtk3-3.24.31-treeview-a11y-leak-fix.patch
+# https://issues.redhat.com/browse/RHEL-22483
+Patch4: 0001-theme-Reduce-the-height-of-titlebars.patch
+# https://issues.redhat.com/browse/RHEL-46993
+Patch5: 0001-Stop-looking-for-modules-in-cwd.patch
+
+BuildRequires: pkgconfig(atk) >= %{atk_version}
+BuildRequires: pkgconfig(atk-bridge-2.0)
+BuildRequires: pkgconfig(avahi-gobject)
+BuildRequires: pkgconfig(cairo) >= %{cairo_version}
+BuildRequires: pkgconfig(cairo-gobject) >= %{cairo_version}
+BuildRequires: pkgconfig(colord)
+BuildRequires: pkgconfig(egl)
+BuildRequires: pkgconfig(epoxy)
+BuildRequires: pkgconfig(gdk-pixbuf-2.0) >= %{gdk_pixbuf_version}
+BuildRequires: pkgconfig(glib-2.0) >= %{glib2_version}
+BuildRequires: pkgconfig(gobject-introspection-1.0)
+BuildRequires: pkgconfig(pango) >= %{pango_version}
+BuildRequires: pkgconfig(tracker-sparql-3.0)
+BuildRequires: pkgconfig(wayland-client) >= %{wayland_version}
+BuildRequires: pkgconfig(wayland-cursor) >= %{wayland_version}
+BuildRequires: pkgconfig(wayland-egl) >= %{wayland_version}
+BuildRequires: pkgconfig(wayland-protocols) >= %{wayland_protocols_version}
+BuildRequires: pkgconfig(xi)
+BuildRequires: pkgconfig(xrandr) >= %{xrandr_version}
+BuildRequires: pkgconfig(xrender)
+BuildRequires: pkgconfig(xrender)
+BuildRequires: pkgconfig(xcursor)
+BuildRequires: pkgconfig(xfixes)
+BuildRequires: pkgconfig(xinerama)
+BuildRequires: pkgconfig(xcomposite)
+BuildRequires: pkgconfig(xdamage)
+BuildRequires: pkgconfig(xkbcommon)
+BuildRequires: cups-devel
+BuildRequires: desktop-file-utils
+BuildRequires: gettext
+BuildRequires: gtk-doc
+BuildRequires: meson
+
+# standard icons
+Requires: adwaita-icon-theme
+# required for icon theme apis to work
+Requires: hicolor-icon-theme
+# split out in a subpackage
+Requires: gtk-update-icon-cache
+
+Requires: atk%{?_isa} >= %{atk_version}
+Requires: cairo%{?_isa} >= %{cairo_version}
+Requires: cairo-gobject%{?_isa} >= %{cairo_version}
+Requires: glib2%{?_isa} >= %{glib2_version}
+Requires: libepoxy%{?_isa} >= %{epoxy_version}
+Requires: libXrandr%{?_isa} >= %{xrandr_version}
+Requires: pango%{?_isa} >= %{pango_version}
+Requires: libwayland-client%{?_isa} >= %{wayland_version}
+Requires: libwayland-cursor%{?_isa} >= %{wayland_version}
+
+# required to support all the different image formats
+Requires: gdk-pixbuf2-modules%{?_isa}
+
+# make sure we have a reasonable gsettings backend
+Recommends: dconf%{?_isa}
+
+# For sound theme events in gtk3 apps
+Recommends: libcanberra-gtk3%{?_isa}
+
+# For Tracker search in the file chooser.
+Recommends: tracker-miners
+
+%description
+GTK+ is a multi-platform toolkit for creating graphical user
+interfaces. Offering a complete set of widgets, GTK+ is suitable for
+projects ranging from small one-off tools to complete application
+suites.
+
+This package contains version 3 of GTK+.
+
+%package -n gtk-update-icon-cache
+Summary: Icon theme caching utility
+
+%description -n gtk-update-icon-cache
+GTK+ can use the cache files created by gtk-update-icon-cache to avoid a lot of
+system call and disk seek overhead when the application starts. Since the
+format of the cache files allows them to be mmap()ed shared between multiple
+applications, the overall memory consumption is reduced as well.
+
+%package immodules
+Summary: Input methods for GTK+
+Requires: gtk3%{?_isa} = %{version}-%{release}
+# for im-cedilla.conf
+Requires: gtk2-immodules%{?_isa}
+
+%description immodules
+The gtk3-immodules package contains standalone input methods that
+are shipped as part of GTK+ 3.
+
+%package immodule-xim
+Summary: XIM support for GTK+
+Requires: gtk3%{?_isa} = %{version}-%{release}
+
+%description immodule-xim
+The gtk3-immodule-xim package contains XIM support for GTK+ 3.
+
+%package devel
+Summary: Development files for GTK+
+Requires: gtk3%{?_isa} = %{version}-%{release}
+
+%description devel
+This package contains the libraries and header files that are needed
+for writing applications with version 3 of the GTK+ widget toolkit. If
+you plan to develop applications with GTK+, consider installing the
+gtk3-devel-docs package.
+
+%package devel-docs
+Summary: Developer documentation for GTK+
+Requires: gtk3 = %{version}-%{release}
+
+%description devel-docs
+This package contains developer documentation for version 3 of the GTK+
+widget toolkit.
+
+%package tests
+Summary: Tests for the %{name} package
+Requires: %{name}%{?_isa} = %{version}-%{release}
+
+%description tests
+The %{name}-tests package contains tests that can be used to verify
+the functionality of the installed %{name} package.
+
+%prep
+%autosetup -n gtk+-%{version} -p1
+
+%build
+export CFLAGS='-fno-strict-aliasing %optflags'
+%meson \
+%if 0%{?with_broadway}
+ -Dbroadway_backend=true \
+%endif
+ -Dbuiltin_immodules=wayland,waylandgtk \
+ -Dcolord=yes \
+ -Dcloudproviders=false \
+ -Dgtk_doc=true \
+ -Dinstalled_tests=true \
+ -Dman=true \
+ -Dtracker3=true \
+ -Dxinerama=yes \
+%meson_build
+
+%install
+%meson_install
+
+%find_lang gtk30
+%find_lang gtk30-properties
+
+(cd $RPM_BUILD_ROOT%{_bindir}
+ mv gtk-query-immodules-3.0 gtk-query-immodules-3.0-%{__isa_bits}
+)
+
+echo ".so man1/gtk-query-immodules-3.0.1" > $RPM_BUILD_ROOT%{_mandir}/man1/gtk-query-immodules-3.0-%{__isa_bits}.1
+
+touch $RPM_BUILD_ROOT%{_libdir}/gtk-3.0/%{bin_version}/immodules.cache
+
+mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/gtk-3.0
+mkdir -p $RPM_BUILD_ROOT%{_libdir}/gtk-3.0/modules
+mkdir -p $RPM_BUILD_ROOT%{_libdir}/gtk-3.0/immodules
+mkdir -p $RPM_BUILD_ROOT%{_libdir}/gtk-3.0/%{bin_version}/theming-engines
+
+%check
+desktop-file-validate %{buildroot}%{_datadir}/applications/*.desktop
+
+%transfiletriggerin -- %{_libdir}/gtk-3.0/3.0.0/immodules
+gtk-query-immodules-3.0-%{__isa_bits} --update-cache &>/dev/null || :
+
+%transfiletriggerpostun -- %{_libdir}/gtk-3.0/3.0.0/immodules
+gtk-query-immodules-3.0-%{__isa_bits} --update-cache &>/dev/null || :
+
+%files -f gtk30.lang
+%license COPYING
+%doc AUTHORS NEWS README
+%{_bindir}/gtk-query-immodules-3.0*
+%{_bindir}/gtk-launch
+%{_libdir}/libgtk-3.so.*
+%{_libdir}/libgdk-3.so.*
+%{_libdir}/libgailutil-3.so.*
+%dir %{_libdir}/gtk-3.0
+%dir %{_libdir}/gtk-3.0/%{bin_version}
+%{_libdir}/gtk-3.0/%{bin_version}/theming-engines
+%dir %{_libdir}/gtk-3.0/%{bin_version}/immodules
+%{_libdir}/gtk-3.0/%{bin_version}/printbackends
+%{_libdir}/gtk-3.0/modules
+%{_libdir}/gtk-3.0/immodules
+%{_datadir}/themes/Default
+%{_datadir}/themes/Emacs
+%{_libdir}/girepository-1.0
+%ghost %{_libdir}/gtk-3.0/%{bin_version}/immodules.cache
+%{_mandir}/man1/gtk-query-immodules-3.0*
+%{_mandir}/man1/gtk-launch.1*
+%{_datadir}/glib-2.0/schemas/org.gtk.Settings.ColorChooser.gschema.xml
+%{_datadir}/glib-2.0/schemas/org.gtk.Settings.Debug.gschema.xml
+%{_datadir}/glib-2.0/schemas/org.gtk.Settings.EmojiChooser.gschema.xml
+%{_datadir}/glib-2.0/schemas/org.gtk.Settings.FileChooser.gschema.xml
+%{_datadir}/glib-2.0/schemas/org.gtk.exampleapp.gschema.xml
+%dir %{_datadir}/gtk-3.0
+%{_datadir}/gtk-3.0/emoji/
+%if 0%{?with_broadway}
+%{_bindir}/broadwayd
+%{_mandir}/man1/broadwayd.1*
+%endif
+
+%files -n gtk-update-icon-cache
+%license COPYING
+%{_bindir}/gtk-update-icon-cache
+%{_mandir}/man1/gtk-update-icon-cache.1*
+
+%files immodules
+%{_libdir}/gtk-3.0/%{bin_version}/immodules/im-cedilla.so
+%{_libdir}/gtk-3.0/%{bin_version}/immodules/im-am-et.so
+%{_libdir}/gtk-3.0/%{bin_version}/immodules/im-cyrillic-translit.so
+%{_libdir}/gtk-3.0/%{bin_version}/immodules/im-inuktitut.so
+%{_libdir}/gtk-3.0/%{bin_version}/immodules/im-ipa.so
+%{_libdir}/gtk-3.0/%{bin_version}/immodules/im-multipress.so
+%{_libdir}/gtk-3.0/%{bin_version}/immodules/im-thai.so
+%{_libdir}/gtk-3.0/%{bin_version}/immodules/im-ti-er.so
+%{_libdir}/gtk-3.0/%{bin_version}/immodules/im-ti-et.so
+%{_libdir}/gtk-3.0/%{bin_version}/immodules/im-viqr.so
+%if 0%{?with_broadway}
+%{_libdir}/gtk-3.0/%{bin_version}/immodules/im-broadway.so
+%endif
+%config(noreplace) %{_sysconfdir}/gtk-3.0/im-multipress.conf
+
+%files immodule-xim
+%{_libdir}/gtk-3.0/%{bin_version}/immodules/im-xim.so
+
+%files devel -f gtk30-properties.lang
+%{_libdir}/lib*.so
+%{_includedir}/*
+%{_datadir}/aclocal/*
+%{_libdir}/pkgconfig/*
+%{_bindir}/gtk3-demo
+%{_bindir}/gtk3-icon-browser
+%{_bindir}/gtk-builder-tool
+%{_bindir}/gtk-encode-symbolic-svg
+%{_bindir}/gtk-query-settings
+%{_datadir}/applications/gtk3-demo.desktop
+%{_datadir}/applications/gtk3-icon-browser.desktop
+%{_datadir}/applications/gtk3-widget-factory.desktop
+%{_datadir}/icons/hicolor/*/apps/gtk3-demo.png
+%{_datadir}/icons/hicolor/*/apps/gtk3-demo-symbolic.symbolic.png
+%{_datadir}/icons/hicolor/*/apps/gtk3-widget-factory.png
+%{_datadir}/icons/hicolor/*/apps/gtk3-widget-factory-symbolic.symbolic.png
+%{_bindir}/gtk3-demo-application
+%{_bindir}/gtk3-widget-factory
+%{_datadir}/gettext/
+%{_datadir}/gir-1.0
+%{_datadir}/glib-2.0/schemas/org.gtk.Demo.gschema.xml
+%{_datadir}/gtk-3.0/gtkbuilder.rng
+%{_datadir}/gtk-3.0/valgrind/
+%{_mandir}/man1/gtk3-demo.1*
+%{_mandir}/man1/gtk3-demo-application.1*
+%{_mandir}/man1/gtk3-icon-browser.1*
+%{_mandir}/man1/gtk3-widget-factory.1*
+%{_mandir}/man1/gtk-builder-tool.1*
+%{_mandir}/man1/gtk-encode-symbolic-svg.1*
+%{_mandir}/man1/gtk-query-settings.1*
+
+%files devel-docs
+%{_datadir}/gtk-doc
+
+%files tests
+%{_libexecdir}/installed-tests/
+%{_datadir}/installed-tests/
+
+%changelog
+* Wed Jul 10 2024 Matthias Clasen <mclasen@redhat.com> - 3.24.31-5
+- Stop looking for modules in cwd (CVE-2024-6655)
+- Resolves: RHEL-46993
+
+* Wed May 15 2024 Matthias Clasen <mclasen@redhat.com> - 3.24.31-4
+- Actually reduce the height of window titlebars
+
+* Thu May 02 2024 Matthias Clasen <mclasen@redhat.com> - 3.24.31-3
+- Reduce the height of window titlebars
+
+* Thu Feb 17 2022 David King <amigadave@amigadave.com> - 3.24.31-2
+- Fix treeview a11y refcount leak (#2055013)
+
+* Thu Jan 13 2022 David King <amigadave@amigadave.com> - 3.24.31-1
+- Rebase to 3.24.31 (#2010192)
+
+* Thu Jan 13 2022 David King <amigadave@amigadave.com> - 3.24.30-4
+- No entry emoji context menu (#2025439)
+
+* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 3.24.30-3
+- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
+ Related: rhbz#1991688
+
+* Mon Jul 19 2021 Matthias Clasen <mclasen@redhat.com> - 3.24.30-2
+- Fix reftests to work in a vm (#1981790)
+
+* Tue Jul 13 2021 David King <amigadave@amigadave.com> - 3.24.30-1
+- Update to 3.24.30 (#1981790)
+
+* Fri Apr 23 2021 Kalev Lember <klember@redhat.com> - 3.24.29-1
+- Update to 3.24.29
+
+* Fri Apr 16 2021 Mohan Boddu <mboddu@redhat.com> - 3.24.28-2
+- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937
+
+* Sat Mar 27 2021 Kalev Lember <klember@redhat.com> - 3.24.28-1
+- Update to 3.24.28
+- Drop old obsoletes
+
+* Fri Mar 12 2021 Kalev Lember <klember@redhat.com> - 3.24.27-1
+- Update to 3.24.27
+
+* Tue Feb 23 2021 Kalev Lember <klember@redhat.com> - 3.24.26-1
+- Update to 3.24.26
+
+* Fri Feb 19 2021 Kalev Lember <klember@redhat.com> - 3.24.25-3
+- Backport upstream patch to fix a settings schema loading issue on Wayland
+
+* Mon Feb 15 2021 Kalev Lember <klember@redhat.com> - 3.24.25-2
+- Backport upstream patches to fix regressions in Compose file parsing
+- Backport upstream patch to further tweak scrollbar transitions and size
+
+* Fri Feb 12 2021 Kalev Lember <klember@redhat.com> - 3.24.25-1
+- Update to 3.24.25
+
+* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 3.24.24-3
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
+
+* Fri Jan 22 2021 Kalev Lember <klember@redhat.com> - 3.24.24-2
+- Recommend libcanberra-gtk3 for sound theme events in gtk3 apps
+
+* Fri Dec 11 2020 Kalev Lember <klember@redhat.com> - 3.24.24-1
+- Update to 3.24.24
+
+* Tue Nov 24 2020 Kalev Lember <klember@redhat.com> - 3.24.23-2
+- Backport a patch to add support for primary-selection-unstable-v1 protocol
+
+* Fri Sep 04 2020 Kalev Lember <klember@redhat.com> - 3.24.23-1
+- Update to 3.24.23
+
+* Mon Aug 17 2020 Kalev Lember <klember@redhat.com> - 3.24.22-2
+- Rebuild for sysprof-capture-4
+
+* Mon Aug 17 2020 Kalev Lember <klember@redhat.com> - 3.24.22-1
+- Update to 3.24.22
+
+* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 3.24.21-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
+
+* Mon Jul 20 2020 Kalev Lember <klember@redhat.com> - 3.24.21-1
+- Update to 3.24.21
+
+* Mon Apr 27 2020 Kalev Lember <klember@redhat.com> - 3.24.20-1
+- Update to 3.24.20
+
+* Fri Apr 10 2020 Kalev Lember <klember@redhat.com> - 3.24.18-1
+- Update to 3.24.18
+
+* Fri Apr 03 2020 Kalev Lember <klember@redhat.com> - 3.24.17-1
+- Update to 3.24.17
+
+* Fri Apr 03 2020 Kalev Lember <klember@redhat.com> - 3.24.16-2
+- Backport upstream fixes for an imwayland crash
+
+* Fri Mar 27 2020 Kalev Lember <klember@redhat.com> - 3.24.16-1
+- Update to 3.24.16
+
+* Mon Feb 17 2020 Kalev Lember <klember@redhat.com> - 3.24.14-1
+- Update to 3.24.14
+
+* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 3.24.13-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
+
+* Wed Nov 27 2019 Kalev Lember <klember@redhat.com> - 3.24.13-1
+- Update to 3.24.13
+
+* Tue Oct 22 2019 Adam Williamson <awilliam@redhat.com> - 3.24.12-3
+- Backport PR #1146 to fix a bug that #1142 introduced...
+
+* Mon Oct 21 2019 Adam Williamson <awilliam@redhat.com> - 3.24.12-2
+- Backport PR #1142 to try and fix intermittent copy/cut failures
+
+* Fri Oct 04 2019 Kalev Lember <klember@redhat.com> - 3.24.12-1
+- Update to 3.24.12
+
+* Wed Sep 04 2019 Kalev Lember <klember@redhat.com> - 3.24.11-1
+- Update to 3.24.11
+- Build with sysprof support on F31+
+
+* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 3.24.10-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
+
+* Mon Jul 08 2019 Kalev Lember <klember@redhat.com> - 3.24.10-1
+- Update to 3.24.10
+
+* Tue Jun 18 2019 Kalev Lember <klember@redhat.com> - 3.24.9-1
+- Update to 3.24.9
+
+* Thu Apr 11 2019 Kalev Lember <klember@redhat.com> - 3.24.8-1
+- Update to 3.24.8
+
+* Thu Mar 14 2019 Kalev Lember <klember@redhat.com> - 3.24.7-2
+- Undo runtime gtk_window_present deprecation warnings
+
+* Tue Mar 12 2019 Kalev Lember <klember@redhat.com> - 3.24.7-1
+- Update to 3.24.7
+
+* Tue Mar 12 2019 Kalev Lember <klember@redhat.com> - 3.24.6-1
+- Update to 3.24.6
+
+* Mon Feb 04 2019 Kalev Lember <klember@redhat.com> - 3.24.5-1
+- Update to 3.24.5
+
+* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 3.24.4-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
+
+* Mon Jan 21 2019 Kalev Lember <klember@redhat.com> - 3.24.4-1
+- Update to 3.24.4
+
+* Mon Jan 14 2019 Kalev Lember <klember@redhat.com> - 3.24.3-1
+- Update to 3.24.3
+- Co-own /usr/libexec/installed-tests directory
+
+* Wed Sep 19 2018 Kalev Lember <klember@redhat.com> - 3.24.1-1
+- Update to 3.24.1
+
+* Mon Sep 10 2018 Adam Williamson <awilliam@redhat.com> - 3.24.0-4
+- Revert a problematic change that breaks several things (GGO #1316)
+
+* Fri Sep 07 2018 Kalev Lember <klember@redhat.com> - 3.24.0-3
+- Rebuilt against fixed atk (#1626575)
+
+* Thu Sep 06 2018 Kalev Lember <klember@redhat.com> - 3.24.0-2
+- Backport two bugfixes from upstream
+
+* Thu Sep 06 2018 Kalev Lember <klember@redhat.com> - 3.24.0-1
+- Update to 3.24.0
+
+* Mon Aug 13 2018 Kalev Lember <klember@redhat.com> - 3.23.2-1
+- Update to 3.23.2
+
+* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 3.22.30-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
+
+* Wed Apr 18 2018 Kalev Lember <klember@redhat.com> - 3.22.30-1
+- Update to 3.22.30
+
+* Tue Apr 10 2018 Kalev Lember <klember@redhat.com> - 3.22.29-2
+- Build with --with-included-immodules=wayland
+
+* Tue Mar 13 2018 Kalev Lember <klember@redhat.com> - 3.22.29-1
+- Update to 3.22.29
+
+* Fri Mar 02 2018 Kalev Lember <klember@redhat.com> - 3.22.28-1
+- Update to 3.22.28
+
+* Sun Feb 11 2018 Igor Gnatenko <ignatenkobrain@fedoraproject.org> - 3.22.26-4
+- Drop direct gtk-update-icon-cache calls
+- Drop ldconfig scriptlets
+
+* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 3.22.26-3
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
+
+* Wed Nov 29 2017 Christophe Fergeau <cfergeau@redhat.com> - 3.22.26-2
+- Backport fix for guest/host copy&paste issues in Boxes (Freedesktop #101353)
+
+* Tue Nov 07 2017 Kalev Lember <klember@redhat.com> - 3.22.26-1
+- Update to 3.22.26
+
+* Wed Nov 01 2017 Kalev Lember <klember@redhat.com> - 3.22.25-1
+- Update to 3.22.25
+
+* Wed Oct 25 2017 Debarshi Ray <rishi@fedoraproject.org> - 3.22.24-3
+- Backport fix to prevent crashes when adding online accounts (GNOME #789141)
+
+* Mon Oct 23 2017 Troy Dawson <tdawson@redhat.com> - 3.22.24-2
+- Cleanup spec file conditionals
+
+* Wed Oct 04 2017 Kalev Lember <klember@redhat.com> - 3.22.24-1
+- Update to 3.22.24
+
+* Mon Sep 11 2017 Kalev Lember <klember@redhat.com> - 3.22.21-1
+- Update to 3.22.21
+
+* Tue Sep 05 2017 Kalev Lember <klember@redhat.com> - 3.22.20-1
+- Update to 3.22.20
+
+* Tue Aug 22 2017 Kalev Lember <klember@redhat.com> - 3.22.19-1
+- Update to 3.22.19
+
+* Tue Aug 08 2017 Kalev Lember <klember@redhat.com> - 3.22.18-1
+- Update to 3.22.18
+
+* Wed Aug 02 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.22.17-4
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
+
+* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.22.17-3
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
+
+* Thu Jul 20 2017 Debarshi Ray <rishi@fedoraproject.org> - 3.22.17-2
+- Backport fix to throttle system bell requests on Wayland (RH #1466654)
+
+* Wed Jul 19 2017 Kalev Lember <klember@redhat.com> - 3.22.17-1
+- Update to 3.22.17
+
+* Wed Jun 21 2017 Kalev Lember <klember@redhat.com> - 3.22.16-1
+- Update to 3.22.16
+- Filter provides for private modules
+- Update package summary
+
+* Thu May 25 2017 Debarshi Ray <rishi@fedoraproject.org> - 3.22.15-2
+- Backport fix to not abort when the Wayland connection is lost (RH #1258818)
+
+* Fri May 12 2017 Kalev Lember <klember@redhat.com> - 3.22.15-1
+- Update to 3.22.15
+
+* Wed May 10 2017 Kalev Lember <klember@redhat.com> - 3.22.14-1
+- Update to 3.22.14
+
+* Wed May 10 2017 Kalev Lember <klember@redhat.com> - 3.22.13-1
+- Update to 3.22.13
+
+* Thu Apr 20 2017 Kalev Lember <klember@redhat.com> - 3.22.12-2
+- Try harder to remove all libtool .la files
+
+* Tue Apr 11 2017 Kalev Lember <klember@redhat.com> - 3.22.12-1
+- Update to 3.22.12
+
+* Mon Mar 20 2017 Kalev Lember <klember@redhat.com> - 3.22.11-1
+- Update to 3.22.11
+
+* Tue Mar 14 2017 Kalev Lember <klember@redhat.com> - 3.22.10-1
+- Update to 3.22.10
+
+* Thu Mar 02 2017 Kalev Lember <klember@redhat.com> - 3.22.9-2
+- Backport a patch to fix spurious key repeat in gnome-terminal (#1428280)
+
+* Tue Feb 28 2017 Kalev Lember <klember@redhat.com> - 3.22.9-1
+- Update to 3.22.9
+
+* Tue Feb 14 2017 Kalev Lember <klember@redhat.com> - 3.22.8-2
+- Set minimum required xrandr version
+
+* Mon Feb 13 2017 Kalev Lember <klember@redhat.com> - 3.22.8-1
+- Update to 3.22.8
+
+* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 3.22.7-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
+
+* Mon Jan 16 2017 Kalev Lember <klember@redhat.com> - 3.22.7-1
+- Update to 3.22.7
+
+* Tue Jan 10 2017 Michael Catanzaro <mcatanzaro@gnome.org> - 3.22.6-2
+- Add patch for GNOME #769835
+
+* Thu Jan 05 2017 Kalev Lember <klember@redhat.com> - 3.22.6-1
+- Update to 3.22.6
+
+* Sun Dec 11 2016 Kalev Lember <klember@redhat.com> - 3.22.5-1
+- Update to 3.22.5
+
+* Mon Nov 21 2016 Kalev Lember <klember@redhat.com> - 3.22.4-1
+- Update to 3.22.4
+
+* Thu Nov 10 2016 Kalev Lember <klember@redhat.com> - 3.22.3-1
+- Update to 3.22.3
+
+* Tue Nov 8 2016 Matthias Clasen <mclasen@redhat.com> - 3.22.2-2
+- Fix #1376471
+
+* Mon Oct 24 2016 Kalev Lember <klember@redhat.com> - 3.22.2-1
+- Update to 3.22.2
+
+* Tue Oct 11 2016 Adam Jackson <ajax@redhat.com> - 3.22.1-2
+- Prefer eglGetPlatformDisplay to eglGetDisplay
+
+* Sat Oct 01 2016 David King <amigadave@amigadave.com> - 3.22.1-1
+- Update to 3.22.1
+
+* Wed Sep 28 2016 Kalev Lember <klember@redhat.com> - 3.22.0-2
+- Backport a patch to fix shifted content in totem and gnome-maps (#1377741)
+
+* Tue Sep 20 2016 Kalev Lember <klember@redhat.com> - 3.22.0-1
+- Update to 3.22.0
+
+* Mon Sep 19 2016 Kalev Lember <klember@redhat.com> - 3.21.6-2
+- gtkwindow: Update shadow size on state change (#1377313)
+
+* Tue Sep 13 2016 Florian Müllner <fmuellner@redhat.com> - 3.21.6-1
+- Update to 3.21.6
+
+* Tue Aug 30 2016 Kalev Lember <klember@redhat.com> - 3.21.5-1
+- Update to 3.21.5
+- Don't set group tags
+
+* Wed Jul 27 2016 Kalev Lember <klember@redhat.com> - 3.21.4-2
+- Install dconf gsettings backend by default (#1351236)
+
+* Mon Jul 18 2016 Kalev Lember <klember@redhat.com> - 3.21.4-1
+- Update to 3.21.4
+
+* Wed Jun 22 2016 Richard Hughes <rhughes@redhat.com> - 3.21.3-1
+- Update to 3.21.3
+
+* Tue May 03 2016 Kalev Lember <klember@redhat.com> - 3.21.1-1
+- Update to 3.21.1
+- Set minimum required wayland-protocols version
+
+* Wed Apr 13 2016 Kalev Lember <klember@redhat.com> - 3.20.3-1
+- Update to 3.20.3
+
+* Tue Apr 5 2016 Matthias Clasen <mclasen@redhat.com> - 3.20.2-2
+- Drop no-longer-used Requires(post)
+
+* Thu Mar 31 2016 Kalev Lember <klember@redhat.com> - 3.20.2-1
+- Update to 3.20.2
+
+* Fri Mar 25 2016 Kalev Lember <klember@redhat.com> - 3.20.1-1
+- Update to 3.20.1
+
+* Tue Mar 22 2016 Kalev Lember <klember@redhat.com> - 3.20.0-1
+- Update to 3.20.0
+
+* Tue Mar 15 2016 Kalev Lember <klember@redhat.com> - 3.19.12-1
+- Update to 3.19.12
+
+* Wed Mar 02 2016 Richard Hughes <rhughes@redhat.com> - 3.19.11-1
+- Update to 3.19.11
+
+* Wed Feb 24 2016 Matthias Clasen <mclasen@redhat.com> - 3.19.10-1
+- Update to 3.19.10
+
+* Wed Feb 17 2016 Richard Hughes <rhughes@redhat.com> - 3.19.9-1
+- Update to 3.19.9
+
+* Mon Feb 08 2016 Debarshi Ray <rishi@fedoraproject.org> - - 3.19.8-4
+- Backport fix for missing focus-in/out events (GNOME #677329)
+
+* Wed Feb 03 2016 Fedora Release Engineering <releng@fedoraproject.org> - 3.19.8-3
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
+
+* Mon Feb 01 2016 Ray Strode <rstrode@redhat.com> - 3.19.8-2
+- Fix leak in wayland
+ https://bugzilla.gnome.org/show_bug.cgi?id=761312
+
+* Mon Feb 1 2016 Matthias Clasen <mclasen@redhat.com> - 3.19.8-1
+- Update to 3.19.8
+
+* Mon Jan 25 2016 Ray Strode <rstrode@redhat.com> - 3.19.7-2
+- fix SIGBUG crasher in wayland
+ Related: #1300390
+
+* Wed Jan 20 2016 Kalev Lember <klember@redhat.com> - 3.19.7-1
+- Update to 3.19.7
+
+* Mon Jan 11 2016 Kalev Lember <klember@redhat.com> - 3.19.6-1
+- Update to 3.19.6
+
+* Thu Dec 17 2015 Kalev Lember <klember@redhat.com> - 3.19.5-2
+- Fix GtkBorder / GdkBorder struct definitions
+
+* Wed Dec 16 2015 Kalev Lember <klember@redhat.com> - 3.19.5-1
+- Update to 3.19.5
+
+* Sat Dec 05 2015 Kalev Lember <klember@redhat.com> - 3.19.4-1
+- Update to 3.19.4
+
+* Wed Nov 25 2015 Matthias Clasen <mclasen@redhat.com> - 3.19.3-2
+- Fix firefox popup positioning
+
+* Mon Nov 23 2015 Matthias Clasen <mclasen@redhat.com> - 3.19.3-1
+- Update to 3.19.3
+
+* Fri Nov 20 2015 Kalev Lember <klember@redhat.com> - 3.19.2-1
+- Update to 3.19.2
+
+* Wed Oct 28 2015 Kalev Lember <klember@redhat.com> - 3.19.1-1
+- Update to 3.19.1
+
+* Mon Oct 12 2015 Kalev Lember <klember@redhat.com> - 3.18.2-1
+- Update to 3.18.2
+
+* Sun Oct 04 2015 Kalev Lember <klember@redhat.com> - 3.18.1-1
+- Update to 3.18.1
+
+* Tue Sep 22 2015 Kalev Lember <klember@redhat.com> - 3.18.0-1
+- Update to 3.18.0
+
+* Tue Sep 15 2015 Kalev Lember <klember@redhat.com> - 3.17.9-1
+- Update to 3.17.9
+
+* Sun Sep 13 2015 Kalev Lember <klember@redhat.com> - 3.17.8-2
+- Backport a patch to fix mouse scroll wheel events (#1258236)
+
+* Wed Sep 02 2015 Kalev Lember <klember@redhat.com> - 3.17.8-1
+- Update to 3.17.8
+
+* Wed Aug 26 2015 Adam Williamson <awilliam@redhat.com> - 3.17.7-2
+- revert a 3.17.7 change to fix BGO #754147 until it's fixed upstream
+
+* Tue Aug 18 2015 Kalev Lember <klember@redhat.com> - 3.17.7-1
+- Update to 3.17.7
+- Use make_install macro
+
+* Fri Aug 14 2015 Matthias Clasen <mclasen@redhat.com> - 3.17.6-3
+- Add file triggers for im modules
+
+* Fri Aug 14 2015 Matthias Clasen <mclasen@redhat.com> - 3.17.6-2
+- Rely on glib file triggers
+
+* Wed Aug 5 2015 Matthias Clasen <mclasen@redhat.com> - 3.17.6-1
+- Update to 3.17.6
+
+* Tue Jul 21 2015 David King <amigadave@amigadave.com> - 3.17.5-1
+- Update to 3.17.5
+- Preserve timestamps during install
+
+* Mon Jul 13 2015 Adam Williamson <awilliam@redhat.com> - 3.17.4-2
+- backport upstream CSS changes to fix BGO #752247
+- backport upstream font default changes to help with RHBZ #1241724
+
+* Wed Jun 24 2015 David King <amigadave@amigadave.com> - 3.17.4-1
+- Update to 3.17.4
+
+* Wed Jun 17 2015 Kalev Lember <klember@redhat.com> - 3.17.3-3
+- Obsolete gtk-solidity-engine
+
+* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.17.3-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
+
+* Sun May 31 2015 Kalev Lember <kalevlember@gmail.com> - 3.17.3-1
+- Update to 3.17.3
+
+* Thu Apr 30 2015 Kalev Lember <kalevlember@gmail.com> - 3.17.1-1
+- Update to 3.17.1
+- Include gtk-builder-tool in the -devel subpackage
+
+* Fri Apr 17 2015 Rex Dieter <rdieter@fedoraproject.org> 3.16.2-2
+- Obsoletes: oxygen-gtk3 < 2:1.4.1
+
+* Tue Apr 14 2015 David King <amigadave@amigadave.com> - 3.16.2-1
+- Update to 3.16.2
+
+* Tue Apr 7 2015 Matthias Clasen <mclasen@redhat.com> - 3.16.1-1
+- Update to 3.16.1
+
+* Mon Mar 23 2015 Kalev Lember <kalevlember@gmail.com> - 3.16.0-1
+- Update to 3.16.0
+
+* Fri Mar 20 2015 Richard Hughes <rhughes@redhat.com> - 3.15.12-2
+- Depend on gdk-pixbuf2-modules as this is now an optional subpackage
+
+* Tue Mar 17 2015 Kalev Lember <kalevlember@gmail.com> - 3.15.12-1
+- Update to 3.15.12
+- Use license macro for the COPYING file
+
+* Thu Mar 12 2015 Matthias Clasen <mclasen@redhat.com> - 3.15.11-1
+- Update to 3.15.11
+
+* Tue Mar 03 2015 Kalev Lember <kalevlember@gmail.com> - 3.15.10-1
+- Update to 3.15.10
+
+* Tue Feb 24 2015 Matthias Clasen <mclasen@redhat.com> - 3.15.9-1
+- Update to 3.15.9
+
+* Sat Feb 21 2015 Till Maas <opensource@till.name> - 3.15.8-2
+- Rebuilt for Fedora 23 Change
+ https://fedoraproject.org/wiki/Changes/Harden_all_packages_with_position-independent_code
+
+* Fri Feb 20 2015 Matthias Clasen <mclasen@redhat.com> - 3.15.8-1
+- Update to 3.15.8
+
+* Tue Feb 17 2015 Richard Hughes <rhughes@redhat.com> - 3.15.7-1
+- Update to 3.15.7
+
+* Tue Feb 10 2015 Matthias Clasen <mclasen@redhat.com> - 3.15.6-1
+- Update to 3.15.6
+
+* Thu Jan 22 2015 Richard Hughes <rhughes@redhat.com> - 3.15.4-1
+- Update to 3.15.4
+
+* Wed Dec 17 2014 Kalev Lember <kalevlember@gmail.com> - 3.15.3-1
+- Update to 3.15.3
+- Add gtk-update-icon-cache subpackage that both gtk2 and gtk3 can depend on
+- Run icon cache scriptlets for the -devel subpackage
+
+* Mon Nov 24 2014 Kalev Lember <kalevlember@gmail.com> - 3.15.2-1
+- Update to 3.15.2
+
+* Thu Oct 30 2014 Florian Müllner <fmuellner@redhat.com> - 3.15.1-1
+- Update to 3.15.1
+
+* Tue Oct 21 2014 Kalev Lember <kalevlember@gmail.com> - 3.14.4-1
+- Update to 3.14.4
+
+* Thu Oct 16 2014 Kalev Lember <kalevlember@gmail.com> - 3.14.3-2
+- Backport a patch to fix status icons in XFCE (#1134663)
+
+* Mon Oct 13 2014 Kalev Lember <kalevlember@gmail.com> - 3.14.3-1
+- Update to 3.14.3
+
+* Wed Oct 08 2014 Kalev Lember <kalevlember@gmail.com> - 3.14.2-1
+- Update to 3.14.2
+
+* Fri Oct 03 2014 Kalev Lember <kalevlember@gmail.com> - 3.14.1-2
+- Backport an upstream fix for GtkBuilder type name heuristics
+
+* Tue Sep 30 2014 Kalev Lember <kalevlember@gmail.com> - 3.14.1-1
+- Update to 3.14.1
+
+* Mon Sep 22 2014 Kalev Lember <kalevlember@gmail.com> - 3.14.0-1
+- Update to 3.14.0
+- Tighten deps with the _isa macro
+- Set minimum required wayland version
+
+* Tue Sep 16 2014 Kalev Lember <kalevlember@gmail.com> - 3.13.9-1
+- Update to 3.13.9
+
+* Tue Sep 02 2014 Kalev Lember <kalevlember@gmail.com> - 3.13.8-1
+- Update to 3.13.8
+
+* Thu Aug 28 2014 Kalev Lember <kalevlember@gmail.com> - 3.13.7-3.git5ad60ca
+- Update to today's git snapshot
+
+* Wed Aug 27 2014 Kalev Lember <kalevlember@gmail.com> - 3.13.7-2
+- Backport a few upstream fixes for checkboxes
+
+* Sun Aug 17 2014 Kalev Lember <kalevlember@gmail.com> - 3.13.7-1
+- Update to 3.13.7
+
+* Sat Aug 16 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.13.6-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
+
+* Mon Aug 11 2014 Kalev Lember <kalevlember@gmail.com> - 3.13.6-1
+- Update to 3.13.6
+
+* Tue Jul 22 2014 Kalev Lember <kalevlember@gmail.com> - 3.13.5-2
+- Rebuilt for gobject-introspection 1.41.4
+
+* Tue Jul 22 2014 Kalev Lember <kalevlember@gmail.com> - 3.13.5-1
+- Update to 3.13.5
+
+* Tue Jul 15 2014 Kalev Lember <kalevlember@gmail.com> - 3.13.4-1
+- Update to 3.13.4
+
+* Thu Jun 26 2014 Kalev Lember <kalevlember@gmail.com> - 3.13.3-2
+- Obsolete adwaita-gtk3-theme
+
+* Tue Jun 24 2014 Richard Hughes <rhughes@redhat.com> - 3.13.3-1
+- Update to 3.13.3
+
+* Sat Jun 07 2014 Tim Waugh <twaugh@redhat.com> - 3.13.2-5
+- Added build deps for cloudprint print backend module (bug #1104663).
+
+* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.13.2-4
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
+
+* Fri May 30 2014 Kalev Lember <kalevlember@gmail.com> - 3.13.2-3
+- Backport a GtkBuilder fix to ensure types get fully initialized
+
+* Fri May 30 2014 Kalev Lember <kalevlember@gmail.com> - 3.13.2-2
+- Backport two fixes from git master
+
+* Wed May 28 2014 Kalev Lember <kalevlember@gmail.com> - 3.13.2-1
+- Update to 3.13.2
+
+* Tue Apr 29 2014 Kalev Lember <kalevlember@gmail.com> - 3.13.1-2
+- Depend on adwaita-icon-theme to ensure standard icons are available
+
+* Tue Apr 29 2014 Kalev Lember <kalevlember@gmail.com> - 3.13.1-1
+- Update to 3.13.1
+
+* Sat Apr 12 2014 Kalev Lember <kalevlember@gmail.com> - 3.12.1-1
+- Update to 3.12.1
+
+* Sat Apr 05 2014 Kalev Lember <kalevlember@gmail.com> - 3.12.0-2
+- Update glib2 dep version
+
+* Tue Mar 25 2014 Richard Hughes <rhughes@redhat.com> - 3.12.0-1
+- Update to 3.12.0
+
+* Wed Mar 19 2014 Kalev Lember <kalevlember@gmail.com> - 3.11.9-2
+- Backport a patch for a gnome-terminal crash
+
+* Tue Mar 18 2014 Richard Hughes <rhughes@redhat.com> - 3.11.9-1
+- Update to 3.11.9
+
+* Mon Mar 17 2014 Adam Williamson <awilliam@redhat.com> - 3.11.8-2
+- backport patches for touch dragging of new-style GNOME windows
+
+* Tue Mar 04 2014 Richard Hughes <rhughes@redhat.com> - 3.11.8-1
+- Update to 3.11.8
+
+* Wed Feb 19 2014 Richard Hughes <rhughes@redhat.com> - 3.11.7-1
+- Update to 3.11.7
+
+* Tue Feb 18 2014 Richard Hughes <rhughes@redhat.com> - 3.11.6-1
+- Update to 3.11.6
+
+* Wed Feb 5 2014 Debarshi Ray <rishi@fedoraproject.org> - 3.11.5-1
+- Update to 3.11.5
+
+* Wed Jan 15 2014 Debarshi Ray <rishi@fedoraproject.org> - 3.11.4-1
+- Update to 3.11.4
+
+* Tue Nov 19 2013 Richard Hughes <rhughes@redhat.com> - 3.11.2-1
+- Update to 3.11.2
+
+* Mon Oct 28 2013 Richard Hughes <rhughes@redhat.com> - 3.11.0-1
+- Update to 3.11.0
+
+* Tue Sep 24 2013 Kalev Lember <kalevlember@gmail.com> - 3.10.0-1
+- Update to 3.10.0
+
+* Wed Sep 18 2013 Kalev Lember <kalevlember@gmail.com> - 3.9.16-2
+- Rebuilt with cairo 1.13.1 snapshot for device scale support
+
+* Tue Sep 17 2013 Kalev Lember <kalevlember@gmail.com> - 3.9.16-1
+- Update to 3.9.16
+
+* Tue Sep 3 2013 Kalev Lember <kalevlember@gmail.com> - 3.9.14-1
+- Update to 3.9.14
+
+* Wed Aug 21 2013 Debarshi Ray <rishi@fedoraproject.org> - 3.9.12-1
+- Update to 3.9.12
+
+* Thu Aug 1 2013 Debarshi Ray <rishi@fedoraproject.org> - 3.9.10-1
+- Update to 3.9.10
+
+* Tue Jul 30 2013 Richard Hughes <rhughes@redhat.com> - 3.9.8-2
+- Rebuild for colord soname bump
+
+* Tue Jul 9 2013 Matthias Clasen <mclasen@redhat.com> - 3.9.8-1
+- Update to 3.9.8
+
+* Thu Jul 4 2013 Matthias Clasen <mclasen@redhat.com> - 3.9.6-2
+- Don't put an empty dir into /etc.
+
+* Fri Jun 21 2013 Matthias Clasen <mclasen@redhat.com> - 3.9.6-1
+- Update to 3.9.6
+- Add a tests subpackage
+
+* Thu Jun 20 2013 Kalev Lember <kalevlember@gmail.com> - 3.9.4-1
+- Update to 3.9.4
+
+* Sun Jun 02 2013 Kalev Lember <kalevlember@gmail.com> - 3.9.2-1
+- Update to 3.9.2
+
+* Wed May 8 2013 Matthias Clasen <mclasen@redhat.com> - 3.9.0-2
+- Make man gtk-query-immodules-3.0-64 work
+
+* Sat May 04 2013 Kalev Lember <kalevlember@gmail.com> - 3.9.0-1
+- Update to 3.9.0
+
+* Mon Apr 15 2013 Kalev Lember <kalevlember@gmail.com> - 3.8.1-1
+- Update to 3.8.1
+
+* Mon Mar 25 2013 Kalev Lember <kalevlember@gmail.com> - 3.8.0-1
+- Update to 3.8.0
+
+* Wed Mar 20 2013 Richard Hughes <rhughes@redhat.com> - 3.7.14-1
+- Update to 3.7.14
+
+* Wed Mar 6 2013 Matthias Clasen <mclasen@redhat.com> - 3.7.12-1
+- Update to 3.7.12
+
+* Tue Feb 19 2013 Richard Hughes <rhughes@redhat.com> - 3.7.10-1
+- Update to 3.7.10
+
+* Tue Feb 05 2013 Richard Hughes <rhughes@redhat.com> - 3.7.8-1
+- Update to 3.7.8
+
+* Mon Jan 28 2013 Matthias Clasen <mclasen@redhat.com> - 3.7.6-4
+- Move im-cedilla back to -immodules subpackage to avoid
+ a conflict with gtk2-immodules (#797838)
+
+* Thu Jan 24 2013 Matthias Clasen <mclasen@redhat.com> - 3.7.6-3
+- Enable the Wayland and Broadway backends
+
+* Thu Jan 24 2013 Cosimo Cecchi <cosimoc@redhat.com> - 3.7.6-2
+- Backport two patches from git master to fix window allocations
+
+* Tue Jan 15 2013 Matthias Clasen <mclasen@redhat.com> - 3.7.6-1
+- Update to 3.7.6
+
+* Thu Dec 20 2012 Kalev Lember <kalevlember@gmail.com> - 3.7.4-1
+- Update to 3.7.4
+
+* Tue Nov 20 2012 Richard Hughes <hughsient@gmail.com> - 3.7.2-1
+- Update to 3.7.2
+
+* Thu Nov 08 2012 Kalev Lember <kalevlember@gmail.com> - 3.7.0-1
+- Update to 3.7.0
+
+* Fri Oct 19 2012 Matthias Clasen <mclasen@redhat.com> - 3.6.1-2
+- Don't pull in imsettings just for a directory
+
+* Tue Oct 16 2012 Cosimo Cecchi <cosimoc@redhat.com> - 3.6.1-1
+- Update to 3.6.1
+
+* Fri Oct 12 2012 Bastien Nocera <bnocera@redhat.com> 3.6.0-2
+- Add upstream patch to make Epiphany less painful to use
+
+* Tue Sep 25 2012 Cosimo Cecchi <cosimoc@redhat.com> - 3.6.0-1
+- Update to 3.6.0
+
+* Tue Sep 18 2012 Matthias Clasen <mclasen@redhat.com> - 3.5.18-1
+- Update to 3.5.18
+
+* Thu Sep 06 2012 Richard Hughes <hughsient@gmail.com> - 3.5.16-1
+- Update to 3.5.16
+
+* Tue Sep 04 2012 Richard Hughes <hughsient@gmail.com> - 3.5.14-1
+- Update to 3.5.14
+
+* Wed Aug 22 2012 Cosimo Cecchi <cosimoc@redhat.com> - 3.5.12-2
+- Backport a patch from upstream fixing crashers with app menus
+
+* Tue Aug 21 2012 Richard Hughes <hughsient@gmail.com> - 3.5.12-1
+- Update to 3.5.12
+
+* Tue Aug 07 2012 Richard Hughes <hughsient@gmail.com> - 3.5.10-1
+- Update to 3.5.10
+
+* Thu Jul 19 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.5.8-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild
+
+* Tue Jul 17 2012 Richard Hughes <hughsient@gmail.com> - 3.5.8-1
+- Update to 3.5.8
+
+* Tue Jun 26 2012 Richard Hughes <hughsient@gmail.com> - 3.5.6-1
+- Update to 3.5.6
+
+* Wed Jun 06 2012 Richard Hughes <hughsient@gmail.com> - 3.5.4-1
+- Update to 3.5.4
+
+* Sat May 05 2012 Kalev Lember <kalevlember@gmail.com> - 3.5.2-1
+- Update to 3.5.2
+
+* Tue Mar 27 2012 Richard Hughes <hughsient@gmail.com> - 3.4.0-1
+- Update to 3.4.0
+
+* Tue Mar 20 2012 Kalev Lember <kalevlember@gmail.com> - 3.3.20-1
+- Update to 3.3.20
+
+* Mon Mar 5 2012 Matthias Clasen <mclasen@redhat.com> - 3.3.18-1
+- Update to 3.3.18
+
+* Sat Feb 25 2012 Matthias Clasen <mclasen@redhat.com> - 3.3.16-1
+- Update to 3.3.16
+
+* Tue Feb 7 2012 Matthias Clasen <mclasen@redhat.com> - 3.3.14-1
+- Update to 3.3.14
+
+* Fri Jan 20 2012 Matthias Clasen <mclasen@redhat.com> - 3.3.10-1
+- Update to 3.3.10
+
+* Tue Jan 17 2012 Matthias Clasen <mclasen@redhat.com> - 3.3.8-1
+- Update to 3.3.8
+
+* Fri Jan 13 2012 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 3.3.6-3
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild
+
+* Thu Dec 22 2011 Matthias Clasen <mclasen@redhat.com> - 3.3.6-2
+- Revert a problematic focus handling change
+
+* Mon Dec 19 2011 Matthias Clasen <mclasen@redhat.com> - 3.3.6-1
+- Update to 3.3.6
+
+* Mon Nov 21 2011 Matthias Clasen <mclasen@redhat.com> - 3.3.4-1
+- Update to 3.3.4
+
+* Wed Nov 3 2011 Matthias Clasen <mclasen@redhat.com> - 3.3.2-1
+- Update to 3.3.2
+
+* Fri Oct 14 2011 Matthias Clasen <mclasen@redhat.com> - 3.2.1-1
+- Update to 3.2.1
+
+* Mon Sep 26 2011 Ray <rstrode@redhat.com> - 3.2.0-1
+- Update to 3.2.0
+
+* Fri Sep 23 2011 Matthias Clasen <mclasen@redhat.com> - 3.1.92-2
+- Fix crashes when turning a11y on and off repeatedly
+
+* Mon Sep 19 2011 Matthias Clasen <mclasen@redhat.com> - 3.1.92-1
+- Update to 3.1.92
+
+* Tue Sep 13 2011 Matthias Clasen <mclasen@redhat.com> - 3.1.90-1
+- Update to 3.1.90
+
+* Mon Sep 5 2011 Matthias Clasen <mclasen@redhat.com> - 3.1.18-1
+- Update to 3.1.18
+
+* Tue Aug 30 2011 Matthias Clasen <mclasen@redhat.com> - 3.1.16-1
+- Update to 3.1.16
+
+* Tue Aug 16 2011 Matthias Clasen <mclasen@redhat.com> - 3.1.12-1
+- Update to 3.1.12
+
+* Sat Jul 23 2011 Matthias Clasen <mclasen@redhat.com> - 3.1.10-1
+- Update to 3.1.10
+
+* Tue Jul 5 2011 Matthias Clasen <mclasen@redhat.com> - 3.1.8-1
+- Update to 3.1.8
+
+* Tue Jun 14 2011 Matthias Clasen <mclasen@redhat.com> - 3.1.6-1
+- Update to 3.1.6
+
+* Wed May 11 2011 Tomas Bzatek <tbzatek@redhat.com> - 3.1.4-1
+- Update to 3.1.4
+
+* Fri Apr 15 2011 Matthias Clasen <mclasen@redhat.com> - 3.0.9-1
+- Update to 3.0.9
+
+* Thu Apr 14 2011 Matthias Clasen <mclasen@redhat.com> - 3.0.8-3
+- Move im-cedilla back to the main package (#637399)
+
+* Mon Apr 4 2011 Matthias Clasen <mclasen@redhat.com> - 3.0.8-2
+- Add a missed backport
+
+* Sun Apr 3 2011 Matthias Clasen <mclasen@redhat.com> - 3.0.8-1
+- Update to 3.0.8
+
+* Fri Apr 1 2011 Matthias Clasen <mclasen@redhat.com> - 3.0.7-1
+- Update to 3.0.7
+
+* Fri Mar 25 2011 Matthias Clasen <mclasen@redhat.com> - 3.0.6-1
+- Update to 3.0.6
+
+* Wed Mar 23 2011 Matthias Clasen <mclasen@redhat.com> - 3.0.5-1
+- Update to 3.0.5
+
+* Mon Mar 21 2011 Matthias Clasen <mclasen@redhat.com> - 3.0.4-1
+- Update to 3.0.4
+
+* Mon Mar 14 2011 Matthias Clasen <mclasen@redhat.com> - 3.0.3-1
+- Update to 3.0.3
+
+* Mon Mar 7 2011 Matthias Clasen <mclasen@redhat.com> - 3.0.2-1
+- Update to 3.0.2
+
+* Sat Feb 26 2011 Matthias Clasen <mclasen@redhat.com> - 3.0.1-2
+- Fix frequent crashes on double-click events
+
+* Mon Feb 21 2011 Matthias Clasen <mclasen@redhat.com> - 3.0.1-1
+- Update to 3.0.1
+
+* Thu Feb 10 2011 Matthias Clasen <mclasen@redhat.com> - 3.0.0-1
+- Update to 3.0.0
+
+* Wed Feb 09 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.99.3-2
+- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
+
+* Tue Feb 1 2011 Matthias Clasen <mclasen@redhat.com> - 2.99.3-1
+- Update to 2.99.3
+
+* Mon Jan 24 2011 Dan Williams <dcbw@redhat.com> 2.99.2-2
+- Fix bug in gtk_show_uri() which caused crashes when plugging in USB drives
+
+* Wed Jan 12 2011 Matthias Clasen <mclasen@redhat.com> 2.99.2-1
+- Update to 2.99.2
+
+* Mon Jan 10 2011 Matthias Clasen <mclasen@redhat.com> 2.99.1-1
+- Update to 2.99.1
+
+* Mon Jan 10 2011 Matthias Clasen <mclasen@redhat.com> 2.99.0-3
+- Obsolete gtk3-engines
+
+* Fri Jan 7 2011 Matthias Clasen <mclasen@redhat.com> 2.99.0-2
+- Provide the right directory for theming engines
+
+* Thu Jan 6 2011 Matthias Clasen <mclasen@redhat.com> 2.99.0-1
+- Update to 2.99.0
+- Drop gtk-update-icon-cache and gtk-builder-convert to
+ avoid conflict with gtk2
+- Drop the tooltips-style patch for now
+
+* Thu Dec 2 2010 Matthias Clasen <mclasen@redhat.com> 2.91.5-1
+- Update to 2.91.5
+
+* Fri Nov 12 2010 Matthias Clasen <mclasen@redhat.com> 2.91.4-2
+- Make gnome-terminal work again
+
+* Thu Nov 11 2010 Matthias Clasen <mclasen@redhat.com> 2.91.4-1
+- Update to 2.91.4
+
+* Mon Nov 1 2010 Matthias Clasen <mclasen@redhat.com> 2.91.3-1
+- Update to 2.91.3
+
+* Wed Oct 20 2010 Richard Hughes <richard@hughsie.com> 2.91.1-1
+- Update to 2.91.1
+
+* Tue Oct 12 2010 Matthias Clasen <mclasen@redhat.com> 2.91.0-2
+- Fix a crash in the tooltip code
+
+* Sat Oct 2 2010 Matthias Clasen <mclasen@redhat.com> 2.91.0-1
+- Update to 2.91.0
+
+* Wed Sep 29 2010 jkeating - 2.90.7-3
+- Rebuilt for gcc bug 634757
+
+* Tue Sep 21 2010 Matthias Clasen <mclaesn@redhat.com> 2.90.7-2
+- Reinstate the tooltip look
+
+* Mon Sep 20 2010 Bastien Nocera <bnocera@redhat.com> 2.90.7-1
+- Update to 2.90.7
+
+* Mon Aug 23 2010 Matthias Clasen <mclasen@redhat.com> - 2.90.5-5
+- Co-own /usr/share/gtk-doc
+- gtk3-devel requires gdk-pixbuf2-devel
+
+* Mon Jul 26 2010 Colin Walters <walters@verbum.org> - 2.90.5-4
+- gtk3-devel requires gdk-pixbuf-devel
+
+* Thu Jul 22 2010 Colin Walters <walters@verbum.org> - 2.90.5-2
+- Rebuild with new gobject-introspection
+
+* Mon Jul 22 2010 Matthias Clasen <mclasen@redhat.com> 2.90.5-1
+- Update to 2.90.5
+
+* Fri Jul 9 2010 Colin Walters <walters@verbum.org> - 2.90.4-3
+- Update tooltip style patch to remove unused GdkRegion
+
+* Tue Jun 29 2010 Colin Walters <walters@pocket> - 2.90.4-2
+- Changes to support rebuilds from snapshots
+
+* Mon Jun 28 2010 Matthias Clasen <mclasen@redhat.com> 2.90.4-1
+- Update to 2.90.4
+
+* Fri Jun 18 2010 Matthias Clasen <mclasen@redhat.com> 2.90.3-1
+- Update to 2.90.3
+
+* Sat Jun 12 2010 Matthias Clasen <mclasen@redhat.com> 2.90.2-2
+- Copy some tweaks from gtk2
+
+* Tue Jun 8 2010 Matthias Clasen <mclasen@redhat.com> 2.90.2-1
+- Update to 2.90.2
+
+* Tue May 25 2010 Matthias Clasen <mclasen@redhat.com> 2.90.1-1
+- Update to 2.90.1
+
+* Fri May 21 2010 Matthias Clasen <mclasen@redhat.com> 2.90.0-5
+- Some more package review feedback
+
+* Thu May 20 2010 Matthias Clasen <mclasen@redhat.com> 2.90.0-4
+- Remove %%check again, it causes trouble
+
+* Mon May 17 2010 Matthias Clasen <mclasen@redhat.com> 2.90.0-3
+- More review feedback
+
+* Wed May 12 2010 Matthias Clasen <mclasen@redhat.com> 2.90.0-2
+- Incorporate review feedback
+
+* Wed May 11 2010 Matthias Clasen <mclasen@redhat.com> 2.90.0-1
+- Update to the 2.90.0 release
+- Complete parallel installability
+
+* Mon May 10 2010 Richard Hughes <richard@hughsie.com> 2.90.0-0.0.20100510git
+- Update from git
diff --git a/sources b/sources
new file mode 100644
index 0000000..4059dda
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+1c4821835d6ffe7cf5b35c320f89569b gtk+-3.24.31.tar.xz