Benjamin Otte
bcc17b3033
testsuite: Add tests uploading the memorytextures
...
Use a GL renderer and render_texture() them.
2021-09-12 05:54:37 +02:00
Benjamin Otte
00439f9e5c
testsuite: Rework memorytexture test some more
...
Instead of predefined colors, generate them randomly.
2021-09-12 05:54:37 +02:00
Benjamin Otte
c9d748fc51
testsuite: Overhaul memorytexture test
...
Instead of hardcoding pixel values, allow construction of textures by
filling them with GdkRGBA values.
2021-09-12 05:54:37 +02:00
Benjamin Otte
719eafa60c
gl: Implement uploading and downloading HDR formats
...
Also refactor the GL uploading so it does the fallback in a
GLES-compatible way, which means we only need one fallback.
2021-09-12 05:54:37 +02:00
Benjamin Otte
1759d27da9
memorytexture: Add support for HDR formats
...
Also sanitize the input bytes so the strides match alignment
requirements of the data types.
2021-09-12 05:54:37 +02:00
Benjamin Otte
53275481a5
texture: Add gdk_texture_download_float()
2021-09-12 05:54:37 +02:00
Benjamin Otte
cbe6d0da76
gdk: Deprecate gdk_cairo_draw_from_gl()
...
It's broken with various pixel formats and OpenGL ES, it's hard to
understand what everything does, and gdk_texture_download() can be used
instead.
2021-09-12 05:54:37 +02:00
Benjamin Otte
c349ed9562
gltexture: Implement download() via glGetTexImage()
...
1. The download via gdk_cairo_draw_from_gl() was broken sometimes
2. We get easy conversion on fallback by chaining up and using
download_texture().
3. One more place where Cairo is no longer necessary.
2021-09-12 05:22:21 +02:00
Benjamin Otte
74ce69a8a1
gltexture: Make release() use download_texture()
...
1. It avoids Cairo, and in particular conversion to Cairo.
2. Keeping a texture allows easy chaining in the vfuncs.
3. Using a texture means releasing will work for HDR formats
too, once we add them.
2021-09-12 05:22:21 +02:00
Benjamin Otte
4f17f3ac24
texture: Add gdk_texture_download_texture()
...
A private vfunc that downloads a texture as a GdkMemoryTexture in
whatever format the texture deems best.
There are multiple reasons for this:
* GLES cannot download the Cairo format. But it can download some
format and then just delegate to the GdkMemoryTexture implementation.
* All the other download vfuncs (including the ones still coming) can
be implemented via download_texture() and delegation, making the
interface easier.
* We want to implement image loading and saving support. By using
download_texture(), we can save in the actual format of the texture.
* A potential GdkCompressedTexture could be implemented by just
providing this one vfunc as a compress() step.
2021-09-12 05:22:21 +02:00
Benjamin Otte
9c8e464b04
texture: Add GdkMemoryConversion private enum
...
Now gdk_memory_convert() converts to one of these conversions instead of
re(ab)using parts of the GdkMemoryFormat enum.
2021-09-12 05:22:21 +02:00
Benjamin Otte
51d0d13a9e
gltexture: release() to a texture, not a cairo_surface
...
This makes forwarding vfuncs a lot easier, because we can just call them
on the texture.
2021-09-12 05:22:21 +02:00
Benjamin Otte
0ee3b1c861
texture: Remove unused argument from vfunc
2021-09-12 05:22:21 +02:00
Balázs Úr
46f88c69a1
Update Hungarian translation
2021-09-11 23:45:21 +00:00
Benjamin Otte
140976a670
Merge branch 'wip/otte/for-master' into 'master'
...
rendernode: Write the whole node
See merge request GNOME/gtk!3938
2021-09-11 20:56:39 +00:00
Benjamin Otte
9f2b847835
rendernode: Write the whole node
...
It turns out g_output_stream_write_bytes() does not write the bytes.
It should be renamed to g_output_stream_write_some_of_the_bytes() maybe.
2021-09-11 22:28:40 +02:00
Benjamin Otte
9e11ea699c
Merge branch 'hsl' into 'master'
...
gdk_rgba_parse: Support HSL colors
See merge request GNOME/gtk!3899
2021-09-11 12:57:25 +00:00
Guillaume Bernard
1a4eebe022
Update French translation
...
(cherry picked from commit 8ffd7e9f87
)
2021-09-11 09:41:32 +00:00
Guillaume Bernard
2963468019
Update French translation
...
(cherry picked from commit f433c543fe
)
2021-09-11 09:36:48 +00:00
Matthias Clasen
bfbd95d7d6
Merge branch 'matthiasc/for-master' into 'master'
...
Stop using config.h.meson
See merge request GNOME/gtk!3936
2021-09-11 02:53:43 +00:00
Matthias Clasen
c1c1d4431d
Refactor gdk_gl_context_upload_texture slightly
...
Introduce a gl_internalformat variable. This will
let us handle more formats in a uniform way in
future commits.
2021-09-10 22:17:31 -04:00
Matthias Clasen
155a4fac5c
Add vectorized half-float conversion
...
We can't make the -4 versions inline, since
we use ifuncs for them, so make vectorized
versions.
Test included.
2021-09-10 22:17:31 -04:00
Matthias Clasen
76f481eb7b
Stop using config.h.meson
...
It isn't necessary and makes us miss defines when
we forget to update it.
2021-09-10 21:08:07 -04:00
James Westman
0782c8a051
gdk_rgba_parse: Support HSL colors
2021-09-10 16:56:42 -05:00
Philipp Kiemle
3d27ff1177
Update German translation
...
(cherry picked from commit 6228954524
)
2021-09-10 19:55:59 +00:00
Matthias Clasen
3ada664a89
Merge branch 'matthiasc/for-master' into 'master'
...
Fix the testupload test
See merge request GNOME/gtk!3934
2021-09-10 13:54:37 +00:00
Matthias Clasen
643a91bd08
Fix the testupload test
...
This can only ever have worked by accident.
2021-09-10 08:28:32 -04:00
Emin Tufan Çetin
c86733b4fa
Update Turkish translation
2021-09-10 06:40:43 +00:00
Anders Jonsson
55099b7d0e
Update Swedish translation
2021-09-08 20:25:27 +00:00
Boyuan Yang
db3858a204
Update Chinese (China) translation
2021-09-05 20:33:21 +00:00
Daniel Șerbănescu
07bff74544
Update Romanian translation
...
(cherry picked from commit bb72acf9cd
)
2021-09-05 18:43:44 +00:00
Daniel Șerbănescu
b4262883a8
Update Romanian translation
...
(cherry picked from commit 63d829bbc1
)
2021-09-05 18:34:37 +00:00
Matthias Clasen
563c85e222
Merge branch 'matthiasc/for-master' into 'master'
...
inspector: Cosmetics
See merge request GNOME/gtk!3925
2021-09-05 17:26:13 +00:00
Matthias Clasen
d75246a543
inspector: Cosmetics
...
Make some settings entries smaller, and make the
scales match in size. Also, inline adjustments
in the ui file, since we can do that now.
2021-09-05 12:59:11 -04:00
Matthias Clasen
b3856a3ea0
Merge branch 'matthiasc/for-master' into 'master'
...
Avoid hand-rolled color glyph information
See merge request GNOME/gtk!3924
2021-09-05 16:12:34 +00:00
Matthias Clasen
bd4d24f8ed
Bump pango req to 1.49.1
...
We are using pango api that was introduced in 1.49.1
without ifdefs, so we should require it.
2021-09-05 10:58:50 -04:00
Matthias Clasen
65ce3eb207
Avoid hand-rolled color glyph information
...
Followup to b244f31337
. Pango provides color glyph
information for us now, so we don't need to steal a
bit anymore.
2021-09-05 10:58:50 -04:00
Anders Jonsson
865ac44963
Update Swedish translation
...
(cherry picked from commit 19af960163
)
2021-09-05 14:11:51 +00:00
Yaron Shahrabani
55a935db53
Update Hebrew translation
2021-09-05 13:45:49 +00:00
Matthias Clasen
6fefae3dbb
Merge branch 'better-font-rendering-demo' into 'master'
...
gtk-demo: Improve the font rendering demo
See merge request GNOME/gtk!3923
2021-09-05 04:21:29 +00:00
Matthias Clasen
f7c84ddc7f
gtk-demo: Font rendering - Add some bling
...
Fade the outlines and pixels in and out.
2021-09-04 23:41:44 -04:00
Matthias Clasen
f4a4dd2615
gtk-demo: Font rendering - expand docs
2021-09-04 23:05:55 -04:00
Matthias Clasen
b718d99d1f
gtk-demo: Font rendering - Add keynav
...
Add mnemonics to most controls, and make
Ctrl+/- change the zoom.
2021-09-04 23:00:17 -04:00
Matthias Clasen
c7215d1199
gtk-demo: Font rendering - add outlines
...
Should outlines as well.
2021-09-04 22:56:07 -04:00
Matthias Clasen
24d69ef125
gtk-demo: Font rendering - better start
...
Turn antialiasing on initially, and turn the
extents and grid off. Otherwise we show pretty
shocking rendering right from the start.
2021-09-04 22:56:07 -04:00
Matthias Clasen
7c3fbdecf2
gtk-demo: Font rendering - improve the grid
...
Allow changing the character shown in the grid.
2021-09-04 22:56:07 -04:00
Matthias Clasen
b77938f40f
Cosmetics
...
Remove an unused object from the font rendering
demo ui file.
2021-09-04 22:55:47 -04:00
Matthias Clasen
f703744564
Merge branch 'ebassi/accel-parse-doc' into 'master'
...
Improve the gtk_accelerator_parse() docs
See merge request GNOME/gtk!3921
2021-09-04 23:39:10 +00:00
Matthias Clasen
a3ccff3773
Merge branch 'text-fixes' into 'master'
...
textview: fix pango context invalidation
See merge request GNOME/gtk!3922
2021-09-04 21:39:30 +00:00
Asier Sarasua Garmendia
9869082c1c
Update Basque translation
...
(cherry picked from commit 0768addbb3
)
2021-09-04 20:54:41 +00:00