gtk4.git
3 years agomacos: fix allocation for filechoosernative filter
Christian Hergert [Thu, 17 Feb 2022 20:39:21 +0000 (12:39 -0800)]
macos: fix allocation for filechoosernative filter

The GtkFileCHooserNativeQuartz injects a NSComboBox into the NSSavePanel
(which is displayed in a remote process since 10.15 whether or not you are
a sandboxed application). The style has changed and we need more space
here to not clip part of the combobox out of view.

I tried every size from 22 to 30 and this seemed to look the most natural
without skewing the location of the text within the combobox.

3 years agoMerge branch 'scale-button-empty-icon-list' into 'main'
Matthias Clasen [Tue, 22 Feb 2022 19:39:32 +0000 (19:39 +0000)]
Merge branch 'scale-button-empty-icon-list' into 'main'

Don't crash when updating the icon on a `GtkScaleButton` with a non-`NULL` empty icon list

See merge request GNOME/gtk!4475

3 years agoMerge branch 'wip/hadess/app-id-inspector-4' into 'main'
Matthias Clasen [Tue, 22 Feb 2022 19:37:36 +0000 (19:37 +0000)]
Merge branch 'wip/hadess/app-id-inspector-4' into 'main'

inspector: Show app ID and resource path in the General tab

See merge request GNOME/gtk!4493

3 years agoMerge branch 'wip/chergert/macos-fix-event-filter' into 'main'
Matthias Clasen [Tue, 22 Feb 2022 19:36:43 +0000 (19:36 +0000)]
Merge branch 'wip/chergert/macos-fix-event-filter' into 'main'

macos: improve event filtering for foreign panels

See merge request GNOME/gtk!4495

3 years agoMerge branch 'wip/chergert/macos-fix-fullscreen' into 'main'
Matthias Clasen [Tue, 22 Feb 2022 19:36:20 +0000 (19:36 +0000)]
Merge branch 'wip/chergert/macos-fix-fullscreen' into 'main'

macos: allow windows to enter fullscreen

See merge request GNOME/gtk!4494

3 years agoMerge branch 'optimise-png-premultiply' into 'main'
Matthias Clasen [Tue, 22 Feb 2022 19:25:41 +0000 (19:25 +0000)]
Merge branch 'optimise-png-premultiply' into 'main'

gdk: Specialise RGBA8 → premultiplied BGRA8 conversion

See merge request GNOME/gtk!4481

3 years agoMerge branch 'ebassi/graphene-build-opts' into 'main'
Matthias Clasen [Tue, 22 Feb 2022 18:05:14 +0000 (18:05 +0000)]
Merge branch 'ebassi/graphene-build-opts' into 'main'

build: Disable graphene tests

See merge request GNOME/gtk!4500

3 years agoMerge branch 'emoji-40' into 'main'
Matthias Clasen [Tue, 22 Feb 2022 18:04:24 +0000 (18:04 +0000)]
Merge branch 'emoji-40' into 'main'

emoji: Update data to CLDRv40 and add more locales

Closes #4568

See merge request GNOME/gtk!4507

3 years agoMerge branch 'wip/chergert/gsk-gl-less-glClear' into 'main'
Matthias Clasen [Tue, 22 Feb 2022 17:56:40 +0000 (17:56 +0000)]
Merge branch 'wip/chergert/gsk-gl-less-glClear' into 'main'

gsk/gl: avoid clearing opaque regions

See merge request GNOME/gtk!4504

3 years agoMerge branch 'wip/chergert/macos-fix-backdrop' into 'main'
Matthias Clasen [Tue, 22 Feb 2022 17:54:20 +0000 (17:54 +0000)]
Merge branch 'wip/chergert/macos-fix-backdrop' into 'main'

macos: fix backdrop when displaying popover

See merge request GNOME/gtk!4505

3 years agoMerge branch 'wip/chergert/macos-fix-toplevel-resize' into 'main'
Matthias Clasen [Tue, 22 Feb 2022 13:10:34 +0000 (13:10 +0000)]
Merge branch 'wip/chergert/macos-fix-toplevel-resize' into 'main'

macos: fix configure, move-resize, and compute-size

See merge request GNOME/gtk!4486

3 years agoemoji: Add more locales
Kévin Commaille [Tue, 22 Feb 2022 09:56:39 +0000 (10:56 +0100)]
emoji: Add more locales

