diff --git a/experimental/material_3_demo/lib/color_palettes_screen.dart b/experimental/material_3_demo/lib/color_palettes_screen.dart index 52918075c..b90baf0e3 100644 --- a/experimental/material_3_demo/lib/color_palettes_screen.dart +++ b/experimental/material_3_demo/lib/color_palettes_screen.dart @@ -45,6 +45,7 @@ class ColorPalettesScreen extends StatelessWidget { return Padding( padding: const EdgeInsets.symmetric(horizontal: 15), child: ColorSchemeView( + small: false, handleColorRoleChange: handleColorRoleChange, colorScheme: brightness == Brightness.light ? lightColorScheme @@ -141,11 +142,13 @@ class ColorSchemeView extends StatefulWidget { required this.handleColorRoleChange, required this.colorScheme, required this.brightness, + required this.small, }); final ConfigColorSchemeCallback handleColorRoleChange; final ColorScheme colorScheme; final Brightness brightness; + final bool small; @override State createState() => _ColorSchemeViewState(); @@ -153,10 +156,12 @@ class ColorSchemeView extends StatefulWidget { class _ColorSchemeViewState extends State { late ColorScheme _colorScheme; + late bool _small; @override void initState() { _colorScheme = widget.colorScheme; + _small = widget.small; super.initState(); } @@ -173,8 +178,10 @@ class _ColorSchemeViewState extends State { return Column( children: [ ColorGroup( + small: _small, children: [ EditableColorChip( + small: _small, label: 'primary', color: _colorScheme.primary, onColor: _colorScheme.onPrimary, @@ -187,6 +194,7 @@ class _ColorSchemeViewState extends State { }, ), EditableColorChip( + small: _small, label: 'onPrimary', color: _colorScheme.onPrimary, onColor: _colorScheme.primary, @@ -199,6 +207,7 @@ class _ColorSchemeViewState extends State { }, ), EditableColorChip( + small: _small, label: 'primaryContainer', color: _colorScheme.primaryContainer, onColor: _colorScheme.onPrimaryContainer, @@ -211,6 +220,7 @@ class _ColorSchemeViewState extends State { }, ), EditableColorChip( + small: _small, label: 'onPrimaryContainer', color: _colorScheme.onPrimaryContainer, onColor: _colorScheme.primaryContainer, @@ -226,8 +236,10 @@ class _ColorSchemeViewState extends State { ), divider, ColorGroup( + small: _small, children: [ EditableColorChip( + small: _small, label: 'secondary', color: _colorScheme.secondary, onColor: _colorScheme.onSecondary, @@ -240,6 +252,7 @@ class _ColorSchemeViewState extends State { }, ), EditableColorChip( + small: _small, label: 'onSecondary', color: _colorScheme.onSecondary, onColor: _colorScheme.secondary, @@ -252,6 +265,7 @@ class _ColorSchemeViewState extends State { }, ), EditableColorChip( + small: _small, label: 'secondaryContainer', color: _colorScheme.secondaryContainer, onColor: _colorScheme.onSecondaryContainer, @@ -264,6 +278,7 @@ class _ColorSchemeViewState extends State { }, ), EditableColorChip( + small: _small, label: 'onSecondaryContainer', color: _colorScheme.onSecondaryContainer, onColor: _colorScheme.secondaryContainer, @@ -280,8 +295,10 @@ class _ColorSchemeViewState extends State { ), divider, ColorGroup( + small: _small, children: [ EditableColorChip( + small: _small, label: 'tertiary', color: _colorScheme.tertiary, onColor: _colorScheme.onTertiary, @@ -294,6 +311,7 @@ class _ColorSchemeViewState extends State { }, ), EditableColorChip( + small: _small, label: 'onTertiary', color: _colorScheme.onTertiary, onColor: _colorScheme.tertiary, @@ -306,6 +324,7 @@ class _ColorSchemeViewState extends State { }, ), EditableColorChip( + small: _small, label: 'tertiaryContainer', color: _colorScheme.tertiaryContainer, onColor: _colorScheme.onTertiaryContainer, @@ -318,6 +337,7 @@ class _ColorSchemeViewState extends State { }, ), EditableColorChip( + small: _small, label: 'onTertiaryContainer', color: _colorScheme.onTertiaryContainer, onColor: _colorScheme.tertiaryContainer, @@ -334,8 +354,10 @@ class _ColorSchemeViewState extends State { ), divider, ColorGroup( + small: _small, children: [ EditableColorChip( + small: _small, label: 'error', color: _colorScheme.error, onColor: _colorScheme.onError, @@ -348,6 +370,7 @@ class _ColorSchemeViewState extends State { }, ), EditableColorChip( + small: _small, label: 'onError', color: _colorScheme.onError, onColor: _colorScheme.error, @@ -360,6 +383,7 @@ class _ColorSchemeViewState extends State { }, ), EditableColorChip( + small: _small, label: 'errorContainer', color: _colorScheme.errorContainer, onColor: _colorScheme.onErrorContainer, @@ -372,6 +396,7 @@ class _ColorSchemeViewState extends State { }, ), EditableColorChip( + small: _small, label: 'onErrorContainer', color: _colorScheme.onErrorContainer, onColor: _colorScheme.errorContainer, @@ -387,8 +412,10 @@ class _ColorSchemeViewState extends State { ), divider, ColorGroup( + small: _small, children: [ EditableColorChip( + small: _small, label: 'surface', color: _colorScheme.surface, onColor: _colorScheme.onSurface, @@ -401,6 +428,7 @@ class _ColorSchemeViewState extends State { }, ), EditableColorChip( + small: _small, label: 'onSurface', color: _colorScheme.onSurface, onColor: _colorScheme.surface, @@ -413,6 +441,7 @@ class _ColorSchemeViewState extends State { }, ), EditableColorChip( + small: _small, label: 'surfaceVariant', color: _colorScheme.surfaceVariant, onColor: _colorScheme.onSurfaceVariant, @@ -425,6 +454,7 @@ class _ColorSchemeViewState extends State { }, ), EditableColorChip( + small: _small, label: 'onSurfaceVariant', color: _colorScheme.onSurfaceVariant, onColor: _colorScheme.surfaceVariant, @@ -437,6 +467,7 @@ class _ColorSchemeViewState extends State { }, ), EditableColorChip( + small: _small, label: 'surfaceTint', color: _colorScheme.surfaceTint, updateColorScheme: (color) { @@ -451,8 +482,10 @@ class _ColorSchemeViewState extends State { ), divider, ColorGroup( + small: _small, children: [ EditableColorChip( + small: _small, label: 'outline', color: _colorScheme.outline, updateColorScheme: (color) { @@ -464,6 +497,7 @@ class _ColorSchemeViewState extends State { }, ), EditableColorChip( + small: _small, label: 'outlineVariant', color: _colorScheme.outlineVariant, updateColorScheme: (color) { @@ -478,8 +512,10 @@ class _ColorSchemeViewState extends State { ), divider, ColorGroup( + small: _small, children: [ EditableColorChip( + small: _small, label: 'inverseSurface', color: _colorScheme.inverseSurface, onColor: _colorScheme.onInverseSurface, @@ -492,6 +528,7 @@ class _ColorSchemeViewState extends State { }, ), EditableColorChip( + small: _small, label: 'onInverseSurface', color: _colorScheme.onInverseSurface, onColor: _colorScheme.inverseSurface, @@ -504,6 +541,7 @@ class _ColorSchemeViewState extends State { }, ), EditableColorChip( + small: _small, label: 'inversePrimary', color: _colorScheme.inversePrimary, onColor: _colorScheme.primary, @@ -519,8 +557,10 @@ class _ColorSchemeViewState extends State { ), divider, ColorGroup( + small: _small, children: [ EditableColorChip( + small: _small, label: 'background', color: _colorScheme.background, onColor: _colorScheme.onBackground, @@ -533,6 +573,7 @@ class _ColorSchemeViewState extends State { }, ), EditableColorChip( + small: _small, label: 'onBackground', color: _colorScheme.onBackground, onColor: _colorScheme.background, @@ -545,6 +586,7 @@ class _ColorSchemeViewState extends State { }, ), EditableColorChip( + small: _small, label: 'scrim', color: _colorScheme.scrim, updateColorScheme: (color) { @@ -556,6 +598,7 @@ class _ColorSchemeViewState extends State { }, ), EditableColorChip( + small: _small, label: 'shadow', color: _colorScheme.shadow, updateColorScheme: (color) { @@ -580,12 +623,14 @@ class EditableColorChip extends StatefulWidget { this.onColor, required this.label, required this.color, + required this.small, required this.updateColorScheme, }); final String label; final Color color; final Color? onColor; + final bool small; final void Function(Color) updateColorScheme; @override @@ -647,6 +692,7 @@ class _EditableColorChipState extends State { }); }, child: ColorChip( + small: widget.small, label: widget.label, color: widget.color, onColor: widget.onColor, @@ -656,9 +702,10 @@ class _EditableColorChipState extends State { } class ColorGroup extends StatelessWidget { - const ColorGroup({super.key, required this.children}); + const ColorGroup({super.key, required this.children, required this.small}); final List children; + final bool small; @override Widget build(BuildContext context) { @@ -666,9 +713,17 @@ class ColorGroup extends StatelessWidget { child: Card( elevation: 0.0, clipBehavior: Clip.antiAlias, - child: Column( - children: children, - ), + child: small + ? GridView.count( + crossAxisCount: 2, + shrinkWrap: true, + childAspectRatio: 1 / 0.3, + physics: const NeverScrollableScrollPhysics(), + children: children, + ) + : Column( + children: children, + ), ), ); } @@ -679,12 +734,14 @@ class ColorChip extends StatelessWidget { super.key, required this.color, required this.label, + required this.small, this.onColor, }); final Color color; final Color? onColor; final String label; + final bool small; static Color contrastColor(Color color) { final brightness = ThemeData.estimateBrightnessForColor(color); @@ -703,16 +760,19 @@ class ColorChip extends StatelessWidget { return Container( color: color, child: Padding( - padding: const EdgeInsets.all(16), + padding: small ? const EdgeInsets.all(8) : const EdgeInsets.all(16), child: Row( children: [ - Expanded(child: Text(label, style: TextStyle(color: labelColor))), - Text( - color.value.toRadixString(16).substring(2), - style: GoogleFonts.spaceMono( - color: labelColor, - ), - ), + Expanded( + child: Text(label, + style: TextStyle( + color: labelColor, fontSize: small ? 10 : null))), + Visibility( + visible: !small, + child: Text( + color.value.toRadixString(16).substring(2), + style: GoogleFonts.spaceMono(color: labelColor), + )), ], ), ), diff --git a/experimental/material_3_demo/lib/home.dart b/experimental/material_3_demo/lib/home.dart index b00670719..1c672a371 100644 --- a/experimental/material_3_demo/lib/home.dart +++ b/experimental/material_3_demo/lib/home.dart @@ -48,11 +48,13 @@ class Home extends StatefulWidget { const Home({ super.key, required this.useLightMode, + required this.useThemeConfig, required this.useMaterial3, required this.colorSelected, required this.lightColors, required this.darkColors, required this.handleBrightnessChange, + required this.handleThemeConfigChange, required this.handleMaterialVersionChange, required this.handleColorRoleChange, required this.handleColorSelect, @@ -62,6 +64,7 @@ class Home extends StatefulWidget { }); final bool useLightMode; + final bool useThemeConfig; final bool useMaterial3; final ColorSeed colorSelected; final ColorScheme lightColors; @@ -71,6 +74,7 @@ class Home extends StatefulWidget { final void Function(bool useLightMode) handleBrightnessChange; final void Function() handleMaterialVersionChange; + final void Function() handleThemeConfigChange; final void Function(int value) handleColorSelect; final void Function(int value) handleImageSelect; final ConfigColorSchemeCallback handleColorRoleChange; @@ -219,6 +223,12 @@ class _HomeState extends State with SingleTickerProviderStateMixin { showTooltipBelow: false, ), ), + Flexible( + child: _ThemeConfigButton( + handleThemeConfigChange: widget.handleThemeConfigChange, + showTooltipBelow: false, + ), + ), Flexible( child: _ColorSeedButton( handleColorSelect: widget.handleColorSelect, @@ -264,7 +274,9 @@ class _HomeState extends State with SingleTickerProviderStateMixin { child: showLargeSizeLayout ? _ExpandedTrailingActions( useLightMode: widget.useLightMode, + useThemeConfig: widget.useThemeConfig, handleBrightnessChange: widget.handleBrightnessChange, + handleThemeConfigChange: widget.handleThemeConfigChange, useMaterial3: widget.useMaterial3, handleMaterialVersionChange: widget.handleMaterialVersionChange, @@ -273,6 +285,8 @@ class _HomeState extends State with SingleTickerProviderStateMixin { colorSelectionMethod: widget.colorSelectionMethod, imageSelected: widget.imageSelected, colorSelected: widget.colorSelected, + handleColorRoleChange: widget.handleColorRoleChange, + lightColorScheme: widget.lightColors, ) : _trailingActions(), ), @@ -344,6 +358,29 @@ class _Material3Button extends StatelessWidget { } } +class _ThemeConfigButton extends StatelessWidget { + const _ThemeConfigButton({ + required this.handleThemeConfigChange, + this.showTooltipBelow = true, + }); + + final Function handleThemeConfigChange; + final bool showTooltipBelow; + + // TO DO: logic for seeing if theme config is enabled + @override + Widget build(BuildContext context) { + return Tooltip( + preferBelow: showTooltipBelow, + message: 'Toggle theme config', + child: IconButton( + icon: const Icon(Icons.settings_outlined), + onPressed: () => handleThemeConfigChange(), + ), + ); + } +} + class _ColorSeedButton extends StatelessWidget { const _ColorSeedButton({ required this.handleColorSelect, @@ -463,7 +500,9 @@ class _ColorImageButton extends StatelessWidget { class _ExpandedTrailingActions extends StatelessWidget { const _ExpandedTrailingActions({ required this.useLightMode, + required this.useThemeConfig, required this.handleBrightnessChange, + required this.handleThemeConfigChange, required this.useMaterial3, required this.handleMaterialVersionChange, required this.handleColorSelect, @@ -471,15 +510,26 @@ class _ExpandedTrailingActions extends StatelessWidget { required this.imageSelected, required this.colorSelected, required this.colorSelectionMethod, + // + required this.handleColorRoleChange, + required this.lightColorScheme, + // required this.darkColorScheme, }); final void Function(bool) handleBrightnessChange; + final void Function() handleThemeConfigChange; final void Function() handleMaterialVersionChange; final void Function(int) handleImageSelect; final void Function(int) handleColorSelect; + // + final ConfigColorSchemeCallback handleColorRoleChange; + final ColorScheme lightColorScheme; + // final ColorScheme darkColorScheme; + final bool useLightMode; final bool useMaterial3; + final bool useThemeConfig; final ColorImageProvider imageSelected; final ColorSeed colorSelected; @@ -488,6 +538,36 @@ class _ExpandedTrailingActions extends StatelessWidget { @override Widget build(BuildContext context) { final screenHeight = MediaQuery.of(context).size.height; + final colorImageActions = [ + const Divider(), + _ExpandedColorSeedAction( + handleColorSelect: handleColorSelect, + colorSelected: colorSelected, + colorSelectionMethod: colorSelectionMethod, + ), + const Divider(), + _ExpandedImageColorAction( + handleImageSelect: handleImageSelect, + imageSelected: imageSelected, + colorSelectionMethod: colorSelectionMethod, + ), + ]; + final themeConfigActions = [ + const Divider(), + Text("Color Scheme"), + ColorSchemeView( + small: true, + handleColorRoleChange: handleColorRoleChange, + colorScheme: lightColorScheme, + brightness: Brightness.light, + ), + // EditableColorChip( + // label: 'primary', + // color: Colors.purple, + // onColor: Colors.white, + // updateColorScheme: (color) {}, + // ), + ]; final trailingActionsBody = Container( constraints: const BoxConstraints.tightFor(width: 250), padding: const EdgeInsets.symmetric(horizontal: 30), @@ -519,21 +599,22 @@ class _ExpandedTrailingActions extends StatelessWidget { }) ], ), - const Divider(), - _ExpandedColorSeedAction( - handleColorSelect: handleColorSelect, - colorSelected: colorSelected, - colorSelectionMethod: colorSelectionMethod, - ), - const Divider(), - _ExpandedImageColorAction( - handleImageSelect: handleImageSelect, - imageSelected: imageSelected, - colorSelectionMethod: colorSelectionMethod, + Row( + children: [ + const Text('Theme Config'), + Expanded(child: Container()), + Switch( + value: useThemeConfig, + onChanged: (value) { + handleThemeConfigChange(); + }) + ], ), + ...useThemeConfig ? themeConfigActions : colorImageActions ], ), ); + return screenHeight > 740 ? trailingActionsBody : SingleChildScrollView(child: trailingActionsBody); diff --git a/experimental/material_3_demo/lib/main.dart b/experimental/material_3_demo/lib/main.dart index e1df15013..39a817e7d 100644 --- a/experimental/material_3_demo/lib/main.dart +++ b/experimental/material_3_demo/lib/main.dart @@ -22,6 +22,7 @@ class App extends StatefulWidget { class _AppState extends State { bool useMaterial3 = true; + bool useThemeConfig = false; ThemeMode themeMode = ThemeMode.system; ColorSeed colorSelected = ColorSeed.baseColor; ColorImageProvider imageSelected = ColorImageProvider.leaves; @@ -48,6 +49,12 @@ class _AppState extends State { }); } + void handleThemeConfigChange() { + setState(() { + useThemeConfig = !useThemeConfig; + }); + } + void handleMaterialVersionChange() { setState(() { useMaterial3 = !useMaterial3; @@ -195,11 +202,13 @@ class _AppState extends State { home: Home( useLightMode: useLightMode, useMaterial3: useMaterial3, + useThemeConfig: useThemeConfig, colorSelected: colorSelected, lightColors: lightTheme.colorScheme, darkColors: darkTheme.colorScheme, imageSelected: imageSelected, handleBrightnessChange: handleBrightnessChange, + handleThemeConfigChange: handleThemeConfigChange, handleMaterialVersionChange: handleMaterialVersionChange, handleColorSelect: handleColorSelect, handleImageSelect: handleImageSelect, diff --git a/experimental/material_3_demo/macos/Flutter/GeneratedPluginRegistrant.swift b/experimental/material_3_demo/macos/Flutter/GeneratedPluginRegistrant.swift index 8236f5728..a1cdfd0cd 100644 --- a/experimental/material_3_demo/macos/Flutter/GeneratedPluginRegistrant.swift +++ b/experimental/material_3_demo/macos/Flutter/GeneratedPluginRegistrant.swift @@ -5,8 +5,10 @@ import FlutterMacOS import Foundation +import path_provider_foundation import url_launcher_macos func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) { + PathProviderPlugin.register(with: registry.registrar(forPlugin: "PathProviderPlugin")) UrlLauncherPlugin.register(with: registry.registrar(forPlugin: "UrlLauncherPlugin")) } diff --git a/experimental/material_3_demo/macos/Runner.xcodeproj/project.pbxproj b/experimental/material_3_demo/macos/Runner.xcodeproj/project.pbxproj index ddd81a110..117c8b240 100644 --- a/experimental/material_3_demo/macos/Runner.xcodeproj/project.pbxproj +++ b/experimental/material_3_demo/macos/Runner.xcodeproj/project.pbxproj @@ -21,6 +21,8 @@ /* End PBXAggregateTarget section */ /* Begin PBXBuildFile section */ + 0926BB53CA9D59F28350E166 /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 0919634F821733EBDFC95BA1 /* Pods_Runner.framework */; }; + 2B12D5B1AF04DBDA720929AC /* Pods_RunnerTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = CFE681DA523BAA4E378E1050 /* Pods_RunnerTests.framework */; }; 331C80D8294CF71000263BE5 /* RunnerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 331C80D7294CF71000263BE5 /* RunnerTests.swift */; }; 335BBD1B22A9A15E00E9071D /* GeneratedPluginRegistrant.swift in Sources */ = {isa = PBXBuildFile; fileRef = 335BBD1A22A9A15E00E9071D /* GeneratedPluginRegistrant.swift */; }; 33CC10F12044A3C60003C045 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 33CC10F02044A3C60003C045 /* AppDelegate.swift */; }; @@ -60,11 +62,14 @@ /* End PBXCopyFilesBuildPhase section */ /* Begin PBXFileReference section */ + 08AA92B8483B7612544926AB /* Pods-RunnerTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-RunnerTests.release.xcconfig"; path = "Target Support Files/Pods-RunnerTests/Pods-RunnerTests.release.xcconfig"; sourceTree = ""; }; + 0919634F821733EBDFC95BA1 /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 18FDA4B6B5DA42C9B446B66E /* Pods-RunnerTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-RunnerTests.debug.xcconfig"; path = "Target Support Files/Pods-RunnerTests/Pods-RunnerTests.debug.xcconfig"; sourceTree = ""; }; 331C80D5294CF71000263BE5 /* RunnerTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = RunnerTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; 331C80D7294CF71000263BE5 /* RunnerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RunnerTests.swift; sourceTree = ""; }; 333000ED22D3DE5D00554162 /* Warnings.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Warnings.xcconfig; sourceTree = ""; }; 335BBD1A22A9A15E00E9071D /* GeneratedPluginRegistrant.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = GeneratedPluginRegistrant.swift; sourceTree = ""; }; - 33CC10ED2044A3C60003C045 /* material_3_demo.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "material_3_demo.app"; sourceTree = BUILT_PRODUCTS_DIR; }; + 33CC10ED2044A3C60003C045 /* material_3_demo.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = material_3_demo.app; sourceTree = BUILT_PRODUCTS_DIR; }; 33CC10F02044A3C60003C045 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; 33CC10F22044A3C60003C045 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Assets.xcassets; path = Runner/Assets.xcassets; sourceTree = ""; }; 33CC10F52044A3C60003C045 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/MainMenu.xib; sourceTree = ""; }; @@ -76,8 +81,13 @@ 33E51913231747F40026EE4D /* DebugProfile.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = DebugProfile.entitlements; sourceTree = ""; }; 33E51914231749380026EE4D /* Release.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.entitlements; path = Release.entitlements; sourceTree = ""; }; 33E5194F232828860026EE4D /* AppInfo.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = AppInfo.xcconfig; sourceTree = ""; }; + 43EAFF84E52A54113BCB5EFD /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.debug.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"; sourceTree = ""; }; + 658AFBFF049531B2FA288416 /* Pods-Runner.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.profile.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig"; sourceTree = ""; }; 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Release.xcconfig; sourceTree = ""; }; 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = Debug.xcconfig; sourceTree = ""; }; + CFE681DA523BAA4E378E1050 /* Pods_RunnerTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_RunnerTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + D9499BB846C7970C91C4EB3D /* Pods-RunnerTests.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-RunnerTests.profile.xcconfig"; path = "Target Support Files/Pods-RunnerTests/Pods-RunnerTests.profile.xcconfig"; sourceTree = ""; }; + DD44EA61E89CE1EF13CEFECB /* Pods-Runner.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.release.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -85,6 +95,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + 2B12D5B1AF04DBDA720929AC /* Pods_RunnerTests.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -92,12 +103,27 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + 0926BB53CA9D59F28350E166 /* Pods_Runner.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ + 2A6F5B959520E145A6462C01 /* Pods */ = { + isa = PBXGroup; + children = ( + 43EAFF84E52A54113BCB5EFD /* Pods-Runner.debug.xcconfig */, + DD44EA61E89CE1EF13CEFECB /* Pods-Runner.release.xcconfig */, + 658AFBFF049531B2FA288416 /* Pods-Runner.profile.xcconfig */, + 18FDA4B6B5DA42C9B446B66E /* Pods-RunnerTests.debug.xcconfig */, + 08AA92B8483B7612544926AB /* Pods-RunnerTests.release.xcconfig */, + D9499BB846C7970C91C4EB3D /* Pods-RunnerTests.profile.xcconfig */, + ); + name = Pods; + path = Pods; + sourceTree = ""; + }; 331C80D6294CF71000263BE5 /* RunnerTests */ = { isa = PBXGroup; children = ( @@ -125,6 +151,7 @@ 331C80D6294CF71000263BE5 /* RunnerTests */, 33CC10EE2044A3C60003C045 /* Products */, D73912EC22F37F3D000D13A0 /* Frameworks */, + 2A6F5B959520E145A6462C01 /* Pods */, ); sourceTree = ""; }; @@ -175,6 +202,8 @@ D73912EC22F37F3D000D13A0 /* Frameworks */ = { isa = PBXGroup; children = ( + 0919634F821733EBDFC95BA1 /* Pods_Runner.framework */, + CFE681DA523BAA4E378E1050 /* Pods_RunnerTests.framework */, ); name = Frameworks; sourceTree = ""; @@ -186,6 +215,7 @@ isa = PBXNativeTarget; buildConfigurationList = 331C80DE294CF71000263BE5 /* Build configuration list for PBXNativeTarget "RunnerTests" */; buildPhases = ( + 1BC8AB257EA4019644AB2687 /* [CP] Check Pods Manifest.lock */, 331C80D1294CF70F00263BE5 /* Sources */, 331C80D2294CF70F00263BE5 /* Frameworks */, 331C80D3294CF70F00263BE5 /* Resources */, @@ -204,11 +234,13 @@ isa = PBXNativeTarget; buildConfigurationList = 33CC10FB2044A3C60003C045 /* Build configuration list for PBXNativeTarget "Runner" */; buildPhases = ( + 5833D1F1CF0CD638DD8947FC /* [CP] Check Pods Manifest.lock */, 33CC10E92044A3C60003C045 /* Sources */, 33CC10EA2044A3C60003C045 /* Frameworks */, 33CC10EB2044A3C60003C045 /* Resources */, 33CC110E2044A8840003C045 /* Bundle Framework */, 3399D490228B24CF009A79C7 /* ShellScript */, + 830092AEFFBD3D14F96530D1 /* [CP] Embed Pods Frameworks */, ); buildRules = ( ); @@ -227,7 +259,7 @@ isa = PBXProject; attributes = { LastSwiftUpdateCheck = 0920; - LastUpgradeCheck = 1300; + LastUpgradeCheck = 1430; ORGANIZATIONNAME = ""; TargetAttributes = { 331C80D4294CF70F00263BE5 = { @@ -290,6 +322,28 @@ /* End PBXResourcesBuildPhase section */ /* Begin PBXShellScriptBuildPhase section */ + 1BC8AB257EA4019644AB2687 /* [CP] Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", + ); + name = "[CP] Check Pods Manifest.lock"; + outputFileListPaths = ( + ); + outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-RunnerTests-checkManifestLockResult.txt", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; + showEnvVarsInLog = 0; + }; 3399D490228B24CF009A79C7 /* ShellScript */ = { isa = PBXShellScriptBuildPhase; alwaysOutOfDate = 1; @@ -328,6 +382,45 @@ shellPath = /bin/sh; shellScript = "\"$FLUTTER_ROOT\"/packages/flutter_tools/bin/macos_assemble.sh && touch Flutter/ephemeral/tripwire"; }; + 5833D1F1CF0CD638DD8947FC /* [CP] Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", + ); + name = "[CP] Check Pods Manifest.lock"; + outputFileListPaths = ( + ); + outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-Runner-checkManifestLockResult.txt", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; + showEnvVarsInLog = 0; + }; + 830092AEFFBD3D14F96530D1 /* [CP] Embed Pods Frameworks */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-input-files.xcfilelist", + ); + name = "[CP] Embed Pods Frameworks"; + outputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-output-files.xcfilelist", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n"; + showEnvVarsInLog = 0; + }; /* End PBXShellScriptBuildPhase section */ /* Begin PBXSourcesBuildPhase section */ @@ -379,6 +472,7 @@ /* Begin XCBuildConfiguration section */ 331C80DB294CF71000263BE5 /* Debug */ = { isa = XCBuildConfiguration; + baseConfigurationReference = 18FDA4B6B5DA42C9B446B66E /* Pods-RunnerTests.debug.xcconfig */; buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CURRENT_PROJECT_VERSION = 1; @@ -393,6 +487,7 @@ }; 331C80DC294CF71000263BE5 /* Release */ = { isa = XCBuildConfiguration; + baseConfigurationReference = 08AA92B8483B7612544926AB /* Pods-RunnerTests.release.xcconfig */; buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CURRENT_PROJECT_VERSION = 1; @@ -407,6 +502,7 @@ }; 331C80DD294CF71000263BE5 /* Profile */ = { isa = XCBuildConfiguration; + baseConfigurationReference = D9499BB846C7970C91C4EB3D /* Pods-RunnerTests.profile.xcconfig */; buildSettings = { BUNDLE_LOADER = "$(TEST_HOST)"; CURRENT_PROJECT_VERSION = 1; diff --git a/experimental/material_3_demo/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/experimental/material_3_demo/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme index 7bf63357a..816abc1d1 100644 --- a/experimental/material_3_demo/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme +++ b/experimental/material_3_demo/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme @@ -1,6 +1,6 @@ + +