gtk4.git
3 years agoMerge branch 'coreyberla-main-patch-84997' into 'main'
Matthias Clasen [Wed, 13 Jul 2022 23:44:53 +0000 (23:44 +0000)]
Merge branch 'coreyberla-main-patch-84997' into 'main'

ci: Remove print-backends build option

See merge request GNOME/gtk!4866

3 years agoMerge branch 'ebassi/childless-stack-page' into 'main'
Matthias Clasen [Wed, 13 Jul 2022 21:11:58 +0000 (21:11 +0000)]
Merge branch 'ebassi/childless-stack-page' into 'main'

stack: Assert that StackPage:child is set

See merge request GNOME/gtk!4201

3 years agoci: Remove print-backends build option
Corey Berla [Wed, 13 Jul 2022 14:21:12 +0000 (14:21 +0000)]
ci: Remove print-backends build option

Flatpak CI is failing because of unknown option "print-backends".
print-backends was renamed to print in c4d350c260879c11ea94641ac820b331aeaccc7c
and subsequently was removed in a4aa6d79addfcc5f6b61a9aecd2b3a647e249622
(replaced by print-cups and print-cloudprint as auto options)

3 years agotestsuite: Fix up a few test for GtkStackPage changes
Matthias Clasen [Fri, 27 May 2022 21:24:58 +0000 (17:24 -0400)]
testsuite: Fix up a few test for GtkStackPage changes

GtkStackPage objects can no longer be freely created.
Update our generic object tests to take that into
account.

3 years agoGtkStack: Create stack pages with child
Matthias Clasen [Fri, 27 May 2022 21:24:14 +0000 (17:24 -0400)]
GtkStack: Create stack pages with child

We're requiring stack pages to have a child
at construction time now. Make it so!

3 years agostack: Assert that StackPage:child is set
Emmanuele Bassi [Mon, 29 Nov 2021 16:57:21 +0000 (16:57 +0000)]
stack: Assert that StackPage:child is set

Childless GtkStackPage instances are not allowed, otherwise everything
falls apart in random places.

3 years agoUpdate Indonesian translation
Kukuh Syafaat [Wed, 13 Jul 2022 12:58:18 +0000 (12:58 +0000)]
Update Indonesian translation

3 years agoMerge branch 'check-button-s-ancestry' into 'main'
Matthias Clasen [Wed, 13 Jul 2022 11:20:57 +0000 (11:20 +0000)]
Merge branch 'check-button-s-ancestry' into 'main'

print: Check button is not descendant of toggle button

See merge request GNOME/gtk!4864

3 years agoMerge branch 'empty_list_adjustment' into 'main'
Matthias Clasen [Wed, 13 Jul 2022 11:17:07 +0000 (11:17 +0000)]
Merge branch 'empty_list_adjustment' into 'main'

listviews: Reset scrollbar adjustment when list is empty

Closes #4370

See merge request GNOME/gtk!4865

3 years agoMerge branch 'main' into 'main'
Matthias Clasen [Wed, 13 Jul 2022 11:02:02 +0000 (11:02 +0000)]
Merge branch 'main' into 'main'

textview: Include gutter while computing child allocations

Closes #5016

See merge request GNOME/gtk!4849

3 years agotextview: Include gutter while computing child allocations
JCWasmx86 [Sun, 3 Jul 2022 07:49:25 +0000 (09:49 +0200)]
textview: Include gutter while computing child allocations

The width of the left gutter and the height of the top gutter
are now used while computing the child allocations for e.g.
anchors, otherwise - if such a gutter is present - the
widget would be at the wrong position.

Closes #5016

3 years ago4.7.1
Matthias Clasen [Wed, 13 Jul 2022 02:55:33 +0000 (22:55 -0400)]
4.7.1

3 years agolistviews: Reset scrollbar adjustment when list is empty
Corey Berla [Tue, 12 Jul 2022 19:42:28 +0000 (12:42 -0700)]
listviews: Reset scrollbar adjustment when list is empty

In a list with a visible scrollbar, the scrollbar usually becomes
invisible when the numbers of items is less than the required amount
to scroll.  If, however, the list is emptied all at once,
the scrollbar remains.  This happens because when there's an empty
list gtk_list_view_size_allocate() returns early before the scrollbar
adjustment is updated.

