Commit Graph

55038 Commits

Author SHA1 Message Date
0be9564ada releasing package gtk+3.0 version 3.24.38-3 2023-08-09 11:29:48 -04:00
da4ac7759a Build with libcloudproviders
This wasn't enabled years ago because it caused a test failure
with the autotools tests. But we've switched to meson now and
finally it looks like libcloudproviders has fixed enough issues
2023-08-09 11:28:30 -04:00
d1ead5b443 Update Turkish translation 2023-08-08 10:44:05 +00:00
2d7ff5b79c Update Turkish translation 2023-08-08 10:43:55 +00:00
8233d9254d Update Romanian translation 2023-08-05 15:49:32 +00:00
863b399899 Update Slovenian translation 2023-07-28 15:57:04 +00:00
6fd564d126 Merge branch 'michaelweghorn/gtk-3-24_a11y_fix_cell_position' into 'gtk-3-24'
a11y atspi: Fix reporting table cell pos at index (0,0)

See merge request GNOME/gtk!6173
2023-07-28 07:16:05 +00:00
817c6a7a3c releasing package gtk+3.0 version 3.24.38-2 2023-07-23 16:14:38 -04:00
0f717ca423 Merge branch 'fix-issue-5775' into 'gtk-3-24'
GtkApplicationImplDBus: Cancel DBus method calls on shutdown

See merge request GNOME/gtk!6180
2023-07-22 23:47:36 +00:00
34fc4d0a17 Merge branch 'set-transient-for-offscreen-windows' into 'gtk-3-24'
GdkWindow: Check for offscreen windows in set_transient_for ()

See merge request GNOME/gtk!6184
2023-07-22 23:43:37 +00:00
d23e5e8b11 Update Greek translation 2023-07-21 22:37:54 +00:00
7ca33ff994 GtkApplicationImplDBus: Cancel DBus method calls on shutdown
We do that for method calls where a non-NULL GAsyncReadyCallback
is passed.

Fixes #5775
2023-07-21 14:04:25 +02:00
c0a09448da Update Spanish translation 2023-07-19 12:38:16 +00:00
e5732e7569 Update fa.po 2023-07-17 16:27:49 +00:00
272b6b4feb GtkMenu: Take offscreen windows in account for positioning 2023-07-13 16:31:58 +02:00
3e3266dce4 GdkWindow: Check for offscreen windows in set_transient_for ()
Fixes https://gitlab.gnome.org/GNOME/gimp/-/issues/6711
2023-07-13 16:24:42 +02:00
8951777518 a11y atspi: Fix reporting table cell pos at index (0,0)
Table (cell) row and column indices both start at 0, so
an index of 0 is valid.

Adapt the check accordingly and check for non-negative
indices instead of positive ones.

(`gtk_cell_accessible_parent_get_cell_position` sets -1
in the fallback case, so that's still handled as it used
to be.)

This fixes reporting the position of the table cell at
index (0,0) via AT-SPI.

Fixes: #5161
2023-07-07 15:55:36 +02:00
fc32ff89c5 Merge branch 'wip/carlosg/switch-stylus-buttons-3-24' into 'gtk-3-24'
[3.24] gdk/wayland: Switch behavior of BTN_STYLUS/STYLUS2 as middle/right click

See merge request GNOME/gtk!6169
2023-07-06 11:11:32 +00:00
e205bdaa89 gdk/wayland: Switch behavior of BTN_STYLUS/STYLUS2 as middle/right click
This mapping of stylus evdev input event codes into GDK button numbers
makes gdk/wayland inconsistent with gdk/x11, so depending on the backend
the same button middle-click pastes or right-click pops up menus.

Make the wayland backend consistent with X11, so that a GNOME wayland
session gets these buttons consistently mapped across all kinds of
clients.

(cherry-picked from commit e28ff79bec53ecd56885390ba4a66019cde598c6)
2023-07-06 12:39:09 +02:00
e1f3ce5cce Merge Antoine Martin's MR 5648 into gtk-3-24. 2023-07-03 15:23:01 -07:00
1e1e1a1b8b make gdkquartz-cocoa-access.h usable again
There is no need to include gdkquartz.h there,
which was making it impossible to include this header file
without also adding gdk/ as an include directory when compiling.
This patch moves the include to the only location where it is actually needed.
2023-07-03 15:19:39 -07:00
43a99b1c8e Merge branch 'wip/otte/for-gtk-3-24' into 'gtk-3-24'
Check for GLsync before using it

