gtk4.git
4 years agowindow: Make resizeability changes work
Matthias Clasen [Thu, 19 Aug 2021 20:03:58 +0000 (16:03 -0400)]
window: Make resizeability changes work

We were forgetting to update the toplevel
properties here.

4 years agoUpdates
Matthias Clasen [Thu, 19 Aug 2021 05:47:43 +0000 (01:47 -0400)]
Updates

4 years agoMerge branch 'better-word-selection' into 'master'
Matthias Clasen [Thu, 19 Aug 2021 04:51:11 +0000 (04:51 +0000)]
Merge branch 'better-word-selection' into 'master'

textview: Improve word selection

Closes #4177

See merge request GNOME/gtk!3855

4 years agotextview: Improve word selection
Matthias Clasen [Thu, 19 Aug 2021 04:33:03 +0000 (00:33 -0400)]
textview: Improve word selection

Avoid selecting a whole extra paragraph when a select-by-words
selection is extended beyond the end of the previous paragraph.

Fixes: #4177
4 years agoMerge branch 'matthiasc/for-master' into 'master'
Matthias Clasen [Thu, 19 Aug 2021 02:49:23 +0000 (02:49 +0000)]
Merge branch 'matthiasc/for-master' into 'master'

Cosmetics

See merge request GNOME/gtk!3854

4 years agoCosmetics
Matthias Clasen [Thu, 19 Aug 2021 02:33:23 +0000 (22:33 -0400)]
Cosmetics

4 years agoMerge branch 'wip/otte/for-master' into 'master'
Benjamin Otte [Thu, 19 Aug 2021 01:42:26 +0000 (01:42 +0000)]
Merge branch 'wip/otte/for-master' into 'master'

demo: Add a dnd special-case for textures

See merge request GNOME/gtk!3853

4 years agogtk-demo: Make clipboard demo paste from clipboard
Benjamin Otte [Thu, 19 Aug 2021 01:14:59 +0000 (03:14 +0200)]
gtk-demo: Make clipboard demo paste from clipboard

The old code was just pasting local clipboard data that we put there
ourselves and was causing criticals on remote clipboard data. Now the
code does the proper async paste.

4 years agocontentprovider: Switch wrong order in type check
Benjamin Otte [Thu, 19 Aug 2021 01:14:24 +0000 (03:14 +0200)]
contentprovider: Switch wrong order in type check

We can provide textures as a paintable - we can't provide paintables as
textures.

4 years agodemo: Add a dnd special-case for textures
Benjamin Otte [Thu, 19 Aug 2021 00:15:59 +0000 (02:15 +0200)]
demo: Add a dnd special-case for textures

If the DND/clipboard machinery knows a texture is a texture, it will try
to serialize it. Paintables can't be serialized, so it wouldn't try.

4 years agoMerge branch 'matthiasc/for-master' into 'master'
Matthias Clasen [Wed, 18 Aug 2021 22:05:07 +0000 (22:05 +0000)]
Merge branch 'matthiasc/for-master' into 'master'

infobar: Update buildable docs

Closes #4164

See merge request GNOME/gtk!3852

4 years agoinfobar: Update buildable docs
Matthias Clasen [Wed, 18 Aug 2021 21:42:54 +0000 (17:42 -0400)]
infobar: Update buildable docs

Document the current state of GtkBuilder support in
GtkInfoBar, not what we had in GTK3.

Fixes: #4164
4 years agoMerge branch 'seat-v7' into 'master'
Matthias Clasen [Wed, 18 Aug 2021 21:10:30 +0000 (21:10 +0000)]
Merge branch 'seat-v7' into 'master'

gdk/wayland: add support for wl_seat version 7

See merge request GNOME/gtk!3842

4 years agoMerge branch 'fix/wm_class2' into 'master'
Matthias Clasen [Wed, 18 Aug 2021 18:24:37 +0000 (18:24 +0000)]
Merge branch 'fix/wm_class2' into 'master'

x11: ensure WM class is not null even if display is initialized early

