gtk4.git
2 years agoMake fast forward from 4.12.3+ds-2
Simon McVittie [Fri, 17 Nov 2023 11:06:27 +0000 (11:06 +0000)]
Make fast forward from 4.12.3+ds-2

[dgit --quilt=unapplied]

2 years agotests: Allow longer for a dialog to open
Simon McVittie [Tue, 22 Aug 2023 11:05:31 +0000 (12:05 +0100)]
tests: Allow longer for a dialog to open

This hopefully makes the test pass more reliably, especially on riscv64.

Bug: https://gitlab.gnome.org/GNOME/gtk/-/issues/6050
Bug-Debian: https://bugs.debian.org/1049434
Forwarded: no, workaround

Gbp-Pq: Topic debian
Gbp-Pq: Name tests-Allow-longer-for-a-dialog-to-open.patch

2 years agotests: Mark gltexture as expected to fail on big-endian machines
Simon McVittie [Tue, 22 Aug 2023 10:57:36 +0000 (11:57 +0100)]
tests: Mark gltexture as expected to fail on big-endian machines

Forwarded: not-needed, workaround

Gbp-Pq: Topic debian
Gbp-Pq: Name tests-Mark-gltexture-as-expected-to-fail-on-big-endian-ma.patch

2 years agogstreamer-player: Use GtkName Prefix to avoid issues if actual library is included
Marco Trevisan (Treviño) [Fri, 17 Mar 2023 19:08:30 +0000 (20:08 +0100)]
gstreamer-player: Use GtkName Prefix to avoid issues if actual library is included

Origin: https://gitlab.gnome.org/3v1n0/gtk/-/commits/gst-player-subproject
Forwarded: not-needed

Gbp-Pq: Topic debian
Gbp-Pq: Name gstreamer-player-Use-GtkName-Prefix-to-avoid-issues-if-ac.patch

2 years agomedia: Use gstplayer from meson subproject
Marco Trevisan (Treviño) [Fri, 17 Mar 2023 19:01:40 +0000 (20:01 +0100)]
media: Use gstplayer from meson subproject

Origin: https://gitlab.gnome.org/3v1n0/gtk/-/commits/gst-player-subproject
Forwarded: not-needed

Gbp-Pq: Topic debian
Gbp-Pq: Name media-Use-gstplayer-from-meson-subproject.patch

2 years agogstreamer-player-1.0: Do not install it if it's a subproject
Marco Trevisan (Treviño) [Fri, 17 Mar 2023 18:59:43 +0000 (19:59 +0100)]
gstreamer-player-1.0: Do not install it if it's a subproject

Origin: https://gitlab.gnome.org/3v1n0/gtk/-/commits/gst-player-subproject
Forwarded: not-needed

Gbp-Pq: Topic debian
Gbp-Pq: Name gstreamer-player-1.0-Do-not-install-it-if-it-s-a-subproje.patch

2 years agosubprojects: Add gst-player-1.0 as subproject
Marco Trevisan (Treviño) [Fri, 17 Mar 2023 18:50:10 +0000 (19:50 +0100)]
subprojects: Add gst-player-1.0 as subproject

Origin: https://gitlab.gnome.org/3v1n0/gtk/-/commits/gst-player-subproject
Forwarded: not-needed

Gbp-Pq: Topic debian
Gbp-Pq: Name subprojects-Add-gst-player-1.0-as-subporject.patch

2 years agoDisable inscription-markup.ui reftest
Simon McVittie [Fri, 12 Aug 2022 09:44:17 +0000 (10:44 +0100)]
Disable inscription-markup.ui reftest

It's rendered 1px to the left of where it should be, which is not a
serious problem for practical use of GTK, but is a test failure.

Bug: https://gitlab.gnome.org/GNOME/gtk/-/issues/5099
Forwarded: not-needed, workaround

Gbp-Pq: Topic debian
Gbp-Pq: Name Disable-inscription-markup.ui-reftest.patch

2 years agoreftests: Allow minor differences to be tolerated
Simon McVittie [Sat, 13 Feb 2021 16:19:10 +0000 (16:19 +0000)]
reftests: Allow minor differences to be tolerated

Based on an earlier patch by Michael Biebl, as used in Debian's GTK 3
packaging, with additional inspiration from librsvg's reftests.

Each .ui or .node reftest can have an accompanying .keyfile file
like this:

    [reftest]
    tolerated-diff-level=20
    tolerated-diff-pixels=1000

If the image differs, but the number of pixels that differ is no more
than tolerated-diff-pixels and the differences are no more than
tolerated-diff-level, then we treat it as a success with warnings, save
the .diff.png for analysis, and use g_test_incomplete() to record the
test-case as "TODO".

Signed-off-by: Simon McVittie <smcv@debian.org>
Forwarded: https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/3195
Applied-upstream: no, upstream want reftests to be a strict pass/fail with identical results required

Gbp-Pq: Topic debian
Gbp-Pq: Name reftests-Allow-minor-differences-to-be-tolerated.patch

