Commit Graph

73085 Commits

Author SHA1 Message Date
Matthias Clasen
5507b3f8c1 wayland: scale cursors to the right size
When loading cursors at scale, we expect the
cursor images to have a size of scale * size.
If we don't find such images, load them at their
unscaled size and scale them up ourselves.

Without this, cursors will appear in unexpected
sizes depending on scales and themes.

Related: #4746
2022-05-27 12:26:45 -04:00
Matthias Clasen
f9a3f13702 Merge branch 'main' into 'main'
GtkIMContextSimple: array bounds was not correctly checked

Closes #4771

See merge request GNOME/gtk!4748
2022-05-27 14:24:54 +00:00
Matthias Clasen
b4c72ac508 Merge branch 'use-flathub-link' into 'main'
Make the formatted link more neutral

See merge request GNOME/gtk!4765
2022-05-27 14:10:47 +00:00
Matthias Clasen
bcad305136 Make the formatted link more neutral
There have been complaints about company names in
our demos. Lets use something else.

Part of: #4716
2022-05-27 08:43:06 -04:00
Matthias Clasen
00d45c6743 Merge branch 'update-initial-layout' into 'main'
vulkan: Set initial layout to undefined

See merge request GNOME/gtk!4706
2022-05-27 12:26:24 +00:00
Matthias Clasen
38b393ff5d Merge branch 'update-command-buffer-freeing' into 'main'
vulkan: Don't attempt to free 0 command buffers

See merge request GNOME/gtk!4705
2022-05-27 12:25:48 +00:00
Matthias Clasen
23f92ca1c2 Merge branch 'wayland-cursor-scale' into 'main'
wayland: Sanity check cursor image size

Closes #4746

See merge request GNOME/gtk!4761
2022-05-27 10:58:12 +00:00
Matthias Clasen
34a9bc4632 wayland: Make cursors have the right size
The Wayland protocol requires that width and height
of cursor surfaces is an integer multiple of the
surface scale. Make it so.

Fixes: #4746
2022-05-26 22:29:37 -04:00
Matthias Clasen
d603164ec2 wayland: Sanity check cursor image size
On Wayland it is a protocol violation to upload buffers with
dimensions that are not an integer multiple of the buffer scale.

Until recently, Mutter did not enforce this. When it started
doing so, some users started seeing crashes in GTK apps because the
cursor theme ended up with e.g. a 15x16 pixel image at scale of 2.

Add a small sanity check for this case.
2022-05-26 22:29:37 -04:00
Matthias Clasen
a033e838b2 Merge branch 'TTMaZa-LGPL-vs-GPL' into 'main'
GDK is LGPL-2.1-or-later not GPL-2.1-or-later, right?

See merge request GNOME/gtk!4755
2022-05-26 12:23:56 +00:00
Matthias Clasen
511a2f4d03 Merge branch 'wip/chergert/fix-sysprof-wrapper' into 'main'
build: fix sysprof default options

See merge request GNOME/gtk!4759
2022-05-26 11:43:56 +00:00
Matthias Clasen
c089912a52 Merge branch 'wip/otte/for-main' into 'main'
x11: Always update shadow size

Closes #4136

See merge request GNOME/gtk!4758
2022-05-26 10:03:39 +00:00
Christian Hergert
2694d81d63 build: fix sysprof default options
Sysprof just recently cleaned up it's meson_options.txt and this makes
the tracking of the master branch match the new values.
2022-05-25 22:52:34 -07:00
Benjamin Otte
213490099b x11: Always update shadow size
Not updating shadow size unconditionally would lead to shadow size not
being set on map, which would lead mutter to think that we are a Window
without extents and then become confused when we suddenly set some.

Make sure that doesn't happen by always having shadows set on map, just
like GTK3.

Fixes #4136
2022-05-26 04:38:29 +02:00
Emmanuele Bassi
166af48904 Merge branch 'fix-stack-page-at-spi-parent' into 'main'
a11y: Realize GtkStackPage parent context before trying to get a ref