See merge request GNOME/gtk!3808

4 years agoMerge branch 'win32-drop-local-dnd' into 'master'
Benjamin Otte [Wed, 18 Aug 2021 14:27:14 +0000 (14:27 +0000)]
Merge branch 'win32-drop-local-dnd' into 'master'

gdk/win32: Drop local DnD protocol

See merge request GNOME/gtk!3830

4 years agoMerge branch 'win32-check-shader-support' into 'master'
Matthias Clasen [Wed, 18 Aug 2021 12:19:57 +0000 (12:19 +0000)]
Merge branch 'win32-check-shader-support' into 'master'

GDK-Win32: Reject GL context if shaders aren't supported (fix issue #4165)

Closes #4165

See merge request GNOME/gtk!3850

4 years agoMerge branch 'master' into 'master'
Matthias Clasen [Wed, 18 Aug 2021 12:00:41 +0000 (12:00 +0000)]
Merge branch 'master' into 'master'

gtkbuilderparser: Fix duplicate object id detection

See merge request GNOME/gtk!3848

4 years agogtkbuilderparser: Fix duplicate object id detection
Ye Moran [Wed, 18 Aug 2021 12:00:40 +0000 (12:00 +0000)]
gtkbuilderparser: Fix duplicate object id detection

4 years agoMerge branch 'matthiasc/for-master' into 'master'
Matthias Clasen [Wed, 18 Aug 2021 03:24:41 +0000 (03:24 +0000)]
Merge branch 'matthiasc/for-master' into 'master'

Add a custom input test

See merge request GNOME/gtk!3851

4 years agoimcontext: Improve docs
Matthias Clasen [Wed, 18 Aug 2021 00:36:32 +0000 (20:36 -0400)]
imcontext: Improve docs

Add some more docs around GtkIMContext.

4 years agoAdd a custom input test
Matthias Clasen [Wed, 18 Aug 2021 01:55:33 +0000 (21:55 -0400)]
Add a custom input test

This shows the minimal work required to hook up an
im context to a custom widget.

4 years agoMerge branch 'wip/exalm/query-action-transfer' into 'master'
Emmanuele Bassi [Tue, 17 Aug 2021 17:56:40 +0000 (17:56 +0000)]
Merge branch 'wip/exalm/query-action-transfer' into 'master'

widget: Fix gtk_widget_class_query_action() annotations

See merge request GNOME/gtk!3843

4 years agoGDK-Win32: Reject WGL context if shaders aren't supported
Chun-wei Fan [Tue, 17 Aug 2021 07:13:38 +0000 (15:13 +0800)]
GDK-Win32: Reject WGL context if shaders aren't supported

When we initialize OpenGL, check whether we have OpenGL  2.0 or later; if not,
check whether we have the 'GL_ARB_shader_objects' extension, since we must be
able to support shaders if using OpenGL for GTK.

If we don't support shaders, as some Windows graphics drivers do not support
OpenGL adequately, notably older Intel drivers, reject and destroy the GL
context that we created, and so fallback to the Cairo GSK renderer, so that
things continue to run, albeit with an expected warning message that the GL
context cannot be realized.

Also, when we could not make the created dummy WGL context current during
initialization, make sure that we destroy the dummy WGL context as well.

Fixes issue #4165.

4 years agoMerge branch 'wip/otte/for-master' into 'master'
Benjamin Otte [Thu, 12 Aug 2021 12:36:28 +0000 (12:36 +0000)]
Merge branch 'wip/otte/for-master' into 'master'

gdk: Include Vulkan error code in vulkan_strerror()

See merge request GNOME/gtk!3844

4 years agogdk: Include Vulkan error code in vulkan_strerror()
Benjamin Otte [Thu, 12 Aug 2021 12:18:46 +0000 (14:18 +0200)]
gdk: Include Vulkan error code in vulkan_strerror()

4 years agogdk/wayland: add support for wl_seat version 7
Simon Ser [Wed, 11 Aug 2021 09:01:55 +0000 (11:01 +0200)]
gdk/wayland: add support for wl_seat version 7

