gtk4.git
3 years agoDeclare fast forward from 4.6.0+ds1-4
Simon McVittie [Wed, 16 Feb 2022 16:55:50 +0000 (16:55 +0000)]
Declare fast forward from 4.6.0+ds1-4

[dgit --quilt=unapplied --overwrite]

3 years agoDisable optimized GResource embedding
Simon McVittie [Sat, 8 Jan 2022 18:26:52 +0000 (18:26 +0000)]
Disable optimized GResource embedding

This seems to be triggering failures on armel and armhf. Second-guessing
GResource seems to be more trouble than it's worth.

Bug: https://gitlab.gnome.org/GNOME/gtk/-/issues/4617
Signed-off-by: Simon McVittie <smcv@debian.org>
Forwarded: no

Gbp-Pq: Topic debian
Gbp-Pq: Name Disable-optimized-GResource-embedding.patch

3 years agoDisable clipboard test
Simon McVittie [Fri, 3 Sep 2021 14:08:08 +0000 (15:08 +0100)]
Disable clipboard test

This regularly times out on buildds, but I can't reproduce the hang
locally.

Bug: https://gitlab.gnome.org/GNOME/gtk/-/issues/4229
Forwarded: no

Gbp-Pq: Topic debian
Gbp-Pq: Name Disable-clipboard-test.patch

3 years agoSkip some known-failing tests on mips-family architectures
Simon McVittie [Thu, 2 Sep 2021 22:31:54 +0000 (23:31 +0100)]
Skip some known-failing tests on mips-family architectures

Forwarded: no

Gbp-Pq: Topic debian
Gbp-Pq: Name Skip-some-known-failing-tests-on-mips-family-architecture.patch

3 years agotemplates: Remove html5shiv
Simon McVittie [Thu, 15 Apr 2021 13:09:42 +0000 (14:09 +0100)]
templates: Remove html5shiv

Internet Explorer is dead, or really should be, so let's not generate
references to external resources that can be a privacy breach.

Gbp-Pq: Topic debian
Gbp-Pq: Name templates-Remove-html5shiv.patch

3 years agoDisable web fonts for now
Simon McVittie [Thu, 15 Apr 2021 12:41:44 +0000 (13:41 +0100)]
Disable web fonts for now

The way this works is still changing upstream, and getting the
correct licensing and source code for the Red Hat font (ITP: #986999)
is not really in the scope of packaging gi-docgen.

Forwarded: not-needed, Debian-specific

Gbp-Pq: Topic debian
Gbp-Pq: Name Disable-web-fonts-for-now.patch

3 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: Name reftests-Allow-minor-differences-to-be-tolerated.patch

3 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: Name reftest_compare_surfaces-Report-how-much-the-images-diffe.patch

3 years agoRelease to unstable
Simon McVittie [Wed, 16 Feb 2022 16:56:08 +0000 (16:56 +0000)]
Release to unstable

3 years agod/run-tests.sh: Show full test log after testing
Simon McVittie [Wed, 16 Feb 2022 12:42:10 +0000 (12:42 +0000)]
d/run-tests.sh: Show full test log after testing

3 years agoUpdate changelog
Simon McVittie [Wed, 16 Feb 2022 11:23:06 +0000 (11:23 +0000)]
Update changelog

3 years agod/copyright: Update
Simon McVittie [Wed, 16 Feb 2022 11:12:17 +0000 (11:12 +0000)]
d/copyright: Update

3 years agod/control.in: Update build-dependency versions
Simon McVittie [Wed, 16 Feb 2022 11:11:56 +0000 (11:11 +0000)]
d/control.in: Update build-dependency versions

3 years agoDrop patches that were applied upstream
Simon McVittie [Wed, 16 Feb 2022 10:32:34 +0000 (10:32 +0000)]
Drop patches that were applied upstream

3 years agoNew upstream release
Simon McVittie [Wed, 16 Feb 2022 11:10:20 +0000 (11:10 +0000)]
New upstream release

3 years agoUpdate upstream source from tag 'upstream/4.6.1+ds'
Simon McVittie [Wed, 16 Feb 2022 11:10:20 +0000 (11:10 +0000)]
Update upstream source from tag 'upstream/4.6.1+ds'

Update to upstream version '4.6.1+ds'
with Debian dir a2a2e461e9b0cf1a09d112955e8efe2928126daa

3 years agoNew upstream version 4.6.1+ds
Simon McVittie [Wed, 16 Feb 2022 11:09:40 +0000 (11:09 +0000)]
New upstream version 4.6.1+ds

3 years agoExclude wayland subproject when repacking
Simon McVittie [Wed, 16 Feb 2022 10:48:14 +0000 (10:48 +0000)]
Exclude wayland subproject when repacking

3 years agod/watch: Use simpler repack suffix
Simon McVittie [Wed, 16 Feb 2022 10:28:33 +0000 (10:28 +0000)]
d/watch: Use simpler repack suffix

3 years ago4.6.1
Matthias Clasen [Sat, 12 Feb 2022 01:09:15 +0000 (20:09 -0500)]
4.6.1

3 years agoMerge branch 'wip/chergert/popover-opaque-region' into 'main'
Matthias Clasen [Fri, 11 Feb 2022 23:16:43 +0000 (23:16 +0000)]
Merge branch 'wip/chergert/popover-opaque-region' into 'main'

add opaque regions to popovers

Closes #4689

See merge request GNOME/gtk!4468

3 years agopopover: use GtkNative opaque region API
Christian Hergert [Fri, 11 Feb 2022 00:54:32 +0000 (16:54 -0800)]
popover: use GtkNative opaque region API

This updates GtkPopover to use the new GtkNative abstraction for
reporting opaque regions of the window, in hopes that it can speed
up compositors for things like animated lists, menu transitions,
and more.

Fixes #4689

3 years agowindow: use GtkNative API to update opaque region
Christian Hergert [Fri, 11 Feb 2022 00:23:16 +0000 (16:23 -0800)]
window: use GtkNative API to update opaque region

This switches to using the new GtkNative machinery for updating the
opaque region. Some amount of local calculation is still required for
determining when we should apply shadows, and this inherits what was
done previous for that.

Related #4689

3 years agonative: add API to update opaque region
Christian Hergert [Fri, 11 Feb 2022 00:21:48 +0000 (16:21 -0800)]
native: add API to update opaque region

This abstracts the machinery to update the opaque region for a GtkWindow
into GtkNative so it may be used from other native impelementations such
as GtkPopover.

Related #4689

3 years agoMerge branch 'bilelmoussaoui/entry-completion' into 'main'
Matthias Clasen [Fri, 11 Feb 2022 17:49:26 +0000 (17:49 +0000)]
Merge branch 'bilelmoussaoui/entry-completion' into 'main'

entry completion: add checks that entry is set already

See merge request GNOME/gtk!4450

3 years agoMerge branch 'enum-docs' into 'main'
Matthias Clasen [Fri, 11 Feb 2022 17:35:42 +0000 (17:35 +0000)]
Merge branch 'enum-docs' into 'main'

docs: Use links in enums

See merge request GNOME/gtk!4452

3 years agoMerge branch 'bilelmoussaoui/g-i' into 'main'
Matthias Clasen [Fri, 11 Feb 2022 17:33:05 +0000 (17:33 +0000)]
Merge branch 'bilelmoussaoui/g-i' into 'main'

g-i: add a couple of missing nullable annotations

See merge request GNOME/gtk!4470

3 years agoMerge branch 'primary' into 'main'
Carlos Garnacho [Fri, 11 Feb 2022 14:29:19 +0000 (14:29 +0000)]
Merge branch 'primary' into 'main'

gdk: don't leak wayland primary selection offers

See merge request GNOME/gtk!4458

3 years agog-i: Add nullable annotations to EventControllerKey::im-context
Bilal Elmoussaoui [Fri, 11 Feb 2022 11:59:55 +0000 (12:59 +0100)]
g-i: Add nullable annotations to EventControllerKey::im-context

Fixes https://github.com/gtk-rs/gtk4-rs/issues/874

3 years agog-i: Add nullable annotations to CellArea getters
Bilal Elmoussaoui [Fri, 11 Feb 2022 11:55:28 +0000 (12:55 +0100)]
g-i: Add nullable annotations to CellArea getters

Fixes https://github.com/gtk-rs/gtk4-rs/issues/891

3 years agoMerge branch 'bilelmoussaoui/layout-manager' into 'main'
Emmanuele Bassi [Fri, 11 Feb 2022 11:51:44 +0000 (11:51 +0000)]
Merge branch 'bilelmoussaoui/layout-manager' into 'main'

layout manager: add a check if the widget exists

See merge request GNOME/gtk!4469

3 years agog-i: Mark FileChooser [s|g]et_current_[folder|name] as nullable
Bilal Elmoussaoui [Fri, 11 Feb 2022 11:19:10 +0000 (12:19 +0100)]
g-i: Mark FileChooser [s|g]et_current_[folder|name] as nullable

The code seems to already check if folder/name is NULL
Fixes https://github.com/gtk-rs/gtk4-rs/issues/896

3 years agog-i: Mark get_print_settings as nullable
Bilal Elmoussaoui [Fri, 11 Feb 2022 11:07:54 +0000 (12:07 +0100)]
g-i: Mark get_print_settings as nullable

Fixes https://github.com/gtk-rs/gtk4-rs/issues/880

3 years agodocs: Use links in enums
Maximiliano Sandoval R [Tue, 8 Feb 2022 10:47:53 +0000 (11:47 +0100)]
docs: Use links in enums

Properties already refer to their object, so

    [property@Widget:sensitive] property on [class@Widget]

is redundant.

3 years agog-i: mark get_selected_printer as nullable
Bilal Elmoussaoui [Fri, 11 Feb 2022 11:05:42 +0000 (12:05 +0100)]
g-i: mark get_selected_printer as nullable

There is no selected printer if the user closes the dialog
Fixes https://github.com/gtk-rs/gtk4-rs/issues/882

3 years agog-i: mark EventController::name as nullable
Bilal Elmoussaoui [Fri, 11 Feb 2022 11:02:07 +0000 (12:02 +0100)]
g-i: mark EventController::name as nullable

Fixes https://github.com/gtk-rs/gtk4-rs/issues/893

3 years agog-i: add nullable annotation to gtk_single_selection_get_model
Bilal Elmoussaoui [Fri, 11 Feb 2022 10:56:40 +0000 (11:56 +0100)]
g-i: add nullable annotation to gtk_single_selection_get_model

3 years agolayout manager: add a check if the widget exists
Bilal Elmoussaoui [Fri, 11 Feb 2022 10:44:16 +0000 (11:44 +0100)]
layout manager: add a check if the widget exists

Avoid a crash when calling _gtk_widget_get_first_child
Fixes https://github.com/gtk-rs/gtk4-rs/issues/889

3 years agoMerge branch 'fix-wayland-subproject-build' into 'main'
Matthias Clasen [Thu, 10 Feb 2022 21:57:27 +0000 (21:57 +0000)]
Merge branch 'fix-wayland-subproject-build' into 'main'

NEWS: Updates

See merge request GNOME/gtk!4466

3 years agoNEWS: Updates
Matthias Clasen [Thu, 10 Feb 2022 20:06:37 +0000 (15:06 -0500)]
NEWS: Updates

3 years agogdk: don't leak wayland primary selection offers
Julian Orth [Tue, 8 Feb 2022 21:47:01 +0000 (22:47 +0100)]
gdk: don't leak wayland primary selection offers

Signed-off-by: Julian Orth <ju.orth@gmail.com>
3 years agoMerge branch 'fix-wayland-subproject-build' into 'main'
Matthias Clasen [Thu, 10 Feb 2022 19:13:33 +0000 (19:13 +0000)]
Merge branch 'fix-wayland-subproject-build' into 'main'

Fix build with wayland-protocols subproject

Closes #4530

See merge request GNOME/gtk!4465

3 years agoFix build with wayland-protocols subproject
Matthias Clasen [Thu, 10 Feb 2022 18:21:28 +0000 (13:21 -0500)]
Fix build with wayland-protocols subproject

The missing files() was pointed out in #4530.

Fixes: #4530
3 years agoMerge branch 'column-view-column-new-nullable-factory' into 'main'
Matthias Clasen [Thu, 10 Feb 2022 11:42:38 +0000 (11:42 +0000)]
Merge branch 'column-view-column-new-nullable-factory' into 'main'

Allow passing a `NULL` factory to `gtk_column_view_column_new()`

See merge request GNOME/gtk!4454

3 years agoMerge branch 'icon-view-drag-dest-item-nullable' into 'main'
Matthias Clasen [Thu, 10 Feb 2022 11:24:04 +0000 (11:24 +0000)]
Merge branch 'icon-view-drag-dest-item-nullable' into 'main'

Mark `path` out parameter of `gtk_icon_view_get_drag_dest_item()` as `(nullable)`

See merge request GNOME/gtk!4451

3 years agoMerge branch 'gwagner/gtkbuilder-rng' into 'main'
Matthias Clasen [Wed, 9 Feb 2022 19:25:32 +0000 (19:25 +0000)]
Merge branch 'gwagner/gtkbuilder-rng' into 'main'

tools: updated gtk4builder.rng to current state

See merge request GNOME/gtk!4457

3 years agoMerge branch 'update-keysyms' into 'main'
Matthias Clasen [Wed, 9 Feb 2022 19:23:59 +0000 (19:23 +0000)]
Merge branch 'update-keysyms' into 'main'

gdk: Update keyboard symbols from libxkbcommon

See merge request GNOME/gtk!4422

3 years agoMerge branch 'gtk_assisten_set_current_page-no-pages-guard' into 'main'
Matthias Clasen [Wed, 9 Feb 2022 19:19:24 +0000 (19:19 +0000)]
Merge branch 'gtk_assisten_set_current_page-no-pages-guard' into 'main'

Don't dereference a `NULL` page in `gtk_assistant_set_current_page()` if there are no pages at all

See merge request GNOME/gtk!4464

3 years agoreleasing package gtk4 version 4.6.0+ds1-4
Jeremy Bicha [Wed, 9 Feb 2022 18:26:16 +0000 (13:26 -0500)]
releasing package gtk4 version 4.6.0+ds1-4

3 years agoRecord gtk4 (4.6.0+ds1-4) in archive suite sid
Jeremy Bicha [Wed, 9 Feb 2022 18:25:53 +0000 (18:25 +0000)]
Record gtk4 (4.6.0+ds1-4) in archive suite sid

3 years agoDisable optimized GResource embedding
Simon McVittie [Sat, 8 Jan 2022 18:26:52 +0000 (18:26 +0000)]
Disable optimized GResource embedding

This seems to be triggering failures on armel and armhf. Second-guessing
GResource seems to be more trouble than it's worth.

Bug: https://gitlab.gnome.org/GNOME/gtk/-/issues/4617
Signed-off-by: Simon McVittie <smcv@debian.org>
Forwarded: no

Gbp-Pq: Topic debian
Gbp-Pq: Name Disable-optimized-GResource-embedding.patch

3 years agoDisable clipboard test
Simon McVittie [Fri, 3 Sep 2021 14:08:08 +0000 (15:08 +0100)]
Disable clipboard test

This regularly times out on buildds, but I can't reproduce the hang
locally.

Bug: https://gitlab.gnome.org/GNOME/gtk/-/issues/4229
Forwarded: no

Gbp-Pq: Topic debian
Gbp-Pq: Name Disable-clipboard-test.patch

3 years agoSkip some known-failing tests on mips-family architectures
Simon McVittie [Thu, 2 Sep 2021 22:31:54 +0000 (23:31 +0100)]
Skip some known-failing tests on mips-family architectures

Forwarded: no

Gbp-Pq: Topic debian
Gbp-Pq: Name Skip-some-known-failing-tests-on-mips-family-architecture.patch

3 years agotemplates: Remove html5shiv
Simon McVittie [Thu, 15 Apr 2021 13:09:42 +0000 (14:09 +0100)]
templates: Remove html5shiv

Internet Explorer is dead, or really should be, so let's not generate
references to external resources that can be a privacy breach.

Gbp-Pq: Topic debian
Gbp-Pq: Name templates-Remove-html5shiv.patch

3 years agoDisable web fonts for now
Simon McVittie [Thu, 15 Apr 2021 12:41:44 +0000 (13:41 +0100)]
Disable web fonts for now

The way this works is still changing upstream, and getting the
correct licensing and source code for the Red Hat font (ITP: #986999)
is not really in the scope of packaging gi-docgen.

Forwarded: not-needed, Debian-specific

Gbp-Pq: Topic debian
Gbp-Pq: Name Disable-web-fonts-for-now.patch

3 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: Name reftests-Allow-minor-differences-to-be-tolerated.patch

3 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: Name reftest_compare_surfaces-Report-how-much-the-images-diffe.patch

3 years agopng: Correct endianness for big-endian machines
Simon McVittie [Sat, 8 Jan 2022 16:39:36 +0000 (16:39 +0000)]
png: Correct endianness for big-endian machines

libpng wants to receive samples in either RGB or RGBA order, whether
each sample is big-endian or not. This resolves test failures in
testsuite/gdk/memorytexture.c (and a lot of reftests) on s390x, and
probably the PowerPC family too.

Modifying the test to show the color in use and write out the PNG bytes
to a file, and running the memorytexture test on s390x, produces a PNG
that loads with the correct color values in GIMP (on an x86_64 machine),
which seems like evidence that this is the correct change and not just
compensating errors.

Bug: https://gitlab.gnome.org/GNOME/gtk/-/issues/4616
Signed-off-by: Simon McVittie <smcv@debian.org>
Forwarded: https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/4357

Gbp-Pq: Name png-Correct-endianness-for-big-endian-machines.patch

3 years agobuild: Tell glib-compile-resources to make symbols internal where possible
Simon McVittie [Tue, 4 Jan 2022 17:41:34 +0000 (17:41 +0000)]
build: Tell glib-compile-resources to make symbols internal where possible

Partial solution to https://gitlab.gnome.org/GNOME/gtk/-/issues/4598

Signed-off-by: Simon McVittie <smcv@debian.org>
Forwarded: https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/4334

Gbp-Pq: Name build-Tell-glib-compile-resources-to-make-symbols-interna.patch

3 years agoMake our stack noexec
Matthias Clasen [Tue, 4 Jan 2022 12:51:56 +0000 (07:51 -0500)]
Make our stack noexec

The change to use ld and objcopy for resources
had some side-effects: it leaked a few symbols
and made our stack executable. We don't want that.

Use -z nonexecstack and --strip-all to avoid this.

Bug: https://gitlab.gnome.org/GNOME/gtk/-/issues/4598

Gbp-Pq: Name Make-our-stack-noexec.patch

3 years agogtk4 (4.6.0+ds1-4) unstable; urgency=medium
Jeremy Bicha [Wed, 9 Feb 2022 18:25:53 +0000 (18:25 +0000)]
gtk4 (4.6.0+ds1-4) unstable; urgency=medium

  * Release to unstable

[dgit import unpatched gtk4 4.6.0+ds1-4]

3 years agoImport gtk4_4.6.0+ds1-4.debian.tar.xz
Jeremy Bicha [Wed, 9 Feb 2022 18:25:53 +0000 (18:25 +0000)]
Import gtk4_4.6.0+ds1-4.debian.tar.xz

[dgit import tarball gtk4 4.6.0+ds1-4 gtk4_4.6.0+ds1-4.debian.tar.xz]

3 years agoRevert "Add subprojects/gi-docgen to Files-Excluded"
Simon McVittie [Sun, 30 Jan 2022 15:38:20 +0000 (15:38 +0000)]
Revert "Add subprojects/gi-docgen to Files-Excluded"

Until we actually remove it (by importing an upstream version without
it), Policy says we need to keep its entries in d/copyright.

gi-docgen upstream also still says gi-docgen is not stable, and still
recommends vendoring it, so keep it included until that changes.

This reverts commit 93ed2478d3e12b429fe75b9e414d26906e04f17c.

3 years agoDon't dereference a `NULL` page in `gtk_assistant_set_current_page()` if there are...
Sebastian Dröge [Wed, 9 Feb 2022 15:50:13 +0000 (17:50 +0200)]
Don't dereference a `NULL` page in `gtk_assistant_set_current_page()` if there are no pages at all

3 years agoMerge branch 'bilelmoussaoui/g-i' into 'main'
Matthias Clasen [Wed, 9 Feb 2022 13:43:50 +0000 (13:43 +0000)]
Merge branch 'bilelmoussaoui/g-i' into 'main'

gdk: mark gdk_device_get_device_tool as nullable

See merge request GNOME/gtk!4463

3 years agoMerge branch 'revert-misdeprecation' into 'main'
Matthias Clasen [Wed, 9 Feb 2022 13:13:35 +0000 (13:13 +0000)]
Merge branch 'revert-misdeprecation' into 'main'

Revert "Deprecate GdkDevice:source"

See merge request GNOME/gtk!4462

3 years agogdk: mark gdk_device_get_device_tool as nullable
Bilal Elmoussaoui [Wed, 9 Feb 2022 13:09:47 +0000 (13:09 +0000)]
gdk: mark gdk_device_get_device_tool as nullable

3 years agoRevert "Deprecate GdkDevice:source"
Matthias Clasen [Wed, 9 Feb 2022 12:55:28 +0000 (07:55 -0500)]
Revert "Deprecate GdkDevice:source"

This reverts commit fd9e0dd13a117637db0d265be85952a71ef128b8.

3 years agoMerge branch 'win32-fix-ctrl-shift-gtk4' into 'main'
Luca Bacci [Wed, 9 Feb 2022 10:08:52 +0000 (10:08 +0000)]
Merge branch 'win32-fix-ctrl-shift-gtk4' into 'main'

gdkkeys-win32: Also ignore Ctrl + Shift (etc.)

See merge request GNOME/gtk!4460

3 years agogdkkeys-win32: Also ignore Ctrl + Shift (etc.)
Philip Zander [Tue, 8 Feb 2022 19:33:42 +0000 (20:33 +0100)]
gdkkeys-win32: Also ignore Ctrl + Shift (etc.)

Some Windows keymaps have bogus mappings for the Ctrl modifier. !4423 attempted
to fix this by ignoring the Ctrl layer, but that was not enough. We also need to
ignore combinations of Ctrl with other modifiers, i.e. Ctrl + Shift. For example,
Ctrl + Shift + 6 is mapped to the character 0x1E on a US keyboard (but it should
be treated as Ctrl + ^). Basically, always ignore Ctrl unless it is used in
conjunction with Alt, i.e. as part of AltGr.

Related issue: #4667

3 years agoMerge branch 'bilelmoussaoui/macos-gdk-display' into 'main'
Christian Hergert [Wed, 9 Feb 2022 00:30:04 +0000 (00:30 +0000)]
Merge branch 'bilelmoussaoui/macos-gdk-display' into 'main'

macos: Don't set NULL as a display name

See merge request GNOME/gtk!4453

3 years agotools: updated gtk4builder.rng to current state
Günther Wagner [Tue, 8 Feb 2022 20:42:41 +0000 (21:42 +0100)]
tools: updated gtk4builder.rng to current state

3 years agoAllow passing a `NULL` factory to `gtk_column_view_column_new()`
Sebastian Dröge [Tue, 8 Feb 2022 14:25:28 +0000 (16:25 +0200)]
Allow passing a `NULL` factory to `gtk_column_view_column_new()`

3 years agomacos: Don't set NULL as a display name
Bilal Elmoussaoui [Tue, 8 Feb 2022 12:38:33 +0000 (13:38 +0100)]
macos: Don't set NULL as a display name

Other GDK backends ensure there is always a default name set.
Fixes https://github.com/gtk-rs/gtk4-rs/issues/868

3 years agoMark `path` out parameter of `gtk_icon_view_get_drag_dest_item()` as `(nullable)`
Sebastian Dröge [Tue, 8 Feb 2022 10:50:24 +0000 (12:50 +0200)]
Mark `path` out parameter of `gtk_icon_view_get_drag_dest_item()` as `(nullable)`

It can be set to `NULL` and the function body handles `NULL` explictly,
so annotate it accordingly.

3 years agoentry completion: add checks that entry is set already
Bilal Elmoussaoui [Tue, 8 Feb 2022 09:51:38 +0000 (10:51 +0100)]
entry completion: add checks that entry is set already

If any of the APIs that assumes that the entry is set already is used
before having one already set, things break pretty badly.

Fixes a downstream issue reported at https://github.com/gtk-rs/gtk4-rs/issues/873

3 years agoMerge branch 'wip/otte/for-main' into 'main'
Benjamin Otte [Tue, 8 Feb 2022 02:08:26 +0000 (02:08 +0000)]
Merge branch 'wip/otte/for-main' into 'main'

gltexture: Only use glGetFramebufferParameter() when available

Closes #4678

See merge request GNOME/gtk!4449

3 years agorgba: Fix GDK_RGBA() macro to work with alpha
Benjamin Otte [Sun, 6 Feb 2022 19:01:49 +0000 (20:01 +0100)]
rgba: Fix GDK_RGBA() macro to work with alpha

Previously we dividied by an integer, so alpha was either 0.0 or 1.0.

3 years agogltexture: Only use glGetFramebufferParameter() when available
Benjamin Otte [Tue, 8 Feb 2022 00:32:44 +0000 (01:32 +0100)]
gltexture: Only use glGetFramebufferParameter() when available

Fixes #4678

3 years agoMerge branch 'wip/jimmac/selected_text' into 'main'
Matthias Clasen [Tue, 8 Feb 2022 00:15:45 +0000 (00:15 +0000)]
Merge branch 'wip/jimmac/selected_text' into 'main'

style: legible text selections

Closes #4664

See merge request GNOME/gtk!4433

3 years agoMerge branch 'antoniof-main-patch-89408' into 'main'
Matthias Clasen [Mon, 7 Feb 2022 23:57:46 +0000 (23:57 +0000)]
Merge branch 'antoniof-main-patch-89408' into 'main'

columnviewcolumn: Define autocleanup function

See merge request GNOME/gtk!4440

3 years agoMerge branch 'more-noexecstack' into 'main'
Matthias Clasen [Mon, 7 Feb 2022 23:57:26 +0000 (23:57 +0000)]
Merge branch 'more-noexecstack' into 'main'

demos: Make our stack noexec

See merge request GNOME/gtk!4439

3 years agoMerge branch 'wip/chergert/macos-fixes' into 'main'
Matthias Clasen [Mon, 7 Feb 2022 23:56:40 +0000 (23:56 +0000)]
Merge branch 'wip/chergert/macos-fixes' into 'main'

various macOS fixes

See merge request GNOME/gtk!4424

3 years agoMerge branch 'mg/gdk-macos-gdkdisplaylinksource' into 'main'
Matthias Clasen [Mon, 7 Feb 2022 23:54:55 +0000 (23:54 +0000)]
Merge branch 'mg/gdk-macos-gdkdisplaylinksource' into 'main'

Include `gdk-private.h` to fix error about `g_source_set_static_name`

See merge request GNOME/gtk!4443

3 years agoMerge branch 'mg/implicit-declaration-free' into 'main'
Matthias Clasen [Mon, 7 Feb 2022 23:53:36 +0000 (23:53 +0000)]
Merge branch 'mg/implicit-declaration-free' into 'main'

gdkjpeg: include `stdlib.h` necessary for `free`

See merge request GNOME/gtk!4445

3 years agoUpdate Slovenian translation
Matej Urbančič [Mon, 7 Feb 2022 19:39:08 +0000 (19:39 +0000)]
Update Slovenian translation

3 years agoUpdate Slovenian translation
Matej Urbančič [Mon, 7 Feb 2022 19:30:34 +0000 (19:30 +0000)]
Update Slovenian translation

3 years agoMerge branch 'drop-target-get-formats-transfer-none' into 'main'
Emmanuele Bassi [Mon, 7 Feb 2022 15:17:39 +0000 (15:17 +0000)]
Merge branch 'drop-target-get-formats-transfer-none' into 'main'

Mark `gtk_drop_target_get_formats()` return value as `transfer none`

See merge request GNOME/gtk!4446

3 years agoMark `gtk_drop_target_get_formats()` return value as `transfer none`
Sebastian Dröge [Mon, 7 Feb 2022 14:23:01 +0000 (16:23 +0200)]
Mark `gtk_drop_target_get_formats()` return value as `transfer none`

It was wrongly inferred as `transfer full` by gobject-introspection.

3 years agogdkjpeg: include `stdlib.h` necessary for `free`
Mosè Giordano [Sun, 6 Feb 2022 15:41:33 +0000 (15:41 +0000)]
gdkjpeg: include `stdlib.h` necessary for `free`

`free` is defined in `stdlib.h`, see for example
<https://pubs.opengroup.org/onlinepubs/009604499/functions/free.html>.  Without
this include compilation can fail with the following error:

```
../gdk/loaders/gdkjpeg.c: In function ‘gdk_save_jpeg’:
../gdk/loaders/gdkjpeg.c:264:7: warning: implicit declaration of function ‘free’ [-Wimplicit-function-declaration]
       free (data);
       ^
../gdk/loaders/gdkjpeg.c:264:7: warning: incompatible implicit declaration of built-in function ‘free’
../gdk/loaders/gdkjpeg.c:264:7: note: include ‘<stdlib.h>’ or provide a declaration of ‘free’
../gdk/loaders/gdkjpeg.c:302:67: error: ‘free’ undeclared (first use in this function)
   return g_bytes_new_with_free_func (data, size, (GDestroyNotify) free, NULL);
                                                                   ^
../gdk/loaders/gdkjpeg.c:302:67: note: each undeclared identifier is reported only once for each function it appears in
../gdk/loaders/gdkjpeg.c:303:1: warning: control reaches end of non-void function [-Wreturn-type]
 }
 ^
```

3 years agoInclude `gdk-private.h` to fix error about `g_source_set_static_name`
Mosè Giordano [Sat, 5 Feb 2022 21:51:40 +0000 (21:51 +0000)]
Include `gdk-private.h` to fix error about `g_source_set_static_name`

Without this change we get the following error:

```
[1/13] Compiling C object gdk/macos/libgdk-macos.a.p/gdkdisplaylinksource.c.o
ninja: job failed: /opt/bin/aarch64-apple-darwin20-libgfortran5-cxx11/aarch64-apple-darwin20-clang -Igdk/macos/libgdk-macos.a.p -Igdk/macos -I../gdk/macos -I. -I.. -Igdk -I../gdk -Isubprojects/pango/pango -I../subprojects/pango/pango -Isubprojects/pango -I../subprojects/pango -I/workspace/destdir/include/gdk-pixbuf-2.0 -I/workspace/destdir/include -I/workspace/destdir/include/glib-2.0 -I/workspace/destdir/lib/glib-2.0/include -I/workspace/destdir/lib/libffi-3.2.1/include -I/workspace/destdir/include/libpng16 -I/usr/include/libmount -I/usr/include/blkid -I/workspace/destdir/include/cairo -I/workspace/destdir/include/pixman-1 -I/workspace/destdir/include/freetype2 -I/workspace/destdir/include/fribidi -I/workspace/destdir/include/harfbuzz -I/workspace/destdir/include/graphene-1.0 -I/workspace/destdir/lib/graphene-1.0/include -I/workspace/destdir/include/gio-unix-2.0 -fcolor-diagnostics -Wall -Winvalid-pch -std=gnu99 -O2 -g -DG_LOG_USE_STRUCTURED=1 -DGLIB_DISABLE_DEPRECATION_WARNINGS '-DGTK_VERSION="4.6.0"' -D_GNU_SOURCE -DG_ENABLE_DEBUG -DGTK_COMPILATION '-DG_LOG_DOMAIN="Gdk"' -xobjective-c -fno-strict-aliasing -Wno-c++11-extensions -Wno-missing-include-dirs -Wno-typedef-redefinition -Wformat=2 -Wformat-nonliteral -Wformat-security -Wignored-qualifiers -Wimplicit-function-declaration -Wmisleading-indentation -Wmissing-format-attribute -Wmissing-include-dirs -Wmissing-noreturn -Wnested-externs -Wold-style-definition -Wpointer-arith -Wshadow -Wstrict-prototypes -Wswitch-default -Wswitch-enum -Wundef -Wuninitialized -Wunused -Werror=address -Werror=array-bounds -Werror=empty-body -Werror=implicit -Werror=implicit-fallthrough -Werror=init-self -Werror=int-to-pointer-cast -Werror=main -Werror=missing-braces -Werror=missing-declarations -Werror=missing-prototypes -Werror=nonnull -Werror=pointer-to-int-cast -Werror=redundant-decls -Werror=return-type -Werror=sequence-point -Werror=trigraphs -Werror=vla -Werror=write-strings -Wnull-dereference -fvisibility=hidden -MD -MQ gdk/macos/libgdk-macos.a.p/gdkdisplaylinksource.c.o -MF gdk/macos/libgdk-macos.a.p/gdkdisplaylinksource.c.o.d -o gdk/macos/libgdk-macos.a.p/gdkdisplaylinksource.c.o -c ../gdk/macos/gdkdisplaylinksource.c
../gdk/macos/gdkdisplaylinksource.c:201:3: error: implicit declaration of function 'g_source_set_static_name' is invalid in C99 [-Werror,-Wimplicit-function-declaration]
  g_source_set_static_name (source, "[gdk] quartz frame clock");
  ^
1 error generated.
ninja: subcommand failed
```

3 years agomacos: fallback to conversion on WCG colorspace
Christian Hergert [Sat, 5 Feb 2022 20:42:57 +0000 (12:42 -0800)]
macos: fallback to conversion on WCG colorspace

We don't want to risk having something really weird come out if we have a
WCG colorspace, so instead only do the performance hack on systems where
the output is likely reasonable.

We will want to eventually just be drawing in the appropriate colorspace,
but that is not available yet.

3 years agoUpdate Basque translation
Asier Sarasua Garmendia [Sat, 5 Feb 2022 11:21:02 +0000 (11:21 +0000)]
Update Basque translation

3 years agomacos: handle sizing changes when switching monitors
Christian Hergert [Fri, 4 Feb 2022 20:29:57 +0000 (12:29 -0800)]
macos: handle sizing changes when switching monitors

This should make sure that our scales are updated as well as
ensuring we repaint the whole surface.

3 years agoMerge branch 'wip/hadess/inspector-search-by-pointer-gtk4' into 'main'
Benjamin Otte [Fri, 4 Feb 2022 18:07:28 +0000 (18:07 +0000)]
Merge branch 'wip/hadess/inspector-search-by-pointer-gtk4' into 'main'

inspector: Search by pointer address

See merge request GNOME/gtk!4442

3 years agomacos: assume monitor colorspace when drawing
Christian Hergert [Fri, 4 Feb 2022 17:46:10 +0000 (09:46 -0800)]
macos: assume monitor colorspace when drawing

When using software rendering w/ cairo, assume we're drawing in
the best-monitor's colorspace rather than RGB to avoid colorspace
conversions on every frame.

3 years agomacos: add API to get monitor colorspace
Christian Hergert [Fri, 4 Feb 2022 17:45:55 +0000 (09:45 -0800)]
macos: add API to get monitor colorspace

3 years agoinspector: Search by pointer address
Bastien Nocera [Fri, 4 Feb 2022 17:39:56 +0000 (18:39 +0100)]
inspector: Search by pointer address

Useful to find a widget that corresponds to a pointer address in gdb.

3 years agomacos: precalculate clip regions as CGRect
Christian Hergert [Fri, 4 Feb 2022 17:31:37 +0000 (09:31 -0800)]
macos: precalculate clip regions as CGRect

We can make our drawRect do less work if we precalculate the clip
and damage regions upfront by intersecting them with the bounds.

3 years agocolumnviewcolumn: Define autocleanup function
António Fernandes [Fri, 4 Feb 2022 11:13:46 +0000 (11:13 +0000)]
columnviewcolumn: Define autocleanup function