Given that the list is empty, simply reset the adjustment values
to zero.

Fixes: https://gitlab.gnome.org/GNOME/gtk/-/issues/4370
3 years agoprint: Check button is not descendant of toggle button
Marek Kasik [Tue, 12 Jul 2022 14:22:59 +0000 (16:22 +0200)]
print: Check button is not descendant of toggle button

GtkCheckButton is not derived from GtkToggleButton anymore.
This caused some issues in GtkPrinterOptionWidget which
did not port handling of the button.

3 years agoMerge branch 'matthiasc/for-main' into 'main'
Matthias Clasen [Mon, 11 Jul 2022 19:32:55 +0000 (19:32 +0000)]
Merge branch 'matthiasc/for-main' into 'main'

search-entry: Add getter/setter annotation

See merge request GNOME/gtk!4862

3 years agosearch-entry: Add getter/setter annotation
Matthias Clasen [Mon, 11 Jul 2022 19:08:39 +0000 (15:08 -0400)]
search-entry: Add getter/setter annotation

This was suggested in !4823.

3 years agoMerge branch 'wip/otte/for-main' into 'main'
Matthias Clasen [Mon, 11 Jul 2022 18:44:01 +0000 (18:44 +0000)]
Merge branch 'wip/otte/for-main' into 'main'

frameclock: Run paint idle from flush idle

Closes #4941

See merge request GNOME/gtk!4858

3 years agoMerge branch 'free-print-backends' into 'main'
Matthias Clasen [Mon, 11 Jul 2022 18:04:46 +0000 (18:04 +0000)]
Merge branch 'free-print-backends' into 'main'

print: Free print backends after use

Closes #5019

See merge request GNOME/gtk!4860

3 years agoMerge branch 'ebassi/finish-template' into 'main'
Matthias Clasen [Mon, 11 Jul 2022 18:02:28 +0000 (18:02 +0000)]
Merge branch 'ebassi/finish-template' into 'main'

Add gtk_widget_clear_template()

See merge request GNOME/gtk!4735

3 years agoMerge branch 'fix_flatpak' into 'main'
Matthias Clasen [Mon, 11 Jul 2022 17:35:45 +0000 (17:35 +0000)]
Merge branch 'fix_flatpak' into 'main'

Fix flatpak

See merge request GNOME/gtk!4861

3 years agoRename clear_template to dispose_template
Emmanuele Bassi [Thu, 7 Jul 2022 13:09:35 +0000 (14:09 +0100)]
Rename clear_template to dispose_template

Make it more clear that the function is supposed to be called during the
dispose sequence of a widget.

3 years agofontchooserdialog: Use gtk_widget_clear_template()
Emmanuele Bassi [Thu, 7 Jul 2022 12:59:18 +0000 (13:59 +0100)]
fontchooserdialog: Use gtk_widget_clear_template()

3 years agostatusbar: Use gtk_widget_clear_template()
Emmanuele Bassi [Thu, 7 Jul 2022 12:59:03 +0000 (13:59 +0100)]
statusbar: Use gtk_widget_clear_template()

3 years agofilechooserwidget: Use gtk_widget_clear_template()
Emmanuele Bassi [Thu, 7 Jul 2022 12:58:51 +0000 (13:58 +0100)]
filechooserwidget: Use gtk_widget_clear_template()

3 years agofilechooserdialog: Use gtk_widget_clear_template()
Emmanuele Bassi [Thu, 7 Jul 2022 12:58:32 +0000 (13:58 +0100)]
filechooserdialog: Use gtk_widget_clear_template()

3 years agoPort the inspector to gtk_widget_clear_template()
Emmanuele Bassi [Wed, 6 Jul 2022 12:53:22 +0000 (13:53 +0100)]
Port the inspector to gtk_widget_clear_template()

Use clear_template() instead of unparenting widgets manually.

3 years agodocs: Include clear_template() in the templates overview
Emmanuele Bassi [Wed, 6 Jul 2022 12:29:31 +0000 (13:29 +0100)]
docs: Include clear_template() in the templates overview

Make sure that it's clear how to use it in idiomatic code, by tying it
to gtk_widget_init_template().

