Commit a367dcb0 authored by Gary Qian's avatar Gary Qian Committed by GitHub

Add flags to pass '--enable-software-rendering' flag to engine in run command (#10449)

parent e3bab988
...@@ -397,6 +397,8 @@ class AndroidDevice extends Device { ...@@ -397,6 +397,8 @@ class AndroidDevice extends Device {
cmd.addAll(<String>['--ez', 'trace-startup', 'true']); cmd.addAll(<String>['--ez', 'trace-startup', 'true']);
if (route != null) if (route != null)
cmd.addAll(<String>['--es', 'route', route]); cmd.addAll(<String>['--es', 'route', route]);
if (debuggingOptions.enableSoftwareRendering)
cmd.addAll(<String>['--ez', 'enable-software-rendering', 'true']);
if (debuggingOptions.debuggingEnabled) { if (debuggingOptions.debuggingEnabled) {
if (debuggingOptions.buildMode == BuildMode.debug) if (debuggingOptions.buildMode == BuildMode.debug)
cmd.addAll(<String>['--ez', 'enable-checked-mode', 'true']); cmd.addAll(<String>['--ez', 'enable-checked-mode', 'true']);
......
...@@ -88,6 +88,13 @@ class RunCommand extends RunCommandBase { ...@@ -88,6 +88,13 @@ class RunCommand extends RunCommandBase {
defaultsTo: false, defaultsTo: false,
negatable: false, negatable: false,
help: 'Start in a paused mode and wait for a debugger to connect.'); help: 'Start in a paused mode and wait for a debugger to connect.');
argParser.addFlag('enable-software-rendering',
defaultsTo: false,
negatable: false,
help: 'Enable rendering using the Skia software backend. This is useful\n'
'when testing Flutter on emulators. By default, Flutter will\n'
'attempt to either use OpenGL or Vulkan and fall back to software\n'
'when neither is available.');
argParser.addFlag('use-test-fonts', argParser.addFlag('use-test-fonts',
negatable: true, negatable: true,
defaultsTo: false, defaultsTo: false,
...@@ -218,6 +225,7 @@ class RunCommand extends RunCommandBase { ...@@ -218,6 +225,7 @@ class RunCommand extends RunCommandBase {
getBuildMode(), getBuildMode(),
startPaused: argResults['start-paused'], startPaused: argResults['start-paused'],
useTestFonts: argResults['use-test-fonts'], useTestFonts: argResults['use-test-fonts'],
enableSoftwareRendering: argResults['enable-software-rendering'],
observatoryPort: observatoryPort, observatoryPort: observatoryPort,
diagnosticPort: diagnosticPort, diagnosticPort: diagnosticPort,
); );
......
...@@ -299,6 +299,7 @@ abstract class Device { ...@@ -299,6 +299,7 @@ abstract class Device {
class DebuggingOptions { class DebuggingOptions {
DebuggingOptions.enabled(this.buildMode, { DebuggingOptions.enabled(this.buildMode, {
this.startPaused: false, this.startPaused: false,
this.enableSoftwareRendering: false,
this.useTestFonts: false, this.useTestFonts: false,
this.observatoryPort, this.observatoryPort,
this.diagnosticPort this.diagnosticPort
...@@ -308,6 +309,7 @@ class DebuggingOptions { ...@@ -308,6 +309,7 @@ class DebuggingOptions {
debuggingEnabled = false, debuggingEnabled = false,
useTestFonts = false, useTestFonts = false,
startPaused = false, startPaused = false,
enableSoftwareRendering = false,
observatoryPort = null, observatoryPort = null,
diagnosticPort = null; diagnosticPort = null;
...@@ -315,6 +317,7 @@ class DebuggingOptions { ...@@ -315,6 +317,7 @@ class DebuggingOptions {
final BuildMode buildMode; final BuildMode buildMode;
final bool startPaused; final bool startPaused;
final bool enableSoftwareRendering;
final bool useTestFonts; final bool useTestFonts;
final int observatoryPort; final int observatoryPort;
final int diagnosticPort; final int diagnosticPort;
......
...@@ -242,6 +242,9 @@ class IOSDevice extends Device { ...@@ -242,6 +242,9 @@ class IOSDevice extends Device {
// the port picked and scrape that later. // the port picked and scrape that later.
} }
if (debuggingOptions.enableSoftwareRendering)
launchArguments.add('--enable-software-rendering');
if (platformArgs['trace-startup'] ?? false) if (platformArgs['trace-startup'] ?? false)
launchArguments.add('--trace-startup'); launchArguments.add('--trace-startup');
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment