Accepting request 997734 from GNOME:Factory

I changed my mind a bit, with the patch, we can move this into TW, as it seems to be perfectly stable still, even if its the unstable branch.

- Update to version 4.7.2:
  + GtkTextView: Fix child positioning with gutters.
  + GtkText: Update placeholder visibility when necessary.
  + GtkPicture: Add a content-fit property.
  + GtkPopover: Fix a size allocation problem with the arrow.
  + GtkTreeView: Fix a problem with DND.
  + GtkTreePopover: Support scrolling.
  + GtkGridView: Fix issues with rubberband selection.
  + GtkLabel: Add a tabs property.
  + GtkSnapshot: Make GtkSnapshot work from bindings.
  + GtkScrolledWindow: Scroll at a reasonable speed.
  + GtkPaned: Avoid an infinite loop.
  + GtkWindow: Improve generation and handling of crossing events.
  + CSS: Fix handling of certain transform values.
  + Media support:
    - Add audio support to the ffmpeg backend.
    - Avoid oom with pathological jpeg images.
  + GDK:
    - Fix handling of touchpad hold events.
    - Add support for hi-resolution scroll events.
  + X11: Fix preferred action for DND.
  + List models:
    - Fix items-changed emission.
    - Add more list model tests.
  + Demos:
    - Add a winning sound to game demos.
    - Make app icons work uninstalled.
  + Updated translations.
- Add 0001-Revert-Meson-Simplify-pkgconfig-file-generator.patch:
  Revert "Meson: Simplify pkgconfig file generator". Temporarily
  revert this until we figure out how to best restore private
  requires that are needed for rpm automatic dep extraction.
  https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/4756
  This reverts commit 802bf4199911c811938b0454a876089bafa97dba.
- Update to version 4.7.1:
  + GtkInscription: A new label-like widget for use in list views.
  + GtkColorChooser: Style improvements.
  + GtkFontChooser: Improve support for OpenType features a bit.
  + GtkLabel: Allow selectable labels to be activated via mnemonic.
  + GtkTextView: Implement GetCharacterExtents for accessibility.
  + GtkStack: Fix a poblem with stack page accessibility.
  + GtkListView:
    - Cull listitems that are out of view.
    - Make all our list models implement ::n-items and
      ::item-type properties.
  + Translations:
    - Stop translating property nicks and blurbs.
    - Fix extracting translations from ui files.
  + Debugging:
    - Support GTK_DEBUG=invert-text-dir.
    - Allow inspecting inspectors.
    - Replace GTK_USE_PORTAL with GDK_DEBUG=portals.
    - Improve responsiveness of the inspector.
  + CSS: Allow fractional letterspacing.
  + Theme: Improve legibility of selectable labels.
  + Demos:
    - Improve the font features demo.
    - Add demos for GtkInscription.
  + Wayland:
    - Freeze popups when hidden.
    - Only send smooth scroll events for tablet tools.
    - Make scaled cursor image have the right size.
    - Fix problems with the activation protocol.
    - Don't force the HighContrast icon theme.
    - Support xdg_toplevel.bounds.
  + X11: Always update the shadoe size.
  + Windows:
    - Improve touchpad support by using DirectManipulation.
    - Add more directories to the builtin hicolor icon theme.
  + Updated translations.
- Add pkgconfig(harfbuzz) BuildRequires: new dependency. (forwarded request 997588 from iznogood)

OBS-URL: https://build.opensuse.org/request/show/997734
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/gtk4?expand=0&rev=47
This commit is contained in:
Dominique Leuenberger 2022-08-19 15:53:29 +00:00 committed by Git OBS Bridge
commit 788bd9592b
5 changed files with 215 additions and 7 deletions

View File