Based on the locales that are at least 85% translated in Damned Lies:
https://l10n.gnome.org/releases/gnome-41/
Limited by the locales available in emojibase

Closes #4568

3 years agoemoji: Update data to CLDR v40
Kévin Commaille [Tue, 22 Feb 2022 09:48:14 +0000 (10:48 +0100)]
emoji: Update data to CLDR v40

Based on emojibase-data v7.0.1
Contains the changes in Unicode 14.0

https://unicode.org/versions/Unicode14.0.0/
https://cldr.unicode.org/index/downloads/cldr-40
https://github.com/milesj/emojibase/blob/b85382524c/packages/data/CHANGELOG.md

3 years agoemoji: Fix the convert-emoji program
Kévin Commaille [Tue, 22 Feb 2022 09:44:43 +0000 (10:44 +0100)]
emoji: Fix the convert-emoji program

The annotation field has been renamed to label in emojibase-data

https://github.com/milesj/emojibase/blob/b85382524c/packages/data/CHANGELOG.md

3 years agomacos: fix backdrop when displaying popover
Christian Hergert [Tue, 22 Feb 2022 08:08:00 +0000 (00:08 -0800)]
macos: fix backdrop when displaying popover

Previously, the popover would cause the window to go into the :backdrop
state which is not what we want for consistency with other platforms. This
fixes that by walking up the surface chain when we get notified of
loosing or acquiring "key" input from the display server.

3 years agoMerge branch 'gdk-win32-implicit-grabs-cleanup' into 'main'
Luca Bacci [Tue, 22 Feb 2022 07:53:54 +0000 (07:53 +0000)]
Merge branch 'gdk-win32-implicit-grabs-cleanup' into 'main'

GdkWin32: Remove implicit_grab_surface

Closes #4188

See merge request GNOME/gtk!4503

3 years agoMerge branch 'win32-ime-fix-popup-positioning' into 'main'
Luca Bacci [Tue, 22 Feb 2022 07:52:59 +0000 (07:52 +0000)]
Merge branch 'win32-ime-fix-popup-positioning' into 'main'

Win32 IME: Fix popup positioning

Closes #374 and #2338

See merge request GNOME/gtk!4501

3 years agogsk/gl: avoid clearing opaque regions
Christian Hergert [Tue, 22 Feb 2022 07:27:42 +0000 (23:27 -0800)]
gsk/gl: avoid clearing opaque regions

If the rendering operation is over an opaque region, we can potentially
avoid clearing a large section of the framebuffer destination. Some cases
you do want to clear, such as when clearing the whole contents as some
drivers have fast paths for that to avoid bringing data back into the
framebuffer.

3 years agoGdkWin32: Remove implicit_grab_surface
Luca Bacci [Mon, 21 Feb 2022 16:38:50 +0000 (17:38 +0100)]
GdkWin32: Remove implicit_grab_surface

3 years agoWin32 IME: Fix popup position
Luca Bacci [Mon, 21 Feb 2022 11:53:02 +0000 (12:53 +0100)]
Win32 IME: Fix popup position

3 years agoWin32 IME: Rename a variable
Luca Bacci [Mon, 21 Feb 2022 11:40:54 +0000 (12:40 +0100)]
Win32 IME: Rename a variable

3 years agoWin32 IME: Keep track of the client widget
Luca Bacci [Mon, 21 Feb 2022 11:39:52 +0000 (12:39 +0100)]
Win32 IME: Keep track of the client widget

3 years agoWin32 IME: Remove the get_window_position util function
Luca Bacci [Mon, 21 Feb 2022 11:32:20 +0000 (12:32 +0100)]
Win32 IME: Remove the get_window_position util function

It always returns (0, 0)

3 years agobuild: Disable graphene tests
Emmanuele Bassi [Mon, 21 Feb 2022 13:41:40 +0000 (13:41 +0000)]
build: Disable graphene tests

When building Graphene as a subproject we don't really need
to build tests. Disabling tests also removes the dependency
on mutest.

3 years agoMerge branch 'msvc-cmake-dep' into 'main'
Emmanuele Bassi [Mon, 21 Feb 2022 13:37:12 +0000 (13:37 +0000)]
Merge branch 'msvc-cmake-dep' into 'main'

