Commit Graph

69669 Commits

Author SHA1 Message Date
Benjamin Otte
ef455f5c85 snapshot: Move sanity checks to a better place
Fixes cases where the sanity checks would reject valid code, like when
using GL shaders on a scaled transform.

Fixes #3819
2021-04-01 16:53:33 +02:00
Benjamin Otte
05e4cd1579 snapshot: scale border widths when appending border nodes
Found by Matthias on IRC while arguing about GtkSnapshot being too
complicated.
2021-04-01 16:37:43 +02:00
Matthias Clasen
0ea96e3b0c Merge branch 'filechooser-signal-disconnect' into 'master'
filechooserwidget: Disconnect settings signal on dispose

See merge request GNOME/gtk!3383
2021-04-01 14:25:08 +00:00
Carlos Garnacho
1e9e7bf0d9 Merge branch 'wip/exalm/overshoot-changes' into 'master'
scrolledwindow: Cancel overshoot on dimension changes

Closes #3752

See merge request GNOME/gtk!3300
2021-04-01 12:11:15 +00:00
Alexander Mikhaylenko
d7a5dedd4f scrolledwindow: Cancel overshoot on dimension changes
If we scroll down in a list that's still being filled, we hit the edge and
initiate overshoot, and then the adjustment's upper value increases. This
leads to an unwanted bounce back.

Additionally, if in a similar situation the upper value decreases, the
overscroll glow gets stuck.

Update kinetic scrolling upper and lower value on changes, and immediately
cancel it if dimensions on that side change.

Fixes https://gitlab.gnome.org/GNOME/gtk/-/issues/3752
2021-04-01 16:37:30 +05:00
Rafał Dzięgiel
2e65416270
filechooserwidget: Reduce code duplication for disconnecting settings signal
Instead of getting current display before calling settings signal removal,
do it inside remove function and only if there is a signal connection to remove.
2021-04-01 09:36:23 +02:00
Rafał Dzięgiel
13c22e4e2f
filechooserwidget: Disconnect settings signal on dispose
Settings signal was not being disconnected on dispose causing
application crash when user changed icon theme after dialog disposal.
2021-04-01 09:28:37 +02:00
Matthias Clasen
65a061f3c2 Merge branch 'ebassi/broadway-docs' into 'master'
docs: Update the Broadway instructions

See merge request GNOME/gtk!3380
2021-03-31 21:42:59 +00:00
Matthias Clasen
fc63e6856f Merge branch 'ebassi/docs-links' into 'master'
docs: Update the links to the docs of GTK dependencies

Closes #3817

See merge request GNOME/gtk!3381
2021-03-31 21:42:49 +00:00
Matthias Clasen
94747d53eb Merge branch 'offscreen-fixes' into 'master'
Offscreen fixes

See merge request GNOME/gtk!3379
2021-03-31 21:27:18 +00:00
Matthias Clasen
b5df1299ec gsk: Add another test
Compare clipped repeat nodes. Must skip cairo here
since it blurred the child by scaling after rendering.

Also skip the gl renderer, since it hasn't been fixed
for this yet. ngl passes this test.
2021-03-31 16:49:31 -04:00
Emmanuele Bassi
7bfff6c51e docs: Update the links to the docs of GTK dependencies
Use docs.gtk.org where appropriate.

Fixes: #3817
2021-03-31 20:51:27 +01:00
Emmanuele Bassi
3fdedce8f6 docs: Update the Broadway instructions
The Broadway server binary is now versioned, and it's not compatible
with the GTK3 server.
2021-03-31 20:06:54 +01:00
Matthias Clasen
6f62107656 testsuite: Rename next to ngl
Use specific names for renderers in the gsk tests.
Otherwise the tests may use the wrong renderer, or
the same renderer twice.
2021-03-31 14:59:43 -04:00
Matthias Clasen
f9457af128 ngl: Fix offscreen rendering with transforms
There was confusion here about the handling of the
modelview transform. The modelview transform we are
getting is already set up for rendering the node
we are given, so keep it - except for possible adding
an extra scale on top when the texture would otherwise
be too big.
2021-03-31 14:36:24 -04:00
Matthias Clasen
94f0a4ef2c ngl: Be explicit about offscreen clipping
Explicitly set all the input arguments.
This makes it clearer what is going on.
2021-03-31 14:34:16 -04:00
Matthias Clasen
53e75936cb ngl: Add sonme comments
The GskNglRenderOffscreen struct is a mix of in and
out arguments. Better annotate that a little bit.
2021-03-31 14:32:47 -04:00
Matthias Clasen
5f0fe09423 Merge branch 'ebassi/for-master' into 'master'
Update the gi-docgen repository

See merge request GNOME/gtk!3352
2021-03-31 11:34:56 +00:00
Benjamin Otte
9e402fa064 Merge branch 'wip/otte/for-master' into 'master'
gstmedia: Properly detect stream metadata when preparing

See merge request GNOME/gtk!3377
2021-03-30 21:54:57 +00:00
Emmanuele Bassi
d84440969a Merge branch 'ebassi/docs-ci' into 'master'
ci: Add missing graphviz dependency

See merge request GNOME/gtk!3376
2021-03-30 20:44:51 +00:00
Benjamin Otte
e7dc82fa32 gstmedia: Properly detect stream metadata when preparing
We can look at the GstPlayerMediaInfo to get all the info we care about.
2021-03-30 22:26:26 +02:00
Emmanuele Bassi
f1b3492700 ci: Add missing graphviz dependency
We generate the hierarchy graph for GTK types, and in order to do so, we
need the dot utility from graphviz in the CI image.
2021-03-30 21:08:43 +01:00
Anders Jonsson
6c95fc7e87 Update Swedish translation 2021-03-30 17:13:11 +00:00
Matthias Clasen
f4cc9a47ad Merge branch 'docs' into 'master'
docs: Cover corner-case of @line_number = total lines in buffer