2 years agoreftest_compare_surfaces: Report how much the images differ
Simon McVittie [Sat, 13 Feb 2021 18:26:24 +0000 (18:26 +0000)]
reftest_compare_surfaces: Report how much the images differ

In unattended/non-interactive/autobuilder environments where the images
are not trivially accessible, this provides a way to distinguish between
totally different rendering and more subtle issues.

Signed-off-by: Simon McVittie <smcv@debian.org>
Forwarded: https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/3195
Applied-upstream: no, upstream want reftests to be a strict pass/fail with identical results required

Gbp-Pq: Topic debian
Gbp-Pq: Name reftest_compare_surfaces-Report-how-much-the-images-diffe.patch

2 years agotests: mark headless tests as flaky
Jeremy Bícha [Tue, 8 Aug 2023 18:50:05 +0000 (14:50 -0400)]
tests: mark headless tests as flaky

See baaa7482489b0f7446ef1e0130e527a169c43b0c

Gbp-Pq: Name tests-mark-headless-tests-as-flaky.patch

2 years agoRevert "build: Drop the install-tests option"
Jeremy Bicha [Thu, 12 Jan 2023 13:47:54 +0000 (08:47 -0500)]
Revert "build: Drop the install-tests option"

Debian and Ubuntu uses these installed tests as part of their
autopkgtest system

This reverts commit 3121f88265ac61733e257f5335473d6f139f158c.

Gbp-Pq: Name Revert-build-Drop-the-install-tests-option.patch

2 years agoRevert "tests: Stop copying the tool tests"
Jeremy Bicha [Mon, 5 Jun 2023 17:49:20 +0000 (13:49 -0400)]
Revert "tests: Stop copying the tool tests"

This reverts commit bb3a6214cbeaa3211be007192e536bd473323836.

This is actually used by the installed tests
which we also had to revert dropping (in a separate patch)

Gbp-Pq: Name Revert-tests-Stop-copying-the-tool-tests.patch

2 years agoRelease to unstable
Simon McVittie [Fri, 17 Nov 2023 11:06:41 +0000 (11:06 +0000)]
Release to unstable

2 years agod/control: Use ${gir:Provides} to generate virtual package names
Simon McVittie [Fri, 17 Nov 2023 11:06:22 +0000 (11:06 +0000)]
d/control: Use ${gir:Provides} to generate virtual package names

2 years agod/control: Add ${gir:Depends} to -dev package
Simon McVittie [Fri, 17 Nov 2023 11:06:07 +0000 (11:06 +0000)]
d/control: Add ${gir:Depends} to -dev package

This will add dependencies on gir1.2-pango-1.0-dev and so on.

2 years agod/control: Add more gir1.2-x-y-dev build-dependencies
Simon McVittie [Wed, 15 Nov 2023 12:02:59 +0000 (12:02 +0000)]
d/control: Add more gir1.2-x-y-dev build-dependencies

Gbp-Dch: ignore

2 years agod/control: Build-depend on relevant gir1.2-*-dev virtual packages
Simon McVittie [Tue, 14 Nov 2023 10:05:55 +0000 (10:05 +0000)]
d/control: Build-depend on relevant gir1.2-*-dev virtual packages

This will help with eventually converting some or all of them into real
packages, to allow GIR XML to be omitted when cross-compiling or
bootstrapping.

2 years agoRelease to unstable
Simon McVittie [Thu, 2 Nov 2023 14:48:48 +0000 (14:48 +0000)]
Release to unstable

2 years agoDeclare fast forward from 4.12.3+ds-1
Simon McVittie [Thu, 2 Nov 2023 14:47:44 +0000 (14:47 +0000)]
Declare fast forward from 4.12.3+ds-1

[dgit --quilt=unapplied --overwrite]

2 years agotests: Allow longer for a dialog to open
Simon McVittie [Tue, 22 Aug 2023 11:05:31 +0000 (12:05 +0100)]
tests: Allow longer for a dialog to open

This hopefully makes the test pass more reliably, especially on riscv64.

Bug: https://gitlab.gnome.org/GNOME/gtk/-/issues/6050
Bug-Debian: https://bugs.debian.org/1049434
Forwarded: no, workaround

Gbp-Pq: Topic debian
Gbp-Pq: Name tests-Allow-longer-for-a-dialog-to-open.patch

2 years agotests: Mark gltexture as expected to fail on big-endian machines
Simon McVittie [Tue, 22 Aug 2023 10:57:36 +0000 (11:57 +0100)]
tests: Mark gltexture as expected to fail on big-endian machines

Forwarded: not-needed, workaround

Gbp-Pq: Topic debian
Gbp-Pq: Name tests-Mark-gltexture-as-expected-to-fail-on-big-endian-ma.patch

2 years agogstreamer-player: Use GtkName Prefix to avoid issues if actual library is included
Marco Trevisan (Treviño) [Fri, 17 Mar 2023 19:08:30 +0000 (20:08 +0100)]
gstreamer-player: Use GtkName Prefix to avoid issues if actual library is included

Origin: https://gitlab.gnome.org/3v1n0/gtk/-/commits/gst-player-subproject
Forwarded: not-needed

