addToScene method Null safety

  1. @override
void addToScene(
  1. SceneBuilder builder
)
override

Override this method to upload this layer to the engine.

Return the engine layer for retained rendering. When there's no corresponding engine layer, null is returned.

Implementation

@override
void addToScene(ui.SceneBuilder builder) {
  assert(clipPath != null);
  assert(clipBehavior != null);
  assert(elevation != null);
  assert(color != null);
  assert(shadowColor != null);

  bool enabled = true;
  assert(() {
    enabled = !debugDisablePhysicalShapeLayers;
    return true;
  }());
  if (enabled) {
    engineLayer = builder.pushPhysicalShape(
      path: clipPath!,
      elevation: elevation!,
      color: color!,
      shadowColor: shadowColor,
      clipBehavior: clipBehavior,
      oldLayer: _engineLayer as ui.PhysicalShapeEngineLayer?,
    );
  } else {
    engineLayer = null;
  }
  addChildrenToScene(builder);
  if (enabled) {
    builder.pop();
  }
}