See merge request GNOME/gtk!3373
2021-03-30 16:09:34 +00:00
Matthias Clasen
ccbbc2f2ba 4.2.0 2021-03-30 11:00:55 -04:00
Matthias Clasen
8bc2ee63eb Actually build docs for releases 2021-03-30 11:00:54 -04:00
Matthias Clasen
68d634b31c Disable the border-image-url reftest
It seems to make assumptions about text positioning that
are not holding with subpixel positioning. I'm not 100%
sure how that leads to exactly the artifacts that are seen
here, but I am just disabling the test until that is fully
understood.
2021-03-30 11:00:54 -04:00
Matthias Clasen
d1c66f75e3 Disable flaky focus tests 2021-03-30 11:00:54 -04:00
Matthias Clasen
eba9cd8775 Disable the label-background reftest
It makes assumptions about text positioning that are
not holding with subpixel positioning. There is no
guarantee that the next word in a multi-word text
starts on an even pixel boundary, as it does when
you break the text into multiple, separately rendered
blocks.
2021-03-30 11:00:54 -04:00
Matthias Clasen
9606945ed8 Fix tests for new version 2021-03-30 11:00:54 -04:00
Matthias Clasen
d50d382032 Merge branch 'ebassi/dist-docs' into 'master'
build: Dist the API references

See merge request GNOME/gtk!3375
2021-03-30 14:58:53 +00:00
Emmanuele Bassi
5da3308572 build: Dist the API references
Copy them into the dist root from the build root, so that they will be
available in the release archive.
2021-03-30 15:42:40 +01:00
Jonas Ådahl
fb48699ba4 Merge branch 'issue3791-gtk4' into 'master'
gdk/wayland: Defer processing of globals closures

Closes #3791

See merge request GNOME/gtk!3374
2021-03-30 14:06:33 +00:00
Robert Mader
56d37ceed0 gdk/wayland: Defer processing of globals closures
... until all globals have been received.

The dependency tracking introduced in 4e9be39518 only allows to
specify required globals and processes the closures as soon as
the requirements have been met. There are, however, also optional
dependencies - most notably the primary_selection protocol.
Currently we rely on the fact that compositors like Mutter announce
it before `wl_seat`, even though the order is not specified in
the spec.

Process globals closures only after all globals have been announced,
so optional dependencies can be accommodated.

Closes https://gitlab.gnome.org/GNOME/gtk/-/issues/3791
2021-03-30 15:20:00 +02:00
Avinash Sonawane
622bb9186e docs: Cover corner-case of @line_number = total lines in buffer 2021-03-30 17:00:33 +05:30
Matthias Clasen
b77e05ce37 Merge branch 'ngl-text-tweaks' into 'master'
Ngl text tweaks

See merge request GNOME/gtk!3367
2021-03-30 11:15:13 +00:00
Matthias Clasen
ba4e66d189 ngl: Avoid a goto
Reshuffle the code slightly, so we can use a continue
instead.
2021-03-30 00:34:52 -04:00
Matthias Clasen
2c33550048 gsk: Avoid empty glyphs early
Strip out PANGO_GLYPH_EMPTY when text nodes are
constructed. Then we don't have to check this special
case in the inner loop in visit_text_node.
2021-03-30 00:34:52 -04:00
Matthias Clasen
3add99a9a8 ngl: Speed up glyph loop
Move some work out of the loop in visit_text_node.
This takes advantage of the fact that the yoffset
of most glyphs is zero, so yphase generally does
not change in a line of text.
2021-03-30 00:19:28 -04:00
Matthias Clasen
d4ea2e848d ngl: We only need two bits for phases
We use 4 phases, so 2 bits are enough.
2021-03-30 00:19:28 -04:00
Matthias Clasen
4c06889243 Updates 2021-03-30 00:18:48 -04:00
Matthias Clasen
ef544a8c3b Merge branch 'ngl-trivia' into 'master'
Ngl trivia

See merge request GNOME/gtk!3372
2021-03-30 04:16:00 +00:00
Matthias Clasen
6db9215dd1 Merge branch 'video-player-images' into 'master'
gtk-demo: Allow opening images in video player

See merge request GNOME/gtk!3371
2021-03-30 03:54:13 +00:00
Matthias Clasen
8b64f0147c gtk-demo: Allow opening images in video player
It works, so why not.
2021-03-29 23:40:17 -04:00
Matthias Clasen
5847f75c57 ngl: Cosmetics
Remove a local variable in gsk_render_job_visit_text_node.
2021-03-29 15:17:20 -04:00
Matthias Clasen
ce2c3efc91 ngl: Improve packing
Pack texture cache entries slightly better.

There was a 4 byte hole here.
2021-03-29 15:17:10 -04:00
Matthias Clasen
2599c5aed3 gsk: Typo fix 2021-03-29 15:16:44 -04:00
Matthias Clasen
bca39e2605 ngl: Typo fix 2021-03-29 15:16:25 -04:00
Matthias Clasen
ca0e1be03e Merge branch 'frame-rate-benchmark' into 'master'
Add a frame benchmark

See merge request GNOME/gtk!3364
2021-03-29 15:52:51 +00:00
Benjamin Otte
6569a877d8 Merge branch 'wip/otte/for-master' into 'master'
Wip/otte/for master

Closes #3810

See merge request GNOME/gtk!3366
2021-03-29 15:41:55 +00:00