Version 7 requires wl_keyboard keymaps to be mapped with
MAP_PRIVATE, so that the compositor can share the same keymap
file between multiple clients.

4 years agogdk/wayland: add support for wl_seat version 6
Simon Ser [Wed, 11 Aug 2021 08:59:35 +0000 (10:59 +0200)]
gdk/wayland: add support for wl_seat version 6

Version 6 adds two new wl_touch events, which can be ignored.

4 years agowidget: Fix gtk_widget_class_query_action() annotations
Alexander Mikhaylenko [Wed, 11 Aug 2021 09:33:38 +0000 (14:33 +0500)]
widget: Fix gtk_widget_class_query_action() annotations

Add transfer none on all out values as they aren't being copied.

4 years agoMerge branch 'matthiasc/for-master' into 'master'
Matthias Clasen [Tue, 10 Aug 2021 15:08:20 +0000 (15:08 +0000)]
Merge branch 'matthiasc/for-master' into 'master'

Handle the new line height pango attribute

See merge request GNOME/gtk!3840

4 years agoci: Add libjpeg-turbo-devel to the Fedora image
Matthias Clasen [Tue, 10 Aug 2021 12:13:57 +0000 (08:13 -0400)]
ci: Add libjpeg-turbo-devel to the Fedora image

This was getting downloaded from sourceforge every
time for the docs build, and that started failing.

4 years agoHandle the new line height pango attribute
Matthias Clasen [Sat, 7 Aug 2021 16:11:29 +0000 (12:11 -0400)]
Handle the new line height pango attribute

Update all the places where we switch over PangoAttributeType
to handle (and ignore, for now) the new line height attribute.

4 years agox11: ensure WM class is not null even if display is initialized early
Vincent Bernat [Sat, 31 Jul 2021 10:29:47 +0000 (12:29 +0200)]
x11: ensure WM class is not null even if display is initialized early

With gtkmm, when using `Application()`, the display is initialized
before we know the application name and therefore, the program class
associated to the display is NULL.

Instead of providing a default value, we set it equal to program name
when NULL. Moreover, we give up on capitalizing the class name to keep
the code super simple. Also, not using a capitalized name is
consistent with `gdk_x11_display_open()`. If someone has a good reason
to use a capitalized name, here is how to do it.

```c
  class_hint = XAllocClassHint ();
  class_hint->res_name = (char *) g_get_prgname ();
  if (display_x11->program_class)
    {
      class_hint->res_class = (char *) g_strdup (display_x11->program_class);
    }
  else if (class_hint->res_name && class_hint->res_name[0])
    {
      class_hint->res_class = (char *) g_strdup (class_hint->res_name);
      class_hint->res_class[0] = g_ascii_toupper (class_hint->res_class[0]);
    }
  XSetClassHint (xdisplay, impl->xid, class_hint);
  g_free (class_hint->res_class);
  XFree (class_hint);
```

Fix eff53c023a26 ("x11: set a default value for program_class")

4 years agoMerge branch 'callback-annotation-again' into 'master'
Matthias Clasen [Tue, 10 Aug 2021 01:16:56 +0000 (01:16 +0000)]
Merge branch 'callback-annotation-again' into 'master'

widget: Change callback scope

See merge request GNOME/gtk!3796

4 years agoMerge branch 'wip/otte/for-master' into 'master'
Benjamin Otte [Sun, 8 Aug 2021 01:09:31 +0000 (01:09 +0000)]
Merge branch 'wip/otte/for-master' into 'master'

ngl: Make current when unrealizing

See merge request GNOME/gtk!3835

4 years agongl: Make current when unrealizing
Benjamin Otte [Sun, 8 Aug 2021 00:17:08 +0000 (02:17 +0200)]
ngl: Make current when unrealizing

The profiler (at least) discards GL objects and we want to discard them
on the right context.

