Reland: use flutter features for web and desktop (#36699)


diff --git a/packages/flutter_tools/lib/src/project.dart b/packages/flutter_tools/lib/src/project.dart
index 0a1b5b8..95b526e 100644
--- a/packages/flutter_tools/lib/src/project.dart
+++ b/packages/flutter_tools/lib/src/project.dart
@@ -14,7 +14,7 @@
 import 'build_info.dart';
 import 'bundle.dart' as bundle;
 import 'cache.dart';
-import 'desktop.dart';
+import 'features.dart';
 import 'flutter_manifest.dart';
 import 'globals.dart';
 import 'ios/ios_workflow.dart';
@@ -22,7 +22,6 @@
 import 'ios/xcodeproj.dart' as xcode;
 import 'plugins.dart';
 import 'template.dart';
-import 'web/workflow.dart';
 
 FlutterProjectFactory get projectFactory => context.get<FlutterProjectFactory>() ?? const FlutterProjectFactory();
 
@@ -206,10 +205,10 @@
     }
     // TODO(stuartmorgan): Add checkProjects logic once a create workflow exists
     // for macOS. For now, always treat checkProjects as true for macOS.
-    if (flutterDesktopEnabled && macos.existsSync()) {
+    if (featureFlags.isMacOSEnabled && macos.existsSync()) {
       await macos.ensureReadyForPlatformSpecificTooling();
     }
-    if (flutterWebEnabled && web.existsSync()) {
+    if (featureFlags.isWebEnabled && web.existsSync()) {
       await web.ensureReadyForPlatformSpecificTooling();
     }
     await injectPlugins(this, checkProjects: checkProjects);