gtk4.git
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 [Mon, 7 Aug 2023 08:35:50 +0000 (09:35 +0100)]
Release to unstable

2 years agoTemporarily disable sysprof integration to get the package rebuilt
Simon McVittie [Mon, 7 Aug 2023 08:35:27 +0000 (09:35 +0100)]
Temporarily disable sysprof integration to get the package rebuilt

2 years agoRelease to unstable
Simon McVittie [Sun, 6 Aug 2023 12:04:40 +0000 (13:04 +0100)]
Release to unstable

2 years agod/upstream/metadata: Use preferred Gitlab URLs
Simon McVittie [Sun, 6 Aug 2023 12:03:05 +0000 (13:03 +0100)]
d/upstream/metadata: Use preferred Gitlab URLs

Changes-By: lintian-brush
2 years agoRemove maintscripts unnecessary in any released Debian version
Simon McVittie [Sun, 6 Aug 2023 12:02:29 +0000 (13:02 +0100)]
Remove maintscripts unnecessary in any released Debian version

2 years agoRemove version constraints unnecessary since Debian 11
Simon McVittie [Sun, 6 Aug 2023 12:01:01 +0000 (13:01 +0100)]
Remove version constraints unnecessary since Debian 11

2 years agod/control.in: Only use libsysprof-capture-4-dev for shared library
Simon McVittie [Sun, 6 Aug 2023 11:51:25 +0000 (12:51 +0100)]
d/control.in: Only use libsysprof-capture-4-dev for shared library

libsysprof-capture-4-dev is currently a virtual package provided by
libsysprof-4-dev, which also includes GTK 4 GUI components and so depends
on libgtk-4-dev. If the Architecture: amd64 build happens to finish before
the Architecture: all build starts, then the Architecture: all build will
fail with an unsatisfiable build-dependency: libsysprof-4-dev Depends on
libgtk-4-dev, which Depends on libgtk-4-common (>= ${source:Version}),
which hasn't been built yet. The result is that libgtk-4-common can't
be built and the builds deadlock. We've been lucky enough to avoid this
until now, but version 4.10.5+ds-1 was not sufficiently lucky and has
become uninstallable and unbuildable.

Because the sysprof integration is part of the architecture-specific
library, we can break this cycle by only installing libsysprof-4-dev when
we are building the architecture-specific library, and excluding it
when we are only building architecture-independent documentation and
common files.

2 years agoreleasing package gtk4 version 4.10.5+ds-1
Jeremy Bícha [Sat, 5 Aug 2023 13:56:19 +0000 (09:56 -0400)]
releasing package gtk4 version 4.10.5+ds-1

2 years agoNew upstream release
Jeremy Bícha [Sat, 5 Aug 2023 12:56:07 +0000 (08:56 -0400)]
New upstream release

2 years agoUpdate upstream source from tag 'upstream/4.10.5+ds'
Jeremy Bícha [Sat, 5 Aug 2023 12:56:06 +0000 (08:56 -0400)]
Update upstream source from tag 'upstream/4.10.5+ds'

Update to upstream version '4.10.5+ds'
with Debian dir 5d07f4ce2786683425076e4458da83a3ad8d29ac

2 years agoNew upstream version 4.10.5+ds
Jeremy Bícha [Sat, 5 Aug 2023 12:55:51 +0000 (08:55 -0400)]
New upstream version 4.10.5+ds

2 years ago4.10.5
Matthias Clasen [Sat, 5 Aug 2023 09:50:38 +0000 (05:50 -0400)]
4.10.5

2 years agoMerge branch 'cherry-pick-f0f7613a' into 'gtk-4-10'
Benjamin Otte [Wed, 26 Jul 2023 05:33:04 +0000 (05:33 +0000)]
Merge branch 'cherry-pick-f0f7613a' into 'gtk-4-10'

Merge branch 'zbrown/pending' into 'main'

See merge request GNOME/gtk!6214

2 years agoMerge branch 'zbrown/pending' into 'main'
Benjamin Otte [Wed, 26 Jul 2023 04:39:13 +0000 (04:39 +0000)]
Merge branch 'zbrown/pending' into 'main'

