gtk4.git
3 years agogdk/win32: add missing Since tag for gdk_win32_display_get_egl_display
Marc-André Lureau [Thu, 25 Aug 2022 13:33:25 +0000 (17:33 +0400)]
gdk/win32: add missing Since tag for gdk_win32_display_get_egl_display

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
3 years agogdk/win32: deprecate gdk_win32_handle_table_lookup
Marc-André Lureau [Wed, 24 Aug 2022 17:01:45 +0000 (21:01 +0400)]
gdk/win32: deprecate gdk_win32_handle_table_lookup

This function is probably not generally useful for a Gtk+/win32 user,
and it's only used internally by gdk-win32. It's time to deprecate it, I
believe.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
3 years agogdk/win32: do not expose gdk_win32_*_libgtk_only in public headers
Marc-André Lureau [Wed, 24 Aug 2022 11:44:32 +0000 (15:44 +0400)]
gdk/win32: do not expose gdk_win32_*_libgtk_only in public headers

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
3 years agoMerge branch 'win32-gir' into 'main'
Luca Bacci [Wed, 24 Aug 2022 09:41:11 +0000 (09:41 +0000)]
Merge branch 'win32-gir' into 'main'

win32: various GI annotations and fixes

See merge request GNOME/gtk!4977

3 years agoMerge branch 'gdk-win32-scale-text-with-dpi-as-gtk3' into 'main'
Luca Bacci [Wed, 24 Aug 2022 09:35:30 +0000 (09:35 +0000)]
Merge branch 'gdk-win32-scale-text-with-dpi-as-gtk3' into 'main'

GdkWin32: Scale text like in GTK3 with SYSTEM_DPI_AWARENESS

Closes #4187

See merge request GNOME/gtk!4979

3 years agoGdkWin32: Scale text with DPI like in GTK3 with SYSTEM_DPI_AWARENESS
Luca Bacci [Tue, 23 Aug 2022 12:49:59 +0000 (14:49 +0200)]
GdkWin32: Scale text with DPI like in GTK3 with SYSTEM_DPI_AWARENESS

Right now we only support system DPI awareness in GTK4. In that case
it makes sense to scale text with the DPI of the primary monitor, like
done in GTK3.

We plan to land support for proper fractional scaling in Gdk/Win32, so
in the future the "gtk-xft-dpi" setting will be gathered as intended,
i.e. for text magnification, as an a11y feature.

3 years agoMerge branch 'gdk-win32-fix-monitor-for-popup' into 'main'
Luca Bacci [Tue, 23 Aug 2022 17:20:02 +0000 (17:20 +0000)]
Merge branch 'gdk-win32-fix-monitor-for-popup' into 'main'

GdkWin32: Use primary monitor as fallback if popup layout does not intersect any

See merge request GNOME/gtk!4978

3 years agogdk/win32: annotate gdk_win32_surface_lookup_for_display
Marc-André Lureau [Tue, 23 Aug 2022 13:20:39 +0000 (17:20 +0400)]
gdk/win32: annotate gdk_win32_surface_lookup_for_display

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
3 years agogdk/win32: annotate gdk_win32_surface_set_urgency_hint
Marc-André Lureau [Tue, 23 Aug 2022 13:06:48 +0000 (17:06 +0400)]
gdk/win32: annotate gdk_win32_surface_set_urgency_hint

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
3 years agoGdkWin32: Position popups on the primary monitor if outside of the visible screen...
Luca Bacci [Tue, 23 Aug 2022 12:54:01 +0000 (14:54 +0200)]
GdkWin32: Position popups on the primary monitor if outside of the visible screen area

Fixes a crash caused by attempting to dereference a NULL GdkMonitor*
in GdkWin32.

See https://gitlab.gnome.org/GNOME/gtk/-/issues/5125

3 years agogtk/win32: fix a switch-default warning
Marc-André Lureau [Tue, 23 Aug 2022 12:42:15 +0000 (16:42 +0400)]
gtk/win32: fix a switch-default warning

