Skip to content

Commit 21c514f

Browse files
authored
Wire up support for --skia-deterministic-rendering (flutter#14802)
flutter#14519
1 parent 50b7fad commit 21c514f

File tree

6 files changed

+16
-1
lines changed

6 files changed

+16
-1
lines changed

bin/internal/engine.version

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
585610456326bc455ffeb257f6d33d476b4ee3fc
1+
ead227f118077d1f2b57842a32abaf105b573b8a

packages/flutter_tools/lib/src/android/android_device.dart

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -420,6 +420,8 @@ class AndroidDevice extends Device {
420420
cmd.addAll(<String>['--es', 'route', route]);
421421
if (debuggingOptions.enableSoftwareRendering)
422422
cmd.addAll(<String>['--ez', 'enable-software-rendering', 'true']);
423+
if (debuggingOptions.skiaDeterministicRendering)
424+
cmd.addAll(<String>['--ez', 'skia-deterministic-rendering', 'true']);
423425
if (debuggingOptions.traceSkia)
424426
cmd.addAll(<String>['--ez', 'trace-skia', 'true']);
425427
if (debuggingOptions.debuggingEnabled) {

packages/flutter_tools/lib/src/commands/run.dart

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,10 @@ class RunCommand extends RunCommandBase {
9090
'when testing Flutter on emulators. By default, Flutter will\n'
9191
'attempt to either use OpenGL or Vulkan and fall back to software\n'
9292
'when neither is available.');
93+
argParser.addFlag('skia-deterministic-rendering',
94+
negatable: false,
95+
help: 'When combined with --enable-software-rendering, provides 100%\n'
96+
'deterministic Skia rendering.');
9397
argParser.addFlag('trace-skia',
9498
negatable: false,
9599
help: 'Enable tracing of Skia code. This is useful when debugging\n'
@@ -229,6 +233,7 @@ class RunCommand extends RunCommandBase {
229233
startPaused: argResults['start-paused'],
230234
useTestFonts: argResults['use-test-fonts'],
231235
enableSoftwareRendering: argResults['enable-software-rendering'],
236+
skiaDeterministicRendering: argResults['skia-deterministic-rendering'],
232237
traceSkia: argResults['trace-skia'],
233238
observatoryPort: observatoryPort,
234239
);

packages/flutter_tools/lib/src/device.dart

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -320,6 +320,7 @@ class DebuggingOptions {
320320
DebuggingOptions.enabled(this.buildInfo, {
321321
this.startPaused: false,
322322
this.enableSoftwareRendering: false,
323+
this.skiaDeterministicRendering: false,
323324
this.traceSkia: false,
324325
this.useTestFonts: false,
325326
this.observatoryPort,
@@ -330,6 +331,7 @@ class DebuggingOptions {
330331
useTestFonts = false,
331332
startPaused = false,
332333
enableSoftwareRendering = false,
334+
skiaDeterministicRendering = false,
333335
traceSkia = false,
334336
observatoryPort = null;
335337

@@ -338,6 +340,7 @@ class DebuggingOptions {
338340
final BuildInfo buildInfo;
339341
final bool startPaused;
340342
final bool enableSoftwareRendering;
343+
final bool skiaDeterministicRendering;
341344
final bool traceSkia;
342345
final bool useTestFonts;
343346
final int observatoryPort;

packages/flutter_tools/lib/src/ios/devices.dart

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -210,6 +210,9 @@ class IOSDevice extends Device {
210210
if (debuggingOptions.enableSoftwareRendering)
211211
launchArguments.add('--enable-software-rendering');
212212

213+
if (debuggingOptions.skiaDeterministicRendering)
214+
launchArguments.add('--skia-deterministic-rendering');
215+
213216
if (debuggingOptions.traceSkia)
214217
launchArguments.add('--trace-skia');
215218

packages/flutter_tools/lib/src/ios/simulators.dart

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -332,6 +332,8 @@ class IOSSimulator extends Device {
332332
args.add('--enable-checked-mode');
333333
if (debuggingOptions.startPaused)
334334
args.add('--start-paused');
335+
if (debuggingOptions.skiaDeterministicRendering)
336+
args.add('--skia-deterministic-rendering');
335337
if (debuggingOptions.useTestFonts)
336338
args.add('--use-test-fonts');
337339

0 commit comments

Comments
 (0)