3 years agoPort gtk-demo widgets to gtk_widget_clear_template()
Emmanuele Bassi [Wed, 6 Jul 2022 12:23:54 +0000 (13:23 +0100)]
Port gtk-demo widgets to gtk_widget_clear_template()

3 years agoPort node editor to gtk_widget_clear_template()
Emmanuele Bassi [Wed, 6 Jul 2022 12:23:36 +0000 (13:23 +0100)]
Port node editor to gtk_widget_clear_template()

3 years agoPort icon browser to gtk_widget_clear_template()
Emmanuele Bassi [Wed, 6 Jul 2022 12:23:23 +0000 (13:23 +0100)]
Port icon browser to gtk_widget_clear_template()

3 years agoPort constraint editor to gtk_widget_clear_template()
Emmanuele Bassi [Wed, 6 Jul 2022 12:22:54 +0000 (13:22 +0100)]
Port constraint editor to gtk_widget_clear_template()

3 years agodocs: Clarify scope of gtk_widget_clear_template()
Emmanuele Bassi [Wed, 6 Jul 2022 12:04:22 +0000 (13:04 +0100)]
docs: Clarify scope of gtk_widget_clear_template()

The clear_template() method only clears the template children.

3 years agoemojichooser: Use gtk_widget_clear_template()
Emmanuele Bassi [Mon, 23 May 2022 14:17:03 +0000 (15:17 +0100)]
emojichooser: Use gtk_widget_clear_template()

3 years agomediacontrols: Use gtk_widget_clear_template()
Emmanuele Bassi [Mon, 23 May 2022 14:16:27 +0000 (15:16 +0100)]
mediacontrols: Use gtk_widget_clear_template()

3 years agoAdd gtk_widget_clear_template()
Emmanuele Bassi [Mon, 16 May 2022 13:10:20 +0000 (14:10 +0100)]
Add gtk_widget_clear_template()

The dual of gtk_widget_init_template(), which should be used to clear
the template data associated with a specific GtkWidget type.

3 years agoflatpak: Bump boost to 1.79
Corey Berla [Mon, 11 Jul 2022 16:11:59 +0000 (09:11 -0700)]
flatpak: Bump boost to 1.79

3 years agoflatpak: Remove benchmarks build option for graphene
Corey Berla [Mon, 11 Jul 2022 16:11:24 +0000 (09:11 -0700)]
flatpak: Remove benchmarks build option for graphene

benchmarks was removed in
https://github.com/ebassi/graphene/commit/419edb99f0a314f51157b04d645cd24a959598d2

3 years agoflatpak: Change option enable_vulkan=no to vulkan=disabled
Corey Berla [Mon, 11 Jul 2022 16:08:47 +0000 (09:08 -0700)]
flatpak: Change option enable_vulkan=no to vulkan=disabled

Syntax was modified in c4d350c260879c11ea94641ac820b331aeaccc7c

3 years agoprint: Free print backends after use
Marek Kasik [Mon, 11 Jul 2022 14:54:36 +0000 (16:54 +0200)]
print: Free print backends after use

Print backends loaded in GtkPrintUnixDialog's load_print_backends()
are not freed later as done in e.g. GtkPageSetupUnixDialog.
This commit destroys and unref those print backends.

Closes #5019

3 years agoNEWS: Updates
Matthias Clasen [Sun, 10 Jul 2022 22:52:01 +0000 (18:52 -0400)]
NEWS: Updates

3 years agoMerge branch 'matthiasc/for-main' into 'main'
Matthias Clasen [Sun, 10 Jul 2022 20:38:29 +0000 (20:38 +0000)]
Merge branch 'matthiasc/for-main' into 'main'

inspector: Hide measure graphs by default

See merge request GNOME/gtk!4859

3 years agoinspector: Hide measure graphs by default
Matthias Clasen [Sun, 10 Jul 2022 20:24:12 +0000 (16:24 -0400)]
inspector: Hide measure graphs by default

It is much more valuable to have a responsive inspector,
than to have these graphs.

3 years agoMerge branch 'fix-fractional-letterspacing' into 'main'
Matthias Clasen [Sun, 10 Jul 2022 19:42:25 +0000 (19:42 +0000)]
Merge branch 'fix-fractional-letterspacing' into 'main'