filterlistmodel: emit ::notify::pending after ::items-changed

See merge request GNOME/gtk!6213

(cherry picked from commit f0f7613adb4cb90826d65f60258c5cd1b529dc77)

72a1bd64 filterlistmodel: emit ::notify::pending after ::items-changed

2 years agoUpdate Hungarian translation
Balázs Meskó [Tue, 25 Jul 2023 23:43:05 +0000 (23:43 +0000)]
Update Hungarian translation

2 years agoUpdate Vietnamese translation
Ngọc Quân Trần [Sat, 22 Jul 2023 08:16:20 +0000 (08:16 +0000)]
Update Vietnamese translation

2 years agoUpdate Greek translation
Efstathios Iosifidis [Fri, 21 Jul 2023 22:29:43 +0000 (22:29 +0000)]
Update Greek translation

2 years agoUpdate Spanish translation
Daniel Mustieles [Wed, 19 Jul 2023 12:36:24 +0000 (12:36 +0000)]
Update Spanish translation

2 years agoRevert "Updated Spanish translation"
Daniel Mustieles [Wed, 19 Jul 2023 12:34:43 +0000 (14:34 +0200)]
Revert "Updated Spanish translation"

This reverts commit f0c27b7c8e6f9a4b27ef2e145573d56fa133dc83.

2 years agoUpdated Spanish translation
Daniel Mustieles [Wed, 19 Jul 2023 12:24:40 +0000 (14:24 +0200)]
Updated Spanish translation

2 years agoreleasing package gtk4 version 4.10.4+ds-2
Jeremy Bícha [Wed, 19 Jul 2023 11:53:50 +0000 (07:53 -0400)]
releasing package gtk4 version 4.10.4+ds-2

2 years agoUpdate Brazilian Portuguese translation
Leônidas Araújo [Mon, 26 Jun 2023 13:08:44 +0000 (13:08 +0000)]
Update Brazilian Portuguese translation

2 years agoMerge branch 'wip/carlosg/clear-resize-cursor-4-10' into 'gtk-4-10'
Carlos Garnacho [Sun, 25 Jun 2023 19:04:58 +0000 (19:04 +0000)]
Merge branch 'wip/carlosg/clear-resize-cursor-4-10' into 'gtk-4-10'

window: Clear resize_cursor on leave notify events (4.10)

See merge request GNOME/gtk!6143

2 years agowindow: Clear resize_cursor on leave notify events
Michel Dänzer [Mon, 12 Jun 2023 16:28:29 +0000 (18:28 +0200)]
window: Clear resize_cursor on leave notify events

When the pointer leaves the window surface, gtk_window_capture_motion
will not be called anymore, so priv->resize_cursor may remain non-NULL
indefinitely without this.

If update_cursor is later called (via gtk_window_maybe_update_cursor) on
a virtual enter notify event (e.g. because the pointer entered a
descendant surface), it would previously re-set the window surface
cursor to priv->resize_cursor, which could result in the wrong cursor
shape being shown for descendant surfaces.

This affected mutter-x11-frames, see
https://gitlab.freedesktop.org/xorg/xserver/-/issues/1557.

One could also say that if the pointer leaves the window surface, it's
trivially not over any window edge.

(cherry-picked from commit f8fd04402eaf500abc72d5529165068660bd6911)

2 years agoMerge branch 'unaligned-access-for-gtk-4-10' into 'gtk-4-10'
Benjamin Otte [Tue, 20 Jun 2023 16:06:09 +0000 (16:06 +0000)]
Merge branch 'unaligned-access-for-gtk-4-10' into 'gtk-4-10'

gtk: Align key_size up to key_align (for gtk-4-10)

See merge request GNOME/gtk!6124

2 years agogtk: Align key_size up to key_align
Matt Turner [Mon, 19 Jun 2023 19:50:04 +0000 (15:50 -0400)]
gtk: Align key_size up to key_align

Avoids unaligned accesses when e.g. the key_size is 12 and key_align is
8. We need to round the key size up to 16 to ensure that all keys are
appropriately aligned.