4 years agoMerge branch 'matthiasc/for-master' into 'master'
Matthias Clasen [Sat, 7 Aug 2021 22:48:32 +0000 (22:48 +0000)]
Merge branch 'matthiasc/for-master' into 'master'

Cosmetics: Tweak css parser error messages

See merge request GNOME/gtk!3834

4 years agoCosmetics: Tweak css parser error messages
Matthias Clasen [Sat, 7 Aug 2021 22:16:19 +0000 (18:16 -0400)]
Cosmetics: Tweak css parser error messages

These show up in tooltips, so they should a) be capitalized
and b) not end with a period.

4 years agoBelarusian translation: Remove broken translation string
Andre Klapper [Sat, 7 Aug 2021 17:09:15 +0000 (19:09 +0200)]
Belarusian translation: Remove broken translation string

4 years agoKhmer translation: Strip some invisible bytes from setting translations
Andre Klapper [Sat, 7 Aug 2021 17:08:31 +0000 (19:08 +0200)]
Khmer translation: Strip some invisible bytes from setting translations

4 years agoMerge branch 'matthiasc/for-master' into 'master'
Matthias Clasen [Sat, 7 Aug 2021 16:56:56 +0000 (16:56 +0000)]
Merge branch 'matthiasc/for-master' into 'master'

gtk-demo: Spruce up the hypertext demo

See merge request GNOME/gtk!3832

4 years agoUpdate Hebrew translation
Yaron Shahrabani [Sat, 7 Aug 2021 16:51:31 +0000 (16:51 +0000)]
Update Hebrew translation

(cherry picked from commit 11e6ce175166364f7c807764a8de8619b65da82a)

4 years agogtk-demo: Spruce up the hypertext demo
Matthias Clasen [Sat, 7 Aug 2021 16:08:29 +0000 (12:08 -0400)]
gtk-demo: Spruce up the hypertext demo

Use the newish allow-breaks pango attribute
to make the text break better.

4 years agoUpdate Persian translation
Danial Behzadi [Sat, 7 Aug 2021 14:48:55 +0000 (14:48 +0000)]
Update Persian translation

4 years agoUpdate Persian translation
Danial Behzadi [Sat, 7 Aug 2021 14:44:44 +0000 (14:44 +0000)]
Update Persian translation

(cherry picked from commit b467881274d4917fcc29ace6c699786ffa74e909)

4 years agoMerge branch 'wip/chergert/revert-top-margin' into 'master'
Matthias Clasen [Fri, 6 Aug 2021 13:13:21 +0000 (13:13 +0000)]
Merge branch 'wip/chergert/revert-top-margin' into 'master'

Revert "textview: fix yoffset position when top_margin is set"

See merge request GNOME/gtk!3828

4 years agogdk/win32: Drop local DnD protocol
Chun-wei Fan [Tue, 22 Jun 2021 09:55:47 +0000 (17:55 +0800)]
gdk/win32: Drop local DnD protocol

It is basically not used by default and is pretty much broken at this point, so
it's about time to drop it.

Let's focus on fixing the OLE2 DnD protocol.

4 years agoMerge branch 'matthiasc/for-master' into 'master'
Matthias Clasen [Thu, 5 Aug 2021 19:17:54 +0000 (19:17 +0000)]
Merge branch 'matthiasc/for-master' into 'master'

settings: Default gtk-split-cursor to FALSE

See merge request GNOME/gtk!3827

4 years agoRevert "textview: fix yoffset position when top_margin is set"
Christian Hergert [Thu, 5 Aug 2021 18:52:45 +0000 (11:52 -0700)]
Revert "textview: fix yoffset position when top_margin is set"

This reverts commit 908b1e5e1214afc01440bc07a8d937222f411f38.

This commit broke top-margin altogether.

4 years agoMerge branch 'matthiasc/for-master' into 'master'
Matthias Clasen [Thu, 5 Aug 2021 18:45:39 +0000 (18:45 +0000)]
Merge branch 'matthiasc/for-master' into 'master'

text: Move setup code out of a loop

