mirror of
https://github.com/flutter/flutter.git
synced 2026-02-20 02:29:02 +08:00
Create service extension consts for rendering lib (#111149)
This commit is contained in:
parent
10d7e31407
commit
fe309e3415
@ -55,6 +55,7 @@ export 'src/rendering/proxy_box.dart';
|
||||
export 'src/rendering/proxy_sliver.dart';
|
||||
export 'src/rendering/rotated_box.dart';
|
||||
export 'src/rendering/selection.dart';
|
||||
export 'src/rendering/service_extensions.dart';
|
||||
export 'src/rendering/shifted_box.dart';
|
||||
export 'src/rendering/sliver.dart';
|
||||
export 'src/rendering/sliver_fill.dart';
|
||||
|
||||
@ -14,6 +14,7 @@ import 'box.dart';
|
||||
import 'debug.dart';
|
||||
import 'mouse_tracker.dart';
|
||||
import 'object.dart';
|
||||
import 'service_extensions.dart';
|
||||
import 'view.dart';
|
||||
|
||||
export 'package:flutter/gestures.dart' show HitTestResult;
|
||||
@ -63,7 +64,7 @@ mixin RendererBinding on BindingBase, ServicesBinding, SchedulerBinding, Gesture
|
||||
assert(() {
|
||||
// these service extensions only work in debug mode
|
||||
registerBoolServiceExtension(
|
||||
name: 'invertOversizedImages',
|
||||
name: RenderingServiceExtensions.invertOversizedImages.name,
|
||||
getter: () async => debugInvertOversizedImages,
|
||||
setter: (bool value) async {
|
||||
if (debugInvertOversizedImages != value) {
|
||||
@ -74,7 +75,7 @@ mixin RendererBinding on BindingBase, ServicesBinding, SchedulerBinding, Gesture
|
||||
},
|
||||
);
|
||||
registerBoolServiceExtension(
|
||||
name: 'debugPaint',
|
||||
name: RenderingServiceExtensions.debugPaint.name,
|
||||
getter: () async => debugPaintSizeEnabled,
|
||||
setter: (bool value) {
|
||||
if (debugPaintSizeEnabled == value) {
|
||||
@ -85,7 +86,7 @@ mixin RendererBinding on BindingBase, ServicesBinding, SchedulerBinding, Gesture
|
||||
},
|
||||
);
|
||||
registerBoolServiceExtension(
|
||||
name: 'debugPaintBaselinesEnabled',
|
||||
name: RenderingServiceExtensions.debugPaintBaselinesEnabled.name,
|
||||
getter: () async => debugPaintBaselinesEnabled,
|
||||
setter: (bool value) {
|
||||
if (debugPaintBaselinesEnabled == value) {
|
||||
@ -96,7 +97,7 @@ mixin RendererBinding on BindingBase, ServicesBinding, SchedulerBinding, Gesture
|
||||
},
|
||||
);
|
||||
registerBoolServiceExtension(
|
||||
name: 'repaintRainbow',
|
||||
name: RenderingServiceExtensions.repaintRainbow.name,
|
||||
getter: () async => debugRepaintRainbowEnabled,
|
||||
setter: (bool value) {
|
||||
final bool repaint = debugRepaintRainbowEnabled && !value;
|
||||
@ -108,7 +109,7 @@ mixin RendererBinding on BindingBase, ServicesBinding, SchedulerBinding, Gesture
|
||||
},
|
||||
);
|
||||
registerServiceExtension(
|
||||
name: 'debugDumpLayerTree',
|
||||
name: RenderingServiceExtensions.debugDumpLayerTree.name,
|
||||
callback: (Map<String, String> parameters) async {
|
||||
final String data = RendererBinding.instance.renderView.debugLayer?.toStringDeep() ?? 'Layer tree unavailable.';
|
||||
return <String, Object>{
|
||||
@ -117,7 +118,7 @@ mixin RendererBinding on BindingBase, ServicesBinding, SchedulerBinding, Gesture
|
||||
},
|
||||
);
|
||||
registerBoolServiceExtension(
|
||||
name: 'debugDisableClipLayers',
|
||||
name: RenderingServiceExtensions.debugDisableClipLayers.name,
|
||||
getter: () async => debugDisableClipLayers,
|
||||
setter: (bool value) {
|
||||
if (debugDisableClipLayers == value) {
|
||||
@ -128,7 +129,7 @@ mixin RendererBinding on BindingBase, ServicesBinding, SchedulerBinding, Gesture
|
||||
},
|
||||
);
|
||||
registerBoolServiceExtension(
|
||||
name: 'debugDisablePhysicalShapeLayers',
|
||||
name: RenderingServiceExtensions.debugDisablePhysicalShapeLayers.name,
|
||||
getter: () async => debugDisablePhysicalShapeLayers,
|
||||
setter: (bool value) {
|
||||
if (debugDisablePhysicalShapeLayers == value) {
|
||||
@ -139,7 +140,7 @@ mixin RendererBinding on BindingBase, ServicesBinding, SchedulerBinding, Gesture
|
||||
},
|
||||
);
|
||||
registerBoolServiceExtension(
|
||||
name: 'debugDisableOpacityLayers',
|
||||
name: RenderingServiceExtensions.debugDisableOpacityLayers.name,
|
||||
getter: () async => debugDisableOpacityLayers,
|
||||
setter: (bool value) {
|
||||
if (debugDisableOpacityLayers == value) {
|
||||
@ -155,7 +156,7 @@ mixin RendererBinding on BindingBase, ServicesBinding, SchedulerBinding, Gesture
|
||||
if (!kReleaseMode) {
|
||||
// these service extensions work in debug or profile mode
|
||||
registerServiceExtension(
|
||||
name: 'debugDumpRenderTree',
|
||||
name: RenderingServiceExtensions.debugDumpRenderTree.name,
|
||||
callback: (Map<String, String> parameters) async {
|
||||
final String data = RendererBinding.instance.renderView.toStringDeep();
|
||||
return <String, Object>{
|
||||
@ -164,7 +165,7 @@ mixin RendererBinding on BindingBase, ServicesBinding, SchedulerBinding, Gesture
|
||||
},
|
||||
);
|
||||
registerServiceExtension(
|
||||
name: 'debugDumpSemanticsTreeInTraversalOrder',
|
||||
name: RenderingServiceExtensions.debugDumpSemanticsTreeInTraversalOrder.name,
|
||||
callback: (Map<String, String> parameters) async {
|
||||
return <String, Object>{
|
||||
'data': _generateSemanticsTree(DebugSemanticsDumpOrder.traversalOrder),
|
||||
@ -172,7 +173,7 @@ mixin RendererBinding on BindingBase, ServicesBinding, SchedulerBinding, Gesture
|
||||
},
|
||||
);
|
||||
registerServiceExtension(
|
||||
name: 'debugDumpSemanticsTreeInInverseHitTestOrder',
|
||||
name: RenderingServiceExtensions.debugDumpSemanticsTreeInInverseHitTestOrder.name,
|
||||
callback: (Map<String, String> parameters) async {
|
||||
return <String, Object>{
|
||||
'data': _generateSemanticsTree(DebugSemanticsDumpOrder.inverseHitTest),
|
||||
@ -180,7 +181,7 @@ mixin RendererBinding on BindingBase, ServicesBinding, SchedulerBinding, Gesture
|
||||
},
|
||||
);
|
||||
registerBoolServiceExtension(
|
||||
name: 'profileRenderObjectPaints',
|
||||
name: RenderingServiceExtensions.profileRenderObjectPaints.name,
|
||||
getter: () async => debugProfilePaintsEnabled,
|
||||
setter: (bool value) async {
|
||||
if (debugProfilePaintsEnabled != value) {
|
||||
@ -189,7 +190,7 @@ mixin RendererBinding on BindingBase, ServicesBinding, SchedulerBinding, Gesture
|
||||
},
|
||||
);
|
||||
registerBoolServiceExtension(
|
||||
name: 'profileRenderObjectLayouts',
|
||||
name: RenderingServiceExtensions.profileRenderObjectLayouts.name,
|
||||
getter: () async => debugProfileLayoutsEnabled,
|
||||
setter: (bool value) async {
|
||||
if (debugProfileLayoutsEnabled != value) {
|
||||
|
||||
@ -94,7 +94,7 @@ bool debugPrintLayouts = false;
|
||||
/// this on in your unit tests for additional validations.
|
||||
bool debugCheckIntrinsicSizes = false;
|
||||
|
||||
/// Adds [dart:developer.Timeline] events for every [RenderObject] layout.
|
||||
/// Adds [Timeline] events for every [RenderObject] layout.
|
||||
///
|
||||
/// The timing information this flag exposes is not representative of the actual
|
||||
/// cost of layout, because the overhead of adding timeline events is
|
||||
@ -120,7 +120,7 @@ bool debugCheckIntrinsicSizes = false;
|
||||
/// debugging information related to [RenderObject] layouts.
|
||||
bool debugProfileLayoutsEnabled = false;
|
||||
|
||||
/// Adds [dart:developer.Timeline] events for every [RenderObject] painted.
|
||||
/// Adds [Timeline] events for every [RenderObject] painted.
|
||||
///
|
||||
/// The timing information this flag exposes is not representative of actual
|
||||
/// paints, because the overhead of adding timeline events is significant
|
||||
|
||||
153
packages/flutter/lib/src/rendering/service_extensions.dart
Normal file
153
packages/flutter/lib/src/rendering/service_extensions.dart
Normal file
@ -0,0 +1,153 @@
|
||||
// Copyright 2014 The Flutter Authors. All rights reserved.
|
||||
// Use of this source code is governed by a BSD-style license that can be
|
||||
// found in the LICENSE file.
|
||||
|
||||
/// Service extension constants for the rendering library.
|
||||
///
|
||||
/// These constants will be used when registering service extensions in the
|
||||
/// framework, and they will also be used by tools and services that call these
|
||||
/// service extensions.
|
||||
///
|
||||
/// The String value for each of these extension names should be accessed by
|
||||
/// calling the `.name` property on the enum value.
|
||||
enum RenderingServiceExtensions {
|
||||
/// Name of service extension that, when called, will toggle whether the
|
||||
/// framework will color invert and horizontally flip images that have been
|
||||
/// decoded to a size taking at least [debugImageOverheadAllowance] bytes more
|
||||
/// than necessary.
|
||||
///
|
||||
/// See also:
|
||||
///
|
||||
/// * [debugInvertOversizedImages], which is the flag that this service
|
||||
/// extension exposes.
|
||||
/// * [RendererBinding.initServiceExtensions], where the service extension is
|
||||
/// registered.
|
||||
invertOversizedImages,
|
||||
|
||||
/// Name of service extension that, when called, will toggle whether each
|
||||
/// [RenderBox] will paint a box around its bounds as well as additional boxes
|
||||
/// showing construction lines.
|
||||
///
|
||||
/// See also:
|
||||
///
|
||||
/// * [debugPaintSizeEnabled], which is the flag that this service extension
|
||||
/// exposes.
|
||||
/// * [RendererBinding.initServiceExtensions], where the service extension is
|
||||
/// registered.
|
||||
debugPaint,
|
||||
|
||||
/// Name of service extension that, when called, will toggle whether each
|
||||
/// [RenderBox] will paint a line at each of its baselines.
|
||||
///
|
||||
/// See also:
|
||||
///
|
||||
/// * [debugPaintBaselinesEnabled], which is the flag that this service
|
||||
/// extension exposes.
|
||||
/// * [RendererBinding.initServiceExtensions], where the service extension is
|
||||
/// registered.
|
||||
debugPaintBaselinesEnabled,
|
||||
|
||||
/// Name of service extension that, when called, will toggle whether a rotating
|
||||
/// set of colors will be overlaid on the device when repainting layers in debug
|
||||
/// mode.
|
||||
///
|
||||
/// See also:
|
||||
///
|
||||
/// * [debugRepaintRainbowEnabled], which is the flag that this service
|
||||
/// extension exposes.
|
||||
/// * [RendererBinding.initServiceExtensions], where the service extension is
|
||||
/// registered.
|
||||
repaintRainbow,
|
||||
|
||||
/// Name of service extension that, when called, will dump a [String]
|
||||
/// representation of the layer tree to console.
|
||||
///
|
||||
/// See also:
|
||||
///
|
||||
/// * [RendererBinding.initServiceExtensions], where the service extension is
|
||||
/// registered.
|
||||
debugDumpLayerTree,
|
||||
|
||||
|
||||
/// Name of service extension that, when called, will toggle whether all
|
||||
/// clipping effects from the layer tree will be ignored.
|
||||
///
|
||||
/// See also:
|
||||
///
|
||||
/// * [debugDisableClipLayers], which is the flag that this service extension
|
||||
/// exposes.
|
||||
/// * [RendererBinding.initServiceExtensions], where the service extension is
|
||||
/// registered.
|
||||
debugDisableClipLayers,
|
||||
|
||||
/// Name of service extension that, when called, will toggle whether all
|
||||
/// physical modeling effects from the layer tree will be ignored.
|
||||
///
|
||||
/// See also:
|
||||
///
|
||||
/// * [debugDisablePhysicalShapeLayers], which is the flag that this service
|
||||
/// extension exposes.
|
||||
/// * [RendererBinding.initServiceExtensions], where the service extension is
|
||||
/// registered.
|
||||
debugDisablePhysicalShapeLayers,
|
||||
|
||||
/// Name of service extension that, when called, will toggle whether all opacity
|
||||
/// effects from the layer tree will be ignored.
|
||||
///
|
||||
/// See also:
|
||||
///
|
||||
/// * [debugDisableOpacityLayers], which is the flag that this service extension
|
||||
/// exposes.
|
||||
/// * [RendererBinding.initServiceExtensions], where the service extension is
|
||||
/// registered.
|
||||
debugDisableOpacityLayers,
|
||||
|
||||
/// Name of service extension that, when called, will dump a [String]
|
||||
/// representation of the render tree to console.
|
||||
///
|
||||
/// See also:
|
||||
///
|
||||
/// * [RendererBinding.initServiceExtensions], where the service extension is
|
||||
/// registered.
|
||||
debugDumpRenderTree,
|
||||
|
||||
/// Name of service extension that, when called, will dump a [String]
|
||||
/// representation of the semantics tree (in traversal order) to console.
|
||||
///
|
||||
/// See also:
|
||||
///
|
||||
/// * [RendererBinding.initServiceExtensions], where the service extension is
|
||||
/// registered.
|
||||
debugDumpSemanticsTreeInTraversalOrder,
|
||||
|
||||
/// Name of service extension that, when called, will dump a [String]
|
||||
/// representation of the semantics tree (in inverse hit test order) to console.
|
||||
///
|
||||
/// See also:
|
||||
///
|
||||
/// * [RendererBinding.initServiceExtensions], where the service extension is
|
||||
/// registered.
|
||||
debugDumpSemanticsTreeInInverseHitTestOrder,
|
||||
|
||||
/// Name of service extension that, when called, will toggle whether [Timeline]
|
||||
/// events are added for every [RenderObject] painted.
|
||||
///
|
||||
/// See also:
|
||||
///
|
||||
/// * [debugProfilePaintsEnabled], which is the flag that this service extension
|
||||
/// exposes.
|
||||
/// * [RendererBinding.initServiceExtensions], where the service extension is
|
||||
/// registered.
|
||||
profileRenderObjectPaints,
|
||||
|
||||
/// Name of service extension that, when called, will toggle whether [Timeline]
|
||||
/// events are added for every [RenderObject] laid out.
|
||||
///
|
||||
/// See also:
|
||||
///
|
||||
/// * [debugProfileLayoutsEnabled], which is the flag that this service
|
||||
/// extension exposes.
|
||||
/// * [RendererBinding.initServiceExtensions], where the service extension is
|
||||
/// registered.
|
||||
profileRenderObjectLayouts,
|
||||
}
|
||||
@ -219,7 +219,7 @@ void main() {
|
||||
|
||||
test('Service extensions - debugDumpRenderTree', () async {
|
||||
await binding.doFrame();
|
||||
final Map<String, dynamic> result = await binding.testExtension('debugDumpRenderTree', <String, String>{});
|
||||
final Map<String, dynamic> result = await binding.testExtension(RenderingServiceExtensions.debugDumpRenderTree.name, <String, String>{});
|
||||
|
||||
expect(result, <String, dynamic>{
|
||||
'data': matches(
|
||||
@ -236,7 +236,7 @@ void main() {
|
||||
|
||||
test('Service extensions - debugDumpLayerTree', () async {
|
||||
await binding.doFrame();
|
||||
final Map<String, dynamic> result = await binding.testExtension('debugDumpLayerTree', <String, String>{});
|
||||
final Map<String, dynamic> result = await binding.testExtension(RenderingServiceExtensions.debugDumpLayerTree.name, <String, String>{});
|
||||
|
||||
expect(result, <String, dynamic>{
|
||||
'data': matches(
|
||||
@ -259,7 +259,7 @@ void main() {
|
||||
|
||||
test('Service extensions - debugDumpSemanticsTreeInTraversalOrder', () async {
|
||||
await binding.doFrame();
|
||||
final Map<String, dynamic> result = await binding.testExtension('debugDumpSemanticsTreeInTraversalOrder', <String, String>{});
|
||||
final Map<String, dynamic> result = await binding.testExtension(RenderingServiceExtensions.debugDumpSemanticsTreeInTraversalOrder.name, <String, String>{});
|
||||
|
||||
expect(result, <String, String>{
|
||||
'data': 'Semantics not generated.\n'
|
||||
@ -271,7 +271,7 @@ void main() {
|
||||
|
||||
test('Service extensions - debugDumpSemanticsTreeInInverseHitTestOrder', () async {
|
||||
await binding.doFrame();
|
||||
final Map<String, dynamic> result = await binding.testExtension('debugDumpSemanticsTreeInInverseHitTestOrder', <String, String>{});
|
||||
final Map<String, dynamic> result = await binding.testExtension(RenderingServiceExtensions.debugDumpSemanticsTreeInInverseHitTestOrder.name, <String, String>{});
|
||||
|
||||
expect(result, <String, String>{
|
||||
'data': 'Semantics not generated.\n'
|
||||
@ -290,12 +290,12 @@ void main() {
|
||||
|
||||
expect(binding.frameScheduled, isFalse);
|
||||
expect(debugPaintSizeEnabled, false);
|
||||
result = await binding.testExtension('debugPaint', <String, String>{});
|
||||
result = await binding.testExtension(RenderingServiceExtensions.debugPaint.name, <String, String>{});
|
||||
expect(result, <String, String>{'enabled': 'false'});
|
||||
expect(debugPaintSizeEnabled, false);
|
||||
expect(extensionChangedEvents, isEmpty);
|
||||
expect(binding.frameScheduled, isFalse);
|
||||
pendingResult = binding.testExtension('debugPaint', <String, String>{'enabled': 'true'});
|
||||
pendingResult = binding.testExtension(RenderingServiceExtensions.debugPaint.name, <String, String>{'enabled': 'true'});
|
||||
completed = false;
|
||||
pendingResult.whenComplete(() { completed = true; });
|
||||
await binding.flushMicrotasks();
|
||||
@ -312,12 +312,12 @@ void main() {
|
||||
extensionChangedEvent = extensionChangedEvents.last;
|
||||
expect(extensionChangedEvent['extension'], 'ext.flutter.debugPaint');
|
||||
expect(extensionChangedEvent['value'], 'true');
|
||||
result = await binding.testExtension('debugPaint', <String, String>{});
|
||||
result = await binding.testExtension(RenderingServiceExtensions.debugPaint.name, <String, String>{});
|
||||
expect(result, <String, String>{'enabled': 'true'});
|
||||
expect(debugPaintSizeEnabled, true);
|
||||
expect(extensionChangedEvents.length, 1);
|
||||
expect(binding.frameScheduled, isFalse);
|
||||
pendingResult = binding.testExtension('debugPaint', <String, String>{'enabled': 'false'});
|
||||
pendingResult = binding.testExtension(RenderingServiceExtensions.debugPaint.name, <String, String>{'enabled': 'false'});
|
||||
await binding.flushMicrotasks();
|
||||
expect(binding.frameScheduled, isTrue);
|
||||
await binding.doFrame();
|
||||
@ -329,7 +329,7 @@ void main() {
|
||||
extensionChangedEvent = extensionChangedEvents.last;
|
||||
expect(extensionChangedEvent['extension'], 'ext.flutter.debugPaint');
|
||||
expect(extensionChangedEvent['value'], 'false');
|
||||
result = await binding.testExtension('debugPaint', <String, String>{});
|
||||
result = await binding.testExtension(RenderingServiceExtensions.debugPaint.name, <String, String>{});
|
||||
expect(result, <String, String>{'enabled': 'false'});
|
||||
expect(debugPaintSizeEnabled, false);
|
||||
expect(extensionChangedEvents.length, 2);
|
||||
@ -343,11 +343,11 @@ void main() {
|
||||
|
||||
expect(binding.frameScheduled, isFalse);
|
||||
expect(debugPaintBaselinesEnabled, false);
|
||||
result = await binding.testExtension('debugPaintBaselinesEnabled', <String, String>{});
|
||||
result = await binding.testExtension(RenderingServiceExtensions.debugPaintBaselinesEnabled.name, <String, String>{});
|
||||
expect(result, <String, String>{'enabled': 'false'});
|
||||
expect(debugPaintBaselinesEnabled, false);
|
||||
expect(binding.frameScheduled, isFalse);
|
||||
pendingResult = binding.testExtension('debugPaintBaselinesEnabled', <String, String>{'enabled': 'true'});
|
||||
pendingResult = binding.testExtension(RenderingServiceExtensions.debugPaintBaselinesEnabled.name, <String, String>{'enabled': 'true'});
|
||||
completed = false;
|
||||
pendingResult.whenComplete(() { completed = true; });
|
||||
await binding.flushMicrotasks();
|
||||
@ -360,11 +360,11 @@ void main() {
|
||||
result = await pendingResult;
|
||||
expect(result, <String, String>{'enabled': 'true'});
|
||||
expect(debugPaintBaselinesEnabled, true);
|
||||
result = await binding.testExtension('debugPaintBaselinesEnabled', <String, String>{});
|
||||
result = await binding.testExtension(RenderingServiceExtensions.debugPaintBaselinesEnabled.name, <String, String>{});
|
||||
expect(result, <String, String>{'enabled': 'true'});
|
||||
expect(debugPaintBaselinesEnabled, true);
|
||||
expect(binding.frameScheduled, isFalse);
|
||||
pendingResult = binding.testExtension('debugPaintBaselinesEnabled', <String, String>{'enabled': 'false'});
|
||||
pendingResult = binding.testExtension(RenderingServiceExtensions.debugPaintBaselinesEnabled.name, <String, String>{'enabled': 'false'});
|
||||
await binding.flushMicrotasks();
|
||||
expect(binding.frameScheduled, isTrue);
|
||||
await binding.doFrame();
|
||||
@ -372,7 +372,7 @@ void main() {
|
||||
result = await pendingResult;
|
||||
expect(result, <String, String>{'enabled': 'false'});
|
||||
expect(debugPaintBaselinesEnabled, false);
|
||||
result = await binding.testExtension('debugPaintBaselinesEnabled', <String, String>{});
|
||||
result = await binding.testExtension(RenderingServiceExtensions.debugPaintBaselinesEnabled.name, <String, String>{});
|
||||
expect(result, <String, String>{'enabled': 'false'});
|
||||
expect(debugPaintBaselinesEnabled, false);
|
||||
expect(binding.frameScheduled, isFalse);
|
||||
@ -385,12 +385,12 @@ void main() {
|
||||
|
||||
expect(binding.frameScheduled, isFalse);
|
||||
expect(debugInvertOversizedImages, false);
|
||||
result = await binding.testExtension('invertOversizedImages', <String, String>{});
|
||||
result = await binding.testExtension(RenderingServiceExtensions.invertOversizedImages.name, <String, String>{});
|
||||
expect(result, <String, String>{'enabled': 'false'});
|
||||
expect(debugInvertOversizedImages, false);
|
||||
expect(binding.frameScheduled, isFalse);
|
||||
|
||||
pendingResult = binding.testExtension('invertOversizedImages', <String, String>{'enabled': 'true'});
|
||||
pendingResult = binding.testExtension(RenderingServiceExtensions.invertOversizedImages.name, <String, String>{'enabled': 'true'});
|
||||
completed = false;
|
||||
pendingResult.whenComplete(() { completed = true; });
|
||||
await binding.flushMicrotasks();
|
||||
@ -404,12 +404,12 @@ void main() {
|
||||
expect(result, <String, String>{'enabled': 'true'});
|
||||
expect(debugInvertOversizedImages, true);
|
||||
|
||||
result = await binding.testExtension('invertOversizedImages', <String, String>{});
|
||||
result = await binding.testExtension(RenderingServiceExtensions.invertOversizedImages.name, <String, String>{});
|
||||
expect(result, <String, String>{'enabled': 'true'});
|
||||
expect(debugInvertOversizedImages, true);
|
||||
expect(binding.frameScheduled, isFalse);
|
||||
|
||||
pendingResult = binding.testExtension('invertOversizedImages', <String, String>{'enabled': 'false'});
|
||||
pendingResult = binding.testExtension(RenderingServiceExtensions.invertOversizedImages.name, <String, String>{'enabled': 'false'});
|
||||
await binding.flushMicrotasks();
|
||||
expect(binding.frameScheduled, isTrue);
|
||||
await binding.doFrame();
|
||||
@ -418,7 +418,7 @@ void main() {
|
||||
expect(result, <String, String>{'enabled': 'false'});
|
||||
expect(debugInvertOversizedImages, false);
|
||||
|
||||
result = await binding.testExtension('invertOversizedImages', <String, String>{});
|
||||
result = await binding.testExtension(RenderingServiceExtensions.invertOversizedImages.name, <String, String>{});
|
||||
expect(result, <String, String>{'enabled': 'false'});
|
||||
expect(debugInvertOversizedImages, false);
|
||||
expect(binding.frameScheduled, isFalse);
|
||||
@ -488,23 +488,23 @@ void main() {
|
||||
expect(binding.frameScheduled, isFalse);
|
||||
expect(debugProfileBuildsEnabled, false);
|
||||
|
||||
result = await binding.testExtension('profileRenderObjectPaints', <String, String>{});
|
||||
result = await binding.testExtension(RenderingServiceExtensions.profileRenderObjectPaints.name, <String, String>{});
|
||||
expect(result, <String, String>{'enabled': 'false'});
|
||||
expect(debugProfilePaintsEnabled, false);
|
||||
|
||||
result = await binding.testExtension('profileRenderObjectPaints', <String, String>{'enabled': 'true'});
|
||||
result = await binding.testExtension(RenderingServiceExtensions.profileRenderObjectPaints.name, <String, String>{'enabled': 'true'});
|
||||
expect(result, <String, String>{'enabled': 'true'});
|
||||
expect(debugProfilePaintsEnabled, true);
|
||||
|
||||
result = await binding.testExtension('profileRenderObjectPaints', <String, String>{});
|
||||
result = await binding.testExtension(RenderingServiceExtensions.profileRenderObjectPaints.name, <String, String>{});
|
||||
expect(result, <String, String>{'enabled': 'true'});
|
||||
expect(debugProfilePaintsEnabled, true);
|
||||
|
||||
result = await binding.testExtension('profileRenderObjectPaints', <String, String>{'enabled': 'false'});
|
||||
result = await binding.testExtension(RenderingServiceExtensions.profileRenderObjectPaints.name, <String, String>{'enabled': 'false'});
|
||||
expect(result, <String, String>{'enabled': 'false'});
|
||||
expect(debugProfilePaintsEnabled, false);
|
||||
|
||||
result = await binding.testExtension('profileRenderObjectPaints', <String, String>{});
|
||||
result = await binding.testExtension(RenderingServiceExtensions.profileRenderObjectPaints.name, <String, String>{});
|
||||
expect(result, <String, String>{'enabled': 'false'});
|
||||
expect(debugProfilePaintsEnabled, false);
|
||||
|
||||
@ -517,23 +517,23 @@ void main() {
|
||||
expect(binding.frameScheduled, isFalse);
|
||||
expect(debugProfileLayoutsEnabled, false);
|
||||
|
||||
result = await binding.testExtension('profileRenderObjectLayouts', <String, String>{});
|
||||
result = await binding.testExtension(RenderingServiceExtensions.profileRenderObjectLayouts.name, <String, String>{});
|
||||
expect(result, <String, String>{'enabled': 'false'});
|
||||
expect(debugProfileLayoutsEnabled, false);
|
||||
|
||||
result = await binding.testExtension('profileRenderObjectLayouts', <String, String>{'enabled': 'true'});
|
||||
result = await binding.testExtension(RenderingServiceExtensions.profileRenderObjectLayouts.name, <String, String>{'enabled': 'true'});
|
||||
expect(result, <String, String>{'enabled': 'true'});
|
||||
expect(debugProfileLayoutsEnabled, true);
|
||||
|
||||
result = await binding.testExtension('profileRenderObjectLayouts', <String, String>{});
|
||||
result = await binding.testExtension(RenderingServiceExtensions.profileRenderObjectLayouts.name, <String, String>{});
|
||||
expect(result, <String, String>{'enabled': 'true'});
|
||||
expect(debugProfileLayoutsEnabled, true);
|
||||
|
||||
result = await binding.testExtension('profileRenderObjectLayouts', <String, String>{'enabled': 'false'});
|
||||
result = await binding.testExtension(RenderingServiceExtensions.profileRenderObjectLayouts.name, <String, String>{'enabled': 'false'});
|
||||
expect(result, <String, String>{'enabled': 'false'});
|
||||
expect(debugProfileLayoutsEnabled, false);
|
||||
|
||||
result = await binding.testExtension('profileRenderObjectLayouts', <String, String>{});
|
||||
result = await binding.testExtension(RenderingServiceExtensions.profileRenderObjectLayouts.name, <String, String>{});
|
||||
expect(result, <String, String>{'enabled': 'false'});
|
||||
expect(debugProfileLayoutsEnabled, false);
|
||||
|
||||
@ -674,11 +674,11 @@ void main() {
|
||||
|
||||
expect(binding.frameScheduled, isFalse);
|
||||
expect(debugRepaintRainbowEnabled, false);
|
||||
result = await binding.testExtension('repaintRainbow', <String, String>{});
|
||||
result = await binding.testExtension(RenderingServiceExtensions.repaintRainbow.name, <String, String>{});
|
||||
expect(result, <String, String>{'enabled': 'false'});
|
||||
expect(debugRepaintRainbowEnabled, false);
|
||||
expect(binding.frameScheduled, isFalse);
|
||||
pendingResult = binding.testExtension('repaintRainbow', <String, String>{'enabled': 'true'});
|
||||
pendingResult = binding.testExtension(RenderingServiceExtensions.repaintRainbow.name, <String, String>{'enabled': 'true'});
|
||||
completed = false;
|
||||
pendingResult.whenComplete(() { completed = true; });
|
||||
await binding.flushMicrotasks();
|
||||
@ -687,11 +687,11 @@ void main() {
|
||||
result = await pendingResult;
|
||||
expect(result, <String, String>{'enabled': 'true'});
|
||||
expect(debugRepaintRainbowEnabled, true);
|
||||
result = await binding.testExtension('repaintRainbow', <String, String>{});
|
||||
result = await binding.testExtension(RenderingServiceExtensions.repaintRainbow.name, <String, String>{});
|
||||
expect(result, <String, String>{'enabled': 'true'});
|
||||
expect(debugRepaintRainbowEnabled, true);
|
||||
expect(binding.frameScheduled, isFalse);
|
||||
pendingResult = binding.testExtension('repaintRainbow', <String, String>{'enabled': 'false'});
|
||||
pendingResult = binding.testExtension(RenderingServiceExtensions.repaintRainbow.name, <String, String>{'enabled': 'false'});
|
||||
completed = false;
|
||||
pendingResult.whenComplete(() { completed = true; });
|
||||
await binding.flushMicrotasks();
|
||||
@ -704,7 +704,7 @@ void main() {
|
||||
result = await pendingResult;
|
||||
expect(result, <String, String>{'enabled': 'false'});
|
||||
expect(debugRepaintRainbowEnabled, false);
|
||||
result = await binding.testExtension('repaintRainbow', <String, String>{});
|
||||
result = await binding.testExtension(RenderingServiceExtensions.repaintRainbow.name, <String, String>{});
|
||||
expect(result, <String, String>{'enabled': 'false'});
|
||||
expect(debugRepaintRainbowEnabled, false);
|
||||
expect(binding.frameScheduled, isFalse);
|
||||
@ -717,11 +717,11 @@ void main() {
|
||||
|
||||
expect(binding.frameScheduled, isFalse);
|
||||
expect(debugDisableClipLayers, false);
|
||||
result = await binding.testExtension('debugDisableClipLayers', <String, String>{});
|
||||
result = await binding.testExtension(RenderingServiceExtensions.debugDisableClipLayers.name, <String, String>{});
|
||||
expect(result, <String, String>{'enabled': 'false'});
|
||||
expect(debugDisableClipLayers, false);
|
||||
expect(binding.frameScheduled, isFalse);
|
||||
pendingResult = binding.testExtension('debugDisableClipLayers', <String, String>{'enabled': 'true'});
|
||||
pendingResult = binding.testExtension(RenderingServiceExtensions.debugDisableClipLayers.name, <String, String>{'enabled': 'true'});
|
||||
completed = false;
|
||||
pendingResult.whenComplete(() { completed = true; });
|
||||
await binding.flushMicrotasks();
|
||||
@ -734,11 +734,11 @@ void main() {
|
||||
result = await pendingResult;
|
||||
expect(result, <String, String>{'enabled': 'true'});
|
||||
expect(debugDisableClipLayers, true);
|
||||
result = await binding.testExtension('debugDisableClipLayers', <String, String>{});
|
||||
result = await binding.testExtension(RenderingServiceExtensions.debugDisableClipLayers.name, <String, String>{});
|
||||
expect(result, <String, String>{'enabled': 'true'});
|
||||
expect(debugDisableClipLayers, true);
|
||||
expect(binding.frameScheduled, isFalse);
|
||||
pendingResult = binding.testExtension('debugDisableClipLayers', <String, String>{'enabled': 'false'});
|
||||
pendingResult = binding.testExtension(RenderingServiceExtensions.debugDisableClipLayers.name, <String, String>{'enabled': 'false'});
|
||||
await binding.flushMicrotasks();
|
||||
expect(binding.frameScheduled, isTrue);
|
||||
await binding.doFrame();
|
||||
@ -746,7 +746,7 @@ void main() {
|
||||
result = await pendingResult;
|
||||
expect(result, <String, String>{'enabled': 'false'});
|
||||
expect(debugDisableClipLayers, false);
|
||||
result = await binding.testExtension('debugDisableClipLayers', <String, String>{});
|
||||
result = await binding.testExtension(RenderingServiceExtensions.debugDisableClipLayers.name, <String, String>{});
|
||||
expect(result, <String, String>{'enabled': 'false'});
|
||||
expect(debugDisableClipLayers, false);
|
||||
expect(binding.frameScheduled, isFalse);
|
||||
@ -759,11 +759,11 @@ void main() {
|
||||
|
||||
expect(binding.frameScheduled, isFalse);
|
||||
expect(debugDisablePhysicalShapeLayers, false);
|
||||
result = await binding.testExtension('debugDisablePhysicalShapeLayers', <String, String>{});
|
||||
result = await binding.testExtension(RenderingServiceExtensions.debugDisablePhysicalShapeLayers.name, <String, String>{});
|
||||
expect(result, <String, String>{'enabled': 'false'});
|
||||
expect(debugDisablePhysicalShapeLayers, false);
|
||||
expect(binding.frameScheduled, isFalse);
|
||||
pendingResult = binding.testExtension('debugDisablePhysicalShapeLayers', <String, String>{'enabled': 'true'});
|
||||
pendingResult = binding.testExtension(RenderingServiceExtensions.debugDisablePhysicalShapeLayers.name, <String, String>{'enabled': 'true'});
|
||||
completed = false;
|
||||
pendingResult.whenComplete(() { completed = true; });
|
||||
await binding.flushMicrotasks();
|
||||
@ -776,11 +776,11 @@ void main() {
|
||||
result = await pendingResult;
|
||||
expect(result, <String, String>{'enabled': 'true'});
|
||||
expect(debugDisablePhysicalShapeLayers, true);
|
||||
result = await binding.testExtension('debugDisablePhysicalShapeLayers', <String, String>{});
|
||||
result = await binding.testExtension(RenderingServiceExtensions.debugDisablePhysicalShapeLayers.name, <String, String>{});
|
||||
expect(result, <String, String>{'enabled': 'true'});
|
||||
expect(debugDisablePhysicalShapeLayers, true);
|
||||
expect(binding.frameScheduled, isFalse);
|
||||
pendingResult = binding.testExtension('debugDisablePhysicalShapeLayers', <String, String>{'enabled': 'false'});
|
||||
pendingResult = binding.testExtension(RenderingServiceExtensions.debugDisablePhysicalShapeLayers.name, <String, String>{'enabled': 'false'});
|
||||
await binding.flushMicrotasks();
|
||||
expect(binding.frameScheduled, isTrue);
|
||||
await binding.doFrame();
|
||||
@ -788,7 +788,7 @@ void main() {
|
||||
result = await pendingResult;
|
||||
expect(result, <String, String>{'enabled': 'false'});
|
||||
expect(debugDisablePhysicalShapeLayers, false);
|
||||
result = await binding.testExtension('debugDisablePhysicalShapeLayers', <String, String>{});
|
||||
result = await binding.testExtension(RenderingServiceExtensions.debugDisablePhysicalShapeLayers.name, <String, String>{});
|
||||
expect(result, <String, String>{'enabled': 'false'});
|
||||
expect(debugDisablePhysicalShapeLayers, false);
|
||||
expect(binding.frameScheduled, isFalse);
|
||||
@ -801,11 +801,11 @@ void main() {
|
||||
|
||||
expect(binding.frameScheduled, isFalse);
|
||||
expect(debugDisableOpacityLayers, false);
|
||||
result = await binding.testExtension('debugDisableOpacityLayers', <String, String>{});
|
||||
result = await binding.testExtension(RenderingServiceExtensions.debugDisableOpacityLayers.name, <String, String>{});
|
||||
expect(result, <String, String>{'enabled': 'false'});
|
||||
expect(debugDisableOpacityLayers, false);
|
||||
expect(binding.frameScheduled, isFalse);
|
||||
pendingResult = binding.testExtension('debugDisableOpacityLayers', <String, String>{'enabled': 'true'});
|
||||
pendingResult = binding.testExtension(RenderingServiceExtensions.debugDisableOpacityLayers.name, <String, String>{'enabled': 'true'});
|
||||
completed = false;
|
||||
pendingResult.whenComplete(() { completed = true; });
|
||||
await binding.flushMicrotasks();
|
||||
@ -818,11 +818,11 @@ void main() {
|
||||
result = await pendingResult;
|
||||
expect(result, <String, String>{'enabled': 'true'});
|
||||
expect(debugDisableOpacityLayers, true);
|
||||
result = await binding.testExtension('debugDisableOpacityLayers', <String, String>{});
|
||||
result = await binding.testExtension(RenderingServiceExtensions.debugDisableOpacityLayers.name, <String, String>{});
|
||||
expect(result, <String, String>{'enabled': 'true'});
|
||||
expect(debugDisableOpacityLayers, true);
|
||||
expect(binding.frameScheduled, isFalse);
|
||||
pendingResult = binding.testExtension('debugDisableOpacityLayers', <String, String>{'enabled': 'false'});
|
||||
pendingResult = binding.testExtension(RenderingServiceExtensions.debugDisableOpacityLayers.name, <String, String>{'enabled': 'false'});
|
||||
await binding.flushMicrotasks();
|
||||
expect(binding.frameScheduled, isTrue);
|
||||
await binding.doFrame();
|
||||
@ -830,7 +830,7 @@ void main() {
|
||||
result = await pendingResult;
|
||||
expect(result, <String, String>{'enabled': 'false'});
|
||||
expect(debugDisableOpacityLayers, false);
|
||||
result = await binding.testExtension('debugDisableOpacityLayers', <String, String>{});
|
||||
result = await binding.testExtension(RenderingServiceExtensions.debugDisableOpacityLayers.name, <String, String>{});
|
||||
expect(result, <String, String>{'enabled': 'false'});
|
||||
expect(debugDisableOpacityLayers, false);
|
||||
expect(binding.frameScheduled, isFalse);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user