gtk/gtkimcontextime.c:714:3: warning: switch missing default case [-Wswitch-default]

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
3 years agoMerge branch 'tweak-option-docs' into 'main'
Matthias Clasen [Tue, 23 Aug 2022 12:41:46 +0000 (12:41 +0000)]
Merge branch 'tweak-option-docs' into 'main'

Tweak the vulkan option description

See merge request GNOME/gtk!4976

3 years agogdk/win32: deprecate gdk_win32_surface_get_impl_hwnd
Marc-André Lureau [Tue, 23 Aug 2022 12:35:07 +0000 (16:35 +0400)]
gdk/win32: deprecate gdk_win32_surface_get_impl_hwnd

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
3 years agogtk/win32: use gdk_win32_surface_get_handle
Marc-André Lureau [Tue, 23 Aug 2022 12:31:07 +0000 (16:31 +0400)]
gtk/win32: use gdk_win32_surface_get_handle

As I propose to deprecate gdk_win32_surface_get_impl_hwnd() next,
replace it with the alternative.

The main difference between the two functions is that
gdk_win32_surface_get_impl_hwnd() fails gracefully by returning NULL if
the surface is not of the win32 implementation.

All the surfaces should be native surfaces here, and the existing code
doesn't seem to deal with NULL case anyway.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
3 years agoTweak the vulkan option description
Matthias Clasen [Tue, 23 Aug 2022 12:27:24 +0000 (08:27 -0400)]
Tweak the vulkan option description

The thing that is experimental is our renderer,
not the vulkan API.

3 years agogdk/win32: annotate gdk_win32_surface_get_handle
Marc-André Lureau [Tue, 23 Aug 2022 12:25:30 +0000 (16:25 +0400)]
gdk/win32: annotate gdk_win32_surface_get_handle

And adjust the argument precondition check.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
3 years agogdk/win32: correct gdk_win32_surface_get_handle return type
Marc-André Lureau [Tue, 23 Aug 2022 12:17:15 +0000 (16:17 +0400)]
gdk/win32: correct gdk_win32_surface_get_handle return type

The associated surface window handle is a HWND, not a HGDIOBJ.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
3 years agoUpdate Icelandic translation
Sveinn í Felli [Tue, 23 Aug 2022 11:49:37 +0000 (11:49 +0000)]
Update Icelandic translation

(cherry picked from commit a27ae5362c81e4395e962a9e0636a9f92c50c6ef)

3 years agoUpdate Icelandic translation
Sveinn í Felli [Tue, 23 Aug 2022 11:38:38 +0000 (11:38 +0000)]
Update Icelandic translation

(cherry picked from commit e6d3c58ccfeba0840b4849238f431124a1903605)

3 years agogdk/win32: deprecate gdk_win32_surface_is_win32
Marc-André Lureau [Tue, 23 Aug 2022 11:32:55 +0000 (15:32 +0400)]
gdk/win32: deprecate gdk_win32_surface_is_win32

The function isn't used by Gtk itself anymore, and does not help much.
It creates extra issues for bindings, as it doesn't fit well with code
doing the same job for other objects.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
3 years agogdk/win32: annotate filter callbacks
Marc-André Lureau [Tue, 23 Aug 2022 08:57:20 +0000 (12:57 +0400)]
gdk/win32: annotate filter callbacks

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
3 years agoMerge branch 'win32-gir' into 'main'
Luca Bacci [Mon, 22 Aug 2022 22:26:09 +0000 (22:26 +0000)]
Merge branch 'win32-gir' into 'main'

Generate gtk/GdkWin32-4.0.gir

Closes #5112

See merge request GNOME/gtk!4965

3 years agoUpdated Lithuanian translation
Aurimas Černius [Mon, 22 Aug 2022 20:21:45 +0000 (23:21 +0300)]
Updated Lithuanian translation

3 years agoMerge branch 'fix-calc-value-free' into 'main'
Matthias Clasen [Mon, 22 Aug 2022 16:31:23 +0000 (16:31 +0000)]
Merge branch 'fix-calc-value-free' into 'main'

css: Fix freeing of calc values

Closes #5130

See merge request GNOME/gtk!4974

