Accepting request 560577 from GNOME:Factory

OBS-URL: https://build.opensuse.org/request/show/560577
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/gtk2?expand=0&rev=163
This commit is contained in:
Dominique Leuenberger 2018-01-09 13:35:40 +00:00 committed by Git OBS Bridge
commit 89a05bfdc3
8 changed files with 114 additions and 180 deletions

14
_service Normal file
View File

@ -0,0 +1,14 @@
<services>
<service mode="disabled" name="tar_scm">
<param name="url">git://git.gnome.org/gtk+</param>
<param name="scm">git</param>
<param name="revision">gtk-2-24</param>
<param name="versionformat">2.24.31+%cd.%h</param>
<param name="changesgenerate">enable</param>
</service>
<service mode="disabled" name="recompress">
<param name="file">*.tar</param>
<param name="compression">xz</param>
</service>
<service mode="disabled" name="set_version" />
</services>

4
_servicedata Normal file
View File

@ -0,0 +1,4 @@
<servicedata>
<service name="tar_scm">
<param name="url">git://git.gnome.org/gtk+</param>
<param name="changesrevision">61d5c82f5ca7d4f00f8182d17d30c350f43a4424</param></service></servicedata>

View File

@ -1,11 +0,0 @@
--- gtk+-2.10.1/modules/input/imxim.c
+++ gtk+-2.10.1/modules/input/imxim.c
@@ -28,7 +28,7 @@
N_("X Input Method"), /* Human readable name */
GETTEXT_PACKAGE, /* Translation domain */
GTK_LOCALEDIR, /* Dir for bindtextdomain (not strictly needed for "gtk+") */
- "ko:ja:th:zh" /* Languages for which this module is the default */
+ "*" /* Languages for which this module is the default */
};
static const GtkIMContextInfo *info_list[] = {

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:278157dee9976d8da436d67e946b78ad9342dc260c0322f97a8cd79d81b39267
size 9178392

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:68c1922732c7efc08df4656a5366dcc3afdc8791513400dac276009b40954658
size 12805344

View File

@ -1,116 +0,0 @@
diff -up gtk+-2.24.7/gtk/gtkmenushell.c.window-dragging gtk+-2.24.7/gtk/gtkmenushell.c
--- gtk+-2.24.7/gtk/gtkmenushell.c.window-dragging 2011-08-15 22:30:52.000000000 -0400
+++ gtk+-2.24.7/gtk/gtkmenushell.c 2011-10-17 19:50:52.180468086 -0400
@@ -589,18 +589,45 @@ gtk_menu_shell_button_press (GtkWidget
if (!menu_shell->active || !menu_shell->button)
{
- _gtk_menu_shell_activate (menu_shell);
+ gboolean initially_active = menu_shell->active;
menu_shell->button = event->button;
- if (menu_item && _gtk_menu_item_is_selectable (menu_item) &&
- menu_item->parent == widget &&
- menu_item != menu_shell->active_menu_item)
+ if (menu_item)
{
- if (GTK_MENU_SHELL_GET_CLASS (menu_shell)->submenu_placement == GTK_TOP_BOTTOM)
+ if (_gtk_menu_item_is_selectable (menu_item) &&
+ menu_item->parent == widget &&
+ menu_item != menu_shell->active_menu_item)
{
- menu_shell->activate_time = event->time;
- gtk_menu_shell_select_item (menu_shell, menu_item);
+ _gtk_menu_shell_activate (menu_shell);
+ menu_shell->button = event->button;
+
+ if (GTK_MENU_SHELL_GET_CLASS (menu_shell)->submenu_placement == GTK_TOP_BOTTOM)
+ {
+ menu_shell->activate_time = event->time;
+ gtk_menu_shell_select_item (menu_shell, menu_item);
+ }
+ }
+ }
+ else
+ {
+ if (!initially_active)
+ {
+ gboolean window_drag = FALSE;
+
+ gtk_widget_style_get (widget,
+ "window-dragging", &window_drag,
+ NULL);
+
+ if (window_drag)
+ {
+ gtk_menu_shell_deactivate (menu_shell);
+ gtk_window_begin_move_drag (GTK_WINDOW (gtk_widget_get_toplevel (widget)),
+ event->button,
+ event->x_root,
+ event->y_root,
+ event->time);
+ }
}
}
}
diff -up gtk+-2.24.7/gtk/gtktoolbar.c.window-dragging gtk+-2.24.7/gtk/gtktoolbar.c
--- gtk+-2.24.7/gtk/gtktoolbar.c.window-dragging 2011-10-01 11:29:06.000000000 -0400
+++ gtk+-2.24.7/gtk/gtktoolbar.c 2011-10-17 19:52:56.104463657 -0400
@@ -2701,6 +2701,8 @@ static gboolean
gtk_toolbar_button_press (GtkWidget *toolbar,
GdkEventButton *event)
{
+ GtkWidget *window;
+
if (_gtk_button_event_triggers_context_menu (event))
{
gboolean return_value;
@@ -2711,7 +2713,29 @@ gtk_toolbar_button_press (GtkWidget
return return_value;
}
-
+
+ window = gtk_widget_get_toplevel (toolbar);
+
+ if (window)
+ {
+ gboolean window_drag = FALSE;
+
+ gtk_widget_style_get (toolbar,
+ "window-dragging", &window_drag,
+ NULL);
+
+ if (window_drag)
+ {
+ gtk_window_begin_move_drag (GTK_WINDOW (window),
+ event->button,
+ event->x_root,
+ event->y_root,
+ event->time);
+
+ return TRUE;
+ }
+ }
+
return FALSE;
}
diff -up gtk+-2.24.7/gtk/gtkwidget.c.window-dragging gtk+-2.24.7/gtk/gtkwidget.c
--- gtk+-2.24.7/gtk/gtkwidget.c.window-dragging 2011-10-17 19:50:52.175468086 -0400
+++ gtk+-2.24.7/gtk/gtkwidget.c 2011-10-17 19:50:52.184468086 -0400
@@ -2467,6 +2467,13 @@ gtk_widget_class_init (GtkWidgetClass *k
0.0, 1.0, 0.04,
GTK_PARAM_READABLE));
+ gtk_widget_class_install_style_property (klass,
+ g_param_spec_boolean ("window-dragging",
+ P_("Window dragging"),
+ P_("Window dragging"),
+ FALSE,
+ GTK_PARAM_READWRITE));
+
/**
* GtkWidget:draw-border:
*

View File

@ -1,3 +1,46 @@
-------------------------------------------------------------------
Fri Dec 29 00:02:17 UTC 2017 - jengelh@inai.de
- Sync summaries with gtk4.
-------------------------------------------------------------------
Tue Dec 26 01:55:39 UTC 2017 - yfjiang@suse.com
- Manually move the position of "Group System/Libraries" line,
which was moved automatically by format_spec_file, above the
comment of "Requires: hicolor-icon-theme":
https://lists.opensuse.org/opensuse-packaging/2017-07/msg00062.html
-------------------------------------------------------------------
Thu Dec 21 20:17:29 UTC 2017 - zaitor@opensuse.org
- Update to version 2.24.31+20171209.61d5c82f5c:
+ Fix updating the widget accessible description when using its
tooltip
+ Fix introspection builds on Visual Studio 2017
+ imcontextxim: Fix showing glyph in status window
+ Visual Studio builds: Improve binary security
+ Fixed: If cant add child, dont add to child info
+ ComboBox: Dont let modes disconnect each other
+ Enter submenus when activating their parent item
+ ComboBox: Dont pile up ::grab-broken handlers
+ testcombo: Test grid :row- and :column-span-column
+ Updated translations.
- Switch to git checkout via source service.
- Following the above, remove gnome-common BuildRequires and
gnome-autogen.sh call. Replace with libtool BuildRequires and
autogen.sh call, also add gtk-doc BuildRequires and pass
--enable-gtk-doc to configure.
- Clean up patch numbering.
- Drop gtk2-window-dragging.patch: Fixed upstream (bgo#554057).
- Drop bugzilla-131498-allow-xim-for-all-languages.patch: This
patch was only applied to work around a missing recommends for
scim-32Bit, stop doing that, as we should not fix errors in other
packages in a toolkit.
- Conditionally apply translations-update-upstream BuildRequires
and macro for non-openSUSE only.
-------------------------------------------------------------------
Tue Dec 5 11:44:50 UTC 2017 - dimstar@opensuse.org

100
gtk2.spec
View File

@ -20,61 +20,54 @@
%define gtk_binary_version 2.10.0
%define _name gtk+
Name: gtk2
Version: 2.24.31
Version: 2.24.31+20171209.61d5c82f5c
Release: 0
# FIXME: when updating to next version, check whether we can remove the workaround for bgo#596977 below (removing -fomit-frame-pointer)
Summary: The GTK+ toolkit library (version 2)
License: LGPL-2.1+
Group: System/Libraries
Url: http://www.gtk.org/
Source: http://download.gnome.org/sources/gtk+/2.24/%{_name}-%{version}.tar.xz
#Source0: http://download.gnome.org/sources/gtk+/2.24/%%{_name}-%%{version}.tar.xz
Source: %{_name}-%{version}.tar.xz
Source2: README.SUSE
Source3: gtkrc
Source4: baselibs.conf
Source5: macros.gtk2
# PATCH-FIX-UPSTREAM gtk2-window-dragging.patch bgo#611313 -- Taken from Fedora, to support window dragging from menubars/toolbars
Patch0: gtk2-window-dragging.patch
# PATCH-FEATURE-OPENSUSE gtk2-updateiconcache_sort.patch olh@opensuse.org -- Have gtp-update-icon-cache sort the file list before producing a cache
Patch1: gtk2-updateiconcache_sort.patch
# PATCH-FIX-OPENSUSE gtk2-GTK_PATH64.patch sbrabec@novell.com - 64-bit dual install. Use GTK_PATH64 environment variable instead of GTK_PATH
Patch8: gtk2-GTK_PATH64.patch
Patch0: gtk2-GTK_PATH64.patch
# PATCH-FEATURE-UPSTREAM bugzilla-129753-gtk+-2.8.9-localize-font-style-name.diff bnc129753 bgo319484 mfabian@novell.com - Translate the font styles in the GUI
Patch22: bugzilla-129753-gtk+-2.8.9-localize-font-style-name.diff
# PATCH-FIX-OPENSUSE bugzilla-131498-allow-xim-for-all-languages.patch bnc131498 mfabian@novell.com - Allow all languages to be run with the X Input Method
Patch23: bugzilla-131498-allow-xim-for-all-languages.patch
Patch1: bugzilla-129753-gtk+-2.8.9-localize-font-style-name.diff
# PATCH-FIX-UPSTREAM gtk2-bnc130159-bgo319483-async-selection-in-gtk-font-selection.diff bnc130159 bgo319483 federico@novell.com - Load fonts asynchronously in GtkFontSelection to make it appear faster for CJK languages
Patch24: gtk2-bnc130159-bgo319483-async-selection-in-gtk-font-selection.diff
# Patches taken from upstream or slated to go upstream. We can expect these to become obsolete
# in future releases.
# Please don't delete this comment even if this section is empty -- "# empty" should
# be sufficient.
# FIXME: this section is incomplete, and that some of the patches listed earlier should
# be here instead.
Patch2: gtk2-bnc130159-bgo319483-async-selection-in-gtk-font-selection.diff
# PATCH-FIX-OPENSUSE gtk-path-local.patch Search in /usr/local/%{_lib} by default. bnc369696 bgo534474
Patch53: gtk-path-local.patch
Patch3: gtk-path-local.patch
# PATCH-FIX-UPSTREAM gtk2-default-printer.patch bgo#577642 mgorse@suse.com -- Save selected printer as default
Patch55: gtk2-default-printer.patch
Patch4: gtk2-default-printer.patch
# PATCH-FIX-UPSTREAM gtk2-bgo625202-30-bit-drawables-remain-black.patch bgo#625202 ku.b@gmx.de -- 30-bit drawables remain black
Patch56: gtk2-bgo625202-30-bit-drawables-remain-black.patch
Patch5: gtk2-bgo625202-30-bit-drawables-remain-black.patch
# PATCH-FIX-UPSTREAM gtk2-bgo743166-remember-printing-authentication.patch bgo#674264 joschibrauchle@gmx.de -- Credentials from gnome-keyring is not used while printing in GTK 2
Patch57: gtk2-bgo743166-remember-printing-authentication.patch
Patch6: gtk2-bgo743166-remember-printing-authentication.patch
# PATCH-FEATURE-OPENSUSE gtk2-converter-python3.patch dimstar@opensuse.org -- Use python3 for gtk-build-converter
Patch100: gtk2-converter-python3.patch
Patch7: gtk2-converter-python3.patch
# PATCH-FEATURE-OPENSUSE gtk2-updateiconcache_sort.patch olh@opensuse.org -- Have gtp-update-icon-cache sort the file list before producing a cache
Patch8: gtk2-updateiconcache_sort.patch
BuildRequires: atk-devel
BuildRequires: cairo-devel
BuildRequires: cups-devel
BuildRequires: fdupes
BuildRequires: gcc-c++
BuildRequires: gdk-pixbuf-devel
# Needed for patches touching the build system
BuildRequires: gnome-common
BuildRequires: gnome-patch-translation
BuildRequires: gobject-introspection-devel
BuildRequires: gtk-doc
BuildRequires: libjasper-devel
BuildRequires: libtiff-devel
# Needed for patches touching the build system / bootstrapping
BuildRequires: libtool
BuildRequires: pango-devel
BuildRequires: pkgconfig
BuildRequires: translation-update-upstream
BuildRequires: pkgconfig(fontconfig)
BuildRequires: pkgconfig(x11)
BuildRequires: pkgconfig(xcomposite)
@ -86,6 +79,9 @@ BuildRequires: pkgconfig(xi)
BuildRequires: pkgconfig(xinerama)
BuildRequires: pkgconfig(xrandr) >= 1.2.99
BuildRequires: pkgconfig(xrender)
%if !0%{?is_opensuse}
BuildRequires: translation-update-upstream
%endif
%description
GTK+ is a multi-platform toolkit for creating graphical user interfaces.
@ -95,6 +91,7 @@ ranging from small one-off projects to complete application suites.
%package -n libgtk-2_0-0
Summary: The GTK+ toolkit library (version 2)
Group: System/Libraries
# While hicolor is not a Requires strictly speaking, we put it as
# such instead of as a Recommends because many applications just
# assume it's there and we need to have a low-level package to
@ -126,7 +123,7 @@ Offering a complete set of widgets, GTK+ is suitable for projects
ranging from small one-off projects to complete application suites.
%package -n typelib-1_0-Gtk-2_0
Summary: The GTK+ toolkit library (version 2) -- Introspection bindings
Summary: Introspection bindings for the GTK+ toolkit library v2
Group: System/Libraries
%description -n typelib-1_0-Gtk-2_0
@ -137,7 +134,7 @@ ranging from small one-off projects to complete application suites.
This package provides the GObject Introspection bindings for GTK+.
%package immodule-amharic
Summary: The GTK+ toolkit library (version 2) -- Amharic Input Method
Summary: Amharic input method for the GTK+ toolkit library v2
Group: System/Libraries
Requires: %{name} = %{version}
Requires(post): %{name}-tools >= 2.24.20
@ -152,7 +149,7 @@ ranging from small one-off projects to complete application suites.
This package provides an input method for Amharic.
%package immodule-inuktitut
Summary: The GTK+ toolkit library (version 2) -- Inuktitut Input Method
Summary: Inuktitut input method for the GTK+ toolkit library v2
Group: System/Libraries
Requires: %{name} = %{version}
Requires(post): %{name}-tools >= 2.24.20
@ -167,7 +164,7 @@ ranging from small one-off projects to complete application suites.
This package provides an input method for Inuktitut.
%package immodule-multipress
Summary: The GTK+ toolkit library (version 2) -- Multipress Input Method
Summary: Multipress input method for the GTK+ toolkit library v2
Group: System/Libraries
Requires: %{name} = %{version}
Requires(post): %{name}-tools >= 2.24.20
@ -182,7 +179,7 @@ This package provides an input method which allows text entry via the
multi-press method, as on a mobile phone.
%package immodule-thai
Summary: The GTK+ toolkit library (version 2) -- Thai-Lao Input Method
Summary: Thai-Lao input method for the GTK+ toolkit library v2
Group: System/Libraries
Requires: %{name} = %{version}
Requires(post): %{name}-tools >= 2.24.20
@ -198,7 +195,7 @@ ranging from small one-off projects to complete application suites.
This package provides an input method for Thai-Lao.
%package immodules-tigrigna
Summary: The GTK+ toolkit library (version 2) -- Tigrigna Input Methods
Summary: Tigrigna input methods for the GTK+ toolkit library v2
Group: System/Libraries
Requires: %{name} = %{version}
Requires(post): %{name}-tools >= 2.24.20
@ -213,7 +210,7 @@ ranging from small one-off projects to complete application suites.
This package provides two input methods for Tigrigna.
%package immodule-vietnamese
Summary: The GTK+ toolkit library (version 2) -- Vietnamese Input Method
Summary: Vietnamese input method for the GTK+ toolkit library v2
Group: System/Libraries
Requires: %{name} = %{version}
Requires(post): %{name}-tools >= 2.24.20
@ -228,7 +225,7 @@ ranging from small one-off projects to complete application suites.
This package provides an input method for Vietnamese.
%package immodule-xim
Summary: The GTK+ toolkit library (version 2) -- X Input Method
Summary: X input method for the GTK+ toolkit library v2
Group: System/Libraries
Requires: %{name} = %{version}
Requires(post): %{name}-tools >= 2.24.20
@ -246,7 +243,7 @@ ranging from small one-off projects to complete application suites.
This package provides an input method based on the X Input Method.
%package tools
Summary: The GTK+ toolkit library (version 2) -- Tools
Summary: Auxiliary utilities for the GTK+ toolkit library v2
Group: System/Libraries
Requires(post): update-alternatives
Requires(postun): update-alternatives
@ -257,7 +254,7 @@ Offering a complete set of widgets, GTK+ is suitable for projects
ranging from small one-off projects to complete application suites.
%package data
Summary: The GTK+ toolkit library (version 2) -- Data Files
Summary: Data files for the GTK+ toolkit library v2
Group: System/Libraries
BuildArch: noarch
@ -267,7 +264,7 @@ Offering a complete set of widgets, GTK+ is suitable for projects
ranging from small one-off projects to complete application suites.
%package branding-upstream
Summary: The GTK+ toolkit library (version 2) -- Upstream theme configuration
Summary: Upstream theme configuration for the GTK+ toolkit library v2
Group: System/Libraries
Requires: libgtk-2_0-0 = %{version}
Supplements: packageand(%{name}:branding-upstream)
@ -284,7 +281,7 @@ Offering a complete set of widgets, GTK+ is suitable for projects
ranging from small one-off projects to complete application suites.
%package devel
Summary: The GTK+ toolkit library (version 2) -- Development Files
Summary: Development files for the GTK+ toolkit library v2
Group: Development/Libraries/X11
Requires: libgtk-2_0-0 = %{version}
# gtk-builder-convert needs this.
@ -308,6 +305,8 @@ This package contains the development files for GTK+ 2.x.
%prep
%setup -q -n %{_name}-%{version}
%if !0%{?is_opensuse}
translation-update-upstream
translation-update-upstream po-properties gtk20-properties
# remove incomplete translations caused by translation-update-upstream (global LINGUAS file, two domains)
@ -318,26 +317,26 @@ for LNG in po/*.po ; do
sed -i "/^$LNG\$/d" po/LINGUAS
fi
done
%endif
gnome-patch-translation-prepare
%patch0 -p1
%patch1 -p1
%if "%{_lib}" == "lib64"
cp -a %{SOURCE2} .
# WARNING: This patch does not patch not installed demos and tests.
%patch8 -p1
%patch0 -p1
%endif
%patch22 -p1
%patch23 -p1
%patch24 -p1
%patch53
%patch55 -p1
%patch56 -p1
%patch57 -p1
%patch100 -p1
%patch1 -p1
%patch2 -p1
%patch3
%patch4 -p1
%patch5 -p1
%patch6 -p1
%patch7 -p1
%patch8 -p1
gnome-patch-translation-update
%build
NOCONFIGURE=1 gnome-autogen.sh
NOCONFIGURE=1 ./autogen.sh
export CFLAGS="%{optflags}"
export CFLAGS="$CFLAGS -fstack-protector"
%ifarch ppc64
@ -349,7 +348,8 @@ export CFLAGS=`echo $CFLAGS | sed -e 's/-fomit-frame-pointer//g'`
--disable-static \
--enable-man \
--with-xinput=xfree \
--enable-introspection
--enable-introspection \
--enable-gtk-doc
make %{?_smp_mflags}
%install