This manifested as a failure in the `gtk:gtk / sorter` unit test on
sparc.

Closes: https://gitlab.gnome.org/GNOME/gtk/-/issues/5907
(cherry picked from commit 3f360aa883dc51ad986c721be01b494020e5ac9d)

2 years agogtk: Pass G_ALIGNOF (...) to gtk_sort_keys_new
Matt Turner [Mon, 19 Jun 2023 19:47:17 +0000 (15:47 -0400)]
gtk: Pass G_ALIGNOF (...) to gtk_sort_keys_new

The sizeof and G_ALIGNOF are often, but not always, identical.

(cherry picked from commit a4440453868ebe7c87d0a69de9609b33a688a8bb)

2 years agoMerge branch 'forgotten-410-backport' into 'gtk-4-10'
Matthias Clasen [Tue, 13 Jun 2023 14:41:10 +0000 (14:41 +0000)]
Merge branch 'forgotten-410-backport' into 'gtk-4-10'

Revert "css: Simplify default values"

See merge request GNOME/gtk!6092

2 years agoRevert "css: Simplify default values"
Matthias Clasen [Fri, 12 May 2023 18:09:36 +0000 (14:09 -0400)]
Revert "css: Simplify default values"

This reverts commit 1efa39672b94ba12f42f386d0eedb7ed6d7c3d03.

We want to use corner values for corner properties.

Fixes: #5892
2 years agoUpdate Czech translation
Daniel Rusek [Mon, 12 Jun 2023 13:14:40 +0000 (13:14 +0000)]
Update Czech translation

2 years agoreleasing package gtk4 version 4.10.4+ds-1
Jeremy Bicha [Mon, 5 Jun 2023 19:05:11 +0000 (15:05 -0400)]
releasing package gtk4 version 4.10.4+ds-1

2 years agoRevert a buildsystem change that affected our installed-tests patch
Jeremy Bicha [Mon, 5 Jun 2023 17:49:03 +0000 (13:49 -0400)]
Revert a buildsystem change that affected our installed-tests patch

2 years agoNew upstream release
Jeremy Bicha [Mon, 5 Jun 2023 17:06:51 +0000 (13:06 -0400)]
New upstream release

2 years agoUpdate upstream source from tag 'upstream/4.10.4+ds'
Jeremy Bicha [Mon, 5 Jun 2023 17:06:51 +0000 (13:06 -0400)]
Update upstream source from tag 'upstream/4.10.4+ds'

Update to upstream version '4.10.4+ds'
with Debian dir a2d5f1a473ed957eb42ebf96f58694b47efc1cac

2 years agoNew upstream version 4.10.4+ds
Jeremy Bicha [Mon, 5 Jun 2023 17:06:24 +0000 (13:06 -0400)]
New upstream version 4.10.4+ds

2 years agoPost-release version bump
Matthias Clasen [Mon, 5 Jun 2023 15:38:52 +0000 (11:38 -0400)]
Post-release version bump

2 years ago4.10.4
Matthias Clasen [Mon, 5 Jun 2023 15:27:22 +0000 (11:27 -0400)]
4.10.4

2 years agoMerge branch 'gtk-4-10-backports' into 'gtk-4-10'
Matthias Clasen [Mon, 5 Jun 2023 12:35:40 +0000 (12:35 +0000)]
Merge branch 'gtk-4-10-backports' into 'gtk-4-10'

tests: Stop copying the tool tests

See merge request GNOME/gtk!6062

2 years agostringsorter: Handle NULL strings
Benjamin Otte [Sat, 27 May 2023 17:05:32 +0000 (19:05 +0200)]
stringsorter: Handle NULL strings

NULL is a valid string GValue, so we need to handle it.
The utf8 normalizing and collating functions do not, so we better catch
it early.

2 years agosearchentry: Improve size allocation
Matthias Clasen [Mon, 5 Jun 2023 01:44:37 +0000 (21:44 -0400)]
searchentry: Improve size allocation

We want to always reserve space for the clear icon,
but let the text widget use that space when the icon
isn't shown. A plain box layout can't do that, so
do our own size allocation.