See merge request GNOME/gtk!3826

4 years agosettings: Default gtk-split-cursor to FALSE
Matthias Clasen [Thu, 5 Aug 2021 18:05:28 +0000 (14:05 -0400)]
settings: Default gtk-split-cursor to FALSE

According to Owen, this was the intention when the setting
was added in 2001. It only took us 20 years to fix the
default value.

4 years agoci: Disable treeview-headers-hidden reftest
Matthias Clasen [Thu, 5 Aug 2021 16:41:04 +0000 (12:41 -0400)]
ci: Disable treeview-headers-hidden reftest

Somebody needs to figure out why it fails in ci so
frequently.

4 years agoMerge branch 'wip/exalm/shadow-extents' into 'master'
Matthias Clasen [Thu, 5 Aug 2021 16:39:52 +0000 (16:39 +0000)]
Merge branch 'wip/exalm/shadow-extents' into 'master'

Shrink shadow extents

See merge request GNOME/gtk!3825

4 years agotext: Move setup code out of a loop
Matthias Clasen [Thu, 5 Aug 2021 16:29:24 +0000 (12:29 -0400)]
text: Move setup code out of a loop

Just a cleanup, no functional change.

4 years agoMerge branch 'fix-tab-not-captured-in-popover' into 'master'
Matthias Clasen [Thu, 5 Aug 2021 02:07:43 +0000 (02:07 +0000)]
Merge branch 'fix-tab-not-captured-in-popover' into 'master'

popovermenu: Cycle around focus also with (Shift+)Tab

Closes #3915

See merge request GNOME/gtk!3732

4 years agopopover: Cycle around focus with (Shift+)Tab
vanadiae [Mon, 5 Jul 2021 17:33:08 +0000 (19:33 +0200)]
popover: Cycle around focus with (Shift+)Tab

Same thing as the previous popovermenu commit, except for the base popover
because the popovermenu needs special behaviour with e.g. sides arrow so
we need to have the "cycle around" for regular popovers here too.

4 years agopopovermenu: Cycle around focus also with (Shift+)Tab
vanadiae [Mon, 5 Jul 2021 17:20:58 +0000 (19:20 +0200)]
popovermenu: Cycle around focus also with (Shift+)Tab

Currently when moving the focus with (Shift+)Tab, it also traverses the window's
widgets, although it would be expected that the focus stays within the popover,
as it's (almost) like it's a separate window. This would be consistent with
the behaviour of the Up/down arrows, which do cycle around the focus once it
reaches the end.

So this commit makes the popovermenu cycle around focus in any direction, apart
from left/right because they are used to open and close submenus and it wouldn't
make sense anyway to cycle horizontally as there's usually only one widget per
line.

4 years agoShrink shadow extents
Alexander Mikhaylenko [Wed, 4 Aug 2021 09:24:35 +0000 (14:24 +0500)]
Shrink shadow extents

Long time ago, Cairo shadows in both GTK3 and 4 were drawn at a size about
twice their radius. Eventually this was fixed but the shadow extents are
still calculated for the previous size and appear unreasonably large: for
example, 141px for a 50px radius shadow. This can get very noticeable in
places such as invisible window frame which gets included into screenshots.

https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/3419 just divides the
radius by 2 when drawing a shadow with Cairo, do the same when calculating
extents.

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

4 years agoMerge branch 'combobox-keynav' into 'master'
Matthias Clasen [Tue, 3 Aug 2021 11:20:56 +0000 (11:20 +0000)]
Merge branch 'combobox-keynav' into 'master'

treepopover: Add keynav

See merge request GNOME/gtk!3822

4 years agotreepopover: Start adding keynav
Matthias Clasen [Tue, 3 Aug 2021 03:49:05 +0000 (23:49 -0400)]
treepopover: Start adding keynav

Arrange for the items to be focusable, and add keyboard
activation. Still missing: cycling focus inside the
popover.

