On Tue, 20 Oct 2026 20:46:26 GMT, Andy Goryachev <[email protected]> wrote:
>> John Hendrikx has updated the pull request incrementally with four
>> additional commits since the last revision:
>>
>> - Fix proportional gradients for text
>> - Drop unnecessary applyStrokeParameters
>> - Document that self drawing is unspecified behavior.
>> - Fix code example
>
> modules/javafx.graphics/src/main/java/com/sun/prism/sw/SWDrawingContext.java
> line 739:
>
>> 737: @Override
>> 738: public void strokeRoundRect(double x, double y, double w, double h,
>> double arcWidth, double arcHeight) {
>> 739: if (w != 0 || h != 0) {
>
> inconsistent check: see GraphicsContext:1646
Made these all consistent and documented them. Adjusted `GraphicsContext` so
all strokes are consistent (fills were already consistent).
> modules/javafx.graphics/src/main/java/com/sun/prism/sw/SWDrawingContext.java
> line 829:
>
>> 827:
>> 828: private void strokePolyline(double[] xPoints, double[] yPoints, int
>> nPoints, boolean close) {
>> 829: if (xPoints != null && yPoints != null && nPoints >= 2 &&
>> xPoints.length >= nPoints && yPoints.length >= nPoints) {
>
> difference in handling malformed arrays: GraphicsContext:738 throws AIOOBE, a
> no-op here. should it be addressed / documented?
I documented the desired behavior (no-op like everything else so far) and
adjusted `GraphicsContext`.
> modules/javafx.graphics/src/main/java/javafx/scene/canvas/GraphicsContext.java
> line 1298:
>
>> 1296: */
>> 1297: @Override
>> 1298: public void setTextDirection(NodeOrientation direction) {
>
> text direction attribute is missing from the table on L205
Added
> modules/javafx.graphics/src/main/native-prism-sw/JJavaSurface.c line 152:
>
>> 150:
>> 151: jint dataOffset = (*env)->GetIntField(env, surfaceHandle,
>> fieldIds[SURFACE_DATA_OFFSET]);
>> 152: jint* arrayData = (jint*)(*env)->GetPrimitiveArrayCritical(env,
>> surface->dataHandle, NULL);
>
> should you set super.data = NULL before `GetPrimitiveArrayCritical` ?
See other comment
> modules/javafx.graphics/src/main/native-prism-sw/JJavaSurface.c line 171:
>
>> 169: (*env)->ReleasePrimitiveArrayCritical(env, surface->dataHandle,
>> surface->arrayData, 0);
>> 170: surface->arrayData = NULL;
>> 171: surface->dataHandle = NULL;
>
> should you set `super.data = NULL` here as well?
Yeah, there were a few problems here, one was pre-existing; fixed both
> modules/javafx.graphics/src/test/java/test/com/sun/javafx/geom/Path2DTest.java
> line 2:
>
>> 1: /*
>> 2: * Copyright (c) 2011, 2024, Oracle and/or its affiliates. All rights
>> reserved.
>
> 2026
Fixed
-------------
PR Review Comment: https://git.openjdk.org/jfx/pull/1969#discussion_r4332368273
PR Review Comment: https://git.openjdk.org/jfx/pull/1969#discussion_r4332364578
PR Review Comment: https://git.openjdk.org/jfx/pull/1969#discussion_r4332361727
PR Review Comment: https://git.openjdk.org/jfx/pull/1969#discussion_r4332372890
PR Review Comment: https://git.openjdk.org/jfx/pull/1969#discussion_r4332371695
PR Review Comment: https://git.openjdk.org/jfx/pull/1969#discussion_r4332373603