2 years agotext: Make the placeholder non-intrusive
Matthias Clasen [Mon, 5 Jun 2023 01:45:59 +0000 (21:45 -0400)]
text: Make the placeholder non-intrusive

We never want to let the placeholder cause
the widget to grow, so set its max-width-chars
to a small value to make it ellipsize.

2 years agorenderer: return_if_fail() if the given texture size is 0
Benjamin Otte [Sat, 20 May 2023 23:27:09 +0000 (01:27 +0200)]
renderer: return_if_fail() if the given texture size is 0

All renderers SEGV currently when that happens.

2 years agowayland: Don't leak cursor structs
Matthias Clasen [Thu, 1 Jun 2023 00:34:28 +0000 (20:34 -0400)]
wayland: Don't leak cursor structs

Found by gcc's -fanalyzer.

2 years agoRevert "gdk/x11: Also grab keyboard during XDnD grabs"
Matthias Clasen [Sat, 3 Jun 2023 16:17:55 +0000 (12:17 -0400)]
Revert "gdk/x11: Also grab keyboard during XDnD grabs"

This reverts commit ae94417f80c92b26792280a9b798cafc01e49232.

2 years agox11: Stop using passive grabs
Matthias Clasen [Sat, 3 Jun 2023 14:44:21 +0000 (10:44 -0400)]
x11: Stop using passive grabs

The keynav that this implements is half-broken under
xwayland anyway, and it confused and complicates things
on the compositor side.

2 years agox11: Trap XRandr errors when getting outputs during init and update
Marco Trevisan (Treviño) [Thu, 1 Jun 2023 22:23:51 +0000 (00:23 +0200)]
x11: Trap XRandr errors when getting outputs during init and update

We may try to update the XRR outputs and Crtcs when they're changing in
the server, and so we may get BadRROutput that we're currently not
handling properly.

As per this, use traps and check whether we got errors, and if we did
let's ignore the current output.

It's not required to call init_randr13() again because if we got errors
it's very likely that there's a change coming that will be notified at
next iteration during which we'll repeat the init actions.

2 years agoWindow: Copy caveats from :*visible to the setters
Daniel Boles [Thu, 1 Jun 2023 19:31:22 +0000 (20:31 +0100)]
Window: Copy caveats from :*visible to the setters

2 years agoWindow: Fix wrong case in property attribute which
Daniel Boles [Thu, 1 Jun 2023 19:26:57 +0000 (20:26 +0100)]
Window: Fix wrong case in property attribute which

rendered the literal text `org.gtk.MEthod.set_property focus-visible`.

2 years agolabel: Fix crashes when executing a11y actions
Erik Schilling [Wed, 31 May 2023 12:27:48 +0000 (12:27 +0000)]
label: Fix crashes when executing a11y actions

2 years agoactionmuxer: Correctly notify actions after reparenting
Alice Mikhaylenko [Thu, 1 Jun 2023 02:27:10 +0000 (06:27 +0400)]
actionmuxer: Correctly notify actions after reparenting

When registering an observer, we send a notification and for that we need
to query the action's state and param type. When setting up a muxer parent,
same thing happens, except the action is queried on the parent instead.

This means that the muxer will notify observers about the parent's actions,
but not about its own.

Add a test to verify it works.

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

2 years agogdkselectioninputstream-x11: Explicitly handle stream ownership in signal
Marco Trevisan (Treviño) [Tue, 30 May 2023 15:59:06 +0000 (17:59 +0200)]
gdkselectioninputstream-x11: Explicitly handle stream ownership in signal

The display xevent signal connection takes the ownership of the stream
until we get a valid event, so it should manage the stream lifetime.

So make this clearer, by automatically removing the stream reference
when we disconnect from the xevent signal handler.

2 years agogdkselectioninputstream-x11: Make it clearer how we manage the stream ownership
Marco Trevisan (Treviño) [Tue, 30 May 2023 15:54:00 +0000 (17:54 +0200)]
gdkselectioninputstream-x11: Make it clearer how we manage the stream ownership

