RestorationProperties

snippet.packages.flutter.lib.src.widgets.restoration_properties.35.

  

// ignore_for_file: directives_ordering
// ignore_for_file: unnecessary_import
// ignore_for_file: unused_import
// ignore_for_file: unused_element
// ignore_for_file: unused_local_variable
import 'dart:async';
import 'dart:convert';
import 'dart:math' as math;
import 'dart:typed_data';
import 'dart:ui' as ui;
import 'package:flutter_test/flutter_test.dart';
import 'package:flutter/material.dart';
import 'package:flutter/foundation.dart';
import 'package:flutter/widgets.dart';
import 'package:flutter/gestures.dart';
import 'package:flutter/painting.dart';
import 'package:flutter/physics.dart';
import 'package:flutter/cupertino.dart';
import 'package:flutter/semantics.dart';
import 'package:flutter/rendering.dart';
import 'package:flutter/scheduler.dart';
import 'package:flutter/animation.dart';
import 'package:flutter/services.dart';

// From: packages/flutter/lib/src/widgets/restoration_properties.dart:35
class RestorableDuration extends RestorableValue {
  @override
  Duration createDefaultValue() => Duration.zero;

  @override
  void didUpdateValue(Duration? oldValue) {
    if (oldValue == null || oldValue.inMicroseconds != value.inMicroseconds) {
      notifyListeners();
    }
  }

  @override
  Duration fromPrimitives(Object? data) {
    if (data != null) {
      return Duration(microseconds: data as int);
    }
    return Duration.zero;
  }

  @override
  Object toPrimitives() {
    return value.inMicroseconds;
  }
}
  

SHARE: