Matthias Clasen [Wed, 15 Dec 2021 05:24:05 +0000 (00:24 -0500)]
Fix event history
Collecting of history wasn't working correctly
for either motion or scroll events.
Matthias Clasen [Wed, 15 Dec 2021 04:43:29 +0000 (23:43 -0500)]
inspector: Show event history in recorder
This was instrumental in debugging why
scroll compression does not work.
Matthias Clasen [Wed, 15 Dec 2021 04:42:14 +0000 (23:42 -0500)]
Cosmetrics: Remove mention of a nonexisting type
No such thing as GdkScrollHistory.
Matthias Clasen [Wed, 15 Dec 2021 03:03:52 +0000 (22:03 -0500)]
inspector: Remove debug spew
Matthias Clasen [Wed, 15 Dec 2021 02:52:20 +0000 (21:52 -0500)]
inspector: Add event recording
Make the recorder also keep track of events,
and show them in some detail.
Matthias Clasen [Wed, 15 Dec 2021 00:51:35 +0000 (19:51 -0500)]
inspector: More tweaks to the recorder
Put the two left columns in a stack, and add
an empty page there. This will let us add
other recording types in the future, with
their own pages.
Matthias Clasen [Wed, 15 Dec 2021 00:34:53 +0000 (19:34 -0500)]
inspector: Tweaks to the recorder
Don't show the profiler data in the frame list,
instead show timestamps there.
Matthias Clasen [Wed, 15 Dec 2021 00:06:11 +0000 (00:06 +0000)]
Merge branch 'matthiasc/for-main' into 'main'
inspector: Use a listview in the recorder
See merge request GNOME/gtk!4255
Christian Hergert [Fri, 19 Nov 2021 19:59:29 +0000 (11:59 -0800)]
a11y: return -1 if parent is NULL
Matthias Clasen [Tue, 14 Dec 2021 20:08:12 +0000 (15:08 -0500)]
inspector: Use a listview in the recorder
Its the awesome new list widget, lets use it!
Matthias Clasen [Tue, 14 Dec 2021 18:09:01 +0000 (18:09 +0000)]
Merge branch 'ebassi/issue-4543' into 'main'
Add a boxed GType for GtkBitsetIter
Closes #4543
See merge request GNOME/gtk!4253
Emmanuele Bassi [Tue, 14 Dec 2021 15:51:13 +0000 (15:51 +0000)]
Add a boxed GType for GtkBitsetIter
This way language bindings have a chance at managing the memory of
GtkBitset iterators.
Fixes: #4543
Hugo Carvalho [Tue, 14 Dec 2021 14:20:25 +0000 (14:20 +0000)]
Update Portuguese translation
Hugo Carvalho [Tue, 14 Dec 2021 14:03:49 +0000 (14:03 +0000)]
Update Portuguese translation
Yuri Chornoivan [Tue, 14 Dec 2021 13:21:33 +0000 (13:21 +0000)]
Update Ukrainian translation
Aurimas Černius [Tue, 14 Dec 2021 11:41:59 +0000 (13:41 +0200)]
Updated Lithuanian translation
Matthias Clasen [Tue, 14 Dec 2021 06:34:49 +0000 (06:34 +0000)]
Merge branch 'optimize-precompile' into 'main'
builder: Use a string chunk for precompile
See merge request GNOME/gtk!4233
Matthias Clasen [Tue, 14 Dec 2021 06:06:05 +0000 (01:06 -0500)]
builder: Drop empty text chunks when precompiling
These don't add any value either.
Matthias Clasen [Tue, 14 Dec 2021 05:12:37 +0000 (00:12 -0500)]
builder: Drop irrelevant whitespace in precompile
Drop text nodes that won't contribute to the end result.
This gets rid of a lot of text nodes in the replay.
Matthias Clasen [Tue, 14 Dec 2021 04:58:06 +0000 (04:58 +0000)]
Merge branch 'matthiasc/for-main' into 'main'
builder: Use GMarkup properly
See merge request GNOME/gtk!4250
Garrett Regier [Thu, 23 Sep 2021 22:26:56 +0000 (15:26 -0700)]
builder: Use g_slice_free_chain() for strings in precompile
Garrett Regier [Thu, 23 Sep 2021 22:21:53 +0000 (15:21 -0700)]
builder: Remove root special case from precompile
Garrett Regier [Wed, 22 Sep 2021 01:01:54 +0000 (18:01 -0700)]
builder: Avoid g_hash_table_get_values() in precompile
Embed the GList link in the RecordDataString.
Garrett Regier [Tue, 21 Sep 2021 22:26:45 +0000 (15:26 -0700)]
builder: Use a flexible array for attributes in precompile
Garrett Regier [Tue, 21 Sep 2021 22:13:34 +0000 (15:13 -0700)]
builder: Reduce memory usage in precompile
Split the Element and Text nodes into separate structures.
Garrett Regier [Tue, 21 Sep 2021 21:36:40 +0000 (14:36 -0700)]
builder: Use a GQueue in precompile
This avoids g_list_last() and
embeds the GList link in the RecordDataTree.
Garrett Regier [Tue, 21 Sep 2021 21:26:24 +0000 (14:26 -0700)]
builder: Use a reasonable default string size in precompile
Garrett Regier [Tue, 21 Sep 2021 21:23:34 +0000 (14:23 -0700)]
builder: Embed text length in precompile
Garrett Regier [Tue, 21 Sep 2021 21:07:06 +0000 (14:07 -0700)]
builder: Combine attribute name and value allocations
Garrett Regier [Tue, 21 Sep 2021 20:57:08 +0000 (13:57 -0700)]
builder: Use a string chunk for precompile
Also use an explicit length and avoid g_strndup().
Garrett Regier [Tue, 21 Sep 2021 06:39:35 +0000 (23:39 -0700)]
builder: Avoid double string lookup in precompile
Matthias Clasen [Tue, 14 Dec 2021 04:35:25 +0000 (23:35 -0500)]
builder: Use GMarkup properly
We must call end_parse to ensure we get errors
for incomplete documents.
Matthias Clasen [Tue, 14 Dec 2021 00:31:49 +0000 (00:31 +0000)]
Merge branch 'matthiasc/for-main' into 'main'
tiff loader: Catch more errors
See merge request GNOME/gtk!4248
Matthias Clasen [Mon, 13 Dec 2021 22:51:24 +0000 (17:51 -0500)]
tiff loader: Catch more errors
tiff_open_read may fail, and we should not crash
in that case but return an error.
Matthias Clasen [Mon, 13 Dec 2021 21:29:48 +0000 (21:29 +0000)]
Merge branch 'builder-tool-fixes' into 'main'
builderparser: Be more robust
See merge request GNOME/gtk!4247
Matthias Clasen [Mon, 13 Dec 2021 20:08:35 +0000 (15:08 -0500)]
buildertool: Be more robust
Don't pass a NULL string to gtk_builder_value_from_string.
Matthias Clasen [Mon, 13 Dec 2021 19:44:40 +0000 (14:44 -0500)]
builderparser: Be more robust
If a document contains no useful content,
just say so instead of crashing.
Matthias Clasen [Mon, 13 Dec 2021 19:54:56 +0000 (19:54 +0000)]
Merge branch 'builder-tool-fixes' into 'main'
buildertool: Fix a possible crash
See merge request GNOME/gtk!4246
Matthias Clasen [Mon, 13 Dec 2021 19:19:12 +0000 (14:19 -0500)]
buildertool: Be more robust
A lot of crashes in simplify can be avoided
if get_class_name does not return NULL.
Matthias Clasen [Mon, 13 Dec 2021 18:52:50 +0000 (13:52 -0500)]
buildertool: Fix a possible crash
We need to call g_markup_parse_context_end_parse
to catch incomplete documents that we might not
handle well later.
Yuri Chornoivan [Mon, 13 Dec 2021 13:16:42 +0000 (13:16 +0000)]
Update Ukrainian translation
Matthias Clasen [Mon, 13 Dec 2021 12:55:04 +0000 (12:55 +0000)]
Merge branch 'wip/baedert/for-master' into 'main'
gl: Imply that node_supports_transforms() means 2D transforms
Closes #4501
See merge request GNOME/gtk!4232
Matthias Clasen [Mon, 13 Dec 2021 03:39:48 +0000 (03:39 +0000)]
Merge branch 'fix-x11-drag-icons' into 'main'
colorswatch: Make drag source optional
See merge request GNOME/gtk!4244
Matthias Clasen [Mon, 13 Dec 2021 03:23:31 +0000 (22:23 -0500)]
colorbutton: No nested drag sources, please
This is causing trouble on X11.
Matthias Clasen [Mon, 13 Dec 2021 02:01:40 +0000 (21:01 -0500)]
dragicon: Make color icons work in X11
We need to disable the DND support in
GtkColorSwatch completely for this to work
in X11.
Matthias Clasen [Mon, 13 Dec 2021 02:01:01 +0000 (21:01 -0500)]
colorswatch: Make drag source optional
When using a colorswatch as a drag icon,
this can get in the way, so make it optional.
Matthias Clasen [Mon, 13 Dec 2021 02:43:48 +0000 (02:43 +0000)]
Merge branch 'matthiasc/for-main' into 'main'
dragicon: Provide default icons for paintables
See merge request GNOME/gtk!4243
Matthias Clasen [Mon, 13 Dec 2021 01:43:50 +0000 (20:43 -0500)]
dragicon: Provide default icons for more types
Provide default icons for paintables and files.
This is easy to do, and makes sense.
fixup drag icon
Matthias Clasen [Mon, 13 Dec 2021 02:28:34 +0000 (21:28 -0500)]
dragicon: No events, please
We run into trouble on X11 if the widgets
in the drag icon have drop targets attached.
Prevent this by suppressing event delivery
to drag icons outright.
Benjamin Otte [Mon, 13 Dec 2021 01:17:00 +0000 (01:17 +0000)]
Merge branch 'wip/otte/for-main' into 'main'
x11: Fix a deadlock in INCR transfers
See merge request GNOME/gtk!4242
Benjamin Otte [Mon, 13 Dec 2021 00:54:21 +0000 (01:54 +0100)]
x11: Don't delete important signal handlers randomly
We finish the write to the output stream long after the stream has been
closed, so we want to keep the event handler around to do just that.
Instead, remove the handler on finalize.
Benjamin Otte [Mon, 13 Dec 2021 00:52:30 +0000 (01:52 +0100)]
x11: Explicitly track end of stream
The OutputStream needs to write a 0 byte end of stream Property. We need
to track if that has been written, and we do that with that new
property.
We also use that property to always request flushes when the stream is
being closed, so that we don't wait for another flush() call.
Benjamin Otte [Mon, 13 Dec 2021 00:43:24 +0000 (01:43 +0100)]
x11: Explicitly close_async() the output stream
We need to be very careful when writing data, because if we aren't, sync
functions will be called on the output stream and X11 does not like that
at all.
Benjamin Otte [Mon, 13 Dec 2021 00:41:04 +0000 (01:41 +0100)]
x11: Keep a reference to the SelectionOutputStream while writing
This ensures close() isn't called from dispose() while we're still busy
writing.
In theory this should never happen, but in practice it just did.
Matthias Clasen [Sun, 12 Dec 2021 23:51:30 +0000 (23:51 +0000)]
Merge branch 'clipboard-demo-improvements' into 'main'
inspector: Show more datatypes for the clipboard
See merge request GNOME/gtk!4241
Matthias Clasen [Sun, 12 Dec 2021 23:27:58 +0000 (18:27 -0500)]
gdk: Drop some pointless code
There is no point in sorting png first when
registering (de)serializers, since we ignore
the png format now when walking the list.
Matthias Clasen [Sun, 12 Dec 2021 23:01:50 +0000 (18:01 -0500)]
inspector: Show more datatypes for the clipboard
It is easy enough to show colors, files and pixbufs.
Matthias Clasen [Sun, 12 Dec 2021 21:42:31 +0000 (21:42 +0000)]
Merge branch 'clipboard-demo-improvements' into 'main'
droptarget: Improve the docs
See merge request GNOME/gtk!4240
Matthias Clasen [Sun, 12 Dec 2021 21:25:07 +0000 (16:25 -0500)]
gtk-demo: Add dnd back to the clipboard demo
Matthias Clasen [Sun, 12 Dec 2021 21:26:00 +0000 (16:26 -0500)]
droptarget: Improve the docs
Add the signal connection to the example.
Matthias Clasen [Sun, 12 Dec 2021 18:58:07 +0000 (18:58 +0000)]
Merge branch 'clipboard-demo-improvements' into 'main'
gtk-demo: Small followup fixes
See merge request GNOME/gtk!4239
Matthias Clasen [Sun, 12 Dec 2021 18:41:24 +0000 (13:41 -0500)]
gtk-demo: Small followup fixes
Make image copy work remotely.
Matthias Clasen [Sun, 12 Dec 2021 18:30:27 +0000 (18:30 +0000)]
Merge branch 'new-clipboard-demo' into 'main'
docs: Small improvement
See merge request GNOME/gtk!4238
Matthias Clasen [Sun, 12 Dec 2021 18:13:11 +0000 (13:13 -0500)]
gtk-demo: Rewrite the clipboard demo
This is more in line with the current clipboard
api, and shows handling colors and files.
Yuri Chornoivan [Sun, 12 Dec 2021 17:18:14 +0000 (17:18 +0000)]
Update Ukrainian translation
Hugo Carvalho [Sun, 12 Dec 2021 16:26:05 +0000 (16:26 +0000)]
Update Portuguese translation
Matthias Clasen [Sun, 12 Dec 2021 14:03:11 +0000 (09:03 -0500)]
docs: Small improvement
I could not find the attributes of the <binding>
element mentioned anywhere in the docs.
Piotr Drąg [Sun, 12 Dec 2021 12:54:41 +0000 (13:54 +0100)]
Update POTFILES.in and POTFILES.skip
Timm Bäder [Fri, 10 Dec 2021 19:07:39 +0000 (20:07 +0100)]
gl: Linear gradients don't support 3d transforms
Add another helper similar to the one for transforms, but that only
works on 2d transforms.
Fixes #4501
Benjamin Otte [Sat, 11 Dec 2021 22:46:30 +0000 (22:46 +0000)]
Merge branch 'wip/otte/inspector' into 'main'
inspector: Add a clipboard page
See merge request GNOME/gtk!4237
Benjamin Otte [Sat, 11 Dec 2021 22:21:53 +0000 (23:21 +0100)]
contentformats: Make sure 0 elements means the array is NULL
Don't return arrays with 0 elements, return NULL.
Benjamin Otte [Thu, 19 Aug 2021 16:38:27 +0000 (18:38 +0200)]
inspector: Add a clipboard page
Shows all the formats supported by the clipboard (and primary clipboard)
and allows displaying them (by potentially downloading them)
Matthias Clasen [Sat, 11 Dec 2021 16:32:45 +0000 (16:32 +0000)]
Merge branch 'fix-textchild-abi' into 'main'
Restore the GtkTextchild abi
Closes #4531
See merge request GNOME/gtk!4236
Matthias Clasen [Sat, 11 Dec 2021 15:55:55 +0000 (10:55 -0500)]
Restore the GtkTextchild abi
Move the new chars field to a private struct.
Fixes: #4531
Matthias Clasen [Fri, 10 Dec 2021 18:35:00 +0000 (18:35 +0000)]
Merge branch 'deprecate-device-source' into 'main'
Deprecate GdkDevice:source
See merge request GNOME/gtk!4207
Matthias Clasen [Fri, 10 Dec 2021 18:01:59 +0000 (18:01 +0000)]
Merge branch 'fix-printer-enumeration' into 'main'
Fix dialog-less printing
Closes #4439
See merge request GNOME/gtk!4215
Matthias Clasen [Fri, 10 Dec 2021 18:00:50 +0000 (18:00 +0000)]
Merge branch 'bump-meson-dep' into 'main'
Require meson 0.59
Closes #4486
See merge request GNOME/gtk!4230
Matthias Clasen [Fri, 10 Dec 2021 17:15:32 +0000 (17:15 +0000)]
Merge branch 'missing-since-tag' into 'main'
Add a missing since tag
See merge request GNOME/gtk!4229
Matthias Clasen [Fri, 10 Dec 2021 17:14:04 +0000 (12:14 -0500)]
ci: Use meson 0.59 for msvc
Matthias Clasen [Fri, 10 Dec 2021 17:12:52 +0000 (12:12 -0500)]
ci: Use meson 0.59 on macos
Matthias Clasen [Fri, 10 Dec 2021 16:36:07 +0000 (11:36 -0500)]
Fix the targets variable in pc files
This is meant as a space-separated list of
string, so escaping the spaces is uncalled
for.
Fixes: #4486
Matthias Clasen [Fri, 10 Dec 2021 16:34:23 +0000 (11:34 -0500)]
Require meson 0.59
This is needed to fix a regression in our pc file
generation.
Matthias Clasen [Fri, 10 Dec 2021 13:26:59 +0000 (08:26 -0500)]
Add a missing since tag
gtk_text_child_anchor_new_with_replacement was
recently added.
Matthias Clasen [Wed, 1 Dec 2021 03:07:02 +0000 (22:07 -0500)]
Fix dialog-less printing
We were sometimes ending printer enumeration prematurely,
and the code was confused about the meaning of found_printer.
The new setup follows these rules:
- We *only* end the search prematurely if found_printer
is set, which indicates that we found the right printer
- We *always* call find_printer_idle exactly once, and
make it return less than perfect matches like the
default printer, or the first printer we found
Fixes: #4439
Matthias Clasen [Fri, 10 Dec 2021 13:17:32 +0000 (13:17 +0000)]
Merge branch 'wip/jimmac/unfocused-selection-dejavu' into 'main'
Revert "styling: Have unfocused selections"
Closes #4393
See merge request GNOME/gtk!4228
Jakub Steiner [Fri, 10 Dec 2021 11:00:12 +0000 (12:00 +0100)]
selections: have unfocused state
- text selections for unfocused elements - textview, label, entry,
spinbutton
fixes https://gitlab.gnome.org/GNOME/gtk/-/issues/4393
Jakub Steiner [Fri, 10 Dec 2021 10:36:10 +0000 (11:36 +0100)]
Revert "styling: Have unfocused selections"
This reverts commit
96f63a6bf343d1f2fbdbcbdaca9835fa675351dc.
Matthias Clasen [Thu, 9 Dec 2021 23:50:21 +0000 (23:50 +0000)]
Merge branch 'bilelmoussaoui/header' into 'main'
gdk: drop removed method from the header
See merge request GNOME/gtk!4225
Matthias Clasen [Thu, 9 Dec 2021 23:49:39 +0000 (23:49 +0000)]
Merge branch 'wip/chergert/fix-macos-crash' into 'main'
macos: fix crash in imcontextquartz
See merge request GNOME/gtk!4226
Bilal Elmoussaoui [Thu, 9 Dec 2021 20:29:17 +0000 (20:29 +0000)]
gdk: drop removed method from the header
Christian Hergert [Thu, 9 Dec 2021 20:26:33 +0000 (12:26 -0800)]
macos: fix crash in imcontextquartz
Benjamin Otte [Wed, 8 Dec 2021 19:33:28 +0000 (19:33 +0000)]
Merge branch 'fix-picture-natural-size-0' into 'main'
picture: Return natural size 0 for size 0
See merge request GNOME/gtk!4177
Benjamin Otte [Wed, 8 Dec 2021 18:09:29 +0000 (19:09 +0100)]
reftests: Add center-center reftests without GtkOverlay
Benjamin Otte [Wed, 8 Dec 2021 17:14:59 +0000 (18:14 +0100)]
reftests: Rename a bunch of tests
They use a GtkOverlay, so reflect that in the name.
Ivan Molodetskikh [Fri, 19 Nov 2021 13:26:07 +0000 (16:26 +0300)]
picture: Return natural size 0 for size 0
It was returning the full natural size (same as -1) due to default value
handling in the code below.
Tests have been updated to match this output.
Matthias Clasen [Wed, 8 Dec 2021 10:47:40 +0000 (10:47 +0000)]
Merge branch 'wip/chergert/fix-recursive-action-muxer' into 'main'
actionmuxer: avoid duplicate and recursive work
Closes #4422, #4519, and gnome-text-editor#220
See merge request GNOME/gtk!4223
Matthias Clasen [Wed, 8 Dec 2021 10:46:35 +0000 (10:46 +0000)]
Merge branch 'wip/chergert/layout-marshaller' into 'main'
surface: add missing va_marshaller for layout signal
See merge request GNOME/gtk!4221
Matthias Clasen [Wed, 8 Dec 2021 10:45:56 +0000 (10:45 +0000)]
Merge branch 'wip/chergert/reduce-action-muxer-allocations' into 'main'
menutracker: reduce allocations and signal emission
See merge request GNOME/gtk!4222
Christian Hergert [Wed, 8 Dec 2021 08:31:49 +0000 (00:31 -0800)]
actionmuxer: avoid duplicate and recursive work
If we've already done the tracking into the parent muxer, there is no need
to do it again. This can save a great deal of recursive work when adding
items to the muxer.
This makes showing the context menu in gnome-text-editor repeatedly fast
even as spelling corrections are changed.
It is likely that this could fix #4422 as well.
Fixes #4519
Fixes https://gitlab.gnome.org/GNOME/gnome-text-editor/-/issues/220
Christian Hergert [Wed, 8 Dec 2021 06:33:20 +0000 (22:33 -0800)]
menutracker: reduce allocations and signal emission
When handling action-added callbacks the code was previously using a
freeze_notify/thaw_notify in all cases. This turns out to allocate a
significant amount of memory when called a lot.
That said, it shouldn't be getting called this much but given the current
state of affairs elsewhere in GtkActionMuxer, this brought temporary
allocations down from 9MiB to 9KiB in gnome-text-editor after showing
the context menu a few times.
Related #4422