It gets unreffed during gdk_x11_selection_input_stream_complete, so use
APIs that make this clearer.

2 years agogtkselectioninputstream-x11: Do not add an extra reference to the returned stream
Marco Trevisan (Treviño) [Tue, 30 May 2023 15:50:56 +0000 (17:50 +0200)]
gtkselectioninputstream-x11: Do not add an extra reference to the returned stream

We create a new stream during gdk_x11_selection_input_stream_new_async()
then such stream is referenced when passed to the task via
g_task_return_pointer(), so there's no need to reference it again before
returning it, or we'd end up leaking.

Fixes: https://gitlab.gnome.org/GNOME/gtk/-/issues/4892
2 years agogtkselectioninputstream-x11: Do not add unreffed bytes to the chunks queue
Marco Trevisan (Treviño) [Tue, 30 May 2023 15:43:57 +0000 (17:43 +0200)]
gtkselectioninputstream-x11: Do not add unreffed bytes to the chunks queue

This should never happen, but we may exit the loop because of count value
with an unreffed bytes pointer being added back to the chunks queue.

2 years agogtkselectioninputstream-x11: Do not add EOF marker twice to the chunks queue
Marco Trevisan (Treviño) [Tue, 30 May 2023 15:42:59 +0000 (17:42 +0200)]
gtkselectioninputstream-x11: Do not add EOF marker twice to the chunks queue

We were adding the same EOF marker two times back to the chunks queue,
one implicitly, and the other time could happen when exiting the loop.

2 years agoCheck for NULL groups in gtk_action_muxer_get_group ()
Luca Bacci [Wed, 17 May 2023 12:00:56 +0000 (14:00 +0200)]
Check for NULL groups in gtk_action_muxer_get_group ()

The groups hash table is initialized lazily when inserting
the first GActionGroup (gtk_action_muxer_insert ()). Do as
all surrounding code does and check for NULL before using
groups.

This avoids triggering a warning

2 years agoMenuButton: Always mention child@always-show-arrow
Daniel Boles [Sun, 28 May 2023 10:35:44 +0000 (11:35 +0100)]
MenuButton: Always mention child@always-show-arrow

get_always_show_arrow() did not mention at all that the custom child is
relevant. set_always_show_arrow() only did in the blurb, not for the arg

2 years agodocs: add HSL to Gdk.RGBA.parse
FineFindus [Thu, 25 May 2023 15:16:55 +0000 (17:16 +0200)]
docs: add HSL to Gdk.RGBA.parse

Update the Gdk.RGBA.parse docs to reflect the ability to parse HSL, which has been added in 4.5.0.

2 years agowin32: Invalidate inactive monitors
Jason Francis [Wed, 24 May 2023 21:34:34 +0000 (17:34 -0400)]
win32: Invalidate inactive monitors

Without this, there are still GdkMonitors present for displays that are
present but disconnected (such as when a laptop disables the internal
display to connect to an external monitor).

2 years agoglx: Implement support for EXT_swap_control
Benjamin Otte [Thu, 18 May 2023 00:02:03 +0000 (02:02 +0200)]
glx: Implement support for EXT_swap_control

XWayland (at least on gnome-shell) does not support SGI_swap_control,
which we were using to unset the swap interval.

It does support EXT_swap_control though, which is the more modern
version of the same thing, so this commit adds support for that.

And now GDK_DEBUG=no-vsync gives me >1000fps instead of just 60fps,

2 years agogtkeventcontrollerscroll: Send lores scroll in the middle of the detent
José Expósito [Mon, 17 Oct 2022 17:10:37 +0000 (19:10 +0200)]
gtkeventcontrollerscroll: Send lores scroll in the middle of the detent

Some mice send a value slightly lower than 120 for some detents. The
current approach waits until a value of 120 is reached before sending a
low-resolution scroll event.

For example, the MX Master 3 sends a value of 112 in some detents:

              detent                   detent
    |                        |                       |
                        ^    ^                    ^
                        112  REL_WHEEL            224