3 years agocss: Fix freeing of calc values
Matthias Clasen [Mon, 22 Aug 2022 15:51:20 +0000 (11:51 -0400)]
css: Fix freeing of calc values

We were getting our memory allocations mixed
up here.

Fixes: #5130
3 years agoMerge branch 'jpeg-memory-limit' into 'main'
Matthias Clasen [Mon, 22 Aug 2022 15:03:40 +0000 (15:03 +0000)]
Merge branch 'jpeg-memory-limit' into 'main'

Bump the jpeg memory limit

See merge request GNOME/gtk!4973

3 years agoBump the jpeg memory limit
Matthias Clasen [Mon, 22 Aug 2022 14:48:00 +0000 (10:48 -0400)]
Bump the jpeg memory limit

Commit 59f6c50df8d4d9 set the memory limit to 100M,
which turns out to exclude some large, valid jpegs.
So, bump things to 300M, matching what was done
in gdk-pixbuf.

3 years agoMerge branch 'no-emoji-insert' into 'main'
Matthias Clasen [Sun, 21 Aug 2022 20:47:27 +0000 (20:47 +0000)]
Merge branch 'no-emoji-insert' into 'main'

text: Respect no-emoji hint fully

See merge request GNOME/gtk!4972

3 years agotext: Respect no-emoji hint fully
Matthias Clasen [Sun, 21 Aug 2022 20:29:41 +0000 (16:29 -0400)]
text: Respect no-emoji hint fully

We were disabling the insert-emoji action when the
no-emoji input hint is set, but the Ctrl-. shortcut
was bypassing the action and kept working. Make
the shortcut activate the action instead.

Fixes: #5123
3 years agoMerge branch 'wip/smcv/log-writer' into 'main'
Matthias Clasen [Sun, 21 Aug 2022 11:55:00 +0000 (11:55 +0000)]
Merge branch 'wip/smcv/log-writer' into 'main'

icontheme test: Assert that the subprocess passed

See merge request GNOME/gtk!4969

3 years agoicontheme test: Assert that the subprocess passed
Simon McVittie [Sat, 20 Aug 2022 18:38:29 +0000 (19:38 +0100)]
icontheme test: Assert that the subprocess passed