css: Allow fractional letterspacing

Closes #5034

See merge request GNOME/gtk!4857

3 years agoframeclock: Run paint idle from flush idle
Benjamin Otte [Sun, 10 Jul 2022 19:15:22 +0000 (21:15 +0200)]
frameclock: Run paint idle from flush idle

Don't return to the main loop, instead force a run of the paint idle.
The paint idle will know to skip all the phases that aren't requested.

This is critically important becuase gdksurface.c assumes the
FLUSH_EVENTS and RESUME_EVENTS phases are matched, and we cannot
guarantee that if we return to the main loop and let various reentrant
code change the frame clock state.

This would lead to bugs with events being paused and never unpaused
again or even crashes.

Fixes #4941

3 years agocss: Allow fractional letterspacing
Matthias Clasen [Sun, 10 Jul 2022 19:22:18 +0000 (15:22 -0400)]
css: Allow fractional letterspacing

Something like letter-spacing: -0.5px make a lot of
sense. But we were handling the number as integer
somewhere, loosing the fractional part.

Fixes: #5034
3 years agoMerge branch 'matthiasc/for-main' into 'main'
Matthias Clasen [Fri, 8 Jul 2022 02:00:11 +0000 (02:00 +0000)]
Merge branch 'matthiasc/for-main' into 'main'

widget-factory: Fix a missing export

See merge request GNOME/gtk!4855

3 years agowidget-factory: Fix a missing export
Matthias Clasen [Fri, 8 Jul 2022 01:44:57 +0000 (21:44 -0400)]
widget-factory: Fix a missing export

This broke when we started using a scope.

3 years agoMerge branch 'wip/cdavis/use-password-input-purpose' into 'main'
Matthias Clasen [Wed, 6 Jul 2022 19:48:57 +0000 (19:48 +0000)]
Merge branch 'wip/cdavis/use-password-input-purpose' into 'main'

passwordentry: Use password input purpose

See merge request GNOME/gtk!4854

3 years agopasswordentry: Use password input purpose
Christopher Davis [Wed, 6 Jul 2022 17:48:25 +0000 (13:48 -0400)]
passwordentry: Use password input purpose

Per discussion in #gtk on Matrix

3 years agoMerge branch 'matthiasc/for-main' into 'main'
Matthias Clasen [Tue, 5 Jul 2022 15:13:20 +0000 (15:13 +0000)]
Merge branch 'matthiasc/for-main' into 'main'

fontchooser work

See merge request GNOME/gtk!4850

3 years agoMerge branch 'fix-ffmpeg-decoding' into 'main'
Benjamin Otte [Mon, 4 Jul 2022 21:27:11 +0000 (21:27 +0000)]
Merge branch 'fix-ffmpeg-decoding' into 'main'

ffmpeg: Fix crash on some media files

See merge request GNOME/gtk!4851

3 years agoffmpeg: Fix crash on some media files
Stephan Vedder [Mon, 4 Jul 2022 09:41:45 +0000 (11:41 +0200)]
ffmpeg: Fix crash on some media files

Return code EAGAIN expects the user to feed more packets into the decoder

3 years agofontchooser: Make size level effective
Matthias Clasen [Sun, 3 Jul 2022 16:50:40 +0000 (12:50 -0400)]
fontchooser: Make size level effective

We were not hiding the size controls on the tweaks
page, which is arguably what should happen when
the size level is disabled.

3 years agoBeef up testfontchooserdialog
Matthias Clasen [Sun, 3 Jul 2022 16:44:53 +0000 (12:44 -0400)]
Beef up testfontchooserdialog

Allow testing levels.

3 years agofontchooser: Some OpenType improvements
Matthias Clasen [Sun, 3 Jul 2022 11:38:24 +0000 (07:38 -0400)]
fontchooser: Some OpenType improvements

Work harder to find examples for char variation
features, and pull the feature labels out of
the font if possible. This lets us show
meaningful names like "Localised @ and & symbols"
instead of "Stylistic Set 7" or even "ss07".

3 years agoFont features demo improvements
Matthias Clasen [Sun, 3 Jul 2022 05:19:19 +0000 (01:19 -0400)]
Font features demo improvements

Use font-provided names for ssNN and cvNN features.

But good luck finding a font that has these!