As illustrated, only one event was sent but two were expected. However,
sending the low-resolution scroll event in the middle plus the existing
heuristics to reset the accumulator solve this issue:

              detent                   detent
    |                        |                       |
                ^          ^             ^          ^
                REL_WHEEL  112           REL_WHEEL  224

Send low-resolution scroll events in the middle of the detent to solve
this problem.

Related to https://gitlab.gnome.org/GNOME/mutter/-/issues/2469

2 years agoMenuButton: Fix small grammar-o/match related syms
Daniel Boles [Mon, 22 May 2023 20:39:36 +0000 (21:39 +0100)]
MenuButton: Fix small grammar-o/match related syms

2 years agomenus: Avoid unnecessary right padding
Matthias Clasen [Mon, 22 May 2023 20:14:17 +0000 (16:14 -0400)]
menus: Avoid unnecessary right padding

We are using placeholders in the 'check' column
that are put in a size group, so that they all
take the same space once a check or radio is shown.

Unfortunately, for the inline-buttons option, we
were using a GtkBuiltinIcon as placeholder, and those
respect the -gtk-icon-size CSS property and take
a minimum size of 16px. Use a GtkGizmo instead to
get the expected result of no extra padding unless
there's a check or radio.

Fixes: #5839
2 years agogtk/recentmanager: Fix date leak
Khalid Abu Shawarib [Mon, 22 May 2023 12:25:24 +0000 (12:25 +0000)]
gtk/recentmanager: Fix date leak

2 years agoFix typo in CSS docs
Arjan Molenaar [Sat, 20 May 2023 12:11:58 +0000 (14:11 +0200)]
Fix typo in CSS docs

2 years agofilelauncher: Use ShowItems to show in File Manager
Calvin Walton [Sat, 20 May 2023 23:25:43 +0000 (19:25 -0400)]
filelauncher: Use ShowItems to show in File Manager

The non-portal fallback method for launching a file manager to show the
file in its parent directory was incorrectly using the `ShowFolders`
method (open a folder) instead of `ShowItems` (open the parent directory
and show the file).

The `show_item` function (previously `show_folder`) had an unused
`callback` parameter; it has been removed and the type of the parameter
containing the GTask has been renamed and now uses the correct type
instead of gpointer to reduce the amount of casting required.

Fixes GNOME/gtk#5842

2 years agoroaring: Mark a variable as unused
Matthias Clasen [Thu, 18 May 2023 12:34:48 +0000 (08:34 -0400)]
roaring: Mark a variable as unused

Otherwise clang complains.

2 years agoscrolledwindow: Propagate child measure size whenever possible
Fina Wilke [Wed, 17 May 2023 22:55:50 +0000 (00:55 +0200)]
scrolledwindow: Propagate child measure size whenever possible

In height-for-width and hscrollbar-policy = never, we can provide
the child with a proper for_size when measuring it. The same is true for
width-for-height and vscrollbar-policy = never.

This allows for accurately measuring the size of eg. wrapping labels.

2 years agogsk: Fix a crash
Matthias Clasen [Tue, 16 May 2023 21:32:13 +0000 (17:32 -0400)]
gsk: Fix a crash

When we start ignoring batches, we must do it everywhere,
or we may run into assertions. This was triggered by an
enormous text node tree produced by tests/rendernode-create.

2 years agonode-editor: Print default renderer in title
Benjamin Otte [Fri, 12 May 2023 15:16:22 +0000 (17:16 +0200)]
node-editor: Print default renderer in title

If there is a value passed to GSK_RENDERER, display it in the window
title.

This is mostly so that when I show off screenshots, people know what
renderer I'm using.

2 years agorendernode: clip when drawing shadows
Benjamin Otte [Fri, 5 May 2023 02:53:08 +0000 (04:53 +0200)]
rendernode: clip when drawing shadows

Ensures the shadow stays small.

2 years agocss: Remove crashy resource:// optimization
Benjamin Otte [Fri, 12 May 2023 17:20:58 +0000 (19:20 +0200)]
css: Remove crashy resource:// optimization

Using gdk_texture_new_from_resource() is not valid here because we are
not sure if the given resource is valid.