Gbp-Pq: Topic debian
Gbp-Pq: Name gstreamer-player-Use-GtkName-Prefix-to-avoid-issues-if-ac.patch

2 years agomedia: Use gstplayer from meson subproject
Marco Trevisan (Treviño) [Fri, 17 Mar 2023 19:01:40 +0000 (20:01 +0100)]
media: Use gstplayer from meson subproject

Origin: https://gitlab.gnome.org/3v1n0/gtk/-/commits/gst-player-subproject
Forwarded: not-needed

Gbp-Pq: Topic debian
Gbp-Pq: Name media-Use-gstplayer-from-meson-subproject.patch

2 years agogstreamer-player-1.0: Do not install it if it's a subproject
Marco Trevisan (Treviño) [Fri, 17 Mar 2023 18:59:43 +0000 (19:59 +0100)]
gstreamer-player-1.0: Do not install it if it's a subproject

Origin: https://gitlab.gnome.org/3v1n0/gtk/-/commits/gst-player-subproject
Forwarded: not-needed

Gbp-Pq: Topic debian
Gbp-Pq: Name gstreamer-player-1.0-Do-not-install-it-if-it-s-a-subproje.patch

2 years agosubprojects: Add gst-player-1.0 as subproject
Marco Trevisan (Treviño) [Fri, 17 Mar 2023 18:50:10 +0000 (19:50 +0100)]
subprojects: Add gst-player-1.0 as subproject

Origin: https://gitlab.gnome.org/3v1n0/gtk/-/commits/gst-player-subproject
Forwarded: not-needed

Gbp-Pq: Topic debian
Gbp-Pq: Name subprojects-Add-gst-player-1.0-as-subporject.patch

2 years agoDisable inscription-markup.ui reftest
Simon McVittie [Fri, 12 Aug 2022 09:44:17 +0000 (10:44 +0100)]
Disable inscription-markup.ui reftest

It's rendered 1px to the left of where it should be, which is not a
serious problem for practical use of GTK, but is a test failure.

Bug: https://gitlab.gnome.org/GNOME/gtk/-/issues/5099
Forwarded: not-needed, workaround

Gbp-Pq: Topic debian
Gbp-Pq: Name Disable-inscription-markup.ui-reftest.patch

2 years agoreftests: Allow minor differences to be tolerated
Simon McVittie [Sat, 13 Feb 2021 16:19:10 +0000 (16:19 +0000)]
reftests: Allow minor differences to be tolerated

Based on an earlier patch by Michael Biebl, as used in Debian's GTK 3
packaging, with additional inspiration from librsvg's reftests.

Each .ui or .node reftest can have an accompanying .keyfile file
like this:

    [reftest]
    tolerated-diff-level=20
    tolerated-diff-pixels=1000

If the image differs, but the number of pixels that differ is no more
than tolerated-diff-pixels and the differences are no more than
tolerated-diff-level, then we treat it as a success with warnings, save
the .diff.png for analysis, and use g_test_incomplete() to record the
test-case as "TODO".

Signed-off-by: Simon McVittie <smcv@debian.org>
Forwarded: https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/3195
Applied-upstream: no, upstream want reftests to be a strict pass/fail with identical results required

Gbp-Pq: Topic debian
Gbp-Pq: Name reftests-Allow-minor-differences-to-be-tolerated.patch

2 years agoreftest_compare_surfaces: Report how much the images differ
Simon McVittie [Sat, 13 Feb 2021 18:26:24 +0000 (18:26 +0000)]
reftest_compare_surfaces: Report how much the images differ

In unattended/non-interactive/autobuilder environments where the images
are not trivially accessible, this provides a way to distinguish between
totally different rendering and more subtle issues.

Signed-off-by: Simon McVittie <smcv@debian.org>
Forwarded: https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/3195
Applied-upstream: no, upstream want reftests to be a strict pass/fail with identical results required

Gbp-Pq: Topic debian
Gbp-Pq: Name reftest_compare_surfaces-Report-how-much-the-images-diffe.patch

2 years agotests: mark headless tests as flaky
Jeremy Bícha [Tue, 8 Aug 2023 18:50:05 +0000 (14:50 -0400)]
tests: mark headless tests as flaky

See baaa7482489b0f7446ef1e0130e527a169c43b0c

Gbp-Pq: Name tests-mark-headless-tests-as-flaky.patch

2 years agoRevert "build: Drop the install-tests option"
Jeremy Bicha [Thu, 12 Jan 2023 13:47:54 +0000 (08:47 -0500)]
Revert "build: Drop the install-tests option"

Debian and Ubuntu uses these installed tests as part of their
autopkgtest system

This reverts commit 3121f88265ac61733e257f5335473d6f139f158c.

Gbp-Pq: Name Revert-build-Drop-the-install-tests-option.patch

2 years agoRevert "tests: Stop copying the tool tests"
Jeremy Bicha [Mon, 5 Jun 2023 17:49:20 +0000 (13:49 -0400)]
Revert "tests: Stop copying the tool tests"

This reverts commit bb3a6214cbeaa3211be007192e536bd473323836.

