Commit Graph

77530 Commits

Author SHA1 Message Date
Matthias Clasen
4229a37e90 arc: Fix the derivative
Scale the derivative such that computing the arc length
of a unit quarter circle wil produce the expected result
of PI/2.
2023-08-23 22:18:52 -04:00
Matthias Clasen
12297fd88a arc curve: Simplify derivative 2023-08-23 22:11:22 -04:00
Matthias Clasen
7943610066 curve: Fix arc decomposition 2023-08-23 22:11:15 -04:00
Matthias Clasen
e19246d2db tests: Include arcs in curve tests 2023-08-23 22:10:51 -04:00
Matthias Clasen
e70117bd9f Merge branch 'mcatanzaro/#6056' into 'main'
notebook: fix critical when switching page

Closes #6056

See merge request GNOME/gtk!6327
2023-08-24 01:09:19 +00:00
Michael Catanzaro
20c4e24b74 notebook: fix critical when switching page
It's expected that gtk_widget_get_root() will return NULL if the widget
tree does not contain a root widget. I don't know what that means or why
it happens, but it's true in gnome-control-center's network panel when
displaying the OpenVPN configuration dialog. We need to handle it.

Fixes #6056
2023-08-23 15:51:08 -05:00
Matthias Clasen
3c5efbc77e Merge branch 'wip/matthiasc/arcs' into 'main'
path: Add arcs

See merge request GNOME/gtk!6313
2023-08-23 19:17:01 +00:00
Matthias Clasen
f6c2b6bb88 Make foreach work efficiently with arcs 2023-08-23 14:51:31 -04:00
Matthias Clasen
4ab03e79b7 Drop some unnecessary code
We tell path_foreach to split into lines or cubics,
so no point in having code to handle quads and arcs.
2023-08-23 14:33:25 -04:00
Matthias Clasen
7a12abdea3 Incorporate review feedback 2023-08-23 14:16:43 -04:00
Matthias Clasen
36ca1f10dc Add an arc demo
Make a circular spinner to see how well arcs
do for circles.
2023-08-23 13:45:12 -04:00
Matthias Clasen
07a92c1690 Merge branch 'matthiasc/for-main' into 'main'
docs: Fix gsk->gtk links

See merge request GNOME/gtk!6324
2023-08-23 16:45:26 +00:00
Matthias Clasen
0f7b9e686c Add a rounded rect test
This checks that our path-in-fill computations
agree with rounded_rect_contains_point. Sadly,
they don't do that, 100%.
2023-08-23 12:43:52 -04:00
Matthias Clasen
71584107b0 Add gsk_path_builder_html_arc_to
This one draws circular arcs with a given radius.
2023-08-23 12:43:52 -04:00
Matthias Clasen
88c0ace644 Make gsk_path_builder_svg_arc_to public
This is useful to port SVG paths using this syntax.
2023-08-23 12:43:52 -04:00
Matthias Clasen
d33ed4f9ab path: Add elliptical arcs
Add a new curve type for elliptical arcs
and use it for rounded rectangles and circles.
We use the 'E' command to represent elliptical
arcs in serialized paths.
2023-08-23 12:43:52 -04:00
Matthias Clasen
a63af177a4 docs: Fix gsk->gtk links
gi-docgen can't handle these, since we don't have
a dependency.
2023-08-23 11:38:13 -04:00
Piotr Drąg
43c8e136b5 Update Polish translation 2023-08-23 16:43:05 +02:00
Matthias Clasen
efd597c6ed Merge branch 'default-get-current-image' into 'main'
Implement gdk_paintable_default_get_current_image ()

See merge request GNOME/gtk!6303
2023-08-23 10:53:12 +00:00
Fran Dieguez
024a753a6a Update Galician translation 2023-08-23 07:24:01 +00:00
Danial Behzadi
e1dd3fb801 Update Persian translation 2023-08-23 00:18:33 +00:00
Ekaterine Papava
82011569ce Update Georgian translation 2023-08-22 21:14:18 +00:00
Sabri Ünal
747c9c4f94 Update Turkish translation 2023-08-22 20:18:57 +00:00
Matthias Clasen
7d7a090875 Merge branch 'wip/smcv/i387' into 'main'
tests: Accept slightly different numeric results

Closes #6051

See merge request GNOME/gtk!6320
2023-08-22 17:34:10 +00:00
Simon McVittie
0f125aad90 tests: Accept slightly different numeric results
FLT_EPSILON is the distance between 1.0 and the next distinct floating
point number, and doesn't necessarily have anything to do with the
precision we can expect from a series of floating-point calculations.
Experimentally, 1e-6 is achievable, even on platforms with unusual
floating point implementations like i387.

