Benjamin Otte [Mon, 13 Jun 2022 02:53:35 +0000 (04:53 +0200)]
inscription: Do not try to align layouts that have a proper width set
Pango knows where to put the text.
Benjamin Otte [Sun, 12 Jun 2022 23:26:20 +0000 (01:26 +0200)]
reftests: Add inscription reftest for xalign
Compare with labels again.
Georges Basile Stavracas Neto [Sun, 12 Jun 2022 17:27:33 +0000 (14:27 -0300)]
Inscription: Derive row alignment from xalign
Texts usually want the alignment of each row to match the xalign of
the text itself.
Derive the alignment of the PangoLayout from the xalign property of
the inscription. Because Pango doesn't provide float row alignment,
map left, center and right from the xalign in 1 / 3 steps.
Piotr Drąg [Sun, 12 Jun 2022 12:52:37 +0000 (14:52 +0200)]
Update POTFILES.skip
Matthias Clasen [Sun, 12 Jun 2022 01:38:40 +0000 (01:38 +0000)]
Merge branch 'wip/otte/inscription' into 'main'
More inscription work
See merge request GNOME/gtk!4808
Benjamin Otte [Sun, 12 Jun 2022 00:58:22 +0000 (02:58 +0200)]
inscription: Add ::wrap-mode
We use a different wrap-mode than GtkLabel, because we cannot just
resize the widget to make long words fit, we have to fit the size we are
given.
Benjamin Otte [Sun, 12 Jun 2022 00:42:00 +0000 (02:42 +0200)]
reftests: Test inscription multiline overflow
Benjamin Otte [Sat, 11 Jun 2022 18:27:53 +0000 (20:27 +0200)]
gtk-demo: Add a "Read More" label demo.
Benjamin Otte [Sat, 11 Jun 2022 20:15:43 +0000 (22:15 +0200)]
reftests: Test overflowing inscription yalign
Overflowing inscriptions should always align to the top, even when half
an extra line is available.
Matthias Clasen [Sat, 11 Jun 2022 15:15:53 +0000 (15:15 +0000)]
Merge branch 'wip/otte/listmodels' into 'main'
19 listmodels: Add ::item-type and ::n-items
See merge request GNOME/gtk!4807
Benjamin Otte [Sat, 11 Jun 2022 14:28:27 +0000 (16:28 +0200)]
inscription: Fixate layout at top when it doesn't fit
Ellipsized and clipped layouts shouldn't reposition themselves according
to yalign when they don't fully fit.
Benjamin Otte [Sat, 11 Jun 2022 05:34:36 +0000 (07:34 +0200)]
assistant: Add ::item-type and ::n-items to the pages list
Matthias Clasen [Sat, 11 Jun 2022 13:47:20 +0000 (13:47 +0000)]
Merge branch 'wip/otte/inscription' into 'main'
Add GtkInscription
See merge request GNOME/gtk!4800
Benjamin Otte [Sat, 11 Jun 2022 05:15:30 +0000 (07:15 +0200)]
bookmarklist: Add ::item-type and ::n-items
Benjamin Otte [Sat, 11 Jun 2022 05:08:23 +0000 (07:08 +0200)]
directorylist: Add ::item-type and ::n-items
Benjamin Otte [Sat, 11 Jun 2022 05:05:27 +0000 (07:05 +0200)]
filterlistmodel: Add ::item-type and ::n-items
With tests!
Benjamin Otte [Sat, 11 Jun 2022 04:43:25 +0000 (06:43 +0200)]
fattenlistmodel: Add ::item-type and ::n-items
With tests!
Benjamin Otte [Sat, 11 Jun 2022 04:30:00 +0000 (06:30 +0200)]
listlistmodel: Add ::item-type and ::n-items
Benjamin Otte [Sat, 11 Jun 2022 03:32:29 +0000 (05:32 +0200)]
maplistmodel: Add ::item-type and ::n-items
With tests!
Benjamin Otte [Sat, 11 Jun 2022 03:25:09 +0000 (05:25 +0200)]
multifilter: Add ::item-type and ::n-items
Benjamin Otte [Sat, 11 Jun 2022 03:15:28 +0000 (05:15 +0200)]
multiselection: Add ::item-type and ::n-items
With tests!
Benjamin Otte [Sat, 11 Jun 2022 03:15:05 +0000 (05:15 +0200)]
multisorter: Add ::item-type and ::n-items
Benjamin Otte [Sat, 11 Jun 2022 02:56:58 +0000 (04:56 +0200)]
noselection: Add ::item-type and ::n-items
Benjamin Otte [Sat, 11 Jun 2022 02:52:34 +0000 (04:52 +0200)]
propertylookuplistmodel: Add ::item-type and ::n-items
With tests!
Benjamin Otte [Sat, 11 Jun 2022 02:51:41 +0000 (04:51 +0200)]
selectionfiltermodel: Add ::item-type and ::n-items
Benjamin Otte [Sat, 11 Jun 2022 02:50:49 +0000 (04:50 +0200)]
shortcutcontroller: Add ::item-type and ::n-items
Benjamin Otte [Sat, 11 Jun 2022 02:49:51 +0000 (04:49 +0200)]
singleselection: Add ::item-type and ::n-items
With tests!
Benjamin Otte [Sat, 11 Jun 2022 02:49:17 +0000 (04:49 +0200)]
slicelistmodel: Add ::item-type and ::n-items
With tests!
Benjamin Otte [Sat, 11 Jun 2022 02:48:45 +0000 (04:48 +0200)]
sortlistmodel: Add ::item-type and ::n-items
With tests!
Benjamin Otte [Sat, 11 Jun 2022 05:34:07 +0000 (07:34 +0200)]
stack: Add ::item-type and ::n-items to the pages list
Benjamin Otte [Sat, 11 Jun 2022 02:48:03 +0000 (04:48 +0200)]
treelistmodel: Add ::item-type and ::n-items
With tests!
Benjamin Otte [Sat, 11 Jun 2022 03:19:50 +0000 (05:19 +0200)]
multifilter: Actually emit ::items-changed when items change
Benjamin Otte [Sat, 11 Jun 2022 03:10:30 +0000 (05:10 +0200)]
multisorter: Actually emit ::items-changed when items change
Benjamin Otte [Fri, 10 Jun 2022 02:02:30 +0000 (04:02 +0200)]
inspector: Use inscriptions for the rendernodes list
Benjamin Otte [Thu, 9 Jun 2022 23:09:49 +0000 (01:09 +0200)]
reftests: Add test for the overflow methods
Reference is using labels again
Benjamin Otte [Thu, 9 Jun 2022 05:16:13 +0000 (07:16 +0200)]
inscription: Set css name
We use "label" just like GtkLabel as the two widgets differ in the way
they are measured, but they should be styled the same.
If it turns out we change our opinion on this for specific cases, we
can add style classes later.
Benjamin Otte [Thu, 9 Jun 2022 05:14:30 +0000 (07:14 +0200)]
inscription: Add a11y support for text interface
This is entirely untested.
Benjamin Otte [Thu, 9 Jun 2022 03:17:40 +0000 (05:17 +0200)]
inscription: Add ::text-overflow
Can't name it ::overflow, because that's taken by GtkWidget already
Benjamin Otte [Thu, 9 Jun 2022 00:45:59 +0000 (02:45 +0200)]
reftests: Add test for inscription markup parsing
Compare with label markup parsing as the reference.
Benjamin Otte [Thu, 9 Jun 2022 00:43:13 +0000 (02:43 +0200)]
inscription: Add ::markup
Utility property that sets both the ::text and ::attributes properties,
mainly intended for use in ui files to ease translation support and bindings.
Benjamin Otte [Wed, 8 Jun 2022 22:59:05 +0000 (00:59 +0200)]
inscription: Add ::attributes property
Emin Tufan Çetin [Fri, 10 Jun 2022 06:06:14 +0000 (06:06 +0000)]
Update Turkish translation
Benjamin Otte [Thu, 9 Jun 2022 00:42:10 +0000 (02:42 +0200)]
gtkpango: Add G_GNUC_WARN_UNUSED_RESULT
Guess who just spent 10 minutes in gdb and doesn't want to do that
again.
Benjamin Otte [Tue, 7 Jun 2022 15:30:14 +0000 (17:30 +0200)]
inspector: Add inscription support
Allow searching for inscription text and show it in the label column.
Benjamin Otte [Tue, 7 Jun 2022 15:23:32 +0000 (17:23 +0200)]
inspector: Use inscriptions in the object tree
Benjamin Otte [Tue, 7 Jun 2022 04:21:14 +0000 (06:21 +0200)]
testcolumnview: Use GtkInscription
This test is suddenly MASSIVELY faster.
I wonder why.
Could it be because inscription does exactly what it was made for?
Benjamin Otte [Tue, 7 Jun 2022 04:09:37 +0000 (06:09 +0200)]
gtk-demo: Use GtkInscription in the wordlist demo
Benjamin Otte [Thu, 19 May 2022 04:45:05 +0000 (06:45 +0200)]
gtk-demo: Use GtkInscription in the main list
Benjamin Otte [Thu, 19 May 2022 04:44:23 +0000 (06:44 +0200)]
Add GtkInscription
A label alternative that renders itself into a given rectangle.
The main use case is cells in column view.
Related: #3334
Matthias Clasen [Wed, 8 Jun 2022 10:36:46 +0000 (10:36 +0000)]
Merge branch 'symbolic-hc' into 'main'
Wayland/display: Don't force HighContrast icon theme
See merge request GNOME/gtk!4802
Matthias Clasen [Tue, 7 Jun 2022 18:57:53 +0000 (18:57 +0000)]
Merge branch 'node-editor-scale' into 'main'
node-editor: Add a zoom button
See merge request GNOME/gtk!4804
Benjamin Otte [Tue, 7 Jun 2022 18:20:43 +0000 (18:20 +0000)]
Merge branch 'wip/otte/for-main' into 'main'
inspector: Allow searching for editable text
See merge request GNOME/gtk!4801
Matthias Clasen [Tue, 7 Jun 2022 17:39:22 +0000 (13:39 -0400)]
node-editor: Add a zoom button
This is a bit more convenient than manually
adding a transform node in the text editor.
Florian Müllner [Tue, 7 Jun 2022 17:30:10 +0000 (19:30 +0200)]
wayland/display: Don't force HighContrast icon theme
The theme is considered deprecated in favor of symbolic icons from
the regular theme.
Benjamin Otte [Tue, 7 Jun 2022 17:12:17 +0000 (19:12 +0200)]
listview: Fix clipping for horizontal listviews
Fixes a bug introduced with
commit
39645d32582892bc4fd3bb55ea5d11af860f0efd
Benjamin Otte [Tue, 7 Jun 2022 15:32:03 +0000 (17:32 +0200)]
inspector: Allow searching for editable text
... and display it in the label column.
Hugo Carvalho [Tue, 7 Jun 2022 13:54:09 +0000 (13:54 +0000)]
Update Portuguese translation
Yuri Chornoivan [Tue, 7 Jun 2022 06:15:52 +0000 (06:15 +0000)]
Update Ukrainian translation
Benjamin Otte [Thu, 19 May 2022 03:40:47 +0000 (05:40 +0200)]
video: Fix typo in docs
Benjamin Otte [Tue, 7 Jun 2022 01:36:06 +0000 (01:36 +0000)]
Merge branch 'wip/otte/for-main' into 'main'
listview: cull listitems that are out of view
See merge request GNOME/gtk!4799
Benjamin Otte [Wed, 1 Jun 2022 02:29:15 +0000 (04:29 +0200)]
listview: cull listitems that are out of view
Use set_child_visible(FALSE) on those widgets and don't allocate them.
This should usually be the majority of items, so it's quite a worthwhile
addition.
Idea by Ivan Molodetskikh.
Related: #3334
Matthias Clasen [Mon, 6 Jun 2022 22:45:44 +0000 (22:45 +0000)]
Merge branch 'fix-ui-file-translation-main' into 'main'
Fix ui files to work for translations
Closes #4957
See merge request GNOME/gtk!4798
Matthias Clasen [Mon, 6 Jun 2022 22:29:14 +0000 (18:29 -0400)]
Fix ui files to work for translations
We need to keep using translatable="yes", since
that is what the installed its file is looking
for.
Fixes: #4957
Matthias Clasen [Mon, 6 Jun 2022 13:12:15 +0000 (13:12 +0000)]
Merge branch 'matthiasc/for-main' into 'main'
gdk: Improve GdkTimeCoord docs
See merge request GNOME/gtk!4795
Matthias Clasen [Mon, 6 Jun 2022 12:55:51 +0000 (08:55 -0400)]
gdk: Improve GdkTimeCoord docs
Danial Behzadi [Mon, 6 Jun 2022 08:13:32 +0000 (08:13 +0000)]
Update Persian translation
Aleksandr Melman [Sun, 5 Jun 2022 12:34:50 +0000 (12:34 +0000)]
Update Russian translation
Yuri Chornoivan [Sun, 5 Jun 2022 08:26:34 +0000 (08:26 +0000)]
Update Ukrainian translation
Benjamin Otte [Sat, 4 Jun 2022 20:26:58 +0000 (20:26 +0000)]
Merge branch 'gl-api-es-fix' into 'main'
glcontext: Respect ES API when getting gl version from shared context
Closes #4763
See merge request GNOME/gtk!4687
Pablo Correa Gómez [Mon, 30 May 2022 18:18:15 +0000 (20:18 +0200)]
glcontext: Simplify get_required_version api
Simplify the API to just return the requirements that the user
has asked for. The rest of the code was undocumented and previously
used as a buggy source for a default value from internal code.
Since the buggy code is now fixed, remove all unnecessary cruft.
Pablo Correa Gómez [Wed, 25 May 2022 13:23:38 +0000 (15:23 +0200)]
glcontext: Do not check for correctness in set_required_version
There are two reasons for this:
* First, the refactored realize code now makes sure that no
context with unsupported version is ever created.
* Second, this code could bump into false possitives and negatives, since
the user is not requested, nor expected to set_required_version
in any specific order relative to set_allowed_apis. Therefore,
some version could be rejected or accepted based on a set of
allowed apis that the user has not yet correctly configured.
Pablo Correa Gómez [Mon, 30 May 2022 19:11:28 +0000 (21:11 +0200)]
glcontext-glx: Refactor realize function
Mimic the behavior of the egl context creation by stablishing
some sane logic for the api and version used. Split the decision
of the type of context (api, legacy) and the creation of a context
of a certain version and all its properties.
Pablo Correa Gómez [Fri, 6 May 2022 19:43:30 +0000 (21:43 +0200)]
glcontext: Refactor realize function, fix interaction with shared context
Pablo Correa Gómez [Fri, 27 May 2022 23:01:19 +0000 (01:01 +0200)]
macosglcontext: Do not rely on default from get_required_version
get_required_version cannot warranty to return any default. Instead,
fetch the user requisites clipped by the requirements in our backend.
Pablo Correa Gómez [Fri, 27 May 2022 22:58:43 +0000 (00:58 +0200)]
glcontext-win32-wgl: Respect user required version, use display as minimum
By setting and then getting the required version in a context, the code
was not respecting user requirements. Instead, simply get the requested
version by the user clipped by the requirements (display version)
Pablo Correa Gómez [Mon, 30 May 2022 18:14:53 +0000 (20:14 +0200)]
glcontext: Add internal get_clipped_version function
It is useful for backends to get user set preferences while
ensuring the correctness of the result, which will be always
greater or equal than the minimum version provided
Pablo Correa Gómez [Mon, 9 May 2022 22:21:40 +0000 (00:21 +0200)]
glcontext: Improve get_version documentation
Matthias Clasen [Sat, 4 Jun 2022 10:44:48 +0000 (10:44 +0000)]
Merge branch 'expand-builtin-icontheme' into 'main'
Add more directories to the builtin hicolor index
Closes #4960
See merge request GNOME/gtk!4786
Matthias Clasen [Thu, 2 Jun 2022 21:24:10 +0000 (21:24 +0000)]
Merge branch 'wip/carlosg/activation-roundtrip-fix' into 'main'
gdk/wayland: Check the GdkSurface wl_surface before using it for activation
Closes gnome-control-center#1862
See merge request GNOME/gtk!4789
Carlos Garnacho [Thu, 2 Jun 2022 21:05:39 +0000 (23:05 +0200)]
gdk/wayland: Check the GdkSurface wl_surface before using it for activation
Double check the GdkSurface has a wl_surface before using it as the activation
token source, since we cannot use NULL surfaces here.
Fixes: https://gitlab.gnome.org/GNOME/gnome-control-center/-/issues/1862
Carlos Garnacho [Thu, 2 Jun 2022 21:04:40 +0000 (23:04 +0200)]
gdk/wayland: Dispatch GdkAppLaunchContext activation token in its own queue
Use a separate queue to dispatch the token object exclusively, just like we
do on the GdkSurface activation paths.
Matthias Clasen [Thu, 2 Jun 2022 17:13:53 +0000 (17:13 +0000)]
Merge branch 'ebassi/a11y-text-extents' into 'main'
a11y: Implement atspi.Text.GetCharacterExtents for GtkTextView
See merge request GNOME/gtk!4754
Carlos Garnacho [Thu, 2 Jun 2022 12:32:41 +0000 (14:32 +0200)]
a11y: Transform GetCharacterExtents coords to native surface ones
These coordinates are "window"-relative, so transform textview coordinates
to the coordinate system of the GtkNative containing it.
Matthias Clasen [Thu, 2 Jun 2022 10:38:12 +0000 (06:38 -0400)]
Add more directories to the builtin hicolor index
We haven't had any scalable directories in this list.
Add some. Since we seem to have settled on including
just actions and status as subdirectories for each
size, add scalable/actions and scalable/status.
Fixes: #4960
Matthias Clasen [Wed, 1 Jun 2022 18:54:54 +0000 (18:54 +0000)]
Merge branch 'wip/chergert/GTK_DEBUG_TEXT_DIR' into 'main'
main: add GTK_DEBUG_TEXT_DIR environment variable
See merge request GNOME/gtk!4768
Christian Hergert [Wed, 1 Jun 2022 18:26:44 +0000 (11:26 -0700)]
gtkmain: add support for GTK_DEBUG=invert-text-dir
This allows inverting the default text-direction in an application for
debugging, testing, and QA purposes. IDEs such as Builder may automate this
to encourage more application developers to test with a text-direction
different than their own.
Matthias Clasen [Wed, 1 Jun 2022 00:13:44 +0000 (00:13 +0000)]
Merge branch 'wip/chergert/fix-lookup-with-interfaces' into 'main'
builderparser: fix <lookup/> with interface types
See merge request GNOME/gtk!4782
Christian Hergert [Tue, 31 May 2022 22:58:21 +0000 (15:58 -0700)]
builderparser: fix <lookup/> with interface types
If we have a <lookup name="foo" type="SomeInterface"> a runtime warning
would be emitted and the expression would fail to be created. This is
because the interfaces will likely be a GObject as well, meaning we check
the object type branch instead of the interface.
Instead, we need to use the fundamental type like other parts of the
expression system use.
Matthias Clasen [Mon, 30 May 2022 21:05:34 +0000 (21:05 +0000)]
Merge branch 'matthiasc/for-main' into 'main'
shortcutcontroller: Fix a typo
See merge request GNOME/gtk!4778
Matthias Clasen [Mon, 30 May 2022 20:24:02 +0000 (16:24 -0400)]
shortcutcontroller: Fix a typo
Pablo Correa Gómez [Mon, 30 May 2022 18:47:40 +0000 (20:47 +0200)]
glcontext: Improve documentation on get_use_es api
Carlos Garnacho [Mon, 30 May 2022 09:55:29 +0000 (09:55 +0000)]
Merge branch 'gesture-click-unpaired-release-nullable-sequence' into 'main'
Mark sequence parameter in GtkGestureClick::unpaired-release signal as nullable
See merge request GNOME/gtk!4777
Sebastian Dröge [Mon, 30 May 2022 08:33:59 +0000 (11:33 +0300)]
Mark sequence parameter in GtkGestureClick::unpaired-release signal as nullable
Aurimas Černius [Sun, 29 May 2022 20:05:31 +0000 (23:05 +0300)]
Updated Lithuanian translation
Matthias Clasen [Sat, 28 May 2022 15:34:13 +0000 (15:34 +0000)]
Merge branch 'fix-tests-with-recent-glib' into 'main'
Avoid g_log_set_writer_func in tests
See merge request GNOME/gtk!4772
Matthias Clasen [Sat, 28 May 2022 14:17:47 +0000 (10:17 -0400)]
Avoid g_log_set_writer_func in tests
It is not usable anymore since GLib 2.72.
Luming Zh [Sat, 28 May 2022 01:52:42 +0000 (01:52 +0000)]
Update Chinese (China) translation
Matthias Clasen [Fri, 27 May 2022 22:18:26 +0000 (22:18 +0000)]
Merge branch 'headerbar-demo-upgrade' into 'main'
Make our demos more likable
See merge request GNOME/gtk!4769
Matthias Clasen [Fri, 27 May 2022 21:34:55 +0000 (17:34 -0400)]
Make our demos more likable
Nobody likes Facebook.
Everybody loves the Eagles.
Matthias Clasen [Fri, 27 May 2022 16:47:38 +0000 (16:47 +0000)]
Merge branch 'wayland-cursor-scale2' into 'main'
wayland: scale cursors to the right size
See merge request GNOME/gtk!4766