Commit Graph

55076 Commits

Author SHA1 Message Date
1f0f7820cb [gtk3/wayland] Only request v2 of xdg_wm_base.
This fixes potential runtime crashes in some somewhat unlikely
configurations, like a modern compositor but gtk built against an old
wayland protocols version.

We only need v2 for the tiling fixes, so request that.
2023-12-18 12:13:22 +01:00
6ff6bf7af2 Merge branch 'wormnest/fix-ci-msys2-failure' into 'gtk-3-24'
test-msys2-meson: fix pipeline failure on GTK3

See merge request GNOME/gtk!6673
2023-12-18 09:59:45 +00:00
4882268a20 test-msys2-meson: fix pipeline failure on GTK3
On GTK3 the msys2-mingw64-meson job is failing due to error:
mingw-w64-x86_64-pkg-config and mingw-w64-x86_64-pkgconf are in
 conflict. Remove mingw-w64-x86_64-pkgconf? [Y/n]

To fix this we change required package pkg-config to pkgconf, which
is what the GTK4 branch also uses.
2023-12-16 11:18:56 -05:00
c70612ba1d Merge branch 'offscreen-window-fixes-for-gimp-3' into 'gtk-3-24'
Offscreen window fixes for GIMP3

See merge request GNOME/gtk!6665
2023-12-14 11:56:49 +00:00
c5d24e3d94 wayland: Fix wl_buffer size for custom cursors
cairo_image_surface_get_width() and cairo_image_surface_get_height()
return the image size that's in the device pixels.

On the other hand, _gdk_wayland_display_create_shm_surface() takes a
surface size in the logical pixels.

Given that _gdk_wayland_display_get_cursor_for_surface() provides the
desired surface size in device pixels, a much bigger shm surface is
created, which then breaks damage tracking code in
gdk_wayland_device_update_window_cursor().

Fixes #6242
2023-12-14 11:13:14 +02:00
e1d664da63 GtkMenu: Fix positioning when attached to offscreen windows
In order to do that, we have to make gdk_window_is_impl_offscreen ()
accessible from GTK via GdkPrivateVTable.
2023-12-13 12:34:41 +01:00
6982415c9f gdk_display_get_monitor_at_window: Check for offscreen windows
And get the embedder before continuing, as the backend-specific
get_monitor_at_window () only knows about its own windows.

In order to check for offscreen windows, we introduce a new function
gdk_window_is_impl_offscreen (). Unlike gdk_window_is_offscreen (),
it doesn't rely on the window_type field, but actually checks whether
GDK_WINDOW_IMPL_GET_CLASS (window->impl) is GdkOffscreenWindow.

See previous commit for informations.
2023-12-13 12:27:32 +01:00
0c72ce94ea GdkWindow: check for same impl class in set_transient_for ()
Checking for offscreen windows with gdk_window_is_offscreen ()
is not enough in this case. What we want here is that the impl
classes match, as backends are meant to know only about their
windows. Instead gdk_window_is_offscreen () checks whether the
GdkWindow.window_type field is GDK_WINDOW_OFFSCREEN.

In the case of child windows in offscreen windows, the window
type is GDK_WINDOW_CHILD, even though their impl is still
GdkOffscreenWindow.

So actually check whether GDK_WINDOW_IMPL_GET_CLASS (window)
matches GDK_WINDOW_IMPL_GET_CLASS (parent).

We may also consider getting the toplevels from child windows,
as transient-for relationships are really about toplevels, but
child windows doesn't seem to cause problems in practice.
2023-12-13 12:23:43 +01:00
9b9560c76a Merge branch 'gtk-3-24-cursor-fallback' into 'gtk-3-24'
Fall back to the 'default' cursor

See merge request GNOME/gtk!6649
2023-12-09 04:32:17 +00:00
32d87ac907 [gtk3] Cherry-pick gtkfilechoosernativeportal fixes from gtk4
This was basically done copying the gtk4 version and keeping the changes
that weren't gtk4 specific.

Fixes #6224 (the chooser doesn't close but we don't crash or such)
2023-12-08 13:53:34 +01:00
44f7cb1c55 wayland: Avoid more legacy cursor names
Set the cursor from a standard name instead of relying on the X11
cursor font derived enum values.
2023-12-08 14:09:48 +04:00
262be35f43 Fall back to the 'default' cursor
The Adwaita cursor theme is moving to shipping just standard cursor
names, so we should fall back to 'default' instead of 'left_ptr' if
a named cursor can't be found.

Fixes: #6259
2023-12-08 12:56:29 +04:00
cde309d9fa Update Hebrew translation 2023-12-02 22:12:02 +00:00
a2e0359578 Update Hebrew translation 2023-12-01 21:04:44 +00:00
f7e9fd076d macos: Implement delegate method to silence secure-restore message
Fix process injection vulnerability on macOS.

See https://sector7.computest.nl/post/2022-08-process-injection-breaking-all-macos-security-layers-with-a-single-vulnerability/.
2023-11-30 17:47:32 +01:00
459a13e837 Merge branch 'gtk3-wayland-tiled' into 'gtk-3-24'
[gtk3] Support tiled windows from xdg-shell.

