import method

  1. @override
bool import(
  1. ImportStack stack
)
inherited

Implementation

@override
bool import(ImportStack stack) {
  var backboardImporter =
      stack.latest<BackboardImporter>(BackboardBase.typeKey);
  if (backboardImporter == null) {
    return false;
  }

  // When we paste a FileAssetReference (e.g an Image) into a file, we want to
  // prevent the asset being re-added if there is already a copy of it in the
  // file. We check if an asset with the same assetId already exists, and if
  // so add it to the backboard importer, any fileAssetReferences will map
  // to the existing asset instead.
  for (final object in backboardImporter.backboard.assets) {
    if (object is FileAsset && object.assetId == assetId) {
      backboardImporter.addFileAsset(object);
      return false;
    }
  }

  backboardImporter.addFileAsset(this);
  return super.import(stack);
}