gtk4.git
2 years agoPass an activation token to OpenURI
Matthias Clasen [Wed, 4 Jan 2023 13:36:47 +0000 (08:36 -0500)]
Pass an activation token to OpenURI

The OpenURI portal can take an activation_token
nowadays. So it give one.

2 years agox11: Make a call NULL-safe
Matthias Clasen [Wed, 4 Jan 2023 21:35:56 +0000 (16:35 -0500)]
x11: Make a call NULL-safe

Make it safe to call gdk_x11_app_launch_context_get_startup_notify_id
with a NULL info.

2 years agoMerge branch 'matthiasc/for-main' into 'main'
Matthias Clasen [Wed, 4 Jan 2023 17:22:54 +0000 (17:22 +0000)]
Merge branch 'matthiasc/for-main' into 'main'

Drop gtkmain.c from POTFILES

See merge request GNOME/gtk!5390

2 years agoDrop gtkmain.c from POTFILES
Matthias Clasen [Wed, 4 Jan 2023 17:01:33 +0000 (12:01 -0500)]
Drop gtkmain.c from POTFILES

No longer any translations here.

2 years agoMerge branch 'deprecate-toggled' into 'main'
Matthias Clasen [Wed, 4 Jan 2023 12:57:32 +0000 (12:57 +0000)]
Merge branch 'deprecate-toggled' into 'main'

Deprecate gtk_toggle_button_toggled

See merge request GNOME/gtk!5388

2 years agoDeprecate gtk_toggle_button_toggled
Matthias Clasen [Wed, 4 Jan 2023 12:31:49 +0000 (07:31 -0500)]
Deprecate gtk_toggle_button_toggled

The function is documented as useless.

2 years agoUpdate Swedish translation
Anders Jonsson [Wed, 4 Jan 2023 12:32:38 +0000 (12:32 +0000)]
Update Swedish translation

2 years agoMerge branch 'wip/carlosg/startup-vs-focus' into 'main'
Matthias Clasen [Tue, 3 Jan 2023 15:14:35 +0000 (15:14 +0000)]
Merge branch 'wip/carlosg/startup-vs-focus' into 'main'

Consider startup vs focus requests for the Wayland platform

See merge request GNOME/gtk!5386

2 years agogdkdisplay: Deprecate gdk_display_notify_startup_complete()
Carlos Garnacho [Tue, 3 Jan 2023 13:02:53 +0000 (14:02 +0100)]
gdkdisplay: Deprecate gdk_display_notify_startup_complete()

We have various layers where we store the startup ID for a request,
since this API does not have a GdkToplevel that we can refer about
for the Wayland platform, this is the most obvious candidate to
start untangling these various layers.

Deprecate this call, it is already unused in the gtk/ side.

2 years agogtkapplication: Do not call gdk_display_notify_startup_complete()
Carlos Garnacho [Tue, 3 Jan 2023 13:00:57 +0000 (14:00 +0100)]
gtkapplication: Do not call gdk_display_notify_startup_complete()

This should do nothing worthwhile anymore, the X11/Wayland GtkApplication
implementations do already pass the startup ID from the platform_data
via windowing specific APIs, and the application handling the request
via show()/present() should trigger the activation request.

2 years agogtkwindow: Shuffle gdk_toplevel_set_startup_id() calls
Carlos Garnacho [Tue, 3 Jan 2023 12:51:26 +0000 (13:51 +0100)]
gtkwindow: Shuffle gdk_toplevel_set_startup_id() calls

While this used to be tangential to windows showing or requesting
focus, the xdg-activation Wayland protocol does merge both concepts
together.

But also, for a correct interaction with the compositor, the
toolkit should ideally merge the activation request resulting from
both into the same one, so that the gdk_toplevel_focus() request
replies to the startup token that started the application and
correct focus-stealing prevention/etc happens, instead making up
one just in time for the focus request.

This kind of requires doing things in the right order, a show()
request on the GtkWindow should activate any pending activation
token on the toplevel, a present() request should additionally
create a new token if there was none pending. And
xdg_activation_v1_activate() should happen once on both.

Shuffle the gdk_toplevel_set_startup_id() calls so that this
happens in the right order for Wayland, while making X11 happy
too.

2 years agogdk/x11: Emit "remove" s-n message from gdk_toplevel_set_startup_id
Carlos Garnacho [Tue, 3 Jan 2023 12:47:54 +0000 (13:47 +0100)]
gdk/x11: Emit "remove" s-n message from gdk_toplevel_set_startup_id

In the way towards deprecating gdk_display_notify_startup_complete(),
make gdk_toplevel_set_startup_id() on X11 perform this piece of messaging
itself. It should be harmless that the message is emitted twice, if
callers do still use that API.

2 years agogdk/wayland: Perform xdg_activation on gdk_toplevel_set_startup_id
Carlos Garnacho [Tue, 3 Jan 2023 12:44:44 +0000 (13:44 +0100)]
gdk/wayland: Perform xdg_activation on gdk_toplevel_set_startup_id

This call has everything to perform activation as specified by the
xdg_activation protocol, notably a surface to activate as opposed to
gdk_display_notify_startup_complete().

Make activation happen here, so that the surface gets activated when
its gets a startup ID assigned.

2 years agogtkwindow: Minor refactor
Carlos Garnacho [Tue, 3 Jan 2023 12:42:41 +0000 (13:42 +0100)]
gtkwindow: Minor refactor

Move the handling of the startup ID to a separate function, since
this will be called from several places.

2 years agoMerge branch 'fix-introspection' into 'main'
Matthias Clasen [Tue, 3 Jan 2023 11:56:49 +0000 (11:56 +0000)]
Merge branch 'fix-introspection' into 'main'

meson.build: build introspection according to option only

See merge request GNOME/gtk!5382

2 years agomeson.build: build introspection according to option only
Alexander Kanavin [Mon, 2 Jan 2023 14:00:02 +0000 (15:00 +0100)]
meson.build: build introspection according to option only

The way the check is written, if the build is native, then the
introspection option has no effect.

Particularly yocto project does want to disable introspection in
native builds and enable it in cross builds (both via the option),
and without this patch the former is not possible.

Signed-off-by: Alexander Kanavin <alex@linutronix.de>
2 years agoMerge branch 'nullable-gdk' into 'main'
Matthias Clasen [Tue, 3 Jan 2023 00:25:55 +0000 (00:25 +0000)]
Merge branch 'nullable-gdk' into 'main'

gdk_display_open: Mark arg as nullable

See merge request GNOME/gtk!5380

2 years agoMerge branch 'matthiasc/for-main' into 'main'
Matthias Clasen [Mon, 2 Jan 2023 21:53:58 +0000 (21:53 +0000)]
Merge branch 'matthiasc/for-main' into 'main'

ci: Enable introspection for the docs build

See merge request GNOME/gtk!5383

2 years agoMerge branch 'direction-from-language' into 'main'
Matthias Clasen [Mon, 2 Jan 2023 21:50:54 +0000 (21:50 +0000)]
Merge branch 'direction-from-language' into 'main'

Determine direction from language

See merge request GNOME/gtk!5385

2 years agoDetermine direction from language
Matthias Clasen [Mon, 2 Jan 2023 20:19:42 +0000 (15:19 -0500)]
Determine direction from language

We can determine the direction to return here
without relying on translations, by using pango
and HarfBuzz apis to go
language -> script -> direction.

2 years agoMerge branch 'ccook/doc-changes-2' into 'main'
Matthias Clasen [Mon, 2 Jan 2023 20:40:54 +0000 (20:40 +0000)]
Merge branch 'ccook/doc-changes-2' into 'main'

Various documentation suggests across a few domains.

See merge request GNOME/gtk!5384

2 years agoVarious documentation suggests across a few domains.
Cam Cook [Mon, 2 Jan 2023 18:47:55 +0000 (13:47 -0500)]
Various documentation suggests across a few domains.

