Jakub Steiner
dd9f26c492
HC: make selected items better visible
...
- follow libadwaita's example and outline selected items for better visibility
in high contrast variant
Fixes https://gitlab.gnome.org/GNOME/gtk/-/issues/4984
2022-06-15 14:47:47 +02:00
Benjamin Otte
7953092059
Merge branch 'wip/antoniof/dont-rubberband-on-drag-end' into 'main'
...
listbase: Don't start rubberband on ::drag-end
See merge request GNOME/gtk!4793
2022-06-14 03:45:55 +00:00
Benjamin Otte
0a4c08a7be
inscription: Multiparagraph text is always multiline
...
Wrap this text and clip towards the bottom, no matter how high the
inscription is.
2022-06-13 06:49:12 +02:00
Benjamin Otte
883011f252
inscription: Do not try to align layouts that have a proper width set
...
Pango knows where to put the text.
2022-06-13 06:49:12 +02:00
Georges Basile Stavracas Neto
c93a01d627
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.
2022-06-13 05:35:47 +02:00
Matthias Clasen
62984d091a
Merge branch 'wip/otte/inscription' into 'main'
...
More inscription work
See merge request GNOME/gtk!4808
2022-06-12 01:38:40 +00:00
Benjamin Otte
6d15549f51
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.
2022-06-12 03:10:50 +02:00
Matthias Clasen
d88e935398
Merge branch 'wip/otte/listmodels' into 'main'
...
19 listmodels: Add ::item-type and ::n-items
See merge request GNOME/gtk!4807
2022-06-11 15:15:53 +00:00
Benjamin Otte
393ef4d0a2
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.
2022-06-11 16:28:27 +02:00
Benjamin Otte
efd9aac3fa
assistant: Add ::item-type and ::n-items to the pages list
2022-06-11 16:08:37 +02:00
Benjamin Otte
11aef91fa5
bookmarklist: Add ::item-type and ::n-items
2022-06-11 08:25:23 +02:00
Benjamin Otte
f48c9b8388
directorylist: Add ::item-type and ::n-items
2022-06-11 08:25:22 +02:00
Benjamin Otte
62096ebd16
filterlistmodel: Add ::item-type and ::n-items
...
With tests!
2022-06-11 08:25:22 +02:00
Benjamin Otte
f7b8184b00
fattenlistmodel: Add ::item-type and ::n-items
...
With tests!
2022-06-11 08:25:21 +02:00
Benjamin Otte
b91f60b4f9
listlistmodel: Add ::item-type and ::n-items
2022-06-11 08:25:21 +02:00
Benjamin Otte
b6ba8ecbd0
maplistmodel: Add ::item-type and ::n-items
...
With tests!
2022-06-11 08:25:20 +02:00
Benjamin Otte
02ee10639d
multifilter: Add ::item-type and ::n-items
2022-06-11 08:25:20 +02:00
Benjamin Otte
0e42fa95b1
multiselection: Add ::item-type and ::n-items
...
With tests!
2022-06-11 08:25:19 +02:00
Benjamin Otte
7a36632afc
multisorter: Add ::item-type and ::n-items
2022-06-11 08:25:19 +02:00
Benjamin Otte
301f1a577d
noselection: Add ::item-type and ::n-items
2022-06-11 08:25:18 +02:00
Benjamin Otte
67e336992f
propertylookuplistmodel: Add ::item-type and ::n-items
...
With tests!
2022-06-11 08:25:18 +02:00
Benjamin Otte
e1845f5e90
selectionfiltermodel: Add ::item-type and ::n-items
2022-06-11 08:25:17 +02:00
Benjamin Otte
d7dae84af2
shortcutcontroller: Add ::item-type and ::n-items
2022-06-11 08:25:17 +02:00
Benjamin Otte
0f829c4599
singleselection: Add ::item-type and ::n-items
...
With tests!
2022-06-11 08:25:16 +02:00
Benjamin Otte
3fca865625
slicelistmodel: Add ::item-type and ::n-items
...
With tests!
2022-06-11 08:25:16 +02:00
Benjamin Otte
bf8b26aa27
sortlistmodel: Add ::item-type and ::n-items
...
With tests!
2022-06-11 08:25:15 +02:00
Benjamin Otte
cbc3d3f3ec
stack: Add ::item-type and ::n-items to the pages list
2022-06-11 08:25:15 +02:00
Benjamin Otte
fd4562aac9
treelistmodel: Add ::item-type and ::n-items
...
With tests!
2022-06-11 08:25:14 +02:00
Benjamin Otte
c26962c4b1
multifilter: Actually emit ::items-changed when items change
2022-06-11 08:25:14 +02:00
Benjamin Otte
46ce19d22a
multisorter: Actually emit ::items-changed when items change
2022-06-11 08:25:14 +02:00
Benjamin Otte
303bc3bb1b
inspector: Use inscriptions for the rendernodes list
2022-06-11 02:15:08 +02:00
Benjamin Otte
bf5edc6b7c
reftests: Add test for the overflow methods
...
Reference is using labels again
2022-06-11 02:15:08 +02:00
Benjamin Otte
7c034cc283
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.
2022-06-11 02:15:08 +02:00
Benjamin Otte
e437a9c348
inscription: Add a11y support for text interface
...
This is entirely untested.
2022-06-11 02:15:08 +02:00
Benjamin Otte
1517c1813c
inscription: Add ::text-overflow
...
Can't name it ::overflow, because that's taken by GtkWidget already
2022-06-11 02:15:08 +02:00
Benjamin Otte
01fcfc5c2a
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.
2022-06-11 02:15:08 +02:00
Benjamin Otte
3f4c88aad1
inscription: Add ::attributes property
2022-06-11 02:15:08 +02:00
Benjamin Otte
b8199bcc1f
gtkpango: Add G_GNUC_WARN_UNUSED_RESULT
...
Guess who just spent 10 minutes in gdb and doesn't want to do that
again.
2022-06-10 04:34:23 +02:00
Benjamin Otte
abdbef1b5e
inspector: Add inscription support
...
Allow searching for inscription text and show it in the label column.
2022-06-10 04:34:23 +02:00
Benjamin Otte
6ac7f0562b
inspector: Use inscriptions in the object tree
2022-06-10 04:34:23 +02:00
Benjamin Otte
b6a8080b2f
Add GtkInscription
...
A label alternative that renders itself into a given rectangle.
The main use case is cells in column view.
Related: #3334
2022-06-09 05:58:27 +02:00
Benjamin Otte
e4869938b7
listview: Fix clipping for horizontal listviews
...
Fixes a bug introduced with
commit 39645d3258
2022-06-07 19:21:46 +02:00
Benjamin Otte
fa1dca29b6
inspector: Allow searching for editable text
...
... and display it in the label column.
2022-06-07 17:33:04 +02:00
Benjamin Otte
9de027df65
video: Fix typo in docs
2022-06-07 05:56:15 +02:00
Benjamin Otte
39645d3258
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
2022-06-07 03:20:11 +02:00
Matthias Clasen
19fb336c39
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
2022-06-06 18:29:14 -04:00
António Fernandes
dc4540fae9
listbase: Don't start rubberband on ::drag-end
...
GtkGestrureDrag::drag-end can be emitted when the pointer has just
crossed the drag threshold and we have not started the rubberband yet.
This happens if another gesture has claimed the event sequence earlier
in the current event propagation chain.
In such situation, our ::drag-end calls gtk_list_base_drag_update(),
which proceeds to start the rubberband. That's obviously wrong.
Additionally, it also tries to get modifiers from an event it we are
already denied, which obviously fails with criticals:
`gdk_event_get_modifier_state: assertion 'GDK_IS_EVENT (event)' failed`
Thus, if there is no rubberband when we receive ::drag-end, do nothing.
2022-06-04 17:30:10 +00:00
Matthias Clasen
31da5f7e2a
Merge branch 'expand-builtin-icontheme' into 'main'
...
Add more directories to the builtin hicolor index
Closes #4960
See merge request GNOME/gtk!4786
2022-06-04 10:44:48 +00:00
Matthias Clasen
0e6a3ab397
Merge branch 'ebassi/a11y-text-extents' into 'main'
...
a11y: Implement atspi.Text.GetCharacterExtents for GtkTextView
See merge request GNOME/gtk!4754
2022-06-02 17:13:53 +00:00
Carlos Garnacho
e895f7dd70
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.
2022-06-02 14:35:53 +02:00