3 years agoFont features demo improvements
Matthias Clasen [Sun, 3 Jul 2022 03:37:34 +0000 (23:37 -0400)]
Font features demo improvements

Add buttons to cycle through samples.

3 years agoFix up font features demo
Matthias Clasen [Sun, 3 Jul 2022 02:46:27 +0000 (22:46 -0400)]
Fix up font features demo

The conversion to a textview was incomplete.

3 years agoUpdate Serbian translation
Мирослав Николић [Sun, 3 Jul 2022 02:18:43 +0000 (02:18 +0000)]
Update Serbian translation

(cherry picked from commit 7c0cf9e0c927cd783b0e68d387e20a857b0baf9d)

3 years agoMerge branch 'wip/exalm/actionbar' into 'main'
Emmanuele Bassi [Sat, 2 Jul 2022 22:46:40 +0000 (22:46 +0000)]
Merge branch 'wip/exalm/actionbar' into 'main'

actionbar: Document GtkBuildable child types

See merge request GNOME/gtk!4848

3 years agoactionbar: Document GtkBuildable child types
Alexander Mikhaylenko [Sat, 2 Jul 2022 22:26:18 +0000 (02:26 +0400)]
actionbar: Document GtkBuildable child types

3 years agoUpdate Russian translation
Aleksandr Melman [Sat, 2 Jul 2022 18:50:32 +0000 (18:50 +0000)]
Update Russian translation

3 years agoMerge branch 'matthiasc/for-main' into 'main'
Matthias Clasen [Sat, 2 Jul 2022 18:17:04 +0000 (18:17 +0000)]
Merge branch 'matthiasc/for-main' into 'main'

gtk4-demo: Add color to font features

See merge request GNOME/gtk!4847

3 years agogtk4-demo: Add color to font features
Matthias Clasen [Sat, 2 Jul 2022 15:34:57 +0000 (11:34 -0400)]
gtk4-demo: Add color to font features

3 years agoMerge branch 'wip/chergert/fix-menutracker' into 'main'
Matthias Clasen [Fri, 1 Jul 2022 11:17:32 +0000 (11:17 +0000)]
Merge branch 'wip/chergert/fix-menutracker' into 'main'

menutrackeritem: protect against use-after-free

Closes #5009

See merge request GNOME/gtk!4832

3 years agoMerge branch 'matthiasc/for-main' into 'main'
Matthias Clasen [Fri, 1 Jul 2022 04:37:07 +0000 (04:37 +0000)]
Merge branch 'matthiasc/for-main' into 'main'

gtk4-demo: Cosmetics

See merge request GNOME/gtk!4846

3 years agogtk4-demo: Cosmetics
Matthias Clasen [Fri, 1 Jul 2022 04:10:16 +0000 (00:10 -0400)]
gtk4-demo: Cosmetics

3 years agoMerge branch 'matthiasc/for-main' into 'main'
Matthias Clasen [Fri, 1 Jul 2022 04:08:03 +0000 (04:08 +0000)]
Merge branch 'matthiasc/for-main' into 'main'

Matthiasc/for main

See merge request GNOME/gtk!4845

3 years agogtk4-demo: Add a waterfall to font features
Matthias Clasen [Fri, 1 Jul 2022 03:52:37 +0000 (23:52 -0400)]
gtk4-demo: Add a waterfall to font features

3 years agogtk4-demo: Fix font features animation
Matthias Clasen [Fri, 1 Jul 2022 01:11:49 +0000 (21:11 -0400)]
gtk4-demo: Fix font features animation

3 years agoMerge branch 'matthiasc/for-main' into 'main'
Matthias Clasen [Fri, 1 Jul 2022 01:03:04 +0000 (01:03 +0000)]
Merge branch 'matthiasc/for-main' into 'main'

demos: Use gtk_builder_cscope_add_callback

See merge request GNOME/gtk!4844

3 years agodemos: Use gtk_builder_cscope_add_callback
Matthias Clasen [Fri, 1 Jul 2022 00:10:06 +0000 (20:10 -0400)]
demos: Use gtk_builder_cscope_add_callback

This is C convenience API, lets use it for
our convenience.