This is actually used by the installed tests
which we also had to revert dropping (in a separate patch)

Gbp-Pq: Name Revert-tests-Stop-copying-the-tool-tests.patch

2 years agolbgtk-4-dev: Add Provides for included GIR XML files
Simon McVittie [Thu, 2 Nov 2023 14:34:52 +0000 (14:34 +0000)]
lbgtk-4-dev: Add Provides for included GIR XML files

Representing these by systematic names gir1.2-*-dev, and perhaps
eventually separating them into their own binary package, will help to
enable cross-compilation with GObject-Introspection removed by a build
profile.

Helps: #1030223

2 years agod/rules: Remove remnants of generating d/control from d/control.in
Simon McVittie [Thu, 2 Nov 2023 14:26:53 +0000 (14:26 +0000)]
d/rules: Remove remnants of generating d/control from d/control.in

2 years agod/rules: Stop generating d/control.in from d/control
Simon McVittie [Thu, 2 Nov 2023 14:24:42 +0000 (14:24 +0000)]
d/rules: Stop generating d/control.in from d/control

The variable substitutions obscured more than they really helped.

2 years agoSubstitute GTK_BINVER_DEP as a substvar rather than using sed
Simon McVittie [Thu, 2 Nov 2023 14:22:54 +0000 (14:22 +0000)]
Substitute GTK_BINVER_DEP as a substvar rather than using sed

This will make it easier to stop making d/control a generated file.

2 years agoreleasing package gtk4 version 4.12.3+ds-1
Jeremy Bícha [Thu, 5 Oct 2023 01:53:05 +0000 (21:53 -0400)]
releasing package gtk4 version 4.12.3+ds-1

2 years ago* debian/changelog: Mention bug fixes for 4.12.3 from upstream NEWS.
Amin Bandali [Wed, 4 Oct 2023 21:41:30 +0000 (17:41 -0400)]
* debian/changelog: Mention bug fixes for 4.12.3 from upstream NEWS.

2 years agoRecord gtk4 (4.12.3+ds-1) in archive suite sid
Amin Bandali [Wed, 4 Oct 2023 20:11:12 +0000 (16:11 -0400)]
Record gtk4 (4.12.3+ds-1) in archive suite sid

2 years agoNew upstream release
Amin Bandali [Wed, 4 Oct 2023 20:11:12 +0000 (16:11 -0400)]
New upstream release

2 years agotests: Allow longer for a dialog to open
Simon McVittie [Tue, 22 Aug 2023 11:05:31 +0000 (12:05 +0100)]
tests: Allow longer for a dialog to open

This hopefully makes the test pass more reliably, especially on riscv64.

Bug: https://gitlab.gnome.org/GNOME/gtk/-/issues/6050
Bug-Debian: https://bugs.debian.org/1049434
Forwarded: no, workaround

Gbp-Pq: Topic debian
Gbp-Pq: Name tests-Allow-longer-for-a-dialog-to-open.patch

2 years agoUpdate upstream source from tag 'upstream/4.12.3+ds'
Amin Bandali [Wed, 4 Oct 2023 20:11:12 +0000 (16:11 -0400)]
Update upstream source from tag 'upstream/4.12.3+ds'

Update to upstream version '4.12.3+ds'
with Debian dir 24db8d6ef94eb48755b60abcf4a00ec1468721df

2 years agotests: Mark gltexture as expected to fail on big-endian machines
Simon McVittie [Tue, 22 Aug 2023 10:57:36 +0000 (11:57 +0100)]
tests: Mark gltexture as expected to fail on big-endian machines

Forwarded: not-needed, workaround

Gbp-Pq: Topic debian
Gbp-Pq: Name tests-Mark-gltexture-as-expected-to-fail-on-big-endian-ma.patch

2 years agogstreamer-player: Use GtkName Prefix to avoid issues if actual library is included
Marco Trevisan (Treviño) [Fri, 17 Mar 2023 19:08:30 +0000 (20:08 +0100)]
gstreamer-player: Use GtkName Prefix to avoid issues if actual library is included

Origin: https://gitlab.gnome.org/3v1n0/gtk/-/commits/gst-player-subproject
Forwarded: not-needed

Gbp-Pq: Topic debian
Gbp-Pq: Name gstreamer-player-Use-GtkName-Prefix-to-avoid-issues-if-ac.patch

2 years agomedia: Use gstplayer from meson subproject
Marco Trevisan (Treviño) [Fri, 17 Mar 2023 19:01:40 +0000 (20:01 +0100)]
media: Use gstplayer from meson subproject

Origin: https://gitlab.gnome.org/3v1n0/gtk/-/commits/gst-player-subproject
Forwarded: not-needed

Gbp-Pq: Topic debian
Gbp-Pq: Name media-Use-gstplayer-from-meson-subproject.patch

2 years agogstreamer-player-1.0: Do not install it if it's a subproject
Marco Trevisan (Treviño) [Fri, 17 Mar 2023 18:59:43 +0000 (19:59 +0100)]
gstreamer-player-1.0: Do not install it if it's a subproject

