diff --git a/.SRCINFO b/.SRCINFO index 650be7f..573a3ab 100644 --- a/.SRCINFO +++ b/.SRCINFO @@ -1,7 +1,7 @@ pkgbase = gtk3-mushrooms pkgdesc = GTK3 library with my modifications (see README). pkgver = 3.22.30 - pkgrel = 1 + pkgrel = 2 url = http://www.gtk.org/ arch = x86_64 license = LGPL @@ -55,16 +55,16 @@ pkgbase = gtk3-mushrooms source = file-chooser__places-sidebar.patch source = file-chooser__typeahead.patch source = fixes__atk-bridge-errors.patch + source = fixes__labels-wrapping.patch source = fixes__too-large-menu-covers-bar.patch - source = fixes__window-background.patch source = other__hide-insert-emoji.patch source = other__mnemonics-delay.patch source = popovers__color-chooser.patch source = popovers__file-chooser-list.patch - source = popovers__menu-button.patch source = popovers__places-sidebar.patch source = smaller-adwaita.css source = https://download.gnome.org/sources/gtk+/3.22/gtk+-3.22.30.tar.xz + source = upstream_window_background._patch::https://github.com/GNOME/gtk/commit/2ce63a86ba689aa41eb47409c889c469497478b0.patch source = settings.ini::https://git.archlinux.org/svntogit/packages.git/plain/trunk/settings.ini?h=packages/gtk3&id=fbcc57e8a97827926b6624bb8bc570f675c7188d source = gtk-query-immodules-3.0.hook::https://git.archlinux.org/svntogit/packages.git/plain/trunk/gtk-query-immodules-3.0.hook?h=packages/gtk3&id=fbcc57e8a97827926b6624bb8bc570f675c7188d sha256sums = 68b26360764a2ea7e057a2aaa29c6fdfe164b9987866e038d8d0188a025477fb @@ -81,16 +81,16 @@ pkgbase = gtk3-mushrooms sha256sums = f0c8cbccab2bc9743075135bd5fa74f28dca722e8e723cf46e0dfa2b004a3791 sha256sums = 7b987cc9bd7ca9722bfb881b30b082c0d7409e3cd68592f5e7a1f401d73e7672 sha256sums = 99b12d7af7efc6a014e6afcab1ee82ea0feb0b5a4e9bbd663d1c45354cd34f2b + sha256sums = c45ed844355b5a4036c2df9a1710a04c4788b78add730506040ebdfb9ec53117 sha256sums = d4d27ccc5735ee1d2c8483da659ded3a05e9d33b3fe41d8ed77495e9ec38be96 - sha256sums = 3067face12ad74d664ab7951f59026c01eb8070bef007b522eb84aef1576674a sha256sums = acd3babd22add981690728e84a89fb8bb332b7ac746e9db7cdb27c47f1ac0042 sha256sums = c213812e1fafeb5565f7e329c4501195f04adcfe377b88439a6d51d478edc071 sha256sums = 7f3e5da1622e243243ea9b1e487460f608dc375e79d800d2f0d826fd30be68ed sha256sums = ef4fed3a364db8eb9c15c9ce0e733035722f168dc88b385df2178fc1168ada54 - sha256sums = fe421b6197b4e98254019896ec79ea6b29a2140e7950ce3018ae0e1e4047b0c0 sha256sums = 2de68b575494d0d034accd7cd0ce881f366d5201a48496d8748c43f297836eac sha256sums = 0554ba2085fb8cec8e3b926efc250ae5c15cf47f2612c10cdd0e849bfb8d05a5 sha256sums = a1a4a5c12703d4e1ccda28333b87ff462741dc365131fbc94c218ae81d9a6567 + sha256sums = 98b99ed14cc7545d1f30e244fe793ddd21a7db9d6f5e78b677113a89b621e459 sha256sums = 01fc1d81dc82c4a052ac6e25bf9a04e7647267cc3017bc91f9ce3e63e5eb9202 sha256sums = de46e5514ff39a7a65e01e485e874775ab1c0ad20b8e94ada43f4a6af1370845 diff --git a/PKGBUILD b/PKGBUILD index 7d0bc7e..7f8e0b0 100644 --- a/PKGBUILD +++ b/PKGBUILD @@ -7,7 +7,7 @@ __arch_pkg_commit="fbcc57e8a97827926b6624bb8bc570f675c7188d" pkgname=gtk3-mushrooms pkgver=3.22.30 -pkgrel=1 +pkgrel=2 pkgdesc="GTK3 library with my modifications (see README)." url="http://www.gtk.org/" conflicts=(gtk3 gtk3-print-backends) @@ -47,13 +47,12 @@ source=( "file-chooser__places-sidebar.patch" "file-chooser__typeahead.patch" "fixes__atk-bridge-errors.patch" + "fixes__labels-wrapping.patch" "fixes__too-large-menu-covers-bar.patch" - "fixes__window-background.patch" "other__hide-insert-emoji.patch" "other__mnemonics-delay.patch" "popovers__color-chooser.patch" "popovers__file-chooser-list.patch" - "popovers__menu-button.patch" "popovers__places-sidebar.patch" # Theme CSS stylesheet. @@ -62,6 +61,9 @@ source=( # GTK source code. "https://download.gnome.org/sources/gtk+/${pkgver%.*}/gtk+-$pkgver.tar.xz" + # Temporary. Will be removed with next GTK3 release. + "upstream_window_background._patch::https://github.com/GNOME/gtk/commit/2ce63a86ba689aa41eb47409c889c469497478b0.patch" + # Arch Linux package files. "settings.ini::https://git.archlinux.org/svntogit/packages.git/plain/trunk/settings.ini?h=packages/gtk3&id=$__arch_pkg_commit" "gtk-query-immodules-3.0.hook::https://git.archlinux.org/svntogit/packages.git/plain/trunk/gtk-query-immodules-3.0.hook?h=packages/gtk3&id=$__arch_pkg_commit" @@ -81,16 +83,16 @@ sha256sums=( "f0c8cbccab2bc9743075135bd5fa74f28dca722e8e723cf46e0dfa2b004a3791" "7b987cc9bd7ca9722bfb881b30b082c0d7409e3cd68592f5e7a1f401d73e7672" "99b12d7af7efc6a014e6afcab1ee82ea0feb0b5a4e9bbd663d1c45354cd34f2b" + "c45ed844355b5a4036c2df9a1710a04c4788b78add730506040ebdfb9ec53117" "d4d27ccc5735ee1d2c8483da659ded3a05e9d33b3fe41d8ed77495e9ec38be96" - "3067face12ad74d664ab7951f59026c01eb8070bef007b522eb84aef1576674a" "acd3babd22add981690728e84a89fb8bb332b7ac746e9db7cdb27c47f1ac0042" "c213812e1fafeb5565f7e329c4501195f04adcfe377b88439a6d51d478edc071" "7f3e5da1622e243243ea9b1e487460f608dc375e79d800d2f0d826fd30be68ed" "ef4fed3a364db8eb9c15c9ce0e733035722f168dc88b385df2178fc1168ada54" - "fe421b6197b4e98254019896ec79ea6b29a2140e7950ce3018ae0e1e4047b0c0" "2de68b575494d0d034accd7cd0ce881f366d5201a48496d8748c43f297836eac" "0554ba2085fb8cec8e3b926efc250ae5c15cf47f2612c10cdd0e849bfb8d05a5" "a1a4a5c12703d4e1ccda28333b87ff462741dc365131fbc94c218ae81d9a6567" + "98b99ed14cc7545d1f30e244fe793ddd21a7db9d6f5e78b677113a89b621e459" "01fc1d81dc82c4a052ac6e25bf9a04e7647267cc3017bc91f9ce3e63e5eb9202" "de46e5514ff39a7a65e01e485e874775ab1c0ad20b8e94ada43f4a6af1370845" ) @@ -143,6 +145,9 @@ prepare() # Apply patches to GTK code. __patch_gtk_code + # Temporary patch. Will be removed with next GTK3 release. + patch -p 1 -i "$srcdir/upstream_window_background._patch" + NOCONFIGURE=1 ./autogen.sh } diff --git a/README.md b/README.md index 34aa88a..6592704 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -gtk3-mushrooms +gtk3-mushrooms === This is a set of patches for GTK3 library that makes it better for me and maybe for you too. ;-) I haven't wide knowledge about programming in C, so quality of this patches can be not good. But it works! See list of patches below. @@ -24,18 +24,14 @@ File chooser Appearance --- +* Message dialogs have traditional appearance with left-aligned texts and right-aligned buttons. * Some GTK stock icons on buttons and context menus are restored. You can see it in GTK internal dialogs and in some applications. * Regular colorized icons instead of symbolic icons are used in file chooser dialog. -* Message dialogs have traditional appearance with left-aligned texts and right-aligned buttons. * Appearance of print dialog is less "gnomish", natural margins are restored. * Backdrop CSS state is disabled. Inactive windows don't look differently. You can restore backdrop state by setting `GTK_CSD` environment variable. * Status bars are smaller regardless of used theme. - -Popovers ---- - * File chooser dialog, places sidebar and color chooser dialog use classic menu as context menu instead of popover. -* Menus of menu buttons are displayed as classic menu instead of popover. + Default settings --- @@ -54,9 +50,9 @@ Other Fixes --- -* Window background is set properly to theme background color instead of solid black. See https://bugzilla.gnome.org/show_bug.cgi?id=771708. -* Errors in console output because of integration with Accessibility Toolkit are hidden. See https://unix.stackexchange.com/questions/230238. * Menu bars are not covered by too high popup menus. See https://bugzilla.gnome.org/show_bug.cgi?id=792764. +* Labels are wrapped similarly to GTK2. This patch fixes too wide windows in applications improperly ported from GTK2. +* Errors in console output because of integration with Accessibility Toolkit are hidden. See https://unix.stackexchange.com/questions/230238. -------- @@ -64,4 +60,3 @@ Credits --- * https://aur.archlinux.org/packages/gtk3-typeahead — file chooser typeahead patch. -* https://bugzilla.gnome.org/show_bug.cgi?id=757104#c0 — window background patch. diff --git a/fixes__labels-wrapping.patch b/fixes__labels-wrapping.patch new file mode 100644 index 0000000..131a5f1 --- /dev/null +++ b/fixes__labels-wrapping.patch @@ -0,0 +1,16 @@ +diff --color -U 5 -r -Z -B ./org/gtk/gtklabel.c ./mod/gtk/gtklabel.c +--- ./org/gtk/gtklabel.c 2018-02-17 23:30:46.000000000 +0100 ++++ ./mod/gtk/gtklabel.c 2018-05-25 21:23:33.053987024 +0200 +@@ -1366,11 +1366,11 @@ + priv = label->priv; + + gtk_widget_set_has_window (GTK_WIDGET (label), FALSE); + + priv->width_chars = -1; +- priv->max_width_chars = -1; ++ priv->max_width_chars = 56; + priv->label = g_strdup (""); + priv->lines = -1; + + priv->xalign = 0.5; + priv->yalign = 0.5; diff --git a/fixes__window-background.patch b/fixes__window-background.patch deleted file mode 100644 index c7f70be..0000000 --- a/fixes__window-background.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff --color -U 5 -r -Z -B ./org/gtk/gtkwindow.c ./mod/gtk/gtkwindow.c ---- ./org/gtk/gtkwindow.c 2017-10-27 22:06:52.000000000 +0200 -+++ ./mod/gtk/gtkwindow.c 2017-10-30 21:27:43.370340735 +0100 -@@ -7428,10 +7428,12 @@ - } - - gtk_widget_set_window (widget, gdk_window); - gtk_widget_register_window (widget, gdk_window); - gtk_widget_set_realized (widget, TRUE); -+ if (!priv->client_decorated && !gtk_widget_get_app_paintable (widget)) -+ gtk_style_context_set_background (gtk_widget_get_style_context (widget), gdk_window); - - attributes.x = allocation.x; - attributes.y = allocation.y; - attributes.width = allocation.width; - attributes.height = allocation.height; diff --git a/popovers__menu-button.patch b/popovers__menu-button.patch deleted file mode 100644 index 3cc1fb0..0000000 --- a/popovers__menu-button.patch +++ /dev/null @@ -1,16 +0,0 @@ -diff --color -U 5 -r -Z -B ./org/gtk/gtkmenubutton.c ./mod/gtk/gtkmenubutton.c ---- ./org/gtk/gtkmenubutton.c 2017-10-26 06:32:02.000000000 +0200 -+++ ./mod/gtk/gtkmenubutton.c 2017-10-30 22:00:30.863771554 +0100 -@@ -821,11 +821,11 @@ - if (menu_model) - g_object_ref (menu_model); - - if (menu_model) - { -- if (priv->use_popover) -+ if (g_getenv ("GTK_CSD") != FALSE && priv->use_popover) - { - GtkWidget *popover; - - popover = gtk_popover_new_from_model (GTK_WIDGET (menu_button), menu_model); - gtk_menu_button_set_popover (menu_button, popover);