Matthias Clasen
915c229396
gsk: Use harfbuzz for color fonts
...
harfbuzz has all the information we need, so we
can avoid poking directly at freetype apis. Also
drop the caching of color glyph information until
it turns out to be a problem.
2021-07-31 16:34:38 -04:00
Matthias Clasen
0bf46b4845
Bump the harfbuzz dep
...
We need 2.1.0, which has the hb_ot_color apis that we
are going to use in the next commit.
2021-07-31 16:34:38 -04:00
Matthias Clasen
a7a2dbc3ea
gsk: Cache per-glyph color information
...
We don't really want to load the bitmaps every time
we create a render node, so do it once and cache the
information on the PangoFont.
2021-07-31 16:34:38 -04:00
Matthias Clasen
7e8f586859
ngl: Use per-glyph color information
...
Decide per-glyph whether we need color nor not.
Fixes : #4141
2021-07-31 16:34:24 -04:00
Matthias Clasen
bb9dccd773
gsk: Mark color glyphs
...
Steal a bit from PangoGlyphVisAttr to mark glyphs
that have color.
2021-07-31 16:34:24 -04:00
Emmanuele Bassi
7b743e662e
Merge branch 'update-docs' into 'master'
...
docs: Update the URL for related documentation
See merge request GNOME/gtk!3813
2021-07-31 18:39:52 +00:00
Emmanuele Bassi
769dc53c05
docs: Update the URLs of related projects for GTK
...
And install the gi-docgen project file as well.
2021-07-31 19:08:34 +01:00
Emmanuele Bassi
1a4554daf3
docs: Update the URLs of related projects for GSK
...
And install the gi-docgen project file.
2021-07-31 19:07:18 +01:00
Emmanuele Bassi
6c0633ef61
docs: Update the URL for related documentation
...
And install the gi-docgen project files for GDK.
2021-07-31 19:05:33 +01:00
Emmanuele Bassi
4d020a3875
Merge branch 'docs-trigger' into 'master'
...
ci: Trigger a pages build
See merge request GNOME/gtk!3811
2021-07-31 17:16:26 +00:00
Emmanuele Bassi
316cc55e69
ci: Trigger a pages build
...
Do not publish the API reference directly, but trigger a CI pipeline for
the docs-gtk-org branch, which will then do the publishing.
2021-07-31 17:13:27 +01:00
Emmanuele Bassi
95f2634ea9
Merge branch 'iter-is-valid-docs' into 'master'
...
docs: Fix iter_is_valid() description
See merge request GNOME/gtk!3810
2021-07-31 13:07:07 +00:00
Emmanuele Bassi
95c032f531
docs: Fix iter_is_valid() description
...
Drop the "WARNING" and the block quote, and follow the existing
documentation style guidelines.
2021-07-31 13:41:13 +01:00
Matthias Clasen
744955753f
iconhelper: Fix the paintable implementation
...
get_current_image was recursing due to an obvious typo.
Fixes : #4140
2021-07-31 08:27:17 -04:00
Matthias Clasen
ae5e7dc65d
Merge branch 'glyph-cache-mystery' into 'master'
...
ngl: Bypass pango for glyph cache rendering
See merge request GNOME/gtk!3807
2021-07-31 00:38:41 +00:00
Matthias Clasen
ed41c46926
ngl: Bypass pango for glyph cache rendering
...
We can just use cairo directly here,
and cut out some layers of pango in the middle.
2021-07-30 19:46:07 -04:00
Matthias Clasen
a460fb2734
Merge branch 'check-activate' into 'master'
...
checkbutton: Some fixes when used with GActions
See merge request GNOME/gtk!3805
2021-07-30 23:39:17 +00:00
Matthias Clasen
39ddce6ba3
Merge branch 'fix/wm_class' into 'master'
...
x11: set a default value for program_class
Closes #4138
See merge request GNOME/gtk!3806
2021-07-30 23:25:08 +00:00
Matthias Clasen
8da7e3bdc3
Merge branch 'wip/otte/for-master' into 'master'
...
widget-factory: Expand the video to cover the whole frame
See merge request GNOME/gtk!3804
2021-07-30 22:43:29 +00:00
Vincent Bernat
eff53c023a
x11: set a default value for program_class
...
This was also the behaviour with GTK 3. We use the capitalized program
name.
Fixes #4138
Signed-off-by: Vincent Bernat <vincent@bernat.ch>
2021-07-30 23:22:32 +02:00
Benjamin Otte
99e4a6a2d6
widget-factory: Propagate natural size for text styles
...
This avoids them requiring scrolling.
2021-07-30 20:54:58 +02:00
Benjamin Otte
c06817b951
widget-factory: Make frames cooler
...
Instead of havoing a label for the video frame that clashes with the
background of the video, add a frame around the text styles box and add
a label for them. As a side benefit, it also makes it more obvious that
it is scrollable.
Note: Most of this patch is just reindenting.
2021-07-30 20:43:02 +02:00
Benjamin Otte
e765aaa3f4
widget-factory: Expand the video to cover the whole frame
...
1. This looks way cooler.
2. Since the frame is rounded, it adds a very visible test for our
clipping of rounded rectangles.
2021-07-30 20:37:34 +02:00
Florian Müllner
1728aa581c
checkbutton: Activate when moving focus
...
Currently we update the :active property on both the previous and
new focus button. That "visually activate" the button and will
emit ::toggled, but if the button is associated with an action,
the action state won't change.
Fix that by activating the new focus instead of explicitly fiddling
with the :active property.
2021-07-30 20:34:24 +02:00
Florian Müllner
c50475de34
checkbutton: Delegate ::activate to the helper if appropriate
...
If the button is associated with an action, the action is currently
only activated when the button is clicked, not when it is activated.
2021-07-30 20:34:24 +02:00
Mike Gorse
5d7ecb7a6e
a11y: Remove unneeded check
2021-07-30 08:58:27 -05:00
Matthias Clasen
06348a8517
Merge branch 'wip/chergert/fix-4134' into 'master'
...
textview: fix yoffset position when top_margin is set
Closes #4134
See merge request GNOME/gtk!3801
2021-07-30 13:41:30 +00:00
Matthias Clasen
c4dbb8f01e
imcontext: Code cleanup
2021-07-29 20:37:58 -04:00
Matthias Clasen
e67b2cb54b
composetable: Allow multiple dead keys
...
Remove the limitation on the number of dead keys
that we match, and allow the result be be multiple
characters.
Regenerate the builtin sequences, since this changes
what dead key sequences we can reproduce algorithmically.
Update tests to match.
Fixes : #10
2021-07-29 20:37:30 -04:00
Christian Hergert
908b1e5e12
textview: fix yoffset position when top_margin is set
...
This doesn't need to be included in the calculation or it will cause the
yoffset to continually shift while the window is resized.
Fixes #4134
2021-07-29 16:45:04 -07:00
Matthias Clasen
539391ce6c
composetable: Change an API
...
Make gtk_check_algorithmically take a GString
for the result. This is in preparation for allowing
multi-character results here, in the future.
Update all callers.
2021-07-29 17:29:25 -04:00
Mike Gorse
7fc90aed26
a11y: Send correct object reference for the root accessible
2021-07-29 15:55:58 -05:00
Florian Müllner
23e79d2eb2
gtk/windowhandle: Delegate titlebar action to the compositor if possible
...
Delegating the action to the compositor not only improves consistency
with server-side decorations, but also allows for actions that aren't
available client-side (like lower-in-middle-click).
https://gitlab.gnome.org/GNOME/mutter/-/issues/602
2021-07-29 21:39:32 +02:00
Florian Müllner
0c7b1431d7
gdk/toplevel: Add gdk_toplevel_titlebar_gesture()
...
Where supported, this allows delegating the titlebar action to the
compositor instead of trying to replicate its behavior client-side.
https://gitlab.gnome.org/GNOME/mutter/-/issues/602
2021-07-29 21:39:32 +02:00
Matthias Clasen
b6c0155836
imcontext: Handle Escape in Compose sequence
...
Treat Escape the same in hex sequences and in
Compose sequence: reset the state.
2021-07-29 08:39:17 -04:00
Matthias Clasen
76d67b586c
imcontext: Tweak Compose sequence handling
...
When we don't have any matches for a Compose sequence
anymore, beep, and keep the preedit as it was for the
last match.
Fixes : #4127
2021-07-29 08:24:14 -04:00
Matthias Clasen
914edb1472
composetable: Add a prefix api
...
Add a function that computes the longest prefix
of a buffer for which a compose table has matches.
2021-07-29 08:23:40 -04:00
Matthias Clasen
dbf5033f94
composetable: Reduce the scope of a variable
...
'prefix' is not a good name for a file-scope variable,
move it into the sole function using it.
2021-07-29 08:22:52 -04:00
Matthias Clasen
cc6ecc8b62
Merge branch 'source-static-name' into 'master'
...
Avoid copying static debug strings
See merge request GNOME/gtk!3789
2021-07-29 11:59:02 +00:00
Matthias Clasen
b7e6922605
imcontext: Tweak Compose sequence preedit
...
When sequences contain multiple Compose keys,
don't hide the first one. This is a very fringe
case, but it matches the behavior of IBus.
Fixes : #4124
2021-07-29 07:36:48 -04:00
Matthias Clasen
05eaffb9f2
ci: Collect tools test output
...
This should help understanding why some of them fail.
2021-07-28 22:42:46 -04:00
Matthias Clasen
67b568f464
testsuite: Set TEST_RESULT_DIR for tools tests
2021-07-28 22:42:46 -04:00
Matthias Clasen
19b534f7de
Avoid copying static debug strings
...
The g_source_set_name calls were showing up as a
major source of strdups in our profiles. Avoid that
by using new GLib api when available.
2021-07-28 22:42:46 -04:00
Florian Müllner
bc386c9a60
widget: Change callback scope
...
Look who changed his mind since commit 8e2ffb3b46
:-)
The "call" scope means that the callback is only used during the
function call itself (here: gtk_widget_class_install_action()).
That's clearly wrong here, as the callback is invoked every time
the action is activated.
Arguably the "notified" scope is a better match here, where the
lack of a GDestroyNotify parameter suggests that the callback may
be used forever (which is the case here).
Related: #3498
2021-07-28 21:48:01 +02:00
Matthias Clasen
db8b3419c2
Merge branch 'compose-parse-msvc' into 'master'
...
compose-parse.c: Include stdlib.h (fix build on Visual Studio)
See merge request GNOME/gtk!3794
2021-07-28 10:38:25 +00:00
Fabio Tomat
0f5ba5192a
Update Friulian translation
...
(cherry picked from commit 16aa8dbad7
)
2021-07-28 09:11:33 +00:00
Chun-wei Fan
108c423d70
compose-parse.c: Include stdlib.h
...
That is needed for exit(), and it may not have been included by the
other headers.
2021-07-28 15:18:36 +08:00
Emmanuele Bassi
dded10a396
Merge branch 'gi-fix' into 'master'
...
gdk: add missing Since annotation
See merge request GNOME/gtk!3790
2021-07-27 17:38:28 +00:00
Marc-André Lureau
1b080826db
gdk: add missing Since annotation
...
Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
2021-07-27 21:01:31 +04:00
Matthias Clasen
910f23ea19
Merge branch 'wip/otte/widgetfactory-dnd' into 'master'
...
Improve DND
See merge request GNOME/gtk!3785
2021-07-27 04:12:58 +00:00