See merge request GNOME/gtk!6629
2023-11-29 12:50:31 +00:00
3020890e86 Merge branch 'cursor-size-tweak' into 'gtk-3-24'
[gtk3] Don't fall back directly to 1 for mismatched cursor sizes.

See merge request GNOME/gtk!5481
2023-11-29 12:44:17 +00:00
b54b154dc0 [gtk3] Support tiled windows from xdg-shell.
This makes wayland windows tileable in non-mutter compositors.
2023-11-29 05:03:41 +01:00
a074f1fe72 Fix a minor issue in the file portal test
get_data can be called multiple times, so we must not clear
the data the first time we get called.
2023-11-27 19:12:53 -05:00
0bffedf5b8 Merge branch 'wayland-cursor-fix-3-24' into 'gtk-3-24'
wayland: Be more careful when loading cursors

See merge request GNOME/gtk!6623
2023-11-27 21:28:37 +00:00
2b5a6963e4 wayland: Be more careful when loading cursors
Make sure we don't access the cursor_images array out of bounds.

Related: #6234
2023-11-27 14:53:51 -05:00
7e1e11e280 Merge branch 'dialog-close-fix' into 'gtk-3-24'
[gtk3] GtkFileChooserNative: Fix portal close.

See merge request GNOME/gtk!6611
2023-11-25 17:18:27 +00:00
307dde7f6c [gtk3] GtkFileChooserNative: Fix portal close.
This makes closing a portal file chooser work.

Fixes the GTK3 bits of #6225.
2023-11-25 03:32:47 +01:00
65b0c289b0 Fix the build 2023-11-19 21:10:05 -05:00
a0277a46d3 Merge branch 'unavailable-gl-functions' into 'gtk-3-24'
gl: Limit glGetTexLevelParameteriv use to supported platforms

See merge request GNOME/gtk!6554
2023-11-19 17:18:06 +00:00
673bd65090 gl: Limit glGetTexLevelParameteriv use to supported platforms 2023-11-19 17:18:05 +00:00
88217f2e44 Add missing parentheses
This problem was introduced in f5bf4aeaa6.
2023-11-19 12:17:37 -05:00
ad3972e6b1 Update Polish translation 2023-11-19 15:37:56 +01:00
626892086c Update Polish translation 2023-11-18 17:10:05 +01:00
ccf7f217f0 Update Icelandic translation 2023-11-17 10:38:44 +00:00
d00982001d Update Icelandic translation 2023-11-17 10:37:12 +00:00
dff7f07eb6 Update Belarusian translation 2023-11-14 23:07:14 +00:00
694c68e5a6 Update Belarusian translation 2023-11-14 22:27:50 +00:00
497e48a1f5 Release to unstable 2023-11-08 16:35:45 +00:00
dd7c8e9b57 d/control: Explicitly build-depend on GIR XML from Gdk-Pixbuf and Pango
The versions of these packages in testing provide these names.
2023-11-08 16:09:34 +00:00
651fdeeacf d/control: Add ${gir:Depends}, ${gir:Provides} substvars
With a newer version of gobject-introspection (currently in experimental),
these will supersede some of the current hard-coded Depends and Provides.
2023-11-08 16:05:49 +00:00
e3c21558f8 libgtk-3-dev: Add Provides for included GIR XML files
Representing these by systematic names gir1.2-*-dev, and perhaps
eventually separating them into their own binary package, will help to
enable cross-compilation with GObject-Introspection removed by a build
profile.

Helps: #1030223
2023-11-08 16:03:23 +00:00
71841e1f1c d/rules: Drop some unused sed substitutions 2023-11-08 16:01:10 +00:00
1d61f76241 Stop generating d/control from a template 2023-11-08 16:00:58 +00:00
385cee5c59 Substitute GTK_BINVER_DEP as a substvar rather than using sed
This will make it easier to stop making d/control a generated file.
2023-11-08 15:53:36 +00:00
c47425c62e Update Turkish translation 2023-10-29 11:21:54 +00:00
f5b67ddac2 Update Georgian translation 2023-10-25 21:27:51 +00:00
2ced0b9179 Update Turkish translation 2023-10-25 13:34:20 +00:00
b5118d2150 Update Turkish translation 2023-10-21 09:16:16 +00:00
73d5663a8c Update Georgian translation 2023-10-17 22:34:06 +00:00
21dd4d78d3 Update Georgian translation 2023-10-17 19:18:04 +00:00
be74e8a12a Merge branch 'wayland-entries-for-keyval' into 'gtk-3-24'
wayland: Don't return True if we fail to convert a keyval

See merge request GNOME/gtk!6492
2023-10-17 16:44:48 +00:00
8143aa1b94 wayland: Don't return True if we fail to convert a keyval
gdk_keymap_get_entries_for_keyval is supposed to return FALSE when no
keys were found. Do so to prevent careless clients (that don't check
n_keys too) from crashing.
2023-10-17 18:22:47 +02:00
63d70fd3ee Update Georgian translation 2023-10-08 20:41:31 +00:00
98fa45f633 Update Georgian translation 2023-10-01 11:49:24 +00:00