4 years agoMerge branch 'big-keysyms' into 'master'
Matthias Clasen [Tue, 3 Aug 2021 01:05:16 +0000 (01:05 +0000)]
Merge branch 'big-keysyms' into 'master'

imcontext: Treat keysyms as 32bit values

Closes #4149

See merge request GNOME/gtk!3819

4 years agoMerge branch 'surround-test' into 'master'
Matthias Clasen [Tue, 3 Aug 2021 01:00:13 +0000 (01:00 +0000)]
Merge branch 'surround-test' into 'master'

Remove an unimplemented function

Closes #4151

See merge request GNOME/gtk!3820

4 years agoAdd some GtkIMContext tests
Matthias Clasen [Tue, 3 Aug 2021 00:42:01 +0000 (20:42 -0400)]
Add some GtkIMContext tests

For now, these check that the surrounding handling
in GtkText and GtkTextView is sane.

Fixes: #4151
4 years agotextview: Fix the get_surrounding implementation
Matthias Clasen [Tue, 3 Aug 2021 00:16:50 +0000 (20:16 -0400)]
textview: Fix the get_surrounding implementation

This was, sadly, returning garbage.

4 years agoAdd a private getter for the textview key controller
Matthias Clasen [Tue, 3 Aug 2021 00:16:23 +0000 (20:16 -0400)]
Add a private getter for the textview key controller

This will be used in tests.

4 years agoRemove an unimplemented function
Matthias Clasen [Mon, 2 Aug 2021 23:46:31 +0000 (19:46 -0400)]
Remove an unimplemented function

_gtk_entry_get_im_context does not exist.

4 years agoimcontext: Treat keysyms as 32bit values
Matthias Clasen [Mon, 2 Aug 2021 23:15:16 +0000 (19:15 -0400)]
imcontext: Treat keysyms as 32bit values

Our compose table format is still limited to 16bit
values for keysyms, but what we see in key events
can be 32bit values, and we treat them as such now.

Fixes: #4149
4 years agoMerge branch 'fix-custom-widget-menu-focus' into 'master'
Matthias Clasen [Mon, 2 Aug 2021 22:21:08 +0000 (22:21 +0000)]
Merge branch 'fix-custom-widget-menu-focus' into 'master'

menusectionbox: Passthrough the focus function of custom widgets' gizmo

Closes gnome-text-editor#93

See merge request GNOME/gtk!3817

4 years agoMerge branch 'wip/otte/for-master' into 'master'
Matthias Clasen [Mon, 2 Aug 2021 22:19:39 +0000 (22:19 +0000)]
Merge branch 'wip/otte/for-master' into 'master'

video: Use cross-fade transition to avoid resizes

See merge request GNOME/gtk!3815

4 years agoMerge branch 'fix-4144' into 'master'
Matthias Clasen [Mon, 2 Aug 2021 22:17:20 +0000 (22:17 +0000)]
Merge branch 'fix-4144' into 'master'

gtkgesturerotate: Fix assertion

Closes #4144

See merge request GNOME/gtk!3818

4 years agogtkgesturerotate: Fix assertion
James Westman [Mon, 2 Aug 2021 21:38:11 +0000 (16:38 -0500)]
gtkgesturerotate: Fix assertion

Fixes #4144. An assertion would be printed when GtkGestureRotate was
used with a touchscreen.

4 years agomenusectionbox: Passthrough the focus function of custom widgets' gizmo
vanadiae [Mon, 2 Aug 2021 19:20:32 +0000 (21:20 +0200)]
menusectionbox: Passthrough the focus function of custom widgets' gizmo

It broke keyboard focusing any widget added through the custom widget
menu feature. So for example if you put e.g. a custom check box widget
in a menu, you won't be able to focus it.

This is because the gizmo is mostly used to custom drawing with e.g.
CSS for small visual elements like scale markers. That's probably why
gizmo's default focus overrides block the focus from going through
the children. So this commit fixes it by overriding those and passing
the focus through the children.

4 years agovideo: Use cross-fade transition to avoid resizes
Benjamin Otte [Mon, 2 Aug 2021 18:11:32 +0000 (20:11 +0200)]
video: Use cross-fade transition to avoid resizes

