Commit Graph

53448 Commits

Author SHA1 Message Date
866adad06b Merge branch 'dnd-fixes' into 'gtk-3-24'
gtkdnd: Fix critical warnings and/or crashes when using GtkSocket/GtkPlug

See merge request GNOME/gtk!6660
2025-03-05 23:29:37 +00:00
34c12e4885 gtkdnd: Keep a reference on destination drag context
If we don't keep a reference on it, it is released somewhere before
gtk_drag_abort_timeout is called. This can cause a crash e.g. when the
dnd takes place in the GtkSocket/GtkPlug framework.

Fixes: #7128
2025-03-05 17:19:12 +01:00
2353a7a176 gtkdnd: Add missing sanity check
Can be NULL when the dnd takes place in the GtkSocket/GtkPlug framework.
2025-03-05 16:56:59 +01:00
51d9cfd6a6 Merge branch 'work/zzag/backport-cursor-shape-v1' into 'gtk-3-24'
wayland: Backport GNOME/gtk!8247

See merge request GNOME/gtk!8257
2025-03-05 14:08:15 +00:00
7e4de90952 Merge branch '202503041751-fixCario' into 'gtk-3-24'
fix: [draw] The application interface is unresponsive to clicks.

See merge request GNOME/gtk!8265
2025-03-05 00:13:14 +00:00
90390d6493 fix: [draw] The application interface is unresponsive to clicks.
problem:
After switching screens using a KVM switch, there is a probability
that the application interface will become unresponsive to clicks.

analysis:
The valid size range supported by the Cairo surface is [0,32767].
If the width and height exceed this range, the surface's status is set
to CAIRO_STATUS_INVALID_SIZE, indicating an invalid size exception.
In this exception state, Cairo does not have a clipping region.

When determining whether the window needs to be drawn,
the function gdk_cairo_get_clip_rectangle() is used to check
if the cairo_t has a clipping region. If there is none, the window
and its child windows will not be drawn (i.e., the draw signal will not be emitted).

If an error occurs in the X server and a value exceeding Cairo's
valid size is provided in the ConfigureNotify, it will result in
the window and its child windows not being drawn.
Therefore, we will add range checks here to avoid this special situation.
2025-03-04 19:32:31 +08:00
d6cb3b4a2a wayland: Fix none cursor check
We should skip going through the look up table if the cursor name is
"none", i.e. when g_str_equal() returns true or 1.

(cherry picked from commit 7ee2e50dc4f0898f7d56d67017c36414618f2e82)
2025-03-03 01:51:31 +02:00
580846fcdc wayland: Go back to the old none cursor
Upstream found this enum value objectionable,
despite being a perfectly good CSS cursor.

(cherry picked from commit eda5bd5242a9b04ed5c1e9f43592c7fc9d8dca4a)
2025-03-03 01:51:31 +02:00
b281c8035f wayland: Support the cursor-shape protocol
If present, use the cursor-shape protocol instead of manually
updating a pointer surface. This commit supports both v1 of the
protocol and the (still unmerged) v2 additions to the enumeration.

This was tested with both kwin and mutter.

(cherry picked from commit a63d6d1dc7a8ebdf61c682196f89917846cbe8ac)
2025-03-03 01:51:31 +02:00
cc14115d09 wayland: Support the all-resize cursor
Add all-resize to the list of names that we want to guarantee.
We use move as the fallback for it. The idea is that all-resize
will be visually compatible with resize cursors, and move will
be visually compatible with dnd cursors. And it is nice to
have two distinct names, so the metaphors can be changed without
clashing.

(cherry picked from commit 79ba34f1aa82de7d06c19109582f7df5f144a6c1)
2025-03-03 01:51:31 +02:00
f44e7b4f67 x11: Support the all-resize cursor
This is an alternative name for the move cursor.

(cherry picked from commit 1eaa4eb4051c42242f1eadd2d5e45b45a94d2e8d)
2025-03-03 01:51:31 +02:00
1cfd1fcd04 gdk: Touch up cursor name docs
Make the table provide usage hints, and line things up more
nicely.