3 years agoMerge branch 'matthiasc/for-main' into 'main'
Matthias Clasen [Thu, 30 Jun 2022 23:23:04 +0000 (23:23 +0000)]
Merge branch 'matthiasc/for-main' into 'main'

Add gtk_builder_cscope_add_callback

See merge request GNOME/gtk!4843

3 years agogtk3-demo: Add animation to font features
Matthias Clasen [Thu, 30 Jun 2022 22:53:10 +0000 (18:53 -0400)]
gtk3-demo: Add animation to font features

3 years agogtk4-demo: Polish the font features demo
Matthias Clasen [Thu, 30 Jun 2022 21:51:41 +0000 (17:51 -0400)]
gtk4-demo: Polish the font features demo

3 years agogtk4-demo: Restructure the font features demo
Matthias Clasen [Thu, 30 Jun 2022 21:02:50 +0000 (17:02 -0400)]
gtk4-demo: Restructure the font features demo

3 years agogtk4-demo: Cosmetics
Matthias Clasen [Thu, 30 Jun 2022 20:08:12 +0000 (16:08 -0400)]
gtk4-demo: Cosmetics

Rename the ui file to match the C source, to preserve sanity.

3 years agoAdd gtk_builder_cscope_add_callback
Matthias Clasen [Thu, 30 Jun 2022 20:13:17 +0000 (16:13 -0400)]
Add gtk_builder_cscope_add_callback

This is a convenience method for the common case
that symbols are used under their own name.

3 years agoMerge branch 'matthiasc/for-main' into 'main'
Matthias Clasen [Thu, 30 Jun 2022 14:12:20 +0000 (14:12 +0000)]
Merge branch 'matthiasc/for-main' into 'main'

gtk-demo: Beef up font features demo

See merge request GNOME/gtk!4841

3 years agogtk-demo: Beef up font features demo
Matthias Clasen [Thu, 30 Jun 2022 13:42:32 +0000 (09:42 -0400)]
gtk-demo: Beef up font features demo

Some work on making this demo better.

3 years agoMerge branch 'wip/jimmac/selectable-labels' into 'main'
Matthias Clasen [Wed, 29 Jun 2022 20:05:44 +0000 (20:05 +0000)]
Merge branch 'wip/jimmac/selectable-labels' into 'main'

theme: selectable labels legibility

Closes #5017

See merge request GNOME/gtk!4840

3 years agotheme: selectable labels legibility
Jakub Steiner [Wed, 29 Jun 2022 19:37:20 +0000 (21:37 +0200)]
theme: selectable labels legibility

- don't set fg color for selections

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

3 years agoMerge branch 'matthiasc/for-main' into 'main'
Matthias Clasen [Wed, 29 Jun 2022 19:16:32 +0000 (19:16 +0000)]
Merge branch 'matthiasc/for-main' into 'main'

gtk-demo: Cosmetics

See merge request GNOME/gtk!4839

3 years agoMerge branch 'testdatatable' into 'main'
Benjamin Otte [Wed, 29 Jun 2022 13:00:53 +0000 (13:00 +0000)]
Merge branch 'testdatatable' into 'main'

tests: Add testdatatable

See merge request GNOME/gtk!4838

3 years agotests: Add testdatatable
Ivan Molodetskikh [Wed, 29 Jun 2022 04:46:21 +0000 (21:46 -0700)]
tests: Add testdatatable

Add a GtkColumnView scrolling performance test similar to the one used
previously in https://gitlab.gnome.org/GNOME/gtk/-/issues/3334.

The test creates a table with 20 columns and 10,000 rows and scrolls it
to a random position every frame, while measuring the frame times.

There is a commandline flag to pick the cell widget between none (for
benchmarking raw column view scrolling) and various label types. There
is also a commandline switch to disable automatic scrolling in case a
manual assessment is desired. Finally, there's an argument for
controlling the number of columns.

3 years agoMerge branch 'ebassi/ci-publish-doc-fix' into 'main'
Emmanuele Bassi [Tue, 28 Jun 2022 21:02:46 +0000 (21:02 +0000)]
Merge branch 'ebassi/ci-publish-doc-fix' into 'main'

ci: Force the fedora image for the publish-docs job

See merge request GNOME/gtk!4837