Closes #4944

See merge request GNOME/gtk!4757
2022-05-25 14:29:41 +00:00
Sebastian Keller
6e3dbc42a8 a11y: Realize GtkStackPage parent context before trying to get a ref
If a context is not realized, calling gtk_at_spi_context_to_ref() will
return a null ref, because its path has not been initialized yet. This
was already done for all other cases in get_parent_context_ref(), but
was missing for the GtkStackPage case.

Fixes: https://gitlab.gnome.org/GNOME/gtk/-/issues/4944
2022-05-25 14:56:05 +02:00
Matthias Clasen
36fbbfc5c7 Merge branch 'pkgconfig' into 'main'
Meson: Simplify pkgconfig file generator

See merge request GNOME/gtk!4756
2022-05-24 16:46:18 +00:00
Luca Bacci
9bfc89e23d Merge branch 'remove-emulated-scroll-events' into 'main'
Drop pointer_emulated discrete scroll events

See merge request GNOME/gtk!4694
2022-05-24 15:26:24 +00:00
Xavier Claessens
802bf41999 Meson: Simplify pkgconfig file generator
Meson knows all private dependencies itself when passing the library as
first positional argument, no need to specify them manually. Also
simplify backend specific files by simply requiring gtk4, just like
unix-print already did.

This should fix generated gtk4-uninstalled.pc, see Meson bug report:
https://github.com/mesonbuild/meson/issues/10415
2022-05-24 10:30:58 -04:00
Manuel Zabelt
93636d4c5a Update docs/reference/gdk/gdk4-x11.toml.in 2022-05-24 13:37:43 +00:00
Manuel Zabelt
88f761f2c8 GDK is LGPL-2.1-or-later not GPL-2.1-or-later, right? 2022-05-24 13:36:07 +00:00
Luca Bacci
7752467847 Drop pointer_emulated discrete scroll events
GTK4 has had smooth scroll events since the beginning, so we
prefer not to emit emulated discrete scroll events at all
2022-05-24 12:30:49 +00:00
Luca Bacci
8514457d0f Wayland: Only send smooth scroll events for tablet tools 2022-05-24 12:30:49 +00:00
Luca Bacci
c0d79aa1ef Merge branch 'scroll-surface-unit-dpi-scale' into 'main'
DirectManipulation: Account for DPI scale

See merge request GNOME/gtk!4749
2022-05-24 12:19:39 +00:00
Luca Bacci
8a6d6fe6b1 DirectManipulation: Account for DPI scale 2022-05-24 11:37:06 +02:00
Emmanuele Bassi
7750a2c423 a11y: Implement atspi.Text.GetCharacterExtents for GtkTextView
Retrieve the location of a given offset in window-relative coordinate
space.
2022-05-23 15:54:13 +01:00
Matthias Clasen
393893b8db Merge branch 'blink-assertion' into 'main'
Remove an assertion that we hit

See merge request GNOME/gtk!4753
2022-05-23 14:08:43 +00:00
Matthias Clasen
4f16242807 Merge branch 'otte-main-patch-30652' into 'main'
gesturedrag: Fix docs

See merge request GNOME/gtk!4752
2022-05-23 12:43:25 +00:00
Matthias Clasen
e82fb8e894 Merge branch 'ci-meson-bump' into 'main'
CI: bump meson version from 0.59 to 0.60.3

See merge request GNOME/gtk!4751
2022-05-23 12:33:30 +00:00
Matthias Clasen
b3e65bfdc1 Remove an assertion that we hit
It appears that we mess up accounting for blinking
cursors sometimes, and can hit blink_cb when there
is a nonempty selection.

Instead of asserting, warn and stop blinking.