Slide animations cause changes in the size requests due to the
behavior of GtkRevealer. We can avoid those by using cross-fades, which
don't have that problem.

Besides, cross-fades look better anyway.

4 years agoMerge branch 'input-tweaks' into 'master'
Matthias Clasen [Mon, 2 Aug 2021 18:07:46 +0000 (18:07 +0000)]
Merge branch 'input-tweaks' into 'master'

imcontext: Tweak Compose sequence preedit

Closes #10, #4127, and #4124

See merge request GNOME/gtk!3799

4 years agoMerge branch 'fix-double-underscore-mnemonic' into 'master'
Matthias Clasen [Mon, 2 Aug 2021 03:54:29 +0000 (03:54 +0000)]
Merge branch 'fix-double-underscore-mnemonic' into 'master'

label: Ignore __ for mnemonics

Closes #4129

See merge request GNOME/gtk!3814

4 years agoAvoid pango deprecations
Matthias Clasen [Mon, 2 Aug 2021 02:43:43 +0000 (22:43 -0400)]
Avoid pango deprecations

This function has been deprecated on the main
branch of pango. Since we don't want to bump our
pango dependency to 1.49 yet, ignore the deprecation.

4 years agoAdd more label parsing tests
Matthias Clasen [Mon, 2 Aug 2021 03:18:27 +0000 (23:18 -0400)]
Add more label parsing tests

Test various combinations of underline and markup
parsing.

4 years agolabel: Ignore __ for mnemonics
Matthias Clasen [Mon, 2 Aug 2021 02:14:12 +0000 (22:14 -0400)]
label: Ignore __ for mnemonics

We were not ignoring double underscores for mnemonics
in one place, as we should.

Fixes: #4129
4 years agoMerge branch 'titlebar-gesture' into 'master'
Matthias Clasen [Mon, 2 Aug 2021 01:14:08 +0000 (01:14 +0000)]
Merge branch 'titlebar-gesture' into 'master'

Delegate titlebar action to the compositor if possible

See merge request GNOME/gtk!3797

4 years agoUpdate Polish translation
Piotr Drąg [Sun, 1 Aug 2021 12:21:25 +0000 (14:21 +0200)]
Update Polish translation

4 years agoMerge branch 'color-glyph-fixes' into 'master'
Matthias Clasen [Sat, 31 Jul 2021 20:54:39 +0000 (20:54 +0000)]
Merge branch 'color-glyph-fixes' into 'master'

gsk: Make color glyphs

Closes #4141

See merge request GNOME/gtk!3812

4 years agoMerge branch 'fix-iconhelper' into 'master'
Matthias Clasen [Sat, 31 Jul 2021 20:35:08 +0000 (20:35 +0000)]
Merge branch 'fix-iconhelper' into 'master'

iconhelper: Fix the paintable implementation

Closes #4140

See merge request GNOME/gtk!3809

4 years agogsk: Use harfbuzz for color fonts
Matthias Clasen [Sat, 31 Jul 2021 19:22:14 +0000 (15:22 -0400)]
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.

4 years agoBump the harfbuzz dep
Matthias Clasen [Sat, 31 Jul 2021 19:22:49 +0000 (15:22 -0400)]
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.

4 years agogsk: Cache per-glyph color information
Matthias Clasen [Sat, 31 Jul 2021 16:23:50 +0000 (12:23 -0400)]
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.

4 years agongl: Use per-glyph color information
Matthias Clasen [Sat, 31 Jul 2021 15:41:43 +0000 (11:41 -0400)]
ngl: Use per-glyph color information

Decide per-glyph whether we need color nor not.

Fixes: #4141
4 years agogsk: Mark color glyphs
Matthias Clasen [Sat, 31 Jul 2021 15:41:08 +0000 (11:41 -0400)]
gsk: Mark color glyphs

Steal a bit from PangoGlyphVisAttr to mark glyphs
that have color.