Meson: Use CMake more for finding deps on Visual Studio-like builds

See merge request GNOME/gtk!4499

3 years agoMerge branch 'forward-port-mr-775-to-gtk4' into 'main'
Luca Bacci [Mon, 21 Feb 2022 12:01:21 +0000 (12:01 +0000)]
Merge branch 'forward-port-mr-775-to-gtk4' into 'main'

gtkimcontextime.c: Fix preedit window placement on HiDPI

See merge request GNOME/gtk!4498

3 years agomeson.build: Use CMake to find libjpeg on MSVC-like builds
Chun-wei Fan [Mon, 21 Feb 2022 09:50:15 +0000 (17:50 +0800)]
meson.build: Use CMake to find libjpeg on MSVC-like builds

One may be using IJG libjpeg or libjpeg-turbo to build GTK, and their
build files may or may not generate pkg-config files for us.  To make
things easier, we can make use of CMake's built-in support for finding
IJG libjpeg or libjpeg-turbo.

3 years agomeson.build: Use CMake to find libtiff on MSVC-like
Chun-wei Fan [Mon, 21 Feb 2022 09:46:11 +0000 (17:46 +0800)]
meson.build: Use CMake to find libtiff on MSVC-like

The CMake build files for libtiff may or may not generate pkg-config
files for us, so we can use Meson's CMake support to help us find
libtiff, as CMake has built-in support for finding libtiff.

3 years agomeson.build: Consolidate items with MSVC-like compilers
Chun-wei Fan [Mon, 21 Feb 2022 09:41:00 +0000 (17:41 +0800)]
meson.build: Consolidate items with MSVC-like compilers

Add a variable in meson.build that covers Visual Studio-like compilers,
so that we can use it to help us find depedencies using CMake rather
than via pkg-config, where applicable.

Change the existing use case for finding libpng accordingly.

3 years agoUpdate Turkish translation
Emin Tufan Çetin [Sun, 20 Feb 2022 15:04:41 +0000 (15:04 +0000)]
Update Turkish translation

3 years agoUpdate Turkish translation
Emin Tufan Çetin [Sun, 20 Feb 2022 14:47:56 +0000 (14:47 +0000)]
Update Turkish translation

3 years agoUpdate Persian translation
Danial Behzadi [Sun, 20 Feb 2022 11:14:09 +0000 (11:14 +0000)]
Update Persian translation

3 years agogtkimcontextime.c: Fix preedit window placement on HiDPI
Chun-wei Fan [Sat, 19 Feb 2022 17:31:28 +0000 (18:31 +0100)]
gtkimcontextime.c: Fix preedit window placement on HiDPI

We must also take the scaling factor into account for placing the IME
preedit window that is often used for Chinese and Japanese input on
Windows.

3 years agomacos: improve event filtering for foreign panels
Christian Hergert [Fri, 18 Feb 2022 11:39:00 +0000 (03:39 -0800)]
macos: improve event filtering for foreign panels

We might have panels with controls in them where the window is running in
another process. The control could have a wrapper window which we would
see from this process. This can happen with the GtkFileChooserNative, but
any NSSavePanel in macOS 10.15+ is out of process (not just sandboxed
applications).

3 years agomacos: fix configure, move-resize, and compute-size
Christian Hergert [Wed, 16 Feb 2022 10:50:51 +0000 (02:50 -0800)]
macos: fix configure, move-resize, and compute-size

This significantly cleans up how we handle various move-resize, compute-
size, and configure (notification of changes) in the macOS GDK backend.

Originally when prototyping this backend, there were some bits that came
over from the quartz backend and some bits which did not. It got confusing
and so this makes an attempt to knock down all that technical debt.

It is much simpler now in that the GdkMacosSurface makes requests of the
GdkMacosWindow, and the GdkMacosWindow notifies the GdkMacosSurface of
changes that happen.

User resizes are delayed until the next compute-size so that we are much
closer to the layout phase, reducing chances for in-between frames.

This also improves the situation of leaving maximized state so that a
grab and drag feels like you'd expect on other platforms.

I removed the opacity hack we had in before, because that is all coming
out anyway and it's a bit obnoxious to maintain through the async flows
here.