Related: #4767
2022-05-23 08:28:00 -04:00
Aleksandr Melman
111daecd3b Update Russian translation 2022-05-23 12:25:59 +00:00
Benjamin Otte
72fe406c4d gesturedrag: Fix docs
Leftover from GTK3. Coordinates are widget relative everywhere now.
2022-05-22 12:45:28 +00:00
Christian Kirbach
0f01629ce3 Update German translation
(cherry picked from commit 7703aa5cd3)
2022-05-22 10:41:21 +00:00
Christoph Reiter
2f695388e9 CI: bump meson version from 0.59 to 0.60.3
We pull in glib main via a submodule in CI and glib has recently
bumped its meson requirement to >= 0.60:
https://gitlab.gnome.org/GNOME/glib/-/merge_requests/2641

Install 0.60.3 where needed to make things build again.
2022-05-22 11:46:54 +02:00
Víctor Marzo
3955633aa8 GtkIMContextSimple: array bounds was not correctly checked
Fixes #4771
2022-05-19 11:35:14 +02:00
Luca Bacci
f77f941401 Merge branch 'fix-memory-leak' into 'main'
GdkWin32: Plug memory leak

See merge request GNOME/gtk!4747
2022-05-19 09:05:50 +00:00
Luca Bacci
288dd406e0 GdkWin32: Plug memory leak 2022-05-19 08:49:05 +02:00
Benjamin Otte
8667b7a46c Merge branch 'wip/otte/for-main' into 'main'
nodeparser: Fix parsing of color-matrix node

See merge request GNOME/gtk!4745
2022-05-18 21:08:46 +00:00
Benjamin Otte
0410125f20 nodeparser: Fix parsing of color-matrix node
Negative offsets in the color matrix were inverted because it used the
rect parser.
2022-05-18 21:16:33 +02:00
Benjamin Otte
1ea0de61e1 Merge branch 'wip/otte/for-main' into 'main'
CI: Include reftest nodes in artifacts

See merge request GNOME/gtk!4743
2022-05-18 18:27:29 +00:00
Benjamin Otte
e8eb96ae0c CI: Include reftest nodes in artifacts 2022-05-18 19:54:34 +02:00
Hugo Carvalho
04f924c13e Update Portuguese translation 2022-05-18 14:54:31 +00:00
Matthias Clasen
1fbca7a76a Merge branch 'let_selectable_label_mnemonic_self_focus' into 'main'
Allow selectable labels contents to be selected by mnemonic

See merge request GNOME/gtk!4741
2022-05-18 13:55:33 +00:00
Caolán McNamara
3f49d335d1 Allow selectable labels contents to be selected by mnemonic
expecially by the mnemonic of another label that targets it.

https://gitlab.gnome.org/GNOME/gtk/-/issues/4927

see also https://bugs.documentfoundation.org/show_bug.cgi?id=137748
2022-05-18 12:40:40 +01:00
Jordi Mas
3882e14053 Update Catalan translation 2022-05-18 13:32:32 +02:00
Matthias Clasen
5f5fda911d Merge branch 'wip/chergert/fix-4934' into 'main'
checkbutton: fix critical when setting use-underline

Closes #4934

See merge request GNOME/gtk!4740
2022-05-18 01:34:47 +00:00
Christian Hergert
b9574e119b checkbutton: fix critical when setting use-underline
This needs to make sure that we've created the label before applying the
setting on a child widget.

Fixes #4934
2022-05-17 12:28:25 -07:00
Benjamin Otte
5f469a0d2d Merge branch 'wip/otte/for-main' into 'main'
testsuite: Add tests for label overdraw

See merge request GNOME/gtk!4737
2022-05-17 00:19:01 +00:00
Benjamin Otte
ffd3801b1d testsuite: Add tests for label overdraw
This brings back a subset of what quit-mnemonic.ui tested for, but
trying a lot harder to trigger the label overdrawing its allocation,
which will cause the text to be cut off when clipping is happening.

It should not be an issue at all with GTK4, but keeping that test around
is a good idea.
2022-05-17 00:14:19 +02:00
Matthias Clasen
fd21df7244 Merge branch 'wip/chergert/fix-4625' into 'main'
gsk/gl: use critical instead of assert in dispose

Closes #4625

See merge request GNOME/gtk!4736
2022-05-16 20:27:53 +00:00