Commit Graph

55038 Commits

Author SHA1 Message Date
24ea83e55e Stop using GTestDBus
It is causing tests to timeout when libraries we are using
leak bus connections, and it turns out our tests run fine
without a session bus.

Backport of 1b265a7971171.
2023-03-02 19:18:34 -05:00
e2f2076bf2 Merge branch 'wip/carlosg/activation-regression-fix-3-24' into 'gtk-3-24'
gtkwindow: Fix fallbacks through xdg_activation_v1

See merge request GNOME/gtk!5581
2023-03-01 17:09:56 +00:00
a3c604d5cc gtkwindow: Fix fallbacks through xdg_activation_v1
When activating a window, avoid the "old" gdk_notify_startup_complete*()
API that does not fallback into xdg_activation on wayland (as this is still
deferred here until show vs present happens on the surface). This was
mistakenly changed wrt the original commit backported from GTK4.

Fixes: a067938589 ("gtkwindow: Minor refactor")
2023-03-01 17:14:01 +01:00
a1f0d64287 Merge branch 'file-transfer-portal-gtk3' into 'gtk-3-24'
selection: Support the file transfer portal

See merge request GNOME/gtk!5554
2023-02-26 21:25:26 +00:00
8562476872 Mention file transfer in the NEWS 2023-02-25 08:41:07 -05:00
6de506f277 Add a test client for file transfer portal 2023-02-25 08:41:07 -05:00
9f81db139d selection: Support the file transfer portal
When the selection target is application/vnd.portal.files,
send files through the file transfer portal.
2023-02-25 08:41:07 -05:00
bae6a37ed9 Belated post-release bump 2023-02-25 08:05:42 -05:00
25a50c0f35 Finalize changelog and release to unstable. 2023-02-15 12:51:14 +03:00
edaf297d8b Backport upstream patch to fix outdated screen state on screenshots.
Closes: #1031112.
2023-02-15 12:44:46 +03:00
20964a3fa6 Merge branch 'backport-mr-4620-to-gtk-3-24' into 'gtk-3-24'
GdkWin32: Mouse events fixes

See merge request GNOME/gtk!5493
2023-02-13 15:34:24 +00:00
53f8a2ef93 GdkWin32: Generate crossing event after button release
This is a backport of commit cb0c1b3f to gtk-3-24
2023-02-13 16:15:04 +01:00
783af2e3bf GdkWin32: Correct generation of crossing events when holding an implicit grab
This is a backport of commit 91f20016 to gtk-3-24
2023-02-13 16:14:54 +01:00
8369148c3b Merge branch 'ebassi/issue-5482' into 'gtk-3-24'
Mark surface as dirty before flushing it

See merge request GNOME/gtk!5505
2023-02-12 20:04:04 +00:00
fba09dbfc7 Mark surface as dirty before flushing it
If we're trying to read back the contents of a GdkWindow that was
created from a foreign windowing system surface, we are going to
forcibly mark it as dirty before flushing the Cairo state.

To avoid regressing any further in the future of the 3.x branch, let's
leave a comment.

Fixes: #5482
2023-02-12 19:19:25 +00:00
f931c73316 [quartz] Silence two compiler warnings.
One unused function, one return type mismatch.
2023-02-11 12:57:08 -08:00
312e5781f3 [quartz] Set the sRGB colorspace on the IOSurface.
Enables colorspace tranformation in Core Animation. This transform
is executed on the GPU and unlike the Core Graphics one has no
affect on performance.

Fixes #5579
2023-02-11 12:52:38 -08:00
4fcf3b3a7d Merge branch 'gtk-3-24-focus-to-modal-parant-and-transient-for' into 'gtk-3-24'
Solution for focus loss problem for complex multi Window UI in Broadway backend

See merge request GNOME/gtk!3990
2023-02-10 11:37:49 +00:00
1562ce4ebd Merge branch 'backport-mr-5489' into 'gtk-3-24'
Backport !5489 to gtk-3-24

See merge request GNOME/gtk!5490
2023-02-10 11:37:11 +00:00
857f734d83 searchengine: Emit a simple warning when tracker init failed
Failure is allowed by nature of GInitable, and this avoids unnecessary
crashing of programs running with G_DEBUG=fatal-criticals.