3 years agomacos: allow windows to enter fullscreen
Christian Hergert [Fri, 18 Feb 2022 09:52:48 +0000 (01:52 -0800)]
macos: allow windows to enter fullscreen

This fixes GTK's NSWindow for toplevels so that they are allowed to enter
fullscreen. We were already handlign the state transitions from the
setStyleMask: halper, but we didn't previously tell the window we are
allowed to transition into that.

There is a bit of a mismatch here in that GTK doesn't have any such flag
that determines if a window is "allowed" by policy to enter fullscreen
since window managers on Linux are free to do that at will.

3 years agoinspector: Show app ID and resource path in the General tab
Bastien Nocera [Thu, 17 Feb 2022 11:24:51 +0000 (12:24 +0100)]
inspector: Show app ID and resource path in the General tab

This makes it easier to figure out those values (which are mentioned in
the GtkApplication documentation) rather than working that out from the
way they're generated (or documented as being generated).

3 years agoMerge branch 'wip/chergert/macos-gst-cgl' into 'main'
Matthias Clasen [Thu, 17 Feb 2022 13:54:42 +0000 (13:54 +0000)]
Merge branch 'wip/chergert/macos-gst-cgl' into 'main'

media: support OpenGL-based video playback on macOS

See merge request GNOME/gtk!4491

3 years agoMerge branch 'wip/chergert/macos-fix-popup-input' into 'main'
Matthias Clasen [Thu, 17 Feb 2022 13:53:04 +0000 (13:53 +0000)]
Merge branch 'wip/chergert/macos-fix-popup-input' into 'main'

macos: fix keyboard input on popovers

See merge request GNOME/gtk!4490

3 years agomedia: support OpenGL-based video playback on macOS
Christian Hergert [Thu, 17 Feb 2022 05:27:10 +0000 (21:27 -0800)]
media: support OpenGL-based video playback on macOS

If we have GStreamer on macOS we likely have support for CGL to get an
OpenGL context we can use. This provides the missing pieces to get
accelerated video playback in gtk4-widget-factory working.

3 years agomacos: fix keyboard input on popovers
Christian Hergert [Thu, 17 Feb 2022 01:52:42 +0000 (17:52 -0800)]
macos: fix keyboard input on popovers

GdkPopup can also become the "key" window (just not the "main" window).

3 years agogdk: Optimise RGBA8 → premultiplied BGRA8 for ARM
Emmanuel Gil Peyrot [Tue, 15 Feb 2022 19:58:56 +0000 (20:58 +0100)]
gdk: Optimise RGBA8 → premultiplied BGRA8 for ARM

This more than halves the total runtime of this function since the
previous commit, from 8.36% to 4.02%, and is most likely memory
bandwidth limited on this specific board now.

I tried to do a SSE2 version as well, but couldn’t find any equivalent
of the LD4/ST4 ARM instruction.

3 years agogdk: Specialise RGBA8 → premultiplied BGRA8 conversion
Emmanuel Gil Peyrot [Tue, 15 Feb 2022 19:54:18 +0000 (20:54 +0100)]
gdk: Specialise RGBA8 → premultiplied BGRA8 conversion

On x86 on a Kaby Lake CPU, this makes it go from 6.63% of the total
execution time (loading some PNGs using the cairo backend) down to
3.20%.

On ARM on a Cortex-A7, on the same workload, this makes it go from 57%
to 8.36%.

3 years agoMerge branch 'wip/chergert/for-macos-1' into 'main'
Matthias Clasen [Wed, 16 Feb 2022 13:54:43 +0000 (13:54 +0000)]
Merge branch 'wip/chergert/for-macos-1' into 'main'

macos: various correctness fixes

See merge request GNOME/gtk!4485

3 years agoMerge branch 'wip/baedert/for-master' into 'main'
Matthias Clasen [Wed, 16 Feb 2022 13:48:51 +0000 (13:48 +0000)]
Merge branch 'wip/baedert/for-master' into 'main'

gtkgstpaintable: Handle a NULL value

See merge request GNOME/gtk!4484

3 years agomacos: add helper to check if surface is opaque
Christian Hergert [Mon, 14 Feb 2022 10:18:51 +0000 (02:18 -0800)]
macos: add helper to check if surface is opaque

3 years agomacos: use input_region to specify tracking areas
Christian Hergert [Sat, 5 Feb 2022 01:24:13 +0000 (17:24 -0800)]
macos: use input_region to specify tracking areas

