frame_sync.dart 1.28 KB
Newer Older
Ian Hickson's avatar
Ian Hickson committed
1
// Copyright 2014 The Flutter Authors. All rights reserved.
2 3 4 5 6
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

import 'message.dart';

7
/// A Flutter Driver command that enables or disables the FrameSync mechanism.
8
class SetFrameSync extends Command {
9
  /// Creates a command to toggle the FrameSync mechanism.
10
  const SetFrameSync(this.enabled, { Duration timeout }) : super(timeout: timeout);
11

12 13
  /// Deserializes this command from the value generated by [serialize].
  SetFrameSync.deserialize(Map<String, String> params)
14 15
    : enabled = params['enabled'].toLowerCase() == 'true',
      super.deserialize(params);
16

17 18 19 20
  /// Whether frameSync should be enabled or disabled.
  final bool enabled;

  @override
21
  String get kind => 'set_frame_sync';
22

23 24 25 26 27 28 29 30
  @override
  Map<String, String> serialize() => super.serialize()..addAll(<String, String>{
    'enabled': '$enabled',
  });
}

/// The result of a [SetFrameSync] command.
class SetFrameSyncResult extends Result {
31 32 33
  /// Creates a [SetFrameSyncResult].
  const SetFrameSyncResult();

34 35
  /// Deserializes this result from JSON.
  static SetFrameSyncResult fromJson(Map<String, dynamic> json) {
36
    return const SetFrameSyncResult();
37 38 39 40 41
  }

  @override
  Map<String, dynamic> toJson() => <String, dynamic>{};
}