Origin: https://gitlab.gnome.org/3v1n0/gtk/-/commits/gst-player-subproject
Forwarded: not-needed

Gbp-Pq: Topic debian
Gbp-Pq: Name gstreamer-player-1.0-Do-not-install-it-if-it-s-a-subproje.patch

2 years agosubprojects: Add gst-player-1.0 as subproject
Marco Trevisan (Treviño) [Fri, 17 Mar 2023 18:50:10 +0000 (19:50 +0100)]
subprojects: Add gst-player-1.0 as subproject

Origin: https://gitlab.gnome.org/3v1n0/gtk/-/commits/gst-player-subproject
Forwarded: not-needed

Gbp-Pq: Topic debian
Gbp-Pq: Name subprojects-Add-gst-player-1.0-as-subporject.patch

2 years agoDisable inscription-markup.ui reftest
Simon McVittie [Fri, 12 Aug 2022 09:44:17 +0000 (10:44 +0100)]
Disable inscription-markup.ui reftest

It's rendered 1px to the left of where it should be, which is not a
serious problem for practical use of GTK, but is a test failure.

Bug: https://gitlab.gnome.org/GNOME/gtk/-/issues/5099
Forwarded: not-needed, workaround

Gbp-Pq: Topic debian
Gbp-Pq: Name Disable-inscription-markup.ui-reftest.patch

2 years agoreftests: Allow minor differences to be tolerated
Simon McVittie [Sat, 13 Feb 2021 16:19:10 +0000 (16:19 +0000)]
reftests: Allow minor differences to be tolerated

Based on an earlier patch by Michael Biebl, as used in Debian's GTK 3
packaging, with additional inspiration from librsvg's reftests.

Each .ui or .node reftest can have an accompanying .keyfile file
like this:

    [reftest]
    tolerated-diff-level=20
    tolerated-diff-pixels=1000

If the image differs, but the number of pixels that differ is no more
than tolerated-diff-pixels and the differences are no more than
tolerated-diff-level, then we treat it as a success with warnings, save
the .diff.png for analysis, and use g_test_incomplete() to record the
test-case as "TODO".

Signed-off-by: Simon McVittie <smcv@debian.org>
Forwarded: https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/3195
Applied-upstream: no, upstream want reftests to be a strict pass/fail with identical results required

Gbp-Pq: Topic debian
Gbp-Pq: Name reftests-Allow-minor-differences-to-be-tolerated.patch

2 years agoreftest_compare_surfaces: Report how much the images differ
Simon McVittie [Sat, 13 Feb 2021 18:26:24 +0000 (18:26 +0000)]
reftest_compare_surfaces: Report how much the images differ

In unattended/non-interactive/autobuilder environments where the images
are not trivially accessible, this provides a way to distinguish between
totally different rendering and more subtle issues.

Signed-off-by: Simon McVittie <smcv@debian.org>
Forwarded: https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/3195
Applied-upstream: no, upstream want reftests to be a strict pass/fail with identical results required

Gbp-Pq: Topic debian
Gbp-Pq: Name reftest_compare_surfaces-Report-how-much-the-images-diffe.patch

2 years agotests: mark headless tests as flaky
Jeremy Bícha [Tue, 8 Aug 2023 18:50:05 +0000 (14:50 -0400)]
tests: mark headless tests as flaky

See baaa7482489b0f7446ef1e0130e527a169c43b0c

Gbp-Pq: Name tests-mark-headless-tests-as-flaky.patch

2 years agoRevert "build: Drop the install-tests option"
Jeremy Bicha [Thu, 12 Jan 2023 13:47:54 +0000 (08:47 -0500)]
Revert "build: Drop the install-tests option"

Debian and Ubuntu uses these installed tests as part of their
autopkgtest system

This reverts commit 3121f88265ac61733e257f5335473d6f139f158c.

Gbp-Pq: Name Revert-build-Drop-the-install-tests-option.patch

2 years agoRevert "tests: Stop copying the tool tests"
Jeremy Bicha [Mon, 5 Jun 2023 17:49:20 +0000 (13:49 -0400)]
Revert "tests: Stop copying the tool tests"

This reverts commit bb3a6214cbeaa3211be007192e536bd473323836.

This is actually used by the installed tests
which we also had to revert dropping (in a separate patch)

Gbp-Pq: Name Revert-tests-Stop-copying-the-tool-tests.patch