We want our tracking area to be limited to the input region so that we
don't pass along events outside of them for the window. This improves the
chances we click-out of a popover with a large shadow.

This still doesn't let us pass-through clicks for large shadows on top-
level windows though.

3 years agomacos: ignore mouse events outside tracking area
Christian Hergert [Mon, 14 Feb 2022 10:16:07 +0000 (02:16 -0800)]
macos: ignore mouse events outside tracking area

We also need to ignore events outside the tracking areas when we are
translating them from NSevent into GdkEvent.

3 years agomacos: fix incorrect signal disconnect
Christian Hergert [Wed, 16 Feb 2022 09:46:25 +0000 (01:46 -0800)]
macos: fix incorrect signal disconnect

3 years agogtkgstpaintable: Handle a NULL value
Timm Bäder [Wed, 16 Feb 2022 09:01:13 +0000 (10:01 +0100)]
gtkgstpaintable: Handle a NULL value

gst_element_factory_make can return NULL.

3 years agoMerge branch 'wip/otte/for-main' into 'main'
Benjamin Otte [Wed, 16 Feb 2022 03:07:05 +0000 (03:07 +0000)]
Merge branch 'wip/otte/for-main' into 'main'

glcontext: Remove leftover function call

Closes #4697

See merge request GNOME/gtk!4483

3 years agoglcontext: Remove leftover function call
Benjamin Otte [Wed, 16 Feb 2022 02:46:29 +0000 (03:46 +0100)]
glcontext: Remove leftover function call

That call should have been removed way back when.

Add a testcase to make sure this keeps working.

Fixes #4697

3 years agomacos: remove assertion from external API
Christian Hergert [Tue, 15 Feb 2022 20:12:45 +0000 (12:12 -0800)]
macos: remove assertion from external API

We only should be asserting in static functions. Furthermore, this function
did not need to have GDK_BEGIN_MACOS_ALLOC_POOL as nothing is being
allocated there which would cause pooling to get used.

3 years agomacos: improve monitor detection at display coordinates
Christian Hergert [Tue, 15 Feb 2022 20:11:36 +0000 (12:11 -0800)]
macos: improve monitor detection at display coordinates

This needs to handle the boundary case where the value is exactly equal
to the edge of a rectangle (which gdk_rectangle_contains_point() does not
consider to be containing). However, if there is a monitor in the list
that is a better match, we still want to prefer it.

3 years agoMerge branch 'viewport-scroll-to-focus' into 'main'
Benjamin Otte [Tue, 15 Feb 2022 16:05:32 +0000 (16:05 +0000)]
Merge branch 'viewport-scroll-to-focus' into 'main'

scrolledwindow: Set scroll-to-focus on viewports

See merge request GNOME/gtk!4356

3 years agoviewport: Set scroll-to-focus to TRUE by default
Maximiliano Sandoval R [Sat, 8 Jan 2022 11:56:43 +0000 (12:56 +0100)]
viewport: Set scroll-to-focus to TRUE by default

In GTK 3 this was the default.

3 years agoMerge branch 'mac-scrolling-fix' into 'main'
Christian Hergert [Mon, 14 Feb 2022 23:00:27 +0000 (23:00 +0000)]
Merge branch 'mac-scrolling-fix' into 'main'

gdk: fix reversed and sluggish scrolling on MacOS

See merge request GNOME/gtk!4479

3 years agogdk: fix reversed and sluggish scrolling on MacOS
Andy Russell [Mon, 14 Feb 2022 17:43:07 +0000 (12:43 -0500)]
gdk: fix reversed and sluggish scrolling on MacOS

When using an external mouse on MacOS, the scrolling behavior is
reversed from the user's scrolling preference. Additionally, it is
noticeably sluggish.

This commit fixes both issues by negating the deltas and multiplying
them by 32 before constructing a new scroll event. 32 seems to be the
"traditional" scaling factor according to [Druid], but I'm not sure
where that value actually comes from. Regardless, scaling the deltas by
this amount makes scrolling feel a lot more responsive in the GTK demos.

Scrolling with a trackpad is not affected by either issue because it
triggers a different code path that uses more precise deltas, and
already negates them.

[Druid]: https://linebender.gitbook.io/linebender-graphics-wiki/mouse-wheel#external-mouse-wheel-vs-trackpad

3 years agodocs: Add Since annotations to GDK_VERSION macros
Benjamin Otte [Sun, 13 Feb 2022 17:04:18 +0000 (18:04 +0100)]
docs: Add Since annotations to GDK_VERSION macros

3 years agoUpdate Slovenian translation
Matej Urbančič [Sun, 13 Feb 2022 18:58:22 +0000 (18:58 +0000)]
Update Slovenian translation

3 years agoUpdate Slovenian translation
Matej Urbančič [Sun, 13 Feb 2022 18:56:28 +0000 (18:56 +0000)]
Update Slovenian translation

3 years agoUpdate Basque translation
Asier Sarasua Garmendia [Sun, 13 Feb 2022 09:22:58 +0000 (09:22 +0000)]
Update Basque translation

3 years agoDon't crash when updating the icon on a `GtkScaleButton` with a non-`NULL` empty...
Sebastian Dröge [Sun, 13 Feb 2022 09:16:32 +0000 (11:16 +0200)]
Don't crash when updating the icon on a `GtkScaleButton` with a non-`NULL` empty icon list

3 years agoUpdated Czech translation
Marek Černocký [Sat, 12 Feb 2022 18:48:40 +0000 (19:48 +0100)]
Updated Czech translation

3 years agowidget-factory: Make <F11> toggle fullscreen
Benjamin Otte [Fri, 11 Feb 2022 00:13:13 +0000 (01:13 +0100)]
widget-factory: Make <F11> toggle fullscreen

3 years agoUpdate Catalan translation
Jordi Mas i Hernandez [Sat, 12 Feb 2022 14:41:46 +0000 (14:41 +0000)]
Update Catalan translation

3 years agoMerge branch 'wip/chergert/fix-text-overdraw' into 'main'
Matthias Clasen [Sat, 12 Feb 2022 08:34:18 +0000 (08:34 +0000)]
Merge branch 'wip/chergert/fix-text-overdraw' into 'main'

css: reduce overdraws from "textview > text"

See merge request GNOME/gtk!4472

3 years agocss: reduce overdraws from "textview > text"
Christian Hergert [Sat, 12 Feb 2022 07:02:20 +0000 (23:02 -0800)]
css: reduce overdraws from "textview > text"

This was causing us to draw the same background content twice which is a
significant amount of bits to flip in the GPU for maximized windows,
especially twice.

3 years ago4.6.1
Matthias Clasen [Sat, 12 Feb 2022 01:09:15 +0000 (20:09 -0500)]
4.6.1

3 years agoMerge branch 'wip/chergert/popover-opaque-region' into 'main'
Matthias Clasen [Fri, 11 Feb 2022 23:16:43 +0000 (23:16 +0000)]
Merge branch 'wip/chergert/popover-opaque-region' into 'main'

add opaque regions to popovers

Closes #4689

See merge request GNOME/gtk!4468

3 years agopopover: use GtkNative opaque region API
Christian Hergert [Fri, 11 Feb 2022 00:54:32 +0000 (16:54 -0800)]
popover: use GtkNative opaque region API

This updates GtkPopover to use the new GtkNative abstraction for
reporting opaque regions of the window, in hopes that it can speed
up compositors for things like animated lists, menu transitions,
and more.

Fixes #4689

3 years agowindow: use GtkNative API to update opaque region
Christian Hergert [Fri, 11 Feb 2022 00:23:16 +0000 (16:23 -0800)]
window: use GtkNative API to update opaque region

This switches to using the new GtkNative machinery for updating the
opaque region. Some amount of local calculation is still required for
determining when we should apply shadows, and this inherits what was
done previous for that.

Related #4689

3 years agonative: add API to update opaque region
Christian Hergert [Fri, 11 Feb 2022 00:21:48 +0000 (16:21 -0800)]
native: add API to update opaque region

This abstracts the machinery to update the opaque region for a GtkWindow
into GtkNative so it may be used from other native impelementations such
as GtkPopover.

Related #4689

3 years agoMerge branch 'bilelmoussaoui/entry-completion' into 'main'
Matthias Clasen [Fri, 11 Feb 2022 17:49:26 +0000 (17:49 +0000)]
Merge branch 'bilelmoussaoui/entry-completion' into 'main'

entry completion: add checks that entry is set already

See merge request GNOME/gtk!4450

3 years agoMerge branch 'enum-docs' into 'main'
Matthias Clasen [Fri, 11 Feb 2022 17:35:42 +0000 (17:35 +0000)]
Merge branch 'enum-docs' into 'main'

docs: Use links in enums

See merge request GNOME/gtk!4452

3 years agoMerge branch 'bilelmoussaoui/g-i' into 'main'
Matthias Clasen [Fri, 11 Feb 2022 17:33:05 +0000 (17:33 +0000)]
Merge branch 'bilelmoussaoui/g-i' into 'main'

g-i: add a couple of missing nullable annotations

See merge request GNOME/gtk!4470

3 years agoMerge branch 'primary' into 'main'
Carlos Garnacho [Fri, 11 Feb 2022 14:29:19 +0000 (14:29 +0000)]
Merge branch 'primary' into 'main'

gdk: don't leak wayland primary selection offers

See merge request GNOME/gtk!4458

3 years agog-i: Add nullable annotations to EventControllerKey::im-context
Bilal Elmoussaoui [Fri, 11 Feb 2022 11:59:55 +0000 (12:59 +0100)]
g-i: Add nullable annotations to EventControllerKey::im-context

Fixes https://github.com/gtk-rs/gtk4-rs/issues/874

3 years agog-i: Add nullable annotations to CellArea getters
Bilal Elmoussaoui [Fri, 11 Feb 2022 11:55:28 +0000 (12:55 +0100)]
g-i: Add nullable annotations to CellArea getters

Fixes https://github.com/gtk-rs/gtk4-rs/issues/891

3 years agoMerge branch 'bilelmoussaoui/layout-manager' into 'main'
Emmanuele Bassi [Fri, 11 Feb 2022 11:51:44 +0000 (11:51 +0000)]
Merge branch 'bilelmoussaoui/layout-manager' into 'main'

layout manager: add a check if the widget exists

See merge request GNOME/gtk!4469

3 years agog-i: Mark FileChooser [s|g]et_current_[folder|name] as nullable
Bilal Elmoussaoui [Fri, 11 Feb 2022 11:19:10 +0000 (12:19 +0100)]
g-i: Mark FileChooser [s|g]et_current_[folder|name] as nullable

The code seems to already check if folder/name is NULL
Fixes https://github.com/gtk-rs/gtk4-rs/issues/896

3 years agog-i: Mark get_print_settings as nullable
Bilal Elmoussaoui [Fri, 11 Feb 2022 11:07:54 +0000 (12:07 +0100)]
g-i: Mark get_print_settings as nullable

Fixes https://github.com/gtk-rs/gtk4-rs/issues/880

3 years agodocs: Use links in enums
Maximiliano Sandoval R [Tue, 8 Feb 2022 10:47:53 +0000 (11:47 +0100)]
docs: Use links in enums

Properties already refer to their object, so

    [property@Widget:sensitive] property on [class@Widget]

is redundant.

3 years agog-i: mark get_selected_printer as nullable
Bilal Elmoussaoui [Fri, 11 Feb 2022 11:05:42 +0000 (12:05 +0100)]
g-i: mark get_selected_printer as nullable

There is no selected printer if the user closes the dialog
Fixes https://github.com/gtk-rs/gtk4-rs/issues/882

3 years agog-i: mark EventController::name as nullable
Bilal Elmoussaoui [Fri, 11 Feb 2022 11:02:07 +0000 (12:02 +0100)]
g-i: mark EventController::name as nullable

Fixes https://github.com/gtk-rs/gtk4-rs/issues/893

3 years agog-i: add nullable annotation to gtk_single_selection_get_model
Bilal Elmoussaoui [Fri, 11 Feb 2022 10:56:40 +0000 (11:56 +0100)]
g-i: add nullable annotation to gtk_single_selection_get_model

3 years agolayout manager: add a check if the widget exists
Bilal Elmoussaoui [Fri, 11 Feb 2022 10:44:16 +0000 (11:44 +0100)]
layout manager: add a check if the widget exists

Avoid a crash when calling _gtk_widget_get_first_child
Fixes https://github.com/gtk-rs/gtk4-rs/issues/889

3 years agoMerge branch 'fix-wayland-subproject-build' into 'main'
Matthias Clasen [Thu, 10 Feb 2022 21:57:27 +0000 (21:57 +0000)]
Merge branch 'fix-wayland-subproject-build' into 'main'

NEWS: Updates

See merge request GNOME/gtk!4466

3 years agoNEWS: Updates
Matthias Clasen [Thu, 10 Feb 2022 20:06:37 +0000 (15:06 -0500)]
NEWS: Updates

3 years agogdk: don't leak wayland primary selection offers
Julian Orth [Tue, 8 Feb 2022 21:47:01 +0000 (22:47 +0100)]
gdk: don't leak wayland primary selection offers

Signed-off-by: Julian Orth <ju.orth@gmail.com>
3 years agoMerge branch 'fix-wayland-subproject-build' into 'main'
Matthias Clasen [Thu, 10 Feb 2022 19:13:33 +0000 (19:13 +0000)]
Merge branch 'fix-wayland-subproject-build' into 'main'

Fix build with wayland-protocols subproject

Closes #4530

See merge request GNOME/gtk!4465

3 years agoFix build with wayland-protocols subproject
Matthias Clasen [Thu, 10 Feb 2022 18:21:28 +0000 (13:21 -0500)]
Fix build with wayland-protocols subproject

The missing files() was pointed out in #4530.

Fixes: #4530
3 years agoMerge branch 'column-view-column-new-nullable-factory' into 'main'
Matthias Clasen [Thu, 10 Feb 2022 11:42:38 +0000 (11:42 +0000)]
Merge branch 'column-view-column-new-nullable-factory' into 'main'

Allow passing a `NULL` factory to `gtk_column_view_column_new()`

See merge request GNOME/gtk!4454

3 years agoMerge branch 'icon-view-drag-dest-item-nullable' into 'main'
Matthias Clasen [Thu, 10 Feb 2022 11:24:04 +0000 (11:24 +0000)]
Merge branch 'icon-view-drag-dest-item-nullable' into 'main'

Mark `path` out parameter of `gtk_icon_view_get_drag_dest_item()` as `(nullable)`

See merge request GNOME/gtk!4451

3 years agoMerge branch 'gwagner/gtkbuilder-rng' into 'main'
Matthias Clasen [Wed, 9 Feb 2022 19:25:32 +0000 (19:25 +0000)]
Merge branch 'gwagner/gtkbuilder-rng' into 'main'

tools: updated gtk4builder.rng to current state

See merge request GNOME/gtk!4457

3 years agoMerge branch 'update-keysyms' into 'main'
Matthias Clasen [Wed, 9 Feb 2022 19:23:59 +0000 (19:23 +0000)]
Merge branch 'update-keysyms' into 'main'

gdk: Update keyboard symbols from libxkbcommon

See merge request GNOME/gtk!4422

3 years agoMerge branch 'gtk_assisten_set_current_page-no-pages-guard' into 'main'
Matthias Clasen [Wed, 9 Feb 2022 19:19:24 +0000 (19:19 +0000)]
Merge branch 'gtk_assisten_set_current_page-no-pages-guard' into 'main'

Don't dereference a `NULL` page in `gtk_assistant_set_current_page()` if there are no pages at all

See merge request GNOME/gtk!4464

3 years agoDon't dereference a `NULL` page in `gtk_assistant_set_current_page()` if there are...
Sebastian Dröge [Wed, 9 Feb 2022 15:50:13 +0000 (17:50 +0200)]
Don't dereference a `NULL` page in `gtk_assistant_set_current_page()` if there are no pages at all

3 years agoMerge branch 'bilelmoussaoui/g-i' into 'main'
Matthias Clasen [Wed, 9 Feb 2022 13:43:50 +0000 (13:43 +0000)]
Merge branch 'bilelmoussaoui/g-i' into 'main'

gdk: mark gdk_device_get_device_tool as nullable

See merge request GNOME/gtk!4463

3 years agoMerge branch 'revert-misdeprecation' into 'main'
Matthias Clasen [Wed, 9 Feb 2022 13:13:35 +0000 (13:13 +0000)]
Merge branch 'revert-misdeprecation' into 'main'

Revert "Deprecate GdkDevice:source"

See merge request GNOME/gtk!4462