(cherry picked from commit 6215b38e645f5047d52e625562efccc1e4f85867)
2023-02-09 23:21:04 +01:00
8497425535 searchengine: Add missing sanity check
(cherry picked from commit 41490f96240eb04d85cbe5e1f264ab09ec00b9e0)
2023-02-09 23:20:47 +01:00
19ee51b827 Release to unstable 2023-02-04 17:32:10 +00:00
ac119a3206 Update changelog 2023-02-04 17:30:41 +00:00
25bf61a6c0 Reapply GNOME/gtk!5301 for now
I had hoped that applying GNOME/gtk!5443 and GNOME/gtk!5398 would
resolve GNOME/gtk#5386, but that does not seem to be the case.
2023-02-04 17:29:27 +00:00
0b6bbcfa6d Update changelog 2023-02-04 16:49:53 +00:00
3fd14b444a Update POTFILES.in 2023-02-04 16:14:22 +01:00
fd15db0ac1 Clean up unused Lintian overrides 2023-02-04 14:41:38 +00:00
5ecc70ab04 Standards-Version: 4.6.2 (no changes required) 2023-02-04 14:41:04 +00:00
c3b1c664fd Add overrides for lintian/lintian!452 2023-02-04 14:40:37 +00:00
dbdfac0310 Merge branch 'wip/carlosg/no-legacy-im-3-24' into 'gtk-3-24'
input: Drop legacy text input module

See merge request GNOME/gtk!5476
2023-02-04 12:37:03 +00:00
00a64e67fd d/patches: Update to gtk-3-24 branch commit 3.24.36-33-g5554113c74
Excluding Windows- and macOS-specific changes, and a workaround for a
libhandy bug which was applied and then reverted.