Plus, the previous optimization is no longer relevant, because we are
not using gdk_pixbuf_new_from_resource() anymore - which was what this
optimization was about before it was ported to GdkTexture.

Test attached.

2 years agogdk: Clamp frame region to surface size
Benjamin Otte [Sat, 13 May 2023 16:35:02 +0000 (18:35 +0200)]
gdk: Clamp frame region to surface size

The region may be larger than the surface's size, but many rendering
APIs require the size to be clamped.

Fixes #5812

2 years agoFix a few bugs in GtkPropertyLookupListModel
Matthias Clasen [Tue, 16 May 2023 15:54:59 +0000 (11:54 -0400)]
Fix a few bugs in GtkPropertyLookupListModel

Fix bugs in property types.

2 years agofilesystemmodel: Ignore changes on the parent directory
Corey Berla [Mon, 15 May 2023 20:10:21 +0000 (13:10 -0700)]
filesystemmodel: Ignore changes on the parent directory

The filesystemmodel tracks changes and additions to child files
through G_FILE_MONITOR_EVENT_ATTRIBUTE_CHANGED.  This event will also
occur if the parent directory is changed.  Since the parent directory
doesn't exist in the model, it creates a non-existent item.

Fixes: https://gitlab.gnome.org/GNOME/gtk/-/issues/4233
2 years agofilechooserwidget: Stop leaking file system models
Corey Berla [Mon, 15 May 2023 20:09:52 +0000 (13:09 -0700)]
filechooserwidget: Stop leaking file system models

2 years agodoc/actions: Fix end-of-file :
FeRD (Frank Dana) [Sun, 14 May 2023 21:01:38 +0000 (17:01 -0400)]
doc/actions: Fix end-of-file :

The actions document ended with a : where there used to be a period,
seemingly a bug in the conversion from XML. Replace that : with a
period, and remove another spurious : inserted during the conversion.

2 years agodocs/input: <kbd>␣</kbd> => <kbd>Space</kbd>
FeRD (Frank Dana) [Sun, 14 May 2023 20:23:41 +0000 (16:23 -0400)]
docs/input: <kbd>␣</kbd> => <kbd>Space</kbd>

- Switch to semantic newlines, where adding <kbd> caused wrapped text
  to grow wider than 80 characters on some lines.

2 years agodocs/input-handling: A few more <kbd> wrappings
FeRD (Frank Dana) [Sun, 14 May 2023 20:20:33 +0000 (16:20 -0400)]
docs/input-handling: A few more <kbd> wrappings

- Format a few missed keypresses/combos using <kbd>
- Switch to semantic newlines for those (paragraphs, bullet points)

2 years agodocs/input-handling: Don't leave reader hanging
FeRD (Frank Dana) [Sun, 14 May 2023 09:18:48 +0000 (09:18 +0000)]
docs/input-handling: Don't leave reader hanging

Strangely, the document's last sentence ended with a colon,
giving the impression there's missing text that should follow.
There is not.

Even more strange, it's _always_ ended with a colon,
ever since the file was converted from XML
(in commit 10cd539104af54f5d1d1e49618f5aa9d8ac42074).

BUT, the XML file it was converted _from_ ended that same sentence
with a period! I have no idea where the colon came from.

2 years agoAdd a README to examples/hello
Matthias Clasen [Sun, 14 May 2023 00:11:56 +0000 (20:11 -0400)]
Add a README to examples/hello

Just so nobody wonders why there's a meson.build
in this subdirectory.

2 years agoWidget: Fix doubled word need, missing possessives
Daniel Boles [Sat, 13 May 2023 17:17:17 +0000 (18:17 +0100)]
Widget: Fix doubled word need, missing possessives

2 years agopopover: Stop making assumptions about corners
Matthias Clasen [Sat, 13 May 2023 11:35:05 +0000 (07:35 -0400)]
popover: Stop making assumptions about corners

The popover tail drawing code was just assuming that
the corner values are numbers. Which they won't, anymore.

