[ Widget Previews ] Default to using Flutter Web for the widget preview environment (#166091)
Desktop support is now behind `--desktop` as an escape hatch for now, but will eventually be removed.
This commit is contained in:
parent
d30c767656
commit
943dd30bfd
@ -129,8 +129,8 @@ final class WidgetPreviewStartCommand extends WidgetPreviewSubCommandBase with C
|
|||||||
hide: !verboseHelp,
|
hide: !verboseHelp,
|
||||||
)
|
)
|
||||||
..addFlag(
|
..addFlag(
|
||||||
kUseFlutterWeb,
|
kUseFlutterDesktop,
|
||||||
help: 'Launches the widget preview environment using Flutter Web.',
|
help: '(deprecated) Launches the widget preview environment using Flutter Desktop.',
|
||||||
hide: !verboseHelp,
|
hide: !verboseHelp,
|
||||||
)
|
)
|
||||||
..addFlag(
|
..addFlag(
|
||||||
@ -142,7 +142,7 @@ final class WidgetPreviewStartCommand extends WidgetPreviewSubCommandBase with C
|
|||||||
|
|
||||||
static const String kWidgetPreviewScaffoldName = 'widget_preview_scaffold';
|
static const String kWidgetPreviewScaffoldName = 'widget_preview_scaffold';
|
||||||
static const String kLaunchPreviewer = 'launch-previewer';
|
static const String kLaunchPreviewer = 'launch-previewer';
|
||||||
static const String kUseFlutterWeb = 'web';
|
static const String kUseFlutterDesktop = 'desktop';
|
||||||
static const String kHeadlessWeb = 'headless-web';
|
static const String kHeadlessWeb = 'headless-web';
|
||||||
|
|
||||||
@override
|
@override
|
||||||
@ -159,7 +159,7 @@ final class WidgetPreviewStartCommand extends WidgetPreviewSubCommandBase with C
|
|||||||
|
|
||||||
final bool verboseHelp;
|
final bool verboseHelp;
|
||||||
|
|
||||||
bool get isWeb => boolArg(kUseFlutterWeb);
|
bool get isWeb => !boolArg(kUseFlutterDesktop);
|
||||||
|
|
||||||
@override
|
@override
|
||||||
final FileSystem fs;
|
final FileSystem fs;
|
||||||
@ -428,6 +428,9 @@ final class WidgetPreviewStartCommand extends WidgetPreviewSubCommandBase with C
|
|||||||
const String? kEmptyRoute = null;
|
const String? kEmptyRoute = null;
|
||||||
const bool kEnableHotReload = true;
|
const bool kEnableHotReload = true;
|
||||||
|
|
||||||
|
// WARNING: this log message is used by test/integration.shard/widget_preview_test.dart
|
||||||
|
logger.printStatus('Launching the Widget Preview Scaffold...');
|
||||||
|
|
||||||
app = await Daemon.createMachineDaemon().appDomain.startApp(
|
app = await Daemon.createMachineDaemon().appDomain.startApp(
|
||||||
device,
|
device,
|
||||||
widgetPreviewScaffoldProject.directory.path,
|
widgetPreviewScaffoldProject.directory.path,
|
||||||
@ -446,7 +449,7 @@ final class WidgetPreviewStartCommand extends WidgetPreviewSubCommandBase with C
|
|||||||
widgetPreviewScaffoldProject.packageConfig.uri,
|
widgetPreviewScaffoldProject.packageConfig.uri,
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
webEnableExposeUrl: false, // TODO(bkonyi): verify
|
webEnableExposeUrl: false,
|
||||||
webRunHeadless: boolArg(kHeadlessWeb),
|
webRunHeadless: boolArg(kHeadlessWeb),
|
||||||
),
|
),
|
||||||
kEnableHotReload, // hot mode
|
kEnableHotReload, // hot mode
|
||||||
@ -457,11 +460,14 @@ final class WidgetPreviewStartCommand extends WidgetPreviewSubCommandBase with C
|
|||||||
} on Exception catch (error) {
|
} on Exception catch (error) {
|
||||||
throwToolExit(error.toString());
|
throwToolExit(error.toString());
|
||||||
}
|
}
|
||||||
// Immediately perform a hot restart to ensure new previews are loaded into the prebuilt
|
|
||||||
// application.
|
if (!isWeb) {
|
||||||
// WARNING: this log message is used by test/integration.shard/widget_preview_test.dart
|
// Immediately perform a hot restart to ensure new previews are loaded into the prebuilt
|
||||||
logger.printStatus('Loading previews into the Widget Preview Scaffold...');
|
// application.
|
||||||
await app.restart(fullRestart: true);
|
// WARNING: this log message is used by test/integration.shard/widget_preview_test.dart
|
||||||
|
logger.printStatus('Loading previews into the Widget Preview Scaffold...');
|
||||||
|
await app.restart(fullRestart: true);
|
||||||
|
}
|
||||||
// WARNING: this log message is used by test/integration.shard/widget_preview_test.dart
|
// WARNING: this log message is used by test/integration.shard/widget_preview_test.dart
|
||||||
logger.printStatus('Done loading previews.');
|
logger.printStatus('Done loading previews.');
|
||||||
return app;
|
return app;
|
||||||
|
@ -18,18 +18,25 @@ const List<String> firstLaunchMessages = <String>[
|
|||||||
'Creating widget preview scaffolding at:',
|
'Creating widget preview scaffolding at:',
|
||||||
'Performing initial build of the Widget Preview Scaffold...',
|
'Performing initial build of the Widget Preview Scaffold...',
|
||||||
'Widget Preview Scaffold initial build complete.',
|
'Widget Preview Scaffold initial build complete.',
|
||||||
|
'Launching the Widget Preview Scaffold...',
|
||||||
'Loading previews into the Widget Preview Scaffold...',
|
'Loading previews into the Widget Preview Scaffold...',
|
||||||
'Done loading previews.',
|
'Done loading previews.',
|
||||||
];
|
];
|
||||||
|
|
||||||
const List<String> subsequentLaunchMessages = <String>[
|
const List<String> subsequentLaunchMessages = <String>[
|
||||||
|
'Launching the Widget Preview Scaffold...',
|
||||||
'Loading previews into the Widget Preview Scaffold...',
|
'Loading previews into the Widget Preview Scaffold...',
|
||||||
'Done loading previews.',
|
'Done loading previews.',
|
||||||
];
|
];
|
||||||
|
|
||||||
const List<String> firstLaunchMessagesWeb = <String>[
|
const List<String> firstLaunchMessagesWeb = <String>[
|
||||||
'Creating widget preview scaffolding at:',
|
'Creating widget preview scaffolding at:',
|
||||||
'Loading previews into the Widget Preview Scaffold...',
|
'Launching the Widget Preview Scaffold...',
|
||||||
|
'Done loading previews.',
|
||||||
|
];
|
||||||
|
|
||||||
|
const List<String> subsequentLaunchMessagesWeb = <String>[
|
||||||
|
'Launching the Widget Preview Scaffold...',
|
||||||
'Done loading previews.',
|
'Done loading previews.',
|
||||||
];
|
];
|
||||||
|
|
||||||
@ -61,10 +68,10 @@ void main() {
|
|||||||
'widget-preview',
|
'widget-preview',
|
||||||
'start',
|
'start',
|
||||||
'--verbose',
|
'--verbose',
|
||||||
if (useWeb) ...<String>[
|
if (useWeb)
|
||||||
'--${WidgetPreviewStartCommand.kUseFlutterWeb}',
|
'--${WidgetPreviewStartCommand.kHeadlessWeb}'
|
||||||
'--${WidgetPreviewStartCommand.kHeadlessWeb}',
|
else
|
||||||
],
|
'--${WidgetPreviewStartCommand.kUseFlutterDesktop}',
|
||||||
], workingDirectory: tempDir.path);
|
], workingDirectory: tempDir.path);
|
||||||
|
|
||||||
final Completer<void> completer = Completer<void>();
|
final Completer<void> completer = Completer<void>();
|
||||||
@ -123,7 +130,7 @@ void main() {
|
|||||||
await runWidgetPreview(expectedMessages: firstLaunchMessagesWeb, useWeb: true);
|
await runWidgetPreview(expectedMessages: firstLaunchMessagesWeb, useWeb: true);
|
||||||
|
|
||||||
// We shouldn't regenerate the scaffold after the initial run.
|
// We shouldn't regenerate the scaffold after the initial run.
|
||||||
await runWidgetPreview(expectedMessages: subsequentLaunchMessages, useWeb: true);
|
await runWidgetPreview(expectedMessages: subsequentLaunchMessagesWeb, useWeb: true);
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user