Matthias Clasen
60878e4186
Merge branch 'for-main' into 'main'
...
gsk: Prefer ngl over cairo
See merge request GNOME/gtk!7779
2024-10-02 00:45:13 +00:00
Matthias Clasen
02297138f3
gsk: Tweak renderer selection debug spew
...
Print a message for every get_renderer function that returns
FALSE, so the debug spew lets us get a clear picture of what
possibilities were tried.
2024-10-01 20:12:17 -04:00
Benjamin Otte
6603e02beb
Merge branch 'wip/otte/for-main' into 'main'
...
Revert "tools: Drop support for the gl renderer"
See merge request GNOME/gtk!7778
2024-10-01 23:57:20 +00:00
Matthias Clasen
bfb7573810
gsk: Prefer ngl over cairo
...
Now that the gl renderer is no longer in our fallback sequence, use
ngl instead. With current ngl, llvmpipe is still better than cairo.
2024-10-01 19:42:08 -04:00
Benjamin Otte
6847c3469d
testsuite: Keep bounds for clip tests
...
The hope here is that it makes clip tests more reproducible because the
coordinates in device pixels are still the same as before.
2024-10-02 01:26:24 +02:00
Benjamin Otte
7a1e5b4418
compare-render: Add a KEEP_BOUNDS flag
...
If that flag is set, we keep the bounds of the original node when
rendering the modified node.
Gets around the replay test having to draw a transparent color node to
ensure the same bounds.
2024-10-02 01:26:24 +02:00
Benjamin Otte
76980e10a0
Revert "tools: Drop support for the gl renderer"
...
This reverts commit fd02afa2e4 .
We don't want to remove the GL renderer from our tools yet, because we
use those tools for manual testing and having it available is useful.
In particular, reinstate the GL renderer for rendernode-tool benchmark.
2024-10-02 01:25:30 +02:00
Matthias Clasen
34f4a06691
Merge branch 'gl-renderer-memorytexture-test' into 'main'
...
Stop using a gl renderer in the memorytexture text
See merge request GNOME/gtk!7773
2024-10-01 21:29:29 +00:00
Matthias Clasen
2dea5ae958
Merge branch 'for-main' into 'main'
...
inspector: Plug a memory leak
See merge request GNOME/gtk!7775
2024-10-01 15:52:05 +00:00
Matthias Clasen
5856716188
inspector: Plug a memory leak
...
Found by code inspection of all the places where we use texture
builders.
2024-10-01 08:59:52 -04:00
Matthias Clasen
1c4a0dae62
Merge branch 'gst-texture-builder-leak' into 'main'
...
gst: Don't leak texture builders
See merge request GNOME/gtk!7774
2024-10-01 12:20:48 +00:00
Matthias Clasen
b7fba6298f
gst: Don't leak texture builders
...
Found by code inspection. The leak was introduced in 4707784755 .
Might help for #4184
2024-10-01 07:18:32 -04:00
Matthias Clasen
5ce196fe9f
Rename memory texture tests from ngl to gl
2024-09-30 21:59:59 -04:00
Matthias Clasen
c31c89c794
Drop gl renderer tests from memory texture test
2024-09-30 21:55:33 -04:00
Matthias Clasen
1eb8c3ea34
tests: Add ngl-released in memory texture test
...
This is parallel to the gl-released method, but for ngl.
2024-09-30 21:52:16 -04:00
Matthias Clasen
b2414b1ecd
Merge branch 'for-main' into 'main'
...
gtk4-demo: Drop the glshader demos
See merge request GNOME/gtk!7771
2024-10-01 01:47:09 +00:00
Matthias Clasen
fd3dfaf2c3
Merge branch 'dmabuf-import-fixup' into 'main'
...
gl: Treat internal textures as special case
See merge request GNOME/gtk!7772
2024-10-01 01:46:44 +00:00
Benjamin Otte
43a6c8c5f5
gl: Treat internal textures as special case
...
Treat external as the normal case, and only try importing dmabufs
as non-external images if their format is on the internal formats
list.
Also add internal linear formats to the internal formats list.
This fixes an issue where AR24:0 dmabufs were imported as external
textures, causing some of the compare tests to fail.
2024-09-30 21:16:41 -04:00
Matthias Clasen
3789191853
docs: Stop mentioning the gl renderer
...
It is going away.
2024-09-30 19:24:42 -04:00
Matthias Clasen
eb4fb2af0e
gsk: Stop falling back to the gl renderer
...
The GL renderer is going away. For now, it is still possible
to use it explicitly, with GSK_RENDERER=gl.
2024-09-30 19:22:54 -04:00
Matthias Clasen
fd02afa2e4
tools: Drop support for the gl renderer
...
The GL renderer is going away in 4.18.
2024-09-30 19:22:54 -04:00
Matthias Clasen
55bb77cffc
tests: Use the ngl renderer in one more place
2024-09-30 19:22:54 -04:00
Matthias Clasen
119ba5844f
testsuite: Drop glshader tests
...
And drop the gl renderer test here, but add ngl and Vulkan
equivalents.
2024-09-30 19:22:54 -04:00
Matthias Clasen
9b2b5ebb65
gsk: Stop supporting gl shaders
...
The GL shader code uses the GL renderer for compilation, and that
renderer is going away.
2024-09-30 19:22:54 -04:00
Matthias Clasen
1624455a32
gsk: Use the ngl renderer for serializing to png
...
This is a step towards dropping the GL renderer.
2024-09-30 18:58:33 -04:00
Matthias Clasen
d483883f38
node-editor: Use NGL for exporting images
...
This is a step towards dropping the GL renderer.
2024-09-30 18:58:33 -04:00
Matthias Clasen
0dc0bea1d5
gtk4-demo: Drop the glshader demos
...
The GL renderer will be going away in 4.18, and with that, shader
nodes will stop working for good. It is time to start preparing
for that.
2024-09-30 18:58:33 -04:00
Matthias Clasen
55e31b972c
Merge branch 'dmabuf-failable-download' into 'main'
...
Make gdk_dmabuf_downloader_download failable
See merge request GNOME/gtk!7720
2024-09-30 22:41:57 +00:00
Matthias Clasen
1013874de8
gpu: Drop get_dmabuf_formats
...
This vfunc is no longer needed.
2024-09-30 18:37:20 -04:00
Matthias Clasen
c397460c11
Drop gdk_dmabuf_downloader_supports
...
It is not used anymore.
2024-09-30 18:37:20 -04:00
Matthias Clasen
ff0045b8c9
dmabuftexture: Stop having a fixed downloader
...
Change things from picking a download method at creation time to
trying all methods at download time until one succeeds.
2024-09-30 18:37:20 -04:00
Matthias Clasen
d0b409d349
Make gsk_gpu_frame_download_texture return status
...
Importing a dmabuf can fail, even if the format is supported
in princicple, In these cases, gsk_gpu_frame_download_texture
will return FALSE.
2024-09-30 18:37:20 -04:00
Matthias Clasen
c0cb10262d
Make gdk_dmabuf_download_mmap return status
...
Make this function return whether it was successful, and only emit
a debug message if we succeeded. In particular, make it return FALSE
if the dmabuf format is not linear.
2024-09-30 18:37:20 -04:00
Matthias Clasen
279a5f7825
Make gdk_dmabuf_downloader_download failable
...
This will enable us to try multiple downloaders in a row.
2024-09-30 18:37:20 -04:00
Matthias Clasen
6fa87d4f37
gsk renderer: Add a debug message
...
Add a debug message so we can see what downloaders are used
for dmabufs.
2024-09-30 18:37:20 -04:00
Matthias Clasen
fe35daaf34
Merge branch 'wip/otte/dont-download-the-upload-of-the-download' into 'main'
...
gpu: Don't use copies for dmabuf downloads
Closes #7046
See merge request GNOME/gtk!7770
2024-09-30 22:30:58 +00:00
Benjamin Otte
c3b836951a
gl: ref the previous context
...
The current context might be the last reference to the context, which
would make it go away when the renderer calls make_current().
See commit 0fa2ae48d4 for a similar case.
2024-09-30 23:54:08 +02:00
Matthias Clasen
ec10f1fe16
gsk: Don't lose context during download
...
When we use download in the middle of an upload operation (or the
other way around), we may end up making a different GL context
current. The downloader code is reponsible for reestablishing
the previous context when it is done. The old GL renderer was
doing that, NGL wasn't, until now.
2024-09-30 23:49:59 +02:00
Benjamin Otte
ae741a06c0
gpu: Compare fourccs, not GdkMemoryFormat
...
For dmabufs, the format is not an exact description of the data, it only
gives the closest memory format for a given fourcc.
This of course means that multiple different fourccs may report the same
format.
So when deciding if we need to copy the image to get the right data to
download, we need to check if the fourcc is correct, not if the format
is.
Related: #7046
2024-09-30 22:14:38 +02:00
Benjamin Otte
754c9cb323
gpu: Don't use copies for dmabuf downloads
...
When we want to download a dmabuf, we want to download the actual
dmabuf.
If we just grab the cached image and use that, we might get the
(reuploaded) copy of the dmabuf. This happens when this renderer
doesn't support downloading this dmabuf but has used it before.
Worse, this is a reentrancy issue, where this renderer is trying to
render the dmabuf and has already scheduled the upload but the upload
has not finished. We will then download from an empty image, which is
very wrong.
The way to check that we have the actual dmabuf is a bit brittle, but it
should work.
Fixes #7046
2024-09-30 19:52:30 +02:00
Benjamin Otte
a3683a080b
Merge branch 'wip/otte/global-globals' into 'main'
...
ngl: Use a single buffer for globals
See merge request GNOME/gtk!7753
2024-09-30 17:09:52 +00:00
Matthias Clasen
0673d74986
Merge branch 'for-main' into 'main'
...
Cosmetics
See merge request GNOME/gtk!7768
2024-09-30 13:53:51 +00:00
Matthias Clasen
8c46df425e
Merge branch 'default-cursor-xdg' into 'main'
...
wayland: Look for default cursor theme in XDG directories
See merge request GNOME/gtk!7766
2024-09-30 13:27:57 +00:00
Ilya Fedin
ff78e1888b
wayland: Look for default cursor theme in XDG directories
...
Currently it's looked up only in /usr/share what is a problem for non-FHS distros like NixOS
2024-09-30 15:50:11 +04:00
Matthias Clasen
f2f219f304
Cosmetics
...
Make the debug message match the rest: FORMAT:MODIFIER.
2024-09-30 07:40:48 -04:00
Matthias Clasen
bb46edcc21
dmabuf: Initizalize some memory
...
I've seen valgrind complain about external_only being uninitialized
after the call, when using llvmpipe. Better be safe than sorry, and
initialize these arrays.
2024-09-30 06:55:57 -04:00
Matthias Clasen
24173e3f93
Cosmetics
...
No point in having an early return since EGL_NO_IMAGE is what we
want to return anyway.
2024-09-30 06:50:20 -04:00
Anders Jonsson
ec73bcb05b
Update Swedish translation
...
(cherry picked from commit 82f08089f1 )
2024-09-29 22:16:13 +00:00
Juliano de Souza Camargo
6c74c9c970
Update Brazilian Portuguese translation
...
(cherry picked from commit 1610ecbbac )
2024-09-29 16:30:00 +00:00
Matthias Clasen
c9c35ae41d
Merge branch 'for-main' into 'main'
...
testsuite: Don't assert more than guaranteed
See merge request GNOME/gtk!7763
2024-09-29 14:33:35 +00:00