* update gtk3 to 1:3.24.42-1

This commit is contained in:
Alexander Baldeck 2024-05-25 09:37:38 +02:00
parent 9d0f1c83e0
commit 7937f80b7e
3 changed files with 131 additions and 73 deletions

View File

@ -0,0 +1,104 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: "Jan Alexander Steffens (heftig)" <heftig@archlinux.org>
Date: Mon, 18 Mar 2024 02:14:24 +0100
Subject: [PATCH] Allow disabling legacy Tracker search
---
docs/reference/gtk/meson.build | 2 --
gtk/gtksearchengine.c | 5 ++---
gtk/meson.build | 5 ++++-
meson.build | 5 +++++
meson_options.txt | 2 ++
5 files changed, 13 insertions(+), 6 deletions(-)
diff --git a/docs/reference/gtk/meson.build b/docs/reference/gtk/meson.build
index 9fa282d38cb5..b2f977363a5a 100644
--- a/docs/reference/gtk/meson.build
+++ b/docs/reference/gtk/meson.build
@@ -129,7 +129,6 @@ private_headers = [
'gtksearchenginemodel.h',
'gtksearchenginequartz.h',
'gtksearchenginesimple.h',
- 'gtksearchenginetracker.h',
'gtksearchentryprivate.h',
'gtkselectionprivate.h',
'gtksettingsprivate.h',
@@ -208,7 +207,6 @@ private_headers = [
'gtkrecentchooserdefault.h',
'gtkrecentchooserutils.h',
'gtksearchengine.h',
- 'gtksearchenginetracker.h',
'gtksearchenginesimple.h',
'gtksearchenginequartz.h',
'gtksequence.h',
diff --git a/gtk/gtksearchengine.c b/gtk/gtksearchengine.c
index 1910cc0ad337..dd4022c2cc4d 100644
--- a/gtk/gtksearchengine.c
+++ b/gtk/gtksearchengine.c
@@ -29,9 +29,8 @@
#if defined(HAVE_TRACKER3)
#include "gtksearchenginetracker3.h"
#endif
-#if !defined G_OS_WIN32 /* No tracker on windows */
+#if defined(HAVE_TRACKER)
#include "gtksearchenginetracker.h"
-#define HAVE_TRACKER 1
#endif
#include <gdk/gdk.h> /* for GDK_WINDOWING_QUARTZ */
@@ -388,7 +387,7 @@ _gtk_search_engine_new (void)
}
#endif
-#ifdef HAVE_TRACKER
+#if defined(HAVE_TRACKER)
if (!engine->priv->native)
{
engine->priv->native = _gtk_search_engine_tracker_new ();
diff --git a/gtk/meson.build b/gtk/meson.build
index ea866d8231c2..03677b120f60 100644
--- a/gtk/meson.build
+++ b/gtk/meson.build
@@ -652,9 +652,12 @@ gtk_unix_sources = files(
'gtkprintoperation-portal.c',
'gtkprintunixdialog.c',
'gtkprintbackend.c',
- 'gtksearchenginetracker.c',
)
+if os_unix and tracker_enabled
+ gtk_unix_sources += 'gtksearchenginetracker.c'
+endif
+
if os_unix and tracker3_enabled
gtk_unix_sources += 'gtksearchenginetracker3.c'
endif
diff --git a/meson.build b/meson.build
index 24785bfe4dd8..1999f526d987 100644
--- a/meson.build
+++ b/meson.build
@@ -466,6 +466,11 @@ if require_harfbuzz and not harfbuzz_dep.found()
fallback: ['harfbuzz', 'libharfbuzz_dep'])
endif
+tracker_enabled = get_option('tracker')
+if tracker_enabled
+ cdata.set('HAVE_TRACKER', true)
+endif
+
tracker3_enabled = get_option('tracker3')
if tracker3_enabled
tracker3_dep = dependency('tracker-sparql-3.0', required: false)
diff --git a/meson_options.txt b/meson_options.txt
index 94099aa01eb3..3b5485a88f74 100644
--- a/meson_options.txt
+++ b/meson_options.txt
@@ -17,6 +17,8 @@ option('cloudproviders', type: 'boolean', value: false,
description : 'Enable the cloudproviders support')
option('profiler', type: 'boolean', value: false,
description : 'Enable profiler support')
+option('tracker', type: 'boolean', value: true,
+ description : 'Enable Tracker filechooser search')
option('tracker3', type: 'boolean', value: false,
description : 'Enable Tracker3 filechooser search')

View File

@ -1,64 +0,0 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: "Jan Alexander Steffens (heftig)" <jan.steffens@gmail.com>
Date: Tue, 6 Oct 2020 21:14:45 +0000
Subject: [PATCH] gtkplacessidebar: Disconnect and unref cloud_manager in
dispose
The manager's providers-changed signal can fire after the sidebar has
been freed. Make sure we disconnect the sidebar from the manager.
https://bugs.archlinux.org/task/57984
https://bugs.archlinux.org/task/68123
---
gtk/gtkplacessidebar.c | 24 ++++++++++++------------
1 file changed, 12 insertions(+), 12 deletions(-)
diff --git a/gtk/gtkplacessidebar.c b/gtk/gtkplacessidebar.c
index 87c08a5389..118739fdd2 100644
--- a/gtk/gtkplacessidebar.c
+++ b/gtk/gtkplacessidebar.c
@@ -4411,32 +4411,32 @@ gtk_places_sidebar_dispose (GObject *object)
sidebar->shortcuts = NULL;
#ifdef HAVE_CLOUDPROVIDERS
- for (l = cloud_providers_collector_get_providers (sidebar->cloud_manager);
- l != NULL; l = l->next)
- {
- g_signal_handlers_disconnect_by_data (l->data, sidebar);
- }
for (l = sidebar->unready_accounts; l != NULL; l = l->next)
{
g_signal_handlers_disconnect_by_data (l->data, sidebar);
}
g_list_free_full (sidebar->unready_accounts, g_object_unref);
sidebar->unready_accounts = NULL;
+
+ if (sidebar->cloud_manager)
+ {
+ g_signal_handlers_disconnect_by_data (sidebar->cloud_manager, sidebar);
+ for (l = cloud_providers_collector_get_providers (sidebar->cloud_manager);
+ l != NULL; l = l->next)
+ {
+ g_signal_handlers_disconnect_by_data (l->data, sidebar);
+ }
+ g_object_unref (sidebar->cloud_manager);
+ sidebar->cloud_manager = NULL;
+ }
#endif
G_OBJECT_CLASS (gtk_places_sidebar_parent_class)->dispose (object);
}
static void
gtk_places_sidebar_finalize (GObject *object)
{
-#ifdef HAVE_CLOUDPROVIDERS
- GtkPlacesSidebar *sidebar;
-
- sidebar = GTK_PLACES_SIDEBAR (object);
- g_clear_object (&sidebar->cloud_manager);
-#endif
-
G_OBJECT_CLASS (gtk_places_sidebar_parent_class)->finalize (object);
}