Noticed while backporting GLogWriterFunc fixes to 3.24.x (#5119).

Signed-off-by: Simon McVittie <smcv@debian.org>
3 years agoUpdate Serbian translation
Марко Костић [Sat, 20 Aug 2022 13:06:02 +0000 (13:06 +0000)]
Update Serbian translation

3 years agoUpdate Galician translation
Fran Dieguez [Sat, 20 Aug 2022 11:26:34 +0000 (11:26 +0000)]
Update Galician translation

3 years agoMerge branch 'gdk-win32-fix-handling-of-input-region' into 'main'
Luca Bacci [Sat, 20 Aug 2022 10:08:32 +0000 (10:08 +0000)]
Merge branch 'gdk-win32-fix-handling-of-input-region' into 'main'

GdkWin32: Fix handling of WM_NCHITTEST

Closes #5114

See merge request GNOME/gtk!4966

3 years agoUpdate Georgian translation
Zurab Kargareteli [Sat, 20 Aug 2022 07:37:42 +0000 (07:37 +0000)]
Update Georgian translation

3 years agoMerge branch 'fix-emojichooser-keynav' into 'main'
Matthias Clasen [Fri, 19 Aug 2022 20:12:51 +0000 (20:12 +0000)]
Merge branch 'fix-emojichooser-keynav' into 'main'

emojichooser: Fix arrow keynav

Closes #5076

See merge request GNOME/gtk!4967

3 years agoemojichooser: Fix arrow keynav
Matthias Clasen [Fri, 19 Aug 2022 19:55:10 +0000 (15:55 -0400)]
emojichooser: Fix arrow keynav

When some of the Emoji have been filtered out by
a search term, arrow keynav would behave oddly and
get stuck in invisible sections. Fix this by ignoring
any filtered out children when moving between
sections for arrow keynav.

Fixes: #5076
3 years agoFix typo
Luca Bacci [Fri, 19 Aug 2022 17:28:41 +0000 (19:28 +0200)]
Fix typo

And reword comment

3 years agoGdkWin32: Fix handling of WM_NCHITTEST
Luca Bacci [Fri, 19 Aug 2022 17:21:17 +0000 (19:21 +0200)]
GdkWin32: Fix handling of WM_NCHITTEST

Fixes https://gitlab.gnome.org/GNOME/gtk/-/issues/5114

3 years agobuild-sys: generate GdkWin32.gir
Marc-André Lureau [Thu, 18 Aug 2022 15:57:17 +0000 (19:57 +0400)]
build-sys: generate GdkWin32.gir

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
3 years agoMerge branch 'mingw' into 'main'
Matthias Clasen [Fri, 19 Aug 2022 11:06:10 +0000 (11:06 +0000)]
Merge branch 'mingw' into 'main'

Cross-building with mingw & fixes

See merge request GNOME/gtk!4341

3 years agobuild-sys: do not install gdkwin32keys.h
Marc-André Lureau [Fri, 19 Aug 2022 07:30:51 +0000 (11:30 +0400)]
build-sys: do not install gdkwin32keys.h

Fixes: commit 89ad7893adb25a79 ("gdk: Make GdkKeymap a private api")
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
3 years agogdk/win32: remove old declaration
Marc-André Lureau [Fri, 19 Aug 2022 07:19:30 +0000 (11:19 +0400)]
gdk/win32: remove old declaration

The function is gone since commit ea65abc7e2cd ("Rewrite
GdkWin32Keymap (load table directly from layout DLL)")

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
3 years agoMerge branch 'wip/otte/for-main' into 'main'
Benjamin Otte [Fri, 19 Aug 2022 01:08:59 +0000 (01:08 +0000)]
Merge branch 'wip/otte/for-main' into 'main'

gdk: Plug a memleak

Closes #5110

See merge request GNOME/gtk!4964

3 years agogdk: Plug a memleak
Benjamin Otte [Fri, 19 Aug 2022 00:38:11 +0000 (02:38 +0200)]
gdk: Plug a memleak

Free GdkIOPipe struct when freeing it
Don't just free all its members.

Fixes #5110

3 years agoMerge branch 'treeview-search-focus' into 'main'
Matthias Clasen [Thu, 18 Aug 2022 23:51:02 +0000 (23:51 +0000)]
Merge branch 'treeview-search-focus' into 'main'

treeview: Always call grab_focus_without_selecting on search entry

Closes #4551

See merge request GNOME/gtk!4961

3 years agoMerge branch 'remove-msys2-ci-subproject-workaround' into 'main'
Luca Bacci [Thu, 18 Aug 2022 18:40:05 +0000 (18:40 +0000)]
Merge branch 'remove-msys2-ci-subproject-workaround' into 'main'

CI: remove workaround for some subproject builds failing on Windows

See merge request GNOME/gtk!4923

3 years agoMerge branch 'wip/carlosg/im-fixes' into 'main'
Matthias Clasen [Thu, 18 Aug 2022 17:58:26 +0000 (17:58 +0000)]
Merge branch 'wip/carlosg/im-fixes' into 'main'

gtkimcontextwayland: Refactor handling of client updates

Closes #5106 and #5105

See merge request GNOME/gtk!4962

3 years agogtkimcontextwayland: Refactor handling of client updates
Carlos Garnacho [Wed, 17 Aug 2022 22:58:38 +0000 (00:58 +0200)]
gtkimcontextwayland: Refactor handling of client updates

Currently, the wayland IM context sends zwp_text_input_v3.commit from
a number of places, and some of them with partial data. In order to
make client state updates "atomic" and complete, make the communication
happen over an unified notify_im_change() function that happens on
a narrower set of circumstances:

  - The GtkIMContext is reset
  - The GtkIMContext is just focused
  - The gesture to invoke the OSK is triggered
  - The IM context is reacting to changes coming from the compositor

Notably, setting the cursor location or the surrounding text do not try
to commit state on their own, and now will be flushed with the corresponding
IM update or reset. But also, these requests won't be prevented from
happening individually on serial mismatch, instead it will be the whole
state commit which is held off.

With these changes in place, all client-side updates are notified
atomically to the compositor under a single .commit request.

Fixes: https://gitlab.gnome.org/GNOME/gtk/-/issues/5106
Fixes: https://gitlab.gnome.org/GNOME/gtk/-/issues/5105
3 years agogtktextview: Shuffle the places doing IM reset
Carlos Garnacho [Wed, 17 Aug 2022 22:58:14 +0000 (00:58 +0200)]
gtktextview: Shuffle the places doing IM reset

During text widget manipulation (inserting or deleting text via keyboard)
the IM context is reset somewhat early, before the actual change took place.
This makes IM lag behind in terms of surrounding text and cursor position.

Shuffle these IM reset calls so that they happen after the changes, and
ensure that the IM is actually reset, since that is currently toggled on
a pretty narrow set of circumstances.

Also, fix a bug during GtkEventControllerKey::im-update where the condition
on cursor position editability to reset the IM context was inverted.

3 years agotreeview: Always call grab_focus_without_selecting on search entry
Mat [Thu, 18 Aug 2022 15:03:04 +0000 (18:03 +0300)]
treeview: Always call grab_focus_without_selecting on search entry

The search text entry is always a GtkText widget, not GtkEntry. If a
custom search entry is set, this part of the code is never reached.

Fixes #4551

3 years agoci: add fedora-mingw64 job
Marc-André Lureau [Thu, 6 Jan 2022 12:01:40 +0000 (16:01 +0400)]
ci: add fedora-mingw64 job

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
3 years agobuild-sys: fix linker warning on win32
Marc-André Lureau [Thu, 18 Aug 2022 07:44:32 +0000 (11:44 +0400)]
build-sys: fix linker warning on win32

[196/296] Linking target testsuite/gtk/builder.exe
/usr/lib/gcc/x86_64-w64-mingw32/11.2.1/../../../../x86_64-w64-mingw32/bin/ld: warning: --export-dynamic is not supported for PE+ targets, did you mean --export-all-symbols?

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
3 years agogtktext: Shuffle the places doing IM reset
Carlos Garnacho [Wed, 17 Aug 2022 22:55:30 +0000 (00:55 +0200)]
gtktext: Shuffle the places doing IM reset

During text widget manipulation (inserting or deleting text via keyboard)
the IM context is reset somewhat early, before the actual change took place.
This makes IM lag behind in terms of surrounding text and cursor position.

Shuffle these IM reset calls so that they happen after the changes, and
ensure that the IM is actually reset, since that is currently toggled on
a pretty narrow set of circumstances.

3 years agoMerge branch 'wip/smcv/rej' into 'main'
Matthias Clasen [Tue, 16 Aug 2022 12:28:46 +0000 (12:28 +0000)]
Merge branch 'wip/smcv/rej' into 'main'

demos: Remove detritus from a patch not applying cleanly

See merge request GNOME/gtk!4957

3 years agodemos: Remove detritus from a patch not applying cleanly
Simon McVittie [Tue, 16 Aug 2022 07:32:45 +0000 (08:32 +0100)]
demos: Remove detritus from a patch not applying cleanly

I assume this was committed by mistake. It isn't used, and some
packaging systems will automatically remove it during `clean`.

Signed-off-by: Simon McVittie <smcv@debian.org>
3 years agoUpdate Catalan translation
Jordi Mas [Mon, 15 Aug 2022 21:57:15 +0000 (23:57 +0200)]
Update Catalan translation

3 years agoMerge branch 'overshoot-win32-fix' into 'main'
Luca Bacci [Mon, 15 Aug 2022 21:33:19 +0000 (21:33 +0000)]
Merge branch 'overshoot-win32-fix' into 'main'

GdkWin32: Support high resolution scroll wheel events

See merge request GNOME/gtk!4950

3 years agoMerge branch 'gtktreeview-adjustment' into 'main'
Matthias Clasen [Sun, 14 Aug 2022 22:40:32 +0000 (22:40 +0000)]
Merge branch 'gtktreeview-adjustment' into 'main'

treeview: Do not set top row adjustment value while animating

Closes #4550

See merge request GNOME/gtk!4940

3 years agoMerge branch 'treeview-widget-coords' into 'main'
Matthias Clasen [Sun, 14 Aug 2022 22:39:21 +0000 (22:39 +0000)]
Merge branch 'treeview-widget-coords' into 'main'

treeview: Use widget coordinates where required

See merge request GNOME/gtk!4939

3 years agoMerge branch 'wip/otte/for-main' into 'main'
Benjamin Otte [Sun, 14 Aug 2022 21:19:48 +0000 (21:19 +0000)]
Merge branch 'wip/otte/for-main' into 'main'

listitemwidget: Actually unref the listitems

Closes #5102

See merge request GNOME/gtk!4955

3 years agolistitemwidget: Actually unref the listitems
Benjamin Otte [Sun, 14 Aug 2022 20:55:27 +0000 (22:55 +0200)]
listitemwidget: Actually unref the listitems

Fixes #5102

3 years agoGdkWin32: Support high resolution scroll wheel events
Ricardo Maia Louro [Sun, 14 Aug 2022 17:27:03 +0000 (18:27 +0100)]
GdkWin32: Support high resolution scroll wheel events

3 years agoUpdate Polish translation
Piotr Drąg [Sun, 14 Aug 2022 13:24:39 +0000 (15:24 +0200)]
Update Polish translation

3 years agoMerge branch 'fix-gears-leak' into 'main'
Matthias Clasen [Sat, 13 Aug 2022 21:42:35 +0000 (21:42 +0000)]
Merge branch 'fix-gears-leak' into 'main'

gtk4-demo: Fix a memory leak

See merge request GNOME/gtk!4954

3 years agogtk4-demo: Fix a memory leak
Matthias Clasen [Sat, 13 Aug 2022 21:27:40 +0000 (17:27 -0400)]
gtk4-demo: Fix a memory leak

The gears demo was leaking its vertices.

3 years agoMerge branch 'wayland-cursor-texture-leak' into 'main'
Matthias Clasen [Sat, 13 Aug 2022 17:35:56 +0000 (17:35 +0000)]
Merge branch 'wayland-cursor-texture-leak' into 'main'

wayland: Avoid leaking cursor textures

See merge request GNOME/gtk!4953

3 years agowayland: Avoid leaking cursor textures
Matthias Clasen [Sat, 13 Aug 2022 17:19:49 +0000 (13:19 -0400)]
wayland: Avoid leaking cursor textures

When we fall back to the default cursor and load it
from a resource, we need to free the texture.

3 years agoMerge branch 'inscription-leak-fixes' into 'main'
Matthias Clasen [Sat, 13 Aug 2022 00:49:33 +0000 (00:49 +0000)]
Merge branch 'inscription-leak-fixes' into 'main'

inscription: Plug a memory leak

See merge request GNOME/gtk!4952

3 years agoinscription: Plug a memory leak
Matthias Clasen [Sat, 13 Aug 2022 00:02:58 +0000 (20:02 -0400)]
inscription: Plug a memory leak

PangoFontMetrics also need to be freed.

3 years agoinscription: Plug a memory leak
Matthias Clasen [Sat, 13 Aug 2022 00:01:34 +0000 (20:01 -0400)]
inscription: Plug a memory leak

PangoLayoutIter needs to be freed.

3 years agoMerge branch 'fix-cups-backend-leak' into 'main'
Matthias Clasen [Fri, 12 Aug 2022 23:00:44 +0000 (23:00 +0000)]
Merge branch 'fix-cups-backend-leak' into 'main'

Add more valgrind suppressions

See merge request GNOME/gtk!4951

3 years agocups printbackend: Plug memory leaks
Matthias Clasen [Fri, 12 Aug 2022 22:44:25 +0000 (18:44 -0400)]
cups printbackend: Plug memory leaks

This loop has many early exits, and all of them
need to free this info object that gets allocated
at the beginning.

3 years agoAdd more valgrind suppressions
Matthias Clasen [Fri, 12 Aug 2022 16:43:26 +0000 (12:43 -0400)]
Add more valgrind suppressions

This gets all GQuark functions out of the logs.

3 years agoMerge branch 'fix-a11y-leak' into 'main'
Matthias Clasen [Fri, 12 Aug 2022 16:17:48 +0000 (16:17 +0000)]
Merge branch 'fix-a11y-leak' into 'main'

a11y: Fix a memory leak

See merge request GNOME/gtk!4949

3 years agoa11y: Fix a memory leak
Matthias Clasen [Fri, 12 Aug 2022 16:01:42 +0000 (12:01 -0400)]
a11y: Fix a memory leak

We need to free the queued context list in dispose
if we didn't get to register the contexts, and we also
need to free the list properly when we do get to
register them.

This showed up in valgrind as leaked GList structs.

3 years agoUpdate Croatian translation
Goran Vidović [Fri, 12 Aug 2022 14:33:14 +0000 (14:33 +0000)]
Update Croatian translation

3 years agoUpdate Croatian translation
Goran Vidović [Fri, 12 Aug 2022 14:25:29 +0000 (14:25 +0000)]
Update Croatian translation

3 years agoUpdate Croatian translation
Goran Vidović [Fri, 12 Aug 2022 14:22:10 +0000 (14:22 +0000)]
Update Croatian translation

3 years agoUpdate Georgian translation
Zurab Kargareteli [Fri, 12 Aug 2022 03:32:05 +0000 (03:32 +0000)]
Update Georgian translation

3 years agoMerge branch 'fix-leak' into 'main'
Matthias Clasen [Fri, 12 Aug 2022 00:09:15 +0000 (00:09 +0000)]
Merge branch 'fix-leak' into 'main'

gtk/css: data_url_path fix leak in error path

See merge request GNOME/gtk!4947

3 years agogtk/css: data_url_path fix leak in error path
Pablo Correa Gómez [Thu, 11 Aug 2022 23:33:39 +0000 (01:33 +0200)]
gtk/css: data_url_path fix leak in error path

Fixes 7900032f3067166502978413ed2447c68dc83771

3 years ago4.7.2
Matthias Clasen [Wed, 10 Aug 2022 18:27:54 +0000 (14:27 -0400)]
4.7.2

3 years agoMerge branch 'improve-css-test' into 'main'
Matthias Clasen [Thu, 11 Aug 2022 11:58:04 +0000 (11:58 +0000)]
Merge branch 'improve-css-test' into 'main'

css: Propagate charset conversion errors

See merge request GNOME/gtk!4943

3 years agotests: Check the error first
Matthias Clasen [Thu, 11 Aug 2022 11:18:39 +0000 (07:18 -0400)]
tests: Check the error first

The error contains useful information when
things fail, so check it first to get useful
output in case of failure.

3 years agocss: Propagate charset conversion errors
Matthias Clasen [Thu, 11 Aug 2022 11:17:55 +0000 (07:17 -0400)]
css: Propagate charset conversion errors

Lets not throw away informtation that
helps to figure out why things fail.

3 years agoMerge branch 'matthiasc/for-main' into 'main'
Matthias Clasen [Wed, 10 Aug 2022 17:57:55 +0000 (17:57 +0000)]
Merge branch 'matthiasc/for-main' into 'main'

jpeg loader: Limit memory consumption

See merge request GNOME/gtk!4942

3 years agojpeg loader: Limit memory consumption
Matthias Clasen [Wed, 10 Aug 2022 17:25:17 +0000 (13:25 -0400)]
jpeg loader: Limit memory consumption

This will prevent stupid oom situations with pathological
jpeg files, without affecting our ability to load reasonable
images.

3 years agoMerge branch 'jx/hi-res-scrolling' into 'main'
Matthias Clasen [Wed, 10 Aug 2022 16:51:55 +0000 (16:51 +0000)]
Merge branch 'jx/hi-res-scrolling' into 'main'

High-resolution scroll wheel support

See merge request GNOME/gtk!3839

3 years agoci: Disable -Werror on wayland submodule
Carlos Garnacho [Wed, 10 Aug 2022 14:35:28 +0000 (16:35 +0200)]
ci: Disable -Werror on wayland submodule

CI is mostly interested in GTK not introducing compiler warnings, other
submodules like Wayland might have their own and that shouldn't hinder
CI testing of GTK.

Disable -Werror for the wayland submodule, and let it be fixed independently
at some point.

3 years agogtkeventcontrollerscroll: Always accumulate discrete deltas
José Expósito [Mon, 20 Sep 2021 18:00:04 +0000 (20:00 +0200)]
gtkeventcontrollerscroll: Always accumulate discrete deltas

When GTK_EVENT_CONTROLLER_SCROLL_DISCRETE is set, accumulate deltas also
for mouse scroll so a high-resolution mouse wheel click behaves in the
in the same manner as a low-resolution mouse wheel click.

3 years agogdk/x11: Handle high-resolution scroll events
José Expósito [Mon, 20 Sep 2021 18:00:04 +0000 (20:00 +0200)]
gdk/x11: Handle high-resolution scroll events

3 years agogdk/wayland: Handle high-resolution scroll events
José Expósito [Mon, 20 Sep 2021 17:59:58 +0000 (19:59 +0200)]
gdk/wayland: Handle high-resolution scroll events

Starting with the Wayland protocol wl_pointer >= 8, discrete axis
events have been deprecated in favour of high-resolution scroll event.

Add a listener for high-resolution scroll events and, for backwards
compatibility, handle discrete events as discrete*120.

3 years agogdk/wayland: Calculate discrete scroll direction in its helper
José Expósito [Mon, 20 Sep 2021 17:59:52 +0000 (19:59 +0200)]
gdk/wayland: Calculate discrete scroll direction in its helper

Refactor, no functional changes.

3 years agogdk/events: Set discrete scroll deltas in its constructor
José Expósito [Mon, 20 Sep 2021 17:59:45 +0000 (19:59 +0200)]
gdk/events: Set discrete scroll deltas in its constructor

Instead of calculating the discrete scroll deltas in
GtkEventControllerScroll, move that code to the event constructor and
access the precalculated values using gdk_scroll_event_get_deltas.

Refactor, no functional changes.

3 years agogdk/events: Add constructor for high-resolution scroll events
José Expósito [Mon, 20 Sep 2021 17:59:35 +0000 (19:59 +0200)]
gdk/events: Add constructor for high-resolution scroll events

Starting with Linux Kernel v5.0 two new axes are available for
mice that support high-resolution wheel scrolling: REL_WHEEL_HI_RES and
REL_HWHEEL_HI_RES.

Both axes send data in fractions of 120 where each multiple of 120
amounts to one logical scroll event. Fractions of 120 indicate a wheel
movement less than one detent.

The 120 magic number is a copy of the Windows API, so this new
constructor can be used both in Linux >= 5.0 and Windows >= Vista.

3 years agobuild: Update Wayland to >= 1.21.0
José Expósito [Mon, 18 Jul 2022 17:04:10 +0000 (19:04 +0200)]
build: Update Wayland to >= 1.21.0

3 years agoUpdate Catalan translation
Jordi Mas [Wed, 10 Aug 2022 12:27:44 +0000 (14:27 +0200)]
Update Catalan translation

3 years agoMerge branch 'rounded-clip-node-new-transfer-full' into 'main'
Emmanuele Bassi [Wed, 10 Aug 2022 09:23:02 +0000 (09:23 +0000)]
Merge branch 'rounded-clip-node-new-transfer-full' into 'main'

Mark gsk_rounded_clip_node_new() return value as (transfer full)

See merge request GNOME/gtk!4941

3 years agoMark gsk_rounded_clip_node_new() return value as (transfer full)
Sebastian Dröge [Wed, 10 Aug 2022 08:07:51 +0000 (11:07 +0300)]
Mark gsk_rounded_clip_node_new() return value as (transfer full)

Like all the other constructors for nodes already do. Without this,
newly created rounded clip nodes are leaked in bindings.