See merge request GNOME/gtk!6162
2023-07-01 21:32:04 +00:00
cf7decae1a gdkgl: Check for GLsync before using it
Copy what we do in GTK4: Check for GL >= 3.2 or GLES >= 3.0 or the
GL_ARB_sync extension.
Then store that info for a (private) gdk_gl_context_has_sync()
function.
And then check that function before using GLsync objects as introduced
by commit 9811485990.

Fixes #5749
2023-07-01 22:58:28 +02:00
f94f94af51 Update British English translation 2023-06-30 18:40:07 +00:00
ce20f3c6e4 Merge branch 'fix-issue-5877' into 'gtk-3-24'
GdkWin32: Use scaled coordinates for move_resize_drag()

See merge request GNOME/gtk!6132
2023-06-30 04:06:58 +00:00
6f12c9c5de GdkWin32: Fix warning due to changed device count 2023-06-27 15:53:14 +02:00
04b0cc70c1 WinPointer: Actually destroy GdkDeviceTools 2023-06-27 15:48:35 +02:00
0fa2ff5511 Update Catalan translation 2023-06-22 21:02:10 +02:00
6d0f34103d GdkWin32: Use scaled coordinates for move_resize_drag()
Fixes https://gitlab.gnome.org/GNOME/gtk/-/issues/5877
2023-06-21 17:00:00 +02:00
7141305972 Merge branch 'wip/carlosg/pad-detection-3-24' into 'gtk-3-24'
Pad detection fixes (3.24)

See merge request GNOME/gtk!6095
2023-06-14 00:10:23 +00:00
a9d7198d63 gdk/wayland: Return pad devices querying for all devices
These devices unfortunately didn't ever get a capability flag in
3.24 (fixed in GTK4). We are very far off into maintenance grounds that
it is not ideal to add new flag values, but we could however return
these devices if GDK_SEAT_CAPABILITY_ALL is being asked.

Do that, so it is possible to deal with pad devices, even if it's
not possible to query them specifically.
2023-06-14 00:33:12 +02:00
81029b824b gdk/wayland: Ensure device-added/removed emission in GdkSeat
We've used to emit these in the GdkDeviceManager, but missed to do
this signal emission at the GdkSeat object level. In order to avoid
the double emission, trigger one from the other.
2023-06-14 00:33:12 +02:00
6070f10922 gdk/wayland: Create pad devices on enter
We were creating the pad device on wp_tablet_pad.done, but
at that time we do not know what tablet it is associated with,
thus we cannot get appropriate vid/pid/name properties for it.

To get that, we need to wait for the pad to enter a surface,
at that time we do know what tablet it is associated with, so
we can get better information about the device.

There are pads that may plausibly "change" tablet between
one .enter event and the next (e.g. Wacom Express Key Remote),
but this situation is highly unlikely. The pad devices created
are thus persistent until that situation happens.
2023-06-14 00:33:12 +02:00
4d9ca4e0b6 Update Slovak translation 2023-06-13 12:10:56 +00:00
eb379bfdd7 Update Czech translation 2023-06-12 13:15:19 +00:00
a6d40b610b Popover: Clarify/guard out rect of get_pointing_to
Clarify that we zero out the widget coords and only keep its dimensions.

If we have no widget to fall-back to, memset to 0 the output @rect since
we return FALSE whether or not we have widget, so protect users from not
knowing if there was a widget and possibly accessing uninitialised ints.

Fixes https://gitlab.gnome.org/GNOME/gtk/-/issues/893#note_1766079
2023-06-11 11:37:45 +01:00
ad07e9043f popover: Remove useless if case
rect is not nullable, so stop checking if it is NULL and instead add a
g_return_val_if_fail guard.
2023-06-11 11:26:33 +01:00
c9f0b0d29b ScrolledWindow: Frame on viewport is not optional,
and seems always to default to true, so don't mention it being optional.
2023-06-11 11:22:45 +01:00
6803508442 Merge branch 'gtk-3-24' into 'gtk-3-24'
gtkmountoperation: avoid SEGV after bad password input