View File

@ -8,16 +8,16 @@ pkgname=(
gtk3-demos
gtk3-docs
)
pkgver=3.24.41
pkgver=3.24.42
pkgrel=1
epoch=1
pkgdesc="GObject-based multi-platform GUI toolkit"
url="https://www.gtk.org/"
arch=(x86_64 powerpc64le powerpc64 powerpc riscv64)
license=(LGPL-2.0-only)
license=(LGPL-2.1-or-later)
depends=(
adwaita-icon-theme
at-spi2-core
atk
cairo
cantarell-fonts
dconf
@ -26,6 +26,7 @@ depends=(
fribidi
gdk-pixbuf2
glib2
glibc
harfbuzz
iso-codes
libcloudproviders
@ -35,8 +36,8 @@ depends=(
libepoxy
libgl
librsvg
libxcomposite
libx11
libxcomposite
libxcursor
libxdamage
libxext
@ -52,21 +53,24 @@ depends=(
wayland
)
makedepends=(
at-spi2-core
git
glib2-docs
gobject-introspection
gtk-doc
hicolor-icon-theme
meson
sassc
wayland-protocols
)
_commit=77ebdd85091833a7869ece48c3114fa6d9966321 # tags/3.24.41^0
source=(
"git+https://gitlab.gnome.org/GNOME/gtk.git#commit=$_commit"
"git+https://gitlab.gnome.org/GNOME/gtk.git#tag=$pkgver"
gtk-query-immodules-3.0.hook
0001-Allow-disabling-legacy-Tracker-search.patch
)
b2sums=('SKIP'
'8e6a3906126749c6d853f582e3802254cdbba099c6af7190ad576eff6ea5425404a72b1b36950a87e3afdac82295cfe246003172c3e0341a73bd931a36f3b407')
b2sums=('3f79244cfeac535186b84e6c9ad3dad7dbb5737e4ebd8762985fce95930a9bbb07fcc331fb915b7f6ab8496afd7995a5aa501377af01710ff2649e5adabcb249'
'8e6a3906126749c6d853f582e3802254cdbba099c6af7190ad576eff6ea5425404a72b1b36950a87e3afdac82295cfe246003172c3e0341a73bd931a36f3b407'
'7da1746e7702e4bf397f59dd1019e2c8fa8951b2bcc6bf64ec05f322de6dcec6fe5552848d6b389818f625988a3fb2211501d7f72ae97d2c49fbad1e5fe9cd6a')
pkgver() {
cd gtk
@ -75,6 +79,7 @@ pkgver() {
prepare() {
cd gtk
git apply -3 ../0001-Allow-disabling-legacy-Tracker-search.patch
}
build() {
@ -85,6 +90,7 @@ build() {
-D gtk_doc=true
-D introspection=true
-D man=true
-D tracker=false
-D tracker3=true
)
@ -144,7 +150,19 @@ END
package_gtk3-demos() {
pkgdesc+=" (demo applications)"
depends=(gtk3)
depends=(
at-spi2-core
cairo
dconf
gdk-pixbuf2
glib2
glibc
gtk3
harfbuzz
hicolor-icon-theme
libepoxy
pango
)
mv demo/* "$pkgdir"
}