Resolves: https://gitlab.gnome.org/GNOME/gtk/-/issues/6051
Bug-Debian: https://bugs.debian.org/1050076
Signed-off-by: Simon McVittie <smcv@debian.org>
2023-08-22 17:24:17 +01:00
Matthias Clasen
a7d5796750 Merge branch 'path-tool-tweak' into 'main'
path-tool: Reorganize options

See merge request GNOME/gtk!6323
2023-08-22 16:19:19 +00:00
Matthias Clasen
79e132ab7b path-tool: Reorganize options
Put fill and stroke options into their own group.
This helps produce understandable --help output.
2023-08-22 09:56:43 -04:00
Danial Behzadi
85957b5d3e Update Persian translation 2023-08-22 13:39:46 +00:00
Matthias Clasen
373972b8ca Merge branch 'fix-wayland-crash' into 'main'
wayland: Don't assume the shell protocol

Closes #6048

See merge request GNOME/gtk!6322
2023-08-22 13:13:51 +00:00
Matthias Clasen
30e6d70b14 Merge branch 'matthiasc/for-main' into 'main'
docs: Tweaks

See merge request GNOME/gtk!6321
2023-08-22 13:07:42 +00:00
Matthias Clasen
c78b34649b wayland: Don't assume the shell protocol
The gtk_shell proxy will be NULL if the compositor
is not gnome-shell. Handle that without crashing.

Fixes: #6048
2023-08-22 08:27:23 -04:00
Matthias Clasen
b3fe68ca95 docs: Tweaks 2023-08-22 07:56:27 -04:00
Daniel Mustieles
417888f847 Updated Spanish translation 2023-08-22 13:25:53 +02:00
Benjamin Otte
de8fdd822c Merge branch 'wip/otte/for-main' into 'main'
widget: Remove unused headers from gtkwidget.h

See merge request GNOME/gtk!6319
2023-08-22 07:38:57 +00:00
Matthias Clasen
ee8e6ac546 Merge branch 'matthiasc/for-main' into 'main'
Make sure stroke bounds are big enough

See merge request GNOME/gtk!6318
2023-08-22 05:36:16 +00:00
Matthias Clasen
486674927a Make sure stroke bounds are big enough
Our standard 'empty path' in gtk4-node-editor
was getting its pointy corners cut off.
2023-08-21 23:59:08 -04:00
Matthias Clasen
acf9612ed8 docs: Start a section on paths 2023-08-21 23:59:08 -04:00
Matthias Clasen
8c664b669c Merge branch 'matthiasc/for-main' into 'main'
docs: Drop a nonexisting enum value

See merge request GNOME/gtk!6317
2023-08-22 03:47:30 +00:00
Matthias Clasen
b367bf83b4 docs: Tweaks 2023-08-21 22:40:22 -04:00
Matthias Clasen
b84f60877d docs: Drop a nonexisting enum value 2023-08-21 21:52:53 -04:00
Matthias Clasen
8a84024a54 Merge branch 'bilelmoussaoui/gi' into 'main'
gi: Fix missing namespace

See merge request GNOME/gtk!6316
2023-08-22 00:47:05 +00:00
Bilal Elmoussaoui
56cb614f79 gi: Fix missing namespace 2023-08-21 21:11:12 +00:00
Matthias Clasen
957d8845fd Merge branch 'kabus/x11-clipboard-leak' into 'main'
gdk/x11/clipboard: Fix Slist leak

See merge request GNOME/gtk!6314
2023-08-21 20:39:29 +00:00
Georges Basile Stavracas Neto
231c0ad77f Merge branch 'gbsneto/windows-ci-linker' into 'main'
ci: Limit parallel linking on Windows CI

See merge request GNOME/gtk!6315
2023-08-21 18:53:53 +00:00
Matthias Clasen
da635d6392 Merge branch '5777_texthistory_restore_modified_flag_on_redo' into 'main'
gtktexthistory: restore 'modified' flag on redo

Closes #5777

See merge request GNOME/gtk!6302
2023-08-21 18:41:28 +00:00
Matthias Clasen
b8a103b993 Merge branch 'matthiasc/for-main' into 'main'
curve: Add a get_crossing vfunc

See merge request GNOME/gtk!6312
2023-08-21 18:35:01 +00:00
Georges Basile Stavracas Neto
162759f34b ci: Limit parallel linking on Windows CI
Linking on Windows can easily run out of memory, and limiting it
to a single link operation (i.e. disabling parallelization) should
be enough to avoid this problem.
2023-08-21 15:29:51 -03:00
Khalid Abu Shawarib
79fa785dbc gdk/x11/clipboard: Fix Slist leak 2023-08-21 20:32:42 +03:00
Anders Jonsson
2a03e50030 Update Swedish translation 2023-08-21 15:55:55 +00:00
Matthias Clasen
fb0f5b5c14 curve: Add a get_crossing vfunc 2023-08-21 11:29:14 -04:00