Benjamin Otte
a0b9238a15
path: Implement gsk_path_to_cairo() using foreach()
2020-12-27 00:31:18 +01:00
Benjamin Otte
801c63494c
path: Add gsk_path_foreach()
2020-12-27 00:31:17 +01:00
Benjamin Otte
d2cfe74140
path: Collect flags
...
We don't need them yet, but maybe later.
2020-12-27 00:31:17 +01:00
Benjamin Otte
a3ac003546
testsuite: Add path tests
2020-12-27 00:31:17 +01:00
Benjamin Otte
483a4773cd
pathmeasure: Add gsk_path_measure_add_segment()
...
This allows chunking paths, weeee.
2020-12-27 00:31:17 +01:00
Benjamin Otte
c82ad0214e
path: Add gsk_path_builder_add_path()
2020-12-27 00:31:17 +01:00
Benjamin Otte
207feeb7a9
gsk: Add GskPathMeasure
...
An object to do measuring operations on paths - determining their
length, cutting off subpaths, things like that.
2020-12-27 00:31:17 +01:00
Benjamin Otte
9a2e4ac9a9
path: Change data structure for standard path
...
Instead of the Cairo method and imitating cairo_path_data_t, use the
Skia method and keep points and operations separate.
That way we get a points array that includes the starting point -
because it's always the end point of the previous operation.
2020-12-27 00:31:17 +01:00
Benjamin Otte
2bd3aa3cbe
popover: Use fill and stroke nodes instead of Cairo
...
... to render the arrow.
The arrow should really be turned into a real thing - maybe an icon?
2020-12-27 00:31:17 +01:00
Benjamin Otte
118e41f432
snapshot: Add gtk_snapshot_push_stroke()
2020-12-27 00:31:17 +01:00
Benjamin Otte
2d7897a769
gsk: Add GskStrokeNode
2020-12-27 00:31:17 +01:00
Benjamin Otte
c279e1aa1e
gsk: Add GskStroke
...
It's unused in this commit. This just prepares the new object.
2020-12-27 00:31:17 +01:00
Benjamin Otte
3c91d0be91
demos: Add a simple demo filling a path
2020-12-27 00:31:17 +01:00
Benjamin Otte
e7bbed54b5
snapshot: Add gtk_snapshot_push_fill()
2020-12-27 00:31:17 +01:00
Benjamin Otte
4eb7d68970
gsk: Add GskFillNode
...
Take a rendernode as source and a GskPath and fill the region in the
path just like cairo_fill() would.
2020-12-27 00:31:17 +01:00
Benjamin Otte
98337f7115
gsk: Add GskPath
2020-12-27 00:31:17 +01:00
Benjamin Otte
08ee6c7acf
mediafile: Load extension at startup with GTK_MEDIA
...
When the GTK_MEDIA env var is set, check at startup that it works, not
only when the first MeidaFile is instantiated.
This has the fortunate side effect that it prints help output for
GTK_MEDIA=help at startup, too.
2020-12-27 00:31:17 +01:00
Benjamin Otte
c815496fe3
gtk: Build as static library first
...
This allows linking against the static libgtk from the testsuite.
We build the dynamic library by linking all the static libraries into
the final product.
2020-12-27 00:31:16 +01:00
Benjamin Otte
9c84fa127a
Merge branch 'unused-static-inline' into 'master'
...
Remove unused static inline function
See merge request GNOME/gtk!3002
2020-12-25 18:05:11 +00:00
Emmanuel Gil Peyrot
84c6708366
Remove unused static inline function
...
This was causing a warning on AArch64 since __LITTLE_ENDIAN__ and
__BIG_ENDIAN__ weren’t set, but the functions were actually completely
unused.
2020-12-25 16:16:43 +01:00
Benjamin Otte
f7e3016949
Merge branch 'gles-gears' into 'master'
...
Fix gtk4-demo’s gears demo on OpenGL ES
See merge request GNOME/gtk!3000
2020-12-25 01:36:34 +00:00
Emmanuel Gil Peyrot
dd1110ca5c
Fix some of gtk4-demo’s transitions example on OpenGL ES
...
Same issue as the previous commit, int+float is error, and pow() only
works on floats.
2020-12-25 01:36:21 +01:00
Emmanuel Gil Peyrot
28c4adac24
Fix gtk4-demo’s gears demo on OpenGL ES
...
Here is a command to reproduce this testcase:
GDK_DEBUG=gl-gles gtk4-demo --run gears
Without this patch, Mesa throws this compile error:
0:130(13): error: no matching function for call to `mod(error, float)'; candidates are:
This is caused by `u_rotation - 90` being of type error since
`u_rotation` is a float and it’s illegal to subtract it with an integer.
2020-12-25 01:21:08 +01:00
Matthias Clasen
7e579bb59a
Merge branch 'wip/otte/for-master' into 'master'
...
Wip/otte/for master
See merge request GNOME/gtk!2997
2020-12-24 07:13:22 +00:00
Benjamin Otte
96e1b85c2c
gdkarray: Add a "stolen" boolean to splice()
...
If set to TRUE, does not call the free func for the removed items.
This can be used to move items between arrays without having to do the
refcounting dance.
2020-12-24 06:38:45 +01:00
Benjamin Otte
71e616d17e
listview: Use the correct scroll policy
...
Use the horizontal policy for horizontal decisions, not the vertical
one.
This broke in 0011ce949c
.
2020-12-24 06:38:45 +01:00
Benjamin Otte
f85d939e5e
docs: Put render nodes in their own sections
2020-12-24 06:38:45 +01:00
Benjamin Otte
8d014d6cb0
roundedbox: Remove unused API
2020-12-24 06:38:45 +01:00
Benjamin Otte
f7f8990f7a
picture: Fix copy/paste error in docs
2020-12-24 06:38:45 +01:00
Benjamin Otte
d6f288427a
video: When autoplaying, start playing once the video is prepared
...
This fixe video sources with longer loading times not automatically
playing.
2020-12-24 06:38:45 +01:00
Benjamin Otte
2a8f371643
gtk-demo: Don't put the search bar in the scroll area
...
1. That's a bad idea UI wise as you can't see the search after you
scrolled.
2. That's a bad idea code-wise because Listviews need to be put into
a ScrolledWindow or they won't scroll.
2020-12-24 06:38:45 +01:00
Benjamin Otte
dee863dbb2
rendernode: Bail if matrix is invalid
...
Invalid matrices are okay in GSK (and GL), but not in Cairo.
Testcase included.
2020-12-24 06:38:45 +01:00
A S Alam
7d6877ec80
Update Punjabi translation
2020-12-23 19:48:28 +00:00
Danial Behzadi
f426d23690
Update Persian translation
2020-12-23 15:53:07 +00:00
Matthias Clasen
e128a77eed
Merge branch 'matthiasc/for-master' into 'master'
...
window: Release application in destroy
See merge request GNOME/gtk!2994
2020-12-23 03:01:55 +00:00
Matthias Clasen
5cd2ee927a
window: Release application in destroy
...
We used to do this; it was lost in some life-cycle
reshuffling.
2020-12-22 20:34:13 -05:00
Matthias Clasen
e854b90293
Merge branch 'wip/baedert/for-master' into 'master'
...
Wip/baedert/for master
See merge request GNOME/gtk!2990
2020-12-22 04:53:31 +00:00
Matthias Clasen
6d042d9e61
Merge branch 'matthiasc/for-master' into 'master'
...
Matthiasc/for master
See merge request GNOME/gtk!2988
2020-12-22 02:29:03 +00:00
Matthias Clasen
4310f24a4e
Fix warnings with Vulkan < 162
...
Tiring to watch the Vulkan people stumble through
ABI and API compat, but what can you do.
2020-12-21 20:00:16 -05:00
Matthias Clasen
aebf8e3c29
Merge branch 'mcatanzaro/fix-gtk-builder-tool' into 'master'
...
Fix buffer overruns in 'gtk-builder-tool simplify'
See merge request GNOME/gtk!2987
2020-12-21 22:49:42 +00:00
Matthias Clasen
fcd449f0d4
modelbutton: Remove an unused field
...
We're not using the centered field anymore.
2020-12-21 17:45:01 -05:00
Michael Catanzaro
ab1b117d91
Fix buffer overruns in 'gtk-builder-tool simplify'
...
Oops, here we allocate only one byte for each pointer we want to store.
We need to multiply by the size of a pointer.
2020-12-21 15:39:34 -06:00
Emmanuele Bassi
1253296387
Merge branch 'fix-printbackends' into 'master'
...
Fix the value for the print-backends setting
Closes #3486
See merge request GNOME/gtk!2986
2020-12-21 20:04:26 +00:00
Matthias Clasen
466484176f
Merge branch 'ebassi/docs-for-master' into 'master'
...
Ebassi/docs for master
See merge request GNOME/gtk!2983
2020-12-21 19:22:38 +00:00
Matthias Clasen
20289ad8e1
Fix the value for the print-backends setting
...
This was broken in the meson conversion, causing
us to default to "" instead of the built print
backends.
Fixes : #3486
2020-12-21 14:10:03 -05:00
Matthias Clasen
0abb8c6862
Merge branch 'matthiasc/for-master' into 'master'
...
Matthiasc/for master
See merge request GNOME/gtk!2984
2020-12-21 19:00:10 +00:00
Matthias Clasen
147386189f
inspector: Show glyphs as in node files
...
Reuse the glyph serialization code from gsk to
show glyphs in the same way here.
2020-12-21 13:11:46 -05:00
Matthias Clasen
9cec9e4ce2
gsk: Export the glyph serialization privately
...
We want to use the same serialization in the inspector,
so export this function.
2020-12-21 13:11:08 -05:00
Matthias Clasen
26119af7a6
gsk: Improve glyph serialization
...
The special case for ASCII glyphs is unfortunately not
working very well, because of an oversight in pango:
When I added subpixel positioning, I made pango_shape()
default to not rounding, and make PangoLayout call
pango_shape_with_flags() and pass the rounding information
down. The upshot is that we need to use the _with_flags
variant here and tell it to round position, so it matches
what the text node contains.
2020-12-21 13:08:34 -05:00
Timm Bäder
478d1f71e3
Merge branch 'fix-node-glyphs' into 'master'
...
gsk: Fix serialization of glyphs
Closes #3496
See merge request GNOME/gtk!2982
2020-12-21 17:16:38 +00:00