(cherry picked from commit a948157a6c4e56b8ce7e10e702987f03cd1d13c3)
2025-03-03 01:51:28 +02:00
7bf902178f Merge branch 'ebassi/builder-its' into 'gtk-3-24'
Add more translatable attributes in the ITS file

See merge request GNOME/gtk!8255
2025-03-02 14:51:30 +00:00
e8dbe4049d Add more translatable attributes in the ITS file
GtkBuilder uses GMarkup, which defines a boolean attribute as:

- yes/no
- true/false
- 1/0

The current ITS file used by xgettext to extract translatable strings
from GtkBuilder UI files only covers the first value.

See: 9e83eb65017cb38b809c733535195507bd442bd8

See: #4596
2025-03-02 14:18:16 +00:00
d095bdafe0 Merge branch 'no-xpm-gtk3' into 'gtk-3-24'
testsuite: Stop relying on xpms

See merge request GNOME/gtk!8249
2025-02-28 21:24:06 +00:00
fd803f19de testsuite: Stop relying on xpms
gdk-pixbuf isn't loading those anymore, by default.
2025-02-28 14:42:06 -05:00
467e8bd8ab Merge branch 'fork' into 'gtk-3-24'
gdk/wayland: Avoid grab crossing on idle tablets

See merge request GNOME/gtk!8240
2025-02-26 08:13:07 +00:00
4e005ec603 gdk/wayland: Avoid grab crossing on idle tablets
Tablets require a tool in proximity to have an active surface
to send pointer events to. Avoid the grab-induced crossing events
on tablets that don't have a tool in proximity at the time of
creating the grab.

Fixes #1188, Fixes #3116

(cherry picked from commit d8919311b18bb0b89121c88405f757d6cee2e7cb)
2025-02-25 23:15:44 -08:00
8365cdfe32 Fixes to Catalan translation 2025-02-23 20:50:10 +01:00
b5f3117801 Merge branch 'gtk3_a11y_small_fix' into 'gtk-3-24'
GtkBooleanCellAccessible: fix AtkAction iface methods

See merge request GNOME/gtk!7840
2025-02-21 17:02:30 +00:00
7eeafe292e Merge branch 'cm/fix-statusicon-leak' into 'gtk-3-24'
statusicon: Fix leak in gtk_status_icon_color_changed

See merge request GNOME/gtk!7841
2025-02-21 17:01:52 +00:00
ff29793fb6 Merge branch 'cm/fix-context-leak' into 'gtk-3-24'
updateiconcache: Fix GOptionContext leak in 3.24

See merge request GNOME/gtk!7917
2025-02-21 16:57:15 +00:00
6f80370a48 Merge branch 'cm/fix-updateiconcache-path-leak' into 'gtk-3-24'
updateiconcache: Fix path leak in scan_directory

See merge request GNOME/gtk!7915
2025-02-21 16:56:51 +00:00
3ece09d3e0 Merge branch 'fix-im-crash' into 'gtk-3-24'
Fix a crash in im contexts