| domain | current | suggestion |
|--------|---------|------------|
| [GtkSeparator](https://gitlab.gnome.org/GNOME/gtk/-/blob/main/gtk/gtkseparator.c#L39)    | "`![An example GtkSeparator](separators.png)`" | "`![An example GtkSeparator](separator.png)`" [1] |
| [GtkTextBuffer](https://gitlab.gnome.org/GNOME/gtk/-/blob/main/gtk/gtktextbuffer.c#L4885)  | "if there is an redoable action" | "if there is a redoable action" |
| [GtkTextBuffer/get_enable_undo](https://gitlab.gnome.org/GNOME/gtk/-/blob/main/gtk/gtktextbuffer.c#L5005) | (Renders `No description available.`) | "Returns: %TRUE if undoing and redoing changes to the buffer is allowed." [3] |
| [GtkTextBuffer/get_max_undo_levels](https://gitlab.gnome.org/GNOME/gtk/-/blob/main/gtk/gtktextbuffer.c#L5102) | (Renders `No description available.`)| "Returns: The max number of undo levels allowed (0 indicates unlimited)." |
| [GtkTextBuffer](https://gitlab.gnome.org/GNOME/gtk/-/blob/main/gtk/gtktextbuffer.c#L3874) | "with gtk_text_buffer_add_selection_clipboard()." | "with [method@Gtk.TextBuffer.add_selection_clipboard]" |
| [GtkTextBuffer](https://gitlab.gnome.org/GNOME/gtk/-/blob/main/gtk/gtktextbuffer.c#L3494) | "it will automatically toggled" | "it will automatically toggle" |

* [1] See : [separator.png](https://gitlab.gnome.org/GNOME/gtk/-/blob/main/docs/reference/gtk/images/separator.png), [gtk4.toml.in](https://gitlab.gnome.org/GNOME/gtk/-/blob/main/docs/reference/gtk/gtk4.toml.in#L218), [visual_index.md](https://gitlab.gnome.org/GNOME/gtk/-/blob/main/docs/reference/gtk/visual_index.md?plain=1#L16)
* [2] Taken from `enable-undo` [property description](https://gitlab.gnome.org/GNOME/gtk/-/blob/main/gtk/gtktextbuffer.c#L516)

* [GtkTextMark/gtk_text_mark_set_visible](https://docs.gtk.org/gtk4/method.TextMark.set_visible.html) is defined in [GtkTextMark's header](https://gitlab.gnome.org/GNOME/gtk/-/blob/main/gtk/gtktextmark.h#L93), but implemented in [GtkTextBTree](https://gitlab.gnome.org/GNOME/gtk/-/blob/main/gtk/gtktextbtree.c#L3036).
  * Other than being kind of confusing, this causes `gtk_text_mark_set_visible()`'s doc to not render where it expects it to.

2 years agoci: Enable introspection for the docs build
Matthias Clasen [Mon, 2 Jan 2023 16:24:05 +0000 (11:24 -0500)]
ci: Enable introspection for the docs build

It is required, so lets not rely on defaults.

2 years agoFix compiler warnings
Matthias Clasen [Mon, 2 Jan 2023 16:14:00 +0000 (11:14 -0500)]
Fix compiler warnings

2 years agoMerge branch 'dependency-review' into 'main'
Matthias Clasen [Mon, 2 Jan 2023 16:14:24 +0000 (16:14 +0000)]
Merge branch 'dependency-review' into 'main'

Dependency review

See merge request GNOME/gtk!5381

2 years agobuild: Use the current gdk-pixbuf as subproject
Matthias Clasen [Mon, 2 Jan 2023 13:43:45 +0000 (08:43 -0500)]
build: Use the current gdk-pixbuf as subproject

This commit has fixes for subproject use that we need,
and is not in a release yet.

2 years agobuild: Use libcloudproviders 0.3.1 as subproject
Matthias Clasen [Mon, 2 Jan 2023 12:44:04 +0000 (07:44 -0500)]
build: Use libcloudproviders 0.3.1 as subproject

2 years agobuild Use current libepoxy as subproject
Matthias Clasen [Mon, 2 Jan 2023 12:42:38 +0000 (07:42 -0500)]
build Use current libepoxy as subproject

We need recent fixes for graphene subproject use,
so use the current HEAD of master until there is
a release with these fixes.

2 years agobuild: Use the current graphene as subproject
Matthias Clasen [Mon, 2 Jan 2023 12:41:33 +0000 (07:41 -0500)]
build: Use the current graphene as subproject

We need recent fixes for graphene subproject use,
so use the current HEAD of master until there is
a release with these fixes.

2 years agobuild: Use wayland 1.21.0 as subproject
Matthias Clasen [Mon, 2 Jan 2023 12:39:50 +0000 (07:39 -0500)]
build: Use wayland 1.21.0 as subproject

2 years agobuild: Use wayland-protocols 1.25 as subproject
Matthias Clasen [Mon, 2 Jan 2023 12:38:54 +0000 (07:38 -0500)]
build: Use wayland-protocols 1.25 as subproject

2 years agobuild: Use pango 1.50.12 as subproject
Matthias Clasen [Mon, 2 Jan 2023 12:31:15 +0000 (07:31 -0500)]
build: Use pango 1.50.12 as subproject

2 years agobuild: Use fribidi 1.0.12 as subproject
Matthias Clasen [Thu, 22 Dec 2022 14:25:02 +0000 (09:25 -0500)]
build: Use fribidi 1.0.12 as subproject

2 years agobuild: Use cairo 1.17.6 as subproject
Matthias Clasen [Thu, 22 Dec 2022 14:19:53 +0000 (09:19 -0500)]
build: Use cairo 1.17.6 as subproject

We don't want to use cairo 1.16, since it is
too old, so use 1.17.6 for now until there
is a stable 1.18 release.

2 years agobuild: Use glib 2.74.4 as subproject
Matthias Clasen [Thu, 22 Dec 2022 14:18:11 +0000 (09:18 -0500)]
build: Use glib 2.74.4 as subproject

This is the latest stable release.

2 years agobuild: Pass gobject_types=true to graphene
Matthias Clasen [Mon, 2 Jan 2023 13:55:51 +0000 (08:55 -0500)]
build: Pass gobject_types=true to graphene

This is required for graphene-gobject to be built.

2 years agobuild: Bump introspection dep to 1.72
Matthias Clasen [Thu, 22 Dec 2022 14:16:46 +0000 (09:16 -0500)]
build: Bump introspection dep to 1.72

This should be kept in sync with glib.

2 years agobuild: Bump graphene req to 1.10
Matthias Clasen [Thu, 22 Dec 2022 14:15:38 +0000 (09:15 -0500)]
build: Bump graphene req to 1.10

So we don't require an unstable version.

2 years agoUpdate Turkish translation
Sabri Ünal [Mon, 2 Jan 2023 13:58:10 +0000 (13:58 +0000)]
Update Turkish translation

2 years agogdk_display_open: Mark arg as nullable
Maximiliano Sandoval R [Mon, 2 Jan 2023 10:48:23 +0000 (11:48 +0100)]
gdk_display_open: Mark arg as nullable

2 years agoMerge branch 'wide-inspector' into 'main'
Matthias Clasen [Sat, 31 Dec 2022 20:07:45 +0000 (20:07 +0000)]
Merge branch 'wide-inspector' into 'main'

inspector: Avoid super-wide window

See merge request GNOME/gtk!5379

2 years agoMerge branch 'annotate-dialog-deprecation' into 'main'
Matthias Clasen [Sat, 31 Dec 2022 20:07:20 +0000 (20:07 +0000)]
Merge branch 'annotate-dialog-deprecation' into 'main'

docs: Annotate GtkDialog deprecation

See merge request GNOME/gtk!5376

2 years agoinspector: Avoid super-wide window
Matthias Clasen [Sat, 31 Dec 2022 17:30:40 +0000 (12:30 -0500)]
inspector: Avoid super-wide window

Ellipsize values that can get long, to avoid
forcing an excessively wide window.

2 years agodocs: Annotate GtkDialog deprecations
Marco Melorio [Fri, 30 Dec 2022 14:29:29 +0000 (15:29 +0100)]
docs: Annotate GtkDialog deprecations

2 years agoMerge branch 'wip/corey/list-item-visible' into 'main'
Benjamin Otte [Thu, 29 Dec 2022 22:21:43 +0000 (22:21 +0000)]
Merge branch 'wip/corey/list-item-visible' into 'main'

listitemwidget: Setup factory only once the widget is visible

See merge request GNOME/gtk!5374

2 years agogtkcolumnviewcolumn: Only create cells when the column is visible
Corey Berla [Thu, 29 Dec 2022 18:56:01 +0000 (10:56 -0800)]
gtkcolumnviewcolumn: Only create cells when the column is visible

It's a big performance drag to create many cells (and their associated
widgets) for columns that may never be shown. Only create cells
is the column is visible, and subsequently create/remove cells
when in column_set_visible.

2 years agoUpdate Hebrew translation
Yosef Or Boczko [Tue, 27 Dec 2022 21:46:52 +0000 (21:46 +0000)]
Update Hebrew translation

2 years agoMerge branch 'wip/corey/notify-drop-value' into 'main'
Matthias Clasen [Tue, 27 Dec 2022 16:45:16 +0000 (16:45 +0000)]
Merge branch 'wip/corey/notify-drop-value' into 'main'

gtkdroptarget: Notify value property on local drag

See merge request GNOME/gtk!5372

2 years agogtkdroptarget: Notify value property on local drag
Corey Berla [Tue, 27 Dec 2022 16:11:53 +0000 (08:11 -0800)]
gtkdroptarget: Notify value property on local drag

The value property is only getting notified when it's unset
or when it's set from gdk_drop_real_value_async().  Make sure
to always notify :value when its changed

2 years agoPost-release version bump
Matthias Clasen [Mon, 26 Dec 2022 12:22:39 +0000 (07:22 -0500)]
Post-release version bump

2 years ago4.9.2
Matthias Clasen [Mon, 26 Dec 2022 11:41:21 +0000 (06:41 -0500)]
4.9.2

2 years agoUpdates
Matthias Clasen [Sun, 25 Dec 2022 13:29:28 +0000 (08:29 -0500)]
Updates

2 years agoMerge branch 'wip/otte/for-main' into 'main'
Matthias Clasen [Sat, 24 Dec 2022 15:14:17 +0000 (15:14 +0000)]
Merge branch 'wip/otte/for-main' into 'main'

GtkDialog: Various API changes

See merge request GNOME/gtk!5251

2 years agofiledialog: Handle initial-folder being NULL
Matthias Clasen [Sat, 24 Dec 2022 14:01:16 +0000 (09:01 -0500)]
filedialog: Handle initial-folder being NULL

This showed up as test failure in ci.

2 years agoalertdialog: Rephrase docs for show() a bit
Benjamin Otte [Fri, 23 Dec 2022 05:49:10 +0000 (06:49 +0100)]
alertdialog: Rephrase docs for show() a bit

In particular, discuss what to do about cancellables.

Related: !5326

2 years agofiledialog: Clarify interaction of :filters and :default-filter
Benjamin Otte [Fri, 23 Dec 2022 05:42:20 +0000 (06:42 +0100)]
filedialog: Clarify interaction of :filters and :default-filter

2 years agofiledialog: Rename :current-filter to :default-filter
Benjamin Otte [Fri, 23 Dec 2022 05:40:27 +0000 (06:40 +0100)]
filedialog: Rename :current-filter to :default-filter

The last "current" removed from properties. None of these are current.

2 years agofiledialog: Add gtk_file_dialog_set_initial_file()
Benjamin Otte [Fri, 23 Dec 2022 04:54:32 +0000 (05:54 +0100)]
filedialog: Add gtk_file_dialog_set_initial_file()

A shortcut for setting initial-folder and initial-name at the same time.

We can remove all arguments from the actual async calls this way.

2 years agofiledialog: Add gtk_file_dialog_set_initial_name()
Benjamin Otte [Fri, 23 Dec 2022 02:43:01 +0000 (03:43 +0100)]
filedialog: Add gtk_file_dialog_set_initial_name()

2 years agofiledialog: Rename current-folder to initial-folder
Benjamin Otte [Fri, 23 Dec 2022 01:42:36 +0000 (02:42 +0100)]
filedialog: Rename current-folder to initial-folder

It's not the current one - unlike in GtkFileChooser - because there are
no live updates. So we use a more descriptive name.

2 years agofontdialog: Handle Escape better
Benjamin Otte [Thu, 22 Dec 2022 21:17:45 +0000 (22:17 +0100)]
fontdialog: Handle Escape better

Closing the dialog by hitting Escape should
have the same effect as clicking the cancel
button. Make it so.

2 years agoalertdialog: Bring the GError back
Benjamin Otte [Wed, 23 Nov 2022 22:43:36 +0000 (23:43 +0100)]
alertdialog: Bring the GError back

Make sure we have a GError, so that dismissing and cancelling can be
separated.

2 years agodialog: GTK_DIALOG_ERROR_ABORTED => GTK_DIALOG_ERROR_CANCELLED
Benjamin Otte [Wed, 23 Nov 2022 22:35:11 +0000 (23:35 +0100)]
dialog: GTK_DIALOG_ERROR_ABORTED => GTK_DIALOG_ERROR_CANCELLED

This is done via the GCancellable, so let's call it cancelling.

2 years agodialog: GTK_DIALOG_ERROR_CANCELLED => GTK_DIALOG_ERROR_DISMISSED
Benjamin Otte [Wed, 23 Nov 2022 22:32:19 +0000 (23:32 +0100)]
dialog: GTK_DIALOG_ERROR_CANCELLED => GTK_DIALOG_ERROR_DISMISSED

The term "cancelling" is used with GCancellable, a user clicking a close
button is not that.
User input is usually described as "dismissing", so we use that term.

2 years agodirectorylist: Always add standard::name
Benjamin Otte [Mon, 17 Oct 2022 18:33:15 +0000 (20:33 +0200)]
directorylist: Always add standard::name

glib can't figure out how to do that, so we need to do that ourselves.

2 years agoMerge branch 'ccook/doc-changes-1' into 'main'
Matthias Clasen [Sat, 24 Dec 2022 12:52:19 +0000 (12:52 +0000)]
Merge branch 'ccook/doc-changes-1' into 'main'

Various spelling mistakes across a few domains that show up in documentation.

See merge request GNOME/gtk!5370

2 years agoMerge branch 'wip/carlosg/autohide-checks-on-x11' into 'main'
Matthias Clasen [Sat, 24 Dec 2022 12:50:09 +0000 (12:50 +0000)]
Merge branch 'wip/carlosg/autohide-checks-on-x11' into 'main'

gdk/surface: Handle clicks outside client surfaces

See merge request GNOME/gtk!5369

2 years agoMake stylecheck happy
Cam Cook [Fri, 23 Dec 2022 16:21:18 +0000 (11:21 -0500)]
Make stylecheck happy

2 years agoMerge remote-tracking branch 'upstream/main' into ccook/doc-changes-1
Cam Cook [Fri, 23 Dec 2022 16:02:18 +0000 (11:02 -0500)]
Merge remote-tracking branch 'upstream/main' into ccook/doc-changes-1

2 years agoVarious spelling mistakes across a few domains that show up in documentation.
Cam Cook [Fri, 23 Dec 2022 16:01:07 +0000 (11:01 -0500)]
Various spelling mistakes across a few domains that show up in documentation.

| domain | current | suggestion |
|--------|---------|------------|
| [GtkAspectFrame](https://gitlab.gnome.org/GNOME/gtk/-/blob/main/gtk/gtkaspectframe.c#L457)    | "requistion of the child" | "requisition of the child" |
| [GtkPaned](https://gitlab.gnome.org/GNOME/gtk/-/blob/main/gtk/gtkpaned.c#L2500)               | "(attributes org.gtk.Method.set_propery=wide-handle)" | "(attributes org.gtk.Method.set_property=wide-handle)"|
| [GtkPopover](https://gitlab.gnome.org/GNOME/gtk/-/blob/main/gtk/gtkpopover.c#L2484)           | "with gtk_popover_set_offset()." | "with [method@Gtk.Popover.set_offset()]." |
| [GtkPopoverMenu](https://gitlab.gnome.org/GNOME/gtk/-/blob/main/gtk/gtkpopovermenu.c#L859)    | "with gtk_popover_menu_add_child()" | "with [method@Gtk.PopoverMenu.add_child()]" |
| [GtkSelectionModel](https://gitlab.gnome.org/GNOME/gtk/-/blob/main/gtk/gtkselectionmodel.c#L316) | "the queired range" | "the queried range" |
| [GtkScrolledWindow](https://gitlab.gnome.org/GNOME/gtk/-/blob/main/gtk/gtkscrolledwindow.c#L76) | "automatically removed hen" | "automatically removed when"|
| [GtkSearchBar](https://gitlab.gnome.org/GNOME/gtk/-/blob/main/gtk/gtksearchbar.c#L425)         | "Connects the \`GtkEditable widget" | "Connects the `GtkEditable` widget" |

2 years agogdk/surface: Handle clicks outside client surfaces
Carlos Garnacho [Fri, 23 Dec 2022 15:04:02 +0000 (16:04 +0100)]
gdk/surface: Handle clicks outside client surfaces

The owner_events=TRUE grab makes GDK on X11 see events happening
outside every client window as received on the grab window.
Additionally check that the pointer is inside the grab window
(i.e. it received GDK_CROSSING_NORMAL crossing events for the
core pointer) in order to handle clicks happening outside client
windows.

These new paths are expected to be a no-op on Wayland, and to
also work for touchscreen input on X11, due to emulated pointer
events.

2 years agoUpdate Ukrainian translation
Yuri Chornoivan [Fri, 23 Dec 2022 13:49:23 +0000 (13:49 +0000)]
Update Ukrainian translation

2 years agoMerge branch 'wip/ignazp/clipboard_eol' into 'main'
Matthias Clasen [Thu, 22 Dec 2022 13:31:07 +0000 (13:31 +0000)]
Merge branch 'wip/ignazp/clipboard_eol' into 'main'

clipboard: improve EOL conversion of plain text

See merge request GNOME/gtk!5367

2 years agoclipboard: improve EOL conversion of plain text
Ignazio Pillai [Thu, 22 Dec 2022 11:55:30 +0000 (12:55 +0100)]
clipboard: improve EOL conversion of plain text

Handle the case of clipboard text with CR line endings

2 years agoMerge branch 'tweak-gtkfilechooser-button-tooltips' into 'main'
Matthias Clasen [Wed, 21 Dec 2022 12:39:53 +0000 (12:39 +0000)]
Merge branch 'tweak-gtkfilechooser-button-tooltips' into 'main'

GtkFileChooser: Tweak Grid View & List View button tooltips

See merge request GNOME/gtk!5345

2 years agoMerge branch 'remove_a11y_name_fallback' into 'main'
Emmanuele Bassi [Wed, 21 Dec 2022 11:06:20 +0000 (11:06 +0000)]
Merge branch 'remove_a11y_name_fallback' into 'main'

Don't present GTK class names to assistive technologies even as a fallback

Closes gnome-control-center#2244

See merge request GNOME/gtk!5365

2 years agoDon't present GTK class names to assistive technologies even as a fallback
Lukáš Tyrychtr [Wed, 21 Dec 2022 10:04:07 +0000 (11:04 +0100)]
Don't present GTK class names to assistive technologies even as a fallback

A screen reader user is not interested in GTK internals, for example,
he does not care whether a button is an image button or not,
and a screen reader will report the fact that it is a button anyway.
Same applies for GtkEntry widgets, for example.

This actually is sufficient to fix gnome-control-center#2244.
And, according to the discussion in #5145, it should be fine.

2 years agoMerge branch 'file-nullable' into 'main'
Matthias Clasen [Wed, 21 Dec 2022 03:23:58 +0000 (03:23 +0000)]
Merge branch 'file-nullable' into 'main'

filelauncher: Make set_file argument nullable

See merge request GNOME/gtk!5357

2 years agoMerge branch 'wip/antoniof/listbase-rubberband-better-fix' into 'main'
Benjamin Otte [Wed, 21 Dec 2022 01:14:57 +0000 (01:14 +0000)]
Merge branch 'wip/antoniof/listbase-rubberband-better-fix' into 'main'

listbase: Cancel rubberband if not handling drag

See merge request GNOME/gtk!4831

2 years agoMerge branch 'include-hicolor-index-theme-as-resource-rebased' into 'main'
Luca Bacci [Tue, 20 Dec 2022 16:08:11 +0000 (16:08 +0000)]
Merge branch 'include-hicolor-index-theme-as-resource-rebased' into 'main'

Include hicolor index.theme as a resource (rebased)

Closes #5303

See merge request GNOME/gtk!5361

2 years agoInclude hicolor index.theme as a resource
Luca Bacci [Tue, 20 Dec 2022 15:30:00 +0000 (16:30 +0100)]
Include hicolor index.theme as a resource

index.theme file copied from upstream xdg/default-icon-theme
repository at tag 0.17:

https://gitlab.freedesktop.org/xdg/default-icon-theme/-/tree/0.17

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

2 years agoMerge branch 'revert-09691ead' into 'main'
Emmanuele Bassi [Tue, 20 Dec 2022 15:22:28 +0000 (15:22 +0000)]
Merge branch 'revert-09691ead' into 'main'

Revert "Merge branch 'include-hicolor-index-theme-as-resource' into 'main'"

See merge request GNOME/gtk!5360

2 years agoRevert "Merge branch 'include-hicolor-index-theme-as-resource' into 'main'"
Luca Bacci [Tue, 20 Dec 2022 13:23:51 +0000 (13:23 +0000)]
Revert "Merge branch 'include-hicolor-index-theme-as-resource' into 'main'"

This reverts merge request !5341

2 years agoMerge branch 'include-hicolor-index-theme-as-resource' into 'main'
Matthias Clasen [Tue, 20 Dec 2022 12:24:25 +0000 (12:24 +0000)]
Merge branch 'include-hicolor-index-theme-as-resource' into 'main'

Include hicolor index.theme as a resource

Closes #5303

See merge request GNOME/gtk!5341

2 years agofilelauncher: Make set_file argument nullable
Maximiliano Sandoval R [Tue, 20 Dec 2022 10:08:28 +0000 (11:08 +0100)]
filelauncher: Make set_file argument nullable

2 years agoUpdate Russian translation
Aleksandr Melman [Tue, 20 Dec 2022 09:33:25 +0000 (09:33 +0000)]
Update Russian translation

2 years agoMerge branch 'fix-asan-more' into 'main'
Matthias Clasen [Tue, 20 Dec 2022 06:04:46 +0000 (06:04 +0000)]
Merge branch 'fix-asan-more' into 'main'

ci: Disable f16c for asan

See merge request GNOME/gtk!5356

2 years agoci: Disable f16c for asan
Matthias Clasen [Tue, 20 Dec 2022 05:29:48 +0000 (00:29 -0500)]
ci: Disable f16c for asan

It appears that f16c crashes asan instantly.

2 years agoMerge branch 'no-more-installed-tests' into 'main'
Matthias Clasen [Tue, 20 Dec 2022 05:33:56 +0000 (05:33 +0000)]
Merge branch 'no-more-installed-tests' into 'main'

build: Drop the install-tests option

See merge request GNOME/gtk!5352

2 years agoci: More verbose output from asan
Matthias Clasen [Tue, 20 Dec 2022 04:36:19 +0000 (23:36 -0500)]
ci: More verbose output from asan

2 years agoMerge branch 'another-flaky-reftest' into 'main'
Matthias Clasen [Tue, 20 Dec 2022 05:07:51 +0000 (05:07 +0000)]
Merge branch 'another-flaky-reftest' into 'main'

ci: Declare a reftest as flaky

See merge request GNOME/gtk!5354

2 years agoMerge branch 'macos-ci-is-iffy' into 'main'
Matthias Clasen [Tue, 20 Dec 2022 05:02:25 +0000 (05:02 +0000)]
Merge branch 'macos-ci-is-iffy' into 'main'

ci: Mark macos build as allow-fail

See merge request GNOME/gtk!5355

2 years agoci: Mark macos build as allow-fail
Matthias Clasen [Tue, 20 Dec 2022 04:55:13 +0000 (23:55 -0500)]
ci: Mark macos build as allow-fail

It fails too often, and it never does us
any good.

2 years agoci: Declare a reftest as flaky
Matthias Clasen [Tue, 20 Dec 2022 04:51:34 +0000 (23:51 -0500)]
ci: Declare a reftest as flaky

fixed-widget-stacking is failing frequently due
to a blinking cursor showing up in one of the
windows in ci.

2 years agoMerge branch 'fix-gtk_doc=true' into 'main'
Matthias Clasen [Tue, 20 Dec 2022 04:17:22 +0000 (04:17 +0000)]
Merge branch 'fix-gtk_doc=true' into 'main'

meson: Require gi-docgen when gtk_doc is required

See merge request GNOME/gtk!5351

2 years agobuild: Drop the install-tests option
Matthias Clasen [Tue, 20 Dec 2022 04:11:20 +0000 (23:11 -0500)]
build: Drop the install-tests option

We no longer use installed tests in CI,
so lets reap the benefit and simplify
our build setup for tests.

2 years agoMerge branch 'fix-introspection-test-deps' into 'main'
Matthias Clasen [Tue, 20 Dec 2022 04:04:17 +0000 (04:04 +0000)]
Merge branch 'fix-introspection-test-deps' into 'main'

build: Lift gir and build_gir to toplevel

See merge request GNOME/gtk!5350

2 years agomeson: Require gi-docgen when gtk_doc is required
Nirbheek Chauhan [Tue, 20 Dec 2022 03:54:30 +0000 (09:24 +0530)]
meson: Require gi-docgen when gtk_doc is required

Fixes build with only `-Dgtk_doc=true` without
`-Dintrospection=enabled`:

    Program gi-docgen found: NO
    Configuring gdk4.toml using configuration

    docs/reference/gdk/meson.build:13:2: ERROR: Tried to use not-found external program in "command"

`introspection` is `auto` by default.

The rest of the docs build is only contingent on
`if get_option('gtk_doc')` so we should use the same restriction here.

We check for `build_gir` below already, and the gi-docgen subproject
itself does not need gobject-introspection so it's fine to do it like
this.

2 years agotests: Maybe skip introspection tests
Matthias Clasen [Tue, 20 Dec 2022 02:18:16 +0000 (21:18 -0500)]
tests: Maybe skip introspection tests

If we don't find the python gi module,
skip the introspection test.

2 years agobuild: Lift gir and build_gir to toplevel
Matthias Clasen [Tue, 20 Dec 2022 02:10:55 +0000 (21:10 -0500)]
build: Lift gir and build_gir to toplevel

build_gir is used in multiple subdirectories,
so it is a bit nasty that it is defined in
one too.