@ -0,0 +1,120 @@
From 5f5fd77f096174c45f8335afe6efd6745796d9a5 Mon Sep 17 00:00:00 2001
From: Kalev Lember <klember@redhat.com>
Date: Mon, 25 Jul 2022 16:21:50 +0200
Subject: [PATCH] Revert "Meson: Simplify pkgconfig file generator"
Temporarily revert this until we figure out how to best restore
private requires that are needed for rpm automatic dep extraction.
https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/4756
This reverts commit 802bf4199911c811938b0454a876089bafa97dba.
---
meson.build | 47 +++++++++++++++++++++++++++++++++--------------
1 file changed, 33 insertions(+), 14 deletions(-)
diff --git a/meson.build b/meson.build
index 1b8f2d0248..4fc808dbd4 100644
--- a/meson.build
+++ b/meson.build
@@ -471,6 +471,9 @@ if not os_win32
endif
endif
+
+pc_gdk_extra_libs = []
+
cairo_backends = []
foreach backend: [ ['cairo-xlib', cairo_req, x11_enabled],
['cairo-win32', cairo_req, win32_enabled],
@@ -601,14 +604,26 @@ if x11_enabled
cdata.set('HAVE_RANDR15', xrandr15_dep.found())
endif
+if broadway_enabled
+ pc_gdk_extra_libs += ['-lz']
+endif
+
+if macos_enabled
+ pc_gdk_extra_libs += ['-framework Cocoa', '-framework Carbon']
+endif
+
extra_demo_ldflags = []
if win32_enabled
+ pc_gdk_extra_libs += ['-lgdi32', '-limm32', '-lshell32', '-lole32']
if cc.get_id() == 'msvc'
# Since the demo programs are now built as pure GUI programs, we
# need to pass in /entry:mainCRTStartup so that they will properly
# link on Visual Studio builds
extra_demo_ldflags = ['/entry:mainCRTStartup']
+ else
+ pc_gdk_extra_libs += ['-Wl,-luuid']
endif
+ pc_gdk_extra_libs += ['-lwinmm', '-ldwmapi', '-lsetupapi', '-lcfgmgr32', '-lhid']
# Check whether libepoxy is built with EGL support on Windows
endif
@@ -826,7 +841,16 @@ gsk_private_packages = [] # all already in gdk_private_packages
pangoft2_pkgs = (wayland_enabled or x11_enabled) ? ['pangoft2'] : []
gtk_private_packages = pangoft2_pkgs
-pkgs = []
+gdk_extra_libs = pc_gdk_extra_libs
+gsk_extra_libs = []
+gtk_extra_libs = []
+
+gdk_extra_cflags = []
+gsk_extra_cflags = []
+gtk_extra_cflags = []
+
+pkgs = [ 'gtk4' ]
+
pkg_targets = []
display_backends = []
foreach backend: [ 'broadway', 'macos', 'wayland', 'win32', 'x11', ]
@@ -843,23 +867,18 @@ common_pc_variables = [
'gtk_host=@0@-@1@'.format(host_machine.cpu_family(), host_machine.system()), # FIXME
]
-pkg_config.generate(libgtk,
- filebase: 'gtk4',
- unescaped_variables: common_pc_variables,
- name: 'GTK',
- description: 'GTK Graphical UI Library',
- requires: gdk_packages + gsk_packages + gtk_packages,
- subdirs: ['gtk-@0@'.format(gtk_api_version)],
-)
-meson.override_dependency('gtk4', libgtk_dep)
-
foreach pkg: pkgs
pkg_config.generate(
filebase: pkg,
unescaped_variables: common_pc_variables,
name: 'GTK',
description: 'GTK Graphical UI Library',
- requires: 'gtk4',
+ requires: gdk_packages + gsk_packages + gtk_packages,
+ requires_private: gdk_private_packages + gsk_private_packages + gtk_private_packages,
+ libraries: ['-L${libdir}', '-lgtk-4'],
+ libraries_private: gdk_extra_libs + gsk_extra_libs + gtk_extra_libs,
+ subdirs: ['gtk-@0@'.format(gtk_api_version)],
+ extra_cflags: gdk_extra_cflags + gsk_extra_cflags + gtk_extra_cflags,
)
meson.override_dependency(pkg, libgtk_dep)
endforeach
@@ -870,10 +889,10 @@ if os_unix
unescaped_variables: common_pc_variables,
name: 'GTK',
description: 'GTK Unix print support',
- requires: 'gtk4',
+ requires: ['gtk4'] + gtk_packages,
+ libraries: [],
subdirs: ['gtk-@0@/unix-print'.format(gtk_api_version)],
)
- meson.override_dependency('gtk4-unix-print', libgtk_dep)
endif
subdir('po')
--
2.37.1

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:913fcd9d065efb348723e18c3b9113e23b92072e927ebd2f61d32745c8228b94
size 23183660

3
gtk-4.7.2.tar.xz Normal file
View File

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

View File