See merge request GNOME/gtk!8199
2025-02-13 05:34:45 +00:00
32381771b1 im: Fix signal handler signature
This was causing crashes, probably since 2019 :(

Fixes: #7306
Fixes: #7331
2025-02-12 12:34:36 +01:00
a1102b2277 Update Thai translation 2025-02-08 11:47:44 +00:00
272570021c Merge branch 'gtk-3-24-invert-tilt-macos' into 'gtk-3-24'
macos: Fix inverted pen Y tilt on macOS

See merge request GNOME/gtk!8165
2025-01-31 07:47:48 +00:00
Aki
40072ff1ab macos: Fix inverted pen Y tilt on macOS
- Negate tilt.y in Cocoa pen handling to correct inverted Y tilt axis
- see 0f128fd7c5/src/plugins/platforms/cocoa/qnsview_tablet.mm (L63)
- see https://source.chromium.org/chromium/chromium/src/+/main:components/input/web_input_event_builders_mac.mm;drc=0af5ffa1e4cc4cc4f818725f8fee93ec57855e4b;l=421
2025-01-31 10:59:06 +08:00
0ec10c6169 Update Bulgarian translation 2025-01-30 18:18:00 +00:00
aa22e97d4a Update Thai translation 2025-01-28 09:02:31 +00:00
e9a76ef1f3 Update Thai translation 2025-01-27 10:46:19 +00:00
1bf8eb7999 Update Thai translation 2025-01-27 09:34:47 +00:00
4c60939599 Try again 2025-01-25 08:25:12 -05:00
9312dceede Try again to get a tarball released 2025-01-25 07:55:35 -05:00
a4078c6581 3.24.46 2025-01-25 07:43:21 -05:00
367a323c12 3.24.45 2025-01-24 15:20:23 -05:00
db6d86fbdc 3.24.44 2025-01-24 15:13:57 -05:00
8a3b0d7208 Add ci release machinery 2025-01-24 15:13:57 -05:00
7bb02b5c93 NEWS: Updates 2025-01-24 14:07:12 -05:00
936a6e7b38 Merge branch 'entry-direction-3-24' into 'gtk-3-24'
Make numeric spin buttons LTR

See merge request GNOME/gtk!8149
2025-01-24 18:38:25 +00:00
c4c3e01849 text: Add a way to override direction
Add a Ctrl+Shift+T shortcut to toggle the widgets direction,
to give the user control in the rare cases where a different
direction is appropriate.

This is a backport of 0b33abe44b4f42cba (without the context
menu item, since that needs new strings).
2025-01-24 12:17:31 -05:00
5c6f33d1f3 entry: Drop keyboard direction leftovers
Now that we are no longer relying on keyboard direction to
determine the direction of empty entries, there's no need
for a direction-changed signal handler.
2025-01-24 11:39:32 -05:00
fd6eb60478 entry: Remove text direction complications
Instead of trying to derive a direction from content and
keyboard layout, just let the widgets direction prevail.
This avoids irritating jumping text on focus in, in situations
where the directions are mixed.

See discussion in !7971

This is a backport of d0bfed5195be99c21e.
2025-01-24 11:05:07 -05:00
755c314465 Make numeric spin buttons LTR
This is the expected way to enter Latin digits.

See discussion in !7971.

This is a backport of e7531b738e2ef2a.
2025-01-24 11:04:44 -05:00
8804279a1c Merge branch 'wip/lukaso/backport-8131' into 'gtk-3-24'
Stop replacing : (colon) with U+2236 (ratio)

See merge request GNOME/gtk!8135
2025-01-21 00:05:00 +00:00
15a6061890 Stop replacing : (colon) with U+2236 (ratio)
The new default GNOME font already does the right thing for
colon in numeric context, and this replacement can show up
as a missing glyph on other platforms. So, just rely on
smart fonts, going forward.

Fixes: #7279
(cherry picked from commit e4d919a2df73f0fe5ccb1657fed97ce5673aa542)
2025-01-20 23:27:17 +00:00
25b294e91a Merge branch 'wip/Jehan/gimp-issue-10515-crash-wayland' into 'gtk-3-24'
gdk: fix crash on Wayland with already destroyed surface.

See merge request GNOME/gtk!8016
2025-01-17 11:42:07 +00:00
67438caa3d gdk: fix crash on Wayland with already destroyed surface.
See crash reliably reproduced on GIMP when a popup is destroyed on a
drag-begin callback and Wayland data listener callbacks calls the
enter() callback with a NULL surface.

Cf. https://gitlab.gnome.org/GNOME/gimp/-/issues/10515
2025-01-17 11:16:38 +00:00
802284646f Merge branch 'cm/fix-path-leak' into 'gtk-3-24'
updateiconcache: Fix path leak

See merge request GNOME/gtk!7869
2025-01-12 15:54:04 +00:00
0b874d13a7 updateiconcache: Fix path leak 2025-01-12 00:08:42 -05:00