4 years agoMerge branch 'update-docs' into 'master'
Emmanuele Bassi [Sat, 31 Jul 2021 18:39:52 +0000 (18:39 +0000)]
Merge branch 'update-docs' into 'master'

docs: Update the URL for related documentation

See merge request GNOME/gtk!3813

4 years agodocs: Update the URLs of related projects for GTK
Emmanuele Bassi [Sat, 31 Jul 2021 18:08:34 +0000 (19:08 +0100)]
docs: Update the URLs of related projects for GTK

And install the gi-docgen project file as well.

4 years agodocs: Update the URLs of related projects for GSK
Emmanuele Bassi [Sat, 31 Jul 2021 18:07:18 +0000 (19:07 +0100)]
docs: Update the URLs of related projects for GSK

And install the gi-docgen project file.

4 years agodocs: Update the URL for related documentation
Emmanuele Bassi [Sat, 31 Jul 2021 18:05:33 +0000 (19:05 +0100)]
docs: Update the URL for related documentation

And install the gi-docgen project files for GDK.

4 years agoMerge branch 'docs-trigger' into 'master'
Emmanuele Bassi [Sat, 31 Jul 2021 17:16:26 +0000 (17:16 +0000)]
Merge branch 'docs-trigger' into 'master'

ci: Trigger a pages build

See merge request GNOME/gtk!3811

4 years agoci: Trigger a pages build
Emmanuele Bassi [Sat, 31 Jul 2021 16:08:56 +0000 (17:08 +0100)]
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.

4 years agoMerge branch 'iter-is-valid-docs' into 'master'
Emmanuele Bassi [Sat, 31 Jul 2021 13:07:07 +0000 (13:07 +0000)]
Merge branch 'iter-is-valid-docs' into 'master'

docs: Fix iter_is_valid() description

See merge request GNOME/gtk!3810

4 years agodocs: Fix iter_is_valid() description
Emmanuele Bassi [Sat, 31 Jul 2021 12:41:13 +0000 (13:41 +0100)]
docs: Fix iter_is_valid() description

Drop the "WARNING" and the block quote, and follow the existing
documentation style guidelines.

4 years agoiconhelper: Fix the paintable implementation
Matthias Clasen [Sat, 31 Jul 2021 11:46:54 +0000 (07:46 -0400)]
iconhelper: Fix the paintable implementation

get_current_image was recursing due to an obvious typo.

Fixes: #4140
4 years agoMerge branch 'glyph-cache-mystery' into 'master'
Matthias Clasen [Sat, 31 Jul 2021 00:38:41 +0000 (00:38 +0000)]
Merge branch 'glyph-cache-mystery' into 'master'

ngl: Bypass pango for glyph cache rendering

See merge request GNOME/gtk!3807

4 years agongl: Bypass pango for glyph cache rendering
Matthias Clasen [Fri, 30 Jul 2021 17:51:02 +0000 (13:51 -0400)]
ngl: Bypass pango for glyph cache rendering

We can just use cairo directly here,
and cut out some layers of pango in the middle.

4 years agoMerge branch 'check-activate' into 'master'
Matthias Clasen [Fri, 30 Jul 2021 23:39:17 +0000 (23:39 +0000)]
Merge branch 'check-activate' into 'master'

checkbutton: Some fixes when used with GActions

See merge request GNOME/gtk!3805

4 years agoMerge branch 'fix/wm_class' into 'master'
Matthias Clasen [Fri, 30 Jul 2021 23:25:08 +0000 (23:25 +0000)]
Merge branch 'fix/wm_class' into 'master'

x11: set a default value for program_class

Closes #4138

See merge request GNOME/gtk!3806

4 years agoMerge branch 'wip/otte/for-master' into 'master'
Matthias Clasen [Fri, 30 Jul 2021 22:43:29 +0000 (22:43 +0000)]
Merge branch 'wip/otte/for-master' into 'master'

widget-factory: Expand the video to cover the whole frame

See merge request GNOME/gtk!3804