2 years agogtk4 (4.12.3+ds-1) unstable; urgency=medium
Amin Bandali [Wed, 4 Oct 2023 20:11:12 +0000 (16:11 -0400)]
gtk4 (4.12.3+ds-1) unstable; urgency=medium

  * New upstream release
    - GtkWindow:
      + Don't assume titlebars are GtkHeaderBar
        (https://gitlab.gnome.org/GNOME/gtk/-/issues/6116)
    - GtkTreeView:
      + Fix a crash in gtk_tree_view_is_blank_at_pos
        (https://gitlab.gnome.org/GNOME/gtk/-/issues/6114)
    - printing:
      + Fix some issues with the portal implementation
        (https://gitlab.gnome.org/GNOME/gtk/-/commit/03679fe6bf5ae391bd7cb21ad0492f530c86cd5e)
    - GSK:
      + Some optimizations in the GL renderer
        (https://gitlab.gnome.org/GNOME/gtk/-/commit/3698cadcd21e2a52c30766d311043093ea557b3f,
         https://gitlab.gnome.org/GNOME/gtk/-/commit/d4d0883a924f94fdc89fad50bce9ecad3128e0f3,
         https://gitlab.gnome.org/GNOME/gtk/-/commit/0030c572d47f551847be0aed8054d4df34afffda)
      + Fix memory leaks in the Broadway renderer
        (https://gitlab.gnome.org/GNOME/gtk/-/issues/6120)
    - demos:
      + Fix a crash in gtk4-demo
        (https://gitlab.gnome.org/GNOME/gtk/-/issues/6113)

[dgit import unpatched gtk4 4.12.3+ds-1]

2 years agoImport gtk4_4.12.3+ds.orig.tar.xz
Amin Bandali [Wed, 4 Oct 2023 20:11:12 +0000 (16:11 -0400)]
Import gtk4_4.12.3+ds.orig.tar.xz

[dgit import orig gtk4_4.12.3+ds.orig.tar.xz]

2 years agoImport gtk4_4.12.3+ds-1.debian.tar.xz
Amin Bandali [Wed, 4 Oct 2023 20:11:12 +0000 (16:11 -0400)]
Import gtk4_4.12.3+ds-1.debian.tar.xz

[dgit import tarball gtk4 4.12.3+ds-1 gtk4_4.12.3+ds-1.debian.tar.xz]

2 years agoNew upstream version 4.12.3+ds
Amin Bandali [Wed, 4 Oct 2023 20:10:45 +0000 (16:10 -0400)]
New upstream version 4.12.3+ds

2 years ago4.12.3
Matthias Clasen [Thu, 28 Sep 2023 12:03:14 +0000 (08:03 -0400)]
4.12.3

2 years agoprint portal: Report errors properly
Matthias Clasen [Wed, 27 Sep 2023 21:25:42 +0000 (17:25 -0400)]
print portal: Report errors properly

The portal printoperation inmplementation
relies on the file printbackend to be available.
If it isn't, we should report a proper error
status insetad of running into assertions deep
inside the printoperation code.

2 years agogsk/gl: remove TypeNode conformity checking for renderjob
Christian Hergert [Wed, 27 Sep 2023 01:36:22 +0000 (18:36 -0700)]
gsk/gl: remove TypeNode conformity checking for renderjob

We don't need to be calling type node conformity checking from the tight
loop of the renderjob. Hoist that into the private header and use that
intead through via the Class pointer.

2 years agogsk: remove excessive type checking within GSK
Christian Hergert [Wed, 27 Sep 2023 01:28:11 +0000 (18:28 -0700)]
gsk: remove excessive type checking within GSK

Anything that includes gskrendernodeprivate.h will get an alternate form
of ref/unref for render nodes which does not need to do type checking on
the parameter. We can expect that things are correct within GTK itself and
this saves excessive amounts of TypeNode conformities checking.

2 years agoprintoperation: fix some strange line spacing
Michael Catanzaro [Wed, 27 Sep 2023 00:28:12 +0000 (19:28 -0500)]
printoperation: fix some strange line spacing

2 years agoprintoperation: add some assertions
Michael Catanzaro [Wed, 27 Sep 2023 00:25:41 +0000 (19:25 -0500)]
printoperation: add some assertions

Let's assert that we schedule the idle callback exactly once.

These assertions are not perfect because if the callback executes before
we schedule it, then the assertion itself would be a use-after-free,
since I'm using the PrinterFinder to track whether the callback that
frees it has been scheduled. But in practice when using loupe's print
dialog, I was noticing the callback scheduled twice before it was
executed. The assertion would have caught this problem.

2 years agoprintoperation: fix another case where operation may complete twice
Michael Catanzaro [Tue, 26 Sep 2023 23:52:37 +0000 (18:52 -0500)]
printoperation: fix another case where operation may complete twice

This is a little tricky. At first, I thought we had a codepath where we
fail to schedule the idle that completes the print operation: if we take
the gtk_print_backend_printer_list_is_done path for each printer
backend, then printer_list_done_cb() is never executed and we never
schedule the idle. But in fact, in this case, then backends == NULL at
the bottom of find_printer(), and we'll schedule the idle there, so it's
OK. Except it's not really OK, because we'll schedule it even if a
printer was already found, resulting in the callback completing twice
and a double free.

Simplify this. Schedule the idle in find_printer() only if there are
*initially* no backends, not also if all backends are immediately ready
and already removed from consideration. Instead, always call
printer_list_done_cb() for every backend in find_printer_init(). After
the previous commit, printer_list_done_cb() will schedule the idle when
appropriate.

printer_list_done_cb() additionally disconnects signals that we did not
connect in this codepath, but it does so using
g_signal_handlers_disconnect_by_func, which is harmless. Otherwise, the
only extra work it's doing is scheduling the idle, and that's exactly
what find_printer_init() is missing.

2 years agoprintoperation: fix case where operation may complete multiple twice
Michael Catanzaro [Tue, 26 Sep 2023 23:47:01 +0000 (18:47 -0500)]
printoperation: fix case where operation may complete multiple twice

If we are the final backend, then after removing ourselves there is no
backend remaining. We will schedule the idle even if it has already been
scheduled. This idle is required to run exactly once and executing it
twices results in a double free that crashes loupe when printing. It
also causes the user callback to execute twice, which could cause
similar problems.

Fixes #6122

2 years agogsk/gl: use GdkArrayImpl for tracking modelview
Christian Hergert [Tue, 26 Sep 2023 20:21:06 +0000 (13:21 -0700)]
gsk/gl: use GdkArrayImpl for tracking modelview

Like the previous change, this uses GdkArrayImpl instead of GArray for
tracking modelview changes. This is less important than clip tracking
simple due to being used less, but it keeps the implementation synchronous
with the Clip tracking code.

2 years agogsk/gl: use GdkArrayImpl for Clip tracking
Christian Hergert [Tue, 26 Sep 2023 20:08:45 +0000 (13:08 -0700)]
gsk/gl: use GdkArrayImpl for Clip tracking

We can end up spending a lot of time in g_array_maybe_expand() through the
use of g_array_set_size() for clip tracking. That is somewhat due to the
simple nature of GArray being size-dynamic. Instead, we can use
GdkArrayImpl and let the compiler do what it does best to elide some
work and hoist other work into the calling function.

This also fixes a potential UAF in gsk_gl_render_job_push_contained_clip().

2 years agogdk: add missing G_END_DECLS to gdkarrayimpl.c
Christian Hergert [Tue, 26 Sep 2023 17:46:21 +0000 (10:46 -0700)]
gdk: add missing G_END_DECLS to gdkarrayimpl.c

2 years agobroadway: Do not add an extra reference when caching textures
Emmanuele Bassi [Tue, 26 Sep 2023 13:44:05 +0000 (14:44 +0100)]
broadway: Do not add an extra reference when caching textures

We just created a GdkTexture, so we don't need to acquire a reference if
we're transferring the ownership to the node cache.

2 years agobroadway: Plug another leak
Emmanuele Bassi [Tue, 26 Sep 2023 13:40:37 +0000 (14:40 +0100)]
broadway: Plug another leak

When getting a colorized texture we're downloading the texture as a
Cairo surface, and then feeding it to another texture, but we never drop
the reference of the new surface.

2 years agodocs: Clarify the behaviour of gdk_texture_new_for_surface()
Emmanuele Bassi [Tue, 26 Sep 2023 11:57:52 +0000 (12:57 +0100)]
docs: Clarify the behaviour of gdk_texture_new_for_surface()

Cairo surfaces are not GObject instances, so we should be more explicit
in the behaviour of the memory management, to avoid leaks.

2 years agobroadway: Plug a leak in the GSK renderer
Emmanuele Bassi [Tue, 26 Sep 2023 11:49:32 +0000 (12:49 +0100)]
broadway: Plug a leak in the GSK renderer

We are leaking the Cairo image surface when creating a new node.

Fixes: #6120
2 years agoarray: Compute new size properly
Benjamin Otte [Wed, 20 Sep 2023 00:46:47 +0000 (02:46 +0200)]
array: Compute new size properly

Using "1 << x" means that we are shifting a signed 32bit integer, but we
want a gsize, which is an unsigned 64bit integer.

So now we don't overflow anymore if the array reaches a size of 2GB.

2 years agogdk: Fix compiler warning
Benjamin Otte [Tue, 29 Aug 2023 17:34:38 +0000 (19:34 +0200)]
gdk: Fix compiler warning

gcc's -Wlto-type-mismatch found the hack, where we copied the wrong
prototype.

2 years agotreeview: Fix crash in assertion
Benjamin Otte [Mon, 25 Sep 2023 20:10:53 +0000 (22:10 +0200)]
treeview: Fix crash in assertion

The fix in commit a267dfac5d25d4ba5c1a95c82999d008fee07ac3 is wrong.
The function can return FALSE in normal operation.

Instead do a check for node == NULL that gracefully returns FALSE instead.

Fixes: #6114
2 years agoImprove FOO_DEBUG=help output
Matthias Clasen [Sun, 24 Sep 2023 12:32:13 +0000 (08:32 -0400)]
Improve FOO_DEBUG=help output

Explain the all value a bit better.

2 years agodialog: Check header bar type before calling track_default_decoration()
Alice Mikhaylenko [Sun, 24 Sep 2023 11:22:36 +0000 (15:22 +0400)]
dialog: Check header bar type before calling track_default_decoration()

Fixes https://gitlab.gnome.org/GNOME/gtk/-/issues/6116

2 years agoheader-bar: Add a precondition to track_default_decoration()
Alice Mikhaylenko [Sun, 24 Sep 2023 11:21:43 +0000 (15:21 +0400)]
header-bar: Add a precondition to track_default_decoration()

2 years agogtk-demo: Fix a refcounting mishap
Matthias Clasen [Sat, 23 Sep 2023 11:47:09 +0000 (07:47 -0400)]
gtk-demo: Fix a refcounting mishap

gtk_font_dialog_button_new's argument is
transfer full.

Fixes: #6113
2 years agodocs: Mention for what GtkStringObject:string is useful
Emmanuele Bassi [Thu, 21 Sep 2023 14:28:37 +0000 (15:28 +0100)]
docs: Mention for what GtkStringObject:string is useful

2 years agodocs: Link GtkStringObject from GtkStringList
Emmanuele Bassi [Thu, 21 Sep 2023 14:27:35 +0000 (15:27 +0100)]
docs: Link GtkStringObject from GtkStringList

A frequently asked question is: "what is the object type inside a
GtkStringList", so let's make the answer more obvious.

2 years agodocs: Add a link to the DropDown:selected property
Emmanuele Bassi [Tue, 15 Aug 2023 10:06:36 +0000 (11:06 +0100)]
docs: Add a link to the DropDown:selected property

The main description is a bit too coy, and some newcomers don't
understand the concept of properties and notification.

2 years agoUpdate German translation
Jürgen Benvenuti [Tue, 26 Sep 2023 20:37:59 +0000 (20:37 +0000)]
Update German translation

2 years agoUpdate Lithuanian translation
Aurimas Černius [Mon, 25 Sep 2023 19:58:03 +0000 (19:58 +0000)]
Update Lithuanian translation

2 years agoUpdate Brazilian Portuguese translation
Rafael Fontenelle [Mon, 25 Sep 2023 12:58:37 +0000 (12:58 +0000)]
Update Brazilian Portuguese translation

2 years agoUpdate Polish translation
Piotr Drąg [Sun, 24 Sep 2023 12:16:38 +0000 (14:16 +0200)]
Update Polish translation

2 years agoUpdate Esperanto translation
Kristjan SCHMIDT [Sat, 23 Sep 2023 16:41:34 +0000 (16:41 +0000)]
Update Esperanto translation

2 years agoUpdate Persian translation
Danial Behzadi [Sat, 23 Sep 2023 15:15:29 +0000 (15:15 +0000)]
Update Persian translation

2 years agoUpdate Hungarian translation
Balázs Úr [Fri, 22 Sep 2023 22:25:30 +0000 (22:25 +0000)]
Update Hungarian translation

2 years agoreleasing package gtk4 version 4.12.2+ds-1
Jeremy Bícha [Fri, 22 Sep 2023 14:27:42 +0000 (10:27 -0400)]
releasing package gtk4 version 4.12.2+ds-1

2 years agoBuild-Depend on fonts-noto-core instead of fonts-dejavu-core
Jeremy Bícha [Fri, 22 Sep 2023 12:57:16 +0000 (08:57 -0400)]
Build-Depend on fonts-noto-core instead of fonts-dejavu-core

& ttf-bitstream-vera

These days, fontconfig defaults to Noto instead of DejaVu

Also needed to adapt to
53cb64351d081e4c20fcea905370d49ff39636dd

2 years agoNew upstream release
Jeremy Bícha [Fri, 22 Sep 2023 12:01:27 +0000 (08:01 -0400)]
New upstream release

2 years agoUpdate upstream source from tag 'upstream/4.12.2+ds'
Jeremy Bícha [Fri, 22 Sep 2023 12:01:27 +0000 (08:01 -0400)]
Update upstream source from tag 'upstream/4.12.2+ds'

Update to upstream version '4.12.2+ds'
with Debian dir a12884d491074d1768a10765e52031eca50682ce

2 years agoNew upstream version 4.12.2+ds
Jeremy Bícha [Fri, 22 Sep 2023 12:01:09 +0000 (08:01 -0400)]
New upstream version 4.12.2+ds

2 years agoUpdate Basque translation
Asier Sarasua Garmendia [Thu, 21 Sep 2023 17:28:05 +0000 (17:28 +0000)]
Update Basque translation

2 years agoUpdate Ukrainian translation
Yuri Chornoivan [Thu, 21 Sep 2023 16:21:33 +0000 (16:21 +0000)]
Update Ukrainian translation

2 years agoUpdate Kazakh translation
Baurzhan Muftakhidinov [Thu, 21 Sep 2023 15:28:54 +0000 (15:28 +0000)]
Update Kazakh translation

2 years agoMerge branch 'fix-issue-6080-gtk-4-12' into 'gtk-4-12'
Luca Bacci [Thu, 21 Sep 2023 12:42:02 +0000 (12:42 +0000)]
Merge branch 'fix-issue-6080-gtk-4-12' into 'gtk-4-12'

GdkWin32: Unref GdkMonitor after calling gdk_monitor_invalidate () [4.12]

See merge request GNOME/gtk!6412

2 years agoUpdate Czech translation
Daniel Rusek [Thu, 21 Sep 2023 12:40:07 +0000 (12:40 +0000)]
Update Czech translation

2 years agoUpdate Galician translation
Fran Dieguez [Thu, 21 Sep 2023 10:14:55 +0000 (10:14 +0000)]
Update Galician translation