@ -1,3 +1,86 @@
-------------------------------------------------------------------
Thu Aug 11 19:34:08 UTC 2022 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 4.7.2:
+ GtkTextView: Fix child positioning with gutters.
+ GtkText: Update placeholder visibility when necessary.
+ GtkPicture: Add a content-fit property.
+ GtkPopover: Fix a size allocation problem with the arrow.
+ GtkTreeView: Fix a problem with DND.
+ GtkTreePopover: Support scrolling.
+ GtkGridView: Fix issues with rubberband selection.
+ GtkLabel: Add a tabs property.
+ GtkSnapshot: Make GtkSnapshot work from bindings.
+ GtkScrolledWindow: Scroll at a reasonable speed.
+ GtkPaned: Avoid an infinite loop.
+ GtkWindow: Improve generation and handling of crossing events.
+ CSS: Fix handling of certain transform values.
+ Media support:
- Add audio support to the ffmpeg backend.
- Avoid oom with pathological jpeg images.
+ GDK:
- Fix handling of touchpad hold events.
- Add support for hi-resolution scroll events.
+ X11: Fix preferred action for DND.
+ List models:
- Fix items-changed emission.
- Add more list model tests.
+ Demos:
- Add a winning sound to game demos.
- Make app icons work uninstalled.
+ Updated translations.
-------------------------------------------------------------------
Sat Aug 6 11:56:56 UTC 2022 - Bjørn Lie <bjorn.lie@gmail.com>
- Add 0001-Revert-Meson-Simplify-pkgconfig-file-generator.patch:
Revert "Meson: Simplify pkgconfig file generator". Temporarily
revert this until we figure out how to best restore private
requires that are needed for rpm automatic dep extraction.
https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/4756
This reverts commit 802bf4199911c811938b0454a876089bafa97dba.
-------------------------------------------------------------------
Wed Aug 3 06:10:26 UTC 2022 - Dominique Leuenberger <dimstar@opensuse.org>
- Update to version 4.7.1:
+ GtkInscription: A new label-like widget for use in list views.
+ GtkColorChooser: Style improvements.
+ GtkFontChooser: Improve support for OpenType features a bit.
+ GtkLabel: Allow selectable labels to be activated via mnemonic.
+ GtkTextView: Implement GetCharacterExtents for accessibility.
+ GtkStack: Fix a poblem with stack page accessibility.
+ GtkListView:
- Cull listitems that are out of view.
- Make all our list models implement ::n-items and
::item-type properties.
+ Translations:
- Stop translating property nicks and blurbs.
- Fix extracting translations from ui files.
+ Debugging:
- Support GTK_DEBUG=invert-text-dir.
- Allow inspecting inspectors.
- Replace GTK_USE_PORTAL with GDK_DEBUG=portals.
- Improve responsiveness of the inspector.
+ CSS: Allow fractional letterspacing.
+ Theme: Improve legibility of selectable labels.
+ Demos:
- Improve the font features demo.
- Add demos for GtkInscription.
+ Wayland:
- Freeze popups when hidden.
- Only send smooth scroll events for tablet tools.
- Make scaled cursor image have the right size.
- Fix problems with the activation protocol.
- Don't force the HighContrast icon theme.
- Support xdg_toplevel.bounds.
+ X11: Always update the shadoe size.
+ Windows:
- Improve touchpad support by using DirectManipulation.
- Add more directories to the builtin hicolor icon theme.
+ Updated translations.
- Add pkgconfig(harfbuzz) BuildRequires: new dependency.
-------------------------------------------------------------------
Mon Jul 4 08:11:44 UTC 2022 - Yifan Jiang <yfjiang@suse.com>

View File

@ -22,7 +22,7 @@
%define _name gtk
Name: gtk4
Version: 4.7.0
Version: 4.7.2
Release: 0
Summary: The GTK+ toolkit library (version 4)
License: LGPL-2.1-or-later
@ -34,6 +34,11 @@ Source2: settings.ini
Source3: macros.gtk4
Source99: gtk4-rpmlintrc
# Temporarily revert this until we figure out how to best restore
# private requires that are needed for rpm automatic dep extraction.
# https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/4756
# PATCH-FIX-OPENSUSE 0001-Revert-Meson-Simplify-pkgconfig-file-generator.patch -- Revert "Meson: Simplify pkgconfig file generator"
Patch0: 0001-Revert-Meson-Simplify-pkgconfig-file-generator.patch
BuildRequires: cups-devel >= 2.0
# We do not support building against cups 2.3 betas
@ -72,6 +77,7 @@ BuildRequires: pkgconfig(graphene-1.0) >= 1.9.1
BuildRequires: pkgconfig(graphene-gobject-1.0) >= 1.9.1
BuildRequires: pkgconfig(gstreamer-gl-1.0)
BuildRequires: pkgconfig(gstreamer-player-1.0)
BuildRequires: pkgconfig(harfbuzz) >= 2.6.0
BuildRequires: pkgconfig(iso-codes)
BuildRequires: pkgconfig(libavfilter)
BuildRequires: pkgconfig(libjpeg)
@ -85,7 +91,7 @@ BuildRequires: pkgconfig(tracker-sparql-3.0)
BuildRequires: pkgconfig(wayland-client) >= 1.14.91
BuildRequires: pkgconfig(wayland-cursor) >= 1.9.91
BuildRequires: pkgconfig(wayland-egl)
BuildRequires: pkgconfig(wayland-protocols) >= 1.14
BuildRequires: pkgconfig(wayland-protocols) >= 1.25
BuildRequires: pkgconfig(x11)
BuildRequires: pkgconfig(xcomposite)
BuildRequires: pkgconfig(xcursor)
@ -264,7 +270,6 @@ This package enhances gettext with an International Tag Set for GTK+ 4
%meson_install
%find_lang gtk40
%find_lang gtk40-properties
install -m 644 -D %{SOURCE2} %{buildroot}%{_datadir}/gtk-4.0/settings.ini
# create modules directory that should have been created during the build
if test ! -d %{buildroot}%{_libdir}/gtk-4.0/modules; then
@ -414,6 +419,6 @@ cp %{SOURCE3} %{buildroot}%{_rpmmacrodir}
%{_datadir}/gettext/its/gtk4builder.its
%{_datadir}/gettext/its/gtk4builder.loc
%files lang -f gtk40.lang -f gtk40-properties.lang
%files lang -f gtk40.lang
%changelog