Matthias Clasen [Sun, 25 Sep 2022 17:24:53 +0000 (17:24 +0000)]
Merge branch 'bump-meson-req' into 'main'
Bump the meson requirement
See merge request GNOME/gtk!5051
Piotr Drąg [Sun, 25 Sep 2022 12:10:28 +0000 (14:10 +0200)]
Update POTFILES.in
Matthias Clasen [Sun, 25 Sep 2022 01:22:26 +0000 (21:22 -0400)]
gtk: Use gnome.mkenums_simple
This lets us avoid template files, and works just as well.
Matthias Clasen [Sun, 25 Sep 2022 00:41:09 +0000 (20:41 -0400)]
gdk: Use gnome.mkenums_simple
This lets us avoid template files, and works just as well.
Matthias Clasen [Sun, 25 Sep 2022 00:07:03 +0000 (20:07 -0400)]
Bump the meson requirement
GLib requires meson 0.60 nowadays, and it does not
make much sense for us to support an older meson.
Matthias Clasen [Sat, 24 Sep 2022 14:23:39 +0000 (14:23 +0000)]
Merge branch 'header-cleanup' into 'main'
Header cleanup
See merge request GNOME/gtk!5049
Matthias Clasen [Sat, 24 Sep 2022 13:23:18 +0000 (09:23 -0400)]
gdk: Rename gdkpixbuf-drawable.c
There is nothing particularly specific to drawables
in there (and we don't have that concept anymore),
so just name the source file to match the header.
Easier for everybody.
Matthias Clasen [Sat, 24 Sep 2022 13:20:12 +0000 (09:20 -0400)]
gdk: Tweaks to keyname handling
Rename the private header to follow our naming
conventions, and drop the extra gdkkeys.c file.
Matthias Clasen [Sat, 24 Sep 2022 13:07:56 +0000 (09:07 -0400)]
Drop gtkintl.h
Include gtkprivate.h for I_() and glib-i18n.h for
gettext macros.
Matthias Clasen [Sat, 24 Sep 2022 03:33:42 +0000 (23:33 -0400)]
Drop gdkintl.h
This header was merely including gi18n-lib.h.
Just do that directly.
Matthias Clasen [Sat, 24 Sep 2022 03:23:27 +0000 (23:23 -0400)]
Rename gdk-private.h to gdkprivate.h
The extra - does not add any value.
Matthias Clasen [Sat, 24 Sep 2022 03:14:08 +0000 (23:14 -0400)]
Rename gdkconstructor.h to gdkconstructorprivate.h
This is the naming convention for private headers.
Matthias Clasen [Sat, 24 Sep 2022 03:11:41 +0000 (23:11 -0400)]
Rename gdkdebug.h to gdkdebugprivate.h
This is the naming convention for private headers.
Matthias Clasen [Sat, 24 Sep 2022 01:54:15 +0000 (21:54 -0400)]
gtk: Dissolve gtk-autocleanup.h
Move the autocleanup declarations into their
respective headers.
Matthias Clasen [Fri, 23 Sep 2022 23:40:42 +0000 (19:40 -0400)]
gsk: Dissolve gsk-autocleanup.h
Move the autocleanup declarations into their
respective headers.
Matthias Clasen [Fri, 23 Sep 2022 23:08:25 +0000 (19:08 -0400)]
gdk: Dissolve gdk-autocleanup.h
Move the autocleanup declarations into their
respective headers.
While we are at it, correct the autocleanup
declaration for GdkEvent to use gdk_event_unref,
not g_object_unref. Oops
Matthias Clasen [Fri, 23 Sep 2022 23:06:47 +0000 (23:06 +0000)]
Merge branch 'debug-envvars-cleanup' into 'main'
Clean up debug env vars
See merge request GNOME/gtk!5044
Matthias Clasen [Fri, 23 Sep 2022 22:51:46 +0000 (18:51 -0400)]
gtk: Remove old debug macros
These are no longer used.
Matthias Clasen [Fri, 23 Sep 2022 14:11:59 +0000 (10:11 -0400)]
gtk: Use the new debug macros
Matthias Clasen [Fri, 23 Sep 2022 14:10:51 +0000 (10:10 -0400)]
gtk: Introduce new debug macros
Introduce GTK_DISPLAY_DEBUG() and GTK_DEBUG(), which
mirror the new macros in gdk. They use the same helper
function gdk_debug_message().
Matthias Clasen [Fri, 23 Sep 2022 17:12:41 +0000 (13:12 -0400)]
tests: Rewrite the icontheme tests
The lookup order tests were relying on out
debug spew using g_log, so they can redirect
the output by setting a log writer function.
Rewrite this to use g_test_subprocess() and
parse stderr.
Matthias Clasen [Fri, 23 Sep 2022 01:45:39 +0000 (21:45 -0400)]
gsk: drop old debug macros
These are no longer used.
Matthias Clasen [Fri, 23 Sep 2022 01:36:50 +0000 (21:36 -0400)]
gsk: Use the new debug macros
Matthias Clasen [Fri, 23 Sep 2022 01:35:24 +0000 (21:35 -0400)]
gsk: Introduce new debug macros
Introduce GSK_RENDERER_DEBUG() and GSK_DEBUG(), which
mirror the new macros in gdk. They use the same helper
function gdk_debug_message().
Matthias Clasen [Fri, 23 Sep 2022 14:32:07 +0000 (10:32 -0400)]
gdk: Drop old debug macros
Drop the old GDK_NOTE() and GDK_DISPLAY_NOTE()
macros from gdkdebug.h. Reintroduce them in the
win32 backend, where they are still used.
Matthias Clasen [Fri, 23 Sep 2022 01:32:54 +0000 (21:32 -0400)]
macos: Use the new debug macros
Matthias Clasen [Fri, 23 Sep 2022 01:34:04 +0000 (21:34 -0400)]
x11: Use the new debug macros
Matthias Clasen [Fri, 23 Sep 2022 00:50:05 +0000 (20:50 -0400)]
wayland: Use the new debug macros
Matthias Clasen [Fri, 23 Sep 2022 00:49:16 +0000 (20:49 -0400)]
broadway: Use the new debug macros
Matthias Clasen [Fri, 23 Sep 2022 00:48:58 +0000 (20:48 -0400)]
gdk: Use the new debug macros
Matthias Clasen [Fri, 23 Sep 2022 00:47:09 +0000 (20:47 -0400)]
Introduce new debug macros
Introduce GDK_DISPLAY_DEBUG() and GDK_DEBUG() and
the helper function gdk_debug_message(). This is
meant to clean up the mess of our current debug
statements which wildly mix g_message, g_print
and g_printerr.
Matthias Clasen [Fri, 23 Sep 2022 17:27:08 +0000 (17:27 +0000)]
Merge branch 'wip/jimmac/backdrop-titles' into 'main'
theme: tone down unfocused title labels
Closes #4468
See merge request GNOME/gtk!5047
Jakub Steiner [Fri, 23 Sep 2022 15:01:24 +0000 (17:01 +0200)]
theme: tone down unfocused title labels
- mimic libadwaita in toning down unfocused titles. Cargo culting the
filter instead of using normal opacity property.
Fixes https://gitlab.gnome.org/GNOME/gtk/-/issues/4468
Matthias Clasen [Fri, 23 Sep 2022 14:37:58 +0000 (14:37 +0000)]
Merge branch 'wip/carlosg/touchpad-gestures-matching-fingers' into 'main'
gtkgesture: Do not update gestures with mismatching n-points on touchpad
See merge request GNOME/gtk!5046
Marek Černocký [Fri, 23 Sep 2022 14:22:41 +0000 (16:22 +0200)]
Updated Czech translation
Carlos Garnacho [Fri, 23 Sep 2022 11:45:46 +0000 (13:45 +0200)]
gtkgesture: Do not update gestures with mismatching n-points on touchpad
Check that the touchpad gesture event has a matching number of fingers before
updating the GtkGesture point tracking, instead of afterwards. Avoids pointless
tracking of these touchpad events when we know beforehand that the gesture
will never be activated by the touchpad events.
Related: https://gitlab.gnome.org/GNOME/gtk/-/issues/5199
Marek Černocký [Fri, 23 Sep 2022 13:57:50 +0000 (15:57 +0200)]
Updated Czech translation
Matthias Clasen [Thu, 22 Sep 2022 01:59:33 +0000 (21:59 -0400)]
docs: Some updates
Make the section about environment variables match
current code.
Add a warning about env vars not being stable and
only for debugging.
Matthias Clasen [Thu, 22 Sep 2022 01:51:58 +0000 (21:51 -0400)]
Only print supported debug flags
It is a bit disorienting to print a lot of unavailable
debug flags, with some working ones mixed in. Just show
the ones that work.
Matthias Clasen [Thu, 22 Sep 2022 01:47:06 +0000 (21:47 -0400)]
Mark the invert-text-dir flag as always there
This flag works in non-debug builds too.
Matthias Clasen [Thu, 22 Sep 2022 01:28:47 +0000 (21:28 -0400)]
Make GL flavor flags always available
No need to restrict this to debug builds.
Matthias Clasen [Thu, 22 Sep 2022 01:17:16 +0000 (21:17 -0400)]
Make the gl-debug debug flag always available
No need to restrict this to debug builds.
Matthias Clasen [Thu, 22 Sep 2022 01:12:22 +0000 (21:12 -0400)]
Make the gl-gles debug flag always available
No need to restrict this to debug builds.
Matthias Clasen [Thu, 22 Sep 2022 01:09:08 +0000 (21:09 -0400)]
Make the gl-legacy debug flag always available
No need to restrict this to debug builds.
Matthias Clasen [Thu, 22 Sep 2022 01:05:25 +0000 (21:05 -0400)]
Drop the gl-texture-rect debug flag
This was not doing anything.
Matthias Clasen [Thu, 22 Sep 2022 01:03:40 +0000 (21:03 -0400)]
Drop the software-gl debug flag
This was not doing anything.
Matthias Clasen [Thu, 22 Sep 2022 00:57:22 +0000 (20:57 -0400)]
Make the gl-disable flag always available
No need to restrict this to debug builds.
Matthias Clasen [Thu, 22 Sep 2022 00:55:46 +0000 (20:55 -0400)]
Make the portals debug flag always available
No need to restrict this to debug builds.
Matthias Clasen [Thu, 22 Sep 2022 00:53:46 +0000 (20:53 -0400)]
Make the nograbs flag always available
No need to restrict this to debug builds.
Matthias Clasen [Thu, 22 Sep 2022 00:51:35 +0000 (20:51 -0400)]
Make vulkan-disable always available
There is no need to restrict this to debug builds.
Matthias Clasen [Thu, 22 Sep 2022 00:49:53 +0000 (20:49 -0400)]
Make vulkan-validate always available
There is no need to restrict this debug builds.
Matthias Clasen [Thu, 22 Sep 2022 00:47:26 +0000 (20:47 -0400)]
Fix high-depth handling
We mark this flag as always available, but we
were only checking it in debug builds.
Matthias Clasen [Thu, 22 Sep 2022 00:45:43 +0000 (20:45 -0400)]
Fix default-settings handling
This is meant to be always available, but we
were checking for debug in one place.
Emmanuele Bassi [Wed, 21 Sep 2022 21:06:23 +0000 (21:06 +0000)]
Merge branch 'windows-build-instructions-link' into 'main'
Update GTK on Windows link: use gtk.org, not wiki
See merge request GNOME/gtk!5043
Matthias Clasen [Wed, 21 Sep 2022 18:57:58 +0000 (18:57 +0000)]
Merge branch 'font-chooser-docs' into 'main'
fontchooser: Add some details to the docs
See merge request GNOME/gtk!5041
Mitchell Hentges [Wed, 21 Sep 2022 18:12:21 +0000 (20:12 +0200)]
Update GTK on Windows link: use gtk.org, not wiki
The old wiki page has a couple issues:
* It's out-of-date, not having any notes for GTK4 specifically,
and it doesn't link to `gvsbuild`, which (I believe) is
the current official (and best) way to build GTK with MSVC.
* It's "locked", so it's harder for contributors to update. This
is OK, except for one spicy detail:
* It's not clear how to contribute/report issues on the locked wiki
pages, so out-of-date information falls off the radar.
Regardless :) the gtk.org GTK for Windows docs are a much better
springboard, in my opinion.
Matthias Clasen [Wed, 21 Sep 2022 11:28:26 +0000 (07:28 -0400)]
fontchooser: Add some details to the docs
Matthias Clasen [Tue, 20 Sep 2022 10:58:45 +0000 (10:58 +0000)]
Merge branch 'cross-gi-docgen-detection' into 'main'
build: fix gi-docgen detection in cross builds
See merge request GNOME/gtk!5039
Michal Vasilek [Sun, 18 Sep 2022 18:48:21 +0000 (20:48 +0200)]
build: fix gi-docgen detection in cross builds
gi-docgen is supposed to be ran natively on the build machine, without
native: true dependency() searches for gi-docgen on the host system.
When it doesn't find it, it falls back to a subproject even if gi-docgen
is available on the build machine.
also make gtk_doc require introspection
Matej Urbančič [Mon, 19 Sep 2022 19:50:27 +0000 (19:50 +0000)]
Update Slovenian translation
Bruce Cowan [Mon, 19 Sep 2022 15:17:18 +0000 (15:17 +0000)]
Update British English translation
Matthias Clasen [Mon, 19 Sep 2022 13:55:10 +0000 (13:55 +0000)]
Merge branch 'wip/smcv/shifted-shortcuts' into 'main'
gdkevents: Don't ignore modifiers that are not currently active
Closes #5095
See merge request GNOME/gtk!5037
Matthias Clasen [Mon, 19 Sep 2022 13:30:22 +0000 (13:30 +0000)]
Merge branch 'wip/smcv/reliable-gresource' into 'main'
build: Use more conservative GResource embedding on non-x86_64
Closes #5107
See merge request GNOME/gtk!4956
Martin [Mon, 19 Sep 2022 08:38:02 +0000 (08:38 +0000)]
Update Slovenian translation
Sabri Ünal [Sun, 18 Sep 2022 08:21:42 +0000 (08:21 +0000)]
Update Turkish translation
Baurzhan Muftakhidinov [Sun, 18 Sep 2022 04:56:54 +0000 (04:56 +0000)]
Update Kazakh translation
Simon McVittie [Sat, 17 Sep 2022 20:50:38 +0000 (21:50 +0100)]
build: Use more conservative GResource embedding on non-x86_64
Doing clever things with objcopy is faster and seems to be reliable on
x86_64 Linux, but also doesn't work on all toolchains and architectures:
in particular, Debian has had trouble with this on arm and mips.
In a distro build environment where we are compiling all of GTK every
time, the cost of potentially unreliable builds is higher than the cost
of using slower but more conservative GResource embedding.
Resolves: https://gitlab.gnome.org/GNOME/gtk/-/issues/5107
Signed-off-by: Simon McVittie <smcv@debian.org>
Simon McVittie [Sat, 17 Sep 2022 17:53:00 +0000 (18:53 +0100)]
gdkevents: Don't ignore modifiers that are not currently active
The X11 backend can mark modifiers like Shift as consumed even if they
aren't actually active, which seems to be something to do with making
shortcuts like `<Control><Shift>plus` and `<Control>plus` work as
intended regardless of whether the plus symbol is obtained by pressing
Shift and a key (like `+/=` on American, British or French keyboards)
or not (like `*/+` on German keyboards).
However, this can go badly wrong when the modifier is *not* pressed.
For example, terminals normally have separate bindings for `<Control>c`
(send SIGINT) and `<Control><Shift>c` (copy). If we disregard the
consumed modifiers completely, when the X11 backend marks Shift as
consumed, pressing Ctrl+c would send SIGINT *and* copy to the clipboard,
which is not what was intended.
By masking out the members of `consumed` that are not in `state`, we
get the same interpretation for X11 and Wayland, and ensure that
keyboard shortcuts that explicitly mention Shift can only be triggered
while holding Shift. It continues to be possible to trigger keyboard
shortcuts that do not explicitly mention Shift (such as `<Control>plus`)
while holding Shift, if the backend reports Shift as having been
consumed in order to generate the plus keysym.
Resolves: https://gitlab.gnome.org/GNOME/gtk/-/issues/5095
Bug-Debian: https://bugs.debian.org/
1016927
Signed-off-by: Simon McVittie <smcv@debian.org>
Matthias Clasen [Fri, 16 Sep 2022 16:29:33 +0000 (12:29 -0400)]
4.8.1
Matthias Clasen [Fri, 16 Sep 2022 12:12:37 +0000 (12:12 +0000)]
Merge branch 'detect-stylus' into 'main'
Recognize "stylus" devices as GDK_SOURCE_PEN
Closes #4394
See merge request GNOME/gtk!4776
Matthias Clasen [Fri, 16 Sep 2022 00:35:13 +0000 (00:35 +0000)]
Merge branch 'fix-filetransfer-mimetype' into 'main'
portal: Use the right mimetype for file transfers
Closes #5182
See merge request GNOME/gtk!5033
Matthias Clasen [Thu, 15 Sep 2022 19:24:04 +0000 (19:24 +0000)]
Merge branch 'wip/abono/gtk-main-remove-condition' into 'main'
gtk/main: Remove condition that always evaluates TRUE
See merge request GNOME/gtk!5031
Matthias Clasen [Thu, 15 Sep 2022 18:55:55 +0000 (14:55 -0400)]
portal: Use the right mimetype for file transfers
The filetransfer protocol says to use
application/vnd.portal.filetransfer, but I used
application/vnd.portal.files when I implemented the
protocol. Oops.
This commit dds the correct mimetype, but we still
support the old one to preserve interoperatibility
with existing flatpaks using GTK 4.6.
Fixes: #5182
Alessandro Bono [Thu, 15 Sep 2022 14:44:44 +0000 (16:44 +0200)]
gtk/main: Remove condition that always evaluates TRUE
Benjamin Otte [Wed, 14 Sep 2022 18:48:11 +0000 (18:48 +0000)]
Merge branch 'wip/coreyberla/gridview-rubberband' into 'main'
gridview: Fix rubberbanding from negative x coordinates
Closes nautilus#2492
See merge request GNOME/gtk!5030
Corey Berla [Wed, 14 Sep 2022 18:27:13 +0000 (11:27 -0700)]
gridview: Fix rubberbanding from negative x coordinates
This is a follow-up to
1e9a36ffa8d198212cde130a021256fd142ba6c5. For GridView
we also need to make sure that we aren't rubberbanding below x=0 which
causes unexpected rubberbanding behavior.
Fixes: https://gitlab.gnome.org/GNOME/nautilus/-/issues/2492
Matthias Clasen [Tue, 13 Sep 2022 10:24:49 +0000 (10:24 +0000)]
Merge branch 'single-key-compose' into 'main'
input: Accept short compose sequences
Closes #5172
See merge request GNOME/gtk!5026
Matthias Clasen [Tue, 13 Sep 2022 02:21:39 +0000 (22:21 -0400)]
Add a test for short compose sequences
Add a table that has a short sequence
to verify that we can parse this.
Matthias Clasen [Tue, 13 Sep 2022 01:46:15 +0000 (21:46 -0400)]
Update test results
The table sizes change, even though none of our
test tables include short sequences.
Matthias Clasen [Tue, 13 Sep 2022 02:05:07 +0000 (22:05 -0400)]
Regenerate builtin sequences
The table format has changed.
Matthias Clasen [Tue, 13 Sep 2022 01:45:49 +0000 (21:45 -0400)]
input: Accept short compose sequences
Some of the X keyboard layouts use compose
sequences of length one to make individual
keys generate multiple Unicode characters.
To support this use case, change the index
part of the table format to also include
an offset for length 1. Bump the table
version to indicate this change.
Fixes: #5172
Matthias Clasen [Mon, 12 Sep 2022 16:01:30 +0000 (12:01 -0400)]
Cosmetics: Fix a typo
Boyuan Yang [Sun, 11 Sep 2022 19:24:40 +0000 (19:24 +0000)]
Update Chinese (China) translation
Jordi Mas [Sun, 11 Sep 2022 12:32:27 +0000 (14:32 +0200)]
Update Catalan translation
Matthias Clasen [Sat, 10 Sep 2022 20:09:28 +0000 (20:09 +0000)]
Merge branch 'misc-gl-fixes' into 'main'
gsk: Make glyph upload more similar to icons
See merge request GNOME/gtk!4074
Matthias Clasen [Fri, 8 Oct 2021 08:14:19 +0000 (10:14 +0200)]
gsk: Make glyph upload more similar to icons
When uploading glyphs to the atlas, clear
the padding bytes so that no dirt remains there.
Matthias Clasen [Sat, 10 Sep 2022 18:51:14 +0000 (18:51 +0000)]
Merge branch 'matthiasc/for-main' into 'main'
clang-format: This did not work
See merge request GNOME/gtk!5021
Matthias Clasen [Sat, 10 Sep 2022 18:35:40 +0000 (14:35 -0400)]
clang-format: This did not work
I thought AlignConsecutiveDeclarations would
align function parameters, but it doesn't.
So drop it again.
Cheng-Chia Tseng [Sat, 10 Sep 2022 09:09:29 +0000 (09:09 +0000)]
Update Chinese (Taiwan) translation
Matthias Clasen [Sat, 10 Sep 2022 00:32:45 +0000 (00:32 +0000)]
Merge branch 'game-sounds' into 'main'
gtk-demo: Make losing games hurt
See merge request GNOME/gtk!5017
Emmanuele Bassi [Sat, 10 Sep 2022 00:04:03 +0000 (00:04 +0000)]
Merge branch 'a11y-state-changes' into 'main'
a11y: Be safe against state type changes
See merge request GNOME/gtk!5018
Matthias Clasen [Sat, 10 Sep 2022 00:02:41 +0000 (00:02 +0000)]
Merge branch 'less-fetching-in-ci' into 'main'
ci: Improve style check script
See merge request GNOME/gtk!5020
Matthias Clasen [Fri, 9 Sep 2022 23:59:49 +0000 (23:59 +0000)]
Merge branch 'clang-format-improvement' into 'main'
ci: Improve clang-format style
See merge request GNOME/gtk!3770
Matthias Clasen [Mon, 19 Jul 2021 19:53:37 +0000 (15:53 -0400)]
ci: Improve clang-format style
Add
AlignConsecutiveDeclarations: true
PointerAlignment: Right
which will produce the style we want with llvm 13.
Matthias Clasen [Fri, 9 Sep 2022 23:41:42 +0000 (19:41 -0400)]
ci: Improve style check script
Only fetch the two branches we are about to
compare, and use existing git merge-base to
find the common ancestor.
Emmanuele Bassi [Fri, 9 Sep 2022 23:30:38 +0000 (23:30 +0000)]
Merge branch 'ebassi/style-check' into 'main'
ci: Re-sync the style check with GLib
See merge request GNOME/gtk!5019
Matthias Clasen [Fri, 9 Sep 2022 23:03:43 +0000 (19:03 -0400)]
ci: Fix the git usage in scripts
Thanks, git.
Emmanuele Bassi [Fri, 9 Sep 2022 22:39:20 +0000 (23:39 +0100)]
ci: Move style check to its own stage
Drop the `.pre` phase.
Emmanuele Bassi [Fri, 9 Sep 2022 22:19:04 +0000 (23:19 +0100)]
ci: Re-sync the style check with GLib
Matthias Clasen [Fri, 9 Sep 2022 20:06:02 +0000 (16:06 -0400)]
a11y: Be safe against state type changes
For some of the a11y states, calling gtk_accessible_reset_state
can change the type of the state value from boolean or tristate
to undefined.
Handle that, instead of throwing criticals.
Related: !4910