2 years agocss: Fix initial rotate transform value
Matthias Clasen [Fri, 12 May 2023 22:11:14 +0000 (18:11 -0400)]
css: Fix initial rotate transform value

2 years agocss: Make some corner values static
Matthias Clasen [Fri, 12 May 2023 18:48:45 +0000 (14:48 -0400)]
css: Make some corner values static

Provide static value for uniform corners
with lengths from 0 to 8px. This covers
the majority of corners in widget-factory.

2 years agocss: More static length values
Matthias Clasen [Fri, 12 May 2023 18:47:36 +0000 (14:47 -0400)]
css: More static length values

Make all length values from 0px to 8px available
as static values. This will help with cutting
down on the number of corner values (we have a
lot of 5px corners).

2 years agoRevert "csscornervalue: Accept other values if x == y"
Matthias Clasen [Fri, 12 May 2023 18:04:59 +0000 (14:04 -0400)]
Revert "csscornervalue: Accept other values if x == y"

This reverts commit 1f2f2777e1231468f613a2936989ded060f4e2a6.

It broke transitioning of corner values.

2 years agocss: Correct initial shadow filter values
Matthias Clasen [Fri, 12 May 2023 17:13:12 +0000 (13:13 -0400)]
css: Correct initial shadow filter values

This was using numbers instead of lengths,
causing confusion in the transition code.

2 years agocss: Fix transition of font features
Matthias Clasen [Fri, 12 May 2023 13:13:00 +0000 (09:13 -0400)]
css: Fix transition of font features

If we store ints as values, we better use
g_hash_table_lookup_extended, or zeros will
show up as missing values.

2 years agomediacontrols: Set valign=center on volume button
Maximiliano Sandoval R [Fri, 12 May 2023 09:35:14 +0000 (11:35 +0200)]
mediacontrols: Set valign=center on volume button

To match the play button.

2 years agoOverlay: Add minimal doc blurb for property :child
Daniel Boles [Fri, 12 May 2023 09:30:37 +0000 (10:30 +0100)]
Overlay: Add minimal doc blurb for property :child

2 years agourilauncher: Validate the uri
Matthias Clasen [Thu, 11 May 2023 22:33:23 +0000 (18:33 -0400)]
urilauncher: Validate the uri

We don't want to send nonsense to the portal.

Fixes: #5829
2 years agotests: Stop copying the tool tests
Matthias Clasen [Wed, 10 May 2023 01:21:39 +0000 (21:21 -0400)]
tests: Stop copying the tool tests

No point in doing that, and the meson feature
we are using here is deprecated.

2 years agoUpdate Lithuanian translation
Aurimas Černius [Sun, 4 Jun 2023 20:32:14 +0000 (20:32 +0000)]
Update Lithuanian translation

2 years agoMerge branch 'backport_gtkstack_crash' into 'gtk-4-10'
Matthias Clasen [Tue, 30 May 2023 10:24:10 +0000 (10:24 +0000)]
Merge branch 'backport_gtkstack_crash' into 'gtk-4-10'

Backport the fix from #6031

See merge request GNOME/gtk!6036

2 years agoGtkStack: Fix a potential crash in gtk_stack_get_first_accessible_child
Lukáš Tyrychtr [Mon, 29 May 2023 13:14:51 +0000 (15:14 +0200)]
GtkStack: Fix a potential crash in gtk_stack_get_first_accessible_child

This one can occur when the stack has no pages.

2 years agoMerge branch 'cherry-pick-099955b0' into 'gtk-4-10'
Matthias Clasen [Mon, 29 May 2023 00:14:36 +0000 (00:14 +0000)]
Merge branch 'cherry-pick-099955b0' into 'gtk-4-10'

cherry-picking "gridview: Add border-spacing where it was missed"

See merge request GNOME/gtk!6029

2 years agogridview: Add border-spacing where it was missed
Benjamin Otte [Tue, 16 May 2023 16:08:21 +0000 (18:08 +0200)]
gridview: Add border-spacing where it was missed

We were computing column widths without taking border-spacing into
account, making them slightly too big.

(cherry picked from commit 099955b0c06dbddc9469bd3c8e63673a3a82883f)