Skip to content
This repository was archived by the owner on Feb 25, 2025. It is now read-only.

Commit def757f

Browse files
committed
de-null vector_math.dart
1 parent 77d7631 commit def757f

File tree

12 files changed

+528
-529
lines changed

12 files changed

+528
-529
lines changed

lib/web_ui/lib/src/engine/bitmap_canvas.dart

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -431,7 +431,7 @@ class BitmapCanvas extends EngineCanvas {
431431
}
432432
} else {
433433
final String cssTransform = float64ListToCssTransform(
434-
transformWithOffset(_canvasPool.currentTransform, p).storage!);
434+
transformWithOffset(_canvasPool.currentTransform, p).storage);
435435
imgElement.style
436436
..transformOrigin = '0 0 0'
437437
..transform = cssTransform
@@ -728,7 +728,7 @@ class BitmapCanvas extends EngineCanvas {
728728
} else {
729729
setElementTransform(
730730
paragraphElement,
731-
transformWithOffset(_canvasPool.currentTransform, offset).storage!,
731+
transformWithOffset(_canvasPool.currentTransform, offset).storage,
732732
);
733733
rootElement.append(paragraphElement);
734734
}
@@ -948,7 +948,7 @@ List<html.Element?> _clipContent(List<_SaveClipEntry> clipStack,
948948
..overflow = 'hidden'
949949
..width = '${rect.right - clipOffsetX}px'
950950
..height = '${rect.bottom - clipOffsetY}px';
951-
setElementTransform(curElement, newClipTransform.storage!);
951+
setElementTransform(curElement, newClipTransform.storage);
952952
} else if (entry.rrect != null) {
953953
final ui.RRect roundRect = entry.rrect!;
954954
final String borderRadius =
@@ -963,7 +963,7 @@ List<html.Element?> _clipContent(List<_SaveClipEntry> clipStack,
963963
..overflow = 'hidden'
964964
..width = '${roundRect.right - clipOffsetX}px'
965965
..height = '${roundRect.bottom - clipOffsetY}px';
966-
setElementTransform(curElement, newClipTransform.storage!);
966+
setElementTransform(curElement, newClipTransform.storage);
967967
} else if (entry.path != null) {
968968
curElement.style.transform = matrix4ToCssTransform(newClipTransform);
969969
String svgClipPath = createSvgClipDef(curElement as html.HtmlElement, entry.path!);
@@ -979,7 +979,7 @@ List<html.Element?> _clipContent(List<_SaveClipEntry> clipStack,
979979
reverseTransformDiv.style.position = 'absolute';
980980
setElementTransform(
981981
reverseTransformDiv,
982-
(newClipTransform.clone()..invert()).storage!,
982+
(newClipTransform.clone()..invert()).storage,
983983
);
984984
curElement.append(reverseTransformDiv);
985985
curElement = reverseTransformDiv;
@@ -989,7 +989,7 @@ List<html.Element?> _clipContent(List<_SaveClipEntry> clipStack,
989989
domRenderer.append(curElement!, content);
990990
setElementTransform(
991991
content,
992-
transformWithOffset(currentTransform, offset).storage!,
992+
transformWithOffset(currentTransform, offset).storage,
993993
);
994994
return <html.Element?>[root]..addAll(clipDefs);
995995
}

lib/web_ui/lib/src/engine/canvas_pool.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -988,7 +988,7 @@ class _SaveStackTracking {
988988
@mustCallSuper
989989
void skew(double sx, double sy) {
990990
final Matrix4 skewMatrix = Matrix4.identity();
991-
final Float32List storage = skewMatrix.storage!;
991+
final Float32List storage = skewMatrix.storage;
992992
storage[1] = sy;
993993
storage[4] = sx;
994994
_currentTransform.multiply(skewMatrix);

lib/web_ui/lib/src/engine/compositor/embedded_views.dart

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -237,7 +237,7 @@ class HtmlViewEmbedder {
237237
case MutatorType.transform:
238238
headTransform.multiply(mutator.matrix!);
239239
head.style.transform =
240-
float64ListToCssTransform(headTransform.storage!);
240+
float64ListToCssTransform(headTransform.storage);
241241
break;
242242
case MutatorType.clipRect:
243243
case MutatorType.clipRRect:
@@ -295,7 +295,7 @@ class HtmlViewEmbedder {
295295
final Matrix4 scaleMatrix =
296296
Matrix4.diagonal3Values(inverseScale, inverseScale, 1);
297297
headTransform.multiply(scaleMatrix);
298-
head.style.transform = float64ListToCssTransform(headTransform.storage!);
298+
head.style.transform = float64ListToCssTransform(headTransform.storage);
299299
}
300300

301301
/// Sets the transform origin to the top-left corner of the element.

lib/web_ui/lib/src/engine/engine_canvas.dart

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -204,7 +204,7 @@ mixin SaveStackTracking on EngineCanvas {
204204
@override
205205
void skew(double sx, double sy) {
206206
final Matrix4 skewMatrix = Matrix4.identity();
207-
final Float32List storage = skewMatrix.storage!;
207+
final Float32List storage = skewMatrix.storage;
208208
storage[1] = sy;
209209
storage[4] = sx;
210210
_currentTransform.multiply(skewMatrix);
@@ -267,7 +267,7 @@ html.Element _drawParagraphElement(
267267
if (transform != null) {
268268
setElementTransform(
269269
paragraphElement,
270-
transformWithOffset(transform, offset).storage!,
270+
transformWithOffset(transform, offset).storage,
271271
);
272272
}
273273

lib/web_ui/lib/src/engine/houdini_canvas.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -353,7 +353,7 @@ mixin SaveElementStackTracking on EngineCanvas {
353353
// DO NOT USE Matrix4.skew(sx, sy)! It treats sx and sy values as radians,
354354
// but in our case they are transform matrix values.
355355
final Matrix4 skewMatrix = Matrix4.identity();
356-
final Float32List storage = skewMatrix.storage!;
356+
final Float32List storage = skewMatrix.storage;
357357
storage[1] = sy;
358358
storage[4] = sx;
359359
_currentTransform.multiply(skewMatrix);

lib/web_ui/lib/src/engine/semantics/semantics.dart

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -827,8 +827,9 @@ class SemanticsObject {
827827
hasChildren ? getOrCreateChildContainer() : null;
828828

829829
final bool hasZeroRectOffset = _rect!.top == 0.0 && _rect!.left == 0.0;
830+
final Float32List? transform = _transform;
830831
final bool hasIdentityTransform =
831-
_transform == null || isIdentityFloat32ListTransform(_transform!);
832+
transform == null || isIdentityFloat32ListTransform(transform);
832833

833834
if (hasZeroRectOffset &&
834835
hasIdentityTransform &&
@@ -848,19 +849,19 @@ class SemanticsObject {
848849
late Matrix4 effectiveTransform;
849850
bool effectiveTransformIsIdentity = true;
850851
if (!hasZeroRectOffset) {
851-
if (_transform == null) {
852+
if (transform == null) {
852853
final double left = _rect!.left;
853854
final double top = _rect!.top;
854855
effectiveTransform = Matrix4.translationValues(left, top, 0.0);
855856
effectiveTransformIsIdentity = left == 0.0 && top == 0.0;
856857
} else {
857858
// Clone to avoid mutating _transform.
858-
effectiveTransform = Matrix4.fromFloat32List(_transform).clone()
859+
effectiveTransform = Matrix4.fromFloat32List(transform).clone()
859860
..translate(_rect!.left, _rect!.top, 0.0);
860861
effectiveTransformIsIdentity = effectiveTransform.isIdentity();
861862
}
862863
} else if (!hasIdentityTransform) {
863-
effectiveTransform = Matrix4.fromFloat32List(_transform);
864+
effectiveTransform = Matrix4.fromFloat32List(transform!);
864865
effectiveTransformIsIdentity = false;
865866
}
866867

lib/web_ui/lib/src/engine/surface/path.dart

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -520,7 +520,7 @@ class SurfacePath implements ui.Path {
520520
subpaths.addAll(path.subpaths);
521521
} else {
522522
subpaths.addAll(path
523-
._transform(Matrix4.translationValues(dx, dy, 0.0).storage!)
523+
._transform(Matrix4.translationValues(dx, dy, 0.0).storage)
524524
.subpaths);
525525
}
526526
}
@@ -530,7 +530,7 @@ class SurfacePath implements ui.Path {
530530
assert(matrix4IsValid(matrix));
531531
final Matrix4 transform = Matrix4.fromFloat32List(matrix);
532532
transform.translate(dx, dy);
533-
subpaths.addAll(path._transform(transform.storage!).subpaths);
533+
subpaths.addAll(path._transform(transform.storage).subpaths);
534534
}
535535

536536
/// Adds the given path to this path by extending the current segment of this

lib/web_ui/lib/src/engine/surface/recording_canvas.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1949,7 +1949,7 @@ class _PaintBounds {
19491949
// DO NOT USE Matrix4.skew(sx, sy)! It treats sx and sy values as radians,
19501950
// but in our case they are transform matrix values.
19511951
final Matrix4 skewMatrix = Matrix4.identity();
1952-
final Float32List storage = skewMatrix.storage!;
1952+
final Float32List storage = skewMatrix.storage;
19531953
storage[1] = sy;
19541954
storage[4] = sx;
19551955
_currentMatrix.multiply(skewMatrix);

lib/web_ui/lib/src/engine/surface/render_vertices.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -262,7 +262,7 @@ ui.Rect _computeVerticesBounds(Float32List positions, Matrix4 transform) {
262262

263263
ui.Rect _transformBounds(
264264
Matrix4 transform, double left, double top, double right, double bottom) {
265-
final Float32List storage = transform.storage!;
265+
final Float32List storage = transform.storage;
266266
final double m0 = storage[0];
267267
final double m1 = storage[1];
268268
final double m4 = storage[4];

lib/web_ui/lib/src/engine/surface/transform.dart

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22
// Use of this source code is governed by a BSD-style license that can be
33
// found in the LICENSE file.
44

5-
65
part of engine;
76

87
/// A surface that transforms its children using CSS transform.
@@ -11,7 +10,7 @@ class PersistedTransform extends PersistedContainerSurface
1110
PersistedTransform(PersistedTransform? oldLayer, this.matrix4)
1211
: super(oldLayer);
1312

14-
final Float32List? matrix4;
13+
final Float32List matrix4;
1514

1615
@override
1716
void recomputeTransformAndClip() {
@@ -35,7 +34,7 @@ class PersistedTransform extends PersistedContainerSurface
3534

3635
@override
3736
void apply() {
38-
rootElement!.style.transform = float64ListToCssTransform(matrix4!);
37+
rootElement!.style.transform = float64ListToCssTransform(matrix4);
3938
}
4039

4140
@override
@@ -47,8 +46,8 @@ class PersistedTransform extends PersistedContainerSurface
4746
}
4847

4948
bool matrixChanged = false;
50-
for (int i = 0; i < matrix4!.length; i++) {
51-
if (matrix4![i] != oldSurface.matrix4![i]) {
49+
for (int i = 0; i < matrix4.length; i++) {
50+
if (matrix4[i] != oldSurface.matrix4[i]) {
5251
matrixChanged = true;
5352
break;
5453
}

0 commit comments

Comments
 (0)