See merge request GNOME/gtk!6049
2023-06-02 14:57:10 +00:00
1d95b8ab26 gtkmountoperation: avoid SEGV after bad password input
I observed the following nautilus crash below after trying to access an SMB
share and mistyping my password (it also happens if mounting the SMB share
fails for other reasons after entering a password). The crash happens when
the password entry window pops up the second time, in this code path, at
the 7th element of priv->user_widgets:

458	pw_dialog_anonymous_toggled (GtkWidget         *widget,
459	                             GtkMountOperation *operation)
460	{
...
472	  for (l = priv->user_widgets; l != NULL; l = l->next)
473	    {
474	      gtk_widget_set_sensitive (GTK_WIDGET (l->data), !priv->anonymous);
475	    }

The broken element had l->data = 0xaaaaaaaaaaaa, which means the pointer had
been freed.

The broken list entries were at the of the list because when
gtk_mount_operation_ask_password_do_gtk() constucts the pop-up the 2nd time,
it prepends new widgets:

gtk_mount_operation_ask_password_do_gtk()
   table_add_entry
       operation->priv->user_widgets = g_list_prepend (operation->priv->user_widgets, entry);

The problem is that in pw_dialog_got_response(), the widget is destroyed,
which also destroys all child widgets, but the priv->user_widgets list is
neither freed nor set to NULL.

Fix it.
2023-06-02 16:30:28 +02:00
0f990e8157 Merge branch 'gtk-3-24+trap-bad-rr-errors' into 'gtk-3-24'
[GTK3] x11: Trap XRandr errors when getting outputs during init and update

See merge request GNOME/gtk!6047
2023-06-02 11:32:04 +00:00
b938e4e6ac 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.
2023-06-02 00:31:44 +02:00
06bf07bed3 Merge branch 'fix-slow-perf-x11-gl' into 'gtk-3-24'
Remove slow and unnecessary X11 code-path when using OpenGL functionality

See merge request GNOME/gtk!6042
2023-06-01 10:55:25 +00:00
7237f5d0eb This commit fixes a performance issue on X11 systems in regards to drawing on an OpenGL surface in GTK/GDK.
This commit fixes a performance issue on X11 systems making use of the gdk_cairo_draw_from_gl() function in regards
to drawing on an OpenGL surface in GTK/GDK. Specifically, this fix removes the slow X11 codepath that was used when
executing the gdk_cairo_draw_from_gl() function because it was completely uneeded. I tested the before and after on
Flutter and GTK apps making use of the OpenGL rendering and can confirm that there is no behaviour and visual
difference. This change is also specific to drawings that make use of textures. The render buffer code path has
been left completely unmodified.

Closes #4704
2023-05-31 23:05:19 +01:00
94001d49bf Merge branch 'gtk-3-24' into 'gtk-3-24'
Fix a typo

See merge request GNOME/gtk!6040
2023-05-31 14:49:39 +00:00
1659cefde7 Fix a typo
1. According to the UTF-8 spec, ASCII character's charcode is from
   0 to 127 inclusively.

2. Any charcode which is greater than or equal to 128 will be
   a multi-byte character.
2023-05-31 22:13:53 +08:00
379512c092 Update Turkish translation 2023-05-29 12:18:38 +00:00
8faa85f576 Merge branch 'gtk-3-24' into 'gtk-3-24'
Make sure that the charcode is signless

See merge request GNOME/gtk!6030
2023-05-29 11:11:20 +00:00
6dc75b46cc Make sure that the charcode is signless
1. The data with type of char is signed by default.

2. The byte value of UTF-8 is signless by default.

3. So, if a UTF-8 charcode is stored in a char array, we should cast the
type of its value from char to unsigned char.
2023-05-29 09:52:38 +08:00
fb52405d76 releasing package gtk+3.0 version 3.24.38-1 2023-05-22 13:36:07 -04:00