3 years agoci: Force the fedora image for the publish-docs job
Emmanuele Bassi [Tue, 28 Jun 2022 20:31:07 +0000 (21:31 +0100)]
ci: Force the fedora image for the publish-docs job

Otherwise every CI runner might decide to use a different default
image, and we'll end up on one that doesn't have curl.

3 years agoMerge branch 'wip/otte/for-main' into 'main'
Benjamin Otte [Tue, 28 Jun 2022 19:30:17 +0000 (19:30 +0000)]
Merge branch 'wip/otte/for-main' into 'main'

Rework listitemfactory

See merge request GNOME/gtk!4835

3 years agoMerge branch 'template-signals' into 'main'
Emmanuele Bassi [Tue, 28 Jun 2022 17:59:31 +0000 (17:59 +0000)]
Merge branch 'template-signals' into 'main'

Force quark creation for templates

See merge request GNOME/gtk!4836

3 years agoForce quark creation for templates
Maximiliano Sandoval R [Tue, 28 Jun 2022 16:48:38 +0000 (18:48 +0200)]
Force quark creation for templates

3 years agoUpdate Turkish translation
Sabri Ünal [Tue, 28 Jun 2022 15:52:12 +0000 (15:52 +0000)]
Update Turkish translation

3 years agosignallistitemfactory: Update signal prototype
Benjamin Otte [Tue, 28 Jun 2022 14:33:24 +0000 (16:33 +0200)]
signallistitemfactory: Update signal prototype

I'm not sure this is API safe, but it is necessary if we want to support
section items and canvas items.

If it's deemed API-unstable, we have to copy this object and deprecate
this one.

3 years agolistitemfactory: Make this callback-based
Benjamin Otte [Tue, 28 Jun 2022 14:34:24 +0000 (16:34 +0200)]
listitemfactory: Make this callback-based

This way, we no longer prescribe the use of either GtkListItem or
GtkListItemWidget.

This means we can use it in other places, such as for custom section
header objects or with my Canvas ideas.

3 years agopicture: Clear the paintable properly
Benjamin Otte [Tue, 28 Jun 2022 14:25:31 +0000 (16:25 +0200)]
picture: Clear the paintable properly

Add a clear() function and call it from dispose() instead of using
set_paintable().

3 years agoUpdate Persian translation
Danial Behzadi [Tue, 28 Jun 2022 10:31:16 +0000 (10:31 +0000)]
Update Persian translation

3 years agoUpdate Russian translation
Aleksandr Melman [Sat, 25 Jun 2022 18:36:18 +0000 (18:36 +0000)]
Update Russian translation

3 years agoUpdate Occitan translation
Quentin PAGÈS [Sat, 25 Jun 2022 08:56:48 +0000 (08:56 +0000)]
Update Occitan translation

3 years agomenutrackeritem: protect against use-after-free
Christian Hergert [Fri, 24 Jun 2022 21:28:18 +0000 (14:28 -0700)]
menutrackeritem: protect against use-after-free

With recent updates to GLib, I now see cases where we can hit a state that
has finalized before notify (which will bump the ref count back up). This
is evident in GNOME Text Editor when showing a language submenu from a
popover, and then dismissing the popover and subsequently the tab.

With the previous commit, we at least get a warning like this, which helped
track down the issue.

 Gtk-CRITICAL **: gtk_action_observable_unregister_observer: assertion 'GTK_IS_ACTION_OBSERVABLE (observable)' failed
 GLib-GObject-CRITICAL **: g_object_ref: assertion '!object_already_finalized' failed

This patch fixes both of those criticals.

Fixes #5009

3 years agomenutrackeritem: be defensive during finalize
Christian Hergert [Fri, 24 Jun 2022 20:50:08 +0000 (13:50 -0700)]
menutrackeritem: be defensive during finalize

The menu/action system tends to be incredibly re-entrant, and while fixing
the misuse during finalization cycles should be a priority, this can help
protect just a bit more.

Related #5009

3 years agoMerge branch 'wip/otte/for-main' into 'main'
Benjamin Otte [Fri, 24 Jun 2022 03:39:16 +0000 (03:39 +0000)]
Merge branch 'wip/otte/for-main' into 'main'

gdk: Replace GTK_USE_PORTAL env var with GDK_DEBUG flag

See merge request GNOME/gtk!4829