- Fix logic for when to build GObject-Introspection
- Treat XKB_MOD_NAME_LOGO as Super key in Wayland (GNOME/gtk#4913)
- Fix animations and transitions randomly stopping (GNOME/gtk#4426)
- Take UI scale into account when loading "image-missing" icon
- Replace upstream-rejected solution to GNOME/gtk#5386 (see 3.24.35-3,
  3.24.36-2) with the upstreamed solution
- Fix a touchscreen handling bug that can cause applications to become
  unresponsive (GNOME/gtk#4947)
- Fix GL rendering issues in Totem after the Mesa AMD driver enabled
  threaded rendering (GNOME/gtk#5517)
- Translation updates: ab, lt, tr
2023-02-04 12:23:53 +00:00
11c4cc235f input: Drop legacy text input module
This wayland protocol was merely some scaffolding until the
text_input protocol shaped up and took over. Nowadays this
could only ever help with really old versions of Mutter
(pre 3.28). This can be simply removed nowadays.
2023-02-04 10:17:50 +00:00
5554113c74 Merge branch 'gtk-3-24' into 'gtk-3-24'
Fixes incorrect grabbing behaviour causing subsequent rejection of input

See merge request GNOME/gtk!5212
2023-01-28 17:46:05 +00:00
15f0ac6f93 Remove warning 2023-01-28 14:20:49 +01:00
37ea15e81f Merge branch 'revert-5aaa373b' into 'gtk-3-24'
Revert "Revert "wayland: Add support for gtk_surface1_titlebar_gesture()""

See merge request GNOME/gtk!5452
2023-01-28 12:59:27 +00:00
384d9a75cd Revert "Revert "wayland: Add support for gtk_surface1_titlebar_gesture()""
This reverts commit 5aaa373b70
2023-01-28 09:41:34 +00:00
b24e43a1f7 Merge branch 'revert-titlebar-gestures' into 'gtk-3-24'
Revert "wayland: Add support for gtk_surface1_titlebar_gesture()"

See merge request GNOME/gtk!5451
2023-01-28 03:03:51 +00:00
5aaa373b70 Revert "wayland: Add support for gtk_surface1_titlebar_gesture()"
This reverts commit 45ba6e9329.

This caused regressions in libhandy-using applications.

Fixes: #5389
2023-01-27 21:34:44 -05:00
13647e0144 Merge branch 'fix-xdg-activation-set-surface-gtk-3-24' into 'gtk-3-24'
Backport "gdk/wayland: set requesting surface to xdg-activation" to gtk-3-24

See merge request GNOME/gtk!5398
2023-01-27 19:05:39 +00:00
a23dfcd4c1 Merge branch 'gl-sync-gtk3' into 'gtk-3-24'
gl: Synchronize when calling MakeCurrent

See merge request GNOME/gtk!5448
2023-01-27 16:21:21 +00:00
41827d9f72 gdk/wayland: set requesting surface to xdg-activation
The argument to xdg_activation_token_v1_set_surface is documented to be the
surface requesting the activation, not the surface to be activated, which is
given later when calling xdg_activation_v1_activate.
(c.f. 36cee4bdbc)

Use the same logic as in gdk_wayland_app_launch_context_get_startup_notify_id,
i.e. if we have a surface with focus, set that, otherwise set NULL.

This fixes requesting urgent/focus on wlroots (compositors like Sway, etc.),
which was blocked as the surface requesting the activation didn't have focus.

Backport of: 43c1a433aa0839826451f71029965d8e359a9178

Signed-off-by: Joan Bruguera <joanbrugueram@gmail.com>
2023-01-27 14:53:41 +00:00
9811485990 gl: Synchronize when calling MakeCurrent
When making out GL context current, wait
until the GPU is done with commands from
the previous context.

Fixes: #5517
2023-01-27 07:09:34 -05:00
b6795f8ff9 Merge branch 'wip/carlosg/startup-vs-focus-3-24' into 'gtk-3-24'
Consider startup vs focus requests for the Wayland platform [3.24]

See merge request GNOME/gtk!5443
2023-01-25 13:09:17 +00:00
79e11bed1a gtkapplication: Do not call gdk_display_notify_startup_complete()
This should do nothing worthwhile anymore, the X11/Wayland GtkApplication
implementations do already pass the startup ID from the platform_data
via windowing specific APIs, and the application handling the request
via show()/present() should trigger the activation request.

(cherry-picked from commit 3526d8b299becb7cd1e970ea5228a141eae20257)
2023-01-25 11:22:40 +01:00
2a47038635 gtkwindow: Shuffle gdk_window_set_startup_id() calls
While this used to be tangential to windows showing or requesting
focus, the xdg-activation Wayland protocol does merge both concepts
together.

But also, for a correct interaction with the compositor, the
toolkit should ideally merge the activation request resulting from
both into the same one, so that the gdk_window_focus() request
replies to the startup token that started the application and
correct focus-stealing prevention/etc happens, instead making up
one just in time for the focus request.

This kind of requires doing things in the right order, a show()
request on the GtkWindow should activate any pending activation
token on the toplevel, a present() request should additionally
create a new token if there was none pending. And
xdg_activation_v1_activate() should happen once on both.

Shuffle the gdk_window_set_startup_id() calls so that this
happens in the right order for Wayland, while making X11 happy
too.

(cherry-picked from commit e8adfa2a889cd45ee0ce0727d7eae0a61fdb7dce)
2023-01-25 11:22:40 +01:00
6ccd786a93 gdk/x11: Emit "remove" s-n message from gdk_toplevel_set_startup_id
In the way towards deprecating gdk_display_notify_startup_complete(),
make gdk_toplevel_set_startup_id() on X11 perform this piece of messaging
itself. It should be harmless that the message is emitted twice, if
callers do still use that API.

(cherry-picked from commit 7fab1b85adbddff7628e3e916f00677080fb9150)
2023-01-25 11:22:40 +01:00
f5a5480fe2 gdk/wayland: Perform xdg_activation on gdk_window_set_startup_id
This call has everything to perform activation as specified by the
xdg_activation protocol, notably a surface to activate as opposed to
gdk_notify_startup_complete().

Make activation happen here, so that the surface gets activated when
its gets a startup ID assigned.

(cherry-picked from commit 5aeabdb3d404579b5cab4fff1642ed116f745a8b)
2023-01-25 11:22:40 +01:00
a067938589 gtkwindow: Minor refactor
Move the handling of the startup ID to a separate function, since
this will be called from several places.

(cherry-picked from commit 6f01f846dc66a6359a1524ace13377536821dbb0)
2023-01-25 11:22:40 +01:00
06cda1877e Release to unstable 2023-01-24 18:33:58 +00:00
32a32274e8 d/rules: Accept minor rendering differences in label-background test
Workaround for GNOME/gtk#5545
2023-01-24 18:33:42 +00:00