From 8f11bbcac26ef5142000ec751d314f36fac09ea7 Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Wed, 22 Sep 2021 19:15:54 -0500 Subject: [PATCH 01/64] Migrate CallbackShortcuts code snippet to new snippet system --- .../actions_and_shortcuts/lib/samples.dart | 34 +++++++++++++++++-- .../ui/advanced/actions_and_shortcuts.md | 9 ++--- 2 files changed, 35 insertions(+), 8 deletions(-) diff --git a/examples/ui/advanced/actions_and_shortcuts/lib/samples.dart b/examples/ui/advanced/actions_and_shortcuts/lib/samples.dart index f493dedd99..c6ff11071e 100644 --- a/examples/ui/advanced/actions_and_shortcuts/lib/samples.dart +++ b/examples/ui/advanced/actions_and_shortcuts/lib/samples.dart @@ -35,8 +35,7 @@ class ShortcutsExample extends StatelessWidget { class LoggingShortcutManager extends ShortcutManager { @override KeyEventResult handleKeypress(BuildContext context, RawKeyEvent event) { - final KeyEventResult result = - super.handleKeypress(context, event); + final KeyEventResult result = super.handleKeypress(context, event); if (result == KeyEventResult.handled) { print('Handled shortcut $event in $context'); } @@ -178,3 +177,34 @@ class LoggingActionDispatcherExample extends StatelessWidget { } // #enddocregion LoggingActionDispatcherExample } + +// #docregion CallbackShortcuts +class CallbackShortcuts extends StatelessWidget { + const CallbackShortcuts({ + Key? key, + required this.bindings, + required this.child, + }) : super(key: key); + + final Map bindings; + final Widget child; + + @override + Widget build(BuildContext context) { + return Focus( + onKey: (FocusNode node, RawKeyEvent event) { + KeyEventResult result = KeyEventResult.ignored; + // Activates all key bindings that match, returns handled if any handle it. + for (final ShortcutActivator activator in bindings.keys) { + if (activator.accepts(event, RawKeyboard.instance)) { + bindings[activator]!.call(); + result = KeyEventResult.handled; + } + } + return result; + }, + child: child, + ); + } +} +// #enddocregion CallbackShortcuts diff --git a/src/docs/development/ui/advanced/actions_and_shortcuts.md b/src/docs/development/ui/advanced/actions_and_shortcuts.md index b8b78ba0a6..81f838537b 100644 --- a/src/docs/development/ui/advanced/actions_and_shortcuts.md +++ b/src/docs/development/ui/advanced/actions_and_shortcuts.md @@ -82,10 +82,8 @@ for this. For example, here's the implementation of Flutter's simple [`CallbackShortcuts`][] widget (available on the dev branch) that takes a map of activators and executes callbacks for them: - - + + ```dart class CallbackShortcuts extends StatelessWidget { const CallbackShortcuts({ @@ -198,8 +196,7 @@ you could make a `LoggingShortcutManager`: class LoggingShortcutManager extends ShortcutManager { @override KeyEventResult handleKeypress(BuildContext context, RawKeyEvent event) { - final KeyEventResult result = - super.handleKeypress(context, event); + final KeyEventResult result = super.handleKeypress(context, event); if (result == KeyEventResult.handled) { print('Handled shortcut $event in $context'); } From b7a7a00adf0b434484b2b90101c7da9ef6deace5 Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Fri, 24 Sep 2021 09:42:46 -0500 Subject: [PATCH 02/64] Resolve code snippet reference errors from PR #6296 --- .../lib/integration_test/app_test.dart | 4 ++- .../testing/widget/scrolling/pubspec.yaml | 3 +- .../widget/scrolling/test/widget_test.dart | 5 ++- flutter | 2 +- .../testing/integration/introduction.md | 32 +++++++++---------- src/docs/cookbook/testing/widget/scrolling.md | 12 +++++-- 6 files changed, 36 insertions(+), 22 deletions(-) diff --git a/examples/cookbook/testing/integration/introduction/lib/integration_test/app_test.dart b/examples/cookbook/testing/integration/introduction/lib/integration_test/app_test.dart index 776f828401..27488cd2a6 100644 --- a/examples/cookbook/testing/integration/introduction/lib/integration_test/app_test.dart +++ b/examples/cookbook/testing/integration/introduction/lib/integration_test/app_test.dart @@ -1,7 +1,8 @@ +// #docregion IntegrationTest import 'package:flutter_test/flutter_test.dart'; import 'package:integration_test/integration_test.dart'; -import 'package:integration_test_experiments/main.dart' as app; +import 'package:introduction/main.dart' as app; void main() { IntegrationTestWidgetsFlutterBinding.ensureInitialized(); @@ -29,3 +30,4 @@ void main() { }); }); } +// #enddocregion IntegrationTest diff --git a/examples/cookbook/testing/widget/scrolling/pubspec.yaml b/examples/cookbook/testing/widget/scrolling/pubspec.yaml index 27d3d78375..31fb7bdabc 100644 --- a/examples/cookbook/testing/widget/scrolling/pubspec.yaml +++ b/examples/cookbook/testing/widget/scrolling/pubspec.yaml @@ -9,10 +9,11 @@ dependencies: sdk: flutter path_provider: ^2.0.1 path: ^1.8.0 + flutter_test: + sdk: flutter dev_dependencies: flutter_lints: ^1.0.3 - test: any flutter: uses-material-design: true diff --git a/examples/cookbook/testing/widget/scrolling/test/widget_test.dart b/examples/cookbook/testing/widget/scrolling/test/widget_test.dart index 04f0284828..188f9cca22 100644 --- a/examples/cookbook/testing/widget/scrolling/test/widget_test.dart +++ b/examples/cookbook/testing/widget/scrolling/test/widget_test.dart @@ -1,3 +1,5 @@ +// #docregion ScrollWidgetTest + // This is a basic Flutter widget test. // // To perform an interaction with a widget in your test, use the WidgetTester @@ -8,7 +10,7 @@ import 'package:flutter/material.dart'; import 'package:flutter_test/flutter_test.dart'; -import 'package:integration_test_experiments/main.dart'; +import 'package:scrolling/main.dart'; void main() { testWidgets('Counter increments smoke test', (WidgetTester tester) async { @@ -31,3 +33,4 @@ void main() { expect(itemFinder, findsOneWidget); }); } +// #enddocregion ScrollWidgetTest diff --git a/flutter b/flutter index ffb2ecea52..4cc385b4b8 160000 --- a/flutter +++ b/flutter @@ -1 +1 @@ -Subproject commit ffb2ecea5223acdd139a5039be2f9c796962833d +Subproject commit 4cc385b4b84ac2f816d939a49ea1f328c4e0b48e diff --git a/src/docs/cookbook/testing/integration/introduction.md b/src/docs/cookbook/testing/integration/introduction.md index 7a8422c765..82b076f66f 100644 --- a/src/docs/cookbook/testing/integration/introduction.md +++ b/src/docs/cookbook/testing/integration/introduction.md @@ -149,37 +149,37 @@ Now you can write tests. This involves four steps: 2. Interact and tests widgets using the `WidgetTester` class. 3. Test the important scenarios. - + ```dart import 'package:flutter_test/flutter_test.dart'; import 'package:integration_test/integration_test.dart'; -import 'package:integration_test_experiments/main.dart' as app; +import 'package:introduction/main.dart' as app; void main() { IntegrationTestWidgetsFlutterBinding.ensureInitialized(); group('end-to-end test', () { testWidgets('tap on the floating action button, verify counter', - (WidgetTester tester) async { - app.main(); - await tester.pumpAndSettle(); + (WidgetTester tester) async { + app.main(); + await tester.pumpAndSettle(); - // Verify the counter starts at 0. - expect(find.text('0'), findsOneWidget); + // Verify the counter starts at 0. + expect(find.text('0'), findsOneWidget); - // Finds the floating action button to tap on. - final Finder fab = find.byTooltip('Increment'); + // Finds the floating action button to tap on. + final Finder fab = find.byTooltip('Increment'); - // Emulate a tap on the floating action button. - await tester.tap(fab); + // Emulate a tap on the floating action button. + await tester.tap(fab); - // Trigger a frame. - await tester.pumpAndSettle(); + // Trigger a frame. + await tester.pumpAndSettle(); - // Verify the counter increments by 1. - expect(find.text('1'), findsOneWidget); - }); + // Verify the counter increments by 1. + expect(find.text('1'), findsOneWidget); + }); }); } ``` diff --git a/src/docs/cookbook/testing/widget/scrolling.md b/src/docs/cookbook/testing/widget/scrolling.md index 40c9e40ccc..c04cb40210 100644 --- a/src/docs/cookbook/testing/widget/scrolling.md +++ b/src/docs/cookbook/testing/widget/scrolling.md @@ -109,12 +109,20 @@ The following code shows how to use the `scrollUntilVisible()` method to look through the list for a particular item. This code lives in a file called `test/widget_test.dart`. - + ```dart + +// This is a basic Flutter widget test. +// +// To perform an interaction with a widget in your test, use the WidgetTester +// utility that Flutter provides. For example, you can send tap and scroll +// gestures. You can also use WidgetTester to find child widgets in the widget +// tree, read text, and verify that the values of widget properties are correct. + import 'package:flutter/material.dart'; import 'package:flutter_test/flutter_test.dart'; -import 'package:integration_test_experiments/main.dart'; +import 'package:scrolling/main.dart'; void main() { testWidgets('Counter increments smoke test', (WidgetTester tester) async { From 77216942cfee02f8de177c65eb275eaf342244f4 Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Fri, 24 Sep 2021 11:03:35 -0500 Subject: [PATCH 03/64] Change cookbook links to scrolling.md to fix 404s --- src/docs/cookbook/testing/integration/introduction.md | 2 +- src/docs/cookbook/testing/unit/introduction.md | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/docs/cookbook/testing/integration/introduction.md b/src/docs/cookbook/testing/integration/introduction.md index 82b076f66f..368ff85c52 100644 --- a/src/docs/cookbook/testing/integration/introduction.md +++ b/src/docs/cookbook/testing/integration/introduction.md @@ -7,7 +7,7 @@ prev: path: /docs/cookbook/plugins/picture-using-camera next: title: Performance profiling - path: /docs/cookbook/testing/integration/scrolling + path: /docs/cookbook/testing/widget/scrolling --- diff --git a/src/docs/cookbook/testing/unit/introduction.md b/src/docs/cookbook/testing/unit/introduction.md index b4a99eb694..6484cc6397 100644 --- a/src/docs/cookbook/testing/unit/introduction.md +++ b/src/docs/cookbook/testing/unit/introduction.md @@ -3,8 +3,8 @@ title: An introduction to unit testing description: How to write unit tests. short-title: Introduction prev: - title: Perform scrolling - path: /docs/cookbook/testing/integration/scrolling + title: Performance scrolling + path: /docs/cookbook/testing/widget/scrolling next: title: Mock dependencies using Mockito path: /docs/cookbook/testing/unit/mocking From 7d1e86a0f738c1cb01a839c85f0363bae9701dbf Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Fri, 24 Sep 2021 12:20:25 -0500 Subject: [PATCH 04/64] Update prev/next paths to match https://github.com/flutter/website/blob/main/src/docs/cookbook/index.md --- src/docs/cookbook/testing/integration/introduction.md | 2 +- src/docs/cookbook/testing/integration/profiling.md | 2 +- src/docs/cookbook/testing/unit/introduction.md | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/docs/cookbook/testing/integration/introduction.md b/src/docs/cookbook/testing/integration/introduction.md index 368ff85c52..f700c2be56 100644 --- a/src/docs/cookbook/testing/integration/introduction.md +++ b/src/docs/cookbook/testing/integration/introduction.md @@ -7,7 +7,7 @@ prev: path: /docs/cookbook/plugins/picture-using-camera next: title: Performance profiling - path: /docs/cookbook/testing/widget/scrolling + path: /docs/cookbook/testing/integration/profiling --- diff --git a/src/docs/cookbook/testing/integration/profiling.md b/src/docs/cookbook/testing/integration/profiling.md index a3b14379df..a7737113fb 100644 --- a/src/docs/cookbook/testing/integration/profiling.md +++ b/src/docs/cookbook/testing/integration/profiling.md @@ -3,7 +3,7 @@ title: Performance profiling description: How to profile performance for a Flutter app. prev: title: An introduction to integration testing - path: /docs/cookbook/testing/unit/introduction + path: /docs/cookbook/testing/integration/introduction.md next: title: An introduction to unit testing path: /docs/cookbook/testing/unit/introduction diff --git a/src/docs/cookbook/testing/unit/introduction.md b/src/docs/cookbook/testing/unit/introduction.md index 6484cc6397..4e405b558d 100644 --- a/src/docs/cookbook/testing/unit/introduction.md +++ b/src/docs/cookbook/testing/unit/introduction.md @@ -3,8 +3,8 @@ title: An introduction to unit testing description: How to write unit tests. short-title: Introduction prev: - title: Performance scrolling - path: /docs/cookbook/testing/widget/scrolling + title: Performance profiling + path: /docs/cookbook/testing/integration/profiling next: title: Mock dependencies using Mockito path: /docs/cookbook/testing/unit/mocking From f8c8a48bef9a013385052ce194623da9cdb55e7f Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Fri, 24 Sep 2021 12:48:47 -0500 Subject: [PATCH 05/64] fixed path to /docs/cookbook/testing/integration/introduction in profiling.md --- src/docs/cookbook/testing/integration/profiling.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/docs/cookbook/testing/integration/profiling.md b/src/docs/cookbook/testing/integration/profiling.md index a7737113fb..dbef48459a 100644 --- a/src/docs/cookbook/testing/integration/profiling.md +++ b/src/docs/cookbook/testing/integration/profiling.md @@ -3,7 +3,7 @@ title: Performance profiling description: How to profile performance for a Flutter app. prev: title: An introduction to integration testing - path: /docs/cookbook/testing/integration/introduction.md + path: /docs/cookbook/testing/integration/introduction next: title: An introduction to unit testing path: /docs/cookbook/testing/unit/introduction From 9c3a6c8ac351de9d0605ddf9fef15c17fb7fbbc1 Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Fri, 24 Sep 2021 17:08:42 -0500 Subject: [PATCH 06/64] add firebase redirect for '/go/android-plugin-migration.' to prevent 404 --- firebase.json | 1 + 1 file changed, 1 insertion(+) diff --git a/firebase.json b/firebase.json index 3e4d97a982..397f76f8f2 100644 --- a/firebase.json +++ b/firebase.json @@ -93,6 +93,7 @@ { "source": "/go/android-migration-summary", "destination": "https://docs.google.com/document/d/1wKspwf6LQu6uo32uQ9NcukfiKhLL4ButV9cwpjeb8QI", "type": 301 }, { "source": "/go/android-splash-migration", "destination": "https://flutter.dev/docs/development/ui/advanced/splash-screen#migrating-from-manifest--activity-defined-custom-splash-screens", "type": 301 }, { "source": "/go/android-plugin-migration", "destination": "https://flutter.dev/docs/development/packages-and-plugins/plugin-api-migration", "type": 301 }, + { "source": "/go/android-plugin-migration.", "destination": "https://flutter.dev/docs/development/packages-and-plugins/plugin-api-migration", "type": 301 }, { "source": "/go/android-project-migration", "destination": "https://github.com/flutter/flutter/wiki/Upgrading-pre-1.12-Android-projects", "type": 301 }, { "source": "/go/androidx-transition", "destination": "https://docs.google.com/document/d/1JnMxQinUeouuV5kcenoq03TsvLyn_xaHXIT_6c5b7nQ", "type": 301 }, { "source": "/go/annotator-tree", "destination": "https://docs.google.com/document/d/1YtkdZSx1687Ipbff06qp3XglmJym3Wc9boY4I-bYs4A/edit", "type": 301 }, From c90021f36e32b24b3a68188f28f2c7581b2f5104 Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Fri, 15 Oct 2021 15:02:36 -0500 Subject: [PATCH 07/64] migrated 3 code excerpts for ./docs/development/ui/layout/building-adaptive-apps.md using example code from https://github.com/gskinnerTeam/flutter-adaptive-demo --- .../ui/layout/adaptive_app_demos/.gitignore | 46 ++ .../ui/layout/adaptive_app_demos/.metadata | 10 + .../ui/layout/adaptive_app_demos/README.md | 23 + .../adaptive_app_demos/android/.gitignore | 11 + .../android/app/build.gradle | 59 ++ .../android/app/src/debug/AndroidManifest.xml | 7 + .../android/app/src/main/AndroidManifest.xml | 41 ++ .../adaptive_app_demos/MainActivity.kt | 6 + .../res/drawable-v21/launch_background.xml | 12 + .../main/res/drawable/launch_background.xml | 12 + .../src/main/res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 544 bytes .../src/main/res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 442 bytes .../src/main/res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 721 bytes .../main/res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 1031 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 1443 bytes .../app/src/main/res/values-night/styles.xml | 18 + .../app/src/main/res/values/styles.xml | 18 + .../app/src/profile/AndroidManifest.xml | 7 + .../adaptive_app_demos/android/build.gradle | 31 + .../android/gradle.properties | 3 + .../gradle/wrapper/gradle-wrapper.properties | 6 + .../android/settings.gradle | 11 + .../layout/adaptive_app_demos/ios/.gitignore | 33 + .../ios/Flutter/AppFrameworkInfo.plist | 26 + .../ios/Flutter/Debug.xcconfig | 2 + .../ios/Flutter/Release.xcconfig | 2 + .../ui/layout/adaptive_app_demos/ios/Podfile | 41 ++ .../ios/Runner.xcodeproj/project.pbxproj | 471 ++++++++++++++ .../contents.xcworkspacedata | 7 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../xcshareddata/WorkspaceSettings.xcsettings | 8 + .../xcshareddata/xcschemes/Runner.xcscheme | 91 +++ .../contents.xcworkspacedata | 7 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../xcshareddata/WorkspaceSettings.xcsettings | 8 + .../ios/Runner/AppDelegate.swift | 13 + .../AppIcon.appiconset/Contents.json | 122 ++++ .../Icon-App-1024x1024@1x.png | Bin 0 -> 10932 bytes .../AppIcon.appiconset/Icon-App-20x20@1x.png | Bin 0 -> 564 bytes .../AppIcon.appiconset/Icon-App-20x20@2x.png | Bin 0 -> 1283 bytes .../AppIcon.appiconset/Icon-App-20x20@3x.png | Bin 0 -> 1588 bytes .../AppIcon.appiconset/Icon-App-29x29@1x.png | Bin 0 -> 1025 bytes .../AppIcon.appiconset/Icon-App-29x29@2x.png | Bin 0 -> 1716 bytes .../AppIcon.appiconset/Icon-App-29x29@3x.png | Bin 0 -> 1920 bytes .../AppIcon.appiconset/Icon-App-40x40@1x.png | Bin 0 -> 1283 bytes .../AppIcon.appiconset/Icon-App-40x40@2x.png | Bin 0 -> 1895 bytes .../AppIcon.appiconset/Icon-App-40x40@3x.png | Bin 0 -> 2665 bytes .../AppIcon.appiconset/Icon-App-60x60@2x.png | Bin 0 -> 2665 bytes .../AppIcon.appiconset/Icon-App-60x60@3x.png | Bin 0 -> 3831 bytes .../AppIcon.appiconset/Icon-App-76x76@1x.png | Bin 0 -> 1888 bytes .../AppIcon.appiconset/Icon-App-76x76@2x.png | Bin 0 -> 3294 bytes .../Icon-App-83.5x83.5@2x.png | Bin 0 -> 3612 bytes .../LaunchImage.imageset/Contents.json | 23 + .../LaunchImage.imageset/LaunchImage.png | Bin 0 -> 68 bytes .../LaunchImage.imageset/LaunchImage@2x.png | Bin 0 -> 68 bytes .../LaunchImage.imageset/LaunchImage@3x.png | Bin 0 -> 68 bytes .../LaunchImage.imageset/README.md | 5 + .../Runner/Base.lproj/LaunchScreen.storyboard | 37 ++ .../ios/Runner/Base.lproj/Main.storyboard | 26 + .../adaptive_app_demos/ios/Runner/Info.plist | 45 ++ .../ios/Runner/Runner-Bridging-Header.h | 1 + .../adaptive_app_demos/lib/app_model.dart | 45 ++ .../lib/global/device_size.dart | 26 + .../lib/global/device_type.dart | 18 + .../lib/global/styling.dart | 15 + .../lib/global/targeted_actions.dart | 189 ++++++ .../layout/adaptive_app_demos/lib/main.dart | 39 ++ .../lib/main_app_scaffold.dart | 167 +++++ .../lib/pages/adaptive_data_table_page.dart | 73 +++ .../lib/pages/adaptive_grid_page.dart | 114 ++++ .../lib/pages/adaptive_reflow_page.dart | 85 +++ .../lib/pages/focus_examples_page.dart | 202 +++++++ .../lib/pages/login_page.dart | 76 +++ .../lib/widgets/app_title_bar.dart | 63 ++ .../lib/widgets/buttons.dart | 58 ++ .../lib/widgets/ok_cancel_dialog.dart | 63 ++ .../widgets/scroll_view_with_scrollbars.dart | 28 + .../adaptive_app_demos/linux/.gitignore | 1 + .../adaptive_app_demos/linux/CMakeLists.txt | 116 ++++ .../linux/flutter/CMakeLists.txt | 91 +++ .../flutter/generated_plugin_registrant.cc | 13 + .../flutter/generated_plugin_registrant.h | 13 + .../linux/flutter/generated_plugins.cmake | 16 + .../layout/adaptive_app_demos/linux/main.cc | 6 + .../linux/my_application.cc | 105 ++++ .../adaptive_app_demos/linux/my_application.h | 18 + .../adaptive_app_demos/macos/.gitignore | 6 + .../macos/Flutter/Flutter-Debug.xcconfig | 1 + .../macos/Flutter/Flutter-Release.xcconfig | 1 + .../Flutter/GeneratedPluginRegistrant.swift | 12 + .../macos/Runner.xcodeproj/project.pbxproj | 572 ++++++++++++++++++ .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../xcshareddata/xcschemes/Runner.xcscheme | 89 +++ .../contents.xcworkspacedata | 7 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + .../macos/Runner/AppDelegate.swift | 9 + .../AppIcon.appiconset/Contents.json | 68 +++ .../AppIcon.appiconset/app_icon_1024.png | Bin 0 -> 46993 bytes .../AppIcon.appiconset/app_icon_128.png | Bin 0 -> 3276 bytes .../AppIcon.appiconset/app_icon_16.png | Bin 0 -> 1429 bytes .../AppIcon.appiconset/app_icon_256.png | Bin 0 -> 5933 bytes .../AppIcon.appiconset/app_icon_32.png | Bin 0 -> 1243 bytes .../AppIcon.appiconset/app_icon_512.png | Bin 0 -> 14800 bytes .../AppIcon.appiconset/app_icon_64.png | Bin 0 -> 1874 bytes .../macos/Runner/Base.lproj/MainMenu.xib | 339 +++++++++++ .../macos/Runner/Configs/AppInfo.xcconfig | 14 + .../macos/Runner/Configs/Debug.xcconfig | 2 + .../macos/Runner/Configs/Release.xcconfig | 2 + .../macos/Runner/Configs/Warnings.xcconfig | 13 + .../macos/Runner/DebugProfile.entitlements | 12 + .../macos/Runner/Info.plist | 32 + .../macos/Runner/MainFlutterWindow.swift | 21 + .../macos/Runner/Release.entitlements | 8 + .../ui/layout/adaptive_app_demos/pubspec.yaml | 24 + .../layout/adaptive_app_demos/web/favicon.png | Bin 0 -> 917 bytes .../adaptive_app_demos/web/icons/Icon-192.png | Bin 0 -> 5292 bytes .../adaptive_app_demos/web/icons/Icon-512.png | Bin 0 -> 8252 bytes .../layout/adaptive_app_demos/web/index.html | 98 +++ .../adaptive_app_demos/web/manifest.json | 23 + .../adaptive_app_demos/windows/.gitignore | 17 + .../adaptive_app_demos/windows/CMakeLists.txt | 95 +++ .../windows/flutter/CMakeLists.txt | 103 ++++ .../flutter/generated_plugin_registrant.cc | 12 + .../flutter/generated_plugin_registrant.h | 13 + .../windows/flutter/generated_plugins.cmake | 16 + .../windows/runner/CMakeLists.txt | 18 + .../windows/runner/Runner.rc | 121 ++++ .../windows/runner/flutter_window.cpp | 64 ++ .../windows/runner/flutter_window.h | 39 ++ .../windows/runner/main.cpp | 45 ++ .../windows/runner/resource.h | 16 + .../windows/runner/resources/app_icon.ico | Bin 0 -> 33772 bytes .../windows/runner/run_loop.cpp | 66 ++ .../windows/runner/run_loop.h | 40 ++ .../windows/runner/runner.exe.manifest | 20 + .../windows/runner/utils.cpp | 64 ++ .../adaptive_app_demos/windows/runner/utils.h | 19 + .../windows/runner/win32_window.cpp | 245 ++++++++ .../windows/runner/win32_window.h | 98 +++ .../ui/layout/building-adaptive-apps.md | 92 +-- 140 files changed, 5483 insertions(+), 34 deletions(-) create mode 100644 examples/ui/layout/adaptive_app_demos/.gitignore create mode 100644 examples/ui/layout/adaptive_app_demos/.metadata create mode 100644 examples/ui/layout/adaptive_app_demos/README.md create mode 100644 examples/ui/layout/adaptive_app_demos/android/.gitignore create mode 100644 examples/ui/layout/adaptive_app_demos/android/app/build.gradle create mode 100644 examples/ui/layout/adaptive_app_demos/android/app/src/debug/AndroidManifest.xml create mode 100644 examples/ui/layout/adaptive_app_demos/android/app/src/main/AndroidManifest.xml create mode 100644 examples/ui/layout/adaptive_app_demos/android/app/src/main/kotlin/com/example/adaptive_app_demos/MainActivity.kt create mode 100644 examples/ui/layout/adaptive_app_demos/android/app/src/main/res/drawable-v21/launch_background.xml create mode 100644 examples/ui/layout/adaptive_app_demos/android/app/src/main/res/drawable/launch_background.xml create mode 100644 examples/ui/layout/adaptive_app_demos/android/app/src/main/res/mipmap-hdpi/ic_launcher.png create mode 100644 examples/ui/layout/adaptive_app_demos/android/app/src/main/res/mipmap-mdpi/ic_launcher.png create mode 100644 examples/ui/layout/adaptive_app_demos/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png create mode 100644 examples/ui/layout/adaptive_app_demos/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png create mode 100644 examples/ui/layout/adaptive_app_demos/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png create mode 100644 examples/ui/layout/adaptive_app_demos/android/app/src/main/res/values-night/styles.xml create mode 100644 examples/ui/layout/adaptive_app_demos/android/app/src/main/res/values/styles.xml create mode 100644 examples/ui/layout/adaptive_app_demos/android/app/src/profile/AndroidManifest.xml create mode 100644 examples/ui/layout/adaptive_app_demos/android/build.gradle create mode 100644 examples/ui/layout/adaptive_app_demos/android/gradle.properties create mode 100644 examples/ui/layout/adaptive_app_demos/android/gradle/wrapper/gradle-wrapper.properties create mode 100644 examples/ui/layout/adaptive_app_demos/android/settings.gradle create mode 100644 examples/ui/layout/adaptive_app_demos/ios/.gitignore create mode 100644 examples/ui/layout/adaptive_app_demos/ios/Flutter/AppFrameworkInfo.plist create mode 100644 examples/ui/layout/adaptive_app_demos/ios/Flutter/Debug.xcconfig create mode 100644 examples/ui/layout/adaptive_app_demos/ios/Flutter/Release.xcconfig create mode 100644 examples/ui/layout/adaptive_app_demos/ios/Podfile create mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner.xcodeproj/project.pbxproj create mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata create mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings create mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme create mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner.xcworkspace/contents.xcworkspacedata create mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings create mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/AppDelegate.swift create mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json create mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png create mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png create mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png create mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png create mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png create mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png create mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png create mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png create mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png create mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png create mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png create mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png create mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png create mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png create mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png create mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json create mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png create mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png create mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png create mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md create mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/Base.lproj/LaunchScreen.storyboard create mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/Base.lproj/Main.storyboard create mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/Info.plist create mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/Runner-Bridging-Header.h create mode 100644 examples/ui/layout/adaptive_app_demos/lib/app_model.dart create mode 100644 examples/ui/layout/adaptive_app_demos/lib/global/device_size.dart create mode 100644 examples/ui/layout/adaptive_app_demos/lib/global/device_type.dart create mode 100644 examples/ui/layout/adaptive_app_demos/lib/global/styling.dart create mode 100644 examples/ui/layout/adaptive_app_demos/lib/global/targeted_actions.dart create mode 100644 examples/ui/layout/adaptive_app_demos/lib/main.dart create mode 100644 examples/ui/layout/adaptive_app_demos/lib/main_app_scaffold.dart create mode 100644 examples/ui/layout/adaptive_app_demos/lib/pages/adaptive_data_table_page.dart create mode 100644 examples/ui/layout/adaptive_app_demos/lib/pages/adaptive_grid_page.dart create mode 100644 examples/ui/layout/adaptive_app_demos/lib/pages/adaptive_reflow_page.dart create mode 100644 examples/ui/layout/adaptive_app_demos/lib/pages/focus_examples_page.dart create mode 100644 examples/ui/layout/adaptive_app_demos/lib/pages/login_page.dart create mode 100644 examples/ui/layout/adaptive_app_demos/lib/widgets/app_title_bar.dart create mode 100644 examples/ui/layout/adaptive_app_demos/lib/widgets/buttons.dart create mode 100644 examples/ui/layout/adaptive_app_demos/lib/widgets/ok_cancel_dialog.dart create mode 100644 examples/ui/layout/adaptive_app_demos/lib/widgets/scroll_view_with_scrollbars.dart create mode 100644 examples/ui/layout/adaptive_app_demos/linux/.gitignore create mode 100644 examples/ui/layout/adaptive_app_demos/linux/CMakeLists.txt create mode 100644 examples/ui/layout/adaptive_app_demos/linux/flutter/CMakeLists.txt create mode 100644 examples/ui/layout/adaptive_app_demos/linux/flutter/generated_plugin_registrant.cc create mode 100644 examples/ui/layout/adaptive_app_demos/linux/flutter/generated_plugin_registrant.h create mode 100644 examples/ui/layout/adaptive_app_demos/linux/flutter/generated_plugins.cmake create mode 100644 examples/ui/layout/adaptive_app_demos/linux/main.cc create mode 100644 examples/ui/layout/adaptive_app_demos/linux/my_application.cc create mode 100644 examples/ui/layout/adaptive_app_demos/linux/my_application.h create mode 100644 examples/ui/layout/adaptive_app_demos/macos/.gitignore create mode 100644 examples/ui/layout/adaptive_app_demos/macos/Flutter/Flutter-Debug.xcconfig create mode 100644 examples/ui/layout/adaptive_app_demos/macos/Flutter/Flutter-Release.xcconfig create mode 100644 examples/ui/layout/adaptive_app_demos/macos/Flutter/GeneratedPluginRegistrant.swift create mode 100644 examples/ui/layout/adaptive_app_demos/macos/Runner.xcodeproj/project.pbxproj create mode 100644 examples/ui/layout/adaptive_app_demos/macos/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 examples/ui/layout/adaptive_app_demos/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme create mode 100644 examples/ui/layout/adaptive_app_demos/macos/Runner.xcworkspace/contents.xcworkspacedata create mode 100644 examples/ui/layout/adaptive_app_demos/macos/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 examples/ui/layout/adaptive_app_demos/macos/Runner/AppDelegate.swift create mode 100644 examples/ui/layout/adaptive_app_demos/macos/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json create mode 100644 examples/ui/layout/adaptive_app_demos/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_1024.png create mode 100644 examples/ui/layout/adaptive_app_demos/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_128.png create mode 100644 examples/ui/layout/adaptive_app_demos/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_16.png create mode 100644 examples/ui/layout/adaptive_app_demos/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_256.png create mode 100644 examples/ui/layout/adaptive_app_demos/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_32.png create mode 100644 examples/ui/layout/adaptive_app_demos/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_512.png create mode 100644 examples/ui/layout/adaptive_app_demos/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_64.png create mode 100644 examples/ui/layout/adaptive_app_demos/macos/Runner/Base.lproj/MainMenu.xib create mode 100644 examples/ui/layout/adaptive_app_demos/macos/Runner/Configs/AppInfo.xcconfig create mode 100644 examples/ui/layout/adaptive_app_demos/macos/Runner/Configs/Debug.xcconfig create mode 100644 examples/ui/layout/adaptive_app_demos/macos/Runner/Configs/Release.xcconfig create mode 100644 examples/ui/layout/adaptive_app_demos/macos/Runner/Configs/Warnings.xcconfig create mode 100644 examples/ui/layout/adaptive_app_demos/macos/Runner/DebugProfile.entitlements create mode 100644 examples/ui/layout/adaptive_app_demos/macos/Runner/Info.plist create mode 100644 examples/ui/layout/adaptive_app_demos/macos/Runner/MainFlutterWindow.swift create mode 100644 examples/ui/layout/adaptive_app_demos/macos/Runner/Release.entitlements create mode 100644 examples/ui/layout/adaptive_app_demos/pubspec.yaml create mode 100644 examples/ui/layout/adaptive_app_demos/web/favicon.png create mode 100644 examples/ui/layout/adaptive_app_demos/web/icons/Icon-192.png create mode 100644 examples/ui/layout/adaptive_app_demos/web/icons/Icon-512.png create mode 100644 examples/ui/layout/adaptive_app_demos/web/index.html create mode 100644 examples/ui/layout/adaptive_app_demos/web/manifest.json create mode 100644 examples/ui/layout/adaptive_app_demos/windows/.gitignore create mode 100644 examples/ui/layout/adaptive_app_demos/windows/CMakeLists.txt create mode 100644 examples/ui/layout/adaptive_app_demos/windows/flutter/CMakeLists.txt create mode 100644 examples/ui/layout/adaptive_app_demos/windows/flutter/generated_plugin_registrant.cc create mode 100644 examples/ui/layout/adaptive_app_demos/windows/flutter/generated_plugin_registrant.h create mode 100644 examples/ui/layout/adaptive_app_demos/windows/flutter/generated_plugins.cmake create mode 100644 examples/ui/layout/adaptive_app_demos/windows/runner/CMakeLists.txt create mode 100644 examples/ui/layout/adaptive_app_demos/windows/runner/Runner.rc create mode 100644 examples/ui/layout/adaptive_app_demos/windows/runner/flutter_window.cpp create mode 100644 examples/ui/layout/adaptive_app_demos/windows/runner/flutter_window.h create mode 100644 examples/ui/layout/adaptive_app_demos/windows/runner/main.cpp create mode 100644 examples/ui/layout/adaptive_app_demos/windows/runner/resource.h create mode 100644 examples/ui/layout/adaptive_app_demos/windows/runner/resources/app_icon.ico create mode 100644 examples/ui/layout/adaptive_app_demos/windows/runner/run_loop.cpp create mode 100644 examples/ui/layout/adaptive_app_demos/windows/runner/run_loop.h create mode 100644 examples/ui/layout/adaptive_app_demos/windows/runner/runner.exe.manifest create mode 100644 examples/ui/layout/adaptive_app_demos/windows/runner/utils.cpp create mode 100644 examples/ui/layout/adaptive_app_demos/windows/runner/utils.h create mode 100644 examples/ui/layout/adaptive_app_demos/windows/runner/win32_window.cpp create mode 100644 examples/ui/layout/adaptive_app_demos/windows/runner/win32_window.h diff --git a/examples/ui/layout/adaptive_app_demos/.gitignore b/examples/ui/layout/adaptive_app_demos/.gitignore new file mode 100644 index 0000000000..0fa6b675c0 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/.gitignore @@ -0,0 +1,46 @@ +# Miscellaneous +*.class +*.log +*.pyc +*.swp +.DS_Store +.atom/ +.buildlog/ +.history +.svn/ + +# IntelliJ related +*.iml +*.ipr +*.iws +.idea/ + +# The .vscode folder contains launch configuration and tasks you configure in +# VS Code which you may wish to be included in version control, so this line +# is commented out by default. +#.vscode/ + +# Flutter/Dart/Pub related +**/doc/api/ +**/ios/Flutter/.last_build_id +.dart_tool/ +.flutter-plugins +.flutter-plugins-dependencies +.packages +.pub-cache/ +.pub/ +/build/ + +# Web related +lib/generated_plugin_registrant.dart + +# Symbolication related +app.*.symbols + +# Obfuscation related +app.*.map.json + +# Android Studio will place build artifacts here +/android/app/debug +/android/app/profile +/android/app/release diff --git a/examples/ui/layout/adaptive_app_demos/.metadata b/examples/ui/layout/adaptive_app_demos/.metadata new file mode 100644 index 0000000000..f62a5b01b9 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/.metadata @@ -0,0 +1,10 @@ +# This file tracks properties of this Flutter project. +# Used by Flutter tool to assess capabilities and perform upgrades etc. +# +# This file should be version controlled and should not be manually edited. + +version: + revision: 8264cb3e8a797eef39cbcd32bb56fd07790efb7f + channel: dev + +project_type: app diff --git a/examples/ui/layout/adaptive_app_demos/README.md b/examples/ui/layout/adaptive_app_demos/README.md new file mode 100644 index 0000000000..20e4857b9b --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/README.md @@ -0,0 +1,23 @@ +# adaptive_app_demos + +Demo code for adaptive app development techniques. + + +### Demonstrated in this repo: +* Login view + * re-flows from vertical to horizontal layout depending on screen size + * shows how to use horizontal constraints to stop an item from growing excessively large +* Main App Scaffold + * a responsive scaffold that changes from tab bar + drawer, to a combined side-menu for larger screens + * children are shared between widgets showing how you can reuse the same widget in multiple places +* A custom title bar is implemented for all platforms using a single widget + * VisualDensity is controlled with a button inside the title bar, and changes density across the entire app + * VisualDensity button is right-aligned on macOS to not conflict with native window controls +* AdaptiveGrid uses LayoutBuilder to create a responsive grid, + * //TODO: shows cross platform multi-select behavior + * //TODO: shows popups and right-click menu to delete + * //TODO: shows select all and delete behavior +* AdaptiveDataTable uses LayoutBuilder to add/remove columns in a table, depending on space available +* AdaptiveReflow uses LayoutBuilder to reflow between 3 different layout types: Vertical, Horizontal and Mixed. +* FocusExamples show various examples of how you can control focusable widgets and listen for key events +* Logout dialog contains adaptive logic to place the "Ok" button on the left-hand side on Windows, as per OS convention. diff --git a/examples/ui/layout/adaptive_app_demos/android/.gitignore b/examples/ui/layout/adaptive_app_demos/android/.gitignore new file mode 100644 index 0000000000..0a741cb43d --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/android/.gitignore @@ -0,0 +1,11 @@ +gradle-wrapper.jar +/.gradle +/captures/ +/gradlew +/gradlew.bat +/local.properties +GeneratedPluginRegistrant.java + +# Remember to never publicly share your keystore. +# See https://flutter.dev/docs/deployment/android#reference-the-keystore-from-the-app +key.properties diff --git a/examples/ui/layout/adaptive_app_demos/android/app/build.gradle b/examples/ui/layout/adaptive_app_demos/android/app/build.gradle new file mode 100644 index 0000000000..ef77b2485a --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/android/app/build.gradle @@ -0,0 +1,59 @@ +def localProperties = new Properties() +def localPropertiesFile = rootProject.file('local.properties') +if (localPropertiesFile.exists()) { + localPropertiesFile.withReader('UTF-8') { reader -> + localProperties.load(reader) + } +} + +def flutterRoot = localProperties.getProperty('flutter.sdk') +if (flutterRoot == null) { + throw new GradleException("Flutter SDK not found. Define location with flutter.sdk in the local.properties file.") +} + +def flutterVersionCode = localProperties.getProperty('flutter.versionCode') +if (flutterVersionCode == null) { + flutterVersionCode = '1' +} + +def flutterVersionName = localProperties.getProperty('flutter.versionName') +if (flutterVersionName == null) { + flutterVersionName = '1.0' +} + +apply plugin: 'com.android.application' +apply plugin: 'kotlin-android' +apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" + +android { + compileSdkVersion 30 + + sourceSets { + main.java.srcDirs += 'src/main/kotlin' + } + + defaultConfig { + // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). + applicationId "com.example.adaptive_app_demos" + minSdkVersion 16 + targetSdkVersion 30 + versionCode flutterVersionCode.toInteger() + versionName flutterVersionName + } + + buildTypes { + release { + // TODO: Add your own signing config for the release build. + // Signing with the debug keys for now, so `flutter run --release` works. + signingConfig signingConfigs.debug + } + } +} + +flutter { + source '../..' +} + +dependencies { + implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" +} diff --git a/examples/ui/layout/adaptive_app_demos/android/app/src/debug/AndroidManifest.xml b/examples/ui/layout/adaptive_app_demos/android/app/src/debug/AndroidManifest.xml new file mode 100644 index 0000000000..b40409917f --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/android/app/src/debug/AndroidManifest.xml @@ -0,0 +1,7 @@ + + + + diff --git a/examples/ui/layout/adaptive_app_demos/android/app/src/main/AndroidManifest.xml b/examples/ui/layout/adaptive_app_demos/android/app/src/main/AndroidManifest.xml new file mode 100644 index 0000000000..11dc0a3736 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/android/app/src/main/AndroidManifest.xml @@ -0,0 +1,41 @@ + + + + + + + + + + + + + + + + diff --git a/examples/ui/layout/adaptive_app_demos/android/app/src/main/kotlin/com/example/adaptive_app_demos/MainActivity.kt b/examples/ui/layout/adaptive_app_demos/android/app/src/main/kotlin/com/example/adaptive_app_demos/MainActivity.kt new file mode 100644 index 0000000000..bf1e86820b --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/android/app/src/main/kotlin/com/example/adaptive_app_demos/MainActivity.kt @@ -0,0 +1,6 @@ +package com.example.adaptive_app_demos + +import io.flutter.embedding.android.FlutterActivity + +class MainActivity: FlutterActivity() { +} diff --git a/examples/ui/layout/adaptive_app_demos/android/app/src/main/res/drawable-v21/launch_background.xml b/examples/ui/layout/adaptive_app_demos/android/app/src/main/res/drawable-v21/launch_background.xml new file mode 100644 index 0000000000..f74085f3f6 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/android/app/src/main/res/drawable-v21/launch_background.xml @@ -0,0 +1,12 @@ + + + + + + + + diff --git a/examples/ui/layout/adaptive_app_demos/android/app/src/main/res/drawable/launch_background.xml b/examples/ui/layout/adaptive_app_demos/android/app/src/main/res/drawable/launch_background.xml new file mode 100644 index 0000000000..304732f884 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/android/app/src/main/res/drawable/launch_background.xml @@ -0,0 +1,12 @@ + + + + + + + + diff --git a/examples/ui/layout/adaptive_app_demos/android/app/src/main/res/mipmap-hdpi/ic_launcher.png b/examples/ui/layout/adaptive_app_demos/android/app/src/main/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..db77bb4b7b0906d62b1847e87f15cdcacf6a4f29 GIT binary patch literal 544 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY3?!3`olAj~WQl7;NpOBzNqJ&XDuZK6ep0G} zXKrG8YEWuoN@d~6R2!h8bpbvhu0Wd6uZuB!w&u2PAxD2eNXD>P5D~Wn-+_Wa#27Xc zC?Zj|6r#X(-D3u$NCt}(Ms06KgJ4FxJVv{GM)!I~&n8Bnc94O7-Hd)cjDZswgC;Qs zO=b+9!WcT8F?0rF7!Uys2bs@gozCP?z~o%U|N3vA*22NaGQG zlg@K`O_XuxvZ&Ks^m&R!`&1=spLvfx7oGDKDwpwW`#iqdw@AL`7MR}m`rwr|mZgU`8P7SBkL78fFf!WnuYWm$5Z0 zNXhDbCv&49sM544K|?c)WrFfiZvCi9h0O)B3Pgg&ebxsLQ05GG~ AQ2+n{ literal 0 HcmV?d00001 diff --git a/examples/ui/layout/adaptive_app_demos/android/app/src/main/res/mipmap-mdpi/ic_launcher.png b/examples/ui/layout/adaptive_app_demos/android/app/src/main/res/mipmap-mdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..17987b79bb8a35cc66c3c1fd44f5a5526c1b78be GIT binary patch literal 442 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA3?vioaBc-sk|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5Xx&nMcT!A!W`0S9QKQy;}1Cl^CgaH=;G9cpY;r$Q>i*pfB zP2drbID<_#qf;rPZx^FqH)F_D#*k@@q03KywUtLX8Ua?`H+NMzkczFPK3lFz@i_kW%1NOn0|D2I9n9wzH8m|-tHjsw|9>@K=iMBhxvkv6m8Y-l zytQ?X=U+MF$@3 zt`~i=@j|6y)RWMK--}M|=T`o&^Ni>IoWKHEbBXz7?A@mgWoL>!*SXo`SZH-*HSdS+ yn*9;$7;m`l>wYBC5bq;=U}IMqLzqbYCidGC!)_gkIk_C@Uy!y&wkt5C($~2D>~)O*cj@FGjOCM)M>_ixfudOh)?xMu#Fs z#}Y=@YDTwOM)x{K_j*Q;dPdJ?Mz0n|pLRx{4n|)f>SXlmV)XB04CrSJn#dS5nK2lM zrZ9#~WelCp7&e13Y$jvaEXHskn$2V!!DN-nWS__6T*l;H&Fopn?A6HZ-6WRLFP=R` zqG+CE#d4|IbyAI+rJJ`&x9*T`+a=p|0O(+s{UBcyZdkhj=yS1>AirP+0R;mf2uMgM zC}@~JfByORAh4SyRgi&!(cja>F(l*O+nd+@4m$|6K6KDn_&uvCpV23&>G9HJp{xgg zoq1^2_p9@|WEo z*X_Uko@K)qYYv~>43eQGMdbiGbo>E~Q& zrYBH{QP^@Sti!`2)uG{irBBq@y*$B zi#&(U-*=fp74j)RyIw49+0MRPMRU)+a2r*PJ$L5roHt2$UjExCTZSbq%V!HeS7J$N zdG@vOZB4v_lF7Plrx+hxo7(fCV&}fHq)$ literal 0 HcmV?d00001 diff --git a/examples/ui/layout/adaptive_app_demos/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/examples/ui/layout/adaptive_app_demos/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..d5f1c8d34e7a88e3f88bea192c3a370d44689c3c GIT binary patch literal 1031 zcmeAS@N?(olHy`uVBq!ia0vp^6F``Q8Ax83A=Cw=BuiW)N`mv#O3D+9QW+dm@{>{( zJaZG%Q-e|yQz{EjrrIztFa`(sgt!6~Yi|1%a`XoT0ojZ}lNrNjb9xjc(B0U1_% zz5^97Xt*%oq$rQy4?0GKNfJ44uvxI)gC`h-NZ|&0-7(qS@?b!5r36oQ}zyZrNO3 zMO=Or+<~>+A&uN&E!^Sl+>xE!QC-|oJv`ApDhqC^EWD|@=#J`=d#Xzxs4ah}w&Jnc z$|q_opQ^2TrnVZ0o~wh<3t%W&flvYGe#$xqda2bR_R zvPYgMcHgjZ5nSA^lJr%;<&0do;O^tDDh~=pIxA#coaCY>&N%M2^tq^U%3DB@ynvKo}b?yu-bFc-u0JHzced$sg7S3zqI(2 z#Km{dPr7I=pQ5>FuK#)QwK?Y`E`B?nP+}U)I#c1+FM*1kNvWG|a(TpksZQ3B@sD~b zpQ2)*V*TdwjFOtHvV|;OsiDqHi=6%)o4b!)x$)%9pGTsE z-JL={-Ffv+T87W(Xpooq<`r*VzWQcgBN$$`u}f>-ZQI1BB8ykN*=e4rIsJx9>z}*o zo~|9I;xof literal 0 HcmV?d00001 diff --git a/examples/ui/layout/adaptive_app_demos/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/examples/ui/layout/adaptive_app_demos/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..4d6372eebdb28e45604e46eeda8dd24651419bc0 GIT binary patch literal 1443 zcmb`G{WsKk6vsdJTdFg%tJav9_E4vzrOaqkWF|A724Nly!y+?N9`YV6wZ}5(X(D_N(?!*n3`|_r0Hc?=PQw&*vnU?QTFY zB_MsH|!j$PP;I}?dppoE_gA(4uc!jV&0!l7_;&p2^pxNo>PEcNJv za5_RT$o2Mf!<+r?&EbHH6nMoTsDOa;mN(wv8RNsHpG)`^ymG-S5By8=l9iVXzN_eG%Xg2@Xeq76tTZ*dGh~Lo9vl;Zfs+W#BydUw zCkZ$o1LqWQO$FC9aKlLl*7x9^0q%0}$OMlp@Kk_jHXOjofdePND+j!A{q!8~Jn+s3 z?~~w@4?egS02}8NuulUA=L~QQfm;MzCGd)XhiftT;+zFO&JVyp2mBww?;QByS_1w! zrQlx%{^cMj0|Bo1FjwY@Q8?Hx0cIPF*@-ZRFpPc#bBw{5@tD(5%sClzIfl8WU~V#u zm5Q;_F!wa$BSpqhN>W@2De?TKWR*!ujY;Yylk_X5#~V!L*Gw~;$%4Q8~Mad z@`-kG?yb$a9cHIApZDVZ^U6Xkp<*4rU82O7%}0jjHlK{id@?-wpN*fCHXyXh(bLt* zPc}H-x0e4E&nQ>y%B-(EL=9}RyC%MyX=upHuFhAk&MLbsF0LP-q`XnH78@fT+pKPW zu72MW`|?8ht^tz$iC}ZwLp4tB;Q49K!QCF3@!iB1qOI=?w z7In!}F~ij(18UYUjnbmC!qKhPo%24?8U1x{7o(+?^Zu0Hx81|FuS?bJ0jgBhEMzf< zCgUq7r2OCB(`XkKcN-TL>u5y#dD6D!)5W?`O5)V^>jb)P)GBdy%t$uUMpf$SNV31$ zb||OojAbvMP?T@$h_ZiFLFVHDmbyMhJF|-_)HX3%m=CDI+ID$0^C>kzxprBW)hw(v zr!Gmda);ICoQyhV_oP5+C%?jcG8v+D@9f?Dk*!BxY}dazmrT@64UrP3hlslANK)bq z$67n83eh}OeW&SV@HG95P|bjfqJ7gw$e+`Hxo!4cx`jdK1bJ>YDSpGKLPZ^1cv$ek zIB?0S<#tX?SJCLWdMd{-ME?$hc7A$zBOdIJ)4!KcAwb=VMov)nK;9z>x~rfT1>dS+ zZ6#`2v@`jgbqq)P22H)Tx2CpmM^o1$B+xT6`(v%5xJ(?j#>Q$+rx_R|7TzDZe{J6q zG1*EcU%tE?!kO%^M;3aM6JN*LAKUVb^xz8-Pxo#jR5(-KBeLJvA@-gxNHx0M-ZJLl z;#JwQoh~9V?`UVo#}{6ka@II>++D@%KqGpMdlQ}?9E*wFcf5(#XQnP$Dk5~%iX^>f z%$y;?M0BLp{O3a(-4A?ewryHrrD%cx#Q^%KY1H zNre$ve+vceSLZcNY4U(RBX&)oZn*Py()h)XkE?PL$!bNb{N5FVI2Y%LKEm%yvpyTP z(1P?z~7YxD~Rf<(a@_y` literal 0 HcmV?d00001 diff --git a/examples/ui/layout/adaptive_app_demos/android/app/src/main/res/values-night/styles.xml b/examples/ui/layout/adaptive_app_demos/android/app/src/main/res/values-night/styles.xml new file mode 100644 index 0000000000..449a9f9308 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/android/app/src/main/res/values-night/styles.xml @@ -0,0 +1,18 @@ + + + + + + + diff --git a/examples/ui/layout/adaptive_app_demos/android/app/src/main/res/values/styles.xml b/examples/ui/layout/adaptive_app_demos/android/app/src/main/res/values/styles.xml new file mode 100644 index 0000000000..d74aa35c28 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/android/app/src/main/res/values/styles.xml @@ -0,0 +1,18 @@ + + + + + + + diff --git a/examples/ui/layout/adaptive_app_demos/android/app/src/profile/AndroidManifest.xml b/examples/ui/layout/adaptive_app_demos/android/app/src/profile/AndroidManifest.xml new file mode 100644 index 0000000000..b40409917f --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/android/app/src/profile/AndroidManifest.xml @@ -0,0 +1,7 @@ + + + + diff --git a/examples/ui/layout/adaptive_app_demos/android/build.gradle b/examples/ui/layout/adaptive_app_demos/android/build.gradle new file mode 100644 index 0000000000..c505a86352 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/android/build.gradle @@ -0,0 +1,31 @@ +buildscript { + ext.kotlin_version = '1.3.50' + repositories { + google() + jcenter() + } + + dependencies { + classpath 'com.android.tools.build:gradle:4.1.0' + classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" + } +} + +allprojects { + repositories { + google() + jcenter() + } +} + +rootProject.buildDir = '../build' +subprojects { + project.buildDir = "${rootProject.buildDir}/${project.name}" +} +subprojects { + project.evaluationDependsOn(':app') +} + +task clean(type: Delete) { + delete rootProject.buildDir +} diff --git a/examples/ui/layout/adaptive_app_demos/android/gradle.properties b/examples/ui/layout/adaptive_app_demos/android/gradle.properties new file mode 100644 index 0000000000..94adc3a3f9 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/android/gradle.properties @@ -0,0 +1,3 @@ +org.gradle.jvmargs=-Xmx1536M +android.useAndroidX=true +android.enableJetifier=true diff --git a/examples/ui/layout/adaptive_app_demos/android/gradle/wrapper/gradle-wrapper.properties b/examples/ui/layout/adaptive_app_demos/android/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000000..bc6a58afdd --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/android/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,6 @@ +#Fri Jun 23 08:50:38 CEST 2017 +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip diff --git a/examples/ui/layout/adaptive_app_demos/android/settings.gradle b/examples/ui/layout/adaptive_app_demos/android/settings.gradle new file mode 100644 index 0000000000..44e62bcf06 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/android/settings.gradle @@ -0,0 +1,11 @@ +include ':app' + +def localPropertiesFile = new File(rootProject.projectDir, "local.properties") +def properties = new Properties() + +assert localPropertiesFile.exists() +localPropertiesFile.withReader("UTF-8") { reader -> properties.load(reader) } + +def flutterSdkPath = properties.getProperty("flutter.sdk") +assert flutterSdkPath != null, "flutter.sdk not set in local.properties" +apply from: "$flutterSdkPath/packages/flutter_tools/gradle/app_plugin_loader.gradle" diff --git a/examples/ui/layout/adaptive_app_demos/ios/.gitignore b/examples/ui/layout/adaptive_app_demos/ios/.gitignore new file mode 100644 index 0000000000..151026b91b --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/ios/.gitignore @@ -0,0 +1,33 @@ +*.mode1v3 +*.mode2v3 +*.moved-aside +*.pbxuser +*.perspectivev3 +**/*sync/ +.sconsign.dblite +.tags* +**/.vagrant/ +**/DerivedData/ +Icon? +**/Pods/ +**/.symlinks/ +profile +xcuserdata +**/.generated/ +Flutter/App.framework +Flutter/Flutter.framework +Flutter/Flutter.podspec +Flutter/Generated.xcconfig +Flutter/ephemeral/ +Flutter/app.flx +Flutter/app.zip +Flutter/flutter_assets/ +Flutter/flutter_export_environment.sh +ServiceDefinitions.json +Runner/GeneratedPluginRegistrant.* + +# Exceptions to above rules. +!default.mode1v3 +!default.mode2v3 +!default.pbxuser +!default.perspectivev3 diff --git a/examples/ui/layout/adaptive_app_demos/ios/Flutter/AppFrameworkInfo.plist b/examples/ui/layout/adaptive_app_demos/ios/Flutter/AppFrameworkInfo.plist new file mode 100644 index 0000000000..9367d483e4 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/ios/Flutter/AppFrameworkInfo.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + App + CFBundleIdentifier + io.flutter.flutter.app + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + App + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.0 + CFBundleSignature + ???? + CFBundleVersion + 1.0 + MinimumOSVersion + 8.0 + + diff --git a/examples/ui/layout/adaptive_app_demos/ios/Flutter/Debug.xcconfig b/examples/ui/layout/adaptive_app_demos/ios/Flutter/Debug.xcconfig new file mode 100644 index 0000000000..ec97fc6f30 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/ios/Flutter/Debug.xcconfig @@ -0,0 +1,2 @@ +#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig" +#include "Generated.xcconfig" diff --git a/examples/ui/layout/adaptive_app_demos/ios/Flutter/Release.xcconfig b/examples/ui/layout/adaptive_app_demos/ios/Flutter/Release.xcconfig new file mode 100644 index 0000000000..c4855bfe20 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/ios/Flutter/Release.xcconfig @@ -0,0 +1,2 @@ +#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig" +#include "Generated.xcconfig" diff --git a/examples/ui/layout/adaptive_app_demos/ios/Podfile b/examples/ui/layout/adaptive_app_demos/ios/Podfile new file mode 100644 index 0000000000..1e8c3c90a5 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/ios/Podfile @@ -0,0 +1,41 @@ +# Uncomment this line to define a global platform for your project +# platform :ios, '9.0' + +# CocoaPods analytics sends network stats synchronously affecting flutter build latency. +ENV['COCOAPODS_DISABLE_STATS'] = 'true' + +project 'Runner', { + 'Debug' => :debug, + 'Profile' => :release, + 'Release' => :release, +} + +def flutter_root + generated_xcode_build_settings_path = File.expand_path(File.join('..', 'Flutter', 'Generated.xcconfig'), __FILE__) + unless File.exist?(generated_xcode_build_settings_path) + raise "#{generated_xcode_build_settings_path} must exist. If you're running pod install manually, make sure flutter pub get is executed first" + end + + File.foreach(generated_xcode_build_settings_path) do |line| + matches = line.match(/FLUTTER_ROOT\=(.*)/) + return matches[1].strip if matches + end + raise "FLUTTER_ROOT not found in #{generated_xcode_build_settings_path}. Try deleting Generated.xcconfig, then run flutter pub get" +end + +require File.expand_path(File.join('packages', 'flutter_tools', 'bin', 'podhelper'), flutter_root) + +flutter_ios_podfile_setup + +target 'Runner' do + use_frameworks! + use_modular_headers! + + flutter_install_all_ios_pods File.dirname(File.realpath(__FILE__)) +end + +post_install do |installer| + installer.pods_project.targets.each do |target| + flutter_additional_ios_build_settings(target) + end +end diff --git a/examples/ui/layout/adaptive_app_demos/ios/Runner.xcodeproj/project.pbxproj b/examples/ui/layout/adaptive_app_demos/ios/Runner.xcodeproj/project.pbxproj new file mode 100644 index 0000000000..5fda16fdba --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/ios/Runner.xcodeproj/project.pbxproj @@ -0,0 +1,471 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 46; + objects = { + +/* Begin PBXBuildFile section */ + 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; }; + 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; }; + 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; }; + 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; }; + 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; }; + 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; }; +/* End PBXBuildFile section */ + +/* Begin PBXCopyFilesBuildPhase section */ + 9705A1C41CF9048500538489 /* Embed Frameworks */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + ); + name = "Embed Frameworks"; + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXCopyFilesBuildPhase section */ + +/* Begin PBXFileReference section */ + 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = ""; }; + 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = ""; }; + 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = ""; }; + 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = ""; }; + 74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; + 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = ""; }; + 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = ""; }; + 9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = ""; }; + 97C146EE1CF9000F007C117D /* Runner.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Runner.app; sourceTree = BUILT_PRODUCTS_DIR; }; + 97C146FB1CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; + 97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; + 97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; + 97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 97C146EB1CF9000F007C117D /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 9740EEB11CF90186004384FC /* Flutter */ = { + isa = PBXGroup; + children = ( + 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */, + 9740EEB21CF90195004384FC /* Debug.xcconfig */, + 7AFA3C8E1D35360C0083082E /* Release.xcconfig */, + 9740EEB31CF90195004384FC /* Generated.xcconfig */, + ); + name = Flutter; + sourceTree = ""; + }; + 97C146E51CF9000F007C117D = { + isa = PBXGroup; + children = ( + 9740EEB11CF90186004384FC /* Flutter */, + 97C146F01CF9000F007C117D /* Runner */, + 97C146EF1CF9000F007C117D /* Products */, + ); + sourceTree = ""; + }; + 97C146EF1CF9000F007C117D /* Products */ = { + isa = PBXGroup; + children = ( + 97C146EE1CF9000F007C117D /* Runner.app */, + ); + name = Products; + sourceTree = ""; + }; + 97C146F01CF9000F007C117D /* Runner */ = { + isa = PBXGroup; + children = ( + 97C146FA1CF9000F007C117D /* Main.storyboard */, + 97C146FD1CF9000F007C117D /* Assets.xcassets */, + 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */, + 97C147021CF9000F007C117D /* Info.plist */, + 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */, + 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */, + 74858FAE1ED2DC5600515810 /* AppDelegate.swift */, + 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */, + ); + path = Runner; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 97C146ED1CF9000F007C117D /* Runner */ = { + isa = PBXNativeTarget; + buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */; + buildPhases = ( + 9740EEB61CF901F6004384FC /* Run Script */, + 97C146EA1CF9000F007C117D /* Sources */, + 97C146EB1CF9000F007C117D /* Frameworks */, + 97C146EC1CF9000F007C117D /* Resources */, + 9705A1C41CF9048500538489 /* Embed Frameworks */, + 3B06AD1E1E4923F5004D2608 /* Thin Binary */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = Runner; + productName = Runner; + productReference = 97C146EE1CF9000F007C117D /* Runner.app */; + productType = "com.apple.product-type.application"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 97C146E61CF9000F007C117D /* Project object */ = { + isa = PBXProject; + attributes = { + LastUpgradeCheck = 1020; + ORGANIZATIONNAME = ""; + TargetAttributes = { + 97C146ED1CF9000F007C117D = { + CreatedOnToolsVersion = 7.3.1; + LastSwiftMigration = 1100; + }; + }; + }; + buildConfigurationList = 97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */; + compatibilityVersion = "Xcode 9.3"; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + ); + mainGroup = 97C146E51CF9000F007C117D; + productRefGroup = 97C146EF1CF9000F007C117D /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 97C146ED1CF9000F007C117D /* Runner */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 97C146EC1CF9000F007C117D /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */, + 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */, + 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */, + 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXShellScriptBuildPhase section */ + 3B06AD1E1E4923F5004D2608 /* Thin Binary */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = "Thin Binary"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin"; + }; + 9740EEB61CF901F6004384FC /* Run Script */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = "Run Script"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build"; + }; +/* End PBXShellScriptBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 97C146EA1CF9000F007C117D /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */, + 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXVariantGroup section */ + 97C146FA1CF9000F007C117D /* Main.storyboard */ = { + isa = PBXVariantGroup; + children = ( + 97C146FB1CF9000F007C117D /* Base */, + ); + name = Main.storyboard; + sourceTree = ""; + }; + 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */ = { + isa = PBXVariantGroup; + children = ( + 97C147001CF9000F007C117D /* Base */, + ); + name = LaunchScreen.storyboard; + sourceTree = ""; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + 249021D3217E4FDB00AE95B9 /* Profile */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; + MTL_ENABLE_DEBUG_INFO = NO; + SDKROOT = iphoneos; + SUPPORTED_PLATFORMS = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Profile; + }; + 249021D4217E4FDB00AE95B9 /* Profile */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; + ENABLE_BITCODE = NO; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.example.adaptiveAppDemos; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Profile; + }; + 97C147031CF9000F007C117D /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; + MTL_ENABLE_DEBUG_INFO = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + 97C147041CF9000F007C117D /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; + MTL_ENABLE_DEBUG_INFO = NO; + SDKROOT = iphoneos; + SUPPORTED_PLATFORMS = iphoneos; + SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + 97C147061CF9000F007C117D /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 9740EEB21CF90195004384FC /* Debug.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; + ENABLE_BITCODE = NO; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.example.adaptiveAppDemos; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Debug; + }; + 97C147071CF9000F007C117D /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; + ENABLE_BITCODE = NO; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.example.adaptiveAppDemos; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; + SWIFT_VERSION = 5.0; + VERSIONING_SYSTEM = "apple-generic"; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 97C147031CF9000F007C117D /* Debug */, + 97C147041CF9000F007C117D /* Release */, + 249021D3217E4FDB00AE95B9 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 97C147061CF9000F007C117D /* Debug */, + 97C147071CF9000F007C117D /* Release */, + 249021D4217E4FDB00AE95B9 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 97C146E61CF9000F007C117D /* Project object */; +} diff --git a/examples/ui/layout/adaptive_app_demos/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/examples/ui/layout/adaptive_app_demos/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000000..919434a625 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/examples/ui/layout/adaptive_app_demos/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/examples/ui/layout/adaptive_app_demos/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 0000000000..18d981003d --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/examples/ui/layout/adaptive_app_demos/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/examples/ui/layout/adaptive_app_demos/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings new file mode 100644 index 0000000000..f9b0d7c5ea --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings @@ -0,0 +1,8 @@ + + + + + PreviewsEnabled + + + diff --git a/examples/ui/layout/adaptive_app_demos/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/examples/ui/layout/adaptive_app_demos/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme new file mode 100644 index 0000000000..a28140cfdb --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme @@ -0,0 +1,91 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/examples/ui/layout/adaptive_app_demos/ios/Runner.xcworkspace/contents.xcworkspacedata b/examples/ui/layout/adaptive_app_demos/ios/Runner.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000000..1d526a16ed --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/ios/Runner.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/examples/ui/layout/adaptive_app_demos/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/examples/ui/layout/adaptive_app_demos/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 0000000000..18d981003d --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/examples/ui/layout/adaptive_app_demos/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/examples/ui/layout/adaptive_app_demos/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings new file mode 100644 index 0000000000..f9b0d7c5ea --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings @@ -0,0 +1,8 @@ + + + + + PreviewsEnabled + + + diff --git a/examples/ui/layout/adaptive_app_demos/ios/Runner/AppDelegate.swift b/examples/ui/layout/adaptive_app_demos/ios/Runner/AppDelegate.swift new file mode 100644 index 0000000000..70693e4a8c --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/ios/Runner/AppDelegate.swift @@ -0,0 +1,13 @@ +import UIKit +import Flutter + +@UIApplicationMain +@objc class AppDelegate: FlutterAppDelegate { + override func application( + _ application: UIApplication, + didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]? + ) -> Bool { + GeneratedPluginRegistrant.register(with: self) + return super.application(application, didFinishLaunchingWithOptions: launchOptions) + } +} diff --git a/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json b/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json new file mode 100644 index 0000000000..d36b1fab2d --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -0,0 +1,122 @@ +{ + "images" : [ + { + "size" : "20x20", + "idiom" : "iphone", + "filename" : "Icon-App-20x20@2x.png", + "scale" : "2x" + }, + { + "size" : "20x20", + "idiom" : "iphone", + "filename" : "Icon-App-20x20@3x.png", + "scale" : "3x" + }, + { + "size" : "29x29", + "idiom" : "iphone", + "filename" : "Icon-App-29x29@1x.png", + "scale" : "1x" + }, + { + "size" : "29x29", + "idiom" : "iphone", + "filename" : "Icon-App-29x29@2x.png", + "scale" : "2x" + }, + { + "size" : "29x29", + "idiom" : "iphone", + "filename" : "Icon-App-29x29@3x.png", + "scale" : "3x" + }, + { + "size" : "40x40", + "idiom" : "iphone", + "filename" : "Icon-App-40x40@2x.png", + "scale" : "2x" + }, + { + "size" : "40x40", + "idiom" : "iphone", + "filename" : "Icon-App-40x40@3x.png", + "scale" : "3x" + }, + { + "size" : "60x60", + "idiom" : "iphone", + "filename" : "Icon-App-60x60@2x.png", + "scale" : "2x" + }, + { + "size" : "60x60", + "idiom" : "iphone", + "filename" : "Icon-App-60x60@3x.png", + "scale" : "3x" + }, + { + "size" : "20x20", + "idiom" : "ipad", + "filename" : "Icon-App-20x20@1x.png", + "scale" : "1x" + }, + { + "size" : "20x20", + "idiom" : "ipad", + "filename" : "Icon-App-20x20@2x.png", + "scale" : "2x" + }, + { + "size" : "29x29", + "idiom" : "ipad", + "filename" : "Icon-App-29x29@1x.png", + "scale" : "1x" + }, + { + "size" : "29x29", + "idiom" : "ipad", + "filename" : "Icon-App-29x29@2x.png", + "scale" : "2x" + }, + { + "size" : "40x40", + "idiom" : "ipad", + "filename" : "Icon-App-40x40@1x.png", + "scale" : "1x" + }, + { + "size" : "40x40", + "idiom" : "ipad", + "filename" : "Icon-App-40x40@2x.png", + "scale" : "2x" + }, + { + "size" : "76x76", + "idiom" : "ipad", + "filename" : "Icon-App-76x76@1x.png", + "scale" : "1x" + }, + { + "size" : "76x76", + "idiom" : "ipad", + "filename" : "Icon-App-76x76@2x.png", + "scale" : "2x" + }, + { + "size" : "83.5x83.5", + "idiom" : "ipad", + "filename" : "Icon-App-83.5x83.5@2x.png", + "scale" : "2x" + }, + { + "size" : "1024x1024", + "idiom" : "ios-marketing", + "filename" : "Icon-App-1024x1024@1x.png", + "scale" : "1x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} diff --git a/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png b/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png new file mode 100644 index 0000000000000000000000000000000000000000..dc9ada4725e9b0ddb1deab583e5b5102493aa332 GIT binary patch literal 10932 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 literal 0 HcmV?d00001 diff --git a/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png b/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..f091b6b0bca859a3f474b03065bef75ba58a9e4c GIT binary patch literal 1588 zcmV-42Fv-0P)C1SqPt}wig>|5Crh^=oyX$BK<}M8eLU3e2hGT;=G|!_SP)7zNI6fqUMB=)y zRAZ>eDe#*r`yDAVgB_R*LB*MAc)8(b{g{9McCXW!lq7r(btRoB9!8B-#AI6JMb~YFBEvdsV)`mEQO^&#eRKx@b&x- z5lZm*!WfD8oCLzfHGz#u7sT0^VLMI1MqGxF^v+`4YYnVYgk*=kU?HsSz{v({E3lb9 z>+xILjBN)t6`=g~IBOelGQ(O990@BfXf(DRI5I$qN$0Gkz-FSc$3a+2fX$AedL4u{ z4V+5Ong(9LiGcIKW?_352sR;LtDPmPJXI{YtT=O8=76o9;*n%_m|xo!i>7$IrZ-{l z-x3`7M}qzHsPV@$v#>H-TpjDh2UE$9g6sysUREDy_R(a)>=eHw-WAyfIN z*qb!_hW>G)Tu8nSw9yn#3wFMiLcfc4pY0ek1}8(NqkBR@t4{~oC>ryc-h_ByH(Cg5 z>ao-}771+xE3um9lWAY1FeQFxowa1(!J(;Jg*wrg!=6FdRX+t_<%z&d&?|Bn){>zm zZQj(aA_HeBY&OC^jj*)N`8fa^ePOU72VpInJoI1?`ty#lvlNzs(&MZX+R%2xS~5Kh zX*|AU4QE#~SgPzOXe9>tRj>hjU@c1k5Y_mW*Jp3fI;)1&g3j|zDgC+}2Q_v%YfDax z!?umcN^n}KYQ|a$Lr+51Nf9dkkYFSjZZjkma$0KOj+;aQ&721~t7QUKx61J3(P4P1 zstI~7-wOACnWP4=8oGOwz%vNDqD8w&Q`qcNGGrbbf&0s9L0De{4{mRS?o0MU+nR_! zrvshUau0G^DeMhM_v{5BuLjb#Hh@r23lDAk8oF(C+P0rsBpv85EP>4CVMx#04MOfG z;P%vktHcXwTj~+IE(~px)3*MY77e}p#|c>TD?sMatC0Tu4iKKJ0(X8jxQY*gYtxsC z(zYC$g|@+I+kY;dg_dE>scBf&bP1Nc@Hz<3R)V`=AGkc;8CXqdi=B4l2k|g;2%#m& z*jfX^%b!A8#bI!j9-0Fi0bOXl(-c^AB9|nQaE`*)Hw+o&jS9@7&Gov#HbD~#d{twV zXd^Tr^mWLfFh$@Dr$e;PBEz4(-2q1FF0}c;~B5sA}+Q>TOoP+t>wf)V9Iy=5ruQa;z)y zI9C9*oUga6=hxw6QasLPnee@3^Rr*M{CdaL5=R41nLs(AHk_=Y+A9$2&H(B7!_pURs&8aNw7?`&Z&xY_Ye z)~D5Bog^td-^QbUtkTirdyK^mTHAOuptDflut!#^lnKqU md>ggs(5nOWAqO?umG&QVYK#ibz}*4>0000U6E9hRK9^#O7(mu>ETqrXGsduA8$)?`v2seloOCza43C{NQ$$gAOH**MCn0Q?+L7dl7qnbRdqZ8LSVp1ItDxhxD?t@5_yHg6A8yI zC*%Wgg22K|8E#!~cTNYR~@Y9KepMPrrB8cABapAFa=`H+UGhkXUZV1GnwR1*lPyZ;*K(i~2gp|@bzp8}og7e*#% zEnr|^CWdVV!-4*Y_7rFvlww2Ze+>j*!Z!pQ?2l->4q#nqRu9`ELo6RMS5=br47g_X zRw}P9a7RRYQ%2Vsd0Me{_(EggTnuN6j=-?uFS6j^u69elMypu?t>op*wBx<=Wx8?( ztpe^(fwM6jJX7M-l*k3kEpWOl_Vk3@(_w4oc}4YF4|Rt=2V^XU?#Yz`8(e?aZ@#li0n*=g^qOcVpd-Wbok=@b#Yw zqn8u9a)z>l(1kEaPYZ6hwubN6i<8QHgsu0oE) ziJ(p;Wxm>sf!K+cw>R-(^Y2_bahB+&KI9y^);#0qt}t-$C|Bo71lHi{_+lg#f%RFy z0um=e3$K3i6K{U_4K!EX?F&rExl^W|G8Z8;`5z-k}OGNZ0#WVb$WCpQu-_YsiqKP?BB# vzVHS-CTUF4Ozn5G+mq_~Qqto~ahA+K`|lyv3(-e}00000NkvXXu0mjfd`9t{ literal 0 HcmV?d00001 diff --git a/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png b/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..d0ef06e7edb86cdfe0d15b4b0d98334a86163658 GIT binary patch literal 1716 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 literal 0 HcmV?d00001 diff --git a/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png b/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..c8f9ed8f5cee1c98386d13b17e89f719e83555b2 GIT binary patch literal 1895 zcmV-t2blPYP)FQtfgmafE#=YDCq`qUBt#QpG%*H6QHY765~R=q zZ6iudfM}q!Pz#~9JgOi8QJ|DSu?1-*(kSi1K4#~5?#|rh?sS)(-JQqX*}ciXJ56_H zdw=^s_srbAdqxlvGyrgGet#6T7_|j;95sL%MtM;q86vOxKM$f#puR)Bjv9Zvz9-di zXOTSsZkM83)E9PYBXC<$6(|>lNLVBb&&6y{NByFCp%6+^ALR@NCTse_wqvNmSWI-m z!$%KlHFH2omF!>#%1l3LTZg(s7eof$7*xB)ZQ0h?ejh?Ta9fDv59+u#MokW+1t8Zb zgHv%K(u9G^Lv`lh#f3<6!JVTL3(dCpxHbnbA;kKqQyd1~^Xe0VIaYBSWm6nsr;dFj z4;G-RyL?cYgsN1{L4ZFFNa;8)Rv0fM0C(~Tkit94 zz#~A)59?QjD&pAPSEQ)p8gP|DS{ng)j=2ux)_EzzJ773GmQ_Cic%3JJhC0t2cx>|v zJcVusIB!%F90{+}8hG3QU4KNeKmK%T>mN57NnCZ^56=0?&3@!j>a>B43pi{!u z7JyDj7`6d)qVp^R=%j>UIY6f+3`+qzIc!Y_=+uN^3BYV|o+$vGo-j-Wm<10%A=(Yk^beI{t%ld@yhKjq0iNjqN4XMGgQtbKubPM$JWBz}YA65k%dm*awtC^+f;a-x4+ddbH^7iDWGg&N0n#MW{kA|=8iMUiFYvMoDY@sPC#t$55gn6ykUTPAr`a@!(;np824>2xJthS z*ZdmT`g5-`BuJs`0LVhz+D9NNa3<=6m;cQLaF?tCv8)zcRSh66*Z|vXhG@$I%U~2l z?`Q zykI#*+rQ=z6Jm=Bui-SfpDYLA=|vzGE(dYm=OC8XM&MDo7ux4UF1~0J1+i%aCUpRe zt3L_uNyQ*cE(38Uy03H%I*)*Bh=Lb^Xj3?I^Hnbeq72(EOK^Y93CNp*uAA{5Lc=ky zx=~RKa4{iTm{_>_vSCm?$Ej=i6@=m%@VvAITnigVg{&@!7CDgs908761meDK5azA} z4?=NOH|PdvabgJ&fW2{Mo$Q0CcD8Qc84%{JPYt5EiG{MdLIAeX%T=D7NIP4%Hw}p9 zg)==!2Lbp#j{u_}hMiao9=!VSyx0gHbeCS`;q&vzeq|fs`y&^X-lso(Ls@-706qmA z7u*T5PMo_w3{se1t2`zWeO^hOvTsohG_;>J0wVqVe+n)AbQCx)yh9;w+J6?NF5Lmo zecS@ieAKL8%bVd@+-KT{yI|S}O>pYckUFs;ry9Ow$CD@ztz5K-*D$^{i(_1llhSh^ zEkL$}tsQt5>QA^;QgjgIfBDmcOgi5YDyu?t6vSnbp=1+@6D& z5MJ}B8q;bRlVoxasyhcUF1+)o`&3r0colr}QJ3hcSdLu;9;td>kf@Tcn<@9sIx&=m z;AD;SCh95=&p;$r{Xz3iWCO^MX83AGJ(yH&eTXgv|0=34#-&WAmw{)U7OU9!Wz^!7 zZ%jZFi@JR;>Mhi7S>V7wQ176|FdW2m?&`qa(ScO^CFPR80HucLHOTy%5s*HR0^8)i h0WYBP*#0Ks^FNSabJA*5${_#%002ovPDHLkV1oKhTl@e3 literal 0 HcmV?d00001 diff --git a/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png b/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..a6d6b8609df07bf62e5100a53a01510388bd2b22 GIT binary patch literal 2665 zcmV-v3YPVWP)oFh3q0MFesq&64WThn3$;G69TfjsAv=f2G9}p zgSx99+!YV6qME!>9MD13x)k(+XE7W?_O4LoLb5ND8 zaV{9+P@>42xDfRiYBMSgD$0!vssptcb;&?u9u(LLBKmkZ>RMD=kvD3h`sk6!QYtBa ztlZI#nu$8lJ^q2Z79UTgZe>BU73(Aospiq+?SdMt8lDZ;*?@tyWVZVS_Q7S&*tJaiRlJ z+aSMOmbg3@h5}v;A*c8SbqM3icg-`Cnwl;7Ts%A1RkNIp+Txl-Ckkvg4oxrqGA5ewEgYqwtECD<_3Egu)xGllKt&J8g&+=ac@Jq4-?w6M3b*>w5 z69N3O%=I^6&UL5gZ!}trC7bUj*12xLdkNs~Bz4QdJJ*UDZox2UGR}SNg@lmOvhCc~ z*f_UeXv(=#I#*7>VZx2ObEN~UoGUTl=-@)E;YtCRZ>SVp$p9yG5hEFZ!`wI!spd)n zSk+vK0Vin7FL{7f&6OB%f;SH22dtbcF<|9fi2Fp%q4kxL!b1#l^)8dUwJ zwEf{(wJj@8iYDVnKB`eSU+;ml-t2`@%_)0jDM`+a46xhDbBj2+&Ih>1A>6aky#(-SYyE{R3f#y57wfLs z6w1p~$bp;6!9DX$M+J~S@D6vJAaElETnsX4h9a5tvPhC3L@qB~bOzkL@^z0k_hS{T4PF*TDrgdXp+dzsE? z>V|VR035Pl9n5&-RePFdS{7KAr2vPOqR9=M$vXA1Yy5>w;EsF`;OK{2pkn-kpp9Pw z)r;5JfJKKaT$4qCb{TaXHjb$QA{y0EYy*+b1XI;6Ah- zw13P)xT`>~eFoJC!>{2XL(a_#upp3gaR1#5+L(Jmzp4TBnx{~WHedpJ1ch8JFk~Sw z>F+gN+i+VD?gMXwcIhn8rz`>e>J^TI3E-MW>f}6R-pL}>WMOa0k#jN+`RyUVUC;#D zg|~oS^$6%wpF{^Qr+}X>0PKcr3Fc&>Z>uv@C);pwDs@2bZWhYP!rvGx?_|q{d`t<*XEb#=aOb=N+L@CVBGqImZf&+a zCQEa3$~@#kC);pasdG=f6tuIi0PO-y&tvX%>Mv=oY3U$nD zJ#gMegnQ46pq+3r=;zmgcG+zRc9D~c>z+jo9&D+`E6$LmyFqlmCYw;-Zooma{sR@~ z)_^|YL1&&@|GXo*pivH7k!msl+$Sew3%XJnxajt0K%3M6Bd&YFNy9}tWG^aovK2eX z1aL1%7;KRDrA@eG-Wr6w+;*H_VD~qLiVI`{_;>o)k`{8xa3EJT1O_>#iy_?va0eR? zDV=N%;Zjb%Z2s$@O>w@iqt!I}tLjGk!=p`D23I}N4Be@$(|iSA zf3Ih7b<{zqpDB4WF_5X1(peKe+rASze%u8eKLn#KKXt;UZ+Adf$_TO+vTqshLLJ5c z52HucO=lrNVae5XWOLm!V@n-ObU11!b+DN<$RuU+YsrBq*lYT;?AwJpmNKniF0Q1< zJCo>Q$=v$@&y=sj6{r!Y&y&`0$-I}S!H_~pI&2H8Z1C|BX4VgZ^-! zje3-;x0PBD!M`v*J_)rL^+$<1VJhH*2Fi~aA7s&@_rUHYJ9zD=M%4AFQ`}k8OC$9s XsPq=LnkwKG00000NkvXXu0mjfhAk5^ literal 0 HcmV?d00001 diff --git a/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png b/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..a6d6b8609df07bf62e5100a53a01510388bd2b22 GIT binary patch literal 2665 zcmV-v3YPVWP)oFh3q0MFesq&64WThn3$;G69TfjsAv=f2G9}p zgSx99+!YV6qME!>9MD13x)k(+XE7W?_O4LoLb5ND8 zaV{9+P@>42xDfRiYBMSgD$0!vssptcb;&?u9u(LLBKmkZ>RMD=kvD3h`sk6!QYtBa ztlZI#nu$8lJ^q2Z79UTgZe>BU73(Aospiq+?SdMt8lDZ;*?@tyWVZVS_Q7S&*tJaiRlJ z+aSMOmbg3@h5}v;A*c8SbqM3icg-`Cnwl;7Ts%A1RkNIp+Txl-Ckkvg4oxrqGA5ewEgYqwtECD<_3Egu)xGllKt&J8g&+=ac@Jq4-?w6M3b*>w5 z69N3O%=I^6&UL5gZ!}trC7bUj*12xLdkNs~Bz4QdJJ*UDZox2UGR}SNg@lmOvhCc~ z*f_UeXv(=#I#*7>VZx2ObEN~UoGUTl=-@)E;YtCRZ>SVp$p9yG5hEFZ!`wI!spd)n zSk+vK0Vin7FL{7f&6OB%f;SH22dtbcF<|9fi2Fp%q4kxL!b1#l^)8dUwJ zwEf{(wJj@8iYDVnKB`eSU+;ml-t2`@%_)0jDM`+a46xhDbBj2+&Ih>1A>6aky#(-SYyE{R3f#y57wfLs z6w1p~$bp;6!9DX$M+J~S@D6vJAaElETnsX4h9a5tvPhC3L@qB~bOzkL@^z0k_hS{T4PF*TDrgdXp+dzsE? z>V|VR035Pl9n5&-RePFdS{7KAr2vPOqR9=M$vXA1Yy5>w;EsF`;OK{2pkn-kpp9Pw z)r;5JfJKKaT$4qCb{TaXHjb$QA{y0EYy*+b1XI;6Ah- zw13P)xT`>~eFoJC!>{2XL(a_#upp3gaR1#5+L(Jmzp4TBnx{~WHedpJ1ch8JFk~Sw z>F+gN+i+VD?gMXwcIhn8rz`>e>J^TI3E-MW>f}6R-pL}>WMOa0k#jN+`RyUVUC;#D zg|~oS^$6%wpF{^Qr+}X>0PKcr3Fc&>Z>uv@C);pwDs@2bZWhYP!rvGx?_|q{d`t<*XEb#=aOb=N+L@CVBGqImZf&+a zCQEa3$~@#kC);pasdG=f6tuIi0PO-y&tvX%>Mv=oY3U$nD zJ#gMegnQ46pq+3r=;zmgcG+zRc9D~c>z+jo9&D+`E6$LmyFqlmCYw;-Zooma{sR@~ z)_^|YL1&&@|GXo*pivH7k!msl+$Sew3%XJnxajt0K%3M6Bd&YFNy9}tWG^aovK2eX z1aL1%7;KRDrA@eG-Wr6w+;*H_VD~qLiVI`{_;>o)k`{8xa3EJT1O_>#iy_?va0eR? zDV=N%;Zjb%Z2s$@O>w@iqt!I}tLjGk!=p`D23I}N4Be@$(|iSA zf3Ih7b<{zqpDB4WF_5X1(peKe+rASze%u8eKLn#KKXt;UZ+Adf$_TO+vTqshLLJ5c z52HucO=lrNVae5XWOLm!V@n-ObU11!b+DN<$RuU+YsrBq*lYT;?AwJpmNKniF0Q1< zJCo>Q$=v$@&y=sj6{r!Y&y&`0$-I}S!H_~pI&2H8Z1C|BX4VgZ^-! zje3-;x0PBD!M`v*J_)rL^+$<1VJhH*2Fi~aA7s&@_rUHYJ9zD=M%4AFQ`}k8OC$9s XsPq=LnkwKG00000NkvXXu0mjfhAk5^ literal 0 HcmV?d00001 diff --git a/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png b/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..75b2d164a5a98e212cca15ea7bf2ab5de5108680 GIT binary patch literal 3831 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 literal 0 HcmV?d00001 diff --git a/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png b/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png new file mode 100644 index 0000000000000000000000000000000000000000..c4df70d39da7941ef3f6dcb7f06a192d8dcb308d GIT binary patch literal 1888 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 iW8Zci7-kcv6Uzs@r-FtIZ-&5|)J Q1PU{Fy85}Sb4q9e0B4a5jsO4v literal 0 HcmV?d00001 diff --git a/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png b/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..9da19eacad3b03bb08bbddbbf4ac48dd78b3d838 GIT binary patch literal 68 zcmeAS@N?(olHy`uVBq!ia0vp^j3CUx0wlM}@Gt=>Zci7-kcv6Uzs@r-FtIZ-&5|)J Q1PU{Fy85}Sb4q9e0B4a5jsO4v literal 0 HcmV?d00001 diff --git a/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png b/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png new file mode 100644 index 0000000000000000000000000000000000000000..9da19eacad3b03bb08bbddbbf4ac48dd78b3d838 GIT binary patch literal 68 zcmeAS@N?(olHy`uVBq!ia0vp^j3CUx0wlM}@Gt=>Zci7-kcv6Uzs@r-FtIZ-&5|)J Q1PU{Fy85}Sb4q9e0B4a5jsO4v literal 0 HcmV?d00001 diff --git a/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md b/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md new file mode 100644 index 0000000000..89c2725b70 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md @@ -0,0 +1,5 @@ +# Launch Screen Assets + +You can customize the launch screen with your own desired assets by replacing the image files in this directory. + +You can also do it by opening your Flutter project's Xcode project with `open ios/Runner.xcworkspace`, selecting `Runner/Assets.xcassets` in the Project Navigator and dropping in the desired images. \ No newline at end of file diff --git a/examples/ui/layout/adaptive_app_demos/ios/Runner/Base.lproj/LaunchScreen.storyboard b/examples/ui/layout/adaptive_app_demos/ios/Runner/Base.lproj/LaunchScreen.storyboard new file mode 100644 index 0000000000..f2e259c7c9 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/ios/Runner/Base.lproj/LaunchScreen.storyboard @@ -0,0 +1,37 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/examples/ui/layout/adaptive_app_demos/ios/Runner/Base.lproj/Main.storyboard b/examples/ui/layout/adaptive_app_demos/ios/Runner/Base.lproj/Main.storyboard new file mode 100644 index 0000000000..f3c28516fb --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/ios/Runner/Base.lproj/Main.storyboard @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/examples/ui/layout/adaptive_app_demos/ios/Runner/Info.plist b/examples/ui/layout/adaptive_app_demos/ios/Runner/Info.plist new file mode 100644 index 0000000000..1897fb6edf --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/ios/Runner/Info.plist @@ -0,0 +1,45 @@ + + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + adaptive_app_demos + CFBundlePackageType + APPL + CFBundleShortVersionString + $(FLUTTER_BUILD_NAME) + CFBundleSignature + ???? + CFBundleVersion + $(FLUTTER_BUILD_NUMBER) + LSRequiresIPhoneOS + + UILaunchStoryboardName + LaunchScreen + UIMainStoryboardFile + Main + UISupportedInterfaceOrientations + + UIInterfaceOrientationPortrait + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + UISupportedInterfaceOrientations~ipad + + UIInterfaceOrientationPortrait + UIInterfaceOrientationPortraitUpsideDown + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + UIViewControllerBasedStatusBarAppearance + + + diff --git a/examples/ui/layout/adaptive_app_demos/ios/Runner/Runner-Bridging-Header.h b/examples/ui/layout/adaptive_app_demos/ios/Runner/Runner-Bridging-Header.h new file mode 100644 index 0000000000..308a2a560b --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/ios/Runner/Runner-Bridging-Header.h @@ -0,0 +1 @@ +#import "GeneratedPluginRegistrant.h" diff --git a/examples/ui/layout/adaptive_app_demos/lib/app_model.dart b/examples/ui/layout/adaptive_app_demos/lib/app_model.dart new file mode 100644 index 0000000000..aaf8abea05 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/lib/app_model.dart @@ -0,0 +1,45 @@ +import 'package:adaptive_app_demos/global/device_type.dart'; +import 'package:flutter/material.dart'; + +class AppModel with ChangeNotifier { + bool getDefaultTouchMode() => DeviceType.isMobile == true; + + // Main menu, selected page + int _selectedIndex = 0; + int get selectedIndex => _selectedIndex; + set selectedIndex(int value) => notify(() => _selectedIndex = value); + + // Touch mode, determines density of views + late bool _touchMode = getDefaultTouchMode(); + bool get touchMode => _touchMode; + set touchMode(bool value) => notify(() => _touchMode = value); + + void toggleTouchMode() => touchMode = !touchMode; + + // Indicates whether a user is logged in or not + bool _isLoggedIn = false; + bool get isLoggedIn => _isLoggedIn; + set isLoggedIn(bool value) { + if (value == false) { + reset(); + } + notify(() => _isLoggedIn = value); + } + + void login() => notify(() => _isLoggedIn = true); + void logout() { + _selectedIndex = 0; + notify(() => _isLoggedIn = false); + } + + void reset() { + _selectedIndex = 0; + _touchMode = getDefaultTouchMode(); + } + + // Helper method for single-line state changes + void notify(VoidCallback stateChange) { + stateChange.call(); + notifyListeners(); + } +} diff --git a/examples/ui/layout/adaptive_app_demos/lib/global/device_size.dart b/examples/ui/layout/adaptive_app_demos/lib/global/device_size.dart new file mode 100644 index 0000000000..d6ff121203 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/lib/global/device_size.dart @@ -0,0 +1,26 @@ +import 'package:flutter/cupertino.dart'; + +enum ScreenType { Handset, Tablet, Desktop, Watch } + +class FormFactor { + static double desktop = 900; + static double tablet = 600; + static double handset = 300; +} + +ScreenType getFormFactor(BuildContext context) { + double deviceWidth = MediaQuery.of(context).size.shortestSide; + if (deviceWidth > FormFactor.desktop) return ScreenType.Desktop; + if (deviceWidth > FormFactor.tablet) return ScreenType.Tablet; + if (deviceWidth > FormFactor.handset) return ScreenType.Handset; + return ScreenType.Watch; +} + +enum ScreenSize { Small, Normal, Large, ExtraLarge } +ScreenSize getSize(BuildContext context) { + double deviceWidth = MediaQuery.of(context).size.shortestSide; + if (deviceWidth > 900) return ScreenSize.ExtraLarge; + if (deviceWidth > 600) return ScreenSize.Large; + if (deviceWidth > 300) return ScreenSize.Normal; + return ScreenSize.Small; +} diff --git a/examples/ui/layout/adaptive_app_demos/lib/global/device_type.dart b/examples/ui/layout/adaptive_app_demos/lib/global/device_type.dart new file mode 100644 index 0000000000..e1804b2708 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/lib/global/device_type.dart @@ -0,0 +1,18 @@ +import 'package:flutter/foundation.dart'; +import 'package:universal_platform/universal_platform.dart'; + +class DeviceType { + // Syntax sugar, proxy the UniversalPlatform methods so our views can reference a single class + static bool isIOS = UniversalPlatform.isIOS; + static bool isAndroid = UniversalPlatform.isAndroid; + static bool isMacOS = UniversalPlatform.isMacOS; + static bool isLinux = UniversalPlatform.isLinux; + static bool isWindows = UniversalPlatform.isWindows; + + // Higher level device class abstractions (more syntax sugar for the views) + static bool isWeb = UniversalPlatform.isWeb; + static bool get isDesktop => isWindows || isMacOS || isLinux; + static bool get isMobile => isAndroid || isIOS; + static bool get isDesktopOrWeb => isDesktop || isWeb; + static bool get isMobileOrWeb => isMobile || isWeb; +} diff --git a/examples/ui/layout/adaptive_app_demos/lib/global/styling.dart b/examples/ui/layout/adaptive_app_demos/lib/global/styling.dart new file mode 100644 index 0000000000..d0b299119e --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/lib/global/styling.dart @@ -0,0 +1,15 @@ +import 'package:flutter/material.dart'; + +class Insets { + static double medium = 5; + static double large = 10; + static double extraLarge = 20; + static double small = 3; +} + +class TextStyles { + static TextStyle buttonText1 = TextStyle(fontWeight: FontWeight.bold, fontSize: 14); + static TextStyle buttonText2 = TextStyle(fontWeight: FontWeight.normal, fontSize: 11); + static TextStyle h1 = TextStyle(fontWeight: FontWeight.bold, fontSize: 22); + static TextStyle h2 = TextStyle(fontWeight: FontWeight.bold, fontSize: 16); +} diff --git a/examples/ui/layout/adaptive_app_demos/lib/global/targeted_actions.dart b/examples/ui/layout/adaptive_app_demos/lib/global/targeted_actions.dart new file mode 100644 index 0000000000..b49d5d72ad --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/lib/global/targeted_actions.dart @@ -0,0 +1,189 @@ +import 'package:flutter/widgets.dart'; +import 'package:provider/provider.dart'; + +/// Provides a top level scope for targeted actions. +/// +/// Targeted actions are useful for making actions that are bound to children or +/// siblings of the focused widget available for invocation that wouldn't +/// normally be visible to a Shortcuts widget ancestor of the focused widget. +/// TargetedActionScope is used in place or in addition to the Shortcuts widget +/// that defines the key bindings for a subtree. +/// +/// To use a targeted action, define this scope with a set of shortcuts that +/// should be active in this scope. Then, in a child widget of this one, define +/// a [TargetedActionBinding] with the actions that you wish to execute when the +/// binding is activated with the intent. If no action is defined for a scope +/// for that intent, then nothing happens. +class TargetedActionScope extends StatefulWidget { + TargetedActionScope({Key? key, required this.child, required this.shortcuts}) : super(key: key); + + final Widget child; + final Map shortcuts; + + @override + State createState() => _TargetedActionScopeState(); +} + +class _TargetedActionScopeState extends State { + late _TargetedActionRegistry registry; + Map mappedShortcuts = {}; + + @override + void initState() { + super.initState(); + registry = _TargetedActionRegistry(); + mappedShortcuts = _buildShortcuts(); + } + + @override + void didUpdateWidget(TargetedActionScope oldWidget) { + super.didUpdateWidget(oldWidget); + if (oldWidget.shortcuts != widget.shortcuts) { + mappedShortcuts = _buildShortcuts(); + } + } + + Map _buildShortcuts() { + Map mapped = {}; + for (final LogicalKeySet activator in widget.shortcuts.keys) { + mapped[activator] = _TargetedIntent(widget.shortcuts[activator]!); + } + return mapped; + } + + @override + Widget build(BuildContext context) { + return Provider<_TargetedActionRegistry>.value( + value: registry, + child: Shortcuts( + shortcuts: mappedShortcuts, + child: Actions( + actions: >{ + _TargetedIntent: _TargetedAction(registry), + }, + child: widget.child, + ), + ), + ); + } +} + +/// A binding for use within a [TargetedActionScope]. +/// +/// Place an instance of this widget as a descendant of a [TargetedActionScope], +/// and optionally define any actions that should handle the intents with +/// bindings in the scope. Any actions defined in parents of this widget will +/// also be in the scope. +/// +/// If more than one of these exists in the same [TargetedActionScope], then +/// each of the corresponding contexts will be searched for an action to fulfill +/// the intent. The first one to be found that fulfills the intent will have its +/// action invoked. The order duplicate bindings are searched in is stable with +/// respect to build order, but arbitrary. +// This is a stateful widget because we need to be able to implement deactivate. +class TargetedActionBinding extends StatefulWidget { + TargetedActionBinding({Key? key, required this.child, this.actions}) + : super(key: key); + + final Widget child; + final Map>? actions; + + @override + State createState() => _TargetedActionBindingState(); +} + +class _TargetedActionBindingState extends State { + final GlobalKey _subtreeKey = GlobalKey(debugLabel: 'Targeted Action Binding'); + + @override + Widget build(BuildContext context) { + Provider.of<_TargetedActionRegistry>(context).addTarget(_subtreeKey); + Widget result = KeyedSubtree( + key: _subtreeKey, + child: this.widget.child, + ); + if (widget.actions != null) { + result = Actions(actions: widget.actions!, child: result); + } + return result; + } + + @override + void deactivate() { + Provider.of<_TargetedActionRegistry>(context, listen: false).targetKeys.remove(_subtreeKey); + super.deactivate(); + } +} + +// This is a registry that keeps track of the set of targets in the scope, and +// handles invoking them. +// +// It is found through a provider. +class _TargetedActionRegistry { + _TargetedActionRegistry() + : targetKeys = {}; + + Set targetKeys; + + // Adds the given target key to the set of keys to check. + void addTarget(GlobalKey target) { + targetKeys.add(target); + } + + bool isEnabled(Intent intent) { + // Check each of the target keys to see if there's an action registered in + // that context for the intent. If so, find out if it is enabled. It is + // build-order dependent which action gets invoked if there are two contexts + // tha support the action. + for (GlobalKey key in targetKeys) { + if (key.currentContext != null) { + Action? foundAction = Actions.maybeFind(key.currentContext!, intent: intent); + if (foundAction != null && foundAction.isEnabled(intent)) { + return true; + } + } + } + return false; + } + + Object? invoke(Intent intent) { + // Check each of the target keys to see if there's an action registered in + // that context for the intent. If so, execute it and return the result. It + // is build-order dependent which action gets invoked if there are two + // contexts tha support the action. + for (GlobalKey key in targetKeys) { + if (key.currentContext != null) { + if (Actions.maybeFind(key.currentContext!, intent: intent) != null) { + return Actions.invoke(key.currentContext!, intent); + } + } + } + return null; + } +} + +// A wrapper intent class so that it can hold the "real" intent, and serve as a +// mapping type for the _TargetedAction. +class _TargetedIntent extends Intent { + const _TargetedIntent(this.intent); + + final Intent intent; +} + +// A special action class that invokes the intent tunneled into it via the +// _TargetedIntent. +class _TargetedAction extends Action<_TargetedIntent> { + _TargetedAction(this.registry); + + final _TargetedActionRegistry registry; + + @override + bool isEnabled(_TargetedIntent intent) { + return registry.isEnabled(intent.intent); + } + + @override + Object? invoke(covariant _TargetedIntent intent) { + registry.invoke(intent.intent); + } +} diff --git a/examples/ui/layout/adaptive_app_demos/lib/main.dart b/examples/ui/layout/adaptive_app_demos/lib/main.dart new file mode 100644 index 0000000000..785f1b6832 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/lib/main.dart @@ -0,0 +1,39 @@ +import 'package:adaptive_app_demos/app_model.dart'; +import 'package:adaptive_app_demos/main_app_scaffold.dart'; +import 'package:bitsdojo_window/bitsdojo_window.dart'; +import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; + +void main() { + runApp(AppScaffold()); + + // Required when using bits_dojo for custom TitleBars + doWhenWindowReady(() { + appWindow.title = "Adaptive App Demo"; + appWindow.show(); + }); +} + +class AppScaffold extends StatelessWidget { + @override + Widget build(BuildContext context) { + return ChangeNotifierProvider( + create: (_) => AppModel(), + child: Builder( + builder: (context) { + bool touchMode = context.select((AppModel m) => m.touchMode); + // #docregion VisualDensity + double densityAmt = touchMode ? 0.0 : -1.0; + VisualDensity density = + VisualDensity(horizontal: densityAmt, vertical: densityAmt); + return MaterialApp( + theme: ThemeData(visualDensity: density), + home: MainAppScaffold(), + debugShowCheckedModeBanner: false, + ); + // #enddocregion VisuaDensity + }, + ), + ); + } +} diff --git a/examples/ui/layout/adaptive_app_demos/lib/main_app_scaffold.dart b/examples/ui/layout/adaptive_app_demos/lib/main_app_scaffold.dart new file mode 100644 index 0000000000..50318e55c6 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/lib/main_app_scaffold.dart @@ -0,0 +1,167 @@ +import 'package:adaptive_app_demos/app_model.dart'; +import 'package:adaptive_app_demos/global/device_size.dart'; +import 'package:adaptive_app_demos/global/styling.dart'; +import 'package:adaptive_app_demos/pages/adaptive_data_table_page.dart'; +import 'package:adaptive_app_demos/pages/adaptive_grid_page.dart'; +import 'package:adaptive_app_demos/pages/adaptive_reflow_page.dart'; +import 'package:adaptive_app_demos/pages/focus_examples_page.dart'; +import 'package:adaptive_app_demos/pages/login_page.dart'; +import 'package:adaptive_app_demos/widgets/buttons.dart'; +import 'package:adaptive_app_demos/widgets/ok_cancel_dialog.dart'; +import 'package:bitsdojo_window/bitsdojo_window.dart'; +import 'package:flutter/material.dart'; +import 'package:flutter/services.dart'; +import 'package:provider/provider.dart'; + +import 'widgets/app_title_bar.dart'; +import 'global/targeted_actions.dart'; + +List getMainMenuChildren(BuildContext context) { + // Define a method to change pages in the AppModel + void changePage(int value) => context.read().selectedIndex = value; + int index = context.select((AppModel m) => m.selectedIndex); + return [ + SelectedPageButton(onPressed: () => changePage(0), label: "Adaptive Grid", isSelected: index == 0), + SelectedPageButton(onPressed: () => changePage(1), label: "Adaptive Data Table", isSelected: index == 1), + SelectedPageButton(onPressed: () => changePage(2), label: "Adaptive Reflow", isSelected: index == 2), + SelectedPageButton(onPressed: () => changePage(3), label: "Focus Examples", isSelected: index == 3), + ]; +} + +// Uses a tab navigation + drawer, or a side-menu that combines both +class MainAppScaffold extends StatefulWidget { + @override + _MainAppScaffoldState createState() => _MainAppScaffoldState(); +} + +class _MainAppScaffoldState extends State { + GlobalKey _scaffoldKey = GlobalKey(); + + @override + Widget build(BuildContext context) { + bool useTabs = MediaQuery.of(context).size.width < FormFactor.tablet; + bool isLoggedOut = context.select((AppModel m) => m.isLoggedIn) == false; + return TargetedActionScope( + shortcuts: { + LogicalKeySet(LogicalKeyboardKey.keyA, LogicalKeyboardKey.control): SelectAllIntent(), + LogicalKeySet(LogicalKeyboardKey.keyS, LogicalKeyboardKey.control): SelectNoneIntent(), + LogicalKeySet(LogicalKeyboardKey.delete): DeleteIntent(), + }, + child: WindowBorder( + color: Colors.white, + child: Material( + child: Column( + children: [ + AppTitleBar(), + Expanded( + child: isLoggedOut + // If logged out, show just the login page with no menus + ? LoginPage() + // Otherwise, show the full application with dynamic scaffold + : Focus( + autofocus: true, + child: Scaffold( + key: _scaffoldKey, + drawer: useTabs ? _SideMenu(showPageButtons: false) : null, + appBar: useTabs ? AppBar(backgroundColor: Colors.blue.shade300) : null, + body: Stack(children: [ + // Vertical layout with Tab controller and drawer + if (useTabs) ...[ + Column( + children: [ + Expanded(child: _PageStack()), + _TabMenu(), + ], + ) + ] + // Horizontal layout with desktop style side menu + else ...[ + Row( + children: [ + _SideMenu(), + Expanded(child: _PageStack()), + ], + ), + ], + ]), + ), + ), + ), + ], + ), + ), + ), + ); + } +} + +class _PageStack extends StatelessWidget { + @override + Widget build(BuildContext context) { + int index = context.select((AppModel model) => model.selectedIndex); + Widget? page; + if (index == 0) page = AdaptiveGridPage(); + if (index == 1) page = AdaptiveDataTablePage(); + if (index == 2) page = AdaptiveReflowPage(); + if (index == 3) page = FocusExamplesPage(); + return FocusTraversalGroup(child: page ?? Container()); + } +} + +class _SideMenu extends StatelessWidget { + const _SideMenu({Key? key, this.showPageButtons = true}) : super(key: key); + + final bool showPageButtons; + + @override + Widget build(BuildContext context) { + void _handleLogoutPressed() async { + String message = "Are you sure you want to logout?"; + bool? doLogout = await showDialog(context: context, builder: (_) => OkCancelDialog(message: message)); + if (doLogout ?? false) { + context.read().logout(); + } + } + + return Container( + color: Colors.white, + width: 250, + child: Stack( + children: [ + // Buttons + Column(children: [ + SizedBox(height: Insets.extraLarge), + if (showPageButtons)...getMainMenuChildren(context), + SizedBox(height: Insets.extraLarge), + SecondaryMenuButton(label: "Submenu Item 1"), + SecondaryMenuButton(label: "Submenu Item 2"), + SecondaryMenuButton(label: "Submenu Item 3"), + Spacer(), + OutlinedButton(child: Text("Logout"), onPressed: _handleLogoutPressed), + SizedBox(height: Insets.large), + ]), + // Divider + Align( + alignment: Alignment.centerRight, + child: Container(width: 1, height: double.infinity, color: Colors.blue)), + ], + ), + ); + } +} + +class _TabMenu extends StatelessWidget { + @override + Widget build(BuildContext context) { + // Wrap all the main menu buttons in Expanded() so they fill up the screen horizontally + List tabButtons = getMainMenuChildren(context).map((btn) => Expanded(child: btn)).toList(); + return Column( + children: [ + // Top Divider + Container(width: double.infinity, height: 1, color: Colors.blue), + // Tab buttons + Row(children: tabButtons), + ], + ); + } +} diff --git a/examples/ui/layout/adaptive_app_demos/lib/pages/adaptive_data_table_page.dart b/examples/ui/layout/adaptive_app_demos/lib/pages/adaptive_data_table_page.dart new file mode 100644 index 0000000000..62b9573823 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/lib/pages/adaptive_data_table_page.dart @@ -0,0 +1,73 @@ +import 'package:adaptive_app_demos/global/device_type.dart'; +import 'package:adaptive_app_demos/global/styling.dart'; +import 'package:adaptive_app_demos/widgets/scroll_view_with_scrollbars.dart'; +import 'package:flutter/material.dart'; + +class AdaptiveDataTablePage extends StatelessWidget { + final List items = List.generate(100, (index) => index); + @override + Widget build(BuildContext context) { + return LayoutBuilder( + builder: (BuildContext context, BoxConstraints constraints) { + bool showCol2 = constraints.maxWidth > 300; + bool showCol3 = constraints.maxWidth > 600; + bool showCol4 = constraints.maxWidth > 900; + return Column(children: [ + Row( + children: [ + _TableHeader("Column 1"), + if (showCol2) _TableHeader("Column 2"), + if (showCol3) _TableHeader("Column 3"), + if (showCol4) _TableHeader("Column 4"), + ], + ), + Expanded( + child: ScrollViewWithScrollbars( + child: Column( + children: items.map((i) { + return Container( + color: i % 2 == 0 ? Colors.grey.shade300 : null, + child: Row( + children: [ + _TableRowItem("Item $i, Column 1"), + if (showCol2) _TableRowItem("Item $i, Column 2"), + if (showCol3) _TableRowItem("Item $i, Column 3"), + if (showCol4) _TableRowItem("Item $i, Column 4"), + ], + ), + ); + }).toList(), + ), + ), + ), + ]); + }, + ); + } +} + +class _TableHeader extends StatelessWidget { + const _TableHeader(this.label, {Key? key}) : super(key: key); + final String label; + + @override + Widget build(BuildContext context) => Expanded( + child: Padding( + padding: EdgeInsets.all(Insets.medium), + child: Text( + label, + style: TextStyle(fontWeight: FontWeight.bold, fontSize: 16), + ), + ), + ); +} + +class _TableRowItem extends StatelessWidget { + const _TableRowItem(this.label, {Key? key}) : super(key: key); + final String label; + + @override + Widget build(BuildContext context) => Expanded( + child: Padding( + padding: EdgeInsets.symmetric(horizontal: Insets.medium, vertical: Insets.extraLarge), child: Text(label))); +} diff --git a/examples/ui/layout/adaptive_app_demos/lib/pages/adaptive_grid_page.dart b/examples/ui/layout/adaptive_app_demos/lib/pages/adaptive_grid_page.dart new file mode 100644 index 0000000000..af6479f563 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/lib/pages/adaptive_grid_page.dart @@ -0,0 +1,114 @@ +import 'dart:math'; + +import 'package:adaptive_app_demos/global/device_type.dart'; +import 'package:adaptive_app_demos/global/styling.dart'; +import 'package:adaptive_app_demos/global/targeted_actions.dart'; +import 'package:adaptive_app_demos/widgets/buttons.dart'; +import 'package:flutter/material.dart'; + +class AdaptiveGridPage extends StatefulWidget { + @override + _AdaptiveGridPageState createState() => _AdaptiveGridPageState(); +} + +class _AdaptiveGridPageState extends State { + List _listItems = List.generate(100, (index) => index); + ScrollController _scrollController = ScrollController(); + + List _selectedItems = []; + + @override + Widget build(BuildContext context) { + // Create a list of widgets to render, inject .isSelected into each item + Widget buildGridItem(int index) => + _GridItem(index, isSelected: _selectedItems.contains(index), onPressed: _handleItemPressed); + List listChildren = _listItems.map(buildGridItem).toList(); + return TargetedActionBinding( + actions: { + SelectAllIntent: CallbackAction(onInvoke: (Intent intent) => this._handleSelectAllPressed()), + SelectNoneIntent: CallbackAction(onInvoke: (Intent intent) => this._handleSelectNonePressed()), + DeleteIntent: CallbackAction(onInvoke: (Intent intent) => this._handleDeleteSelectedPressed()), + }, + child: Column( + children: [ + Row( + children: [ + StyledTextButton(onPressed: _handleSelectAllPressed, child: Text("Select All")), + StyledTextButton(onPressed: _handleSelectNonePressed, child: Text("Select None")), + ], + ), + Expanded( + child: LayoutBuilder( + builder: (BuildContext context, BoxConstraints constraints) { + // Calculate how many columns we want depending on available space + int colCount = max(1, (constraints.maxWidth / 250).floor()); + return Scrollbar( + isAlwaysShown: DeviceType.isDesktop, + controller: _scrollController, + child: GridView.count( + controller: _scrollController, + padding: EdgeInsets.all(Insets.extraLarge), + childAspectRatio: 1, + crossAxisCount: colCount, + children: listChildren), + ); + }, + ), + ), + ], + ), + ); + } + + void _handleSelectAllPressed() => setState(() => _selectedItems = List.from(_listItems)); + void _handleSelectNonePressed() => setState(() => _selectedItems.clear()); + void _handleDeleteSelectedPressed() => setState(() => _selectedItems.clear()); + + void _handleItemPressed(int index) { + setState(() { + if (_selectedItems.contains(index)) + _selectedItems.remove(index); + else + _selectedItems.add(index); + }); + } +} + +class _GridItem extends StatelessWidget { + const _GridItem(this.index, {Key? key, required this.isSelected, required this.onPressed}) : super(key: key); + final int index; + final bool isSelected; + final void Function(int index) onPressed; + + @override + Widget build(BuildContext context) { + double borderWidth = isSelected ? 6 : 0; + return Padding( + padding: EdgeInsets.all(Insets.large), + child: TextButton( + onPressed: () => onPressed.call(index), + child: Stack(children: [ + Center(child: FlutterLogo(size: 64)), + Container(color: Colors.grey.withOpacity(isSelected ? .5 : .7)), + Align( + alignment: Alignment.bottomCenter, + child: Container( + width: double.infinity, + color: Colors.grey.shade600, + height: 50, + alignment: Alignment.center, + child: Text("Grid Item $index", style: TextStyle(color: Colors.white)))), + // Selected border + Container(decoration: BoxDecoration(border: Border.all(color: Colors.blue.shade200, width: borderWidth))), + ]), + ), + ); + } +} + +/// Intents to support keyboard shortcuts +class DeleteIntent extends Intent {} + +class SelectAllIntent extends Intent {} + +class SelectNoneIntent extends Intent {} diff --git a/examples/ui/layout/adaptive_app_demos/lib/pages/adaptive_reflow_page.dart b/examples/ui/layout/adaptive_app_demos/lib/pages/adaptive_reflow_page.dart new file mode 100644 index 0000000000..9ae1641000 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/lib/pages/adaptive_reflow_page.dart @@ -0,0 +1,85 @@ +import 'package:adaptive_app_demos/app_model.dart'; +import 'package:adaptive_app_demos/global/device_type.dart'; +import 'package:adaptive_app_demos/global/styling.dart'; +import 'package:adaptive_app_demos/widgets/scroll_view_with_scrollbars.dart'; +import 'package:flextras/flextras.dart'; +import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; + +/// Shows 3 types of layout, a vertical for narrow screens, wide for wide screens, and a mixed mode. + +enum ReflowMode { Vertical, Horizontal, Mixed } + +class AdaptiveReflowPage extends StatelessWidget { + @override + Widget build(BuildContext context) { + return LayoutBuilder(builder: (_, constraints) { + /// Decide which mode to show in + ReflowMode reflowMode = ReflowMode.Mixed; + if (constraints.maxWidth < 800) { + reflowMode = ReflowMode.Vertical; + } else if (constraints.maxHeight < 800) { + reflowMode = ReflowMode.Horizontal; + } + // In mixed mode, use a mix of Colum and Row + if (reflowMode == ReflowMode.Mixed) { + return Column( + children: [ + Expanded( + child: Row( + children: [ + Expanded(child: _ContentPanel1()), + Expanded(child: _ContentPanel2()), + ], + ), + ), + Expanded(child: _ContentPanel3()), + ], + ); + } + // In vertical or horizontal mode, use a ExpandedScrollingFlex with the same set of children + else { + Axis direction = reflowMode == ReflowMode.Horizontal + ? Axis.horizontal + : Axis.vertical; + return ExpandedScrollingFlex( + scrollViewBuilder: (axis, child) => + ScrollViewWithScrollbars(axis: axis, child: child), + direction: direction, + children: [ + _ContentPanel1(), + _ContentPanel2(), + _ContentPanel3(), + ].map((c) => Expanded(child: c)).toList()); + } + }); + } +} + +/// For demo purposes, simulate 3 different content areas +Widget _ContentPanel1() => _ContentPanel("Panel 1"); +Widget _ContentPanel2() => _ContentPanel("Panel 2"); +Widget _ContentPanel3() => _ContentPanel("Panel 3"); + +class _ContentPanel extends StatelessWidget { + const _ContentPanel(this.label, {Key? key}) : super(key: key); + final String label; + + @override + Widget build(BuildContext context) { + // #docregion VisualDensityOwnView + VisualDensity density = Theme.of(context).visualDensity; + return ConstrainedBox( + constraints: BoxConstraints(minHeight: 300, minWidth: 300), + child: Padding( + padding: EdgeInsets.all(Insets.large + density.vertical * 6), + // #enddocregion VisuaDensityOwnView + child: Container( + alignment: Alignment.center, + color: Colors.purple.shade100, + child: Text(label), + ), + ), + ); + } +} diff --git a/examples/ui/layout/adaptive_app_demos/lib/pages/focus_examples_page.dart b/examples/ui/layout/adaptive_app_demos/lib/pages/focus_examples_page.dart new file mode 100644 index 0000000000..f653e0b354 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/lib/pages/focus_examples_page.dart @@ -0,0 +1,202 @@ +import 'package:adaptive_app_demos/global/styling.dart'; +import 'package:flextras/flextras.dart'; +import 'package:flutter/material.dart'; +import 'package:flutter/rendering.dart'; +import 'package:flutter/services.dart'; + +class FocusExamplesPage extends StatelessWidget { + @override + Widget build(BuildContext context) { + return Padding( + padding: EdgeInsets.all(Insets.extraLarge), + child: Center( + child: SeparatedColumn( + separatorBuilder: () => SizedBox(height: 5), + mainAxisSize: MainAxisSize.min, + children: [ + // Basic widget that can accept traversal, built with FocusableActionDetector + Text("BasicActionDetector:"), + BasicActionDetector(), + SizedBox(height: 10), + + // Clickable widget that can accept traversal, built with FocusableActionDetector + Text("AdvancedActionDetector:"), + ClickableActionDetector(), + SizedBox(height: 10), + + // A totally custom control, built by stacking together various widgets + Text("CustomControl:"), + ClickableControl(), + _TextListener(), + ], + ), + ), + ); + } +} + +class _TextListener extends StatefulWidget { + @override + State<_TextListener> createState() => __TextListenerState(); +} + +class __TextListenerState extends State<_TextListener> { + FocusNode focusNode = FocusNode(); + + @override + Widget build(BuildContext context) { + return Focus( + onKey: (FocusNode node, RawKeyEvent event) { + if (event is RawKeyDownEvent) { + print(event.logicalKey); + } + return KeyEventResult.ignored; + }, + child: ConstrainedBox( + constraints: BoxConstraints(maxWidth: 400), + child: TextField( + decoration: InputDecoration( + border: OutlineInputBorder(), + ), + ), + ), + ); + } +} + +class BasicActionDetector extends StatefulWidget { + @override + State createState() => _BasicActionDetectorState(); +} + +// #docregion _BasicActionDetectorState +class _BasicActionDetectorState extends State { + bool _hasFocus = false; + @override + Widget build(BuildContext context) { + return FocusableActionDetector( + onFocusChange: (value) => setState(() => _hasFocus = value), + actions: >{ + ActivateIntent: CallbackAction(onInvoke: (Intent intent) { + print("Enter or Space was pressed!"); + }), + }, + child: Stack( + clipBehavior: Clip.none, + children: [ + FlutterLogo(size: 100), + // Position focus in the negative margin for a cool effect + if (_hasFocus) + Positioned( + left: -4, + top: -4, + bottom: -4, + right: -4, + child: _roundedBorder()) + ], + ), + ); + } +} +// #enddocregion _BasicActionDetectorState + +/// Uses [FocusableActionDetector] +class ClickableActionDetector extends StatefulWidget { + @override + _ClickableActionDetectorState createState() => + _ClickableActionDetectorState(); +} + +class _ClickableActionDetectorState extends State { + bool _hasFocus = false; + late FocusNode _focusNode = FocusNode(); + + @override + Widget build(BuildContext context) { + return FocusableActionDetector( + focusNode: _focusNode, + mouseCursor: SystemMouseCursors.click, + onFocusChange: (value) => setState(() => _hasFocus = value), + actions: >{ + ActivateIntent: CallbackAction(onInvoke: (Intent intent) { + _submit(); + }), + }, + child: GestureDetector( + onTap: () { + _focusNode.requestFocus(); + _submit(); + }, + child: Logo(showBorder: _hasFocus), + ), + ); + } + + void _submit() => print("Submit!"); +} + +// Example of a custom focus widget from scratch +class ClickableControl extends StatelessWidget { + @override + Widget build(BuildContext _) { + return Focus( + // Process keyboard event + onKey: _handleKeyDown, + child: Builder( + builder: (context) { + // Check whether we have focus + bool hasFocus = Focus.of(context).hasFocus; + // Show hand cursor + return MouseRegion( + cursor: SystemMouseCursors.click, + // Request focus when clicked + child: GestureDetector( + onTap: () { + Focus.of(context).requestFocus(); + _submit(); + }, + child: Logo(showBorder: hasFocus), + ), + ); + }, + ), + ); + } + + void _submit() => print("Submit!"); + + KeyEventResult _handleKeyDown(FocusNode node, RawKeyEvent event) { + if (event is RawKeyDownEvent && + [LogicalKeyboardKey.enter, LogicalKeyboardKey.space] + .contains(event.logicalKey)) { + _submit(); + return KeyEventResult.handled; + } + return KeyEventResult.ignored; + } +} + +class Logo extends StatelessWidget { + const Logo({Key? key, required this.showBorder}) : super(key: key); + final bool showBorder; + + @override + Widget build(BuildContext context) { + return Stack( + clipBehavior: Clip.none, + children: [ + // Content + FlutterLogo(size: 100), + // Focus effect: + if (showBorder) + Positioned( + left: 0, top: -4, bottom: -4, right: -4, child: _roundedBorder()) + ], + ); + } +} + +Widget _roundedBorder() => Container( + decoration: BoxDecoration( + border: Border.all(color: Colors.orange), + borderRadius: BorderRadius.circular(6))); diff --git a/examples/ui/layout/adaptive_app_demos/lib/pages/login_page.dart b/examples/ui/layout/adaptive_app_demos/lib/pages/login_page.dart new file mode 100644 index 0000000000..d4d491bdb0 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/lib/pages/login_page.dart @@ -0,0 +1,76 @@ +import 'package:adaptive_app_demos/app_model.dart'; +import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; + +// Uses full-screen breakpoints to reflow the widget tree +class LoginPage extends StatelessWidget { + @override + Widget build(BuildContext context) { + Size screenSize = MediaQuery.of(context).size; + // Reflow from Row to Col when in Portrait mode + bool useVerticalLayout = screenSize.width < screenSize.height; + // Hide an optional element if the screen gets too small. + bool hideDetailPanel = screenSize.shortestSide < 250; + return Scaffold( + body: Flex(direction: useVerticalLayout ? Axis.vertical : Axis.horizontal, children: [ + if (hideDetailPanel == false) ...[ + Flexible(child: _LoginDetailPanel()), + ], + Flexible(child: _LoginForm()), + ]), + ); + } +} + +class _LoginDetailPanel extends StatelessWidget { + @override + Widget build(BuildContext context) => Container( + alignment: Alignment.center, + color: Colors.grey.shade300, + child: Text( + "LOGIN VIEW\nBRANDING", + style: TextStyle(fontSize: 64), + textAlign: TextAlign.center, + ), + ); +} + +class _LoginForm extends StatelessWidget { + @override + Widget build(BuildContext context) { + // When login button is pressed, show the Dashboard page. + void handleLoginPressed() => context.read().login(); + + // Example Form, pressing the login button will show the Dashboard page + return Center( + // Use a maxWidth so the form is responsive, but does get not too large on bigger screens + child: ConstrainedBox( + constraints: BoxConstraints(maxWidth: 450), + // Very small screens may require vertical scrolling of the form + child: SingleChildScrollView( + child: Padding( + padding: const EdgeInsets.all(16.0), + child: Column( + children: [ + TextField(decoration: _getTextDecoration("Enter email...")), + SizedBox(height: 16), + TextField(decoration: _getTextDecoration("Enter password..."), obscureText: true), + SizedBox(height: 16), + OutlinedButton( + onPressed: handleLoginPressed, + child: Container( + width: double.infinity, + alignment: Alignment.center, + padding: EdgeInsets.all(16.0), + child: Text("Log In"), + )), + ], + ), + ), + ), + ), + ); + } +} + +InputDecoration _getTextDecoration(String hint) => InputDecoration(border: OutlineInputBorder(), hintText: hint); diff --git a/examples/ui/layout/adaptive_app_demos/lib/widgets/app_title_bar.dart b/examples/ui/layout/adaptive_app_demos/lib/widgets/app_title_bar.dart new file mode 100644 index 0000000000..32e40aaee9 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/lib/widgets/app_title_bar.dart @@ -0,0 +1,63 @@ +import 'package:adaptive_app_demos/app_model.dart'; +import 'package:adaptive_app_demos/global/device_type.dart'; +import 'package:adaptive_app_demos/global/styling.dart'; +import 'package:bitsdojo_window/bitsdojo_window.dart'; +import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; + +class AppTitleBar extends StatelessWidget { + @override + Widget build(BuildContext context) { + bool isLinuxOrWindows = DeviceType.isWindows || DeviceType.isLinux; + bool enableTouch = context.select((AppModel m) => m.touchMode); + bool useSmallHeader = MediaQuery.of(context).size.width < 600; + bool hideTitle = MediaQuery.of(context).size.width < 400; + TextStyle style = useSmallHeader ? TextStyles.h2 : TextStyles.h1; + return Material( + child: Stack( + children: [ + // Sets background and height for title bar + Positioned.fill(child: Container(color: Colors.blue)), + + // App Logo or Title + if (hideTitle == false) + Positioned.fill( + child: Center( + child: Text("Adaptive Scaffold", style: style.copyWith(color: Colors.white)), + ), + ), + + Positioned.fill(child: MoveWindow()), + + // Enable Touch Mode Button + Row( + // Touch button should be right-aligned on macOS to avoid the native buttons + textDirection: DeviceType.isMacOS ? TextDirection.rtl : TextDirection.ltr, + children: [ + IconButton( + onPressed: () => context.read().toggleTouchMode(), + icon: Icon(enableTouch ? Icons.mouse : Icons.fingerprint)), + Spacer(), + ], + ), + + // Add window controls for Linux/Windows + if (isLinuxOrWindows) ...[ + Row( + children: [ + Spacer(), + MinimizeWindowButton(colors: buttonColors), + MaximizeWindowButton(colors: buttonColors), + CloseWindowButton(colors: closeButtonColors), + ], + ) + ] + ], + ), + ); + } +} + +final buttonColors = WindowButtonColors(iconNormal: Colors.white); + +final closeButtonColors = WindowButtonColors(iconNormal: Colors.white); diff --git a/examples/ui/layout/adaptive_app_demos/lib/widgets/buttons.dart b/examples/ui/layout/adaptive_app_demos/lib/widgets/buttons.dart new file mode 100644 index 0000000000..f45f020946 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/lib/widgets/buttons.dart @@ -0,0 +1,58 @@ +import 'package:adaptive_app_demos/global/styling.dart'; +import 'package:flutter/material.dart'; + +class StyledTextButton extends StatelessWidget { + const StyledTextButton({Key? key, required this.onPressed, required this.child}) : super(key: key); + final VoidCallback onPressed; + final Widget child; + + @override + Widget build(BuildContext context) { + return TextButton( + style: ButtonStyle( + padding: MaterialStateProperty.all(EdgeInsets.all(Insets.small)), + textStyle: MaterialStateProperty.all(TextStyles.buttonText2)), + onPressed: onPressed, + child: child); + } +} + +class SecondaryMenuButton extends StatelessWidget { + const SecondaryMenuButton({Key? key, required this.label}) : super(key: key); + final String label; + + @override + Widget build(BuildContext context) { + return StyledTextButton( + onPressed: () {}, + child: Container( + width: double.infinity, + padding: EdgeInsets.all(16), + child: Text(label), + ), + ); + } +} + +class SelectedPageButton extends StatelessWidget { + const SelectedPageButton({Key? key, required this.onPressed, required this.label, required this.isSelected}) + : super(key: key); + final VoidCallback? onPressed; + final String label; + final bool isSelected; + + @override + Widget build(BuildContext context) { + return Container( + color: isSelected ? Colors.grey.shade200 : null, + child: TextButton( + onPressed: onPressed, + child: Container( + width: double.infinity, + padding: EdgeInsets.all(Insets.large), + child: Text(label, style: TextStyles.buttonText1, maxLines: 1), + ), + ), + ); + } +} diff --git a/examples/ui/layout/adaptive_app_demos/lib/widgets/ok_cancel_dialog.dart b/examples/ui/layout/adaptive_app_demos/lib/widgets/ok_cancel_dialog.dart new file mode 100644 index 0000000000..51e4f8ecf4 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/lib/widgets/ok_cancel_dialog.dart @@ -0,0 +1,63 @@ +import 'package:adaptive_app_demos/global/device_type.dart'; +import 'package:adaptive_app_demos/global/styling.dart'; +import 'package:flutter/material.dart'; + +class OkCancelDialog extends StatelessWidget { + const OkCancelDialog({Key? key, required this.message}) : super(key: key); + final String message; + + @override + Widget build(BuildContext context) { + return Dialog( + child: ConstrainedBox( + constraints: BoxConstraints(maxWidth: 400), + child: Padding( + padding: EdgeInsets.all(Insets.large), + child: Column( + mainAxisSize: MainAxisSize.min, + children: [ + Text(message), + SizedBox(height: Insets.large), + _OkCancelButtons(), + ], + ), + ), + ), + ); + } +} + +class _OkCancelButtons extends StatelessWidget { + @override + Widget build(BuildContext context) { + TextDirection btnDirection = DeviceType.isWindows && false ? TextDirection.rtl : TextDirection.ltr; + return Row( + children: [ + Spacer(), + Row( + textDirection: btnDirection, + children: [ + DialogButton(label: "Cancel", onPressed: () => Navigator.pop(context, false)), + DialogButton(label: "Ok", onPressed: () => Navigator.pop(context, true)), + ], + ), + ], + ); + } +} + +class DialogButton extends StatelessWidget { + const DialogButton({Key? key, required this.onPressed, required this.label}) : super(key: key); + final VoidCallback onPressed; + final String label; + + @override + Widget build(BuildContext context) { + return TextButton( + onPressed: onPressed, + child: Padding( + padding: EdgeInsets.symmetric(horizontal: 16, vertical: 8), + child: Text(label), + )); + } +} diff --git a/examples/ui/layout/adaptive_app_demos/lib/widgets/scroll_view_with_scrollbars.dart b/examples/ui/layout/adaptive_app_demos/lib/widgets/scroll_view_with_scrollbars.dart new file mode 100644 index 0000000000..9281d1a3e9 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/lib/widgets/scroll_view_with_scrollbars.dart @@ -0,0 +1,28 @@ +import 'package:adaptive_app_demos/app_model.dart'; +import 'package:flutter/material.dart'; +import 'package:provider/provider.dart'; + +class ScrollViewWithScrollbars extends StatefulWidget { + const ScrollViewWithScrollbars({Key? key, required this.child, this.axis = Axis.vertical}) : super(key: key); + final Widget child; + final Axis axis; + @override + _ScrollViewWithScrollbarsState createState() => _ScrollViewWithScrollbarsState(); +} + +class _ScrollViewWithScrollbarsState extends State { + ScrollController _scrollController = ScrollController(); + + @override + Widget build(BuildContext context) { + return Scrollbar( + controller: _scrollController, + isAlwaysShown: context.select((AppModel m) => m.touchMode), + child: SingleChildScrollView( + scrollDirection: widget.axis, + controller: _scrollController, + child: widget.child, + ), + ); + } +} diff --git a/examples/ui/layout/adaptive_app_demos/linux/.gitignore b/examples/ui/layout/adaptive_app_demos/linux/.gitignore new file mode 100644 index 0000000000..d3896c9844 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/linux/.gitignore @@ -0,0 +1 @@ +flutter/ephemeral diff --git a/examples/ui/layout/adaptive_app_demos/linux/CMakeLists.txt b/examples/ui/layout/adaptive_app_demos/linux/CMakeLists.txt new file mode 100644 index 0000000000..5f5bd41028 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/linux/CMakeLists.txt @@ -0,0 +1,116 @@ +cmake_minimum_required(VERSION 3.10) +project(runner LANGUAGES CXX) + +set(BINARY_NAME "adaptive_app_demos") +set(APPLICATION_ID "com.example.adaptive_app_demos") + +cmake_policy(SET CMP0063 NEW) + +set(CMAKE_INSTALL_RPATH "$ORIGIN/lib") + +# Root filesystem for cross-building. +if(FLUTTER_TARGET_PLATFORM_SYSROOT) + set(CMAKE_SYSROOT ${FLUTTER_TARGET_PLATFORM_SYSROOT}) + set(CMAKE_FIND_ROOT_PATH ${CMAKE_SYSROOT}) + set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) + set(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY) + set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) + set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY) +endif() + +# Configure build options. +if(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES) + set(CMAKE_BUILD_TYPE "Debug" CACHE + STRING "Flutter build mode" FORCE) + set_property(CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS + "Debug" "Profile" "Release") +endif() + +# Compilation settings that should be applied to most targets. +function(APPLY_STANDARD_SETTINGS TARGET) + target_compile_features(${TARGET} PUBLIC cxx_std_14) + target_compile_options(${TARGET} PRIVATE -Wall -Werror) + target_compile_options(${TARGET} PRIVATE "$<$>:-O3>") + target_compile_definitions(${TARGET} PRIVATE "$<$>:NDEBUG>") +endfunction() + +set(FLUTTER_MANAGED_DIR "${CMAKE_CURRENT_SOURCE_DIR}/flutter") + +# Flutter library and tool build rules. +add_subdirectory(${FLUTTER_MANAGED_DIR}) + +# System-level dependencies. +find_package(PkgConfig REQUIRED) +pkg_check_modules(GTK REQUIRED IMPORTED_TARGET gtk+-3.0) + +add_definitions(-DAPPLICATION_ID="${APPLICATION_ID}") + +# Application build +add_executable(${BINARY_NAME} + "main.cc" + "my_application.cc" + "${FLUTTER_MANAGED_DIR}/generated_plugin_registrant.cc" +) +apply_standard_settings(${BINARY_NAME}) +target_link_libraries(${BINARY_NAME} PRIVATE flutter) +target_link_libraries(${BINARY_NAME} PRIVATE PkgConfig::GTK) +add_dependencies(${BINARY_NAME} flutter_assemble) +# Only the install-generated bundle's copy of the executable will launch +# correctly, since the resources must in the right relative locations. To avoid +# people trying to run the unbundled copy, put it in a subdirectory instead of +# the default top-level location. +set_target_properties(${BINARY_NAME} + PROPERTIES + RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/intermediates_do_not_run" +) + +# Generated plugin build rules, which manage building the plugins and adding +# them to the application. +include(flutter/generated_plugins.cmake) + + +# === Installation === +# By default, "installing" just makes a relocatable bundle in the build +# directory. +set(BUILD_BUNDLE_DIR "${PROJECT_BINARY_DIR}/bundle") +if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) + set(CMAKE_INSTALL_PREFIX "${BUILD_BUNDLE_DIR}" CACHE PATH "..." FORCE) +endif() + +# Start with a clean build bundle directory every time. +install(CODE " + file(REMOVE_RECURSE \"${BUILD_BUNDLE_DIR}/\") + " COMPONENT Runtime) + +set(INSTALL_BUNDLE_DATA_DIR "${CMAKE_INSTALL_PREFIX}/data") +set(INSTALL_BUNDLE_LIB_DIR "${CMAKE_INSTALL_PREFIX}/lib") + +install(TARGETS ${BINARY_NAME} RUNTIME DESTINATION "${CMAKE_INSTALL_PREFIX}" + COMPONENT Runtime) + +install(FILES "${FLUTTER_ICU_DATA_FILE}" DESTINATION "${INSTALL_BUNDLE_DATA_DIR}" + COMPONENT Runtime) + +install(FILES "${FLUTTER_LIBRARY}" DESTINATION "${INSTALL_BUNDLE_LIB_DIR}" + COMPONENT Runtime) + +if(PLUGIN_BUNDLED_LIBRARIES) + install(FILES "${PLUGIN_BUNDLED_LIBRARIES}" + DESTINATION "${INSTALL_BUNDLE_LIB_DIR}" + COMPONENT Runtime) +endif() + +# Fully re-copy the assets directory on each build to avoid having stale files +# from a previous install. +set(FLUTTER_ASSET_DIR_NAME "flutter_assets") +install(CODE " + file(REMOVE_RECURSE \"${INSTALL_BUNDLE_DATA_DIR}/${FLUTTER_ASSET_DIR_NAME}\") + " COMPONENT Runtime) +install(DIRECTORY "${PROJECT_BUILD_DIR}/${FLUTTER_ASSET_DIR_NAME}" + DESTINATION "${INSTALL_BUNDLE_DATA_DIR}" COMPONENT Runtime) + +# Install the AOT library on non-Debug builds only. +if(NOT CMAKE_BUILD_TYPE MATCHES "Debug") + install(FILES "${AOT_LIBRARY}" DESTINATION "${INSTALL_BUNDLE_LIB_DIR}" + COMPONENT Runtime) +endif() diff --git a/examples/ui/layout/adaptive_app_demos/linux/flutter/CMakeLists.txt b/examples/ui/layout/adaptive_app_demos/linux/flutter/CMakeLists.txt new file mode 100644 index 0000000000..6dc9705582 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/linux/flutter/CMakeLists.txt @@ -0,0 +1,91 @@ +cmake_minimum_required(VERSION 3.10) + +set(EPHEMERAL_DIR "${CMAKE_CURRENT_SOURCE_DIR}/ephemeral") + +# Configuration provided via flutter tool. +include(${EPHEMERAL_DIR}/generated_config.cmake) + +# TODO: Move the rest of this into files in ephemeral. See +# https://github.com/flutter/flutter/issues/57146. + +# Serves the same purpose as list(TRANSFORM ... PREPEND ...), +# which isn't available in 3.10. +function(list_prepend LIST_NAME PREFIX) + set(NEW_LIST "") + foreach(element ${${LIST_NAME}}) + list(APPEND NEW_LIST "${PREFIX}${element}") + endforeach(element) + set(${LIST_NAME} "${NEW_LIST}" PARENT_SCOPE) +endfunction() + +# === Flutter Library === +# System-level dependencies. +find_package(PkgConfig REQUIRED) +pkg_check_modules(GTK REQUIRED IMPORTED_TARGET gtk+-3.0) +pkg_check_modules(GLIB REQUIRED IMPORTED_TARGET glib-2.0) +pkg_check_modules(GIO REQUIRED IMPORTED_TARGET gio-2.0) +pkg_check_modules(BLKID REQUIRED IMPORTED_TARGET blkid) +pkg_check_modules(LZMA REQUIRED IMPORTED_TARGET liblzma) + +set(FLUTTER_LIBRARY "${EPHEMERAL_DIR}/libflutter_linux_gtk.so") + +# Published to parent scope for install step. +set(FLUTTER_LIBRARY ${FLUTTER_LIBRARY} PARENT_SCOPE) +set(FLUTTER_ICU_DATA_FILE "${EPHEMERAL_DIR}/icudtl.dat" PARENT_SCOPE) +set(PROJECT_BUILD_DIR "${PROJECT_DIR}/build/" PARENT_SCOPE) +set(AOT_LIBRARY "${PROJECT_DIR}/build/lib/libapp.so" PARENT_SCOPE) + +list(APPEND FLUTTER_LIBRARY_HEADERS + "fl_basic_message_channel.h" + "fl_binary_codec.h" + "fl_binary_messenger.h" + "fl_dart_project.h" + "fl_engine.h" + "fl_json_message_codec.h" + "fl_json_method_codec.h" + "fl_message_codec.h" + "fl_method_call.h" + "fl_method_channel.h" + "fl_method_codec.h" + "fl_method_response.h" + "fl_plugin_registrar.h" + "fl_plugin_registry.h" + "fl_standard_message_codec.h" + "fl_standard_method_codec.h" + "fl_string_codec.h" + "fl_value.h" + "fl_view.h" + "flutter_linux.h" +) +list_prepend(FLUTTER_LIBRARY_HEADERS "${EPHEMERAL_DIR}/flutter_linux/") +add_library(flutter INTERFACE) +target_include_directories(flutter INTERFACE + "${EPHEMERAL_DIR}" +) +target_link_libraries(flutter INTERFACE "${FLUTTER_LIBRARY}") +target_link_libraries(flutter INTERFACE + PkgConfig::GTK + PkgConfig::GLIB + PkgConfig::GIO + PkgConfig::BLKID + PkgConfig::LZMA +) +add_dependencies(flutter flutter_assemble) + +# === Flutter tool backend === +# _phony_ is a non-existent file to force this command to run every time, +# since currently there's no way to get a full input/output list from the +# flutter tool. +add_custom_command( + OUTPUT ${FLUTTER_LIBRARY} ${FLUTTER_LIBRARY_HEADERS} + ${CMAKE_CURRENT_BINARY_DIR}/_phony_ + COMMAND ${CMAKE_COMMAND} -E env + ${FLUTTER_TOOL_ENVIRONMENT} + "${FLUTTER_ROOT}/packages/flutter_tools/bin/tool_backend.sh" + ${FLUTTER_TARGET_PLATFORM} ${CMAKE_BUILD_TYPE} + VERBATIM +) +add_custom_target(flutter_assemble DEPENDS + "${FLUTTER_LIBRARY}" + ${FLUTTER_LIBRARY_HEADERS} +) diff --git a/examples/ui/layout/adaptive_app_demos/linux/flutter/generated_plugin_registrant.cc b/examples/ui/layout/adaptive_app_demos/linux/flutter/generated_plugin_registrant.cc new file mode 100644 index 0000000000..8e42ee04fd --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/linux/flutter/generated_plugin_registrant.cc @@ -0,0 +1,13 @@ +// +// Generated file. Do not edit. +// + +#include "generated_plugin_registrant.h" + +#include + +void fl_register_plugins(FlPluginRegistry* registry) { + g_autoptr(FlPluginRegistrar) bitsdojo_window_linux_registrar = + fl_plugin_registry_get_registrar_for_plugin(registry, "BitsdojoWindowPlugin"); + bitsdojo_window_plugin_register_with_registrar(bitsdojo_window_linux_registrar); +} diff --git a/examples/ui/layout/adaptive_app_demos/linux/flutter/generated_plugin_registrant.h b/examples/ui/layout/adaptive_app_demos/linux/flutter/generated_plugin_registrant.h new file mode 100644 index 0000000000..9bf7478940 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/linux/flutter/generated_plugin_registrant.h @@ -0,0 +1,13 @@ +// +// Generated file. Do not edit. +// + +#ifndef GENERATED_PLUGIN_REGISTRANT_ +#define GENERATED_PLUGIN_REGISTRANT_ + +#include + +// Registers Flutter plugins. +void fl_register_plugins(FlPluginRegistry* registry); + +#endif // GENERATED_PLUGIN_REGISTRANT_ diff --git a/examples/ui/layout/adaptive_app_demos/linux/flutter/generated_plugins.cmake b/examples/ui/layout/adaptive_app_demos/linux/flutter/generated_plugins.cmake new file mode 100644 index 0000000000..9978ad3a3e --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/linux/flutter/generated_plugins.cmake @@ -0,0 +1,16 @@ +# +# Generated file, do not edit. +# + +list(APPEND FLUTTER_PLUGIN_LIST + bitsdojo_window_linux +) + +set(PLUGIN_BUNDLED_LIBRARIES) + +foreach(plugin ${FLUTTER_PLUGIN_LIST}) + add_subdirectory(flutter/ephemeral/.plugin_symlinks/${plugin}/linux plugins/${plugin}) + target_link_libraries(${BINARY_NAME} PRIVATE ${plugin}_plugin) + list(APPEND PLUGIN_BUNDLED_LIBRARIES $) + list(APPEND PLUGIN_BUNDLED_LIBRARIES ${${plugin}_bundled_libraries}) +endforeach(plugin) diff --git a/examples/ui/layout/adaptive_app_demos/linux/main.cc b/examples/ui/layout/adaptive_app_demos/linux/main.cc new file mode 100644 index 0000000000..e7c5c54370 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/linux/main.cc @@ -0,0 +1,6 @@ +#include "my_application.h" + +int main(int argc, char** argv) { + g_autoptr(MyApplication) app = my_application_new(); + return g_application_run(G_APPLICATION(app), argc, argv); +} diff --git a/examples/ui/layout/adaptive_app_demos/linux/my_application.cc b/examples/ui/layout/adaptive_app_demos/linux/my_application.cc new file mode 100644 index 0000000000..28c4efe578 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/linux/my_application.cc @@ -0,0 +1,105 @@ +#include "my_application.h" + +#include +#ifdef GDK_WINDOWING_X11 +#include +#endif + +#include "flutter/generated_plugin_registrant.h" + +struct _MyApplication { + GtkApplication parent_instance; + char** dart_entrypoint_arguments; +}; + +G_DEFINE_TYPE(MyApplication, my_application, GTK_TYPE_APPLICATION) + +// Implements GApplication::activate. +static void my_application_activate(GApplication* application) { + MyApplication* self = MY_APPLICATION(application); + GtkWindow* window = + GTK_WINDOW(gtk_application_window_new(GTK_APPLICATION(application))); + + // Use a header bar when running in GNOME as this is the common style used + // by applications and is the setup most users will be using (e.g. Ubuntu + // desktop). + // If running on X and not using GNOME then just use a traditional title bar + // in case the window manager does more exotic layout, e.g. tiling. + // If running on Wayland assume the header bar will work (may need changing + // if future cases occur). + gboolean use_header_bar = TRUE; +#ifdef GDK_WINDOWING_X11 + GdkScreen *screen = gtk_window_get_screen(window); + if (GDK_IS_X11_SCREEN(screen)) { + const gchar* wm_name = gdk_x11_screen_get_window_manager_name(screen); + if (g_strcmp0(wm_name, "GNOME Shell") != 0) { + use_header_bar = FALSE; + } + } +#endif + if (use_header_bar) { + GtkHeaderBar *header_bar = GTK_HEADER_BAR(gtk_header_bar_new()); + gtk_widget_show(GTK_WIDGET(header_bar)); + gtk_header_bar_set_title(header_bar, "adaptive_app_demos"); + gtk_header_bar_set_show_close_button(header_bar, TRUE); + gtk_window_set_titlebar(window, GTK_WIDGET(header_bar)); + } + else { + gtk_window_set_title(window, "adaptive_app_demos"); + } + + gtk_window_set_default_size(window, 1280, 720); + gtk_widget_show(GTK_WIDGET(window)); + + g_autoptr(FlDartProject) project = fl_dart_project_new(); + fl_dart_project_set_dart_entrypoint_arguments(project, self->dart_entrypoint_arguments); + + FlView* view = fl_view_new(project); + gtk_widget_show(GTK_WIDGET(view)); + gtk_container_add(GTK_CONTAINER(window), GTK_WIDGET(view)); + + fl_register_plugins(FL_PLUGIN_REGISTRY(view)); + + gtk_widget_grab_focus(GTK_WIDGET(view)); +} + +// Implements GApplication::local_command_line. +static gboolean my_application_local_command_line(GApplication* application, gchar ***arguments, int *exit_status) { + MyApplication* self = MY_APPLICATION(application); + // Strip out the first argument as it is the binary name. + self->dart_entrypoint_arguments = g_strdupv(*arguments + 1); + + g_autoptr(GError) error = nullptr; + if (!g_application_register(application, nullptr, &error)) { + g_warning("Failed to register: %s", error->message); + *exit_status = 1; + return TRUE; + } + + g_application_activate(application); + *exit_status = 0; + + return TRUE; +} + +// Implements GObject::dispose. +static void my_application_dispose(GObject *object) { + MyApplication* self = MY_APPLICATION(object); + g_clear_pointer(&self->dart_entrypoint_arguments, g_strfreev); + G_OBJECT_CLASS(my_application_parent_class)->dispose(object); +} + +static void my_application_class_init(MyApplicationClass* klass) { + G_APPLICATION_CLASS(klass)->activate = my_application_activate; + G_APPLICATION_CLASS(klass)->local_command_line = my_application_local_command_line; + G_OBJECT_CLASS(klass)->dispose = my_application_dispose; +} + +static void my_application_init(MyApplication* self) {} + +MyApplication* my_application_new() { + return MY_APPLICATION(g_object_new(my_application_get_type(), + "application-id", APPLICATION_ID, + "flags", G_APPLICATION_NON_UNIQUE, + nullptr)); +} diff --git a/examples/ui/layout/adaptive_app_demos/linux/my_application.h b/examples/ui/layout/adaptive_app_demos/linux/my_application.h new file mode 100644 index 0000000000..72271d5e41 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/linux/my_application.h @@ -0,0 +1,18 @@ +#ifndef FLUTTER_MY_APPLICATION_H_ +#define FLUTTER_MY_APPLICATION_H_ + +#include + +G_DECLARE_FINAL_TYPE(MyApplication, my_application, MY, APPLICATION, + GtkApplication) + +/** + * my_application_new: + * + * Creates a new Flutter-based application. + * + * Returns: a new #MyApplication. + */ +MyApplication* my_application_new(); + +#endif // FLUTTER_MY_APPLICATION_H_ diff --git a/examples/ui/layout/adaptive_app_demos/macos/.gitignore b/examples/ui/layout/adaptive_app_demos/macos/.gitignore new file mode 100644 index 0000000000..d2fd377230 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/macos/.gitignore @@ -0,0 +1,6 @@ +# Flutter-related +**/Flutter/ephemeral/ +**/Pods/ + +# Xcode-related +**/xcuserdata/ diff --git a/examples/ui/layout/adaptive_app_demos/macos/Flutter/Flutter-Debug.xcconfig b/examples/ui/layout/adaptive_app_demos/macos/Flutter/Flutter-Debug.xcconfig new file mode 100644 index 0000000000..c2efd0b608 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/macos/Flutter/Flutter-Debug.xcconfig @@ -0,0 +1 @@ +#include "ephemeral/Flutter-Generated.xcconfig" diff --git a/examples/ui/layout/adaptive_app_demos/macos/Flutter/Flutter-Release.xcconfig b/examples/ui/layout/adaptive_app_demos/macos/Flutter/Flutter-Release.xcconfig new file mode 100644 index 0000000000..c2efd0b608 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/macos/Flutter/Flutter-Release.xcconfig @@ -0,0 +1 @@ +#include "ephemeral/Flutter-Generated.xcconfig" diff --git a/examples/ui/layout/adaptive_app_demos/macos/Flutter/GeneratedPluginRegistrant.swift b/examples/ui/layout/adaptive_app_demos/macos/Flutter/GeneratedPluginRegistrant.swift new file mode 100644 index 0000000000..bf37a06d95 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/macos/Flutter/GeneratedPluginRegistrant.swift @@ -0,0 +1,12 @@ +// +// Generated file. Do not edit. +// + +import FlutterMacOS +import Foundation + +import bitsdojo_window_macos + +func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) { + BitsdojoWindowPlugin.register(with: registry.registrar(forPlugin: "BitsdojoWindowPlugin")) +} diff --git a/examples/ui/layout/adaptive_app_demos/macos/Runner.xcodeproj/project.pbxproj b/examples/ui/layout/adaptive_app_demos/macos/Runner.xcodeproj/project.pbxproj new file mode 100644 index 0000000000..12c4b037cc --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/macos/Runner.xcodeproj/project.pbxproj @@ -0,0 +1,572 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 51; + objects = { + +/* Begin PBXAggregateTarget section */ + 33CC111A2044C6BA0003C045 /* Flutter Assemble */ = { + isa = PBXAggregateTarget; + buildConfigurationList = 33CC111B2044C6BA0003C045 /* Build configuration list for PBXAggregateTarget "Flutter Assemble" */; + buildPhases = ( + 33CC111E2044C6BF0003C045 /* ShellScript */, + ); + dependencies = ( + ); + name = "Flutter Assemble"; + productName = FLX; + }; +/* End PBXAggregateTarget section */ + +/* Begin PBXBuildFile section */ + 335BBD1B22A9A15E00E9071D /* GeneratedPluginRegistrant.swift in Sources */ = {isa = PBXBuildFile; fileRef = 335BBD1A22A9A15E00E9071D /* GeneratedPluginRegistrant.swift */; }; + 33CC10F12044A3C60003C045 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 33CC10F02044A3C60003C045 /* AppDelegate.swift */; }; + 33CC10F32044A3C60003C045 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 33CC10F22044A3C60003C045 /* Assets.xcassets */; }; + 33CC10F62044A3C60003C045 /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = 33CC10F42044A3C60003C045 /* MainMenu.xib */; }; + 33CC11132044BFA00003C045 /* MainFlutterWindow.swift in Sources */ = {isa = PBXBuildFile; fileRef = 33CC11122044BFA00003C045 /* MainFlutterWindow.swift */; }; +/* End PBXBuildFile section */ + +/* Begin PBXContainerItemProxy section */ + 33CC111F2044C79F0003C045 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = 33CC10E52044A3C60003C045 /* Project object */; + proxyType = 1; + remoteGlobalIDString = 33CC111A2044C6BA0003C045; + remoteInfo = FLX; + }; +/* End PBXContainerItemProxy section */ + +/* Begin PBXCopyFilesBuildPhase section */ + 33CC110E2044A8840003C045 /* Bundle Framework */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = ""; + dstSubfolderSpec = 10; + files = ( + ); + name = "Bundle Framework"; + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXCopyFilesBuildPhase section */ + +/* Begin PBXFileReference section */ + 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 /* adaptive_app_demos.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "adaptive_app_demos.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 = ""; }; + 33CC10F72044A3C60003C045 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = Info.plist; path = Runner/Info.plist; sourceTree = ""; }; + 33CC11122044BFA00003C045 /* MainFlutterWindow.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MainFlutterWindow.swift; sourceTree = ""; }; + 33CEB47222A05771004F2AC0 /* Flutter-Debug.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = "Flutter-Debug.xcconfig"; sourceTree = ""; }; + 33CEB47422A05771004F2AC0 /* Flutter-Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = "Flutter-Release.xcconfig"; sourceTree = ""; }; + 33CEB47722A0578A004F2AC0 /* Flutter-Generated.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = "Flutter-Generated.xcconfig"; path = "ephemeral/Flutter-Generated.xcconfig"; sourceTree = ""; }; + 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 = ""; }; + 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 = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + 33CC10EA2044A3C60003C045 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + 33BA886A226E78AF003329D5 /* Configs */ = { + isa = PBXGroup; + children = ( + 33E5194F232828860026EE4D /* AppInfo.xcconfig */, + 9740EEB21CF90195004384FC /* Debug.xcconfig */, + 7AFA3C8E1D35360C0083082E /* Release.xcconfig */, + 333000ED22D3DE5D00554162 /* Warnings.xcconfig */, + ); + path = Configs; + sourceTree = ""; + }; + 33CC10E42044A3C60003C045 = { + isa = PBXGroup; + children = ( + 33FAB671232836740065AC1E /* Runner */, + 33CEB47122A05771004F2AC0 /* Flutter */, + 33CC10EE2044A3C60003C045 /* Products */, + D73912EC22F37F3D000D13A0 /* Frameworks */, + ); + sourceTree = ""; + }; + 33CC10EE2044A3C60003C045 /* Products */ = { + isa = PBXGroup; + children = ( + 33CC10ED2044A3C60003C045 /* adaptive_app_demos.app */, + ); + name = Products; + sourceTree = ""; + }; + 33CC11242044D66E0003C045 /* Resources */ = { + isa = PBXGroup; + children = ( + 33CC10F22044A3C60003C045 /* Assets.xcassets */, + 33CC10F42044A3C60003C045 /* MainMenu.xib */, + 33CC10F72044A3C60003C045 /* Info.plist */, + ); + name = Resources; + path = ..; + sourceTree = ""; + }; + 33CEB47122A05771004F2AC0 /* Flutter */ = { + isa = PBXGroup; + children = ( + 335BBD1A22A9A15E00E9071D /* GeneratedPluginRegistrant.swift */, + 33CEB47222A05771004F2AC0 /* Flutter-Debug.xcconfig */, + 33CEB47422A05771004F2AC0 /* Flutter-Release.xcconfig */, + 33CEB47722A0578A004F2AC0 /* Flutter-Generated.xcconfig */, + ); + path = Flutter; + sourceTree = ""; + }; + 33FAB671232836740065AC1E /* Runner */ = { + isa = PBXGroup; + children = ( + 33CC10F02044A3C60003C045 /* AppDelegate.swift */, + 33CC11122044BFA00003C045 /* MainFlutterWindow.swift */, + 33E51913231747F40026EE4D /* DebugProfile.entitlements */, + 33E51914231749380026EE4D /* Release.entitlements */, + 33CC11242044D66E0003C045 /* Resources */, + 33BA886A226E78AF003329D5 /* Configs */, + ); + path = Runner; + sourceTree = ""; + }; + D73912EC22F37F3D000D13A0 /* Frameworks */ = { + isa = PBXGroup; + children = ( + ); + name = Frameworks; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + 33CC10EC2044A3C60003C045 /* Runner */ = { + isa = PBXNativeTarget; + buildConfigurationList = 33CC10FB2044A3C60003C045 /* Build configuration list for PBXNativeTarget "Runner" */; + buildPhases = ( + 33CC10E92044A3C60003C045 /* Sources */, + 33CC10EA2044A3C60003C045 /* Frameworks */, + 33CC10EB2044A3C60003C045 /* Resources */, + 33CC110E2044A8840003C045 /* Bundle Framework */, + 3399D490228B24CF009A79C7 /* ShellScript */, + ); + buildRules = ( + ); + dependencies = ( + 33CC11202044C79F0003C045 /* PBXTargetDependency */, + ); + name = Runner; + productName = Runner; + productReference = 33CC10ED2044A3C60003C045 /* adaptive_app_demos.app */; + productType = "com.apple.product-type.application"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + 33CC10E52044A3C60003C045 /* Project object */ = { + isa = PBXProject; + attributes = { + LastSwiftUpdateCheck = 0920; + LastUpgradeCheck = 0930; + ORGANIZATIONNAME = ""; + TargetAttributes = { + 33CC10EC2044A3C60003C045 = { + CreatedOnToolsVersion = 9.2; + LastSwiftMigration = 1100; + ProvisioningStyle = Automatic; + SystemCapabilities = { + com.apple.Sandbox = { + enabled = 1; + }; + }; + }; + 33CC111A2044C6BA0003C045 = { + CreatedOnToolsVersion = 9.2; + ProvisioningStyle = Manual; + }; + }; + }; + buildConfigurationList = 33CC10E82044A3C60003C045 /* Build configuration list for PBXProject "Runner" */; + compatibilityVersion = "Xcode 9.3"; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + ); + mainGroup = 33CC10E42044A3C60003C045; + productRefGroup = 33CC10EE2044A3C60003C045 /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + 33CC10EC2044A3C60003C045 /* Runner */, + 33CC111A2044C6BA0003C045 /* Flutter Assemble */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + 33CC10EB2044A3C60003C045 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 33CC10F32044A3C60003C045 /* Assets.xcassets in Resources */, + 33CC10F62044A3C60003C045 /* MainMenu.xib in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXShellScriptBuildPhase section */ + 3399D490228B24CF009A79C7 /* ShellScript */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + ); + outputFileListPaths = ( + ); + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "echo \"$PRODUCT_NAME.app\" > \"$PROJECT_DIR\"/Flutter/ephemeral/.app_filename && \"$FLUTTER_ROOT\"/packages/flutter_tools/bin/macos_assemble.sh embed\n"; + }; + 33CC111E2044C6BF0003C045 /* ShellScript */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + Flutter/ephemeral/FlutterInputs.xcfilelist, + ); + inputPaths = ( + Flutter/ephemeral/tripwire, + ); + outputFileListPaths = ( + Flutter/ephemeral/FlutterOutputs.xcfilelist, + ); + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"$FLUTTER_ROOT\"/packages/flutter_tools/bin/macos_assemble.sh && touch Flutter/ephemeral/tripwire"; + }; +/* End PBXShellScriptBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + 33CC10E92044A3C60003C045 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + 33CC11132044BFA00003C045 /* MainFlutterWindow.swift in Sources */, + 33CC10F12044A3C60003C045 /* AppDelegate.swift in Sources */, + 335BBD1B22A9A15E00E9071D /* GeneratedPluginRegistrant.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXTargetDependency section */ + 33CC11202044C79F0003C045 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = 33CC111A2044C6BA0003C045 /* Flutter Assemble */; + targetProxy = 33CC111F2044C79F0003C045 /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + +/* Begin PBXVariantGroup section */ + 33CC10F42044A3C60003C045 /* MainMenu.xib */ = { + isa = PBXVariantGroup; + children = ( + 33CC10F52044A3C60003C045 /* Base */, + ); + name = MainMenu.xib; + path = Runner; + sourceTree = ""; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + 338D0CE9231458BD00FA5F75 /* Profile */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CODE_SIGN_IDENTITY = "-"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MACOSX_DEPLOYMENT_TARGET = 10.11; + MTL_ENABLE_DEBUG_INFO = NO; + SDKROOT = macosx; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + }; + name = Profile; + }; + 338D0CEA231458BD00FA5F75 /* Profile */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 33E5194F232828860026EE4D /* AppInfo.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CODE_SIGN_ENTITLEMENTS = Runner/DebugProfile.entitlements; + CODE_SIGN_STYLE = Automatic; + COMBINE_HIDPI_IMAGES = YES; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/../Frameworks", + ); + PROVISIONING_PROFILE_SPECIFIER = ""; + SWIFT_VERSION = 5.0; + }; + name = Profile; + }; + 338D0CEB231458BD00FA5F75 /* Profile */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_STYLE = Manual; + PRODUCT_NAME = "$(TARGET_NAME)"; + }; + name = Profile; + }; + 33CC10F92044A3C60003C045 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 9740EEB21CF90195004384FC /* Debug.xcconfig */; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CODE_SIGN_IDENTITY = "-"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MACOSX_DEPLOYMENT_TARGET = 10.11; + MTL_ENABLE_DEBUG_INFO = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = macosx; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + }; + name = Debug; + }; + 33CC10FA2044A3C60003C045 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CODE_SIGN_IDENTITY = "-"; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + MACOSX_DEPLOYMENT_TARGET = 10.11; + MTL_ENABLE_DEBUG_INFO = NO; + SDKROOT = macosx; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + }; + name = Release; + }; + 33CC10FC2044A3C60003C045 /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 33E5194F232828860026EE4D /* AppInfo.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CODE_SIGN_ENTITLEMENTS = Runner/DebugProfile.entitlements; + CODE_SIGN_STYLE = Automatic; + COMBINE_HIDPI_IMAGES = YES; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/../Frameworks", + ); + PROVISIONING_PROFILE_SPECIFIER = ""; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 5.0; + }; + name = Debug; + }; + 33CC10FD2044A3C60003C045 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 33E5194F232828860026EE4D /* AppInfo.xcconfig */; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + CLANG_ENABLE_MODULES = YES; + CODE_SIGN_ENTITLEMENTS = Runner/Release.entitlements; + CODE_SIGN_STYLE = Automatic; + COMBINE_HIDPI_IMAGES = YES; + INFOPLIST_FILE = Runner/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/../Frameworks", + ); + PROVISIONING_PROFILE_SPECIFIER = ""; + SWIFT_VERSION = 5.0; + }; + name = Release; + }; + 33CC111C2044C6BA0003C045 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_STYLE = Manual; + PRODUCT_NAME = "$(TARGET_NAME)"; + }; + name = Debug; + }; + 33CC111D2044C6BA0003C045 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_STYLE = Automatic; + PRODUCT_NAME = "$(TARGET_NAME)"; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + 33CC10E82044A3C60003C045 /* Build configuration list for PBXProject "Runner" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 33CC10F92044A3C60003C045 /* Debug */, + 33CC10FA2044A3C60003C045 /* Release */, + 338D0CE9231458BD00FA5F75 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 33CC10FB2044A3C60003C045 /* Build configuration list for PBXNativeTarget "Runner" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 33CC10FC2044A3C60003C045 /* Debug */, + 33CC10FD2044A3C60003C045 /* Release */, + 338D0CEA231458BD00FA5F75 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + 33CC111B2044C6BA0003C045 /* Build configuration list for PBXAggregateTarget "Flutter Assemble" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + 33CC111C2044C6BA0003C045 /* Debug */, + 33CC111D2044C6BA0003C045 /* Release */, + 338D0CEB231458BD00FA5F75 /* Profile */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = 33CC10E52044A3C60003C045 /* Project object */; +} diff --git a/examples/ui/layout/adaptive_app_demos/macos/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/examples/ui/layout/adaptive_app_demos/macos/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 0000000000..18d981003d --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/macos/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/examples/ui/layout/adaptive_app_demos/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/examples/ui/layout/adaptive_app_demos/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme new file mode 100644 index 0000000000..1376ec7b50 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme @@ -0,0 +1,89 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/examples/ui/layout/adaptive_app_demos/macos/Runner.xcworkspace/contents.xcworkspacedata b/examples/ui/layout/adaptive_app_demos/macos/Runner.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000000..1d526a16ed --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/macos/Runner.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/examples/ui/layout/adaptive_app_demos/macos/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/examples/ui/layout/adaptive_app_demos/macos/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 0000000000..18d981003d --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/macos/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/examples/ui/layout/adaptive_app_demos/macos/Runner/AppDelegate.swift b/examples/ui/layout/adaptive_app_demos/macos/Runner/AppDelegate.swift new file mode 100644 index 0000000000..d53ef64377 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/macos/Runner/AppDelegate.swift @@ -0,0 +1,9 @@ +import Cocoa +import FlutterMacOS + +@NSApplicationMain +class AppDelegate: FlutterAppDelegate { + override func applicationShouldTerminateAfterLastWindowClosed(_ sender: NSApplication) -> Bool { + return true + } +} diff --git a/examples/ui/layout/adaptive_app_demos/macos/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json b/examples/ui/layout/adaptive_app_demos/macos/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json new file mode 100644 index 0000000000..a2ec33f19f --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/macos/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -0,0 +1,68 @@ +{ + "images" : [ + { + "size" : "16x16", + "idiom" : "mac", + "filename" : "app_icon_16.png", + "scale" : "1x" + }, + { + "size" : "16x16", + "idiom" : "mac", + "filename" : "app_icon_32.png", + "scale" : "2x" + }, + { + "size" : "32x32", + "idiom" : "mac", + "filename" : "app_icon_32.png", + "scale" : "1x" + }, + { + "size" : "32x32", + "idiom" : "mac", + "filename" : "app_icon_64.png", + "scale" : "2x" + }, + { + "size" : "128x128", + "idiom" : "mac", + "filename" : "app_icon_128.png", + "scale" : "1x" + }, + { + "size" : "128x128", + "idiom" : "mac", + "filename" : "app_icon_256.png", + "scale" : "2x" + }, + { + "size" : "256x256", + "idiom" : "mac", + "filename" : "app_icon_256.png", + "scale" : "1x" + }, + { + "size" : "256x256", + "idiom" : "mac", + "filename" : "app_icon_512.png", + "scale" : "2x" + }, + { + "size" : "512x512", + "idiom" : "mac", + "filename" : "app_icon_512.png", + "scale" : "1x" + }, + { + "size" : "512x512", + "idiom" : "mac", + "filename" : "app_icon_1024.png", + "scale" : "2x" + } + ], + "info" : { + "version" : 1, + "author" : "xcode" + } +} diff --git a/examples/ui/layout/adaptive_app_demos/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_1024.png b/examples/ui/layout/adaptive_app_demos/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_1024.png new file mode 100644 index 0000000000000000000000000000000000000000..3c4935a7ca84f0976aca34b7f2895d65fb94d1ea GIT binary patch literal 46993 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 literal 0 HcmV?d00001 diff --git a/examples/ui/layout/adaptive_app_demos/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_128.png b/examples/ui/layout/adaptive_app_demos/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_128.png new file mode 100644 index 0000000000000000000000000000000000000000..ed4cc16421680a50164ba74381b4b35ceaa0ccfc GIT binary patch literal 3276 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 N;OXk;vd$@?2>?>Ex^Vyi literal 0 HcmV?d00001 diff --git a/examples/ui/layout/adaptive_app_demos/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_256.png b/examples/ui/layout/adaptive_app_demos/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_256.png new file mode 100644 index 0000000000000000000000000000000000000000..bcbf36df2f2aaaa0a63c7dabc94e600184229d0d GIT binary patch literal 5933 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 f$KZHO*s&vt|9^w-6P?|#0pRK8NSwWJ?9znhg z3{`3j3=J&|48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6@fg!ItFh?!xdN1Q+aGJ{c&& zS>O>_%)r1c48n{Iv*t(u1=&kHeO=ifbFy+6aSK)V_AxLppYn8Z42d|rc6w}vOsL55 z`t&mC&y2@JTEyg!eDiFX^k#CC!jq%>erB=yHqUP0XcDOTw6ko}L zX;EmMrq(fKk*eygEuA616;0)>@A{TK|55PV@70 z$OfzS*(VJxQev3J?yY?O=ul(v`fp}?u9z`JK3ugibK>)DyCwImZOF4d{xK%%Ks1*} zv$oa)9anR%lXIBUqYnhLmT>VOzHfNP?ZwJNZ!5$s9M08RynIvaXw>@G^T9@r9^KH1 zVy??F&uuk)bH9Y4pQY!hP58i_H6 znl-NcuCpLV6ZWU;4C zu@9exF&OZi`Bovq_m%T+WhU2kvkz@^_LpycBvqm3bMpLw8X-Or5sL>0AKE1$(k_L=_Zc=CUq#=x1-QZf)G7nHu@fmsQ1eN_N3+nTEz`4HI4Z6uVlE zJH+X&det8JU?tO?upcM4Z=cV!JV;yF>FfL5Q$M|W_2Z!P`S=}Wzp|_1^#d%e?_H`> zV@%vA$+bFVqhw9`U;TfP|5|PD{||OiYdor8P*i??|NJcb%kzT_73*7WE?Ua5hAnR2 z=7WE=PhTlJ#ZeRznjTUb;`E(wkMZrj4e|Hilz-mK>9cZHQY**5TUPw~u}k;u73KI}xAx!0m-)GVia|x^d3p~s_9gh83jA&Ra<8rM%`>U3x69t&NzbwWY}7Ar?)FK#IZ0z|d0H0EkRO w3{9;}4Xg|ebq&m|3=9_N6z8I7$jwj5OsmAL;bP(Gi$Dzwp00i_>zopr02+f8CIA2c literal 0 HcmV?d00001 diff --git a/examples/ui/layout/adaptive_app_demos/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_512.png b/examples/ui/layout/adaptive_app_demos/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_512.png new file mode 100644 index 0000000000000000000000000000000000000000..e71a726136a47ed24125c7efc79d68a4a01961b4 GIT binary patch literal 14800 zcmZ{Lc|26@`~R6Crm_qwyCLMMh!)vm)F@HWt|+6V6lE=CaHfcnn4;2x(VilEl9-V} zsce-cGK|WaF}4{T=lt&J`Fy_L-|vs#>v^7+XU=`!*L|PszSj43o%o$Dj`9mM7C;ar z@3hrnHw59q|KcHn4EQr~{_70*BYk4yj*SqM&s>NcnFoIBdT-sm1A@YrK@dF#f+SPu z{Sb8441xx|AjtYQ1gQq5z1g(^49Fba=I8)nl7BMGpQeB(^8>dY41u79Dw6+j(A_jO z@K83?X~$;S-ud$gYZfZg5|bdvlI`TMaqs!>e}3%9HXev<6;dZZT8Yx`&;pKnN*iCJ z&x_ycWo9{*O}Gc$JHU`%s*$C%@v73hd+Mf%%9ph_Y1juXamcTAHd9tkwoua7yBu?V zgROzw>LbxAw3^;bZU~ZGnnHW?=7r9ZAK#wxT;0O<*z~_>^uV+VCU9B@)|r z*z^v>$!oH7%WZYrwf)zjGU|(8I%9PoktcsH8`z^%$48u z(O_}1U25s@Q*9{-3O!+t?w*QHo;~P99;6-KTGO{Cb#ADDYWF!eATsx{xh-!YMBiuE z%bJc7j^^B$Sa|27XRxg(XTaxWoFI}VFfV>0py8mMM;b^vH}49j;kwCA+Lw=q8lptk z?Pe`{wHI39A&xYkltf5*y%;-DF>5v`-lm0vydYtmqo0sClh5ueHCLJ+6$0y67Z zO-_LCT|JXi3tN7fB-!0_Kn#I+=tyUj87uR5*0>|SZ zy3x2;aql87`{aPZ@UbBwY0;Z-a*lYL90YApOAMKur7YgOiqA~Cne6%b&{V-t>Am2c z{eyEuKl!GsA*jF2H_gvX?bP~v46%3ax$r~B$HnZQ;UiCmRl`ROK8v>;Zs~upH9}qu1ZA3kn-AY2k2@CaH=Qh7K6`nU z3ib(Bk%H*^_omL6N4_G5NpY20UXGi}a$!}#lf<&J4~nhRwRM5cCB3Zvv#6+N1$g@W zj9?qmQ`zz-G9HTpoNl~bCOaEQqlTVYi7G0WmB5E34;f{SGcLvFpOb`+Zm)C(wjqLA z2;+nmB6~QDXbxZGWKLt38I%X$Q!;h zup9S~byxKv=$x|^YEV;l0l67jH~E8BU45ft_7xomac-48oq4PZpSNJbw<7DTM4mmz z!$)z#04cy%b8w@cOvjmb36o;gwYIOLwy+{I#3dJj#W4QdOWwJQ2#20AL49`hSFUa7 zFNAN3OD==G3_kbr1d96>l`_cI`<=thKNh5>hgg7FV>5TfC6d#u)9BNXi@p1K*;2Is zz+x;l4GbSt#*%>1iq}jGIebXYJY5;PGG0y(^{>SSuZY89aL`sDghOM&&pyP6ABJ#w zYwK~4^1eUQD)4!GL>`zrWeHV z-W!6JZbW*Ngo;Edhp_cOysYr!uhKS}vIg_UC}x z=jXxQfV@4B3`5 z!u#byBVXV5GtrSx_8bnT@iKv=Uc6n)Zpa`<9N>+!J~Loxptl5$Z`!u<3a)-+P)say z#=jc7^mJzPMI2;yMhCmN7YN78E7-^S(t8E}FklC;z|4PL{bO|JieM#p1mBjwyZMEm zkX^A1RXPGeS2YqtPMX~~t^$~oeFfWAU#jVLi%Z@l2hle^3|e(q?(uS=BVauF?VF{j z(owKLJuze;_@5p1OtRyrT`EFXf)NfMYb-)E8RVVdr<@}M>4R&~P=;B`c1L%o|8YfB z-a(LB-i8jc5!&B5cowyI2~M^YID&@Xt(D9v{|DB z959W z*vEA77fh3*w*UJ`4Y(bxsoEy6hm7_Wc5gT0^cvso%Ow>9<&@9Q>mxb6-^pv)5yc>n zQ~^!qY(lPQ1EDGkr%_*y*D8T^YbCa52^MVqYpTLhgJ;N5PfCQ{SXk|plD#Sm+g4c- zFeL2Dih35W4{_qb75U`4Rb#S0FEo%F85dOhXSX0huPOxdAid{&p6P;+9}I)XU7^=3RZu9M(g0dLyz_7$8K{`AddBLOfU&B_QNHtmsnNXq`hy~% zvJ{vtz~Yt9X|o}5vXX)9ZCHaRq8iAb zUDj8%(MpzJN39LferYKvIc!)z^5T-eW@j3h9a6d%WZ!%@2^@4+6%Z9W1GHZbOj|sb z0cU$}*~G$fYvDC|XulSC_;m}?KC2jg5pxES$Bt!hA|@EX*2+O!UEb5sn_^d>z;>;r~ zmO3BivdXboPY*}amsO&`xk|e)S*u=`o67MC(1WTB;OwG+ua4UV7T5Wvy%?U{Pa5cO zMoLG>#@chO{Oc72XPyX8f3jC7P`$j4$)0wc(b50COaDP3_Cm}aPAglUa7kRXAqmo5 z0KDD7G>Gmnpons40WJNYn+pxko92GXy@PvSErKE-Ou3)3UiRr7!L4+0%+5}sD{bf)uj^ounQ-Yn2%%JoZ%FjUv%yjS?Ks4u_88Jh%tNliYW~817IV@fqd1T zi(?;Fv-s3rQEn=9G*E-QzSl%YS|^fe*yn}Aqh!&P<5%#oB?*{wZMa5$PYa*A{VA8! zbOfS1W!W}cTo%g~iP$>WhE_x7#O4?h$jq=>{M77>bTAK_ z6uU0tl6HARboGi}=4krr6WP`9`aAt&P5ON1v(+H{T?jZuJ}B{L-=z3VX)}mZwzrqH zpf?T!k&$?{&{0_p>b`kdJbSb(p~tFcuG4zh6}hfl@ues6CfJu<-P+!>FlYMlD_3!E z9$6VE==tlxNYe(s;@8@+4c4jQ$R2g8t0QwE>Et|)5)@kJj6^yaqFYY?0LEM2C!+7+ z+FN|UxR1GCy1KA`{T_%24U+Vserchr5h`;U7TZPr@43x#MMN{@vV?KSII}R@5k`7cVK}E;c)$f~_{ZLDOoL|-01p~oafxi4F zG$?Wha&a*rTnz-nTI-bAJ*SLb!5(L!#iRdvLEyo>7D_=H78-qZrm=6{hkUR{tR{H! z`ZTOV$Oi6^qX5=_{f}V9h}WJAO%h9)kEUF#*-JyYDbOGZ>Nfs%7L}4p zopIul&&Bbn!C9o83ypC6W4F$X=_|pex$V4!Whm#48Wfm3*oAW0Gc&#&b+oq<8>aZR z2BLpouQQwyf$aHpQUK3pMRj(mS^^t#s$IC3{j*m9&l7sQt@RU{o_}N-xI_lh`rND^ zX~-8$o(;p^wf3_5-WZ^qgW`e8T@37{`J)e2KJdSSCUpX6KZu0Ga&U*+u3*PDAs1uK zpl)40+fROA@Vo#vK?^@Pq%w8DO9HdfmH+~vNinZ$5GRz?sD|k246NepqZd`>81P^P z#x#3kUS-}x4k%&~iEUrsb&-X#_;;?y9oCP4crMkC`=q58#NxQ| z*NXNA;GR4X=GiGXwab5=&M3j04fQw%2UxM`S(aE)_PlgJttBX96$$lY@Q%0xV^IbcHqzw^Uk&E=vFB;EQ@kzVIeM8lDIW_Q_ zrfy)l6s2QBApF;J2xTD_@wuNMlwDfsdfMyzRq)<>qG{M)Yt}9F1{1HaI_X7=F=7>& zYB54VaKlxu0lIgS;Ac&25Aw(tcf@K~(cvPi8(OChzhlYp6}#<_MVhU95sD&)n0FtL zmxm4w$~s(S9jmHOgyovpG!x4uLfJsMsJn^QMraKAa1Ix?{zkV!a7{f%-!u2{NqZ&) zo+^XB`eFQ4 zk-(;_>T#pTKyvW${yL|XXbcv?CE2Tp<3(PjeXhu^Jrp6^Mj}lg_)jamK{g;C+q^Da ztb!gV!q5)B7G1%lVanA2b>Xs?%hzCgJ{Hc!ldr9dnz7k^xG#4pDpr|0ZmxxiUVl}j zbD_rg3yAFQ>nnc)0>71D==715jRj4XsRb2#_lJoSOwky&c4957V-|m)@>b^Nak1!8 z@DsIOS8>Oe^T>tgB)WX3Y^I^65Uae+2M;$RxX_C)Aoo0dltvoRRIVQkpnegWj;D#G z+TwFIRUN%bZW3(K{8yN8!(1i0O!X3YN?Zo08L5D~)_tWQA8&|CvuQb8Od?p_x=GMF z-B@v9iNLYS1lUsbb`!%f5+1ev8RFPk7xyx5*G;ybRw(PW*yEZ$unu2`wpH)7b@ZXEz4Jr{?KZKYl!+3^)Q z)~^g?KlPGtT!{yQU&(Z&^rVjPu>ueeZN86AnhRwc)m|;5NvM&W3xD%n`+Hjg5$e8M zKh1Ju82L~&^ z-IQ5bYhsjqJfr38iwi~8<{oeREh|3l)*Enj4&Q$+mM$15YqwXeufK9P^(O=pj=F-1 zD+&REgwY~!W#ZPccSEi(*jiKJ5)Q|zX;hP}S2T9j_);epH9JQs{n>RG}{Nak)vIbfa zFQm?H;D+tzrBN2)6{?Mo%fzN6;6d_h0Qyn61)+XT63=!T*WQyRUoB_x0_)Ir`$FtS zak07C(mOaWN5m%bk?F9X&@mEVKN%{R6obt(9qw&p>w&p;R*l2th9$D^*`pC}NmB+v z>bk;OJ(C8p$G;jNvRsBbt=a!!tKnjJ`9*yQFgjEN1HcC<&>u9aStT3>Oq=MOQV!#WOZ6{cv$YVmlJdovPRV}<=IZUPeBVh5DC z91-?kimq3JUr;UMQ@0?h52gupvG=~(5AVdP(2(%*sL8!#K1-L$9B7MrWGdt(h&whR@vz~0oEHF8u3U1Q zdGdaIytJj4x@eF*E+^zgi{nPCA8tkjN}UoR8WhDzM3-zLqx0z?2tTdDKyENM={fp8VC@3Dt`AiK$;K#H$K2{08mrHG%jgEOLX3MCsG>afZm_0mLPS4jmYUJp~Dm! z5AUe_vEaOAT3zWdwl#cLvqwd1^lwW?gt7(92wEsOE6c#<0}{szFV4(uO70?3>=((! zQr}1{J?Wx2ZmjxYL_8OB*m&mimfojzYn~PiJ2g8R&ZRx-i^yF#sdhEWXAUIZ@J?T$ zs3PgT2<&Ki>Bob_n(@S>kUIvE+nY~ti9~6j;O9VAG#{oZ!DZCW)}i6iA!Tgsyz+hC z1VVyvbQ_nwgdZSEP=U4d#U`2*`e~d4y8uM4Bcmm%!jidaee#4WqN!ZnlBmbYpuaO! z!rU3`Kl2 z0O7PD&fQ|_b)Ub!g9^s;C2e>1i*2&?1$6yEn?~Y zI)-WIN8N(5s9;grW+J@K@I%g#?G&hzmlgV=L}ZA{f>3YCMx^P{u@c5Z;U1qmdk#)L zvX6z1!sL>+@vxO8qVn#k3YxYi?8ggV){?Rn@j$+Fd4-QkuH1@)j#3-=f82GZ!nl~{ zzZ(?kO`ANttVeHSo%xmH!NmNZECh*{s!-8S>ALoe5xOPs>|P5BbUmP@rlV8`d(c=7 zypcpLaI*FM^;GM%@q`GAb8kO`$oE|R48yn)?p(c1t>5;Wwn5r6ck&uw4}TnT80jI`IS~J%q8CpaVgIze<8IykSpVBg8~E! zW_tGqB;GO47r_er05y+Kwrcn{VLxL*1;HMv@*sd}MB6DH4zaP~u4Y;>@Nw7?F8S?c zfVIY(^ntnGgWlD|idzGz$Y+Oh(Ra=&VIf4!K2W*a)(%5%78s}8qxOknAGtDAq+HMO zM+Nu;0OgQRn36 zA@~a8`uVQ~v9?d!BxnsVaB-z-djypO44BjQAmg7&eVoaew|~)wH$SgefJ2$7_RiY+ z_7ACGoFM6Lhvho+eUG@pU&0X(Uy(*j;9pr?ET?FHTXadlfXC|MReZoU5>AG`mTM<% zc~*I@E*u0|hwVTdFA~4^b2VT7_~}~tCueNY{de3og=ASFQ`)0dhC2~Ne<}}Rc?ptA zi}+bQE%N9o*hpSUMH)9xt%Zlz&^p&5=cW}{m#f85iVX64^{!(vhClT<I)+c)RuiyrZqIw4v`z%YK&;_Fh4_+0B?qAGxMfAM`LzG_bjD>ib4;KGT4_1I>sxvL&&qp40ajgQOqIE^9=Az4w#ymo)bW-Vg{T!n=l&|nR_ zw+wcH|FxUH63)~{M;goHepmD{Fe?W9sO|eJP9L$G<{e_7FxxuXQ+)(Z^@;X8I1=%k zTK$gbHA1^4W<`q~ubQ0M_C^CA5#Z&*nGc(T?4Y_2jLu&FJDQYpCSiRny->$+nC9Jl z?avTW`ZXYT51%SrEq!}dXNM&!pM6nmL^lce=%S7{_TS)ckN8;{p*LT~LMgmlE~dpL zEBQy-jDj%cSK6N3)|CCR0LQ$N6iDM~+-1Oz|LAdkip(VZcO`gqCuJ+(Mm{m6@P%_; zBtF|MMVMP;E`5NJ{&@4j^JE5j&}(Jq{lCGL(P^#uqvbD`2)FVyfNgy|pvT!XY;02Z zZWbgGsvi6#!*$Zxwd{Xk6_M{+^yV_K@%_SAW(x)Lg|*AuG-%g2#GQYk8F?W&8|2dU z;00ppzrQnnYXnT`(S%_qF2#QNz&@Y$zcq+O8p>Gto2&4z8(^#cY?DuQwBQP4Fe?qUK_-yh4xT{8O@gb`uh` z>Q%jrgPAnANn4_)->n;w{Mei#J)F+`12&+-MLKSRzF6bL3;4O~oy~v7 zL0K-=m?>>(^qDCgvFRLBI@`04EGdTxe5}xBg#7#Wb!aUED;?5BLDEvZ@tai4*Rh8& z4V)cOr}DJ0&(FjWH%50Y+&=WtB42^eEVsmaHG)Il#j265oK&Bot(+-IIn`6InmuE# z;)qXs+X{fSb8^rYb#46X5?KCzH9X0>ppBQi(aKS--;4yA%0N|D<#8RZlOS(8n26=u zv~y;KC>`ypW=aqj`&x9 z0Zm>NKp}hPJu1+QDo(_U(Gt0SZ`IJWnp%QK`pye>Bm!w{sG>;VU^2 z4lZhV1}tCE8(?zu#j99|l3-qRBcz3bG+DlyxPGB$^6B^ssc_qYQ6lG0q~EAI?1$?( zahfn%etVvuKwB7R=>JDQluP97nLDM6*5;b0Ox#b{4nIgZA*+?IvyDN{K9WGnlA=Ju z+)6hjr}{;GxQQIDr3*lf32lRp{nHP8uiz^Fa|K+dUc@wD4Kf5RPxVkUZFCdtZH{+=c$AC)G2T-Qn@BPbr zZigIhKhKrVYy`!Mlc#HVr=CURVrhUjExhI~gZ%a=WM9BwvnN?=z!_ZQ$(sP?X;2Jy zyI$}H^^SvH2tf6+Uk$pJww@ngzPp856-l9g6WtW+%Yf>N^A}->#1W2n=WJ%sZ0<){Z&#% z^Kzl$>Km)sIxKLFjtc;}bZeoaZSpL4>`jCmAeRM-NP9sQ&-mi@p0j7Iq>1n&z@8?M z%dM7K^SgE5z)@i5w#rLE4+8%|^J`a6wYr`3BlvdD>7xW?Dd>`0HC0o{w7r_ot~h*G z2gI7Y!AUZ6YN+z$=GNzns@Tu7BxgAb3MBha30-ZG7a%rckU5}y{df`lj@^+34kr5> z988PPbWYdHye~=?>uZ4N&MN@4RBLk_?9W*b$}jqt0j%>yO9QOV(*!#cX~=wRdVL&S zhPQ{${0CGU-rfdS&b@u|IK{hV2Z=(*B2d0?&jwWfT=?Gk`4T9TfMQ)CfNgpLQa#>Q z%6A$w#QNc&qOtrHAbqY>J782@!X{9Y@N(HMSr;PP^;0DlJNxfC`oMB%Ocg zC*hnEsF|p*=CVe^dT)>BTL0yff)uo!U<+_2o3p)CE8quU1JI(=6)9$KxVdJYD*S*~ zzNeSkzFIQyqK}578+qq6X8rrRdgX z4k&R=AGex~a)MoB0pK&|yA<(*J#P&tR?ImBVD)ZTA4VH5L5DxXe<-*s`Aox%H1{-^Qa`kG_DGXD%QX-;l1#&#IVQP6>kir ztO@~ZvJDPnTvKt>fc*(j$W^)JhWk{4kWwbpFIXzuPt2V%M4H19-i5Gn*6(D`4_c1+ zYoI1@yT^~9JF~t>2eVM6p=GP3b*;daJpQOhAMNO|LKnwE2B5n8y9mf;q=)-L_FfD0 z<}YIRBO{k)6AHAn8iG>pYT+3bJ7jvP9}LSMR1nZW$5HR%PD1rFz z{4XE^Vmi-QX#?|Farz=CYS_8!%$E#G%4j2+;Avz|9QBj|YIExYk?y-1(j}0h{$$MnC_*F0U2*ExSi1ZCb_S9aV zTgyGP0Cl=m`emxM4Qih1E{`J{4oJo8K}WnH`@js^pR7Z-vTBK5F5JIFCDN}7pU^_nV>NTz@2$|Kcc5o+L&^Db_AQ);F?)X5BF*QJRCdLI-a%gW z++DZM)x=6*fNrSaUA&hf&CUqC$F*y^CJC-MAm9gd*5#^mh;-dR1?a&<3-hp3@}XN! z&8dcwo6=MQua%0KFvYbi>O{j)RrbDQo3S*y!oEJ~2=}^-v%zn~@hnmKGOvX6JLr;>DNC3)={8OM9n5Zs*(DlS*|%JTniJX2Uav7sOFT0vdIiUOC5pEtY?EF)@Fh9pCfD%N zXskZ8b^ldI{HHj{-l?iWo@IW6Nr`hAS>f8S*8FGc*gmcK^f2JS+>I&r#Gcewy=-JM zv0*w<5qBa6UQB@`esOG*4*t@7c9AkrTpM`v=eY?cO#z17H9B%Xy4m!}LhW}*iZ27w1?HrevgB1SZ1q2X$mm@FK@Qt7o z!s~Lio^IRdwzyvQ80{5iYeTV@mAo=2o5>KepRH0d{*Szlg~n%w2)S5v2|K8}pj;c{ zoDRLvYJO1@?x-=mq+LVhD{l-1-Dw4`7M?3@+ z`fu7?1#9W++6Y46N=H0+bD|CJH~q*CdEBm8D##VS7`cXy4~+x=ZC17rJeBh zI~qW^&FU`+e!{AKO3(>z5Ghh14bUT$=4B>@DVm(cj* zSLA*j!?z!=SLuVvAPh_EFKx}JE8T8;Gx)LH^H136=#Jn3Bo*@?=S`5M{WJPY&~ODs z+^V57DhJ2kD^Z|&;H}eoN~sxS8~cN5u1eW{t&y{!ouH`%p4(yDZaqw$%dlm4A0f0| z8H}XZFDs?3QuqI^PEy}T;r!5+QpfKEt&V|D)Z*xoJ?XXZ+k!sU2X!rcTF4tg8vWPM zr-JE>iu9DZK`#R5gQO{nyGDALY!l@M&eZsc*j*H~l4lD)8S?R*nrdxn?ELUR4kxK? zH(t9IM~^mfPs9WxR>J{agadQg@N6%=tUQ8Bn++TC|Hbqn*q;WydeNIS@gt|3j!P`w zxCKoeKQ*WBlF%l4-apIhERKl(hXS1vVk$U?Wifi)&lL6vF@bmFXmQEe{=$iG)Zt*l z0df@_)B-P_^K2P7h=>OIQ6f0Q-E@|M?$Z5n^oN>2_sBCpN>q(LnqUoef{tm^5^L$# z{<SL zKmH78cHX`4cBKIY8u1x*lwrgP^fJ%E&&AmHrRY7^hH*=2OA9K?!+|~Aeia=nAA`5~ z#zI=h#I>@FXaGk(n)0uqelNY;A5I9obE~OjsuW!%^NxK*52CfBPWYuw--v<1v|B>h z8R=#$TS-Pt3?d@P+xqmYpL4oB8- z>w99}%xqy9W!A^ODfLq8iA@z}10u?o#nG#MXumSaybi(S{`wIM z&nE3n2gWWMu93EvtofWzvG2{v;$ysuw^8q?3n}y=pB1vUr5gi++PjiyBH3jzKBRny zSO~O++1ZLdy7v7VzS&$yY;^Z7*j_#BI`PK`dAzJa9G1{9ahPqPi1C}ti+L)WHii*= z+RZ^+at-tlatc4|akPa&9H;%gn9aS`X_kfb>n>#NTyUVM6m4NCIfLm(28>qaYv7}t zn`M;XcONtXoa3#u3{L-ytd_&g z2mO$8CnE?460w#eSm|smlnNwFHM;A&IxSKLzVkV7nNVqZ*A`)eI{Nbg6WxsarAFuc=FFf1z|%#eTvBgUhY}N zsCT>`_YO>14i^vFX0KXbARLItzT{TeD%N~=ovGtZ6j{>PxkuYlHNTe0!u>rgw#?td z{)n=QrGvgCDE6BUem$Rh(1y!$@(Bn!k3E0|>PQ(8O==zN`?yBhAqlWyq+c%+h?p^- zE&OtLind}^_=>pbhxOgOIC0q9{cLK6p6*eg_|S+p9$W~_u4wzx@N?$QmFg2S)m~^R znni$X{U*!lHgdS@fI;|Owl=9Gwi?dr0m#>yL<8<}bLW_Kpl| zSGesADX&n?qmHC`2GyIev^hi~ka}ISZ^Y4w-yUzyPxaJB0mm%ww^>if3<;P^U+L5=s+cifT-ct*;!dOOk#SOZNv@a^J|DrS3YtSn8EEAlabX1NV3RfHwZn_41Xa z4;$taa6JJR()-FQ<#0G~WlML<l5I+IPnqDpW(PP>hRcQ+S2zU?tbG^(y z1K_?1R){jF;OKGw0WYjnm>aPxnmr5?bP?^B-|Fv`TT4ecH3O`Z3`X_r;vgFn>t1tE zGE6W2PODPKUj+@a%3lB;lS?srE5lp(tZ;uvzrPb){f~n7v_^z! z=16!Vdm!Q0q#?jy0qY%#0d^J8D9o)A;Rj!~j%u>KPs-tB08{4s1ry9VS>gW~5o^L; z7vyjmfXDGRVFa@-mis2!a$GI@9kE*pe3y_C3-$iVGUTQzZE+%>vT0=r|2%xMDBC@>WlkGU4CjoWs@D(rZ zS1NB#e69fvI^O#5r$Hj;bhHPEE4)4q5*t5Gyjzyc{)o459VkEhJ$%hJUC&67k z7gdo`Q*Jm3R&?ueqBezPTa}OI9wqcc;FRTcfVXob^z|dNIB0hMkHV26$zA%YgR$sM zTKM61S}#wJ#u+0UDE3N+U*~Tz1nnV;W<8Akz&6M7-6mIF(Pq`wJ1A%loYL( zIS;&2((xbyL7zoyaY2Sa%BBYBxo6Aa*53`~e@|RA`MP+?iI4KZ+y4EU&I zS_|(#*&j2hxpELa3r0O7ok&5!ijRiRu9i-_3cdnydZU9Mp6Y);skv%!$~`i-J7e-g zj@EoHf+gtcrKf;tY5`4iLnWSHa)9brUM$XmEzG3T0BXTG_+0}p7uGLs^(uYh0j$;~ zT1&~S%_Y5VImvf1EkD7vP-@F%hRlBe{a@T!SW(4WEQd1!O47*Crf@u-TS==48iR5x z!*`Ul4AJI^vIVaN3u5UifXBX{fJ@z>4Q2#1?jpcdLocwymBgKrZ+^Cb@QuIxl58B* zD{t-W3;M;{MGHm_@&n(6A-AsD;JO#>J3o4ru{hy;k;8?=rkp0tadEEcHNECoTI(W31`El-CI0eWQ zWD4&2ehvACkLCjG`82T`L^cNNC4Oo2IH(T4e;C75IwkJ&`|ArqSKD}TX_-E*eeiU& ziUuAC)A?d>-;@9Jcmsdca>@q1`6vzo^3etEH%1Gco&gvC{;Y-qyJ$Re`#A!5Kd((5 z6sSiKnA20uPX0**Mu&6tNgTunUR1sodoNmDst1&wz8v7AG3=^huypTi`S7+GrO$D6 z)0Ja-y5r?QQ+&jVQBjitIZ`z2Ia}iXWf#=#>nU+ zL29$)Q>f#o<#4deo!Kuo@WX{G(`eLaf%(_Nc}E`q=BXHMS(Os{!g%(|&tTDIczE_# z5y%wjCp9S?&*8bS3imJi_9_COC)-_;6D9~8Om@?U2PGQpM^7LKG7Q~(AoSRgP#tZfVDF_zr;_U*!F9qsbVQ@un9O2>T4M5tr0B~~v_@a=w^8h510a#=L z;8+9zhV}57uajb+9DbZm1G`_NqOuKN`bQ2fw9A*v*Kdb_E-SA`?2 z)OFIY-%uD`JZUZg?D4lHtNegKgWr!1m%hOpu5`R+bZ2K#&)*R-7ElKYo0$0xYxIL8 zLg%u|4oZixz}ILB-@aS4=XOe)z!VL6@?dX{LW^YCPjKtyw44)xT=H;h(fmFr>R?p%r5*}W z7_bo0drVDRq9V9QL4_!dazughK6t}tVVvBq={T0+3(1zmb>f+|;{D%J?^xnZcqio5 z%H?@L+L-CIdO=x6QrALL9&PwvjrZi5NS)1e<*%V8ntw~S2PF}zH}B5f_DHyB=I3m@ z_;^TpN|sesCU}qxQ`~jIwF>#8wGvxg9kdMT$}us8BM&W>OzZ|ry2BB)+UY*_yH+&L zl_=Jy9BNzIZs}D~Yv_H%HPjVGNV=xT3xpIW!Np1F^G#9Y8X zl)c_V1(DhYu-v%H3-m&n%M_}}c{E5Wu+6*>R24gW_A7$(U=9D|H$r;;;@o zJ)c_CmVf9l*;4SyJ}E{+4)}^C>SIJ*_bul7OJ{v&0oO>jG(5xzYP0$I%*YH|Mwu#r zubNW5VZ9^X#Phw<;?=^G?Kg&C)^x1FVsKGZ*n+{C1znj~YHSP?6PS(k5e9qGvS4X* z=1kA_27(iV65a(i+Sicmd@Vzf^2@*Wed-`aYQ~em=-h%Pu`gHfz)&@$hpr<&mNO={ zl^kI0HP0wTbbh{d(>5a#;zT2_=ppef?;D4;2^}&kZjB^yl%LBJ;|> zkLc)JEg*5rpQ;_)w?PnKynWtv!@ z>}+am{@(g$KKM+e$ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/examples/ui/layout/adaptive_app_demos/macos/Runner/Configs/AppInfo.xcconfig b/examples/ui/layout/adaptive_app_demos/macos/Runner/Configs/AppInfo.xcconfig new file mode 100644 index 0000000000..f8976e3a45 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/macos/Runner/Configs/AppInfo.xcconfig @@ -0,0 +1,14 @@ +// Application-level settings for the Runner target. +// +// This may be replaced with something auto-generated from metadata (e.g., pubspec.yaml) in the +// future. If not, the values below would default to using the project name when this becomes a +// 'flutter create' template. + +// The application's name. By default this is also the title of the Flutter window. +PRODUCT_NAME = adaptive_app_demos + +// The application's bundle identifier +PRODUCT_BUNDLE_IDENTIFIER = com.example.adaptiveAppDemos + +// The copyright displayed in application information +PRODUCT_COPYRIGHT = Copyright © 2021 com.example. All rights reserved. diff --git a/examples/ui/layout/adaptive_app_demos/macos/Runner/Configs/Debug.xcconfig b/examples/ui/layout/adaptive_app_demos/macos/Runner/Configs/Debug.xcconfig new file mode 100644 index 0000000000..36b0fd9464 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/macos/Runner/Configs/Debug.xcconfig @@ -0,0 +1,2 @@ +#include "../../Flutter/Flutter-Debug.xcconfig" +#include "Warnings.xcconfig" diff --git a/examples/ui/layout/adaptive_app_demos/macos/Runner/Configs/Release.xcconfig b/examples/ui/layout/adaptive_app_demos/macos/Runner/Configs/Release.xcconfig new file mode 100644 index 0000000000..dff4f49561 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/macos/Runner/Configs/Release.xcconfig @@ -0,0 +1,2 @@ +#include "../../Flutter/Flutter-Release.xcconfig" +#include "Warnings.xcconfig" diff --git a/examples/ui/layout/adaptive_app_demos/macos/Runner/Configs/Warnings.xcconfig b/examples/ui/layout/adaptive_app_demos/macos/Runner/Configs/Warnings.xcconfig new file mode 100644 index 0000000000..42bcbf4780 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/macos/Runner/Configs/Warnings.xcconfig @@ -0,0 +1,13 @@ +WARNING_CFLAGS = -Wall -Wconditional-uninitialized -Wnullable-to-nonnull-conversion -Wmissing-method-return-type -Woverlength-strings +GCC_WARN_UNDECLARED_SELECTOR = YES +CLANG_UNDEFINED_BEHAVIOR_SANITIZER_NULLABILITY = YES +CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE +CLANG_WARN__DUPLICATE_METHOD_MATCH = YES +CLANG_WARN_PRAGMA_PACK = YES +CLANG_WARN_STRICT_PROTOTYPES = YES +CLANG_WARN_COMMA = YES +GCC_WARN_STRICT_SELECTOR_MATCH = YES +CLANG_WARN_OBJC_REPEATED_USE_OF_WEAK = YES +CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES +GCC_WARN_SHADOW = YES +CLANG_WARN_UNREACHABLE_CODE = YES diff --git a/examples/ui/layout/adaptive_app_demos/macos/Runner/DebugProfile.entitlements b/examples/ui/layout/adaptive_app_demos/macos/Runner/DebugProfile.entitlements new file mode 100644 index 0000000000..dddb8a30c8 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/macos/Runner/DebugProfile.entitlements @@ -0,0 +1,12 @@ + + + + + com.apple.security.app-sandbox + + com.apple.security.cs.allow-jit + + com.apple.security.network.server + + + diff --git a/examples/ui/layout/adaptive_app_demos/macos/Runner/Info.plist b/examples/ui/layout/adaptive_app_demos/macos/Runner/Info.plist new file mode 100644 index 0000000000..4789daa6a4 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/macos/Runner/Info.plist @@ -0,0 +1,32 @@ + + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIconFile + + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $(PRODUCT_NAME) + CFBundlePackageType + APPL + CFBundleShortVersionString + $(FLUTTER_BUILD_NAME) + CFBundleVersion + $(FLUTTER_BUILD_NUMBER) + LSMinimumSystemVersion + $(MACOSX_DEPLOYMENT_TARGET) + NSHumanReadableCopyright + $(PRODUCT_COPYRIGHT) + NSMainNibFile + MainMenu + NSPrincipalClass + NSApplication + + diff --git a/examples/ui/layout/adaptive_app_demos/macos/Runner/MainFlutterWindow.swift b/examples/ui/layout/adaptive_app_demos/macos/Runner/MainFlutterWindow.swift new file mode 100644 index 0000000000..2b5381067b --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/macos/Runner/MainFlutterWindow.swift @@ -0,0 +1,21 @@ +import Cocoa +import FlutterMacOS +import bitsdojo_window_macos + +class MainFlutterWindow: BitsdojoWindow { + + override func bitsdojo_window_configure() -> UInt { + return BDW_CUSTOM_FRAME | BDW_HIDE_ON_STARTUP + } + + override func awakeFromNib() { + let flutterViewController = FlutterViewController.init() + let windowFrame = self.frame + self.contentViewController = flutterViewController + self.setFrame(windowFrame, display: true) + + RegisterGeneratedPlugins(registry: flutterViewController) + + super.awakeFromNib() + } +} diff --git a/examples/ui/layout/adaptive_app_demos/macos/Runner/Release.entitlements b/examples/ui/layout/adaptive_app_demos/macos/Runner/Release.entitlements new file mode 100644 index 0000000000..852fa1a472 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/macos/Runner/Release.entitlements @@ -0,0 +1,8 @@ + + + + + com.apple.security.app-sandbox + + + diff --git a/examples/ui/layout/adaptive_app_demos/pubspec.yaml b/examples/ui/layout/adaptive_app_demos/pubspec.yaml new file mode 100644 index 0000000000..2b4d563f3e --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/pubspec.yaml @@ -0,0 +1,24 @@ +name: adaptive_app_demos +description: Demo code for adaptive app development techniques. +publish_to: 'none' # Remove this line if you wish to publish to pub.dev + +version: 1.0.0+1 + +environment: + sdk: ">=2.12.0 <3.0.0" + +dependencies: + flutter: + sdk: flutter + + bitsdojo_window: ^0.1.0+1 + flextras: ^0.0.2 + provider: ^5.0.0 + universal_platform: ^1.0.0-nullsafety + +dev_dependencies: + flutter_test: + sdk: flutter + +flutter: + uses-material-design: true diff --git a/examples/ui/layout/adaptive_app_demos/web/favicon.png b/examples/ui/layout/adaptive_app_demos/web/favicon.png new file mode 100644 index 0000000000000000000000000000000000000000..8aaa46ac1ae21512746f852a42ba87e4165dfdd1 GIT binary patch literal 917 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|I14-?iy0X7 zltGxWVyS%@P(fs7NJL45ua8x7ey(0(N`6wRUPW#JP&EUCO@$SZnVVXYs8ErclUHn2 zVXFjIVFhG^g!Ppaz)DK8ZIvQ?0~DO|i&7O#^-S~(l1AfjnEK zjFOT9D}DX)@^Za$W4-*MbbUihOG|wNBYh(yU7!lx;>x^|#0uTKVr7USFmqf|i<65o z3raHc^AtelCMM;Vme?vOfh>Xph&xL%(-1c06+^uR^q@XSM&D4+Kp$>4P^%3{)XKjo zGZknv$b36P8?Z_gF{nK@`XI}Z90TzwSQO}0J1!f2c(B=V`5aP@1P1a|PZ!4!3&Gl8 zTYqUsf!gYFyJnXpu0!n&N*SYAX-%d(5gVjrHJWqXQshj@!Zm{!01WsQrH~9=kTxW#6SvuapgMqt>$=j#%eyGrQzr zP{L-3gsMA^$I1&gsBAEL+vxi1*Igl=8#8`5?A-T5=z-sk46WA1IUT)AIZHx1rdUrf zVJrJn<74DDw`j)Ki#gt}mIT-Q`XRa2-jQXQoI%w`nb|XblvzK${ZzlV)m-XcwC(od z71_OEC5Bt9GEXosOXaPTYOia#R4ID2TiU~`zVMl08TV_C%DnU4^+HE>9(CE4D6?Fz oujB08i7adh9xk7*FX66dWH6F5TM;?E2b5PlUHx3vIVCg!0Dx9vYXATM literal 0 HcmV?d00001 diff --git a/examples/ui/layout/adaptive_app_demos/web/icons/Icon-192.png b/examples/ui/layout/adaptive_app_demos/web/icons/Icon-192.png new file mode 100644 index 0000000000000000000000000000000000000000..b749bfef07473333cf1dd31e9eed89862a5d52aa GIT binary patch literal 5292 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 literal 0 HcmV?d00001 diff --git a/examples/ui/layout/adaptive_app_demos/web/icons/Icon-512.png b/examples/ui/layout/adaptive_app_demos/web/icons/Icon-512.png new file mode 100644 index 0000000000000000000000000000000000000000..88cfd48dff1169879ba46840804b412fe02fefd6 GIT binary patch literal 8252 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 literal 0 HcmV?d00001 diff --git a/examples/ui/layout/adaptive_app_demos/web/index.html b/examples/ui/layout/adaptive_app_demos/web/index.html new file mode 100644 index 0000000000..ee6dbb56af --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/web/index.html @@ -0,0 +1,98 @@ + + + + + + + + + + + + + + + + + adaptive_app_demos + + + + + + + diff --git a/examples/ui/layout/adaptive_app_demos/web/manifest.json b/examples/ui/layout/adaptive_app_demos/web/manifest.json new file mode 100644 index 0000000000..52ea27fea1 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/web/manifest.json @@ -0,0 +1,23 @@ +{ + "name": "adaptive_app_demos", + "short_name": "adaptive_app_demos", + "start_url": ".", + "display": "standalone", + "background_color": "#0175C2", + "theme_color": "#0175C2", + "description": "Demo code for adaptive app development techniques.", + "orientation": "portrait-primary", + "prefer_related_applications": false, + "icons": [ + { + "src": "icons/Icon-192.png", + "sizes": "192x192", + "type": "image/png" + }, + { + "src": "icons/Icon-512.png", + "sizes": "512x512", + "type": "image/png" + } + ] +} diff --git a/examples/ui/layout/adaptive_app_demos/windows/.gitignore b/examples/ui/layout/adaptive_app_demos/windows/.gitignore new file mode 100644 index 0000000000..d492d0d98c --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/windows/.gitignore @@ -0,0 +1,17 @@ +flutter/ephemeral/ + +# Visual Studio user-specific files. +*.suo +*.user +*.userosscache +*.sln.docstates + +# Visual Studio build-related files. +x64/ +x86/ + +# Visual Studio cache files +# files ending in .cache can be ignored +*.[Cc]ache +# but keep track of directories ending in .cache +!*.[Cc]ache/ diff --git a/examples/ui/layout/adaptive_app_demos/windows/CMakeLists.txt b/examples/ui/layout/adaptive_app_demos/windows/CMakeLists.txt new file mode 100644 index 0000000000..d782a7221d --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/windows/CMakeLists.txt @@ -0,0 +1,95 @@ +cmake_minimum_required(VERSION 3.15) +project(adaptive_app_demos LANGUAGES CXX) + +set(BINARY_NAME "adaptive_app_demos") + +cmake_policy(SET CMP0063 NEW) + +set(CMAKE_INSTALL_RPATH "$ORIGIN/lib") + +# Configure build options. +get_property(IS_MULTICONFIG GLOBAL PROPERTY GENERATOR_IS_MULTI_CONFIG) +if(IS_MULTICONFIG) + set(CMAKE_CONFIGURATION_TYPES "Debug;Profile;Release" + CACHE STRING "" FORCE) +else() + if(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES) + set(CMAKE_BUILD_TYPE "Debug" CACHE + STRING "Flutter build mode" FORCE) + set_property(CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS + "Debug" "Profile" "Release") + endif() +endif() + +set(CMAKE_EXE_LINKER_FLAGS_PROFILE "${CMAKE_EXE_LINKER_FLAGS_RELEASE}") +set(CMAKE_SHARED_LINKER_FLAGS_PROFILE "${CMAKE_SHARED_LINKER_FLAGS_RELEASE}") +set(CMAKE_C_FLAGS_PROFILE "${CMAKE_C_FLAGS_RELEASE}") +set(CMAKE_CXX_FLAGS_PROFILE "${CMAKE_CXX_FLAGS_RELEASE}") + +# Use Unicode for all projects. +add_definitions(-DUNICODE -D_UNICODE) + +# Compilation settings that should be applied to most targets. +function(APPLY_STANDARD_SETTINGS TARGET) + target_compile_features(${TARGET} PUBLIC cxx_std_17) + target_compile_options(${TARGET} PRIVATE /W4 /WX /wd"4100") + target_compile_options(${TARGET} PRIVATE /EHsc) + target_compile_definitions(${TARGET} PRIVATE "_HAS_EXCEPTIONS=0") + target_compile_definitions(${TARGET} PRIVATE "$<$:_DEBUG>") +endfunction() + +set(FLUTTER_MANAGED_DIR "${CMAKE_CURRENT_SOURCE_DIR}/flutter") + +# Flutter library and tool build rules. +add_subdirectory(${FLUTTER_MANAGED_DIR}) + +# Application build +add_subdirectory("runner") + +# Generated plugin build rules, which manage building the plugins and adding +# them to the application. +include(flutter/generated_plugins.cmake) + + +# === Installation === +# Support files are copied into place next to the executable, so that it can +# run in place. This is done instead of making a separate bundle (as on Linux) +# so that building and running from within Visual Studio will work. +set(BUILD_BUNDLE_DIR "$") +# Make the "install" step default, as it's required to run. +set(CMAKE_VS_INCLUDE_INSTALL_TO_DEFAULT_BUILD 1) +if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) + set(CMAKE_INSTALL_PREFIX "${BUILD_BUNDLE_DIR}" CACHE PATH "..." FORCE) +endif() + +set(INSTALL_BUNDLE_DATA_DIR "${CMAKE_INSTALL_PREFIX}/data") +set(INSTALL_BUNDLE_LIB_DIR "${CMAKE_INSTALL_PREFIX}") + +install(TARGETS ${BINARY_NAME} RUNTIME DESTINATION "${CMAKE_INSTALL_PREFIX}" + COMPONENT Runtime) + +install(FILES "${FLUTTER_ICU_DATA_FILE}" DESTINATION "${INSTALL_BUNDLE_DATA_DIR}" + COMPONENT Runtime) + +install(FILES "${FLUTTER_LIBRARY}" DESTINATION "${INSTALL_BUNDLE_LIB_DIR}" + COMPONENT Runtime) + +if(PLUGIN_BUNDLED_LIBRARIES) + install(FILES "${PLUGIN_BUNDLED_LIBRARIES}" + DESTINATION "${INSTALL_BUNDLE_LIB_DIR}" + COMPONENT Runtime) +endif() + +# Fully re-copy the assets directory on each build to avoid having stale files +# from a previous install. +set(FLUTTER_ASSET_DIR_NAME "flutter_assets") +install(CODE " + file(REMOVE_RECURSE \"${INSTALL_BUNDLE_DATA_DIR}/${FLUTTER_ASSET_DIR_NAME}\") + " COMPONENT Runtime) +install(DIRECTORY "${PROJECT_BUILD_DIR}/${FLUTTER_ASSET_DIR_NAME}" + DESTINATION "${INSTALL_BUNDLE_DATA_DIR}" COMPONENT Runtime) + +# Install the AOT library on non-Debug builds only. +install(FILES "${AOT_LIBRARY}" DESTINATION "${INSTALL_BUNDLE_DATA_DIR}" + CONFIGURATIONS Profile;Release + COMPONENT Runtime) diff --git a/examples/ui/layout/adaptive_app_demos/windows/flutter/CMakeLists.txt b/examples/ui/layout/adaptive_app_demos/windows/flutter/CMakeLists.txt new file mode 100644 index 0000000000..b02c5485c9 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/windows/flutter/CMakeLists.txt @@ -0,0 +1,103 @@ +cmake_minimum_required(VERSION 3.15) + +set(EPHEMERAL_DIR "${CMAKE_CURRENT_SOURCE_DIR}/ephemeral") + +# Configuration provided via flutter tool. +include(${EPHEMERAL_DIR}/generated_config.cmake) + +# TODO: Move the rest of this into files in ephemeral. See +# https://github.com/flutter/flutter/issues/57146. +set(WRAPPER_ROOT "${EPHEMERAL_DIR}/cpp_client_wrapper") + +# === Flutter Library === +set(FLUTTER_LIBRARY "${EPHEMERAL_DIR}/flutter_windows.dll") + +# Published to parent scope for install step. +set(FLUTTER_LIBRARY ${FLUTTER_LIBRARY} PARENT_SCOPE) +set(FLUTTER_ICU_DATA_FILE "${EPHEMERAL_DIR}/icudtl.dat" PARENT_SCOPE) +set(PROJECT_BUILD_DIR "${PROJECT_DIR}/build/" PARENT_SCOPE) +set(AOT_LIBRARY "${PROJECT_DIR}/build/windows/app.so" PARENT_SCOPE) + +list(APPEND FLUTTER_LIBRARY_HEADERS + "flutter_export.h" + "flutter_windows.h" + "flutter_messenger.h" + "flutter_plugin_registrar.h" + "flutter_texture_registrar.h" +) +list(TRANSFORM FLUTTER_LIBRARY_HEADERS PREPEND "${EPHEMERAL_DIR}/") +add_library(flutter INTERFACE) +target_include_directories(flutter INTERFACE + "${EPHEMERAL_DIR}" +) +target_link_libraries(flutter INTERFACE "${FLUTTER_LIBRARY}.lib") +add_dependencies(flutter flutter_assemble) + +# === Wrapper === +list(APPEND CPP_WRAPPER_SOURCES_CORE + "core_implementations.cc" + "standard_codec.cc" +) +list(TRANSFORM CPP_WRAPPER_SOURCES_CORE PREPEND "${WRAPPER_ROOT}/") +list(APPEND CPP_WRAPPER_SOURCES_PLUGIN + "plugin_registrar.cc" +) +list(TRANSFORM CPP_WRAPPER_SOURCES_PLUGIN PREPEND "${WRAPPER_ROOT}/") +list(APPEND CPP_WRAPPER_SOURCES_APP + "flutter_engine.cc" + "flutter_view_controller.cc" +) +list(TRANSFORM CPP_WRAPPER_SOURCES_APP PREPEND "${WRAPPER_ROOT}/") + +# Wrapper sources needed for a plugin. +add_library(flutter_wrapper_plugin STATIC + ${CPP_WRAPPER_SOURCES_CORE} + ${CPP_WRAPPER_SOURCES_PLUGIN} +) +apply_standard_settings(flutter_wrapper_plugin) +set_target_properties(flutter_wrapper_plugin PROPERTIES + POSITION_INDEPENDENT_CODE ON) +set_target_properties(flutter_wrapper_plugin PROPERTIES + CXX_VISIBILITY_PRESET hidden) +target_link_libraries(flutter_wrapper_plugin PUBLIC flutter) +target_include_directories(flutter_wrapper_plugin PUBLIC + "${WRAPPER_ROOT}/include" +) +add_dependencies(flutter_wrapper_plugin flutter_assemble) + +# Wrapper sources needed for the runner. +add_library(flutter_wrapper_app STATIC + ${CPP_WRAPPER_SOURCES_CORE} + ${CPP_WRAPPER_SOURCES_APP} +) +apply_standard_settings(flutter_wrapper_app) +target_link_libraries(flutter_wrapper_app PUBLIC flutter) +target_include_directories(flutter_wrapper_app PUBLIC + "${WRAPPER_ROOT}/include" +) +add_dependencies(flutter_wrapper_app flutter_assemble) + +# === Flutter tool backend === +# _phony_ is a non-existent file to force this command to run every time, +# since currently there's no way to get a full input/output list from the +# flutter tool. +set(PHONY_OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/_phony_") +set_source_files_properties("${PHONY_OUTPUT}" PROPERTIES SYMBOLIC TRUE) +add_custom_command( + OUTPUT ${FLUTTER_LIBRARY} ${FLUTTER_LIBRARY_HEADERS} + ${CPP_WRAPPER_SOURCES_CORE} ${CPP_WRAPPER_SOURCES_PLUGIN} + ${CPP_WRAPPER_SOURCES_APP} + ${PHONY_OUTPUT} + COMMAND ${CMAKE_COMMAND} -E env + ${FLUTTER_TOOL_ENVIRONMENT} + "${FLUTTER_ROOT}/packages/flutter_tools/bin/tool_backend.bat" + windows-x64 $ + VERBATIM +) +add_custom_target(flutter_assemble DEPENDS + "${FLUTTER_LIBRARY}" + ${FLUTTER_LIBRARY_HEADERS} + ${CPP_WRAPPER_SOURCES_CORE} + ${CPP_WRAPPER_SOURCES_PLUGIN} + ${CPP_WRAPPER_SOURCES_APP} +) diff --git a/examples/ui/layout/adaptive_app_demos/windows/flutter/generated_plugin_registrant.cc b/examples/ui/layout/adaptive_app_demos/windows/flutter/generated_plugin_registrant.cc new file mode 100644 index 0000000000..684e11f3a9 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/windows/flutter/generated_plugin_registrant.cc @@ -0,0 +1,12 @@ +// +// Generated file. Do not edit. +// + +#include "generated_plugin_registrant.h" + +#include + +void RegisterPlugins(flutter::PluginRegistry* registry) { + BitsdojoWindowPluginRegisterWithRegistrar( + registry->GetRegistrarForPlugin("BitsdojoWindowPlugin")); +} diff --git a/examples/ui/layout/adaptive_app_demos/windows/flutter/generated_plugin_registrant.h b/examples/ui/layout/adaptive_app_demos/windows/flutter/generated_plugin_registrant.h new file mode 100644 index 0000000000..9846246b4d --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/windows/flutter/generated_plugin_registrant.h @@ -0,0 +1,13 @@ +// +// Generated file. Do not edit. +// + +#ifndef GENERATED_PLUGIN_REGISTRANT_ +#define GENERATED_PLUGIN_REGISTRANT_ + +#include + +// Registers Flutter plugins. +void RegisterPlugins(flutter::PluginRegistry* registry); + +#endif // GENERATED_PLUGIN_REGISTRANT_ diff --git a/examples/ui/layout/adaptive_app_demos/windows/flutter/generated_plugins.cmake b/examples/ui/layout/adaptive_app_demos/windows/flutter/generated_plugins.cmake new file mode 100644 index 0000000000..065b15b24f --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/windows/flutter/generated_plugins.cmake @@ -0,0 +1,16 @@ +# +# Generated file, do not edit. +# + +list(APPEND FLUTTER_PLUGIN_LIST + bitsdojo_window_windows +) + +set(PLUGIN_BUNDLED_LIBRARIES) + +foreach(plugin ${FLUTTER_PLUGIN_LIST}) + add_subdirectory(flutter/ephemeral/.plugin_symlinks/${plugin}/windows plugins/${plugin}) + target_link_libraries(${BINARY_NAME} PRIVATE ${plugin}_plugin) + list(APPEND PLUGIN_BUNDLED_LIBRARIES $) + list(APPEND PLUGIN_BUNDLED_LIBRARIES ${${plugin}_bundled_libraries}) +endforeach(plugin) diff --git a/examples/ui/layout/adaptive_app_demos/windows/runner/CMakeLists.txt b/examples/ui/layout/adaptive_app_demos/windows/runner/CMakeLists.txt new file mode 100644 index 0000000000..977e38b5d1 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/windows/runner/CMakeLists.txt @@ -0,0 +1,18 @@ +cmake_minimum_required(VERSION 3.15) +project(runner LANGUAGES CXX) + +add_executable(${BINARY_NAME} WIN32 + "flutter_window.cpp" + "main.cpp" + "run_loop.cpp" + "utils.cpp" + "win32_window.cpp" + "${FLUTTER_MANAGED_DIR}/generated_plugin_registrant.cc" + "Runner.rc" + "runner.exe.manifest" +) +apply_standard_settings(${BINARY_NAME}) +target_compile_definitions(${BINARY_NAME} PRIVATE "NOMINMAX") +target_link_libraries(${BINARY_NAME} PRIVATE flutter flutter_wrapper_app) +target_include_directories(${BINARY_NAME} PRIVATE "${CMAKE_SOURCE_DIR}") +add_dependencies(${BINARY_NAME} flutter_assemble) diff --git a/examples/ui/layout/adaptive_app_demos/windows/runner/Runner.rc b/examples/ui/layout/adaptive_app_demos/windows/runner/Runner.rc new file mode 100644 index 0000000000..69849f6a2d --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/windows/runner/Runner.rc @@ -0,0 +1,121 @@ +// Microsoft Visual C++ generated resource script. +// +#pragma code_page(65001) +#include "resource.h" + +#define APSTUDIO_READONLY_SYMBOLS +///////////////////////////////////////////////////////////////////////////// +// +// Generated from the TEXTINCLUDE 2 resource. +// +#include "winres.h" + +///////////////////////////////////////////////////////////////////////////// +#undef APSTUDIO_READONLY_SYMBOLS + +///////////////////////////////////////////////////////////////////////////// +// English (United States) resources + +#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU) +LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US + +#ifdef APSTUDIO_INVOKED +///////////////////////////////////////////////////////////////////////////// +// +// TEXTINCLUDE +// + +1 TEXTINCLUDE +BEGIN + "resource.h\0" +END + +2 TEXTINCLUDE +BEGIN + "#include ""winres.h""\r\n" + "\0" +END + +3 TEXTINCLUDE +BEGIN + "\r\n" + "\0" +END + +#endif // APSTUDIO_INVOKED + + +///////////////////////////////////////////////////////////////////////////// +// +// Icon +// + +// Icon with lowest ID value placed first to ensure application icon +// remains consistent on all systems. +IDI_APP_ICON ICON "resources\\app_icon.ico" + + +///////////////////////////////////////////////////////////////////////////// +// +// Version +// + +#ifdef FLUTTER_BUILD_NUMBER +#define VERSION_AS_NUMBER FLUTTER_BUILD_NUMBER +#else +#define VERSION_AS_NUMBER 1,0,0 +#endif + +#ifdef FLUTTER_BUILD_NAME +#define VERSION_AS_STRING #FLUTTER_BUILD_NAME +#else +#define VERSION_AS_STRING "1.0.0" +#endif + +VS_VERSION_INFO VERSIONINFO + FILEVERSION VERSION_AS_NUMBER + PRODUCTVERSION VERSION_AS_NUMBER + FILEFLAGSMASK VS_FFI_FILEFLAGSMASK +#ifdef _DEBUG + FILEFLAGS VS_FF_DEBUG +#else + FILEFLAGS 0x0L +#endif + FILEOS VOS__WINDOWS32 + FILETYPE VFT_APP + FILESUBTYPE 0x0L +BEGIN + BLOCK "StringFileInfo" + BEGIN + BLOCK "040904e4" + BEGIN + VALUE "CompanyName", "com.example" "\0" + VALUE "FileDescription", "Demo code for adaptive app development techniques." "\0" + VALUE "FileVersion", VERSION_AS_STRING "\0" + VALUE "InternalName", "adaptive_app_demos" "\0" + VALUE "LegalCopyright", "Copyright (C) 2021 com.example. All rights reserved." "\0" + VALUE "OriginalFilename", "adaptive_app_demos.exe" "\0" + VALUE "ProductName", "adaptive_app_demos" "\0" + VALUE "ProductVersion", VERSION_AS_STRING "\0" + END + END + BLOCK "VarFileInfo" + BEGIN + VALUE "Translation", 0x409, 1252 + END +END + +#endif // English (United States) resources +///////////////////////////////////////////////////////////////////////////// + + + +#ifndef APSTUDIO_INVOKED +///////////////////////////////////////////////////////////////////////////// +// +// Generated from the TEXTINCLUDE 3 resource. +// + + +///////////////////////////////////////////////////////////////////////////// +#endif // not APSTUDIO_INVOKED diff --git a/examples/ui/layout/adaptive_app_demos/windows/runner/flutter_window.cpp b/examples/ui/layout/adaptive_app_demos/windows/runner/flutter_window.cpp new file mode 100644 index 0000000000..41bbc5e034 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/windows/runner/flutter_window.cpp @@ -0,0 +1,64 @@ +#include "flutter_window.h" + +#include + +#include "flutter/generated_plugin_registrant.h" + +FlutterWindow::FlutterWindow(RunLoop* run_loop, + const flutter::DartProject& project) + : run_loop_(run_loop), project_(project) {} + +FlutterWindow::~FlutterWindow() {} + +bool FlutterWindow::OnCreate() { + if (!Win32Window::OnCreate()) { + return false; + } + + RECT frame = GetClientArea(); + + // The size here must match the window dimensions to avoid unnecessary surface + // creation / destruction in the startup path. + flutter_controller_ = std::make_unique( + frame.right - frame.left, frame.bottom - frame.top, project_); + // Ensure that basic setup of the controller was successful. + if (!flutter_controller_->engine() || !flutter_controller_->view()) { + return false; + } + RegisterPlugins(flutter_controller_->engine()); + run_loop_->RegisterFlutterInstance(flutter_controller_->engine()); + SetChildContent(flutter_controller_->view()->GetNativeWindow()); + return true; +} + +void FlutterWindow::OnDestroy() { + if (flutter_controller_) { + run_loop_->UnregisterFlutterInstance(flutter_controller_->engine()); + flutter_controller_ = nullptr; + } + + Win32Window::OnDestroy(); +} + +LRESULT +FlutterWindow::MessageHandler(HWND hwnd, UINT const message, + WPARAM const wparam, + LPARAM const lparam) noexcept { + // Give Flutter, including plugins, an opportunity to handle window messages. + if (flutter_controller_) { + std::optional result = + flutter_controller_->HandleTopLevelWindowProc(hwnd, message, wparam, + lparam); + if (result) { + return *result; + } + } + + switch (message) { + case WM_FONTCHANGE: + flutter_controller_->engine()->ReloadSystemFonts(); + break; + } + + return Win32Window::MessageHandler(hwnd, message, wparam, lparam); +} diff --git a/examples/ui/layout/adaptive_app_demos/windows/runner/flutter_window.h b/examples/ui/layout/adaptive_app_demos/windows/runner/flutter_window.h new file mode 100644 index 0000000000..b663ddd501 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/windows/runner/flutter_window.h @@ -0,0 +1,39 @@ +#ifndef RUNNER_FLUTTER_WINDOW_H_ +#define RUNNER_FLUTTER_WINDOW_H_ + +#include +#include + +#include + +#include "run_loop.h" +#include "win32_window.h" + +// A window that does nothing but host a Flutter view. +class FlutterWindow : public Win32Window { + public: + // Creates a new FlutterWindow driven by the |run_loop|, hosting a + // Flutter view running |project|. + explicit FlutterWindow(RunLoop* run_loop, + const flutter::DartProject& project); + virtual ~FlutterWindow(); + + protected: + // Win32Window: + bool OnCreate() override; + void OnDestroy() override; + LRESULT MessageHandler(HWND window, UINT const message, WPARAM const wparam, + LPARAM const lparam) noexcept override; + + private: + // The run loop driving events for this window. + RunLoop* run_loop_; + + // The project to run. + flutter::DartProject project_; + + // The Flutter instance hosted by this window. + std::unique_ptr flutter_controller_; +}; + +#endif // RUNNER_FLUTTER_WINDOW_H_ diff --git a/examples/ui/layout/adaptive_app_demos/windows/runner/main.cpp b/examples/ui/layout/adaptive_app_demos/windows/runner/main.cpp new file mode 100644 index 0000000000..13efba2d4e --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/windows/runner/main.cpp @@ -0,0 +1,45 @@ +#include +auto bdw = bitsdojo_window_configure(BDW_CUSTOM_FRAME | BDW_HIDE_ON_STARTUP); + +#include +#include +#include + +#include "flutter_window.h" +#include "run_loop.h" +#include "utils.h" + +int APIENTRY wWinMain(_In_ HINSTANCE instance, _In_opt_ HINSTANCE prev, + _In_ wchar_t *command_line, _In_ int show_command) { + // Attach to console when present (e.g., 'flutter run') or create a + // new console when running with a debugger. + if (!::AttachConsole(ATTACH_PARENT_PROCESS) && ::IsDebuggerPresent()) { + CreateAndAttachConsole(); + } + + // Initialize COM, so that it is available for use in the library and/or + // plugins. + ::CoInitializeEx(nullptr, COINIT_APARTMENTTHREADED); + + RunLoop run_loop; + + flutter::DartProject project(L"data"); + + std::vector command_line_arguments = + GetCommandLineArguments(); + + project.set_dart_entrypoint_arguments(std::move(command_line_arguments)); + + FlutterWindow window(&run_loop, project); + Win32Window::Point origin(10, 10); + Win32Window::Size size(1280, 720); + if (!window.CreateAndShow(L"adaptive_app_demos", origin, size)) { + return EXIT_FAILURE; + } + window.SetQuitOnClose(true); + + run_loop.Run(); + + ::CoUninitialize(); + return EXIT_SUCCESS; +} diff --git a/examples/ui/layout/adaptive_app_demos/windows/runner/resource.h b/examples/ui/layout/adaptive_app_demos/windows/runner/resource.h new file mode 100644 index 0000000000..66a65d1e4a --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/windows/runner/resource.h @@ -0,0 +1,16 @@ +//{{NO_DEPENDENCIES}} +// Microsoft Visual C++ generated include file. +// Used by Runner.rc +// +#define IDI_APP_ICON 101 + +// Next default values for new objects +// +#ifdef APSTUDIO_INVOKED +#ifndef APSTUDIO_READONLY_SYMBOLS +#define _APS_NEXT_RESOURCE_VALUE 102 +#define _APS_NEXT_COMMAND_VALUE 40001 +#define _APS_NEXT_CONTROL_VALUE 1001 +#define _APS_NEXT_SYMED_VALUE 101 +#endif +#endif diff --git a/examples/ui/layout/adaptive_app_demos/windows/runner/resources/app_icon.ico b/examples/ui/layout/adaptive_app_demos/windows/runner/resources/app_icon.ico new file mode 100644 index 0000000000000000000000000000000000000000..c04e20caf6370ebb9253ad831cc31de4a9c965f6 GIT binary patch literal 33772 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 literal 0 HcmV?d00001 diff --git a/examples/ui/layout/adaptive_app_demos/windows/runner/run_loop.cpp b/examples/ui/layout/adaptive_app_demos/windows/runner/run_loop.cpp new file mode 100644 index 0000000000..2d6636ab6b --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/windows/runner/run_loop.cpp @@ -0,0 +1,66 @@ +#include "run_loop.h" + +#include + +#include + +RunLoop::RunLoop() {} + +RunLoop::~RunLoop() {} + +void RunLoop::Run() { + bool keep_running = true; + TimePoint next_flutter_event_time = TimePoint::clock::now(); + while (keep_running) { + std::chrono::nanoseconds wait_duration = + std::max(std::chrono::nanoseconds(0), + next_flutter_event_time - TimePoint::clock::now()); + ::MsgWaitForMultipleObjects( + 0, nullptr, FALSE, static_cast(wait_duration.count() / 1000), + QS_ALLINPUT); + bool processed_events = false; + MSG message; + // All pending Windows messages must be processed; MsgWaitForMultipleObjects + // won't return again for items left in the queue after PeekMessage. + while (::PeekMessage(&message, nullptr, 0, 0, PM_REMOVE)) { + processed_events = true; + if (message.message == WM_QUIT) { + keep_running = false; + break; + } + ::TranslateMessage(&message); + ::DispatchMessage(&message); + // Allow Flutter to process messages each time a Windows message is + // processed, to prevent starvation. + next_flutter_event_time = + std::min(next_flutter_event_time, ProcessFlutterMessages()); + } + // If the PeekMessage loop didn't run, process Flutter messages. + if (!processed_events) { + next_flutter_event_time = + std::min(next_flutter_event_time, ProcessFlutterMessages()); + } + } +} + +void RunLoop::RegisterFlutterInstance( + flutter::FlutterEngine* flutter_instance) { + flutter_instances_.insert(flutter_instance); +} + +void RunLoop::UnregisterFlutterInstance( + flutter::FlutterEngine* flutter_instance) { + flutter_instances_.erase(flutter_instance); +} + +RunLoop::TimePoint RunLoop::ProcessFlutterMessages() { + TimePoint next_event_time = TimePoint::max(); + for (auto instance : flutter_instances_) { + std::chrono::nanoseconds wait_duration = instance->ProcessMessages(); + if (wait_duration != std::chrono::nanoseconds::max()) { + next_event_time = + std::min(next_event_time, TimePoint::clock::now() + wait_duration); + } + } + return next_event_time; +} diff --git a/examples/ui/layout/adaptive_app_demos/windows/runner/run_loop.h b/examples/ui/layout/adaptive_app_demos/windows/runner/run_loop.h new file mode 100644 index 0000000000..000d362463 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/windows/runner/run_loop.h @@ -0,0 +1,40 @@ +#ifndef RUNNER_RUN_LOOP_H_ +#define RUNNER_RUN_LOOP_H_ + +#include + +#include +#include + +// A runloop that will service events for Flutter instances as well +// as native messages. +class RunLoop { + public: + RunLoop(); + ~RunLoop(); + + // Prevent copying + RunLoop(RunLoop const&) = delete; + RunLoop& operator=(RunLoop const&) = delete; + + // Runs the run loop until the application quits. + void Run(); + + // Registers the given Flutter instance for event servicing. + void RegisterFlutterInstance( + flutter::FlutterEngine* flutter_instance); + + // Unregisters the given Flutter instance from event servicing. + void UnregisterFlutterInstance( + flutter::FlutterEngine* flutter_instance); + + private: + using TimePoint = std::chrono::steady_clock::time_point; + + // Processes all currently pending messages for registered Flutter instances. + TimePoint ProcessFlutterMessages(); + + std::set flutter_instances_; +}; + +#endif // RUNNER_RUN_LOOP_H_ diff --git a/examples/ui/layout/adaptive_app_demos/windows/runner/runner.exe.manifest b/examples/ui/layout/adaptive_app_demos/windows/runner/runner.exe.manifest new file mode 100644 index 0000000000..c977c4a425 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/windows/runner/runner.exe.manifest @@ -0,0 +1,20 @@ + + + + + PerMonitorV2 + + + + + + + + + + + + + + + diff --git a/examples/ui/layout/adaptive_app_demos/windows/runner/utils.cpp b/examples/ui/layout/adaptive_app_demos/windows/runner/utils.cpp new file mode 100644 index 0000000000..d19bdbbcc3 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/windows/runner/utils.cpp @@ -0,0 +1,64 @@ +#include "utils.h" + +#include +#include +#include +#include + +#include + +void CreateAndAttachConsole() { + if (::AllocConsole()) { + FILE *unused; + if (freopen_s(&unused, "CONOUT$", "w", stdout)) { + _dup2(_fileno(stdout), 1); + } + if (freopen_s(&unused, "CONOUT$", "w", stderr)) { + _dup2(_fileno(stdout), 2); + } + std::ios::sync_with_stdio(); + FlutterDesktopResyncOutputStreams(); + } +} + +std::vector GetCommandLineArguments() { + // Convert the UTF-16 command line arguments to UTF-8 for the Engine to use. + int argc; + wchar_t** argv = ::CommandLineToArgvW(::GetCommandLineW(), &argc); + if (argv == nullptr) { + return std::vector(); + } + + std::vector command_line_arguments; + + // Skip the first argument as it's the binary name. + for (int i = 1; i < argc; i++) { + command_line_arguments.push_back(Utf8FromUtf16(argv[i])); + } + + ::LocalFree(argv); + + return command_line_arguments; +} + +std::string Utf8FromUtf16(const wchar_t* utf16_string) { + if (utf16_string == nullptr) { + return std::string(); + } + int target_length = ::WideCharToMultiByte( + CP_UTF8, WC_ERR_INVALID_CHARS, utf16_string, + -1, nullptr, 0, nullptr, nullptr); + if (target_length == 0) { + return std::string(); + } + std::string utf8_string; + utf8_string.resize(target_length); + int converted_length = ::WideCharToMultiByte( + CP_UTF8, WC_ERR_INVALID_CHARS, utf16_string, + -1, utf8_string.data(), + target_length, nullptr, nullptr); + if (converted_length == 0) { + return std::string(); + } + return utf8_string; +} diff --git a/examples/ui/layout/adaptive_app_demos/windows/runner/utils.h b/examples/ui/layout/adaptive_app_demos/windows/runner/utils.h new file mode 100644 index 0000000000..3879d54755 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/windows/runner/utils.h @@ -0,0 +1,19 @@ +#ifndef RUNNER_UTILS_H_ +#define RUNNER_UTILS_H_ + +#include +#include + +// Creates a console for the process, and redirects stdout and stderr to +// it for both the runner and the Flutter library. +void CreateAndAttachConsole(); + +// Takes a null-terminated wchar_t* encoded in UTF-16 and returns a std::string +// encoded in UTF-8. Returns an empty std::string on failure. +std::string Utf8FromUtf16(const wchar_t* utf16_string); + +// Gets the command line arguments passed in as a std::vector, +// encoded in UTF-8. Returns an empty std::vector on failure. +std::vector GetCommandLineArguments(); + +#endif // RUNNER_UTILS_H_ diff --git a/examples/ui/layout/adaptive_app_demos/windows/runner/win32_window.cpp b/examples/ui/layout/adaptive_app_demos/windows/runner/win32_window.cpp new file mode 100644 index 0000000000..c10f08dc7d --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/windows/runner/win32_window.cpp @@ -0,0 +1,245 @@ +#include "win32_window.h" + +#include + +#include "resource.h" + +namespace { + +constexpr const wchar_t kWindowClassName[] = L"FLUTTER_RUNNER_WIN32_WINDOW"; + +// The number of Win32Window objects that currently exist. +static int g_active_window_count = 0; + +using EnableNonClientDpiScaling = BOOL __stdcall(HWND hwnd); + +// Scale helper to convert logical scaler values to physical using passed in +// scale factor +int Scale(int source, double scale_factor) { + return static_cast(source * scale_factor); +} + +// Dynamically loads the |EnableNonClientDpiScaling| from the User32 module. +// This API is only needed for PerMonitor V1 awareness mode. +void EnableFullDpiSupportIfAvailable(HWND hwnd) { + HMODULE user32_module = LoadLibraryA("User32.dll"); + if (!user32_module) { + return; + } + auto enable_non_client_dpi_scaling = + reinterpret_cast( + GetProcAddress(user32_module, "EnableNonClientDpiScaling")); + if (enable_non_client_dpi_scaling != nullptr) { + enable_non_client_dpi_scaling(hwnd); + FreeLibrary(user32_module); + } +} + +} // namespace + +// Manages the Win32Window's window class registration. +class WindowClassRegistrar { + public: + ~WindowClassRegistrar() = default; + + // Returns the singleton registar instance. + static WindowClassRegistrar* GetInstance() { + if (!instance_) { + instance_ = new WindowClassRegistrar(); + } + return instance_; + } + + // Returns the name of the window class, registering the class if it hasn't + // previously been registered. + const wchar_t* GetWindowClass(); + + // Unregisters the window class. Should only be called if there are no + // instances of the window. + void UnregisterWindowClass(); + + private: + WindowClassRegistrar() = default; + + static WindowClassRegistrar* instance_; + + bool class_registered_ = false; +}; + +WindowClassRegistrar* WindowClassRegistrar::instance_ = nullptr; + +const wchar_t* WindowClassRegistrar::GetWindowClass() { + if (!class_registered_) { + WNDCLASS window_class{}; + window_class.hCursor = LoadCursor(nullptr, IDC_ARROW); + window_class.lpszClassName = kWindowClassName; + window_class.style = CS_HREDRAW | CS_VREDRAW; + window_class.cbClsExtra = 0; + window_class.cbWndExtra = 0; + window_class.hInstance = GetModuleHandle(nullptr); + window_class.hIcon = + LoadIcon(window_class.hInstance, MAKEINTRESOURCE(IDI_APP_ICON)); + window_class.hbrBackground = 0; + window_class.lpszMenuName = nullptr; + window_class.lpfnWndProc = Win32Window::WndProc; + RegisterClass(&window_class); + class_registered_ = true; + } + return kWindowClassName; +} + +void WindowClassRegistrar::UnregisterWindowClass() { + UnregisterClass(kWindowClassName, nullptr); + class_registered_ = false; +} + +Win32Window::Win32Window() { + ++g_active_window_count; +} + +Win32Window::~Win32Window() { + --g_active_window_count; + Destroy(); +} + +bool Win32Window::CreateAndShow(const std::wstring& title, + const Point& origin, + const Size& size) { + Destroy(); + + const wchar_t* window_class = + WindowClassRegistrar::GetInstance()->GetWindowClass(); + + const POINT target_point = {static_cast(origin.x), + static_cast(origin.y)}; + HMONITOR monitor = MonitorFromPoint(target_point, MONITOR_DEFAULTTONEAREST); + UINT dpi = FlutterDesktopGetDpiForMonitor(monitor); + double scale_factor = dpi / 96.0; + + HWND window = CreateWindow( + window_class, title.c_str(), WS_OVERLAPPEDWINDOW | WS_VISIBLE, + Scale(origin.x, scale_factor), Scale(origin.y, scale_factor), + Scale(size.width, scale_factor), Scale(size.height, scale_factor), + nullptr, nullptr, GetModuleHandle(nullptr), this); + + if (!window) { + return false; + } + + return OnCreate(); +} + +// static +LRESULT CALLBACK Win32Window::WndProc(HWND const window, + UINT const message, + WPARAM const wparam, + LPARAM const lparam) noexcept { + if (message == WM_NCCREATE) { + auto window_struct = reinterpret_cast(lparam); + SetWindowLongPtr(window, GWLP_USERDATA, + reinterpret_cast(window_struct->lpCreateParams)); + + auto that = static_cast(window_struct->lpCreateParams); + EnableFullDpiSupportIfAvailable(window); + that->window_handle_ = window; + } else if (Win32Window* that = GetThisFromHandle(window)) { + return that->MessageHandler(window, message, wparam, lparam); + } + + return DefWindowProc(window, message, wparam, lparam); +} + +LRESULT +Win32Window::MessageHandler(HWND hwnd, + UINT const message, + WPARAM const wparam, + LPARAM const lparam) noexcept { + switch (message) { + case WM_DESTROY: + window_handle_ = nullptr; + Destroy(); + if (quit_on_close_) { + PostQuitMessage(0); + } + return 0; + + case WM_DPICHANGED: { + auto newRectSize = reinterpret_cast(lparam); + LONG newWidth = newRectSize->right - newRectSize->left; + LONG newHeight = newRectSize->bottom - newRectSize->top; + + SetWindowPos(hwnd, nullptr, newRectSize->left, newRectSize->top, newWidth, + newHeight, SWP_NOZORDER | SWP_NOACTIVATE); + + return 0; + } + case WM_SIZE: { + RECT rect = GetClientArea(); + if (child_content_ != nullptr) { + // Size and position the child window. + MoveWindow(child_content_, rect.left, rect.top, rect.right - rect.left, + rect.bottom - rect.top, TRUE); + } + return 0; + } + + case WM_ACTIVATE: + if (child_content_ != nullptr) { + SetFocus(child_content_); + } + return 0; + } + + return DefWindowProc(window_handle_, message, wparam, lparam); +} + +void Win32Window::Destroy() { + OnDestroy(); + + if (window_handle_) { + DestroyWindow(window_handle_); + window_handle_ = nullptr; + } + if (g_active_window_count == 0) { + WindowClassRegistrar::GetInstance()->UnregisterWindowClass(); + } +} + +Win32Window* Win32Window::GetThisFromHandle(HWND const window) noexcept { + return reinterpret_cast( + GetWindowLongPtr(window, GWLP_USERDATA)); +} + +void Win32Window::SetChildContent(HWND content) { + child_content_ = content; + SetParent(content, window_handle_); + RECT frame = GetClientArea(); + + MoveWindow(content, frame.left, frame.top, frame.right - frame.left, + frame.bottom - frame.top, true); + + SetFocus(child_content_); +} + +RECT Win32Window::GetClientArea() { + RECT frame; + GetClientRect(window_handle_, &frame); + return frame; +} + +HWND Win32Window::GetHandle() { + return window_handle_; +} + +void Win32Window::SetQuitOnClose(bool quit_on_close) { + quit_on_close_ = quit_on_close; +} + +bool Win32Window::OnCreate() { + // No-op; provided for subclasses. + return true; +} + +void Win32Window::OnDestroy() { + // No-op; provided for subclasses. +} diff --git a/examples/ui/layout/adaptive_app_demos/windows/runner/win32_window.h b/examples/ui/layout/adaptive_app_demos/windows/runner/win32_window.h new file mode 100644 index 0000000000..17ba431125 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/windows/runner/win32_window.h @@ -0,0 +1,98 @@ +#ifndef RUNNER_WIN32_WINDOW_H_ +#define RUNNER_WIN32_WINDOW_H_ + +#include + +#include +#include +#include + +// A class abstraction for a high DPI-aware Win32 Window. Intended to be +// inherited from by classes that wish to specialize with custom +// rendering and input handling +class Win32Window { + public: + struct Point { + unsigned int x; + unsigned int y; + Point(unsigned int x, unsigned int y) : x(x), y(y) {} + }; + + struct Size { + unsigned int width; + unsigned int height; + Size(unsigned int width, unsigned int height) + : width(width), height(height) {} + }; + + Win32Window(); + virtual ~Win32Window(); + + // Creates and shows a win32 window with |title| and position and size using + // |origin| and |size|. New windows are created on the default monitor. Window + // sizes are specified to the OS in physical pixels, hence to ensure a + // consistent size to will treat the width height passed in to this function + // as logical pixels and scale to appropriate for the default monitor. Returns + // true if the window was created successfully. + bool CreateAndShow(const std::wstring& title, + const Point& origin, + const Size& size); + + // Release OS resources associated with window. + void Destroy(); + + // Inserts |content| into the window tree. + void SetChildContent(HWND content); + + // Returns the backing Window handle to enable clients to set icon and other + // window properties. Returns nullptr if the window has been destroyed. + HWND GetHandle(); + + // If true, closing this window will quit the application. + void SetQuitOnClose(bool quit_on_close); + + // Return a RECT representing the bounds of the current client area. + RECT GetClientArea(); + + protected: + // Processes and route salient window messages for mouse handling, + // size change and DPI. Delegates handling of these to member overloads that + // inheriting classes can handle. + virtual LRESULT MessageHandler(HWND window, + UINT const message, + WPARAM const wparam, + LPARAM const lparam) noexcept; + + // Called when CreateAndShow is called, allowing subclass window-related + // setup. Subclasses should return false if setup fails. + virtual bool OnCreate(); + + // Called when Destroy is called. + virtual void OnDestroy(); + + private: + friend class WindowClassRegistrar; + + // OS callback called by message pump. Handles the WM_NCCREATE message which + // is passed when the non-client area is being created and enables automatic + // non-client DPI scaling so that the non-client area automatically + // responsponds to changes in DPI. All other messages are handled by + // MessageHandler. + static LRESULT CALLBACK WndProc(HWND const window, + UINT const message, + WPARAM const wparam, + LPARAM const lparam) noexcept; + + // Retrieves a class instance pointer for |window| + static Win32Window* GetThisFromHandle(HWND const window) noexcept; + + bool quit_on_close_ = false; + + // window handle for top level window. + HWND window_handle_ = nullptr; + + // window handle for hosted content. + HWND child_content_ = nullptr; +}; + +#endif // RUNNER_WIN32_WINDOW_H_ diff --git a/src/docs/development/ui/layout/building-adaptive-apps.md b/src/docs/development/ui/layout/building-adaptive-apps.md index 98b0b8cf2f..f97ac44a26 100644 --- a/src/docs/development/ui/layout/building-adaptive-apps.md +++ b/src/docs/development/ui/layout/building-adaptive-apps.md @@ -3,6 +3,8 @@ title: Building adaptive apps description: Some considerations and instructions on how to build adaptive apps to run on a variety of platforms. --- + + ## Overview Flutter provides new opportunities to build apps that can @@ -151,26 +153,42 @@ densities, you can easily adjust your UI: To set a custom visual density, inject the density into your `MaterialApp` theme: - + ```dart -double densityAmt = enableTouchMode ? 0.0 : -1.0; -VisualDensity density = VisualDensity(horizontal: density, vertical: density); -return MaterialApp( - theme: ThemeData(visualDensity: density), - ... -); + double densityAmt = touchMode ? 0.0 : -1.0; + VisualDensity density = + VisualDensity(horizontal: densityAmt, vertical: densityAmt); + return MaterialApp( + theme: ThemeData(visualDensity: density), + home: MainAppScaffold(), + debugShowCheckedModeBanner: false, + ); + }, + ), + ); + } +} ``` To use `VisualDensity` inside your own views, you can look it up: - + ```dart -VisualDensity density = Theme.of(context).visualDensity; -return Padding( - padding: EdgeInsets.all(Insets.large + density.vertical * 4), - child: ... -); + VisualDensity density = Theme.of(context).visualDensity; + return ConstrainedBox( + constraints: BoxConstraints(minHeight: 300, minWidth: 300), + child: Padding( + padding: EdgeInsets.all(Insets.large + density.vertical * 6), + child: Container( + alignment: Alignment.center, + color: Colors.purple.shade100, + child: Text(label), + ), + ), + ); + } +} ``` Not only does the container react automatically to changes @@ -521,29 +539,35 @@ of [`Actions`][], [`Shortcuts`][], [`MouseRegion`][], and and key bindings, and provides callbacks for handling focus and hover highlights. - + ```dart class _BasicActionDetectorState extends State { - bool _hasFocus = false; - @override - Widget build(BuildContext context) { - return FocusableActionDetector( - onFocusChange: (value) => setState(() => _hasFocus = value), - actions: >{ - ActivateIntent: CallbackAction(onInvoke: (Intent intent) { - print("Enter or Space was pressed!"); - }), - }, - child: Stack( - clipBehavior: Clip.none, - children: [ - FlutterLogo(size: 100), - // Position focus in the negative margin - if (_hasFocus) Positioned(left: -4, top: -4, bottom: -4, right: -4, child: _RoundedBorder()) - ], - ), - ); - } + bool _hasFocus = false; + @override + Widget build(BuildContext context) { + return FocusableActionDetector( + onFocusChange: (value) => setState(() => _hasFocus = value), + actions: >{ + ActivateIntent: CallbackAction(onInvoke: (Intent intent) { + print("Enter or Space was pressed!"); + }), + }, + child: Stack( + clipBehavior: Clip.none, + children: [ + FlutterLogo(size: 100), + // Position focus in the negative margin for a cool effect + if (_hasFocus) + Positioned( + left: -4, + top: -4, + bottom: -4, + right: -4, + child: _roundedBorder()) + ], + ), + ); + } } ``` From 03e78cf13381e11464176cd7789c0b2872953888 Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Fri, 15 Oct 2021 21:52:25 -0500 Subject: [PATCH 08/64] migrated remaining available code snippets from adaptive_app_demos --- .../lib/global/device_size.dart | 5 +++ .../lib/pages/adaptive_grid_page.dart | 39 +++++++++++++------ .../lib/pages/focus_examples_page.dart | 4 ++ .../lib/widgets/ok_cancel_dialog.dart | 15 +++++-- 4 files changed, 48 insertions(+), 15 deletions(-) diff --git a/examples/ui/layout/adaptive_app_demos/lib/global/device_size.dart b/examples/ui/layout/adaptive_app_demos/lib/global/device_size.dart index d6ff121203..16fee5ee23 100644 --- a/examples/ui/layout/adaptive_app_demos/lib/global/device_size.dart +++ b/examples/ui/layout/adaptive_app_demos/lib/global/device_size.dart @@ -2,19 +2,24 @@ import 'package:flutter/cupertino.dart'; enum ScreenType { Handset, Tablet, Desktop, Watch } +// #docregion FormFactor class FormFactor { static double desktop = 900; static double tablet = 600; static double handset = 300; } +// #enddocregion FormFactor +// #docregion getFormFactor ScreenType getFormFactor(BuildContext context) { + // Use .shortestSide to detect device type regardless of orientation double deviceWidth = MediaQuery.of(context).size.shortestSide; if (deviceWidth > FormFactor.desktop) return ScreenType.Desktop; if (deviceWidth > FormFactor.tablet) return ScreenType.Tablet; if (deviceWidth > FormFactor.handset) return ScreenType.Handset; return ScreenType.Watch; } +// #enddocregion getFormFactor enum ScreenSize { Small, Normal, Large, ExtraLarge } ScreenSize getSize(BuildContext context) { diff --git a/examples/ui/layout/adaptive_app_demos/lib/pages/adaptive_grid_page.dart b/examples/ui/layout/adaptive_app_demos/lib/pages/adaptive_grid_page.dart index af6479f563..deb1c25408 100644 --- a/examples/ui/layout/adaptive_app_demos/lib/pages/adaptive_grid_page.dart +++ b/examples/ui/layout/adaptive_app_demos/lib/pages/adaptive_grid_page.dart @@ -20,21 +20,29 @@ class _AdaptiveGridPageState extends State { @override Widget build(BuildContext context) { // Create a list of widgets to render, inject .isSelected into each item - Widget buildGridItem(int index) => - _GridItem(index, isSelected: _selectedItems.contains(index), onPressed: _handleItemPressed); + Widget buildGridItem(int index) => _GridItem(index, + isSelected: _selectedItems.contains(index), + onPressed: _handleItemPressed); List listChildren = _listItems.map(buildGridItem).toList(); return TargetedActionBinding( actions: { - SelectAllIntent: CallbackAction(onInvoke: (Intent intent) => this._handleSelectAllPressed()), - SelectNoneIntent: CallbackAction(onInvoke: (Intent intent) => this._handleSelectNonePressed()), - DeleteIntent: CallbackAction(onInvoke: (Intent intent) => this._handleDeleteSelectedPressed()), + SelectAllIntent: CallbackAction( + onInvoke: (Intent intent) => this._handleSelectAllPressed()), + SelectNoneIntent: CallbackAction( + onInvoke: (Intent intent) => this._handleSelectNonePressed()), + DeleteIntent: CallbackAction( + onInvoke: (Intent intent) => this._handleDeleteSelectedPressed()), }, child: Column( children: [ Row( children: [ - StyledTextButton(onPressed: _handleSelectAllPressed, child: Text("Select All")), - StyledTextButton(onPressed: _handleSelectNonePressed, child: Text("Select None")), + StyledTextButton( + onPressed: _handleSelectAllPressed, + child: Text("Select All")), + StyledTextButton( + onPressed: _handleSelectNonePressed, + child: Text("Select None")), ], ), Expanded( @@ -42,6 +50,7 @@ class _AdaptiveGridPageState extends State { builder: (BuildContext context, BoxConstraints constraints) { // Calculate how many columns we want depending on available space int colCount = max(1, (constraints.maxWidth / 250).floor()); + // #docregion ScrollbarAlwaysShown return Scrollbar( isAlwaysShown: DeviceType.isDesktop, controller: _scrollController, @@ -52,6 +61,7 @@ class _AdaptiveGridPageState extends State { crossAxisCount: colCount, children: listChildren), ); + // #enddocregion ScrollbarAlwaysShown }, ), ), @@ -60,7 +70,8 @@ class _AdaptiveGridPageState extends State { ); } - void _handleSelectAllPressed() => setState(() => _selectedItems = List.from(_listItems)); + void _handleSelectAllPressed() => + setState(() => _selectedItems = List.from(_listItems)); void _handleSelectNonePressed() => setState(() => _selectedItems.clear()); void _handleDeleteSelectedPressed() => setState(() => _selectedItems.clear()); @@ -75,7 +86,9 @@ class _AdaptiveGridPageState extends State { } class _GridItem extends StatelessWidget { - const _GridItem(this.index, {Key? key, required this.isSelected, required this.onPressed}) : super(key: key); + const _GridItem(this.index, + {Key? key, required this.isSelected, required this.onPressed}) + : super(key: key); final int index; final bool isSelected; final void Function(int index) onPressed; @@ -97,9 +110,13 @@ class _GridItem extends StatelessWidget { color: Colors.grey.shade600, height: 50, alignment: Alignment.center, - child: Text("Grid Item $index", style: TextStyle(color: Colors.white)))), + child: Text("Grid Item $index", + style: TextStyle(color: Colors.white)))), // Selected border - Container(decoration: BoxDecoration(border: Border.all(color: Colors.blue.shade200, width: borderWidth))), + Container( + decoration: BoxDecoration( + border: Border.all( + color: Colors.blue.shade200, width: borderWidth))), ]), ), ); diff --git a/examples/ui/layout/adaptive_app_demos/lib/pages/focus_examples_page.dart b/examples/ui/layout/adaptive_app_demos/lib/pages/focus_examples_page.dart index f653e0b354..89b9f900f8 100644 --- a/examples/ui/layout/adaptive_app_demos/lib/pages/focus_examples_page.dart +++ b/examples/ui/layout/adaptive_app_demos/lib/pages/focus_examples_page.dart @@ -43,6 +43,7 @@ class _TextListener extends StatefulWidget { class __TextListenerState extends State<_TextListener> { FocusNode focusNode = FocusNode(); + // #docregion FocusRawKeyboardListener @override Widget build(BuildContext context) { return Focus( @@ -63,6 +64,7 @@ class __TextListenerState extends State<_TextListener> { ); } } +// #enddocregion FocusRawKeyboardListener class BasicActionDetector extends StatefulWidget { @override @@ -146,6 +148,7 @@ class ClickableControl extends StatelessWidget { builder: (context) { // Check whether we have focus bool hasFocus = Focus.of(context).hasFocus; + // #docregion MouseRegion // Show hand cursor return MouseRegion( cursor: SystemMouseCursors.click, @@ -158,6 +161,7 @@ class ClickableControl extends StatelessWidget { child: Logo(showBorder: hasFocus), ), ); + // #enddocregion MouseRegion }, ), ); diff --git a/examples/ui/layout/adaptive_app_demos/lib/widgets/ok_cancel_dialog.dart b/examples/ui/layout/adaptive_app_demos/lib/widgets/ok_cancel_dialog.dart index 51e4f8ecf4..15f0c8c5af 100644 --- a/examples/ui/layout/adaptive_app_demos/lib/widgets/ok_cancel_dialog.dart +++ b/examples/ui/layout/adaptive_app_demos/lib/widgets/ok_cancel_dialog.dart @@ -30,24 +30,31 @@ class OkCancelDialog extends StatelessWidget { class _OkCancelButtons extends StatelessWidget { @override Widget build(BuildContext context) { - TextDirection btnDirection = DeviceType.isWindows && false ? TextDirection.rtl : TextDirection.ltr; + // #docregion RowTextDirection + TextDirection btnDirection = + DeviceType.isWindows && false ? TextDirection.rtl : TextDirection.ltr; return Row( children: [ Spacer(), Row( textDirection: btnDirection, children: [ - DialogButton(label: "Cancel", onPressed: () => Navigator.pop(context, false)), - DialogButton(label: "Ok", onPressed: () => Navigator.pop(context, true)), + DialogButton( + label: "Cancel", + onPressed: () => Navigator.pop(context, false)), + DialogButton( + label: "Ok", onPressed: () => Navigator.pop(context, true)), ], ), ], ); + // #enddocregion RowTextDirection } } class DialogButton extends StatelessWidget { - const DialogButton({Key? key, required this.onPressed, required this.label}) : super(key: key); + const DialogButton({Key? key, required this.onPressed, required this.label}) + : super(key: key); final VoidCallback onPressed; final String label; From 9f64c1515c0f6bddc1c727e8ce0fbb2bc0fa4e79 Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Fri, 15 Oct 2021 21:53:14 -0500 Subject: [PATCH 09/64] add code excerpt references for building-adaptive-apps.md --- .../ui/layout/building-adaptive-apps.md | 94 ++++++++++++------- 1 file changed, 61 insertions(+), 33 deletions(-) diff --git a/src/docs/development/ui/layout/building-adaptive-apps.md b/src/docs/development/ui/layout/building-adaptive-apps.md index f97ac44a26..e9b64a0038 100644 --- a/src/docs/development/ui/layout/building-adaptive-apps.md +++ b/src/docs/development/ui/layout/building-adaptive-apps.md @@ -230,34 +230,34 @@ this can be done with the `MediaQuery` API. There are no hard and fast rules for the sizes to use here, but these are general values: - + ```dart class FormFactor { - static double desktop = 900; - static double tablet = 600; - static double handset = 300; + static double desktop = 900; + static double tablet = 600; + static double handset = 300; } ``` Using breakpoints, you can set up a simple system to determine the device type: - + ```dart ScreenType getFormFactor(BuildContext context) { - // Use .shortestSide to detect device type regardless of orientation - double deviceWidth = MediaQuery.of(context).size.shortestSide; - if (deviceWidth > FormFactor.desktop) return ScreenType.Desktop; - if (deviceWidth > FormFactor.tablet) return ScreenType.Tablet; - if (deviceWidth > FormFactor.handset) return ScreenType.Handset; - return ScreenType.Watch; + // Use .shortestSide to detect device type regardless of orientation + double deviceWidth = MediaQuery.of(context).size.shortestSide; + if (deviceWidth > FormFactor.desktop) return ScreenType.Desktop; + if (deviceWidth > FormFactor.tablet) return ScreenType.Tablet; + if (deviceWidth > FormFactor.handset) return ScreenType.Handset; + return ScreenType.Watch; } ``` As an alternative, you could abstract it more and define it in terms of small to large: - + ```dart enum ScreenSize { Small, Normal, Large, ExtraLarge } @@ -622,17 +622,28 @@ If you have a single widget like a `TextField` or a `Button` that already has a focus node, you can wrap it in a [`RawKeyboardListener`][] and listen for keyboard events: - + ```dart -return Focus( - onKey: (FocusNode node, RawKeyEvent event) { - if (event is RawKeyDownEvent) { - print(event.logicalKey); - } - return KeyEventResult.ignored; - }, - child: const TextField(), -); + @override + Widget build(BuildContext context) { + return Focus( + onKey: (FocusNode node, RawKeyEvent event) { + if (event is RawKeyDownEvent) { + print(event.logicalKey); + } + return KeyEventResult.ignored; + }, + child: ConstrainedBox( + constraints: BoxConstraints(maxWidth: 400), + child: TextField( + decoration: InputDecoration( + border: OutlineInputBorder(), + ), + ), + ), + ); + } +} ``` If you’d like to apply a set of keyboard shortcuts to a @@ -748,12 +759,20 @@ for your standard button and text cursors. To change the cursor from within your own widgets, use [`MouseRegion`][]: - + ```dart +// Show hand cursor return MouseRegion( - cursor: SystemMouseCursors.grab, - child: MyDraggableWidget(), -) + cursor: SystemMouseCursors.click, + // Request focus when clicked + child: GestureDetector( + onTap: () { + Focus.of(context).requestFocus(); + _submit(); + }, + child: Logo(showBorder: hasFocus), + ), +); ``` `MouseRegion` is also useful for creating custom @@ -873,12 +892,17 @@ has support for adaptive colors and sizes according to the current platform. The one tweak you might want to make is to toggle `alwaysShown` when on a desktop platform: - + ```dart return Scrollbar( - controller: controller, isAlwaysShown: DeviceType.isDesktop, - child: ListView(controller: controller, ...), + controller: _scrollController, + child: GridView.count( + controller: _scrollController, + padding: EdgeInsets.all(Insets.extraLarge), + childAspectRatio: 1, + crossAxisCount: colCount, + children: listChildren), ); ``` @@ -1058,17 +1082,21 @@ placed at the end of the row (right side). This can be easily handled in Flutter using the `TextDirection` property on `Row`: - + ```dart -TextDirection btnDirection = DeviceType.isWindows ? TextDirection.rtl : TextDirection.ltr; +TextDirection btnDirection = + DeviceType.isWindows && false ? TextDirection.rtl : TextDirection.ltr; return Row( children: [ Spacer(), Row( textDirection: btnDirection, children: [ - DialogButton(label: 'Cancel', onPressed: () => Navigator.pop(context, false)), - DialogButton(label: 'Ok', onPressed: () => Navigator.pop(context, true)), + DialogButton( + label: "Cancel", + onPressed: () => Navigator.pop(context, false)), + DialogButton( + label: "Ok", onPressed: () => Navigator.pop(context, true)), ], ), ], From b5c6b35b88aacbc80d77a17994b73faa08a89961 Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Fri, 15 Oct 2021 22:23:55 -0500 Subject: [PATCH 10/64] fixed code excerpt start + end --- .../layout/adaptive_app_demos/lib/main.dart | 2 +- .../lib/pages/adaptive_reflow_page.dart | 2 +- .../ui/layout/building-adaptive-apps.md | 40 ++++++------------- 3 files changed, 15 insertions(+), 29 deletions(-) diff --git a/examples/ui/layout/adaptive_app_demos/lib/main.dart b/examples/ui/layout/adaptive_app_demos/lib/main.dart index 785f1b6832..8a8029c855 100644 --- a/examples/ui/layout/adaptive_app_demos/lib/main.dart +++ b/examples/ui/layout/adaptive_app_demos/lib/main.dart @@ -31,7 +31,7 @@ class AppScaffold extends StatelessWidget { home: MainAppScaffold(), debugShowCheckedModeBanner: false, ); - // #enddocregion VisuaDensity + // #enddocregion VisualDensity }, ), ); diff --git a/examples/ui/layout/adaptive_app_demos/lib/pages/adaptive_reflow_page.dart b/examples/ui/layout/adaptive_app_demos/lib/pages/adaptive_reflow_page.dart index 9ae1641000..e7828d65b0 100644 --- a/examples/ui/layout/adaptive_app_demos/lib/pages/adaptive_reflow_page.dart +++ b/examples/ui/layout/adaptive_app_demos/lib/pages/adaptive_reflow_page.dart @@ -73,7 +73,7 @@ class _ContentPanel extends StatelessWidget { constraints: BoxConstraints(minHeight: 300, minWidth: 300), child: Padding( padding: EdgeInsets.all(Insets.large + density.vertical * 6), - // #enddocregion VisuaDensityOwnView + // #enddocregion VisualDensityOwnView child: Container( alignment: Alignment.center, color: Colors.purple.shade100, diff --git a/src/docs/development/ui/layout/building-adaptive-apps.md b/src/docs/development/ui/layout/building-adaptive-apps.md index e9b64a0038..f4aef9001d 100644 --- a/src/docs/development/ui/layout/building-adaptive-apps.md +++ b/src/docs/development/ui/layout/building-adaptive-apps.md @@ -155,19 +155,14 @@ your `MaterialApp` theme: ```dart - double densityAmt = touchMode ? 0.0 : -1.0; - VisualDensity density = - VisualDensity(horizontal: densityAmt, vertical: densityAmt); - return MaterialApp( - theme: ThemeData(visualDensity: density), - home: MainAppScaffold(), - debugShowCheckedModeBanner: false, - ); - }, - ), - ); - } -} +double densityAmt = touchMode ? 0.0 : -1.0; +VisualDensity density = + VisualDensity(horizontal: densityAmt, vertical: densityAmt); +return MaterialApp( + theme: ThemeData(visualDensity: density), + home: MainAppScaffold(), + debugShowCheckedModeBanner: false, +); ``` To use `VisualDensity` inside your own views, @@ -175,20 +170,11 @@ you can look it up: ```dart - VisualDensity density = Theme.of(context).visualDensity; - return ConstrainedBox( - constraints: BoxConstraints(minHeight: 300, minWidth: 300), - child: Padding( - padding: EdgeInsets.all(Insets.large + density.vertical * 6), - child: Container( - alignment: Alignment.center, - color: Colors.purple.shade100, - child: Text(label), - ), - ), - ); - } -} +VisualDensity density = Theme.of(context).visualDensity; +return ConstrainedBox( + constraints: BoxConstraints(minHeight: 300, minWidth: 300), + child: Padding( + padding: EdgeInsets.all(Insets.large + density.vertical * 6), ``` Not only does the container react automatically to changes From b0d0b0e423771673574fcdacd4c94cf61b2488c9 Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Fri, 29 Oct 2021 13:50:58 -0500 Subject: [PATCH 11/64] building adaptive apps code excerpts migration --- .../ui/layout/adaptive_app_demos/.gitignore | 46 -- .../ui/layout/adaptive_app_demos/.metadata | 10 - .../adaptive_app_demos/android/.gitignore | 11 - .../android/app/build.gradle | 59 -- .../android/app/src/debug/AndroidManifest.xml | 7 - .../android/app/src/main/AndroidManifest.xml | 41 -- .../adaptive_app_demos/MainActivity.kt | 6 - .../res/drawable-v21/launch_background.xml | 12 - .../main/res/drawable/launch_background.xml | 12 - .../src/main/res/mipmap-hdpi/ic_launcher.png | Bin 544 -> 0 bytes .../src/main/res/mipmap-mdpi/ic_launcher.png | Bin 442 -> 0 bytes .../src/main/res/mipmap-xhdpi/ic_launcher.png | Bin 721 -> 0 bytes .../main/res/mipmap-xxhdpi/ic_launcher.png | Bin 1031 -> 0 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.png | Bin 1443 -> 0 bytes .../app/src/main/res/values-night/styles.xml | 18 - .../app/src/main/res/values/styles.xml | 18 - .../app/src/profile/AndroidManifest.xml | 7 - .../adaptive_app_demos/android/build.gradle | 31 - .../android/gradle.properties | 3 - .../gradle/wrapper/gradle-wrapper.properties | 6 - .../android/settings.gradle | 11 - .../layout/adaptive_app_demos/ios/.gitignore | 33 - .../ios/Flutter/AppFrameworkInfo.plist | 26 - .../ios/Flutter/Debug.xcconfig | 2 - .../ios/Flutter/Release.xcconfig | 2 - .../ui/layout/adaptive_app_demos/ios/Podfile | 41 -- .../ios/Runner.xcodeproj/project.pbxproj | 471 -------------- .../contents.xcworkspacedata | 7 - .../xcshareddata/IDEWorkspaceChecks.plist | 8 - .../xcshareddata/WorkspaceSettings.xcsettings | 8 - .../xcshareddata/xcschemes/Runner.xcscheme | 91 --- .../contents.xcworkspacedata | 7 - .../xcshareddata/IDEWorkspaceChecks.plist | 8 - .../xcshareddata/WorkspaceSettings.xcsettings | 8 - .../ios/Runner/AppDelegate.swift | 13 - .../AppIcon.appiconset/Contents.json | 122 ---- .../Icon-App-1024x1024@1x.png | Bin 10932 -> 0 bytes .../AppIcon.appiconset/Icon-App-20x20@1x.png | Bin 564 -> 0 bytes .../AppIcon.appiconset/Icon-App-20x20@2x.png | Bin 1283 -> 0 bytes .../AppIcon.appiconset/Icon-App-20x20@3x.png | Bin 1588 -> 0 bytes .../AppIcon.appiconset/Icon-App-29x29@1x.png | Bin 1025 -> 0 bytes .../AppIcon.appiconset/Icon-App-29x29@2x.png | Bin 1716 -> 0 bytes .../AppIcon.appiconset/Icon-App-29x29@3x.png | Bin 1920 -> 0 bytes .../AppIcon.appiconset/Icon-App-40x40@1x.png | Bin 1283 -> 0 bytes .../AppIcon.appiconset/Icon-App-40x40@2x.png | Bin 1895 -> 0 bytes .../AppIcon.appiconset/Icon-App-40x40@3x.png | Bin 2665 -> 0 bytes .../AppIcon.appiconset/Icon-App-60x60@2x.png | Bin 2665 -> 0 bytes .../AppIcon.appiconset/Icon-App-60x60@3x.png | Bin 3831 -> 0 bytes .../AppIcon.appiconset/Icon-App-76x76@1x.png | Bin 1888 -> 0 bytes .../AppIcon.appiconset/Icon-App-76x76@2x.png | Bin 3294 -> 0 bytes .../Icon-App-83.5x83.5@2x.png | Bin 3612 -> 0 bytes .../LaunchImage.imageset/Contents.json | 23 - .../LaunchImage.imageset/LaunchImage.png | Bin 68 -> 0 bytes .../LaunchImage.imageset/LaunchImage@2x.png | Bin 68 -> 0 bytes .../LaunchImage.imageset/LaunchImage@3x.png | Bin 68 -> 0 bytes .../LaunchImage.imageset/README.md | 5 - .../Runner/Base.lproj/LaunchScreen.storyboard | 37 -- .../ios/Runner/Base.lproj/Main.storyboard | 26 - .../adaptive_app_demos/ios/Runner/Info.plist | 45 -- .../ios/Runner/Runner-Bridging-Header.h | 1 - .../lib/global/device_size.dart | 52 ++ .../lib/global/device_type.dart | 45 +- .../lib/pages/adaptive_data_table_page.dart | 5 +- .../lib/pages/adaptive_reflow_page.dart | 3 - .../lib/pages/focus_examples_page.dart | 56 ++ .../lib/pages/login_page.dart | 21 +- .../lib/widgets/extra_widget_excerpts.dart | 169 ++++++ .../adaptive_app_demos/linux/.gitignore | 1 - .../adaptive_app_demos/linux/CMakeLists.txt | 116 ---- .../linux/flutter/CMakeLists.txt | 91 --- .../flutter/generated_plugin_registrant.cc | 13 - .../flutter/generated_plugin_registrant.h | 13 - .../linux/flutter/generated_plugins.cmake | 16 - .../layout/adaptive_app_demos/linux/main.cc | 6 - .../linux/my_application.cc | 105 ---- .../adaptive_app_demos/linux/my_application.h | 18 - .../adaptive_app_demos/macos/.gitignore | 6 - .../macos/Flutter/Flutter-Debug.xcconfig | 1 - .../macos/Flutter/Flutter-Release.xcconfig | 1 - .../Flutter/GeneratedPluginRegistrant.swift | 12 - .../macos/Runner.xcodeproj/project.pbxproj | 572 ------------------ .../xcshareddata/IDEWorkspaceChecks.plist | 8 - .../xcshareddata/xcschemes/Runner.xcscheme | 89 --- .../contents.xcworkspacedata | 7 - .../xcshareddata/IDEWorkspaceChecks.plist | 8 - .../macos/Runner/AppDelegate.swift | 9 - .../AppIcon.appiconset/Contents.json | 68 --- .../AppIcon.appiconset/app_icon_1024.png | Bin 46993 -> 0 bytes .../AppIcon.appiconset/app_icon_128.png | Bin 3276 -> 0 bytes .../AppIcon.appiconset/app_icon_16.png | Bin 1429 -> 0 bytes .../AppIcon.appiconset/app_icon_256.png | Bin 5933 -> 0 bytes .../AppIcon.appiconset/app_icon_32.png | Bin 1243 -> 0 bytes .../AppIcon.appiconset/app_icon_512.png | Bin 14800 -> 0 bytes .../AppIcon.appiconset/app_icon_64.png | Bin 1874 -> 0 bytes .../macos/Runner/Base.lproj/MainMenu.xib | 339 ----------- .../macos/Runner/Configs/AppInfo.xcconfig | 14 - .../macos/Runner/Configs/Debug.xcconfig | 2 - .../macos/Runner/Configs/Release.xcconfig | 2 - .../macos/Runner/Configs/Warnings.xcconfig | 13 - .../macos/Runner/DebugProfile.entitlements | 12 - .../macos/Runner/Info.plist | 32 - .../macos/Runner/MainFlutterWindow.swift | 21 - .../macos/Runner/Release.entitlements | 8 - .../ui/layout/adaptive_app_demos/pubspec.yaml | 1 + .../layout/adaptive_app_demos/web/favicon.png | Bin 917 -> 0 bytes .../adaptive_app_demos/web/icons/Icon-192.png | Bin 5292 -> 0 bytes .../adaptive_app_demos/web/icons/Icon-512.png | Bin 8252 -> 0 bytes .../layout/adaptive_app_demos/web/index.html | 98 --- .../adaptive_app_demos/web/manifest.json | 23 - .../adaptive_app_demos/windows/.gitignore | 17 - .../adaptive_app_demos/windows/CMakeLists.txt | 95 --- .../windows/flutter/CMakeLists.txt | 103 ---- .../flutter/generated_plugin_registrant.cc | 12 - .../flutter/generated_plugin_registrant.h | 13 - .../windows/flutter/generated_plugins.cmake | 16 - .../windows/runner/CMakeLists.txt | 18 - .../windows/runner/Runner.rc | 121 ---- .../windows/runner/flutter_window.cpp | 64 -- .../windows/runner/flutter_window.h | 39 -- .../windows/runner/main.cpp | 45 -- .../windows/runner/resource.h | 16 - .../windows/runner/resources/app_icon.ico | Bin 33772 -> 0 bytes .../windows/runner/run_loop.cpp | 66 -- .../windows/runner/run_loop.h | 40 -- .../windows/runner/runner.exe.manifest | 20 - .../windows/runner/utils.cpp | 64 -- .../adaptive_app_demos/windows/runner/utils.h | 19 - .../windows/runner/win32_window.cpp | 245 -------- .../windows/runner/win32_window.h | 98 --- .../ui/layout/building-adaptive-apps.md | 166 ++--- 130 files changed, 424 insertions(+), 4211 deletions(-) delete mode 100644 examples/ui/layout/adaptive_app_demos/.gitignore delete mode 100644 examples/ui/layout/adaptive_app_demos/.metadata delete mode 100644 examples/ui/layout/adaptive_app_demos/android/.gitignore delete mode 100644 examples/ui/layout/adaptive_app_demos/android/app/build.gradle delete mode 100644 examples/ui/layout/adaptive_app_demos/android/app/src/debug/AndroidManifest.xml delete mode 100644 examples/ui/layout/adaptive_app_demos/android/app/src/main/AndroidManifest.xml delete mode 100644 examples/ui/layout/adaptive_app_demos/android/app/src/main/kotlin/com/example/adaptive_app_demos/MainActivity.kt delete mode 100644 examples/ui/layout/adaptive_app_demos/android/app/src/main/res/drawable-v21/launch_background.xml delete mode 100644 examples/ui/layout/adaptive_app_demos/android/app/src/main/res/drawable/launch_background.xml delete mode 100644 examples/ui/layout/adaptive_app_demos/android/app/src/main/res/mipmap-hdpi/ic_launcher.png delete mode 100644 examples/ui/layout/adaptive_app_demos/android/app/src/main/res/mipmap-mdpi/ic_launcher.png delete mode 100644 examples/ui/layout/adaptive_app_demos/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png delete mode 100644 examples/ui/layout/adaptive_app_demos/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png delete mode 100644 examples/ui/layout/adaptive_app_demos/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png delete mode 100644 examples/ui/layout/adaptive_app_demos/android/app/src/main/res/values-night/styles.xml delete mode 100644 examples/ui/layout/adaptive_app_demos/android/app/src/main/res/values/styles.xml delete mode 100644 examples/ui/layout/adaptive_app_demos/android/app/src/profile/AndroidManifest.xml delete mode 100644 examples/ui/layout/adaptive_app_demos/android/build.gradle delete mode 100644 examples/ui/layout/adaptive_app_demos/android/gradle.properties delete mode 100644 examples/ui/layout/adaptive_app_demos/android/gradle/wrapper/gradle-wrapper.properties delete mode 100644 examples/ui/layout/adaptive_app_demos/android/settings.gradle delete mode 100644 examples/ui/layout/adaptive_app_demos/ios/.gitignore delete mode 100644 examples/ui/layout/adaptive_app_demos/ios/Flutter/AppFrameworkInfo.plist delete mode 100644 examples/ui/layout/adaptive_app_demos/ios/Flutter/Debug.xcconfig delete mode 100644 examples/ui/layout/adaptive_app_demos/ios/Flutter/Release.xcconfig delete mode 100644 examples/ui/layout/adaptive_app_demos/ios/Podfile delete mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner.xcodeproj/project.pbxproj delete mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata delete mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist delete mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings delete mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme delete mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner.xcworkspace/contents.xcworkspacedata delete mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist delete mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings delete mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/AppDelegate.swift delete mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json delete mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png delete mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@1x.png delete mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@2x.png delete mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png delete mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@1x.png delete mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png delete mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@3x.png delete mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@1x.png delete mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png delete mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png delete mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png delete mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png delete mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png delete mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png delete mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png delete mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/LaunchImage.imageset/Contents.json delete mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png delete mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png delete mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png delete mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md delete mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/Base.lproj/LaunchScreen.storyboard delete mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/Base.lproj/Main.storyboard delete mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/Info.plist delete mode 100644 examples/ui/layout/adaptive_app_demos/ios/Runner/Runner-Bridging-Header.h create mode 100644 examples/ui/layout/adaptive_app_demos/lib/widgets/extra_widget_excerpts.dart delete mode 100644 examples/ui/layout/adaptive_app_demos/linux/.gitignore delete mode 100644 examples/ui/layout/adaptive_app_demos/linux/CMakeLists.txt delete mode 100644 examples/ui/layout/adaptive_app_demos/linux/flutter/CMakeLists.txt delete mode 100644 examples/ui/layout/adaptive_app_demos/linux/flutter/generated_plugin_registrant.cc delete mode 100644 examples/ui/layout/adaptive_app_demos/linux/flutter/generated_plugin_registrant.h delete mode 100644 examples/ui/layout/adaptive_app_demos/linux/flutter/generated_plugins.cmake delete mode 100644 examples/ui/layout/adaptive_app_demos/linux/main.cc delete mode 100644 examples/ui/layout/adaptive_app_demos/linux/my_application.cc delete mode 100644 examples/ui/layout/adaptive_app_demos/linux/my_application.h delete mode 100644 examples/ui/layout/adaptive_app_demos/macos/.gitignore delete mode 100644 examples/ui/layout/adaptive_app_demos/macos/Flutter/Flutter-Debug.xcconfig delete mode 100644 examples/ui/layout/adaptive_app_demos/macos/Flutter/Flutter-Release.xcconfig delete mode 100644 examples/ui/layout/adaptive_app_demos/macos/Flutter/GeneratedPluginRegistrant.swift delete mode 100644 examples/ui/layout/adaptive_app_demos/macos/Runner.xcodeproj/project.pbxproj delete mode 100644 examples/ui/layout/adaptive_app_demos/macos/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist delete mode 100644 examples/ui/layout/adaptive_app_demos/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme delete mode 100644 examples/ui/layout/adaptive_app_demos/macos/Runner.xcworkspace/contents.xcworkspacedata delete mode 100644 examples/ui/layout/adaptive_app_demos/macos/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist delete mode 100644 examples/ui/layout/adaptive_app_demos/macos/Runner/AppDelegate.swift delete mode 100644 examples/ui/layout/adaptive_app_demos/macos/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json delete mode 100644 examples/ui/layout/adaptive_app_demos/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_1024.png delete mode 100644 examples/ui/layout/adaptive_app_demos/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_128.png delete mode 100644 examples/ui/layout/adaptive_app_demos/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_16.png delete mode 100644 examples/ui/layout/adaptive_app_demos/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_256.png delete mode 100644 examples/ui/layout/adaptive_app_demos/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_32.png delete mode 100644 examples/ui/layout/adaptive_app_demos/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_512.png delete mode 100644 examples/ui/layout/adaptive_app_demos/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_64.png delete mode 100644 examples/ui/layout/adaptive_app_demos/macos/Runner/Base.lproj/MainMenu.xib delete mode 100644 examples/ui/layout/adaptive_app_demos/macos/Runner/Configs/AppInfo.xcconfig delete mode 100644 examples/ui/layout/adaptive_app_demos/macos/Runner/Configs/Debug.xcconfig delete mode 100644 examples/ui/layout/adaptive_app_demos/macos/Runner/Configs/Release.xcconfig delete mode 100644 examples/ui/layout/adaptive_app_demos/macos/Runner/Configs/Warnings.xcconfig delete mode 100644 examples/ui/layout/adaptive_app_demos/macos/Runner/DebugProfile.entitlements delete mode 100644 examples/ui/layout/adaptive_app_demos/macos/Runner/Info.plist delete mode 100644 examples/ui/layout/adaptive_app_demos/macos/Runner/MainFlutterWindow.swift delete mode 100644 examples/ui/layout/adaptive_app_demos/macos/Runner/Release.entitlements delete mode 100644 examples/ui/layout/adaptive_app_demos/web/favicon.png delete mode 100644 examples/ui/layout/adaptive_app_demos/web/icons/Icon-192.png delete mode 100644 examples/ui/layout/adaptive_app_demos/web/icons/Icon-512.png delete mode 100644 examples/ui/layout/adaptive_app_demos/web/index.html delete mode 100644 examples/ui/layout/adaptive_app_demos/web/manifest.json delete mode 100644 examples/ui/layout/adaptive_app_demos/windows/.gitignore delete mode 100644 examples/ui/layout/adaptive_app_demos/windows/CMakeLists.txt delete mode 100644 examples/ui/layout/adaptive_app_demos/windows/flutter/CMakeLists.txt delete mode 100644 examples/ui/layout/adaptive_app_demos/windows/flutter/generated_plugin_registrant.cc delete mode 100644 examples/ui/layout/adaptive_app_demos/windows/flutter/generated_plugin_registrant.h delete mode 100644 examples/ui/layout/adaptive_app_demos/windows/flutter/generated_plugins.cmake delete mode 100644 examples/ui/layout/adaptive_app_demos/windows/runner/CMakeLists.txt delete mode 100644 examples/ui/layout/adaptive_app_demos/windows/runner/Runner.rc delete mode 100644 examples/ui/layout/adaptive_app_demos/windows/runner/flutter_window.cpp delete mode 100644 examples/ui/layout/adaptive_app_demos/windows/runner/flutter_window.h delete mode 100644 examples/ui/layout/adaptive_app_demos/windows/runner/main.cpp delete mode 100644 examples/ui/layout/adaptive_app_demos/windows/runner/resource.h delete mode 100644 examples/ui/layout/adaptive_app_demos/windows/runner/resources/app_icon.ico delete mode 100644 examples/ui/layout/adaptive_app_demos/windows/runner/run_loop.cpp delete mode 100644 examples/ui/layout/adaptive_app_demos/windows/runner/run_loop.h delete mode 100644 examples/ui/layout/adaptive_app_demos/windows/runner/runner.exe.manifest delete mode 100644 examples/ui/layout/adaptive_app_demos/windows/runner/utils.cpp delete mode 100644 examples/ui/layout/adaptive_app_demos/windows/runner/utils.h delete mode 100644 examples/ui/layout/adaptive_app_demos/windows/runner/win32_window.cpp delete mode 100644 examples/ui/layout/adaptive_app_demos/windows/runner/win32_window.h diff --git a/examples/ui/layout/adaptive_app_demos/.gitignore b/examples/ui/layout/adaptive_app_demos/.gitignore deleted file mode 100644 index 0fa6b675c0..0000000000 --- a/examples/ui/layout/adaptive_app_demos/.gitignore +++ /dev/null @@ -1,46 +0,0 @@ -# Miscellaneous -*.class -*.log -*.pyc -*.swp -.DS_Store -.atom/ -.buildlog/ -.history -.svn/ - -# IntelliJ related -*.iml -*.ipr -*.iws -.idea/ - -# The .vscode folder contains launch configuration and tasks you configure in -# VS Code which you may wish to be included in version control, so this line -# is commented out by default. -#.vscode/ - -# Flutter/Dart/Pub related -**/doc/api/ -**/ios/Flutter/.last_build_id -.dart_tool/ -.flutter-plugins -.flutter-plugins-dependencies -.packages -.pub-cache/ -.pub/ -/build/ - -# Web related -lib/generated_plugin_registrant.dart - -# Symbolication related -app.*.symbols - -# Obfuscation related -app.*.map.json - -# Android Studio will place build artifacts here -/android/app/debug -/android/app/profile -/android/app/release diff --git a/examples/ui/layout/adaptive_app_demos/.metadata b/examples/ui/layout/adaptive_app_demos/.metadata deleted file mode 100644 index f62a5b01b9..0000000000 --- a/examples/ui/layout/adaptive_app_demos/.metadata +++ /dev/null @@ -1,10 +0,0 @@ -# This file tracks properties of this Flutter project. -# Used by Flutter tool to assess capabilities and perform upgrades etc. -# -# This file should be version controlled and should not be manually edited. - -version: - revision: 8264cb3e8a797eef39cbcd32bb56fd07790efb7f - channel: dev - -project_type: app diff --git a/examples/ui/layout/adaptive_app_demos/android/.gitignore b/examples/ui/layout/adaptive_app_demos/android/.gitignore deleted file mode 100644 index 0a741cb43d..0000000000 --- a/examples/ui/layout/adaptive_app_demos/android/.gitignore +++ /dev/null @@ -1,11 +0,0 @@ -gradle-wrapper.jar -/.gradle -/captures/ -/gradlew -/gradlew.bat -/local.properties -GeneratedPluginRegistrant.java - -# Remember to never publicly share your keystore. -# See https://flutter.dev/docs/deployment/android#reference-the-keystore-from-the-app -key.properties diff --git a/examples/ui/layout/adaptive_app_demos/android/app/build.gradle b/examples/ui/layout/adaptive_app_demos/android/app/build.gradle deleted file mode 100644 index ef77b2485a..0000000000 --- a/examples/ui/layout/adaptive_app_demos/android/app/build.gradle +++ /dev/null @@ -1,59 +0,0 @@ -def localProperties = new Properties() -def localPropertiesFile = rootProject.file('local.properties') -if (localPropertiesFile.exists()) { - localPropertiesFile.withReader('UTF-8') { reader -> - localProperties.load(reader) - } -} - -def flutterRoot = localProperties.getProperty('flutter.sdk') -if (flutterRoot == null) { - throw new GradleException("Flutter SDK not found. Define location with flutter.sdk in the local.properties file.") -} - -def flutterVersionCode = localProperties.getProperty('flutter.versionCode') -if (flutterVersionCode == null) { - flutterVersionCode = '1' -} - -def flutterVersionName = localProperties.getProperty('flutter.versionName') -if (flutterVersionName == null) { - flutterVersionName = '1.0' -} - -apply plugin: 'com.android.application' -apply plugin: 'kotlin-android' -apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" - -android { - compileSdkVersion 30 - - sourceSets { - main.java.srcDirs += 'src/main/kotlin' - } - - defaultConfig { - // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). - applicationId "com.example.adaptive_app_demos" - minSdkVersion 16 - targetSdkVersion 30 - versionCode flutterVersionCode.toInteger() - versionName flutterVersionName - } - - buildTypes { - release { - // TODO: Add your own signing config for the release build. - // Signing with the debug keys for now, so `flutter run --release` works. - signingConfig signingConfigs.debug - } - } -} - -flutter { - source '../..' -} - -dependencies { - implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" -} diff --git a/examples/ui/layout/adaptive_app_demos/android/app/src/debug/AndroidManifest.xml b/examples/ui/layout/adaptive_app_demos/android/app/src/debug/AndroidManifest.xml deleted file mode 100644 index b40409917f..0000000000 --- a/examples/ui/layout/adaptive_app_demos/android/app/src/debug/AndroidManifest.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - diff --git a/examples/ui/layout/adaptive_app_demos/android/app/src/main/AndroidManifest.xml b/examples/ui/layout/adaptive_app_demos/android/app/src/main/AndroidManifest.xml deleted file mode 100644 index 11dc0a3736..0000000000 --- a/examples/ui/layout/adaptive_app_demos/android/app/src/main/AndroidManifest.xml +++ /dev/null @@ -1,41 +0,0 @@ - - - - - - - - - - - - - - - - diff --git a/examples/ui/layout/adaptive_app_demos/android/app/src/main/kotlin/com/example/adaptive_app_demos/MainActivity.kt b/examples/ui/layout/adaptive_app_demos/android/app/src/main/kotlin/com/example/adaptive_app_demos/MainActivity.kt deleted file mode 100644 index bf1e86820b..0000000000 --- a/examples/ui/layout/adaptive_app_demos/android/app/src/main/kotlin/com/example/adaptive_app_demos/MainActivity.kt +++ /dev/null @@ -1,6 +0,0 @@ -package com.example.adaptive_app_demos - -import io.flutter.embedding.android.FlutterActivity - -class MainActivity: FlutterActivity() { -} diff --git a/examples/ui/layout/adaptive_app_demos/android/app/src/main/res/drawable-v21/launch_background.xml b/examples/ui/layout/adaptive_app_demos/android/app/src/main/res/drawable-v21/launch_background.xml deleted file mode 100644 index f74085f3f6..0000000000 --- a/examples/ui/layout/adaptive_app_demos/android/app/src/main/res/drawable-v21/launch_background.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - diff --git a/examples/ui/layout/adaptive_app_demos/android/app/src/main/res/drawable/launch_background.xml b/examples/ui/layout/adaptive_app_demos/android/app/src/main/res/drawable/launch_background.xml deleted file mode 100644 index 304732f884..0000000000 --- a/examples/ui/layout/adaptive_app_demos/android/app/src/main/res/drawable/launch_background.xml +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - - diff --git a/examples/ui/layout/adaptive_app_demos/android/app/src/main/res/mipmap-hdpi/ic_launcher.png b/examples/ui/layout/adaptive_app_demos/android/app/src/main/res/mipmap-hdpi/ic_launcher.png deleted file mode 100644 index db77bb4b7b0906d62b1847e87f15cdcacf6a4f29..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 544 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY3?!3`olAj~WQl7;NpOBzNqJ&XDuZK6ep0G} zXKrG8YEWuoN@d~6R2!h8bpbvhu0Wd6uZuB!w&u2PAxD2eNXD>P5D~Wn-+_Wa#27Xc zC?Zj|6r#X(-D3u$NCt}(Ms06KgJ4FxJVv{GM)!I~&n8Bnc94O7-Hd)cjDZswgC;Qs zO=b+9!WcT8F?0rF7!Uys2bs@gozCP?z~o%U|N3vA*22NaGQG zlg@K`O_XuxvZ&Ks^m&R!`&1=spLvfx7oGDKDwpwW`#iqdw@AL`7MR}m`rwr|mZgU`8P7SBkL78fFf!WnuYWm$5Z0 zNXhDbCv&49sM544K|?c)WrFfiZvCi9h0O)B3Pgg&ebxsLQ05GG~ AQ2+n{ diff --git a/examples/ui/layout/adaptive_app_demos/android/app/src/main/res/mipmap-mdpi/ic_launcher.png b/examples/ui/layout/adaptive_app_demos/android/app/src/main/res/mipmap-mdpi/ic_launcher.png deleted file mode 100644 index 17987b79bb8a35cc66c3c1fd44f5a5526c1b78be..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 442 zcmeAS@N?(olHy`uVBq!ia0vp^1|ZDA3?vioaBc-sk|nMYCBgY=CFO}lsSJ)O`AMk? zp1FzXsX?iUDV2pMQ*D5Xx&nMcT!A!W`0S9QKQy;}1Cl^CgaH=;G9cpY;r$Q>i*pfB zP2drbID<_#qf;rPZx^FqH)F_D#*k@@q03KywUtLX8Ua?`H+NMzkczFPK3lFz@i_kW%1NOn0|D2I9n9wzH8m|-tHjsw|9>@K=iMBhxvkv6m8Y-l zytQ?X=U+MF$@3 zt`~i=@j|6y)RWMK--}M|=T`o&^Ni>IoWKHEbBXz7?A@mgWoL>!*SXo`SZH-*HSdS+ yn*9;$7;m`l>wYBC5bq;=U}IMqLzqbYCidGC!)_gkIk_C@Uy!y&wkt5C($~2D>~)O*cj@FGjOCM)M>_ixfudOh)?xMu#Fs z#}Y=@YDTwOM)x{K_j*Q;dPdJ?Mz0n|pLRx{4n|)f>SXlmV)XB04CrSJn#dS5nK2lM zrZ9#~WelCp7&e13Y$jvaEXHskn$2V!!DN-nWS__6T*l;H&Fopn?A6HZ-6WRLFP=R` zqG+CE#d4|IbyAI+rJJ`&x9*T`+a=p|0O(+s{UBcyZdkhj=yS1>AirP+0R;mf2uMgM zC}@~JfByORAh4SyRgi&!(cja>F(l*O+nd+@4m$|6K6KDn_&uvCpV23&>G9HJp{xgg zoq1^2_p9@|WEo z*X_Uko@K)qYYv~>43eQGMdbiGbo>E~Q& zrYBH{QP^@Sti!`2)uG{irBBq@y*$B zi#&(U-*=fp74j)RyIw49+0MRPMRU)+a2r*PJ$L5roHt2$UjExCTZSbq%V!HeS7J$N zdG@vOZB4v_lF7Plrx+hxo7(fCV&}fHq)$ diff --git a/examples/ui/layout/adaptive_app_demos/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png b/examples/ui/layout/adaptive_app_demos/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png deleted file mode 100644 index d5f1c8d34e7a88e3f88bea192c3a370d44689c3c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1031 zcmeAS@N?(olHy`uVBq!ia0vp^6F``Q8Ax83A=Cw=BuiW)N`mv#O3D+9QW+dm@{>{( zJaZG%Q-e|yQz{EjrrIztFa`(sgt!6~Yi|1%a`XoT0ojZ}lNrNjb9xjc(B0U1_% zz5^97Xt*%oq$rQy4?0GKNfJ44uvxI)gC`h-NZ|&0-7(qS@?b!5r36oQ}zyZrNO3 zMO=Or+<~>+A&uN&E!^Sl+>xE!QC-|oJv`ApDhqC^EWD|@=#J`=d#Xzxs4ah}w&Jnc z$|q_opQ^2TrnVZ0o~wh<3t%W&flvYGe#$xqda2bR_R zvPYgMcHgjZ5nSA^lJr%;<&0do;O^tDDh~=pIxA#coaCY>&N%M2^tq^U%3DB@ynvKo}b?yu-bFc-u0JHzced$sg7S3zqI(2 z#Km{dPr7I=pQ5>FuK#)QwK?Y`E`B?nP+}U)I#c1+FM*1kNvWG|a(TpksZQ3B@sD~b zpQ2)*V*TdwjFOtHvV|;OsiDqHi=6%)o4b!)x$)%9pGTsE z-JL={-Ffv+T87W(Xpooq<`r*VzWQcgBN$$`u}f>-ZQI1BB8ykN*=e4rIsJx9>z}*o zo~|9I;xof diff --git a/examples/ui/layout/adaptive_app_demos/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png b/examples/ui/layout/adaptive_app_demos/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png deleted file mode 100644 index 4d6372eebdb28e45604e46eeda8dd24651419bc0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1443 zcmb`G{WsKk6vsdJTdFg%tJav9_E4vzrOaqkWF|A724Nly!y+?N9`YV6wZ}5(X(D_N(?!*n3`|_r0Hc?=PQw&*vnU?QTFY zB_MsH|!j$PP;I}?dppoE_gA(4uc!jV&0!l7_;&p2^pxNo>PEcNJv za5_RT$o2Mf!<+r?&EbHH6nMoTsDOa;mN(wv8RNsHpG)`^ymG-S5By8=l9iVXzN_eG%Xg2@Xeq76tTZ*dGh~Lo9vl;Zfs+W#BydUw zCkZ$o1LqWQO$FC9aKlLl*7x9^0q%0}$OMlp@Kk_jHXOjofdePND+j!A{q!8~Jn+s3 z?~~w@4?egS02}8NuulUA=L~QQfm;MzCGd)XhiftT;+zFO&JVyp2mBww?;QByS_1w! zrQlx%{^cMj0|Bo1FjwY@Q8?Hx0cIPF*@-ZRFpPc#bBw{5@tD(5%sClzIfl8WU~V#u zm5Q;_F!wa$BSpqhN>W@2De?TKWR*!ujY;Yylk_X5#~V!L*Gw~;$%4Q8~Mad z@`-kG?yb$a9cHIApZDVZ^U6Xkp<*4rU82O7%}0jjHlK{id@?-wpN*fCHXyXh(bLt* zPc}H-x0e4E&nQ>y%B-(EL=9}RyC%MyX=upHuFhAk&MLbsF0LP-q`XnH78@fT+pKPW zu72MW`|?8ht^tz$iC}ZwLp4tB;Q49K!QCF3@!iB1qOI=?w z7In!}F~ij(18UYUjnbmC!qKhPo%24?8U1x{7o(+?^Zu0Hx81|FuS?bJ0jgBhEMzf< zCgUq7r2OCB(`XkKcN-TL>u5y#dD6D!)5W?`O5)V^>jb)P)GBdy%t$uUMpf$SNV31$ zb||OojAbvMP?T@$h_ZiFLFVHDmbyMhJF|-_)HX3%m=CDI+ID$0^C>kzxprBW)hw(v zr!Gmda);ICoQyhV_oP5+C%?jcG8v+D@9f?Dk*!BxY}dazmrT@64UrP3hlslANK)bq z$67n83eh}OeW&SV@HG95P|bjfqJ7gw$e+`Hxo!4cx`jdK1bJ>YDSpGKLPZ^1cv$ek zIB?0S<#tX?SJCLWdMd{-ME?$hc7A$zBOdIJ)4!KcAwb=VMov)nK;9z>x~rfT1>dS+ zZ6#`2v@`jgbqq)P22H)Tx2CpmM^o1$B+xT6`(v%5xJ(?j#>Q$+rx_R|7TzDZe{J6q zG1*EcU%tE?!kO%^M;3aM6JN*LAKUVb^xz8-Pxo#jR5(-KBeLJvA@-gxNHx0M-ZJLl z;#JwQoh~9V?`UVo#}{6ka@II>++D@%KqGpMdlQ}?9E*wFcf5(#XQnP$Dk5~%iX^>f z%$y;?M0BLp{O3a(-4A?ewryHrrD%cx#Q^%KY1H zNre$ve+vceSLZcNY4U(RBX&)oZn*Py()h)XkE?PL$!bNb{N5FVI2Y%LKEm%yvpyTP z(1P?z~7YxD~Rf<(a@_y` diff --git a/examples/ui/layout/adaptive_app_demos/android/app/src/main/res/values-night/styles.xml b/examples/ui/layout/adaptive_app_demos/android/app/src/main/res/values-night/styles.xml deleted file mode 100644 index 449a9f9308..0000000000 --- a/examples/ui/layout/adaptive_app_demos/android/app/src/main/res/values-night/styles.xml +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - - diff --git a/examples/ui/layout/adaptive_app_demos/android/app/src/main/res/values/styles.xml b/examples/ui/layout/adaptive_app_demos/android/app/src/main/res/values/styles.xml deleted file mode 100644 index d74aa35c28..0000000000 --- a/examples/ui/layout/adaptive_app_demos/android/app/src/main/res/values/styles.xml +++ /dev/null @@ -1,18 +0,0 @@ - - - - - - - diff --git a/examples/ui/layout/adaptive_app_demos/android/app/src/profile/AndroidManifest.xml b/examples/ui/layout/adaptive_app_demos/android/app/src/profile/AndroidManifest.xml deleted file mode 100644 index b40409917f..0000000000 --- a/examples/ui/layout/adaptive_app_demos/android/app/src/profile/AndroidManifest.xml +++ /dev/null @@ -1,7 +0,0 @@ - - - - diff --git a/examples/ui/layout/adaptive_app_demos/android/build.gradle b/examples/ui/layout/adaptive_app_demos/android/build.gradle deleted file mode 100644 index c505a86352..0000000000 --- a/examples/ui/layout/adaptive_app_demos/android/build.gradle +++ /dev/null @@ -1,31 +0,0 @@ -buildscript { - ext.kotlin_version = '1.3.50' - repositories { - google() - jcenter() - } - - dependencies { - classpath 'com.android.tools.build:gradle:4.1.0' - classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" - } -} - -allprojects { - repositories { - google() - jcenter() - } -} - -rootProject.buildDir = '../build' -subprojects { - project.buildDir = "${rootProject.buildDir}/${project.name}" -} -subprojects { - project.evaluationDependsOn(':app') -} - -task clean(type: Delete) { - delete rootProject.buildDir -} diff --git a/examples/ui/layout/adaptive_app_demos/android/gradle.properties b/examples/ui/layout/adaptive_app_demos/android/gradle.properties deleted file mode 100644 index 94adc3a3f9..0000000000 --- a/examples/ui/layout/adaptive_app_demos/android/gradle.properties +++ /dev/null @@ -1,3 +0,0 @@ -org.gradle.jvmargs=-Xmx1536M -android.useAndroidX=true -android.enableJetifier=true diff --git a/examples/ui/layout/adaptive_app_demos/android/gradle/wrapper/gradle-wrapper.properties b/examples/ui/layout/adaptive_app_demos/android/gradle/wrapper/gradle-wrapper.properties deleted file mode 100644 index bc6a58afdd..0000000000 --- a/examples/ui/layout/adaptive_app_demos/android/gradle/wrapper/gradle-wrapper.properties +++ /dev/null @@ -1,6 +0,0 @@ -#Fri Jun 23 08:50:38 CEST 2017 -distributionBase=GRADLE_USER_HOME -distributionPath=wrapper/dists -zipStoreBase=GRADLE_USER_HOME -zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-6.7-all.zip diff --git a/examples/ui/layout/adaptive_app_demos/android/settings.gradle b/examples/ui/layout/adaptive_app_demos/android/settings.gradle deleted file mode 100644 index 44e62bcf06..0000000000 --- a/examples/ui/layout/adaptive_app_demos/android/settings.gradle +++ /dev/null @@ -1,11 +0,0 @@ -include ':app' - -def localPropertiesFile = new File(rootProject.projectDir, "local.properties") -def properties = new Properties() - -assert localPropertiesFile.exists() -localPropertiesFile.withReader("UTF-8") { reader -> properties.load(reader) } - -def flutterSdkPath = properties.getProperty("flutter.sdk") -assert flutterSdkPath != null, "flutter.sdk not set in local.properties" -apply from: "$flutterSdkPath/packages/flutter_tools/gradle/app_plugin_loader.gradle" diff --git a/examples/ui/layout/adaptive_app_demos/ios/.gitignore b/examples/ui/layout/adaptive_app_demos/ios/.gitignore deleted file mode 100644 index 151026b91b..0000000000 --- a/examples/ui/layout/adaptive_app_demos/ios/.gitignore +++ /dev/null @@ -1,33 +0,0 @@ -*.mode1v3 -*.mode2v3 -*.moved-aside -*.pbxuser -*.perspectivev3 -**/*sync/ -.sconsign.dblite -.tags* -**/.vagrant/ -**/DerivedData/ -Icon? -**/Pods/ -**/.symlinks/ -profile -xcuserdata -**/.generated/ -Flutter/App.framework -Flutter/Flutter.framework -Flutter/Flutter.podspec -Flutter/Generated.xcconfig -Flutter/ephemeral/ -Flutter/app.flx -Flutter/app.zip -Flutter/flutter_assets/ -Flutter/flutter_export_environment.sh -ServiceDefinitions.json -Runner/GeneratedPluginRegistrant.* - -# Exceptions to above rules. -!default.mode1v3 -!default.mode2v3 -!default.pbxuser -!default.perspectivev3 diff --git a/examples/ui/layout/adaptive_app_demos/ios/Flutter/AppFrameworkInfo.plist b/examples/ui/layout/adaptive_app_demos/ios/Flutter/AppFrameworkInfo.plist deleted file mode 100644 index 9367d483e4..0000000000 --- a/examples/ui/layout/adaptive_app_demos/ios/Flutter/AppFrameworkInfo.plist +++ /dev/null @@ -1,26 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleExecutable - App - CFBundleIdentifier - io.flutter.flutter.app - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - App - CFBundlePackageType - FMWK - CFBundleShortVersionString - 1.0 - CFBundleSignature - ???? - CFBundleVersion - 1.0 - MinimumOSVersion - 8.0 - - diff --git a/examples/ui/layout/adaptive_app_demos/ios/Flutter/Debug.xcconfig b/examples/ui/layout/adaptive_app_demos/ios/Flutter/Debug.xcconfig deleted file mode 100644 index ec97fc6f30..0000000000 --- a/examples/ui/layout/adaptive_app_demos/ios/Flutter/Debug.xcconfig +++ /dev/null @@ -1,2 +0,0 @@ -#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig" -#include "Generated.xcconfig" diff --git a/examples/ui/layout/adaptive_app_demos/ios/Flutter/Release.xcconfig b/examples/ui/layout/adaptive_app_demos/ios/Flutter/Release.xcconfig deleted file mode 100644 index c4855bfe20..0000000000 --- a/examples/ui/layout/adaptive_app_demos/ios/Flutter/Release.xcconfig +++ /dev/null @@ -1,2 +0,0 @@ -#include? "Pods/Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig" -#include "Generated.xcconfig" diff --git a/examples/ui/layout/adaptive_app_demos/ios/Podfile b/examples/ui/layout/adaptive_app_demos/ios/Podfile deleted file mode 100644 index 1e8c3c90a5..0000000000 --- a/examples/ui/layout/adaptive_app_demos/ios/Podfile +++ /dev/null @@ -1,41 +0,0 @@ -# Uncomment this line to define a global platform for your project -# platform :ios, '9.0' - -# CocoaPods analytics sends network stats synchronously affecting flutter build latency. -ENV['COCOAPODS_DISABLE_STATS'] = 'true' - -project 'Runner', { - 'Debug' => :debug, - 'Profile' => :release, - 'Release' => :release, -} - -def flutter_root - generated_xcode_build_settings_path = File.expand_path(File.join('..', 'Flutter', 'Generated.xcconfig'), __FILE__) - unless File.exist?(generated_xcode_build_settings_path) - raise "#{generated_xcode_build_settings_path} must exist. If you're running pod install manually, make sure flutter pub get is executed first" - end - - File.foreach(generated_xcode_build_settings_path) do |line| - matches = line.match(/FLUTTER_ROOT\=(.*)/) - return matches[1].strip if matches - end - raise "FLUTTER_ROOT not found in #{generated_xcode_build_settings_path}. Try deleting Generated.xcconfig, then run flutter pub get" -end - -require File.expand_path(File.join('packages', 'flutter_tools', 'bin', 'podhelper'), flutter_root) - -flutter_ios_podfile_setup - -target 'Runner' do - use_frameworks! - use_modular_headers! - - flutter_install_all_ios_pods File.dirname(File.realpath(__FILE__)) -end - -post_install do |installer| - installer.pods_project.targets.each do |target| - flutter_additional_ios_build_settings(target) - end -end diff --git a/examples/ui/layout/adaptive_app_demos/ios/Runner.xcodeproj/project.pbxproj b/examples/ui/layout/adaptive_app_demos/ios/Runner.xcodeproj/project.pbxproj deleted file mode 100644 index 5fda16fdba..0000000000 --- a/examples/ui/layout/adaptive_app_demos/ios/Runner.xcodeproj/project.pbxproj +++ /dev/null @@ -1,471 +0,0 @@ -// !$*UTF8*$! -{ - archiveVersion = 1; - classes = { - }; - objectVersion = 46; - objects = { - -/* Begin PBXBuildFile section */ - 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; }; - 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; }; - 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; }; - 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; }; - 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; }; - 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; }; -/* End PBXBuildFile section */ - -/* Begin PBXCopyFilesBuildPhase section */ - 9705A1C41CF9048500538489 /* Embed Frameworks */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = ""; - dstSubfolderSpec = 10; - files = ( - ); - name = "Embed Frameworks"; - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXCopyFilesBuildPhase section */ - -/* Begin PBXFileReference section */ - 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = ""; }; - 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = ""; }; - 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = ""; }; - 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = ""; }; - 74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; - 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = ""; }; - 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = ""; }; - 9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = ""; }; - 97C146EE1CF9000F007C117D /* Runner.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Runner.app; sourceTree = BUILT_PRODUCTS_DIR; }; - 97C146FB1CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; - 97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; - 97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; - 97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; -/* End PBXFileReference section */ - -/* Begin PBXFrameworksBuildPhase section */ - 97C146EB1CF9000F007C117D /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXFrameworksBuildPhase section */ - -/* Begin PBXGroup section */ - 9740EEB11CF90186004384FC /* Flutter */ = { - isa = PBXGroup; - children = ( - 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */, - 9740EEB21CF90195004384FC /* Debug.xcconfig */, - 7AFA3C8E1D35360C0083082E /* Release.xcconfig */, - 9740EEB31CF90195004384FC /* Generated.xcconfig */, - ); - name = Flutter; - sourceTree = ""; - }; - 97C146E51CF9000F007C117D = { - isa = PBXGroup; - children = ( - 9740EEB11CF90186004384FC /* Flutter */, - 97C146F01CF9000F007C117D /* Runner */, - 97C146EF1CF9000F007C117D /* Products */, - ); - sourceTree = ""; - }; - 97C146EF1CF9000F007C117D /* Products */ = { - isa = PBXGroup; - children = ( - 97C146EE1CF9000F007C117D /* Runner.app */, - ); - name = Products; - sourceTree = ""; - }; - 97C146F01CF9000F007C117D /* Runner */ = { - isa = PBXGroup; - children = ( - 97C146FA1CF9000F007C117D /* Main.storyboard */, - 97C146FD1CF9000F007C117D /* Assets.xcassets */, - 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */, - 97C147021CF9000F007C117D /* Info.plist */, - 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */, - 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */, - 74858FAE1ED2DC5600515810 /* AppDelegate.swift */, - 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */, - ); - path = Runner; - sourceTree = ""; - }; -/* End PBXGroup section */ - -/* Begin PBXNativeTarget section */ - 97C146ED1CF9000F007C117D /* Runner */ = { - isa = PBXNativeTarget; - buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */; - buildPhases = ( - 9740EEB61CF901F6004384FC /* Run Script */, - 97C146EA1CF9000F007C117D /* Sources */, - 97C146EB1CF9000F007C117D /* Frameworks */, - 97C146EC1CF9000F007C117D /* Resources */, - 9705A1C41CF9048500538489 /* Embed Frameworks */, - 3B06AD1E1E4923F5004D2608 /* Thin Binary */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = Runner; - productName = Runner; - productReference = 97C146EE1CF9000F007C117D /* Runner.app */; - productType = "com.apple.product-type.application"; - }; -/* End PBXNativeTarget section */ - -/* Begin PBXProject section */ - 97C146E61CF9000F007C117D /* Project object */ = { - isa = PBXProject; - attributes = { - LastUpgradeCheck = 1020; - ORGANIZATIONNAME = ""; - TargetAttributes = { - 97C146ED1CF9000F007C117D = { - CreatedOnToolsVersion = 7.3.1; - LastSwiftMigration = 1100; - }; - }; - }; - buildConfigurationList = 97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */; - compatibilityVersion = "Xcode 9.3"; - developmentRegion = en; - hasScannedForEncodings = 0; - knownRegions = ( - en, - Base, - ); - mainGroup = 97C146E51CF9000F007C117D; - productRefGroup = 97C146EF1CF9000F007C117D /* Products */; - projectDirPath = ""; - projectRoot = ""; - targets = ( - 97C146ED1CF9000F007C117D /* Runner */, - ); - }; -/* End PBXProject section */ - -/* Begin PBXResourcesBuildPhase section */ - 97C146EC1CF9000F007C117D /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */, - 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */, - 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */, - 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXResourcesBuildPhase section */ - -/* Begin PBXShellScriptBuildPhase section */ - 3B06AD1E1E4923F5004D2608 /* Thin Binary */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - ); - name = "Thin Binary"; - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin"; - }; - 9740EEB61CF901F6004384FC /* Run Script */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - ); - name = "Run Script"; - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build"; - }; -/* End PBXShellScriptBuildPhase section */ - -/* Begin PBXSourcesBuildPhase section */ - 97C146EA1CF9000F007C117D /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */, - 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXSourcesBuildPhase section */ - -/* Begin PBXVariantGroup section */ - 97C146FA1CF9000F007C117D /* Main.storyboard */ = { - isa = PBXVariantGroup; - children = ( - 97C146FB1CF9000F007C117D /* Base */, - ); - name = Main.storyboard; - sourceTree = ""; - }; - 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */ = { - isa = PBXVariantGroup; - children = ( - 97C147001CF9000F007C117D /* Base */, - ); - name = LaunchScreen.storyboard; - sourceTree = ""; - }; -/* End PBXVariantGroup section */ - -/* Begin XCBuildConfiguration section */ - 249021D3217E4FDB00AE95B9 /* Profile */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; - MTL_ENABLE_DEBUG_INFO = NO; - SDKROOT = iphoneos; - SUPPORTED_PLATFORMS = iphoneos; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; - }; - name = Profile; - }; - 249021D4217E4FDB00AE95B9 /* Profile */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CLANG_ENABLE_MODULES = YES; - CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; - ENABLE_BITCODE = NO; - INFOPLIST_FILE = Runner/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = com.example.adaptiveAppDemos; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; - SWIFT_VERSION = 5.0; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = Profile; - }; - 97C147031CF9000F007C117D /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = dwarf; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_TESTABILITY = YES; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_DYNAMIC_NO_PIC = NO; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; - MTL_ENABLE_DEBUG_INFO = YES; - ONLY_ACTIVE_ARCH = YES; - SDKROOT = iphoneos; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = Debug; - }; - 97C147041CF9000F007C117D /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; - MTL_ENABLE_DEBUG_INFO = NO; - SDKROOT = iphoneos; - SUPPORTED_PLATFORMS = iphoneos; - SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; - }; - name = Release; - }; - 97C147061CF9000F007C117D /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 9740EEB21CF90195004384FC /* Debug.xcconfig */; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CLANG_ENABLE_MODULES = YES; - CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; - ENABLE_BITCODE = NO; - INFOPLIST_FILE = Runner/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = com.example.adaptiveAppDemos; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 5.0; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = Debug; - }; - 97C147071CF9000F007C117D /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CLANG_ENABLE_MODULES = YES; - CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)"; - ENABLE_BITCODE = NO; - INFOPLIST_FILE = Runner/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = com.example.adaptiveAppDemos; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h"; - SWIFT_VERSION = 5.0; - VERSIONING_SYSTEM = "apple-generic"; - }; - name = Release; - }; -/* End XCBuildConfiguration section */ - -/* Begin XCConfigurationList section */ - 97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 97C147031CF9000F007C117D /* Debug */, - 97C147041CF9000F007C117D /* Release */, - 249021D3217E4FDB00AE95B9 /* Profile */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 97C147061CF9000F007C117D /* Debug */, - 97C147071CF9000F007C117D /* Release */, - 249021D4217E4FDB00AE95B9 /* Profile */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; -/* End XCConfigurationList section */ - }; - rootObject = 97C146E61CF9000F007C117D /* Project object */; -} diff --git a/examples/ui/layout/adaptive_app_demos/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/examples/ui/layout/adaptive_app_demos/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata deleted file mode 100644 index 919434a625..0000000000 --- a/examples/ui/layout/adaptive_app_demos/ios/Runner.xcodeproj/project.xcworkspace/contents.xcworkspacedata +++ /dev/null @@ -1,7 +0,0 @@ - - - - - diff --git a/examples/ui/layout/adaptive_app_demos/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/examples/ui/layout/adaptive_app_demos/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist deleted file mode 100644 index 18d981003d..0000000000 --- a/examples/ui/layout/adaptive_app_demos/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +++ /dev/null @@ -1,8 +0,0 @@ - - - - - IDEDidComputeMac32BitWarning - - - diff --git a/examples/ui/layout/adaptive_app_demos/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/examples/ui/layout/adaptive_app_demos/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings deleted file mode 100644 index f9b0d7c5ea..0000000000 --- a/examples/ui/layout/adaptive_app_demos/ios/Runner.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings +++ /dev/null @@ -1,8 +0,0 @@ - - - - - PreviewsEnabled - - - diff --git a/examples/ui/layout/adaptive_app_demos/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/examples/ui/layout/adaptive_app_demos/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme deleted file mode 100644 index a28140cfdb..0000000000 --- a/examples/ui/layout/adaptive_app_demos/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme +++ /dev/null @@ -1,91 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/ui/layout/adaptive_app_demos/ios/Runner.xcworkspace/contents.xcworkspacedata b/examples/ui/layout/adaptive_app_demos/ios/Runner.xcworkspace/contents.xcworkspacedata deleted file mode 100644 index 1d526a16ed..0000000000 --- a/examples/ui/layout/adaptive_app_demos/ios/Runner.xcworkspace/contents.xcworkspacedata +++ /dev/null @@ -1,7 +0,0 @@ - - - - - diff --git a/examples/ui/layout/adaptive_app_demos/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/examples/ui/layout/adaptive_app_demos/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist deleted file mode 100644 index 18d981003d..0000000000 --- a/examples/ui/layout/adaptive_app_demos/ios/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +++ /dev/null @@ -1,8 +0,0 @@ - - - - - IDEDidComputeMac32BitWarning - - - diff --git a/examples/ui/layout/adaptive_app_demos/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings b/examples/ui/layout/adaptive_app_demos/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings deleted file mode 100644 index f9b0d7c5ea..0000000000 --- a/examples/ui/layout/adaptive_app_demos/ios/Runner.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings +++ /dev/null @@ -1,8 +0,0 @@ - - - - - PreviewsEnabled - - - diff --git a/examples/ui/layout/adaptive_app_demos/ios/Runner/AppDelegate.swift b/examples/ui/layout/adaptive_app_demos/ios/Runner/AppDelegate.swift deleted file mode 100644 index 70693e4a8c..0000000000 --- a/examples/ui/layout/adaptive_app_demos/ios/Runner/AppDelegate.swift +++ /dev/null @@ -1,13 +0,0 @@ -import UIKit -import Flutter - -@UIApplicationMain -@objc class AppDelegate: FlutterAppDelegate { - override func application( - _ application: UIApplication, - didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]? - ) -> Bool { - GeneratedPluginRegistrant.register(with: self) - return super.application(application, didFinishLaunchingWithOptions: launchOptions) - } -} diff --git a/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json b/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json deleted file mode 100644 index d36b1fab2d..0000000000 --- a/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json +++ /dev/null @@ -1,122 +0,0 @@ -{ - "images" : [ - { - "size" : "20x20", - "idiom" : "iphone", - "filename" : "Icon-App-20x20@2x.png", - "scale" : "2x" - }, - { - "size" : "20x20", - "idiom" : "iphone", - "filename" : "Icon-App-20x20@3x.png", - "scale" : "3x" - }, - { - "size" : "29x29", - "idiom" : "iphone", - "filename" : "Icon-App-29x29@1x.png", - "scale" : "1x" - }, - { - "size" : "29x29", - "idiom" : "iphone", - "filename" : "Icon-App-29x29@2x.png", - "scale" : "2x" - }, - { - "size" : "29x29", - "idiom" : "iphone", - "filename" : "Icon-App-29x29@3x.png", - "scale" : "3x" - }, - { - "size" : "40x40", - "idiom" : "iphone", - "filename" : "Icon-App-40x40@2x.png", - "scale" : "2x" - }, - { - "size" : "40x40", - "idiom" : "iphone", - "filename" : "Icon-App-40x40@3x.png", - "scale" : "3x" - }, - { - "size" : "60x60", - "idiom" : "iphone", - "filename" : "Icon-App-60x60@2x.png", - "scale" : "2x" - }, - { - "size" : "60x60", - "idiom" : "iphone", - "filename" : "Icon-App-60x60@3x.png", - "scale" : "3x" - }, - { - "size" : "20x20", - "idiom" : "ipad", - "filename" : "Icon-App-20x20@1x.png", - "scale" : "1x" - }, - { - "size" : "20x20", - "idiom" : "ipad", - "filename" : "Icon-App-20x20@2x.png", - "scale" : "2x" - }, - { - "size" : "29x29", - "idiom" : "ipad", - "filename" : "Icon-App-29x29@1x.png", - "scale" : "1x" - }, - { - "size" : "29x29", - "idiom" : "ipad", - "filename" : "Icon-App-29x29@2x.png", - "scale" : "2x" - }, - { - "size" : "40x40", - "idiom" : "ipad", - "filename" : "Icon-App-40x40@1x.png", - "scale" : "1x" - }, - { - "size" : "40x40", - "idiom" : "ipad", - "filename" : "Icon-App-40x40@2x.png", - "scale" : "2x" - }, - { - "size" : "76x76", - "idiom" : "ipad", - "filename" : "Icon-App-76x76@1x.png", - "scale" : "1x" - }, - { - "size" : "76x76", - "idiom" : "ipad", - "filename" : "Icon-App-76x76@2x.png", - "scale" : "2x" - }, - { - "size" : "83.5x83.5", - "idiom" : "ipad", - "filename" : "Icon-App-83.5x83.5@2x.png", - "scale" : "2x" - }, - { - "size" : "1024x1024", - "idiom" : "ios-marketing", - "filename" : "Icon-App-1024x1024@1x.png", - "scale" : "1x" - } - ], - "info" : { - "version" : 1, - "author" : "xcode" - } -} diff --git a/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png b/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-1024x1024@1x.png deleted file mode 100644 index dc9ada4725e9b0ddb1deab583e5b5102493aa332..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 10932 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 diff --git a/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png b/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-20x20@3x.png deleted file mode 100644 index f091b6b0bca859a3f474b03065bef75ba58a9e4c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1588 zcmV-42Fv-0P)C1SqPt}wig>|5Crh^=oyX$BK<}M8eLU3e2hGT;=G|!_SP)7zNI6fqUMB=)y zRAZ>eDe#*r`yDAVgB_R*LB*MAc)8(b{g{9McCXW!lq7r(btRoB9!8B-#AI6JMb~YFBEvdsV)`mEQO^&#eRKx@b&x- z5lZm*!WfD8oCLzfHGz#u7sT0^VLMI1MqGxF^v+`4YYnVYgk*=kU?HsSz{v({E3lb9 z>+xILjBN)t6`=g~IBOelGQ(O990@BfXf(DRI5I$qN$0Gkz-FSc$3a+2fX$AedL4u{ z4V+5Ong(9LiGcIKW?_352sR;LtDPmPJXI{YtT=O8=76o9;*n%_m|xo!i>7$IrZ-{l z-x3`7M}qzHsPV@$v#>H-TpjDh2UE$9g6sysUREDy_R(a)>=eHw-WAyfIN z*qb!_hW>G)Tu8nSw9yn#3wFMiLcfc4pY0ek1}8(NqkBR@t4{~oC>ryc-h_ByH(Cg5 z>ao-}771+xE3um9lWAY1FeQFxowa1(!J(;Jg*wrg!=6FdRX+t_<%z&d&?|Bn){>zm zZQj(aA_HeBY&OC^jj*)N`8fa^ePOU72VpInJoI1?`ty#lvlNzs(&MZX+R%2xS~5Kh zX*|AU4QE#~SgPzOXe9>tRj>hjU@c1k5Y_mW*Jp3fI;)1&g3j|zDgC+}2Q_v%YfDax z!?umcN^n}KYQ|a$Lr+51Nf9dkkYFSjZZjkma$0KOj+;aQ&721~t7QUKx61J3(P4P1 zstI~7-wOACnWP4=8oGOwz%vNDqD8w&Q`qcNGGrbbf&0s9L0De{4{mRS?o0MU+nR_! zrvshUau0G^DeMhM_v{5BuLjb#Hh@r23lDAk8oF(C+P0rsBpv85EP>4CVMx#04MOfG z;P%vktHcXwTj~+IE(~px)3*MY77e}p#|c>TD?sMatC0Tu4iKKJ0(X8jxQY*gYtxsC z(zYC$g|@+I+kY;dg_dE>scBf&bP1Nc@Hz<3R)V`=AGkc;8CXqdi=B4l2k|g;2%#m& z*jfX^%b!A8#bI!j9-0Fi0bOXl(-c^AB9|nQaE`*)Hw+o&jS9@7&Gov#HbD~#d{twV zXd^Tr^mWLfFh$@Dr$e;PBEz4(-2q1FF0}c;~B5sA}+Q>TOoP+t>wf)V9Iy=5ruQa;z)y zI9C9*oUga6=hxw6QasLPnee@3^Rr*M{CdaL5=R41nLs(AHk_=Y+A9$2&H(B7!_pURs&8aNw7?`&Z&xY_Ye z)~D5Bog^td-^QbUtkTirdyK^mTHAOuptDflut!#^lnKqU md>ggs(5nOWAqO?umG&QVYK#ibz}*4>0000U6E9hRK9^#O7(mu>ETqrXGsduA8$)?`v2seloOCza43C{NQ$$gAOH**MCn0Q?+L7dl7qnbRdqZ8LSVp1ItDxhxD?t@5_yHg6A8yI zC*%Wgg22K|8E#!~cTNYR~@Y9KepMPrrB8cABapAFa=`H+UGhkXUZV1GnwR1*lPyZ;*K(i~2gp|@bzp8}og7e*#% zEnr|^CWdVV!-4*Y_7rFvlww2Ze+>j*!Z!pQ?2l->4q#nqRu9`ELo6RMS5=br47g_X zRw}P9a7RRYQ%2Vsd0Me{_(EggTnuN6j=-?uFS6j^u69elMypu?t>op*wBx<=Wx8?( ztpe^(fwM6jJX7M-l*k3kEpWOl_Vk3@(_w4oc}4YF4|Rt=2V^XU?#Yz`8(e?aZ@#li0n*=g^qOcVpd-Wbok=@b#Yw zqn8u9a)z>l(1kEaPYZ6hwubN6i<8QHgsu0oE) ziJ(p;Wxm>sf!K+cw>R-(^Y2_bahB+&KI9y^);#0qt}t-$C|Bo71lHi{_+lg#f%RFy z0um=e3$K3i6K{U_4K!EX?F&rExl^W|G8Z8;`5z-k}OGNZ0#WVb$WCpQu-_YsiqKP?BB# vzVHS-CTUF4Ozn5G+mq_~Qqto~ahA+K`|lyv3(-e}00000NkvXXu0mjfd`9t{ diff --git a/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png b/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-29x29@2x.png deleted file mode 100644 index d0ef06e7edb86cdfe0d15b4b0d98334a86163658..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1716 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 diff --git a/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png b/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@2x.png deleted file mode 100644 index c8f9ed8f5cee1c98386d13b17e89f719e83555b2..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1895 zcmV-t2blPYP)FQtfgmafE#=YDCq`qUBt#QpG%*H6QHY765~R=q zZ6iudfM}q!Pz#~9JgOi8QJ|DSu?1-*(kSi1K4#~5?#|rh?sS)(-JQqX*}ciXJ56_H zdw=^s_srbAdqxlvGyrgGet#6T7_|j;95sL%MtM;q86vOxKM$f#puR)Bjv9Zvz9-di zXOTSsZkM83)E9PYBXC<$6(|>lNLVBb&&6y{NByFCp%6+^ALR@NCTse_wqvNmSWI-m z!$%KlHFH2omF!>#%1l3LTZg(s7eof$7*xB)ZQ0h?ejh?Ta9fDv59+u#MokW+1t8Zb zgHv%K(u9G^Lv`lh#f3<6!JVTL3(dCpxHbnbA;kKqQyd1~^Xe0VIaYBSWm6nsr;dFj z4;G-RyL?cYgsN1{L4ZFFNa;8)Rv0fM0C(~Tkit94 zz#~A)59?QjD&pAPSEQ)p8gP|DS{ng)j=2ux)_EzzJ773GmQ_Cic%3JJhC0t2cx>|v zJcVusIB!%F90{+}8hG3QU4KNeKmK%T>mN57NnCZ^56=0?&3@!j>a>B43pi{!u z7JyDj7`6d)qVp^R=%j>UIY6f+3`+qzIc!Y_=+uN^3BYV|o+$vGo-j-Wm<10%A=(Yk^beI{t%ld@yhKjq0iNjqN4XMGgQtbKubPM$JWBz}YA65k%dm*awtC^+f;a-x4+ddbH^7iDWGg&N0n#MW{kA|=8iMUiFYvMoDY@sPC#t$55gn6ykUTPAr`a@!(;np824>2xJthS z*ZdmT`g5-`BuJs`0LVhz+D9NNa3<=6m;cQLaF?tCv8)zcRSh66*Z|vXhG@$I%U~2l z?`Q zykI#*+rQ=z6Jm=Bui-SfpDYLA=|vzGE(dYm=OC8XM&MDo7ux4UF1~0J1+i%aCUpRe zt3L_uNyQ*cE(38Uy03H%I*)*Bh=Lb^Xj3?I^Hnbeq72(EOK^Y93CNp*uAA{5Lc=ky zx=~RKa4{iTm{_>_vSCm?$Ej=i6@=m%@VvAITnigVg{&@!7CDgs908761meDK5azA} z4?=NOH|PdvabgJ&fW2{Mo$Q0CcD8Qc84%{JPYt5EiG{MdLIAeX%T=D7NIP4%Hw}p9 zg)==!2Lbp#j{u_}hMiao9=!VSyx0gHbeCS`;q&vzeq|fs`y&^X-lso(Ls@-706qmA z7u*T5PMo_w3{se1t2`zWeO^hOvTsohG_;>J0wVqVe+n)AbQCx)yh9;w+J6?NF5Lmo zecS@ieAKL8%bVd@+-KT{yI|S}O>pYckUFs;ry9Ow$CD@ztz5K-*D$^{i(_1llhSh^ zEkL$}tsQt5>QA^;QgjgIfBDmcOgi5YDyu?t6vSnbp=1+@6D& z5MJ}B8q;bRlVoxasyhcUF1+)o`&3r0colr}QJ3hcSdLu;9;td>kf@Tcn<@9sIx&=m z;AD;SCh95=&p;$r{Xz3iWCO^MX83AGJ(yH&eTXgv|0=34#-&WAmw{)U7OU9!Wz^!7 zZ%jZFi@JR;>Mhi7S>V7wQ176|FdW2m?&`qa(ScO^CFPR80HucLHOTy%5s*HR0^8)i h0WYBP*#0Ks^FNSabJA*5${_#%002ovPDHLkV1oKhTl@e3 diff --git a/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png b/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png deleted file mode 100644 index a6d6b8609df07bf62e5100a53a01510388bd2b22..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2665 zcmV-v3YPVWP)oFh3q0MFesq&64WThn3$;G69TfjsAv=f2G9}p zgSx99+!YV6qME!>9MD13x)k(+XE7W?_O4LoLb5ND8 zaV{9+P@>42xDfRiYBMSgD$0!vssptcb;&?u9u(LLBKmkZ>RMD=kvD3h`sk6!QYtBa ztlZI#nu$8lJ^q2Z79UTgZe>BU73(Aospiq+?SdMt8lDZ;*?@tyWVZVS_Q7S&*tJaiRlJ z+aSMOmbg3@h5}v;A*c8SbqM3icg-`Cnwl;7Ts%A1RkNIp+Txl-Ckkvg4oxrqGA5ewEgYqwtECD<_3Egu)xGllKt&J8g&+=ac@Jq4-?w6M3b*>w5 z69N3O%=I^6&UL5gZ!}trC7bUj*12xLdkNs~Bz4QdJJ*UDZox2UGR}SNg@lmOvhCc~ z*f_UeXv(=#I#*7>VZx2ObEN~UoGUTl=-@)E;YtCRZ>SVp$p9yG5hEFZ!`wI!spd)n zSk+vK0Vin7FL{7f&6OB%f;SH22dtbcF<|9fi2Fp%q4kxL!b1#l^)8dUwJ zwEf{(wJj@8iYDVnKB`eSU+;ml-t2`@%_)0jDM`+a46xhDbBj2+&Ih>1A>6aky#(-SYyE{R3f#y57wfLs z6w1p~$bp;6!9DX$M+J~S@D6vJAaElETnsX4h9a5tvPhC3L@qB~bOzkL@^z0k_hS{T4PF*TDrgdXp+dzsE? z>V|VR035Pl9n5&-RePFdS{7KAr2vPOqR9=M$vXA1Yy5>w;EsF`;OK{2pkn-kpp9Pw z)r;5JfJKKaT$4qCb{TaXHjb$QA{y0EYy*+b1XI;6Ah- zw13P)xT`>~eFoJC!>{2XL(a_#upp3gaR1#5+L(Jmzp4TBnx{~WHedpJ1ch8JFk~Sw z>F+gN+i+VD?gMXwcIhn8rz`>e>J^TI3E-MW>f}6R-pL}>WMOa0k#jN+`RyUVUC;#D zg|~oS^$6%wpF{^Qr+}X>0PKcr3Fc&>Z>uv@C);pwDs@2bZWhYP!rvGx?_|q{d`t<*XEb#=aOb=N+L@CVBGqImZf&+a zCQEa3$~@#kC);pasdG=f6tuIi0PO-y&tvX%>Mv=oY3U$nD zJ#gMegnQ46pq+3r=;zmgcG+zRc9D~c>z+jo9&D+`E6$LmyFqlmCYw;-Zooma{sR@~ z)_^|YL1&&@|GXo*pivH7k!msl+$Sew3%XJnxajt0K%3M6Bd&YFNy9}tWG^aovK2eX z1aL1%7;KRDrA@eG-Wr6w+;*H_VD~qLiVI`{_;>o)k`{8xa3EJT1O_>#iy_?va0eR? zDV=N%;Zjb%Z2s$@O>w@iqt!I}tLjGk!=p`D23I}N4Be@$(|iSA zf3Ih7b<{zqpDB4WF_5X1(peKe+rASze%u8eKLn#KKXt;UZ+Adf$_TO+vTqshLLJ5c z52HucO=lrNVae5XWOLm!V@n-ObU11!b+DN<$RuU+YsrBq*lYT;?AwJpmNKniF0Q1< zJCo>Q$=v$@&y=sj6{r!Y&y&`0$-I}S!H_~pI&2H8Z1C|BX4VgZ^-! zje3-;x0PBD!M`v*J_)rL^+$<1VJhH*2Fi~aA7s&@_rUHYJ9zD=M%4AFQ`}k8OC$9s XsPq=LnkwKG00000NkvXXu0mjfhAk5^ diff --git a/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png b/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png deleted file mode 100644 index a6d6b8609df07bf62e5100a53a01510388bd2b22..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2665 zcmV-v3YPVWP)oFh3q0MFesq&64WThn3$;G69TfjsAv=f2G9}p zgSx99+!YV6qME!>9MD13x)k(+XE7W?_O4LoLb5ND8 zaV{9+P@>42xDfRiYBMSgD$0!vssptcb;&?u9u(LLBKmkZ>RMD=kvD3h`sk6!QYtBa ztlZI#nu$8lJ^q2Z79UTgZe>BU73(Aospiq+?SdMt8lDZ;*?@tyWVZVS_Q7S&*tJaiRlJ z+aSMOmbg3@h5}v;A*c8SbqM3icg-`Cnwl;7Ts%A1RkNIp+Txl-Ckkvg4oxrqGA5ewEgYqwtECD<_3Egu)xGllKt&J8g&+=ac@Jq4-?w6M3b*>w5 z69N3O%=I^6&UL5gZ!}trC7bUj*12xLdkNs~Bz4QdJJ*UDZox2UGR}SNg@lmOvhCc~ z*f_UeXv(=#I#*7>VZx2ObEN~UoGUTl=-@)E;YtCRZ>SVp$p9yG5hEFZ!`wI!spd)n zSk+vK0Vin7FL{7f&6OB%f;SH22dtbcF<|9fi2Fp%q4kxL!b1#l^)8dUwJ zwEf{(wJj@8iYDVnKB`eSU+;ml-t2`@%_)0jDM`+a46xhDbBj2+&Ih>1A>6aky#(-SYyE{R3f#y57wfLs z6w1p~$bp;6!9DX$M+J~S@D6vJAaElETnsX4h9a5tvPhC3L@qB~bOzkL@^z0k_hS{T4PF*TDrgdXp+dzsE? z>V|VR035Pl9n5&-RePFdS{7KAr2vPOqR9=M$vXA1Yy5>w;EsF`;OK{2pkn-kpp9Pw z)r;5JfJKKaT$4qCb{TaXHjb$QA{y0EYy*+b1XI;6Ah- zw13P)xT`>~eFoJC!>{2XL(a_#upp3gaR1#5+L(Jmzp4TBnx{~WHedpJ1ch8JFk~Sw z>F+gN+i+VD?gMXwcIhn8rz`>e>J^TI3E-MW>f}6R-pL}>WMOa0k#jN+`RyUVUC;#D zg|~oS^$6%wpF{^Qr+}X>0PKcr3Fc&>Z>uv@C);pwDs@2bZWhYP!rvGx?_|q{d`t<*XEb#=aOb=N+L@CVBGqImZf&+a zCQEa3$~@#kC);pasdG=f6tuIi0PO-y&tvX%>Mv=oY3U$nD zJ#gMegnQ46pq+3r=;zmgcG+zRc9D~c>z+jo9&D+`E6$LmyFqlmCYw;-Zooma{sR@~ z)_^|YL1&&@|GXo*pivH7k!msl+$Sew3%XJnxajt0K%3M6Bd&YFNy9}tWG^aovK2eX z1aL1%7;KRDrA@eG-Wr6w+;*H_VD~qLiVI`{_;>o)k`{8xa3EJT1O_>#iy_?va0eR? zDV=N%;Zjb%Z2s$@O>w@iqt!I}tLjGk!=p`D23I}N4Be@$(|iSA zf3Ih7b<{zqpDB4WF_5X1(peKe+rASze%u8eKLn#KKXt;UZ+Adf$_TO+vTqshLLJ5c z52HucO=lrNVae5XWOLm!V@n-ObU11!b+DN<$RuU+YsrBq*lYT;?AwJpmNKniF0Q1< zJCo>Q$=v$@&y=sj6{r!Y&y&`0$-I}S!H_~pI&2H8Z1C|BX4VgZ^-! zje3-;x0PBD!M`v*J_)rL^+$<1VJhH*2Fi~aA7s&@_rUHYJ9zD=M%4AFQ`}k8OC$9s XsPq=LnkwKG00000NkvXXu0mjfhAk5^ diff --git a/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png b/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png deleted file mode 100644 index 75b2d164a5a98e212cca15ea7bf2ab5de5108680..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3831 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 diff --git a/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png b/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@1x.png deleted file mode 100644 index c4df70d39da7941ef3f6dcb7f06a192d8dcb308d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1888 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 iW8Zci7-kcv6Uzs@r-FtIZ-&5|)J Q1PU{Fy85}Sb4q9e0B4a5jsO4v diff --git a/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png b/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png deleted file mode 100644 index 9da19eacad3b03bb08bbddbbf4ac48dd78b3d838..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 68 zcmeAS@N?(olHy`uVBq!ia0vp^j3CUx0wlM}@Gt=>Zci7-kcv6Uzs@r-FtIZ-&5|)J Q1PU{Fy85}Sb4q9e0B4a5jsO4v diff --git a/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png b/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png deleted file mode 100644 index 9da19eacad3b03bb08bbddbbf4ac48dd78b3d838..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 68 zcmeAS@N?(olHy`uVBq!ia0vp^j3CUx0wlM}@Gt=>Zci7-kcv6Uzs@r-FtIZ-&5|)J Q1PU{Fy85}Sb4q9e0B4a5jsO4v diff --git a/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md b/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md deleted file mode 100644 index 89c2725b70..0000000000 --- a/examples/ui/layout/adaptive_app_demos/ios/Runner/Assets.xcassets/LaunchImage.imageset/README.md +++ /dev/null @@ -1,5 +0,0 @@ -# Launch Screen Assets - -You can customize the launch screen with your own desired assets by replacing the image files in this directory. - -You can also do it by opening your Flutter project's Xcode project with `open ios/Runner.xcworkspace`, selecting `Runner/Assets.xcassets` in the Project Navigator and dropping in the desired images. \ No newline at end of file diff --git a/examples/ui/layout/adaptive_app_demos/ios/Runner/Base.lproj/LaunchScreen.storyboard b/examples/ui/layout/adaptive_app_demos/ios/Runner/Base.lproj/LaunchScreen.storyboard deleted file mode 100644 index f2e259c7c9..0000000000 --- a/examples/ui/layout/adaptive_app_demos/ios/Runner/Base.lproj/LaunchScreen.storyboard +++ /dev/null @@ -1,37 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/ui/layout/adaptive_app_demos/ios/Runner/Base.lproj/Main.storyboard b/examples/ui/layout/adaptive_app_demos/ios/Runner/Base.lproj/Main.storyboard deleted file mode 100644 index f3c28516fb..0000000000 --- a/examples/ui/layout/adaptive_app_demos/ios/Runner/Base.lproj/Main.storyboard +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/ui/layout/adaptive_app_demos/ios/Runner/Info.plist b/examples/ui/layout/adaptive_app_demos/ios/Runner/Info.plist deleted file mode 100644 index 1897fb6edf..0000000000 --- a/examples/ui/layout/adaptive_app_demos/ios/Runner/Info.plist +++ /dev/null @@ -1,45 +0,0 @@ - - - - - CFBundleDevelopmentRegion - $(DEVELOPMENT_LANGUAGE) - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - $(PRODUCT_BUNDLE_IDENTIFIER) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - adaptive_app_demos - CFBundlePackageType - APPL - CFBundleShortVersionString - $(FLUTTER_BUILD_NAME) - CFBundleSignature - ???? - CFBundleVersion - $(FLUTTER_BUILD_NUMBER) - LSRequiresIPhoneOS - - UILaunchStoryboardName - LaunchScreen - UIMainStoryboardFile - Main - UISupportedInterfaceOrientations - - UIInterfaceOrientationPortrait - UIInterfaceOrientationLandscapeLeft - UIInterfaceOrientationLandscapeRight - - UISupportedInterfaceOrientations~ipad - - UIInterfaceOrientationPortrait - UIInterfaceOrientationPortraitUpsideDown - UIInterfaceOrientationLandscapeLeft - UIInterfaceOrientationLandscapeRight - - UIViewControllerBasedStatusBarAppearance - - - diff --git a/examples/ui/layout/adaptive_app_demos/ios/Runner/Runner-Bridging-Header.h b/examples/ui/layout/adaptive_app_demos/ios/Runner/Runner-Bridging-Header.h deleted file mode 100644 index 308a2a560b..0000000000 --- a/examples/ui/layout/adaptive_app_demos/ios/Runner/Runner-Bridging-Header.h +++ /dev/null @@ -1 +0,0 @@ -#import "GeneratedPluginRegistrant.h" diff --git a/examples/ui/layout/adaptive_app_demos/lib/global/device_size.dart b/examples/ui/layout/adaptive_app_demos/lib/global/device_size.dart index 16fee5ee23..8d7cced46d 100644 --- a/examples/ui/layout/adaptive_app_demos/lib/global/device_size.dart +++ b/examples/ui/layout/adaptive_app_demos/lib/global/device_size.dart @@ -1,4 +1,5 @@ import 'package:flutter/cupertino.dart'; +import 'package:flutter/material.dart'; enum ScreenType { Handset, Tablet, Desktop, Watch } @@ -21,7 +22,9 @@ ScreenType getFormFactor(BuildContext context) { } // #enddocregion getFormFactor +// #docregion ScreenSize enum ScreenSize { Small, Normal, Large, ExtraLarge } + ScreenSize getSize(BuildContext context) { double deviceWidth = MediaQuery.of(context).size.shortestSide; if (deviceWidth > 900) return ScreenSize.ExtraLarge; @@ -29,3 +32,52 @@ ScreenSize getSize(BuildContext context) { if (deviceWidth > 300) return ScreenSize.Normal; return ScreenSize.Small; } +// #enddocregion ScreenSize + +class widgetWithBreakPoints extends StatelessWidget { + List _getHandsetChildren() { + return ([ + Text("Handset Child 1"), + Text("Handset Child 2"), + Text("Handset Child 3"), + ]); + } + + List _getNormalChildren() { + return ([ + Text("Normal Child 1"), + Text("Normal Child 2"), + Text("Normal Child 3"), + ]); + } + + Widget BackButton() { + return ElevatedButton( + onPressed: () => {DoNothingAction}, child: Icon(Icons.flutter_dash)); + } + + Widget WidgetSwap(BuildContext context) { + bool isHandset = MediaQuery.of(context).size.width < 600; + + // #docregion WidgetSwap + Widget foo = Row( + children: [ + BackButton(), + ...isHandset ? _getHandsetChildren() : _getNormalChildren(), + ], + ); + // #enddocregion WidgetSwap + + return foo; + } + + @override + Widget build(BuildContext context) { + // #docregion MediaQuery + bool isHandset = MediaQuery.of(context).size.width < 600; + return Flex( + children: [Text("Foo"), Text("Bar"), Text("Baz")], + direction: isHandset ? Axis.vertical : Axis.horizontal); + // #enddocregion MediaQuery + } +} diff --git a/examples/ui/layout/adaptive_app_demos/lib/global/device_type.dart b/examples/ui/layout/adaptive_app_demos/lib/global/device_type.dart index e1804b2708..69bd787224 100644 --- a/examples/ui/layout/adaptive_app_demos/lib/global/device_type.dart +++ b/examples/ui/layout/adaptive_app_demos/lib/global/device_type.dart @@ -1,5 +1,7 @@ -import 'package:flutter/foundation.dart'; +import 'package:flutter/widgets.dart'; import 'package:universal_platform/universal_platform.dart'; +import 'dart:io' show Platform; +import 'package:flutter/foundation.dart' show kIsWeb; class DeviceType { // Syntax sugar, proxy the UniversalPlatform methods so our views can reference a single class @@ -15,4 +17,45 @@ class DeviceType { static bool get isMobile => isAndroid || isIOS; static bool get isDesktopOrWeb => isDesktop || isWeb; static bool get isMobileOrWeb => isMobile || isWeb; + + // #docregion Platforms + bool get isMobileDevice => !kIsWeb && (Platform.isIOS || Platform.isAndroid); + bool get isDesktopDevice => + !kIsWeb && (Platform.isMacOS || Platform.isWindows || Platform.isLinux); + bool get isMobileDeviceOrWeb => kIsWeb || isMobileDevice; + bool get isDesktopDeviceOrWeb => kIsWeb || isDesktopDevice; + // #enddocregion Platforms +} + +// #docregion Styling +class InsetValues { + static const double xsmall = 4; + static const double small = 8; + // etc +} + +class Fonts { + static const String raleway = 'Raleway'; + // etc +} + +class TextStylesValues { + static const TextStyle raleway = const TextStyle( + fontFamily: Fonts.raleway, + ); + static late TextStyle body1 = raleway.copyWith(color: Color(0xFF42A5F5)); + // etc +} +// #enddocregion Styling + +class MyWidget extends StatelessWidget { + @override + Widget build(BuildContext context) { + // #docregion UseConstants + return Padding( + padding: EdgeInsets.all(InsetValues.small), + child: Text('Hello!', style: TextStylesValues.body1), + ); + // #enddocregion UseConstants + } } diff --git a/examples/ui/layout/adaptive_app_demos/lib/pages/adaptive_data_table_page.dart b/examples/ui/layout/adaptive_app_demos/lib/pages/adaptive_data_table_page.dart index 62b9573823..64a6055301 100644 --- a/examples/ui/layout/adaptive_app_demos/lib/pages/adaptive_data_table_page.dart +++ b/examples/ui/layout/adaptive_app_demos/lib/pages/adaptive_data_table_page.dart @@ -1,4 +1,3 @@ -import 'package:adaptive_app_demos/global/device_type.dart'; import 'package:adaptive_app_demos/global/styling.dart'; import 'package:adaptive_app_demos/widgets/scroll_view_with_scrollbars.dart'; import 'package:flutter/material.dart'; @@ -69,5 +68,7 @@ class _TableRowItem extends StatelessWidget { @override Widget build(BuildContext context) => Expanded( child: Padding( - padding: EdgeInsets.symmetric(horizontal: Insets.medium, vertical: Insets.extraLarge), child: Text(label))); + padding: EdgeInsets.symmetric( + horizontal: Insets.medium, vertical: Insets.extraLarge), + child: Text(label))); } diff --git a/examples/ui/layout/adaptive_app_demos/lib/pages/adaptive_reflow_page.dart b/examples/ui/layout/adaptive_app_demos/lib/pages/adaptive_reflow_page.dart index e7828d65b0..3a994b55db 100644 --- a/examples/ui/layout/adaptive_app_demos/lib/pages/adaptive_reflow_page.dart +++ b/examples/ui/layout/adaptive_app_demos/lib/pages/adaptive_reflow_page.dart @@ -1,10 +1,7 @@ -import 'package:adaptive_app_demos/app_model.dart'; -import 'package:adaptive_app_demos/global/device_type.dart'; import 'package:adaptive_app_demos/global/styling.dart'; import 'package:adaptive_app_demos/widgets/scroll_view_with_scrollbars.dart'; import 'package:flextras/flextras.dart'; import 'package:flutter/material.dart'; -import 'package:provider/provider.dart'; /// Shows 3 types of layout, a vertical for narrow screens, wide for wide screens, and a mixed mode. diff --git a/examples/ui/layout/adaptive_app_demos/lib/pages/focus_examples_page.dart b/examples/ui/layout/adaptive_app_demos/lib/pages/focus_examples_page.dart index 89b9f900f8..cded4d69fe 100644 --- a/examples/ui/layout/adaptive_app_demos/lib/pages/focus_examples_page.dart +++ b/examples/ui/layout/adaptive_app_demos/lib/pages/focus_examples_page.dart @@ -3,6 +3,7 @@ import 'package:flextras/flextras.dart'; import 'package:flutter/material.dart'; import 'package:flutter/rendering.dart'; import 'package:flutter/services.dart'; +import 'package:flutter/gestures.dart'; class FocusExamplesPage extends StatelessWidget { @override @@ -204,3 +205,58 @@ Widget _roundedBorder() => Container( decoration: BoxDecoration( border: Border.all(color: Colors.orange), borderRadius: BorderRadius.circular(6))); + +class MyFocusTraversalWidget extends StatelessWidget { + Widget MyFormWithMultipleColumnsAndRows() { + return Form( + child: Container(), + ); + } + + Widget SubmitButton() { + return ElevatedButton( + onPressed: () => {DoNothingAction /* Submit */}, + child: Text("Submit"), + ); + } + + @override + build(BuildContext context) { + // #docregion FocusTraversalGroup + return Column(children: [ + FocusTraversalGroup( + child: MyFormWithMultipleColumnsAndRows(), + ), + SubmitButton(), + ]); + // #enddocregion FocusTraversalGroup + } +} + +class MyHoverWidget extends StatefulWidget { + MyHoverWidget({Key? key, required this.title}) : super(key: key); + + final String title; + + @override + _MyHoverWidgetState createState() => _MyHoverWidgetState(); +} + +class _MyHoverWidgetState extends State { + bool _isMouseOver = false; + + @override + Widget build(BuildContext context) { + // #docregion MouseOver + return MouseRegion( + onEnter: (_) => setState(() => _isMouseOver = true), + onExit: (_) => setState(() => _isMouseOver = false), + onHover: (PointerHoverEvent e) => print(e.localPosition), + child: Container( + height: 500, + color: _isMouseOver ? Colors.blue : Colors.black, + ), + ); + // #enddocregion MouseOver + } +} diff --git a/examples/ui/layout/adaptive_app_demos/lib/pages/login_page.dart b/examples/ui/layout/adaptive_app_demos/lib/pages/login_page.dart index d4d491bdb0..d9a401afeb 100644 --- a/examples/ui/layout/adaptive_app_demos/lib/pages/login_page.dart +++ b/examples/ui/layout/adaptive_app_demos/lib/pages/login_page.dart @@ -12,12 +12,14 @@ class LoginPage extends StatelessWidget { // Hide an optional element if the screen gets too small. bool hideDetailPanel = screenSize.shortestSide < 250; return Scaffold( - body: Flex(direction: useVerticalLayout ? Axis.vertical : Axis.horizontal, children: [ - if (hideDetailPanel == false) ...[ - Flexible(child: _LoginDetailPanel()), - ], - Flexible(child: _LoginForm()), - ]), + body: Flex( + direction: useVerticalLayout ? Axis.vertical : Axis.horizontal, + children: [ + if (hideDetailPanel == false) ...[ + Flexible(child: _LoginDetailPanel()), + ], + Flexible(child: _LoginForm()), + ]), ); } } @@ -54,7 +56,9 @@ class _LoginForm extends StatelessWidget { children: [ TextField(decoration: _getTextDecoration("Enter email...")), SizedBox(height: 16), - TextField(decoration: _getTextDecoration("Enter password..."), obscureText: true), + TextField( + decoration: _getTextDecoration("Enter password..."), + obscureText: true), SizedBox(height: 16), OutlinedButton( onPressed: handleLoginPressed, @@ -73,4 +77,5 @@ class _LoginForm extends StatelessWidget { } } -InputDecoration _getTextDecoration(String hint) => InputDecoration(border: OutlineInputBorder(), hintText: hint); +InputDecoration _getTextDecoration(String hint) => + InputDecoration(border: OutlineInputBorder(), hintText: hint); diff --git a/examples/ui/layout/adaptive_app_demos/lib/widgets/extra_widget_excerpts.dart b/examples/ui/layout/adaptive_app_demos/lib/widgets/extra_widget_excerpts.dart new file mode 100644 index 0000000000..9c776f6513 --- /dev/null +++ b/examples/ui/layout/adaptive_app_demos/lib/widgets/extra_widget_excerpts.dart @@ -0,0 +1,169 @@ +import 'package:flutter/widgets.dart'; +import 'package:flutter/material.dart'; +import 'package:flutter/gestures.dart'; +import 'package:flutter/services.dart'; +import 'dart:io' show Platform; + +Widget LayoutBuilderWidget() { + // #docregion LayoutBuilder + Widget foo = LayoutBuilder( + builder: (BuildContext context, BoxConstraints constraints) { + bool useVerticalLayout = constraints.maxWidth < 400.0; + return Flex( + children: [Text("Hello"), Text("World")], + direction: useVerticalLayout ? Axis.vertical : Axis.horizontal); + }); + // #enddocregion LayoutBuilder + + return foo; +} + +class ScrollListen extends StatelessWidget { + Widget scrollListener(BuildContext) { + // #docregion PointerScroll + return Listener( + onPointerSignal: (event) { + if (event is PointerScrollEvent) print(event.scrollDelta.dy); + }, + child: Container()); + // #enddocregion PointerScroll + } + + @override + Widget build(BuildContext context) { + // TODO: implement build + throw UnimplementedError(); + } +} + +// #docregion Shortcuts +// Define a class for each type of shortcut action you want +class CreateNewItemIntent extends Intent { + const CreateNewItemIntent(); +} + +Widget build(BuildContext context) { + return Shortcuts( + // Bind intents to key combinations + shortcuts: { + SingleActivator(LogicalKeyboardKey.keyN, control: true): + CreateNewItemIntent(), + }, + child: Actions( + // Bind intents to an actual method in your code + actions: >{ + CreateNewItemIntent: CallbackAction( + onInvoke: (CreateNewItemIntent intent) => _createNewItem()), + }, + // Your sub-tree must be wrapped in a focusNode, so it can take focus. + child: Focus( + autofocus: true, + child: Container(), + ), + ), + ); +} +// #enddocregion Shortcuts + +void _createNewItem() { + DoNothingAction; +} + +class MyWidget extends StatefulWidget { + MyWidget({Key? key, required this.title}) : super(key: key); + + final String title; + + @override + _MyWidgetState createState() => _MyWidgetState(); +} + +class _MyWidgetState extends State { + // #docregion MultiSelectShift + static bool get isSpanSelectModifierDown => + isKeyDown({LogicalKeyboardKey.shiftLeft, LogicalKeyboardKey.shiftRight}); + // #enddocregion MultiSelectShift + + // #docregion MultiSelectModifierDown + static bool get isMultiSelectModifierDown { + bool isDown = false; + if (Platform.isMacOS) { + isDown = isKeyDown( + {LogicalKeyboardKey.metaLeft, LogicalKeyboardKey.metaRight}); + } else { + isDown = isKeyDown( + {LogicalKeyboardKey.controlLeft, LogicalKeyboardKey.controlRight}); + } + return isDown; + } + // #enddocregion MultiSelectModifierDown + + // #docregion HandleKey + void _handleKey(event) { + if (event is RawKeyDownEvent) { + bool isShiftDown = isKeyDown({ + LogicalKeyboardKey.shiftLeft, + LogicalKeyboardKey.shiftRight, + }); + if (isShiftDown && event.logicalKey == LogicalKeyboardKey.keyN) { + _createNewItem(); + } + } + } + // #enddocregion HandleKey + + // #docregion KeysPressed + static bool isKeyDown(Set keys) { + return keys.intersection(RawKeyboard.instance.keysPressed).isNotEmpty; + } + // #enddocregion KeysPressed + + // #docregion RawKeyboard + void initState() { + super.initState(); + RawKeyboard.instance.addListener(_handleKey); + } + + @override + void dispose() { + RawKeyboard.instance.removeListener(_handleKey); + super.dispose(); + } + // #enddocregion RawKeyboard + + @override + Widget build(BuildContext context) { + isSpanSelectModifierDown; + isMultiSelectModifierDown; + + return Text("Hello World!"); + } +} + +Widget SelectableTextWidget() { + // #docregion SelectableText + return SelectableText('Select me!'); + // #enddocregion SelectableText +} + +Widget RichTextSpan() { + // #docregion RichTextSpan + return SelectableText.rich( + TextSpan( + children: [ + TextSpan(text: 'Hello'), + TextSpan(text: 'Bold', style: TextStyle(fontWeight: FontWeight.bold)), + ], + ), + ); + // #enddocregion RichTextSpan +} + +Widget TooltipWidget() { + // #docregion Tooltip + return const Tooltip( + message: 'I am a Tooltip', + child: Text('Hover over the text to show a tooltip.'), + ); + // #enddocregion Tooltip +} diff --git a/examples/ui/layout/adaptive_app_demos/linux/.gitignore b/examples/ui/layout/adaptive_app_demos/linux/.gitignore deleted file mode 100644 index d3896c9844..0000000000 --- a/examples/ui/layout/adaptive_app_demos/linux/.gitignore +++ /dev/null @@ -1 +0,0 @@ -flutter/ephemeral diff --git a/examples/ui/layout/adaptive_app_demos/linux/CMakeLists.txt b/examples/ui/layout/adaptive_app_demos/linux/CMakeLists.txt deleted file mode 100644 index 5f5bd41028..0000000000 --- a/examples/ui/layout/adaptive_app_demos/linux/CMakeLists.txt +++ /dev/null @@ -1,116 +0,0 @@ -cmake_minimum_required(VERSION 3.10) -project(runner LANGUAGES CXX) - -set(BINARY_NAME "adaptive_app_demos") -set(APPLICATION_ID "com.example.adaptive_app_demos") - -cmake_policy(SET CMP0063 NEW) - -set(CMAKE_INSTALL_RPATH "$ORIGIN/lib") - -# Root filesystem for cross-building. -if(FLUTTER_TARGET_PLATFORM_SYSROOT) - set(CMAKE_SYSROOT ${FLUTTER_TARGET_PLATFORM_SYSROOT}) - set(CMAKE_FIND_ROOT_PATH ${CMAKE_SYSROOT}) - set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) - set(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY) - set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) - set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY) -endif() - -# Configure build options. -if(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES) - set(CMAKE_BUILD_TYPE "Debug" CACHE - STRING "Flutter build mode" FORCE) - set_property(CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS - "Debug" "Profile" "Release") -endif() - -# Compilation settings that should be applied to most targets. -function(APPLY_STANDARD_SETTINGS TARGET) - target_compile_features(${TARGET} PUBLIC cxx_std_14) - target_compile_options(${TARGET} PRIVATE -Wall -Werror) - target_compile_options(${TARGET} PRIVATE "$<$>:-O3>") - target_compile_definitions(${TARGET} PRIVATE "$<$>:NDEBUG>") -endfunction() - -set(FLUTTER_MANAGED_DIR "${CMAKE_CURRENT_SOURCE_DIR}/flutter") - -# Flutter library and tool build rules. -add_subdirectory(${FLUTTER_MANAGED_DIR}) - -# System-level dependencies. -find_package(PkgConfig REQUIRED) -pkg_check_modules(GTK REQUIRED IMPORTED_TARGET gtk+-3.0) - -add_definitions(-DAPPLICATION_ID="${APPLICATION_ID}") - -# Application build -add_executable(${BINARY_NAME} - "main.cc" - "my_application.cc" - "${FLUTTER_MANAGED_DIR}/generated_plugin_registrant.cc" -) -apply_standard_settings(${BINARY_NAME}) -target_link_libraries(${BINARY_NAME} PRIVATE flutter) -target_link_libraries(${BINARY_NAME} PRIVATE PkgConfig::GTK) -add_dependencies(${BINARY_NAME} flutter_assemble) -# Only the install-generated bundle's copy of the executable will launch -# correctly, since the resources must in the right relative locations. To avoid -# people trying to run the unbundled copy, put it in a subdirectory instead of -# the default top-level location. -set_target_properties(${BINARY_NAME} - PROPERTIES - RUNTIME_OUTPUT_DIRECTORY "${CMAKE_BINARY_DIR}/intermediates_do_not_run" -) - -# Generated plugin build rules, which manage building the plugins and adding -# them to the application. -include(flutter/generated_plugins.cmake) - - -# === Installation === -# By default, "installing" just makes a relocatable bundle in the build -# directory. -set(BUILD_BUNDLE_DIR "${PROJECT_BINARY_DIR}/bundle") -if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) - set(CMAKE_INSTALL_PREFIX "${BUILD_BUNDLE_DIR}" CACHE PATH "..." FORCE) -endif() - -# Start with a clean build bundle directory every time. -install(CODE " - file(REMOVE_RECURSE \"${BUILD_BUNDLE_DIR}/\") - " COMPONENT Runtime) - -set(INSTALL_BUNDLE_DATA_DIR "${CMAKE_INSTALL_PREFIX}/data") -set(INSTALL_BUNDLE_LIB_DIR "${CMAKE_INSTALL_PREFIX}/lib") - -install(TARGETS ${BINARY_NAME} RUNTIME DESTINATION "${CMAKE_INSTALL_PREFIX}" - COMPONENT Runtime) - -install(FILES "${FLUTTER_ICU_DATA_FILE}" DESTINATION "${INSTALL_BUNDLE_DATA_DIR}" - COMPONENT Runtime) - -install(FILES "${FLUTTER_LIBRARY}" DESTINATION "${INSTALL_BUNDLE_LIB_DIR}" - COMPONENT Runtime) - -if(PLUGIN_BUNDLED_LIBRARIES) - install(FILES "${PLUGIN_BUNDLED_LIBRARIES}" - DESTINATION "${INSTALL_BUNDLE_LIB_DIR}" - COMPONENT Runtime) -endif() - -# Fully re-copy the assets directory on each build to avoid having stale files -# from a previous install. -set(FLUTTER_ASSET_DIR_NAME "flutter_assets") -install(CODE " - file(REMOVE_RECURSE \"${INSTALL_BUNDLE_DATA_DIR}/${FLUTTER_ASSET_DIR_NAME}\") - " COMPONENT Runtime) -install(DIRECTORY "${PROJECT_BUILD_DIR}/${FLUTTER_ASSET_DIR_NAME}" - DESTINATION "${INSTALL_BUNDLE_DATA_DIR}" COMPONENT Runtime) - -# Install the AOT library on non-Debug builds only. -if(NOT CMAKE_BUILD_TYPE MATCHES "Debug") - install(FILES "${AOT_LIBRARY}" DESTINATION "${INSTALL_BUNDLE_LIB_DIR}" - COMPONENT Runtime) -endif() diff --git a/examples/ui/layout/adaptive_app_demos/linux/flutter/CMakeLists.txt b/examples/ui/layout/adaptive_app_demos/linux/flutter/CMakeLists.txt deleted file mode 100644 index 6dc9705582..0000000000 --- a/examples/ui/layout/adaptive_app_demos/linux/flutter/CMakeLists.txt +++ /dev/null @@ -1,91 +0,0 @@ -cmake_minimum_required(VERSION 3.10) - -set(EPHEMERAL_DIR "${CMAKE_CURRENT_SOURCE_DIR}/ephemeral") - -# Configuration provided via flutter tool. -include(${EPHEMERAL_DIR}/generated_config.cmake) - -# TODO: Move the rest of this into files in ephemeral. See -# https://github.com/flutter/flutter/issues/57146. - -# Serves the same purpose as list(TRANSFORM ... PREPEND ...), -# which isn't available in 3.10. -function(list_prepend LIST_NAME PREFIX) - set(NEW_LIST "") - foreach(element ${${LIST_NAME}}) - list(APPEND NEW_LIST "${PREFIX}${element}") - endforeach(element) - set(${LIST_NAME} "${NEW_LIST}" PARENT_SCOPE) -endfunction() - -# === Flutter Library === -# System-level dependencies. -find_package(PkgConfig REQUIRED) -pkg_check_modules(GTK REQUIRED IMPORTED_TARGET gtk+-3.0) -pkg_check_modules(GLIB REQUIRED IMPORTED_TARGET glib-2.0) -pkg_check_modules(GIO REQUIRED IMPORTED_TARGET gio-2.0) -pkg_check_modules(BLKID REQUIRED IMPORTED_TARGET blkid) -pkg_check_modules(LZMA REQUIRED IMPORTED_TARGET liblzma) - -set(FLUTTER_LIBRARY "${EPHEMERAL_DIR}/libflutter_linux_gtk.so") - -# Published to parent scope for install step. -set(FLUTTER_LIBRARY ${FLUTTER_LIBRARY} PARENT_SCOPE) -set(FLUTTER_ICU_DATA_FILE "${EPHEMERAL_DIR}/icudtl.dat" PARENT_SCOPE) -set(PROJECT_BUILD_DIR "${PROJECT_DIR}/build/" PARENT_SCOPE) -set(AOT_LIBRARY "${PROJECT_DIR}/build/lib/libapp.so" PARENT_SCOPE) - -list(APPEND FLUTTER_LIBRARY_HEADERS - "fl_basic_message_channel.h" - "fl_binary_codec.h" - "fl_binary_messenger.h" - "fl_dart_project.h" - "fl_engine.h" - "fl_json_message_codec.h" - "fl_json_method_codec.h" - "fl_message_codec.h" - "fl_method_call.h" - "fl_method_channel.h" - "fl_method_codec.h" - "fl_method_response.h" - "fl_plugin_registrar.h" - "fl_plugin_registry.h" - "fl_standard_message_codec.h" - "fl_standard_method_codec.h" - "fl_string_codec.h" - "fl_value.h" - "fl_view.h" - "flutter_linux.h" -) -list_prepend(FLUTTER_LIBRARY_HEADERS "${EPHEMERAL_DIR}/flutter_linux/") -add_library(flutter INTERFACE) -target_include_directories(flutter INTERFACE - "${EPHEMERAL_DIR}" -) -target_link_libraries(flutter INTERFACE "${FLUTTER_LIBRARY}") -target_link_libraries(flutter INTERFACE - PkgConfig::GTK - PkgConfig::GLIB - PkgConfig::GIO - PkgConfig::BLKID - PkgConfig::LZMA -) -add_dependencies(flutter flutter_assemble) - -# === Flutter tool backend === -# _phony_ is a non-existent file to force this command to run every time, -# since currently there's no way to get a full input/output list from the -# flutter tool. -add_custom_command( - OUTPUT ${FLUTTER_LIBRARY} ${FLUTTER_LIBRARY_HEADERS} - ${CMAKE_CURRENT_BINARY_DIR}/_phony_ - COMMAND ${CMAKE_COMMAND} -E env - ${FLUTTER_TOOL_ENVIRONMENT} - "${FLUTTER_ROOT}/packages/flutter_tools/bin/tool_backend.sh" - ${FLUTTER_TARGET_PLATFORM} ${CMAKE_BUILD_TYPE} - VERBATIM -) -add_custom_target(flutter_assemble DEPENDS - "${FLUTTER_LIBRARY}" - ${FLUTTER_LIBRARY_HEADERS} -) diff --git a/examples/ui/layout/adaptive_app_demos/linux/flutter/generated_plugin_registrant.cc b/examples/ui/layout/adaptive_app_demos/linux/flutter/generated_plugin_registrant.cc deleted file mode 100644 index 8e42ee04fd..0000000000 --- a/examples/ui/layout/adaptive_app_demos/linux/flutter/generated_plugin_registrant.cc +++ /dev/null @@ -1,13 +0,0 @@ -// -// Generated file. Do not edit. -// - -#include "generated_plugin_registrant.h" - -#include - -void fl_register_plugins(FlPluginRegistry* registry) { - g_autoptr(FlPluginRegistrar) bitsdojo_window_linux_registrar = - fl_plugin_registry_get_registrar_for_plugin(registry, "BitsdojoWindowPlugin"); - bitsdojo_window_plugin_register_with_registrar(bitsdojo_window_linux_registrar); -} diff --git a/examples/ui/layout/adaptive_app_demos/linux/flutter/generated_plugin_registrant.h b/examples/ui/layout/adaptive_app_demos/linux/flutter/generated_plugin_registrant.h deleted file mode 100644 index 9bf7478940..0000000000 --- a/examples/ui/layout/adaptive_app_demos/linux/flutter/generated_plugin_registrant.h +++ /dev/null @@ -1,13 +0,0 @@ -// -// Generated file. Do not edit. -// - -#ifndef GENERATED_PLUGIN_REGISTRANT_ -#define GENERATED_PLUGIN_REGISTRANT_ - -#include - -// Registers Flutter plugins. -void fl_register_plugins(FlPluginRegistry* registry); - -#endif // GENERATED_PLUGIN_REGISTRANT_ diff --git a/examples/ui/layout/adaptive_app_demos/linux/flutter/generated_plugins.cmake b/examples/ui/layout/adaptive_app_demos/linux/flutter/generated_plugins.cmake deleted file mode 100644 index 9978ad3a3e..0000000000 --- a/examples/ui/layout/adaptive_app_demos/linux/flutter/generated_plugins.cmake +++ /dev/null @@ -1,16 +0,0 @@ -# -# Generated file, do not edit. -# - -list(APPEND FLUTTER_PLUGIN_LIST - bitsdojo_window_linux -) - -set(PLUGIN_BUNDLED_LIBRARIES) - -foreach(plugin ${FLUTTER_PLUGIN_LIST}) - add_subdirectory(flutter/ephemeral/.plugin_symlinks/${plugin}/linux plugins/${plugin}) - target_link_libraries(${BINARY_NAME} PRIVATE ${plugin}_plugin) - list(APPEND PLUGIN_BUNDLED_LIBRARIES $) - list(APPEND PLUGIN_BUNDLED_LIBRARIES ${${plugin}_bundled_libraries}) -endforeach(plugin) diff --git a/examples/ui/layout/adaptive_app_demos/linux/main.cc b/examples/ui/layout/adaptive_app_demos/linux/main.cc deleted file mode 100644 index e7c5c54370..0000000000 --- a/examples/ui/layout/adaptive_app_demos/linux/main.cc +++ /dev/null @@ -1,6 +0,0 @@ -#include "my_application.h" - -int main(int argc, char** argv) { - g_autoptr(MyApplication) app = my_application_new(); - return g_application_run(G_APPLICATION(app), argc, argv); -} diff --git a/examples/ui/layout/adaptive_app_demos/linux/my_application.cc b/examples/ui/layout/adaptive_app_demos/linux/my_application.cc deleted file mode 100644 index 28c4efe578..0000000000 --- a/examples/ui/layout/adaptive_app_demos/linux/my_application.cc +++ /dev/null @@ -1,105 +0,0 @@ -#include "my_application.h" - -#include -#ifdef GDK_WINDOWING_X11 -#include -#endif - -#include "flutter/generated_plugin_registrant.h" - -struct _MyApplication { - GtkApplication parent_instance; - char** dart_entrypoint_arguments; -}; - -G_DEFINE_TYPE(MyApplication, my_application, GTK_TYPE_APPLICATION) - -// Implements GApplication::activate. -static void my_application_activate(GApplication* application) { - MyApplication* self = MY_APPLICATION(application); - GtkWindow* window = - GTK_WINDOW(gtk_application_window_new(GTK_APPLICATION(application))); - - // Use a header bar when running in GNOME as this is the common style used - // by applications and is the setup most users will be using (e.g. Ubuntu - // desktop). - // If running on X and not using GNOME then just use a traditional title bar - // in case the window manager does more exotic layout, e.g. tiling. - // If running on Wayland assume the header bar will work (may need changing - // if future cases occur). - gboolean use_header_bar = TRUE; -#ifdef GDK_WINDOWING_X11 - GdkScreen *screen = gtk_window_get_screen(window); - if (GDK_IS_X11_SCREEN(screen)) { - const gchar* wm_name = gdk_x11_screen_get_window_manager_name(screen); - if (g_strcmp0(wm_name, "GNOME Shell") != 0) { - use_header_bar = FALSE; - } - } -#endif - if (use_header_bar) { - GtkHeaderBar *header_bar = GTK_HEADER_BAR(gtk_header_bar_new()); - gtk_widget_show(GTK_WIDGET(header_bar)); - gtk_header_bar_set_title(header_bar, "adaptive_app_demos"); - gtk_header_bar_set_show_close_button(header_bar, TRUE); - gtk_window_set_titlebar(window, GTK_WIDGET(header_bar)); - } - else { - gtk_window_set_title(window, "adaptive_app_demos"); - } - - gtk_window_set_default_size(window, 1280, 720); - gtk_widget_show(GTK_WIDGET(window)); - - g_autoptr(FlDartProject) project = fl_dart_project_new(); - fl_dart_project_set_dart_entrypoint_arguments(project, self->dart_entrypoint_arguments); - - FlView* view = fl_view_new(project); - gtk_widget_show(GTK_WIDGET(view)); - gtk_container_add(GTK_CONTAINER(window), GTK_WIDGET(view)); - - fl_register_plugins(FL_PLUGIN_REGISTRY(view)); - - gtk_widget_grab_focus(GTK_WIDGET(view)); -} - -// Implements GApplication::local_command_line. -static gboolean my_application_local_command_line(GApplication* application, gchar ***arguments, int *exit_status) { - MyApplication* self = MY_APPLICATION(application); - // Strip out the first argument as it is the binary name. - self->dart_entrypoint_arguments = g_strdupv(*arguments + 1); - - g_autoptr(GError) error = nullptr; - if (!g_application_register(application, nullptr, &error)) { - g_warning("Failed to register: %s", error->message); - *exit_status = 1; - return TRUE; - } - - g_application_activate(application); - *exit_status = 0; - - return TRUE; -} - -// Implements GObject::dispose. -static void my_application_dispose(GObject *object) { - MyApplication* self = MY_APPLICATION(object); - g_clear_pointer(&self->dart_entrypoint_arguments, g_strfreev); - G_OBJECT_CLASS(my_application_parent_class)->dispose(object); -} - -static void my_application_class_init(MyApplicationClass* klass) { - G_APPLICATION_CLASS(klass)->activate = my_application_activate; - G_APPLICATION_CLASS(klass)->local_command_line = my_application_local_command_line; - G_OBJECT_CLASS(klass)->dispose = my_application_dispose; -} - -static void my_application_init(MyApplication* self) {} - -MyApplication* my_application_new() { - return MY_APPLICATION(g_object_new(my_application_get_type(), - "application-id", APPLICATION_ID, - "flags", G_APPLICATION_NON_UNIQUE, - nullptr)); -} diff --git a/examples/ui/layout/adaptive_app_demos/linux/my_application.h b/examples/ui/layout/adaptive_app_demos/linux/my_application.h deleted file mode 100644 index 72271d5e41..0000000000 --- a/examples/ui/layout/adaptive_app_demos/linux/my_application.h +++ /dev/null @@ -1,18 +0,0 @@ -#ifndef FLUTTER_MY_APPLICATION_H_ -#define FLUTTER_MY_APPLICATION_H_ - -#include - -G_DECLARE_FINAL_TYPE(MyApplication, my_application, MY, APPLICATION, - GtkApplication) - -/** - * my_application_new: - * - * Creates a new Flutter-based application. - * - * Returns: a new #MyApplication. - */ -MyApplication* my_application_new(); - -#endif // FLUTTER_MY_APPLICATION_H_ diff --git a/examples/ui/layout/adaptive_app_demos/macos/.gitignore b/examples/ui/layout/adaptive_app_demos/macos/.gitignore deleted file mode 100644 index d2fd377230..0000000000 --- a/examples/ui/layout/adaptive_app_demos/macos/.gitignore +++ /dev/null @@ -1,6 +0,0 @@ -# Flutter-related -**/Flutter/ephemeral/ -**/Pods/ - -# Xcode-related -**/xcuserdata/ diff --git a/examples/ui/layout/adaptive_app_demos/macos/Flutter/Flutter-Debug.xcconfig b/examples/ui/layout/adaptive_app_demos/macos/Flutter/Flutter-Debug.xcconfig deleted file mode 100644 index c2efd0b608..0000000000 --- a/examples/ui/layout/adaptive_app_demos/macos/Flutter/Flutter-Debug.xcconfig +++ /dev/null @@ -1 +0,0 @@ -#include "ephemeral/Flutter-Generated.xcconfig" diff --git a/examples/ui/layout/adaptive_app_demos/macos/Flutter/Flutter-Release.xcconfig b/examples/ui/layout/adaptive_app_demos/macos/Flutter/Flutter-Release.xcconfig deleted file mode 100644 index c2efd0b608..0000000000 --- a/examples/ui/layout/adaptive_app_demos/macos/Flutter/Flutter-Release.xcconfig +++ /dev/null @@ -1 +0,0 @@ -#include "ephemeral/Flutter-Generated.xcconfig" diff --git a/examples/ui/layout/adaptive_app_demos/macos/Flutter/GeneratedPluginRegistrant.swift b/examples/ui/layout/adaptive_app_demos/macos/Flutter/GeneratedPluginRegistrant.swift deleted file mode 100644 index bf37a06d95..0000000000 --- a/examples/ui/layout/adaptive_app_demos/macos/Flutter/GeneratedPluginRegistrant.swift +++ /dev/null @@ -1,12 +0,0 @@ -// -// Generated file. Do not edit. -// - -import FlutterMacOS -import Foundation - -import bitsdojo_window_macos - -func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) { - BitsdojoWindowPlugin.register(with: registry.registrar(forPlugin: "BitsdojoWindowPlugin")) -} diff --git a/examples/ui/layout/adaptive_app_demos/macos/Runner.xcodeproj/project.pbxproj b/examples/ui/layout/adaptive_app_demos/macos/Runner.xcodeproj/project.pbxproj deleted file mode 100644 index 12c4b037cc..0000000000 --- a/examples/ui/layout/adaptive_app_demos/macos/Runner.xcodeproj/project.pbxproj +++ /dev/null @@ -1,572 +0,0 @@ -// !$*UTF8*$! -{ - archiveVersion = 1; - classes = { - }; - objectVersion = 51; - objects = { - -/* Begin PBXAggregateTarget section */ - 33CC111A2044C6BA0003C045 /* Flutter Assemble */ = { - isa = PBXAggregateTarget; - buildConfigurationList = 33CC111B2044C6BA0003C045 /* Build configuration list for PBXAggregateTarget "Flutter Assemble" */; - buildPhases = ( - 33CC111E2044C6BF0003C045 /* ShellScript */, - ); - dependencies = ( - ); - name = "Flutter Assemble"; - productName = FLX; - }; -/* End PBXAggregateTarget section */ - -/* Begin PBXBuildFile section */ - 335BBD1B22A9A15E00E9071D /* GeneratedPluginRegistrant.swift in Sources */ = {isa = PBXBuildFile; fileRef = 335BBD1A22A9A15E00E9071D /* GeneratedPluginRegistrant.swift */; }; - 33CC10F12044A3C60003C045 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 33CC10F02044A3C60003C045 /* AppDelegate.swift */; }; - 33CC10F32044A3C60003C045 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 33CC10F22044A3C60003C045 /* Assets.xcassets */; }; - 33CC10F62044A3C60003C045 /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = 33CC10F42044A3C60003C045 /* MainMenu.xib */; }; - 33CC11132044BFA00003C045 /* MainFlutterWindow.swift in Sources */ = {isa = PBXBuildFile; fileRef = 33CC11122044BFA00003C045 /* MainFlutterWindow.swift */; }; -/* End PBXBuildFile section */ - -/* Begin PBXContainerItemProxy section */ - 33CC111F2044C79F0003C045 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 33CC10E52044A3C60003C045 /* Project object */; - proxyType = 1; - remoteGlobalIDString = 33CC111A2044C6BA0003C045; - remoteInfo = FLX; - }; -/* End PBXContainerItemProxy section */ - -/* Begin PBXCopyFilesBuildPhase section */ - 33CC110E2044A8840003C045 /* Bundle Framework */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = ""; - dstSubfolderSpec = 10; - files = ( - ); - name = "Bundle Framework"; - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXCopyFilesBuildPhase section */ - -/* Begin PBXFileReference section */ - 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 /* adaptive_app_demos.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "adaptive_app_demos.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 = ""; }; - 33CC10F72044A3C60003C045 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; name = Info.plist; path = Runner/Info.plist; sourceTree = ""; }; - 33CC11122044BFA00003C045 /* MainFlutterWindow.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MainFlutterWindow.swift; sourceTree = ""; }; - 33CEB47222A05771004F2AC0 /* Flutter-Debug.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = "Flutter-Debug.xcconfig"; sourceTree = ""; }; - 33CEB47422A05771004F2AC0 /* Flutter-Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = "Flutter-Release.xcconfig"; sourceTree = ""; }; - 33CEB47722A0578A004F2AC0 /* Flutter-Generated.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = "Flutter-Generated.xcconfig"; path = "ephemeral/Flutter-Generated.xcconfig"; sourceTree = ""; }; - 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 = ""; }; - 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 = ""; }; -/* End PBXFileReference section */ - -/* Begin PBXFrameworksBuildPhase section */ - 33CC10EA2044A3C60003C045 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXFrameworksBuildPhase section */ - -/* Begin PBXGroup section */ - 33BA886A226E78AF003329D5 /* Configs */ = { - isa = PBXGroup; - children = ( - 33E5194F232828860026EE4D /* AppInfo.xcconfig */, - 9740EEB21CF90195004384FC /* Debug.xcconfig */, - 7AFA3C8E1D35360C0083082E /* Release.xcconfig */, - 333000ED22D3DE5D00554162 /* Warnings.xcconfig */, - ); - path = Configs; - sourceTree = ""; - }; - 33CC10E42044A3C60003C045 = { - isa = PBXGroup; - children = ( - 33FAB671232836740065AC1E /* Runner */, - 33CEB47122A05771004F2AC0 /* Flutter */, - 33CC10EE2044A3C60003C045 /* Products */, - D73912EC22F37F3D000D13A0 /* Frameworks */, - ); - sourceTree = ""; - }; - 33CC10EE2044A3C60003C045 /* Products */ = { - isa = PBXGroup; - children = ( - 33CC10ED2044A3C60003C045 /* adaptive_app_demos.app */, - ); - name = Products; - sourceTree = ""; - }; - 33CC11242044D66E0003C045 /* Resources */ = { - isa = PBXGroup; - children = ( - 33CC10F22044A3C60003C045 /* Assets.xcassets */, - 33CC10F42044A3C60003C045 /* MainMenu.xib */, - 33CC10F72044A3C60003C045 /* Info.plist */, - ); - name = Resources; - path = ..; - sourceTree = ""; - }; - 33CEB47122A05771004F2AC0 /* Flutter */ = { - isa = PBXGroup; - children = ( - 335BBD1A22A9A15E00E9071D /* GeneratedPluginRegistrant.swift */, - 33CEB47222A05771004F2AC0 /* Flutter-Debug.xcconfig */, - 33CEB47422A05771004F2AC0 /* Flutter-Release.xcconfig */, - 33CEB47722A0578A004F2AC0 /* Flutter-Generated.xcconfig */, - ); - path = Flutter; - sourceTree = ""; - }; - 33FAB671232836740065AC1E /* Runner */ = { - isa = PBXGroup; - children = ( - 33CC10F02044A3C60003C045 /* AppDelegate.swift */, - 33CC11122044BFA00003C045 /* MainFlutterWindow.swift */, - 33E51913231747F40026EE4D /* DebugProfile.entitlements */, - 33E51914231749380026EE4D /* Release.entitlements */, - 33CC11242044D66E0003C045 /* Resources */, - 33BA886A226E78AF003329D5 /* Configs */, - ); - path = Runner; - sourceTree = ""; - }; - D73912EC22F37F3D000D13A0 /* Frameworks */ = { - isa = PBXGroup; - children = ( - ); - name = Frameworks; - sourceTree = ""; - }; -/* End PBXGroup section */ - -/* Begin PBXNativeTarget section */ - 33CC10EC2044A3C60003C045 /* Runner */ = { - isa = PBXNativeTarget; - buildConfigurationList = 33CC10FB2044A3C60003C045 /* Build configuration list for PBXNativeTarget "Runner" */; - buildPhases = ( - 33CC10E92044A3C60003C045 /* Sources */, - 33CC10EA2044A3C60003C045 /* Frameworks */, - 33CC10EB2044A3C60003C045 /* Resources */, - 33CC110E2044A8840003C045 /* Bundle Framework */, - 3399D490228B24CF009A79C7 /* ShellScript */, - ); - buildRules = ( - ); - dependencies = ( - 33CC11202044C79F0003C045 /* PBXTargetDependency */, - ); - name = Runner; - productName = Runner; - productReference = 33CC10ED2044A3C60003C045 /* adaptive_app_demos.app */; - productType = "com.apple.product-type.application"; - }; -/* End PBXNativeTarget section */ - -/* Begin PBXProject section */ - 33CC10E52044A3C60003C045 /* Project object */ = { - isa = PBXProject; - attributes = { - LastSwiftUpdateCheck = 0920; - LastUpgradeCheck = 0930; - ORGANIZATIONNAME = ""; - TargetAttributes = { - 33CC10EC2044A3C60003C045 = { - CreatedOnToolsVersion = 9.2; - LastSwiftMigration = 1100; - ProvisioningStyle = Automatic; - SystemCapabilities = { - com.apple.Sandbox = { - enabled = 1; - }; - }; - }; - 33CC111A2044C6BA0003C045 = { - CreatedOnToolsVersion = 9.2; - ProvisioningStyle = Manual; - }; - }; - }; - buildConfigurationList = 33CC10E82044A3C60003C045 /* Build configuration list for PBXProject "Runner" */; - compatibilityVersion = "Xcode 9.3"; - developmentRegion = en; - hasScannedForEncodings = 0; - knownRegions = ( - en, - Base, - ); - mainGroup = 33CC10E42044A3C60003C045; - productRefGroup = 33CC10EE2044A3C60003C045 /* Products */; - projectDirPath = ""; - projectRoot = ""; - targets = ( - 33CC10EC2044A3C60003C045 /* Runner */, - 33CC111A2044C6BA0003C045 /* Flutter Assemble */, - ); - }; -/* End PBXProject section */ - -/* Begin PBXResourcesBuildPhase section */ - 33CC10EB2044A3C60003C045 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 33CC10F32044A3C60003C045 /* Assets.xcassets in Resources */, - 33CC10F62044A3C60003C045 /* MainMenu.xib in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXResourcesBuildPhase section */ - -/* Begin PBXShellScriptBuildPhase section */ - 3399D490228B24CF009A79C7 /* ShellScript */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - ); - outputFileListPaths = ( - ); - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "echo \"$PRODUCT_NAME.app\" > \"$PROJECT_DIR\"/Flutter/ephemeral/.app_filename && \"$FLUTTER_ROOT\"/packages/flutter_tools/bin/macos_assemble.sh embed\n"; - }; - 33CC111E2044C6BF0003C045 /* ShellScript */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - Flutter/ephemeral/FlutterInputs.xcfilelist, - ); - inputPaths = ( - Flutter/ephemeral/tripwire, - ); - outputFileListPaths = ( - Flutter/ephemeral/FlutterOutputs.xcfilelist, - ); - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"$FLUTTER_ROOT\"/packages/flutter_tools/bin/macos_assemble.sh && touch Flutter/ephemeral/tripwire"; - }; -/* End PBXShellScriptBuildPhase section */ - -/* Begin PBXSourcesBuildPhase section */ - 33CC10E92044A3C60003C045 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 33CC11132044BFA00003C045 /* MainFlutterWindow.swift in Sources */, - 33CC10F12044A3C60003C045 /* AppDelegate.swift in Sources */, - 335BBD1B22A9A15E00E9071D /* GeneratedPluginRegistrant.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXSourcesBuildPhase section */ - -/* Begin PBXTargetDependency section */ - 33CC11202044C79F0003C045 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 33CC111A2044C6BA0003C045 /* Flutter Assemble */; - targetProxy = 33CC111F2044C79F0003C045 /* PBXContainerItemProxy */; - }; -/* End PBXTargetDependency section */ - -/* Begin PBXVariantGroup section */ - 33CC10F42044A3C60003C045 /* MainMenu.xib */ = { - isa = PBXVariantGroup; - children = ( - 33CC10F52044A3C60003C045 /* Base */, - ); - name = MainMenu.xib; - path = Runner; - sourceTree = ""; - }; -/* End PBXVariantGroup section */ - -/* Begin XCBuildConfiguration section */ - 338D0CE9231458BD00FA5F75 /* Profile */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CODE_SIGN_IDENTITY = "-"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.11; - MTL_ENABLE_DEBUG_INFO = NO; - SDKROOT = macosx; - SWIFT_COMPILATION_MODE = wholemodule; - SWIFT_OPTIMIZATION_LEVEL = "-O"; - }; - name = Profile; - }; - 338D0CEA231458BD00FA5F75 /* Profile */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 33E5194F232828860026EE4D /* AppInfo.xcconfig */; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CLANG_ENABLE_MODULES = YES; - CODE_SIGN_ENTITLEMENTS = Runner/DebugProfile.entitlements; - CODE_SIGN_STYLE = Automatic; - COMBINE_HIDPI_IMAGES = YES; - INFOPLIST_FILE = Runner/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/../Frameworks", - ); - PROVISIONING_PROFILE_SPECIFIER = ""; - SWIFT_VERSION = 5.0; - }; - name = Profile; - }; - 338D0CEB231458BD00FA5F75 /* Profile */ = { - isa = XCBuildConfiguration; - buildSettings = { - CODE_SIGN_STYLE = Manual; - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = Profile; - }; - 33CC10F92044A3C60003C045 /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 9740EEB21CF90195004384FC /* Debug.xcconfig */; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CODE_SIGN_IDENTITY = "-"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = dwarf; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_TESTABILITY = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_DYNAMIC_NO_PIC = NO; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.11; - MTL_ENABLE_DEBUG_INFO = YES; - ONLY_ACTIVE_ARCH = YES; - SDKROOT = macosx; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - }; - name = Debug; - }; - 33CC10FA2044A3C60003C045 /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CODE_SIGN_IDENTITY = "-"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu11; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.11; - MTL_ENABLE_DEBUG_INFO = NO; - SDKROOT = macosx; - SWIFT_COMPILATION_MODE = wholemodule; - SWIFT_OPTIMIZATION_LEVEL = "-O"; - }; - name = Release; - }; - 33CC10FC2044A3C60003C045 /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 33E5194F232828860026EE4D /* AppInfo.xcconfig */; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CLANG_ENABLE_MODULES = YES; - CODE_SIGN_ENTITLEMENTS = Runner/DebugProfile.entitlements; - CODE_SIGN_STYLE = Automatic; - COMBINE_HIDPI_IMAGES = YES; - INFOPLIST_FILE = Runner/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/../Frameworks", - ); - PROVISIONING_PROFILE_SPECIFIER = ""; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 5.0; - }; - name = Debug; - }; - 33CC10FD2044A3C60003C045 /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 33E5194F232828860026EE4D /* AppInfo.xcconfig */; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CLANG_ENABLE_MODULES = YES; - CODE_SIGN_ENTITLEMENTS = Runner/Release.entitlements; - CODE_SIGN_STYLE = Automatic; - COMBINE_HIDPI_IMAGES = YES; - INFOPLIST_FILE = Runner/Info.plist; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/../Frameworks", - ); - PROVISIONING_PROFILE_SPECIFIER = ""; - SWIFT_VERSION = 5.0; - }; - name = Release; - }; - 33CC111C2044C6BA0003C045 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - CODE_SIGN_STYLE = Manual; - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = Debug; - }; - 33CC111D2044C6BA0003C045 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - CODE_SIGN_STYLE = Automatic; - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = Release; - }; -/* End XCBuildConfiguration section */ - -/* Begin XCConfigurationList section */ - 33CC10E82044A3C60003C045 /* Build configuration list for PBXProject "Runner" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 33CC10F92044A3C60003C045 /* Debug */, - 33CC10FA2044A3C60003C045 /* Release */, - 338D0CE9231458BD00FA5F75 /* Profile */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 33CC10FB2044A3C60003C045 /* Build configuration list for PBXNativeTarget "Runner" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 33CC10FC2044A3C60003C045 /* Debug */, - 33CC10FD2044A3C60003C045 /* Release */, - 338D0CEA231458BD00FA5F75 /* Profile */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 33CC111B2044C6BA0003C045 /* Build configuration list for PBXAggregateTarget "Flutter Assemble" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 33CC111C2044C6BA0003C045 /* Debug */, - 33CC111D2044C6BA0003C045 /* Release */, - 338D0CEB231458BD00FA5F75 /* Profile */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; -/* End XCConfigurationList section */ - }; - rootObject = 33CC10E52044A3C60003C045 /* Project object */; -} diff --git a/examples/ui/layout/adaptive_app_demos/macos/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/examples/ui/layout/adaptive_app_demos/macos/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist deleted file mode 100644 index 18d981003d..0000000000 --- a/examples/ui/layout/adaptive_app_demos/macos/Runner.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +++ /dev/null @@ -1,8 +0,0 @@ - - - - - IDEDidComputeMac32BitWarning - - - diff --git a/examples/ui/layout/adaptive_app_demos/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/examples/ui/layout/adaptive_app_demos/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme deleted file mode 100644 index 1376ec7b50..0000000000 --- a/examples/ui/layout/adaptive_app_demos/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme +++ /dev/null @@ -1,89 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/ui/layout/adaptive_app_demos/macos/Runner.xcworkspace/contents.xcworkspacedata b/examples/ui/layout/adaptive_app_demos/macos/Runner.xcworkspace/contents.xcworkspacedata deleted file mode 100644 index 1d526a16ed..0000000000 --- a/examples/ui/layout/adaptive_app_demos/macos/Runner.xcworkspace/contents.xcworkspacedata +++ /dev/null @@ -1,7 +0,0 @@ - - - - - diff --git a/examples/ui/layout/adaptive_app_demos/macos/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/examples/ui/layout/adaptive_app_demos/macos/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist deleted file mode 100644 index 18d981003d..0000000000 --- a/examples/ui/layout/adaptive_app_demos/macos/Runner.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +++ /dev/null @@ -1,8 +0,0 @@ - - - - - IDEDidComputeMac32BitWarning - - - diff --git a/examples/ui/layout/adaptive_app_demos/macos/Runner/AppDelegate.swift b/examples/ui/layout/adaptive_app_demos/macos/Runner/AppDelegate.swift deleted file mode 100644 index d53ef64377..0000000000 --- a/examples/ui/layout/adaptive_app_demos/macos/Runner/AppDelegate.swift +++ /dev/null @@ -1,9 +0,0 @@ -import Cocoa -import FlutterMacOS - -@NSApplicationMain -class AppDelegate: FlutterAppDelegate { - override func applicationShouldTerminateAfterLastWindowClosed(_ sender: NSApplication) -> Bool { - return true - } -} diff --git a/examples/ui/layout/adaptive_app_demos/macos/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json b/examples/ui/layout/adaptive_app_demos/macos/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json deleted file mode 100644 index a2ec33f19f..0000000000 --- a/examples/ui/layout/adaptive_app_demos/macos/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json +++ /dev/null @@ -1,68 +0,0 @@ -{ - "images" : [ - { - "size" : "16x16", - "idiom" : "mac", - "filename" : "app_icon_16.png", - "scale" : "1x" - }, - { - "size" : "16x16", - "idiom" : "mac", - "filename" : "app_icon_32.png", - "scale" : "2x" - }, - { - "size" : "32x32", - "idiom" : "mac", - "filename" : "app_icon_32.png", - "scale" : "1x" - }, - { - "size" : "32x32", - "idiom" : "mac", - "filename" : "app_icon_64.png", - "scale" : "2x" - }, - { - "size" : "128x128", - "idiom" : "mac", - "filename" : "app_icon_128.png", - "scale" : "1x" - }, - { - "size" : "128x128", - "idiom" : "mac", - "filename" : "app_icon_256.png", - "scale" : "2x" - }, - { - "size" : "256x256", - "idiom" : "mac", - "filename" : "app_icon_256.png", - "scale" : "1x" - }, - { - "size" : "256x256", - "idiom" : "mac", - "filename" : "app_icon_512.png", - "scale" : "2x" - }, - { - "size" : "512x512", - "idiom" : "mac", - "filename" : "app_icon_512.png", - "scale" : "1x" - }, - { - "size" : "512x512", - "idiom" : "mac", - "filename" : "app_icon_1024.png", - "scale" : "2x" - } - ], - "info" : { - "version" : 1, - "author" : "xcode" - } -} diff --git a/examples/ui/layout/adaptive_app_demos/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_1024.png b/examples/ui/layout/adaptive_app_demos/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_1024.png deleted file mode 100644 index 3c4935a7ca84f0976aca34b7f2895d65fb94d1ea..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 46993 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 diff --git a/examples/ui/layout/adaptive_app_demos/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_128.png b/examples/ui/layout/adaptive_app_demos/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_128.png deleted file mode 100644 index ed4cc16421680a50164ba74381b4b35ceaa0ccfc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3276 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 N;OXk;vd$@?2>?>Ex^Vyi diff --git a/examples/ui/layout/adaptive_app_demos/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_256.png b/examples/ui/layout/adaptive_app_demos/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_256.png deleted file mode 100644 index bcbf36df2f2aaaa0a63c7dabc94e600184229d0d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5933 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 f$KZHO*s&vt|9^w-6P?|#0pRK8NSwWJ?9znhg z3{`3j3=J&|48MRv4KElNN(~qoUL`OvSj}Ky5HFasE6@fg!ItFh?!xdN1Q+aGJ{c&& zS>O>_%)r1c48n{Iv*t(u1=&kHeO=ifbFy+6aSK)V_AxLppYn8Z42d|rc6w}vOsL55 z`t&mC&y2@JTEyg!eDiFX^k#CC!jq%>erB=yHqUP0XcDOTw6ko}L zX;EmMrq(fKk*eygEuA616;0)>@A{TK|55PV@70 z$OfzS*(VJxQev3J?yY?O=ul(v`fp}?u9z`JK3ugibK>)DyCwImZOF4d{xK%%Ks1*} zv$oa)9anR%lXIBUqYnhLmT>VOzHfNP?ZwJNZ!5$s9M08RynIvaXw>@G^T9@r9^KH1 zVy??F&uuk)bH9Y4pQY!hP58i_H6 znl-NcuCpLV6ZWU;4C zu@9exF&OZi`Bovq_m%T+WhU2kvkz@^_LpycBvqm3bMpLw8X-Or5sL>0AKE1$(k_L=_Zc=CUq#=x1-QZf)G7nHu@fmsQ1eN_N3+nTEz`4HI4Z6uVlE zJH+X&det8JU?tO?upcM4Z=cV!JV;yF>FfL5Q$M|W_2Z!P`S=}Wzp|_1^#d%e?_H`> zV@%vA$+bFVqhw9`U;TfP|5|PD{||OiYdor8P*i??|NJcb%kzT_73*7WE?Ua5hAnR2 z=7WE=PhTlJ#ZeRznjTUb;`E(wkMZrj4e|Hilz-mK>9cZHQY**5TUPw~u}k;u73KI}xAx!0m-)GVia|x^d3p~s_9gh83jA&Ra<8rM%`>U3x69t&NzbwWY}7Ar?)FK#IZ0z|d0H0EkRO w3{9;}4Xg|ebq&m|3=9_N6z8I7$jwj5OsmAL;bP(Gi$Dzwp00i_>zopr02+f8CIA2c diff --git a/examples/ui/layout/adaptive_app_demos/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_512.png b/examples/ui/layout/adaptive_app_demos/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_512.png deleted file mode 100644 index e71a726136a47ed24125c7efc79d68a4a01961b4..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14800 zcmZ{Lc|26@`~R6Crm_qwyCLMMh!)vm)F@HWt|+6V6lE=CaHfcnn4;2x(VilEl9-V} zsce-cGK|WaF}4{T=lt&J`Fy_L-|vs#>v^7+XU=`!*L|PszSj43o%o$Dj`9mM7C;ar z@3hrnHw59q|KcHn4EQr~{_70*BYk4yj*SqM&s>NcnFoIBdT-sm1A@YrK@dF#f+SPu z{Sb8441xx|AjtYQ1gQq5z1g(^49Fba=I8)nl7BMGpQeB(^8>dY41u79Dw6+j(A_jO z@K83?X~$;S-ud$gYZfZg5|bdvlI`TMaqs!>e}3%9HXev<6;dZZT8Yx`&;pKnN*iCJ z&x_ycWo9{*O}Gc$JHU`%s*$C%@v73hd+Mf%%9ph_Y1juXamcTAHd9tkwoua7yBu?V zgROzw>LbxAw3^;bZU~ZGnnHW?=7r9ZAK#wxT;0O<*z~_>^uV+VCU9B@)|r z*z^v>$!oH7%WZYrwf)zjGU|(8I%9PoktcsH8`z^%$48u z(O_}1U25s@Q*9{-3O!+t?w*QHo;~P99;6-KTGO{Cb#ADDYWF!eATsx{xh-!YMBiuE z%bJc7j^^B$Sa|27XRxg(XTaxWoFI}VFfV>0py8mMM;b^vH}49j;kwCA+Lw=q8lptk z?Pe`{wHI39A&xYkltf5*y%;-DF>5v`-lm0vydYtmqo0sClh5ueHCLJ+6$0y67Z zO-_LCT|JXi3tN7fB-!0_Kn#I+=tyUj87uR5*0>|SZ zy3x2;aql87`{aPZ@UbBwY0;Z-a*lYL90YApOAMKur7YgOiqA~Cne6%b&{V-t>Am2c z{eyEuKl!GsA*jF2H_gvX?bP~v46%3ax$r~B$HnZQ;UiCmRl`ROK8v>;Zs~upH9}qu1ZA3kn-AY2k2@CaH=Qh7K6`nU z3ib(Bk%H*^_omL6N4_G5NpY20UXGi}a$!}#lf<&J4~nhRwRM5cCB3Zvv#6+N1$g@W zj9?qmQ`zz-G9HTpoNl~bCOaEQqlTVYi7G0WmB5E34;f{SGcLvFpOb`+Zm)C(wjqLA z2;+nmB6~QDXbxZGWKLt38I%X$Q!;h zup9S~byxKv=$x|^YEV;l0l67jH~E8BU45ft_7xomac-48oq4PZpSNJbw<7DTM4mmz z!$)z#04cy%b8w@cOvjmb36o;gwYIOLwy+{I#3dJj#W4QdOWwJQ2#20AL49`hSFUa7 zFNAN3OD==G3_kbr1d96>l`_cI`<=thKNh5>hgg7FV>5TfC6d#u)9BNXi@p1K*;2Is zz+x;l4GbSt#*%>1iq}jGIebXYJY5;PGG0y(^{>SSuZY89aL`sDghOM&&pyP6ABJ#w zYwK~4^1eUQD)4!GL>`zrWeHV z-W!6JZbW*Ngo;Edhp_cOysYr!uhKS}vIg_UC}x z=jXxQfV@4B3`5 z!u#byBVXV5GtrSx_8bnT@iKv=Uc6n)Zpa`<9N>+!J~Loxptl5$Z`!u<3a)-+P)say z#=jc7^mJzPMI2;yMhCmN7YN78E7-^S(t8E}FklC;z|4PL{bO|JieM#p1mBjwyZMEm zkX^A1RXPGeS2YqtPMX~~t^$~oeFfWAU#jVLi%Z@l2hle^3|e(q?(uS=BVauF?VF{j z(owKLJuze;_@5p1OtRyrT`EFXf)NfMYb-)E8RVVdr<@}M>4R&~P=;B`c1L%o|8YfB z-a(LB-i8jc5!&B5cowyI2~M^YID&@Xt(D9v{|DB z959W z*vEA77fh3*w*UJ`4Y(bxsoEy6hm7_Wc5gT0^cvso%Ow>9<&@9Q>mxb6-^pv)5yc>n zQ~^!qY(lPQ1EDGkr%_*y*D8T^YbCa52^MVqYpTLhgJ;N5PfCQ{SXk|plD#Sm+g4c- zFeL2Dih35W4{_qb75U`4Rb#S0FEo%F85dOhXSX0huPOxdAid{&p6P;+9}I)XU7^=3RZu9M(g0dLyz_7$8K{`AddBLOfU&B_QNHtmsnNXq`hy~% zvJ{vtz~Yt9X|o}5vXX)9ZCHaRq8iAb zUDj8%(MpzJN39LferYKvIc!)z^5T-eW@j3h9a6d%WZ!%@2^@4+6%Z9W1GHZbOj|sb z0cU$}*~G$fYvDC|XulSC_;m}?KC2jg5pxES$Bt!hA|@EX*2+O!UEb5sn_^d>z;>;r~ zmO3BivdXboPY*}amsO&`xk|e)S*u=`o67MC(1WTB;OwG+ua4UV7T5Wvy%?U{Pa5cO zMoLG>#@chO{Oc72XPyX8f3jC7P`$j4$)0wc(b50COaDP3_Cm}aPAglUa7kRXAqmo5 z0KDD7G>Gmnpons40WJNYn+pxko92GXy@PvSErKE-Ou3)3UiRr7!L4+0%+5}sD{bf)uj^ounQ-Yn2%%JoZ%FjUv%yjS?Ks4u_88Jh%tNliYW~817IV@fqd1T zi(?;Fv-s3rQEn=9G*E-QzSl%YS|^fe*yn}Aqh!&P<5%#oB?*{wZMa5$PYa*A{VA8! zbOfS1W!W}cTo%g~iP$>WhE_x7#O4?h$jq=>{M77>bTAK_ z6uU0tl6HARboGi}=4krr6WP`9`aAt&P5ON1v(+H{T?jZuJ}B{L-=z3VX)}mZwzrqH zpf?T!k&$?{&{0_p>b`kdJbSb(p~tFcuG4zh6}hfl@ues6CfJu<-P+!>FlYMlD_3!E z9$6VE==tlxNYe(s;@8@+4c4jQ$R2g8t0QwE>Et|)5)@kJj6^yaqFYY?0LEM2C!+7+ z+FN|UxR1GCy1KA`{T_%24U+Vserchr5h`;U7TZPr@43x#MMN{@vV?KSII}R@5k`7cVK}E;c)$f~_{ZLDOoL|-01p~oafxi4F zG$?Wha&a*rTnz-nTI-bAJ*SLb!5(L!#iRdvLEyo>7D_=H78-qZrm=6{hkUR{tR{H! z`ZTOV$Oi6^qX5=_{f}V9h}WJAO%h9)kEUF#*-JyYDbOGZ>Nfs%7L}4p zopIul&&Bbn!C9o83ypC6W4F$X=_|pex$V4!Whm#48Wfm3*oAW0Gc&#&b+oq<8>aZR z2BLpouQQwyf$aHpQUK3pMRj(mS^^t#s$IC3{j*m9&l7sQt@RU{o_}N-xI_lh`rND^ zX~-8$o(;p^wf3_5-WZ^qgW`e8T@37{`J)e2KJdSSCUpX6KZu0Ga&U*+u3*PDAs1uK zpl)40+fROA@Vo#vK?^@Pq%w8DO9HdfmH+~vNinZ$5GRz?sD|k246NepqZd`>81P^P z#x#3kUS-}x4k%&~iEUrsb&-X#_;;?y9oCP4crMkC`=q58#NxQ| z*NXNA;GR4X=GiGXwab5=&M3j04fQw%2UxM`S(aE)_PlgJttBX96$$lY@Q%0xV^IbcHqzw^Uk&E=vFB;EQ@kzVIeM8lDIW_Q_ zrfy)l6s2QBApF;J2xTD_@wuNMlwDfsdfMyzRq)<>qG{M)Yt}9F1{1HaI_X7=F=7>& zYB54VaKlxu0lIgS;Ac&25Aw(tcf@K~(cvPi8(OChzhlYp6}#<_MVhU95sD&)n0FtL zmxm4w$~s(S9jmHOgyovpG!x4uLfJsMsJn^QMraKAa1Ix?{zkV!a7{f%-!u2{NqZ&) zo+^XB`eFQ4 zk-(;_>T#pTKyvW${yL|XXbcv?CE2Tp<3(PjeXhu^Jrp6^Mj}lg_)jamK{g;C+q^Da ztb!gV!q5)B7G1%lVanA2b>Xs?%hzCgJ{Hc!ldr9dnz7k^xG#4pDpr|0ZmxxiUVl}j zbD_rg3yAFQ>nnc)0>71D==715jRj4XsRb2#_lJoSOwky&c4957V-|m)@>b^Nak1!8 z@DsIOS8>Oe^T>tgB)WX3Y^I^65Uae+2M;$RxX_C)Aoo0dltvoRRIVQkpnegWj;D#G z+TwFIRUN%bZW3(K{8yN8!(1i0O!X3YN?Zo08L5D~)_tWQA8&|CvuQb8Od?p_x=GMF z-B@v9iNLYS1lUsbb`!%f5+1ev8RFPk7xyx5*G;ybRw(PW*yEZ$unu2`wpH)7b@ZXEz4Jr{?KZKYl!+3^)Q z)~^g?KlPGtT!{yQU&(Z&^rVjPu>ueeZN86AnhRwc)m|;5NvM&W3xD%n`+Hjg5$e8M zKh1Ju82L~&^ z-IQ5bYhsjqJfr38iwi~8<{oeREh|3l)*Enj4&Q$+mM$15YqwXeufK9P^(O=pj=F-1 zD+&REgwY~!W#ZPccSEi(*jiKJ5)Q|zX;hP}S2T9j_);epH9JQs{n>RG}{Nak)vIbfa zFQm?H;D+tzrBN2)6{?Mo%fzN6;6d_h0Qyn61)+XT63=!T*WQyRUoB_x0_)Ir`$FtS zak07C(mOaWN5m%bk?F9X&@mEVKN%{R6obt(9qw&p>w&p;R*l2th9$D^*`pC}NmB+v z>bk;OJ(C8p$G;jNvRsBbt=a!!tKnjJ`9*yQFgjEN1HcC<&>u9aStT3>Oq=MOQV!#WOZ6{cv$YVmlJdovPRV}<=IZUPeBVh5DC z91-?kimq3JUr;UMQ@0?h52gupvG=~(5AVdP(2(%*sL8!#K1-L$9B7MrWGdt(h&whR@vz~0oEHF8u3U1Q zdGdaIytJj4x@eF*E+^zgi{nPCA8tkjN}UoR8WhDzM3-zLqx0z?2tTdDKyENM={fp8VC@3Dt`AiK$;K#H$K2{08mrHG%jgEOLX3MCsG>afZm_0mLPS4jmYUJp~Dm! z5AUe_vEaOAT3zWdwl#cLvqwd1^lwW?gt7(92wEsOE6c#<0}{szFV4(uO70?3>=((! zQr}1{J?Wx2ZmjxYL_8OB*m&mimfojzYn~PiJ2g8R&ZRx-i^yF#sdhEWXAUIZ@J?T$ zs3PgT2<&Ki>Bob_n(@S>kUIvE+nY~ti9~6j;O9VAG#{oZ!DZCW)}i6iA!Tgsyz+hC z1VVyvbQ_nwgdZSEP=U4d#U`2*`e~d4y8uM4Bcmm%!jidaee#4WqN!ZnlBmbYpuaO! z!rU3`Kl2 z0O7PD&fQ|_b)Ub!g9^s;C2e>1i*2&?1$6yEn?~Y zI)-WIN8N(5s9;grW+J@K@I%g#?G&hzmlgV=L}ZA{f>3YCMx^P{u@c5Z;U1qmdk#)L zvX6z1!sL>+@vxO8qVn#k3YxYi?8ggV){?Rn@j$+Fd4-QkuH1@)j#3-=f82GZ!nl~{ zzZ(?kO`ANttVeHSo%xmH!NmNZECh*{s!-8S>ALoe5xOPs>|P5BbUmP@rlV8`d(c=7 zypcpLaI*FM^;GM%@q`GAb8kO`$oE|R48yn)?p(c1t>5;Wwn5r6ck&uw4}TnT80jI`IS~J%q8CpaVgIze<8IykSpVBg8~E! zW_tGqB;GO47r_er05y+Kwrcn{VLxL*1;HMv@*sd}MB6DH4zaP~u4Y;>@Nw7?F8S?c zfVIY(^ntnGgWlD|idzGz$Y+Oh(Ra=&VIf4!K2W*a)(%5%78s}8qxOknAGtDAq+HMO zM+Nu;0OgQRn36 zA@~a8`uVQ~v9?d!BxnsVaB-z-djypO44BjQAmg7&eVoaew|~)wH$SgefJ2$7_RiY+ z_7ACGoFM6Lhvho+eUG@pU&0X(Uy(*j;9pr?ET?FHTXadlfXC|MReZoU5>AG`mTM<% zc~*I@E*u0|hwVTdFA~4^b2VT7_~}~tCueNY{de3og=ASFQ`)0dhC2~Ne<}}Rc?ptA zi}+bQE%N9o*hpSUMH)9xt%Zlz&^p&5=cW}{m#f85iVX64^{!(vhClT<I)+c)RuiyrZqIw4v`z%YK&;_Fh4_+0B?qAGxMfAM`LzG_bjD>ib4;KGT4_1I>sxvL&&qp40ajgQOqIE^9=Az4w#ymo)bW-Vg{T!n=l&|nR_ zw+wcH|FxUH63)~{M;goHepmD{Fe?W9sO|eJP9L$G<{e_7FxxuXQ+)(Z^@;X8I1=%k zTK$gbHA1^4W<`q~ubQ0M_C^CA5#Z&*nGc(T?4Y_2jLu&FJDQYpCSiRny->$+nC9Jl z?avTW`ZXYT51%SrEq!}dXNM&!pM6nmL^lce=%S7{_TS)ckN8;{p*LT~LMgmlE~dpL zEBQy-jDj%cSK6N3)|CCR0LQ$N6iDM~+-1Oz|LAdkip(VZcO`gqCuJ+(Mm{m6@P%_; zBtF|MMVMP;E`5NJ{&@4j^JE5j&}(Jq{lCGL(P^#uqvbD`2)FVyfNgy|pvT!XY;02Z zZWbgGsvi6#!*$Zxwd{Xk6_M{+^yV_K@%_SAW(x)Lg|*AuG-%g2#GQYk8F?W&8|2dU z;00ppzrQnnYXnT`(S%_qF2#QNz&@Y$zcq+O8p>Gto2&4z8(^#cY?DuQwBQP4Fe?qUK_-yh4xT{8O@gb`uh` z>Q%jrgPAnANn4_)->n;w{Mei#J)F+`12&+-MLKSRzF6bL3;4O~oy~v7 zL0K-=m?>>(^qDCgvFRLBI@`04EGdTxe5}xBg#7#Wb!aUED;?5BLDEvZ@tai4*Rh8& z4V)cOr}DJ0&(FjWH%50Y+&=WtB42^eEVsmaHG)Il#j265oK&Bot(+-IIn`6InmuE# z;)qXs+X{fSb8^rYb#46X5?KCzH9X0>ppBQi(aKS--;4yA%0N|D<#8RZlOS(8n26=u zv~y;KC>`ypW=aqj`&x9 z0Zm>NKp}hPJu1+QDo(_U(Gt0SZ`IJWnp%QK`pye>Bm!w{sG>;VU^2 z4lZhV1}tCE8(?zu#j99|l3-qRBcz3bG+DlyxPGB$^6B^ssc_qYQ6lG0q~EAI?1$?( zahfn%etVvuKwB7R=>JDQluP97nLDM6*5;b0Ox#b{4nIgZA*+?IvyDN{K9WGnlA=Ju z+)6hjr}{;GxQQIDr3*lf32lRp{nHP8uiz^Fa|K+dUc@wD4Kf5RPxVkUZFCdtZH{+=c$AC)G2T-Qn@BPbr zZigIhKhKrVYy`!Mlc#HVr=CURVrhUjExhI~gZ%a=WM9BwvnN?=z!_ZQ$(sP?X;2Jy zyI$}H^^SvH2tf6+Uk$pJww@ngzPp856-l9g6WtW+%Yf>N^A}->#1W2n=WJ%sZ0<){Z&#% z^Kzl$>Km)sIxKLFjtc;}bZeoaZSpL4>`jCmAeRM-NP9sQ&-mi@p0j7Iq>1n&z@8?M z%dM7K^SgE5z)@i5w#rLE4+8%|^J`a6wYr`3BlvdD>7xW?Dd>`0HC0o{w7r_ot~h*G z2gI7Y!AUZ6YN+z$=GNzns@Tu7BxgAb3MBha30-ZG7a%rckU5}y{df`lj@^+34kr5> z988PPbWYdHye~=?>uZ4N&MN@4RBLk_?9W*b$}jqt0j%>yO9QOV(*!#cX~=wRdVL&S zhPQ{${0CGU-rfdS&b@u|IK{hV2Z=(*B2d0?&jwWfT=?Gk`4T9TfMQ)CfNgpLQa#>Q z%6A$w#QNc&qOtrHAbqY>J782@!X{9Y@N(HMSr;PP^;0DlJNxfC`oMB%Ocg zC*hnEsF|p*=CVe^dT)>BTL0yff)uo!U<+_2o3p)CE8quU1JI(=6)9$KxVdJYD*S*~ zzNeSkzFIQyqK}578+qq6X8rrRdgX z4k&R=AGex~a)MoB0pK&|yA<(*J#P&tR?ImBVD)ZTA4VH5L5DxXe<-*s`Aox%H1{-^Qa`kG_DGXD%QX-;l1#&#IVQP6>kir ztO@~ZvJDPnTvKt>fc*(j$W^)JhWk{4kWwbpFIXzuPt2V%M4H19-i5Gn*6(D`4_c1+ zYoI1@yT^~9JF~t>2eVM6p=GP3b*;daJpQOhAMNO|LKnwE2B5n8y9mf;q=)-L_FfD0 z<}YIRBO{k)6AHAn8iG>pYT+3bJ7jvP9}LSMR1nZW$5HR%PD1rFz z{4XE^Vmi-QX#?|Farz=CYS_8!%$E#G%4j2+;Avz|9QBj|YIExYk?y-1(j}0h{$$MnC_*F0U2*ExSi1ZCb_S9aV zTgyGP0Cl=m`emxM4Qih1E{`J{4oJo8K}WnH`@js^pR7Z-vTBK5F5JIFCDN}7pU^_nV>NTz@2$|Kcc5o+L&^Db_AQ);F?)X5BF*QJRCdLI-a%gW z++DZM)x=6*fNrSaUA&hf&CUqC$F*y^CJC-MAm9gd*5#^mh;-dR1?a&<3-hp3@}XN! z&8dcwo6=MQua%0KFvYbi>O{j)RrbDQo3S*y!oEJ~2=}^-v%zn~@hnmKGOvX6JLr;>DNC3)={8OM9n5Zs*(DlS*|%JTniJX2Uav7sOFT0vdIiUOC5pEtY?EF)@Fh9pCfD%N zXskZ8b^ldI{HHj{-l?iWo@IW6Nr`hAS>f8S*8FGc*gmcK^f2JS+>I&r#Gcewy=-JM zv0*w<5qBa6UQB@`esOG*4*t@7c9AkrTpM`v=eY?cO#z17H9B%Xy4m!}LhW}*iZ27w1?HrevgB1SZ1q2X$mm@FK@Qt7o z!s~Lio^IRdwzyvQ80{5iYeTV@mAo=2o5>KepRH0d{*Szlg~n%w2)S5v2|K8}pj;c{ zoDRLvYJO1@?x-=mq+LVhD{l-1-Dw4`7M?3@+ z`fu7?1#9W++6Y46N=H0+bD|CJH~q*CdEBm8D##VS7`cXy4~+x=ZC17rJeBh zI~qW^&FU`+e!{AKO3(>z5Ghh14bUT$=4B>@DVm(cj* zSLA*j!?z!=SLuVvAPh_EFKx}JE8T8;Gx)LH^H136=#Jn3Bo*@?=S`5M{WJPY&~ODs z+^V57DhJ2kD^Z|&;H}eoN~sxS8~cN5u1eW{t&y{!ouH`%p4(yDZaqw$%dlm4A0f0| z8H}XZFDs?3QuqI^PEy}T;r!5+QpfKEt&V|D)Z*xoJ?XXZ+k!sU2X!rcTF4tg8vWPM zr-JE>iu9DZK`#R5gQO{nyGDALY!l@M&eZsc*j*H~l4lD)8S?R*nrdxn?ELUR4kxK? zH(t9IM~^mfPs9WxR>J{agadQg@N6%=tUQ8Bn++TC|Hbqn*q;WydeNIS@gt|3j!P`w zxCKoeKQ*WBlF%l4-apIhERKl(hXS1vVk$U?Wifi)&lL6vF@bmFXmQEe{=$iG)Zt*l z0df@_)B-P_^K2P7h=>OIQ6f0Q-E@|M?$Z5n^oN>2_sBCpN>q(LnqUoef{tm^5^L$# z{<SL zKmH78cHX`4cBKIY8u1x*lwrgP^fJ%E&&AmHrRY7^hH*=2OA9K?!+|~Aeia=nAA`5~ z#zI=h#I>@FXaGk(n)0uqelNY;A5I9obE~OjsuW!%^NxK*52CfBPWYuw--v<1v|B>h z8R=#$TS-Pt3?d@P+xqmYpL4oB8- z>w99}%xqy9W!A^ODfLq8iA@z}10u?o#nG#MXumSaybi(S{`wIM z&nE3n2gWWMu93EvtofWzvG2{v;$ysuw^8q?3n}y=pB1vUr5gi++PjiyBH3jzKBRny zSO~O++1ZLdy7v7VzS&$yY;^Z7*j_#BI`PK`dAzJa9G1{9ahPqPi1C}ti+L)WHii*= z+RZ^+at-tlatc4|akPa&9H;%gn9aS`X_kfb>n>#NTyUVM6m4NCIfLm(28>qaYv7}t zn`M;XcONtXoa3#u3{L-ytd_&g z2mO$8CnE?460w#eSm|smlnNwFHM;A&IxSKLzVkV7nNVqZ*A`)eI{Nbg6WxsarAFuc=FFf1z|%#eTvBgUhY}N zsCT>`_YO>14i^vFX0KXbARLItzT{TeD%N~=ovGtZ6j{>PxkuYlHNTe0!u>rgw#?td z{)n=QrGvgCDE6BUem$Rh(1y!$@(Bn!k3E0|>PQ(8O==zN`?yBhAqlWyq+c%+h?p^- zE&OtLind}^_=>pbhxOgOIC0q9{cLK6p6*eg_|S+p9$W~_u4wzx@N?$QmFg2S)m~^R znni$X{U*!lHgdS@fI;|Owl=9Gwi?dr0m#>yL<8<}bLW_Kpl| zSGesADX&n?qmHC`2GyIev^hi~ka}ISZ^Y4w-yUzyPxaJB0mm%ww^>if3<;P^U+L5=s+cifT-ct*;!dOOk#SOZNv@a^J|DrS3YtSn8EEAlabX1NV3RfHwZn_41Xa z4;$taa6JJR()-FQ<#0G~WlML<l5I+IPnqDpW(PP>hRcQ+S2zU?tbG^(y z1K_?1R){jF;OKGw0WYjnm>aPxnmr5?bP?^B-|Fv`TT4ecH3O`Z3`X_r;vgFn>t1tE zGE6W2PODPKUj+@a%3lB;lS?srE5lp(tZ;uvzrPb){f~n7v_^z! z=16!Vdm!Q0q#?jy0qY%#0d^J8D9o)A;Rj!~j%u>KPs-tB08{4s1ry9VS>gW~5o^L; z7vyjmfXDGRVFa@-mis2!a$GI@9kE*pe3y_C3-$iVGUTQzZE+%>vT0=r|2%xMDBC@>WlkGU4CjoWs@D(rZ zS1NB#e69fvI^O#5r$Hj;bhHPEE4)4q5*t5Gyjzyc{)o459VkEhJ$%hJUC&67k z7gdo`Q*Jm3R&?ueqBezPTa}OI9wqcc;FRTcfVXob^z|dNIB0hMkHV26$zA%YgR$sM zTKM61S}#wJ#u+0UDE3N+U*~Tz1nnV;W<8Akz&6M7-6mIF(Pq`wJ1A%loYL( zIS;&2((xbyL7zoyaY2Sa%BBYBxo6Aa*53`~e@|RA`MP+?iI4KZ+y4EU&I zS_|(#*&j2hxpELa3r0O7ok&5!ijRiRu9i-_3cdnydZU9Mp6Y);skv%!$~`i-J7e-g zj@EoHf+gtcrKf;tY5`4iLnWSHa)9brUM$XmEzG3T0BXTG_+0}p7uGLs^(uYh0j$;~ zT1&~S%_Y5VImvf1EkD7vP-@F%hRlBe{a@T!SW(4WEQd1!O47*Crf@u-TS==48iR5x z!*`Ul4AJI^vIVaN3u5UifXBX{fJ@z>4Q2#1?jpcdLocwymBgKrZ+^Cb@QuIxl58B* zD{t-W3;M;{MGHm_@&n(6A-AsD;JO#>J3o4ru{hy;k;8?=rkp0tadEEcHNECoTI(W31`El-CI0eWQ zWD4&2ehvACkLCjG`82T`L^cNNC4Oo2IH(T4e;C75IwkJ&`|ArqSKD}TX_-E*eeiU& ziUuAC)A?d>-;@9Jcmsdca>@q1`6vzo^3etEH%1Gco&gvC{;Y-qyJ$Re`#A!5Kd((5 z6sSiKnA20uPX0**Mu&6tNgTunUR1sodoNmDst1&wz8v7AG3=^huypTi`S7+GrO$D6 z)0Ja-y5r?QQ+&jVQBjitIZ`z2Ia}iXWf#=#>nU+ zL29$)Q>f#o<#4deo!Kuo@WX{G(`eLaf%(_Nc}E`q=BXHMS(Os{!g%(|&tTDIczE_# z5y%wjCp9S?&*8bS3imJi_9_COC)-_;6D9~8Om@?U2PGQpM^7LKG7Q~(AoSRgP#tZfVDF_zr;_U*!F9qsbVQ@un9O2>T4M5tr0B~~v_@a=w^8h510a#=L z;8+9zhV}57uajb+9DbZm1G`_NqOuKN`bQ2fw9A*v*Kdb_E-SA`?2 z)OFIY-%uD`JZUZg?D4lHtNegKgWr!1m%hOpu5`R+bZ2K#&)*R-7ElKYo0$0xYxIL8 zLg%u|4oZixz}ILB-@aS4=XOe)z!VL6@?dX{LW^YCPjKtyw44)xT=H;h(fmFr>R?p%r5*}W z7_bo0drVDRq9V9QL4_!dazughK6t}tVVvBq={T0+3(1zmb>f+|;{D%J?^xnZcqio5 z%H?@L+L-CIdO=x6QrALL9&PwvjrZi5NS)1e<*%V8ntw~S2PF}zH}B5f_DHyB=I3m@ z_;^TpN|sesCU}qxQ`~jIwF>#8wGvxg9kdMT$}us8BM&W>OzZ|ry2BB)+UY*_yH+&L zl_=Jy9BNzIZs}D~Yv_H%HPjVGNV=xT3xpIW!Np1F^G#9Y8X zl)c_V1(DhYu-v%H3-m&n%M_}}c{E5Wu+6*>R24gW_A7$(U=9D|H$r;;;@o zJ)c_CmVf9l*;4SyJ}E{+4)}^C>SIJ*_bul7OJ{v&0oO>jG(5xzYP0$I%*YH|Mwu#r zubNW5VZ9^X#Phw<;?=^G?Kg&C)^x1FVsKGZ*n+{C1znj~YHSP?6PS(k5e9qGvS4X* z=1kA_27(iV65a(i+Sicmd@Vzf^2@*Wed-`aYQ~em=-h%Pu`gHfz)&@$hpr<&mNO={ zl^kI0HP0wTbbh{d(>5a#;zT2_=ppef?;D4;2^}&kZjB^yl%LBJ;|> zkLc)JEg*5rpQ;_)w?PnKynWtv!@ z>}+am{@(g$KKM+e$ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/examples/ui/layout/adaptive_app_demos/macos/Runner/Configs/AppInfo.xcconfig b/examples/ui/layout/adaptive_app_demos/macos/Runner/Configs/AppInfo.xcconfig deleted file mode 100644 index f8976e3a45..0000000000 --- a/examples/ui/layout/adaptive_app_demos/macos/Runner/Configs/AppInfo.xcconfig +++ /dev/null @@ -1,14 +0,0 @@ -// Application-level settings for the Runner target. -// -// This may be replaced with something auto-generated from metadata (e.g., pubspec.yaml) in the -// future. If not, the values below would default to using the project name when this becomes a -// 'flutter create' template. - -// The application's name. By default this is also the title of the Flutter window. -PRODUCT_NAME = adaptive_app_demos - -// The application's bundle identifier -PRODUCT_BUNDLE_IDENTIFIER = com.example.adaptiveAppDemos - -// The copyright displayed in application information -PRODUCT_COPYRIGHT = Copyright © 2021 com.example. All rights reserved. diff --git a/examples/ui/layout/adaptive_app_demos/macos/Runner/Configs/Debug.xcconfig b/examples/ui/layout/adaptive_app_demos/macos/Runner/Configs/Debug.xcconfig deleted file mode 100644 index 36b0fd9464..0000000000 --- a/examples/ui/layout/adaptive_app_demos/macos/Runner/Configs/Debug.xcconfig +++ /dev/null @@ -1,2 +0,0 @@ -#include "../../Flutter/Flutter-Debug.xcconfig" -#include "Warnings.xcconfig" diff --git a/examples/ui/layout/adaptive_app_demos/macos/Runner/Configs/Release.xcconfig b/examples/ui/layout/adaptive_app_demos/macos/Runner/Configs/Release.xcconfig deleted file mode 100644 index dff4f49561..0000000000 --- a/examples/ui/layout/adaptive_app_demos/macos/Runner/Configs/Release.xcconfig +++ /dev/null @@ -1,2 +0,0 @@ -#include "../../Flutter/Flutter-Release.xcconfig" -#include "Warnings.xcconfig" diff --git a/examples/ui/layout/adaptive_app_demos/macos/Runner/Configs/Warnings.xcconfig b/examples/ui/layout/adaptive_app_demos/macos/Runner/Configs/Warnings.xcconfig deleted file mode 100644 index 42bcbf4780..0000000000 --- a/examples/ui/layout/adaptive_app_demos/macos/Runner/Configs/Warnings.xcconfig +++ /dev/null @@ -1,13 +0,0 @@ -WARNING_CFLAGS = -Wall -Wconditional-uninitialized -Wnullable-to-nonnull-conversion -Wmissing-method-return-type -Woverlength-strings -GCC_WARN_UNDECLARED_SELECTOR = YES -CLANG_UNDEFINED_BEHAVIOR_SANITIZER_NULLABILITY = YES -CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE -CLANG_WARN__DUPLICATE_METHOD_MATCH = YES -CLANG_WARN_PRAGMA_PACK = YES -CLANG_WARN_STRICT_PROTOTYPES = YES -CLANG_WARN_COMMA = YES -GCC_WARN_STRICT_SELECTOR_MATCH = YES -CLANG_WARN_OBJC_REPEATED_USE_OF_WEAK = YES -CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES -GCC_WARN_SHADOW = YES -CLANG_WARN_UNREACHABLE_CODE = YES diff --git a/examples/ui/layout/adaptive_app_demos/macos/Runner/DebugProfile.entitlements b/examples/ui/layout/adaptive_app_demos/macos/Runner/DebugProfile.entitlements deleted file mode 100644 index dddb8a30c8..0000000000 --- a/examples/ui/layout/adaptive_app_demos/macos/Runner/DebugProfile.entitlements +++ /dev/null @@ -1,12 +0,0 @@ - - - - - com.apple.security.app-sandbox - - com.apple.security.cs.allow-jit - - com.apple.security.network.server - - - diff --git a/examples/ui/layout/adaptive_app_demos/macos/Runner/Info.plist b/examples/ui/layout/adaptive_app_demos/macos/Runner/Info.plist deleted file mode 100644 index 4789daa6a4..0000000000 --- a/examples/ui/layout/adaptive_app_demos/macos/Runner/Info.plist +++ /dev/null @@ -1,32 +0,0 @@ - - - - - CFBundleDevelopmentRegion - $(DEVELOPMENT_LANGUAGE) - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIconFile - - CFBundleIdentifier - $(PRODUCT_BUNDLE_IDENTIFIER) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - APPL - CFBundleShortVersionString - $(FLUTTER_BUILD_NAME) - CFBundleVersion - $(FLUTTER_BUILD_NUMBER) - LSMinimumSystemVersion - $(MACOSX_DEPLOYMENT_TARGET) - NSHumanReadableCopyright - $(PRODUCT_COPYRIGHT) - NSMainNibFile - MainMenu - NSPrincipalClass - NSApplication - - diff --git a/examples/ui/layout/adaptive_app_demos/macos/Runner/MainFlutterWindow.swift b/examples/ui/layout/adaptive_app_demos/macos/Runner/MainFlutterWindow.swift deleted file mode 100644 index 2b5381067b..0000000000 --- a/examples/ui/layout/adaptive_app_demos/macos/Runner/MainFlutterWindow.swift +++ /dev/null @@ -1,21 +0,0 @@ -import Cocoa -import FlutterMacOS -import bitsdojo_window_macos - -class MainFlutterWindow: BitsdojoWindow { - - override func bitsdojo_window_configure() -> UInt { - return BDW_CUSTOM_FRAME | BDW_HIDE_ON_STARTUP - } - - override func awakeFromNib() { - let flutterViewController = FlutterViewController.init() - let windowFrame = self.frame - self.contentViewController = flutterViewController - self.setFrame(windowFrame, display: true) - - RegisterGeneratedPlugins(registry: flutterViewController) - - super.awakeFromNib() - } -} diff --git a/examples/ui/layout/adaptive_app_demos/macos/Runner/Release.entitlements b/examples/ui/layout/adaptive_app_demos/macos/Runner/Release.entitlements deleted file mode 100644 index 852fa1a472..0000000000 --- a/examples/ui/layout/adaptive_app_demos/macos/Runner/Release.entitlements +++ /dev/null @@ -1,8 +0,0 @@ - - - - - com.apple.security.app-sandbox - - - diff --git a/examples/ui/layout/adaptive_app_demos/pubspec.yaml b/examples/ui/layout/adaptive_app_demos/pubspec.yaml index 2b4d563f3e..0d281aa8a7 100644 --- a/examples/ui/layout/adaptive_app_demos/pubspec.yaml +++ b/examples/ui/layout/adaptive_app_demos/pubspec.yaml @@ -15,6 +15,7 @@ dependencies: flextras: ^0.0.2 provider: ^5.0.0 universal_platform: ^1.0.0-nullsafety + platform: ^3.0.2 dev_dependencies: flutter_test: diff --git a/examples/ui/layout/adaptive_app_demos/web/favicon.png b/examples/ui/layout/adaptive_app_demos/web/favicon.png deleted file mode 100644 index 8aaa46ac1ae21512746f852a42ba87e4165dfdd1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 917 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|I14-?iy0X7 zltGxWVyS%@P(fs7NJL45ua8x7ey(0(N`6wRUPW#JP&EUCO@$SZnVVXYs8ErclUHn2 zVXFjIVFhG^g!Ppaz)DK8ZIvQ?0~DO|i&7O#^-S~(l1AfjnEK zjFOT9D}DX)@^Za$W4-*MbbUihOG|wNBYh(yU7!lx;>x^|#0uTKVr7USFmqf|i<65o z3raHc^AtelCMM;Vme?vOfh>Xph&xL%(-1c06+^uR^q@XSM&D4+Kp$>4P^%3{)XKjo zGZknv$b36P8?Z_gF{nK@`XI}Z90TzwSQO}0J1!f2c(B=V`5aP@1P1a|PZ!4!3&Gl8 zTYqUsf!gYFyJnXpu0!n&N*SYAX-%d(5gVjrHJWqXQshj@!Zm{!01WsQrH~9=kTxW#6SvuapgMqt>$=j#%eyGrQzr zP{L-3gsMA^$I1&gsBAEL+vxi1*Igl=8#8`5?A-T5=z-sk46WA1IUT)AIZHx1rdUrf zVJrJn<74DDw`j)Ki#gt}mIT-Q`XRa2-jQXQoI%w`nb|XblvzK${ZzlV)m-XcwC(od z71_OEC5Bt9GEXosOXaPTYOia#R4ID2TiU~`zVMl08TV_C%DnU4^+HE>9(CE4D6?Fz oujB08i7adh9xk7*FX66dWH6F5TM;?E2b5PlUHx3vIVCg!0Dx9vYXATM diff --git a/examples/ui/layout/adaptive_app_demos/web/icons/Icon-192.png b/examples/ui/layout/adaptive_app_demos/web/icons/Icon-192.png deleted file mode 100644 index b749bfef07473333cf1dd31e9eed89862a5d52aa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5292 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 diff --git a/examples/ui/layout/adaptive_app_demos/web/icons/Icon-512.png b/examples/ui/layout/adaptive_app_demos/web/icons/Icon-512.png deleted file mode 100644 index 88cfd48dff1169879ba46840804b412fe02fefd6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8252 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 diff --git a/examples/ui/layout/adaptive_app_demos/web/index.html b/examples/ui/layout/adaptive_app_demos/web/index.html deleted file mode 100644 index ee6dbb56af..0000000000 --- a/examples/ui/layout/adaptive_app_demos/web/index.html +++ /dev/null @@ -1,98 +0,0 @@ - - - - - - - - - - - - - - - - - adaptive_app_demos - - - - - - - diff --git a/examples/ui/layout/adaptive_app_demos/web/manifest.json b/examples/ui/layout/adaptive_app_demos/web/manifest.json deleted file mode 100644 index 52ea27fea1..0000000000 --- a/examples/ui/layout/adaptive_app_demos/web/manifest.json +++ /dev/null @@ -1,23 +0,0 @@ -{ - "name": "adaptive_app_demos", - "short_name": "adaptive_app_demos", - "start_url": ".", - "display": "standalone", - "background_color": "#0175C2", - "theme_color": "#0175C2", - "description": "Demo code for adaptive app development techniques.", - "orientation": "portrait-primary", - "prefer_related_applications": false, - "icons": [ - { - "src": "icons/Icon-192.png", - "sizes": "192x192", - "type": "image/png" - }, - { - "src": "icons/Icon-512.png", - "sizes": "512x512", - "type": "image/png" - } - ] -} diff --git a/examples/ui/layout/adaptive_app_demos/windows/.gitignore b/examples/ui/layout/adaptive_app_demos/windows/.gitignore deleted file mode 100644 index d492d0d98c..0000000000 --- a/examples/ui/layout/adaptive_app_demos/windows/.gitignore +++ /dev/null @@ -1,17 +0,0 @@ -flutter/ephemeral/ - -# Visual Studio user-specific files. -*.suo -*.user -*.userosscache -*.sln.docstates - -# Visual Studio build-related files. -x64/ -x86/ - -# Visual Studio cache files -# files ending in .cache can be ignored -*.[Cc]ache -# but keep track of directories ending in .cache -!*.[Cc]ache/ diff --git a/examples/ui/layout/adaptive_app_demos/windows/CMakeLists.txt b/examples/ui/layout/adaptive_app_demos/windows/CMakeLists.txt deleted file mode 100644 index d782a7221d..0000000000 --- a/examples/ui/layout/adaptive_app_demos/windows/CMakeLists.txt +++ /dev/null @@ -1,95 +0,0 @@ -cmake_minimum_required(VERSION 3.15) -project(adaptive_app_demos LANGUAGES CXX) - -set(BINARY_NAME "adaptive_app_demos") - -cmake_policy(SET CMP0063 NEW) - -set(CMAKE_INSTALL_RPATH "$ORIGIN/lib") - -# Configure build options. -get_property(IS_MULTICONFIG GLOBAL PROPERTY GENERATOR_IS_MULTI_CONFIG) -if(IS_MULTICONFIG) - set(CMAKE_CONFIGURATION_TYPES "Debug;Profile;Release" - CACHE STRING "" FORCE) -else() - if(NOT CMAKE_BUILD_TYPE AND NOT CMAKE_CONFIGURATION_TYPES) - set(CMAKE_BUILD_TYPE "Debug" CACHE - STRING "Flutter build mode" FORCE) - set_property(CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS - "Debug" "Profile" "Release") - endif() -endif() - -set(CMAKE_EXE_LINKER_FLAGS_PROFILE "${CMAKE_EXE_LINKER_FLAGS_RELEASE}") -set(CMAKE_SHARED_LINKER_FLAGS_PROFILE "${CMAKE_SHARED_LINKER_FLAGS_RELEASE}") -set(CMAKE_C_FLAGS_PROFILE "${CMAKE_C_FLAGS_RELEASE}") -set(CMAKE_CXX_FLAGS_PROFILE "${CMAKE_CXX_FLAGS_RELEASE}") - -# Use Unicode for all projects. -add_definitions(-DUNICODE -D_UNICODE) - -# Compilation settings that should be applied to most targets. -function(APPLY_STANDARD_SETTINGS TARGET) - target_compile_features(${TARGET} PUBLIC cxx_std_17) - target_compile_options(${TARGET} PRIVATE /W4 /WX /wd"4100") - target_compile_options(${TARGET} PRIVATE /EHsc) - target_compile_definitions(${TARGET} PRIVATE "_HAS_EXCEPTIONS=0") - target_compile_definitions(${TARGET} PRIVATE "$<$:_DEBUG>") -endfunction() - -set(FLUTTER_MANAGED_DIR "${CMAKE_CURRENT_SOURCE_DIR}/flutter") - -# Flutter library and tool build rules. -add_subdirectory(${FLUTTER_MANAGED_DIR}) - -# Application build -add_subdirectory("runner") - -# Generated plugin build rules, which manage building the plugins and adding -# them to the application. -include(flutter/generated_plugins.cmake) - - -# === Installation === -# Support files are copied into place next to the executable, so that it can -# run in place. This is done instead of making a separate bundle (as on Linux) -# so that building and running from within Visual Studio will work. -set(BUILD_BUNDLE_DIR "$") -# Make the "install" step default, as it's required to run. -set(CMAKE_VS_INCLUDE_INSTALL_TO_DEFAULT_BUILD 1) -if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) - set(CMAKE_INSTALL_PREFIX "${BUILD_BUNDLE_DIR}" CACHE PATH "..." FORCE) -endif() - -set(INSTALL_BUNDLE_DATA_DIR "${CMAKE_INSTALL_PREFIX}/data") -set(INSTALL_BUNDLE_LIB_DIR "${CMAKE_INSTALL_PREFIX}") - -install(TARGETS ${BINARY_NAME} RUNTIME DESTINATION "${CMAKE_INSTALL_PREFIX}" - COMPONENT Runtime) - -install(FILES "${FLUTTER_ICU_DATA_FILE}" DESTINATION "${INSTALL_BUNDLE_DATA_DIR}" - COMPONENT Runtime) - -install(FILES "${FLUTTER_LIBRARY}" DESTINATION "${INSTALL_BUNDLE_LIB_DIR}" - COMPONENT Runtime) - -if(PLUGIN_BUNDLED_LIBRARIES) - install(FILES "${PLUGIN_BUNDLED_LIBRARIES}" - DESTINATION "${INSTALL_BUNDLE_LIB_DIR}" - COMPONENT Runtime) -endif() - -# Fully re-copy the assets directory on each build to avoid having stale files -# from a previous install. -set(FLUTTER_ASSET_DIR_NAME "flutter_assets") -install(CODE " - file(REMOVE_RECURSE \"${INSTALL_BUNDLE_DATA_DIR}/${FLUTTER_ASSET_DIR_NAME}\") - " COMPONENT Runtime) -install(DIRECTORY "${PROJECT_BUILD_DIR}/${FLUTTER_ASSET_DIR_NAME}" - DESTINATION "${INSTALL_BUNDLE_DATA_DIR}" COMPONENT Runtime) - -# Install the AOT library on non-Debug builds only. -install(FILES "${AOT_LIBRARY}" DESTINATION "${INSTALL_BUNDLE_DATA_DIR}" - CONFIGURATIONS Profile;Release - COMPONENT Runtime) diff --git a/examples/ui/layout/adaptive_app_demos/windows/flutter/CMakeLists.txt b/examples/ui/layout/adaptive_app_demos/windows/flutter/CMakeLists.txt deleted file mode 100644 index b02c5485c9..0000000000 --- a/examples/ui/layout/adaptive_app_demos/windows/flutter/CMakeLists.txt +++ /dev/null @@ -1,103 +0,0 @@ -cmake_minimum_required(VERSION 3.15) - -set(EPHEMERAL_DIR "${CMAKE_CURRENT_SOURCE_DIR}/ephemeral") - -# Configuration provided via flutter tool. -include(${EPHEMERAL_DIR}/generated_config.cmake) - -# TODO: Move the rest of this into files in ephemeral. See -# https://github.com/flutter/flutter/issues/57146. -set(WRAPPER_ROOT "${EPHEMERAL_DIR}/cpp_client_wrapper") - -# === Flutter Library === -set(FLUTTER_LIBRARY "${EPHEMERAL_DIR}/flutter_windows.dll") - -# Published to parent scope for install step. -set(FLUTTER_LIBRARY ${FLUTTER_LIBRARY} PARENT_SCOPE) -set(FLUTTER_ICU_DATA_FILE "${EPHEMERAL_DIR}/icudtl.dat" PARENT_SCOPE) -set(PROJECT_BUILD_DIR "${PROJECT_DIR}/build/" PARENT_SCOPE) -set(AOT_LIBRARY "${PROJECT_DIR}/build/windows/app.so" PARENT_SCOPE) - -list(APPEND FLUTTER_LIBRARY_HEADERS - "flutter_export.h" - "flutter_windows.h" - "flutter_messenger.h" - "flutter_plugin_registrar.h" - "flutter_texture_registrar.h" -) -list(TRANSFORM FLUTTER_LIBRARY_HEADERS PREPEND "${EPHEMERAL_DIR}/") -add_library(flutter INTERFACE) -target_include_directories(flutter INTERFACE - "${EPHEMERAL_DIR}" -) -target_link_libraries(flutter INTERFACE "${FLUTTER_LIBRARY}.lib") -add_dependencies(flutter flutter_assemble) - -# === Wrapper === -list(APPEND CPP_WRAPPER_SOURCES_CORE - "core_implementations.cc" - "standard_codec.cc" -) -list(TRANSFORM CPP_WRAPPER_SOURCES_CORE PREPEND "${WRAPPER_ROOT}/") -list(APPEND CPP_WRAPPER_SOURCES_PLUGIN - "plugin_registrar.cc" -) -list(TRANSFORM CPP_WRAPPER_SOURCES_PLUGIN PREPEND "${WRAPPER_ROOT}/") -list(APPEND CPP_WRAPPER_SOURCES_APP - "flutter_engine.cc" - "flutter_view_controller.cc" -) -list(TRANSFORM CPP_WRAPPER_SOURCES_APP PREPEND "${WRAPPER_ROOT}/") - -# Wrapper sources needed for a plugin. -add_library(flutter_wrapper_plugin STATIC - ${CPP_WRAPPER_SOURCES_CORE} - ${CPP_WRAPPER_SOURCES_PLUGIN} -) -apply_standard_settings(flutter_wrapper_plugin) -set_target_properties(flutter_wrapper_plugin PROPERTIES - POSITION_INDEPENDENT_CODE ON) -set_target_properties(flutter_wrapper_plugin PROPERTIES - CXX_VISIBILITY_PRESET hidden) -target_link_libraries(flutter_wrapper_plugin PUBLIC flutter) -target_include_directories(flutter_wrapper_plugin PUBLIC - "${WRAPPER_ROOT}/include" -) -add_dependencies(flutter_wrapper_plugin flutter_assemble) - -# Wrapper sources needed for the runner. -add_library(flutter_wrapper_app STATIC - ${CPP_WRAPPER_SOURCES_CORE} - ${CPP_WRAPPER_SOURCES_APP} -) -apply_standard_settings(flutter_wrapper_app) -target_link_libraries(flutter_wrapper_app PUBLIC flutter) -target_include_directories(flutter_wrapper_app PUBLIC - "${WRAPPER_ROOT}/include" -) -add_dependencies(flutter_wrapper_app flutter_assemble) - -# === Flutter tool backend === -# _phony_ is a non-existent file to force this command to run every time, -# since currently there's no way to get a full input/output list from the -# flutter tool. -set(PHONY_OUTPUT "${CMAKE_CURRENT_BINARY_DIR}/_phony_") -set_source_files_properties("${PHONY_OUTPUT}" PROPERTIES SYMBOLIC TRUE) -add_custom_command( - OUTPUT ${FLUTTER_LIBRARY} ${FLUTTER_LIBRARY_HEADERS} - ${CPP_WRAPPER_SOURCES_CORE} ${CPP_WRAPPER_SOURCES_PLUGIN} - ${CPP_WRAPPER_SOURCES_APP} - ${PHONY_OUTPUT} - COMMAND ${CMAKE_COMMAND} -E env - ${FLUTTER_TOOL_ENVIRONMENT} - "${FLUTTER_ROOT}/packages/flutter_tools/bin/tool_backend.bat" - windows-x64 $ - VERBATIM -) -add_custom_target(flutter_assemble DEPENDS - "${FLUTTER_LIBRARY}" - ${FLUTTER_LIBRARY_HEADERS} - ${CPP_WRAPPER_SOURCES_CORE} - ${CPP_WRAPPER_SOURCES_PLUGIN} - ${CPP_WRAPPER_SOURCES_APP} -) diff --git a/examples/ui/layout/adaptive_app_demos/windows/flutter/generated_plugin_registrant.cc b/examples/ui/layout/adaptive_app_demos/windows/flutter/generated_plugin_registrant.cc deleted file mode 100644 index 684e11f3a9..0000000000 --- a/examples/ui/layout/adaptive_app_demos/windows/flutter/generated_plugin_registrant.cc +++ /dev/null @@ -1,12 +0,0 @@ -// -// Generated file. Do not edit. -// - -#include "generated_plugin_registrant.h" - -#include - -void RegisterPlugins(flutter::PluginRegistry* registry) { - BitsdojoWindowPluginRegisterWithRegistrar( - registry->GetRegistrarForPlugin("BitsdojoWindowPlugin")); -} diff --git a/examples/ui/layout/adaptive_app_demos/windows/flutter/generated_plugin_registrant.h b/examples/ui/layout/adaptive_app_demos/windows/flutter/generated_plugin_registrant.h deleted file mode 100644 index 9846246b4d..0000000000 --- a/examples/ui/layout/adaptive_app_demos/windows/flutter/generated_plugin_registrant.h +++ /dev/null @@ -1,13 +0,0 @@ -// -// Generated file. Do not edit. -// - -#ifndef GENERATED_PLUGIN_REGISTRANT_ -#define GENERATED_PLUGIN_REGISTRANT_ - -#include - -// Registers Flutter plugins. -void RegisterPlugins(flutter::PluginRegistry* registry); - -#endif // GENERATED_PLUGIN_REGISTRANT_ diff --git a/examples/ui/layout/adaptive_app_demos/windows/flutter/generated_plugins.cmake b/examples/ui/layout/adaptive_app_demos/windows/flutter/generated_plugins.cmake deleted file mode 100644 index 065b15b24f..0000000000 --- a/examples/ui/layout/adaptive_app_demos/windows/flutter/generated_plugins.cmake +++ /dev/null @@ -1,16 +0,0 @@ -# -# Generated file, do not edit. -# - -list(APPEND FLUTTER_PLUGIN_LIST - bitsdojo_window_windows -) - -set(PLUGIN_BUNDLED_LIBRARIES) - -foreach(plugin ${FLUTTER_PLUGIN_LIST}) - add_subdirectory(flutter/ephemeral/.plugin_symlinks/${plugin}/windows plugins/${plugin}) - target_link_libraries(${BINARY_NAME} PRIVATE ${plugin}_plugin) - list(APPEND PLUGIN_BUNDLED_LIBRARIES $) - list(APPEND PLUGIN_BUNDLED_LIBRARIES ${${plugin}_bundled_libraries}) -endforeach(plugin) diff --git a/examples/ui/layout/adaptive_app_demos/windows/runner/CMakeLists.txt b/examples/ui/layout/adaptive_app_demos/windows/runner/CMakeLists.txt deleted file mode 100644 index 977e38b5d1..0000000000 --- a/examples/ui/layout/adaptive_app_demos/windows/runner/CMakeLists.txt +++ /dev/null @@ -1,18 +0,0 @@ -cmake_minimum_required(VERSION 3.15) -project(runner LANGUAGES CXX) - -add_executable(${BINARY_NAME} WIN32 - "flutter_window.cpp" - "main.cpp" - "run_loop.cpp" - "utils.cpp" - "win32_window.cpp" - "${FLUTTER_MANAGED_DIR}/generated_plugin_registrant.cc" - "Runner.rc" - "runner.exe.manifest" -) -apply_standard_settings(${BINARY_NAME}) -target_compile_definitions(${BINARY_NAME} PRIVATE "NOMINMAX") -target_link_libraries(${BINARY_NAME} PRIVATE flutter flutter_wrapper_app) -target_include_directories(${BINARY_NAME} PRIVATE "${CMAKE_SOURCE_DIR}") -add_dependencies(${BINARY_NAME} flutter_assemble) diff --git a/examples/ui/layout/adaptive_app_demos/windows/runner/Runner.rc b/examples/ui/layout/adaptive_app_demos/windows/runner/Runner.rc deleted file mode 100644 index 69849f6a2d..0000000000 --- a/examples/ui/layout/adaptive_app_demos/windows/runner/Runner.rc +++ /dev/null @@ -1,121 +0,0 @@ -// Microsoft Visual C++ generated resource script. -// -#pragma code_page(65001) -#include "resource.h" - -#define APSTUDIO_READONLY_SYMBOLS -///////////////////////////////////////////////////////////////////////////// -// -// Generated from the TEXTINCLUDE 2 resource. -// -#include "winres.h" - -///////////////////////////////////////////////////////////////////////////// -#undef APSTUDIO_READONLY_SYMBOLS - -///////////////////////////////////////////////////////////////////////////// -// English (United States) resources - -#if !defined(AFX_RESOURCE_DLL) || defined(AFX_TARG_ENU) -LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US - -#ifdef APSTUDIO_INVOKED -///////////////////////////////////////////////////////////////////////////// -// -// TEXTINCLUDE -// - -1 TEXTINCLUDE -BEGIN - "resource.h\0" -END - -2 TEXTINCLUDE -BEGIN - "#include ""winres.h""\r\n" - "\0" -END - -3 TEXTINCLUDE -BEGIN - "\r\n" - "\0" -END - -#endif // APSTUDIO_INVOKED - - -///////////////////////////////////////////////////////////////////////////// -// -// Icon -// - -// Icon with lowest ID value placed first to ensure application icon -// remains consistent on all systems. -IDI_APP_ICON ICON "resources\\app_icon.ico" - - -///////////////////////////////////////////////////////////////////////////// -// -// Version -// - -#ifdef FLUTTER_BUILD_NUMBER -#define VERSION_AS_NUMBER FLUTTER_BUILD_NUMBER -#else -#define VERSION_AS_NUMBER 1,0,0 -#endif - -#ifdef FLUTTER_BUILD_NAME -#define VERSION_AS_STRING #FLUTTER_BUILD_NAME -#else -#define VERSION_AS_STRING "1.0.0" -#endif - -VS_VERSION_INFO VERSIONINFO - FILEVERSION VERSION_AS_NUMBER - PRODUCTVERSION VERSION_AS_NUMBER - FILEFLAGSMASK VS_FFI_FILEFLAGSMASK -#ifdef _DEBUG - FILEFLAGS VS_FF_DEBUG -#else - FILEFLAGS 0x0L -#endif - FILEOS VOS__WINDOWS32 - FILETYPE VFT_APP - FILESUBTYPE 0x0L -BEGIN - BLOCK "StringFileInfo" - BEGIN - BLOCK "040904e4" - BEGIN - VALUE "CompanyName", "com.example" "\0" - VALUE "FileDescription", "Demo code for adaptive app development techniques." "\0" - VALUE "FileVersion", VERSION_AS_STRING "\0" - VALUE "InternalName", "adaptive_app_demos" "\0" - VALUE "LegalCopyright", "Copyright (C) 2021 com.example. All rights reserved." "\0" - VALUE "OriginalFilename", "adaptive_app_demos.exe" "\0" - VALUE "ProductName", "adaptive_app_demos" "\0" - VALUE "ProductVersion", VERSION_AS_STRING "\0" - END - END - BLOCK "VarFileInfo" - BEGIN - VALUE "Translation", 0x409, 1252 - END -END - -#endif // English (United States) resources -///////////////////////////////////////////////////////////////////////////// - - - -#ifndef APSTUDIO_INVOKED -///////////////////////////////////////////////////////////////////////////// -// -// Generated from the TEXTINCLUDE 3 resource. -// - - -///////////////////////////////////////////////////////////////////////////// -#endif // not APSTUDIO_INVOKED diff --git a/examples/ui/layout/adaptive_app_demos/windows/runner/flutter_window.cpp b/examples/ui/layout/adaptive_app_demos/windows/runner/flutter_window.cpp deleted file mode 100644 index 41bbc5e034..0000000000 --- a/examples/ui/layout/adaptive_app_demos/windows/runner/flutter_window.cpp +++ /dev/null @@ -1,64 +0,0 @@ -#include "flutter_window.h" - -#include - -#include "flutter/generated_plugin_registrant.h" - -FlutterWindow::FlutterWindow(RunLoop* run_loop, - const flutter::DartProject& project) - : run_loop_(run_loop), project_(project) {} - -FlutterWindow::~FlutterWindow() {} - -bool FlutterWindow::OnCreate() { - if (!Win32Window::OnCreate()) { - return false; - } - - RECT frame = GetClientArea(); - - // The size here must match the window dimensions to avoid unnecessary surface - // creation / destruction in the startup path. - flutter_controller_ = std::make_unique( - frame.right - frame.left, frame.bottom - frame.top, project_); - // Ensure that basic setup of the controller was successful. - if (!flutter_controller_->engine() || !flutter_controller_->view()) { - return false; - } - RegisterPlugins(flutter_controller_->engine()); - run_loop_->RegisterFlutterInstance(flutter_controller_->engine()); - SetChildContent(flutter_controller_->view()->GetNativeWindow()); - return true; -} - -void FlutterWindow::OnDestroy() { - if (flutter_controller_) { - run_loop_->UnregisterFlutterInstance(flutter_controller_->engine()); - flutter_controller_ = nullptr; - } - - Win32Window::OnDestroy(); -} - -LRESULT -FlutterWindow::MessageHandler(HWND hwnd, UINT const message, - WPARAM const wparam, - LPARAM const lparam) noexcept { - // Give Flutter, including plugins, an opportunity to handle window messages. - if (flutter_controller_) { - std::optional result = - flutter_controller_->HandleTopLevelWindowProc(hwnd, message, wparam, - lparam); - if (result) { - return *result; - } - } - - switch (message) { - case WM_FONTCHANGE: - flutter_controller_->engine()->ReloadSystemFonts(); - break; - } - - return Win32Window::MessageHandler(hwnd, message, wparam, lparam); -} diff --git a/examples/ui/layout/adaptive_app_demos/windows/runner/flutter_window.h b/examples/ui/layout/adaptive_app_demos/windows/runner/flutter_window.h deleted file mode 100644 index b663ddd501..0000000000 --- a/examples/ui/layout/adaptive_app_demos/windows/runner/flutter_window.h +++ /dev/null @@ -1,39 +0,0 @@ -#ifndef RUNNER_FLUTTER_WINDOW_H_ -#define RUNNER_FLUTTER_WINDOW_H_ - -#include -#include - -#include - -#include "run_loop.h" -#include "win32_window.h" - -// A window that does nothing but host a Flutter view. -class FlutterWindow : public Win32Window { - public: - // Creates a new FlutterWindow driven by the |run_loop|, hosting a - // Flutter view running |project|. - explicit FlutterWindow(RunLoop* run_loop, - const flutter::DartProject& project); - virtual ~FlutterWindow(); - - protected: - // Win32Window: - bool OnCreate() override; - void OnDestroy() override; - LRESULT MessageHandler(HWND window, UINT const message, WPARAM const wparam, - LPARAM const lparam) noexcept override; - - private: - // The run loop driving events for this window. - RunLoop* run_loop_; - - // The project to run. - flutter::DartProject project_; - - // The Flutter instance hosted by this window. - std::unique_ptr flutter_controller_; -}; - -#endif // RUNNER_FLUTTER_WINDOW_H_ diff --git a/examples/ui/layout/adaptive_app_demos/windows/runner/main.cpp b/examples/ui/layout/adaptive_app_demos/windows/runner/main.cpp deleted file mode 100644 index 13efba2d4e..0000000000 --- a/examples/ui/layout/adaptive_app_demos/windows/runner/main.cpp +++ /dev/null @@ -1,45 +0,0 @@ -#include -auto bdw = bitsdojo_window_configure(BDW_CUSTOM_FRAME | BDW_HIDE_ON_STARTUP); - -#include -#include -#include - -#include "flutter_window.h" -#include "run_loop.h" -#include "utils.h" - -int APIENTRY wWinMain(_In_ HINSTANCE instance, _In_opt_ HINSTANCE prev, - _In_ wchar_t *command_line, _In_ int show_command) { - // Attach to console when present (e.g., 'flutter run') or create a - // new console when running with a debugger. - if (!::AttachConsole(ATTACH_PARENT_PROCESS) && ::IsDebuggerPresent()) { - CreateAndAttachConsole(); - } - - // Initialize COM, so that it is available for use in the library and/or - // plugins. - ::CoInitializeEx(nullptr, COINIT_APARTMENTTHREADED); - - RunLoop run_loop; - - flutter::DartProject project(L"data"); - - std::vector command_line_arguments = - GetCommandLineArguments(); - - project.set_dart_entrypoint_arguments(std::move(command_line_arguments)); - - FlutterWindow window(&run_loop, project); - Win32Window::Point origin(10, 10); - Win32Window::Size size(1280, 720); - if (!window.CreateAndShow(L"adaptive_app_demos", origin, size)) { - return EXIT_FAILURE; - } - window.SetQuitOnClose(true); - - run_loop.Run(); - - ::CoUninitialize(); - return EXIT_SUCCESS; -} diff --git a/examples/ui/layout/adaptive_app_demos/windows/runner/resource.h b/examples/ui/layout/adaptive_app_demos/windows/runner/resource.h deleted file mode 100644 index 66a65d1e4a..0000000000 --- a/examples/ui/layout/adaptive_app_demos/windows/runner/resource.h +++ /dev/null @@ -1,16 +0,0 @@ -//{{NO_DEPENDENCIES}} -// Microsoft Visual C++ generated include file. -// Used by Runner.rc -// -#define IDI_APP_ICON 101 - -// Next default values for new objects -// -#ifdef APSTUDIO_INVOKED -#ifndef APSTUDIO_READONLY_SYMBOLS -#define _APS_NEXT_RESOURCE_VALUE 102 -#define _APS_NEXT_COMMAND_VALUE 40001 -#define _APS_NEXT_CONTROL_VALUE 1001 -#define _APS_NEXT_SYMED_VALUE 101 -#endif -#endif diff --git a/examples/ui/layout/adaptive_app_demos/windows/runner/resources/app_icon.ico b/examples/ui/layout/adaptive_app_demos/windows/runner/resources/app_icon.ico deleted file mode 100644 index c04e20caf6370ebb9253ad831cc31de4a9c965f6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 33772 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 diff --git a/examples/ui/layout/adaptive_app_demos/windows/runner/run_loop.cpp b/examples/ui/layout/adaptive_app_demos/windows/runner/run_loop.cpp deleted file mode 100644 index 2d6636ab6b..0000000000 --- a/examples/ui/layout/adaptive_app_demos/windows/runner/run_loop.cpp +++ /dev/null @@ -1,66 +0,0 @@ -#include "run_loop.h" - -#include - -#include - -RunLoop::RunLoop() {} - -RunLoop::~RunLoop() {} - -void RunLoop::Run() { - bool keep_running = true; - TimePoint next_flutter_event_time = TimePoint::clock::now(); - while (keep_running) { - std::chrono::nanoseconds wait_duration = - std::max(std::chrono::nanoseconds(0), - next_flutter_event_time - TimePoint::clock::now()); - ::MsgWaitForMultipleObjects( - 0, nullptr, FALSE, static_cast(wait_duration.count() / 1000), - QS_ALLINPUT); - bool processed_events = false; - MSG message; - // All pending Windows messages must be processed; MsgWaitForMultipleObjects - // won't return again for items left in the queue after PeekMessage. - while (::PeekMessage(&message, nullptr, 0, 0, PM_REMOVE)) { - processed_events = true; - if (message.message == WM_QUIT) { - keep_running = false; - break; - } - ::TranslateMessage(&message); - ::DispatchMessage(&message); - // Allow Flutter to process messages each time a Windows message is - // processed, to prevent starvation. - next_flutter_event_time = - std::min(next_flutter_event_time, ProcessFlutterMessages()); - } - // If the PeekMessage loop didn't run, process Flutter messages. - if (!processed_events) { - next_flutter_event_time = - std::min(next_flutter_event_time, ProcessFlutterMessages()); - } - } -} - -void RunLoop::RegisterFlutterInstance( - flutter::FlutterEngine* flutter_instance) { - flutter_instances_.insert(flutter_instance); -} - -void RunLoop::UnregisterFlutterInstance( - flutter::FlutterEngine* flutter_instance) { - flutter_instances_.erase(flutter_instance); -} - -RunLoop::TimePoint RunLoop::ProcessFlutterMessages() { - TimePoint next_event_time = TimePoint::max(); - for (auto instance : flutter_instances_) { - std::chrono::nanoseconds wait_duration = instance->ProcessMessages(); - if (wait_duration != std::chrono::nanoseconds::max()) { - next_event_time = - std::min(next_event_time, TimePoint::clock::now() + wait_duration); - } - } - return next_event_time; -} diff --git a/examples/ui/layout/adaptive_app_demos/windows/runner/run_loop.h b/examples/ui/layout/adaptive_app_demos/windows/runner/run_loop.h deleted file mode 100644 index 000d362463..0000000000 --- a/examples/ui/layout/adaptive_app_demos/windows/runner/run_loop.h +++ /dev/null @@ -1,40 +0,0 @@ -#ifndef RUNNER_RUN_LOOP_H_ -#define RUNNER_RUN_LOOP_H_ - -#include - -#include -#include - -// A runloop that will service events for Flutter instances as well -// as native messages. -class RunLoop { - public: - RunLoop(); - ~RunLoop(); - - // Prevent copying - RunLoop(RunLoop const&) = delete; - RunLoop& operator=(RunLoop const&) = delete; - - // Runs the run loop until the application quits. - void Run(); - - // Registers the given Flutter instance for event servicing. - void RegisterFlutterInstance( - flutter::FlutterEngine* flutter_instance); - - // Unregisters the given Flutter instance from event servicing. - void UnregisterFlutterInstance( - flutter::FlutterEngine* flutter_instance); - - private: - using TimePoint = std::chrono::steady_clock::time_point; - - // Processes all currently pending messages for registered Flutter instances. - TimePoint ProcessFlutterMessages(); - - std::set flutter_instances_; -}; - -#endif // RUNNER_RUN_LOOP_H_ diff --git a/examples/ui/layout/adaptive_app_demos/windows/runner/runner.exe.manifest b/examples/ui/layout/adaptive_app_demos/windows/runner/runner.exe.manifest deleted file mode 100644 index c977c4a425..0000000000 --- a/examples/ui/layout/adaptive_app_demos/windows/runner/runner.exe.manifest +++ /dev/null @@ -1,20 +0,0 @@ - - - - - PerMonitorV2 - - - - - - - - - - - - - - - diff --git a/examples/ui/layout/adaptive_app_demos/windows/runner/utils.cpp b/examples/ui/layout/adaptive_app_demos/windows/runner/utils.cpp deleted file mode 100644 index d19bdbbcc3..0000000000 --- a/examples/ui/layout/adaptive_app_demos/windows/runner/utils.cpp +++ /dev/null @@ -1,64 +0,0 @@ -#include "utils.h" - -#include -#include -#include -#include - -#include - -void CreateAndAttachConsole() { - if (::AllocConsole()) { - FILE *unused; - if (freopen_s(&unused, "CONOUT$", "w", stdout)) { - _dup2(_fileno(stdout), 1); - } - if (freopen_s(&unused, "CONOUT$", "w", stderr)) { - _dup2(_fileno(stdout), 2); - } - std::ios::sync_with_stdio(); - FlutterDesktopResyncOutputStreams(); - } -} - -std::vector GetCommandLineArguments() { - // Convert the UTF-16 command line arguments to UTF-8 for the Engine to use. - int argc; - wchar_t** argv = ::CommandLineToArgvW(::GetCommandLineW(), &argc); - if (argv == nullptr) { - return std::vector(); - } - - std::vector command_line_arguments; - - // Skip the first argument as it's the binary name. - for (int i = 1; i < argc; i++) { - command_line_arguments.push_back(Utf8FromUtf16(argv[i])); - } - - ::LocalFree(argv); - - return command_line_arguments; -} - -std::string Utf8FromUtf16(const wchar_t* utf16_string) { - if (utf16_string == nullptr) { - return std::string(); - } - int target_length = ::WideCharToMultiByte( - CP_UTF8, WC_ERR_INVALID_CHARS, utf16_string, - -1, nullptr, 0, nullptr, nullptr); - if (target_length == 0) { - return std::string(); - } - std::string utf8_string; - utf8_string.resize(target_length); - int converted_length = ::WideCharToMultiByte( - CP_UTF8, WC_ERR_INVALID_CHARS, utf16_string, - -1, utf8_string.data(), - target_length, nullptr, nullptr); - if (converted_length == 0) { - return std::string(); - } - return utf8_string; -} diff --git a/examples/ui/layout/adaptive_app_demos/windows/runner/utils.h b/examples/ui/layout/adaptive_app_demos/windows/runner/utils.h deleted file mode 100644 index 3879d54755..0000000000 --- a/examples/ui/layout/adaptive_app_demos/windows/runner/utils.h +++ /dev/null @@ -1,19 +0,0 @@ -#ifndef RUNNER_UTILS_H_ -#define RUNNER_UTILS_H_ - -#include -#include - -// Creates a console for the process, and redirects stdout and stderr to -// it for both the runner and the Flutter library. -void CreateAndAttachConsole(); - -// Takes a null-terminated wchar_t* encoded in UTF-16 and returns a std::string -// encoded in UTF-8. Returns an empty std::string on failure. -std::string Utf8FromUtf16(const wchar_t* utf16_string); - -// Gets the command line arguments passed in as a std::vector, -// encoded in UTF-8. Returns an empty std::vector on failure. -std::vector GetCommandLineArguments(); - -#endif // RUNNER_UTILS_H_ diff --git a/examples/ui/layout/adaptive_app_demos/windows/runner/win32_window.cpp b/examples/ui/layout/adaptive_app_demos/windows/runner/win32_window.cpp deleted file mode 100644 index c10f08dc7d..0000000000 --- a/examples/ui/layout/adaptive_app_demos/windows/runner/win32_window.cpp +++ /dev/null @@ -1,245 +0,0 @@ -#include "win32_window.h" - -#include - -#include "resource.h" - -namespace { - -constexpr const wchar_t kWindowClassName[] = L"FLUTTER_RUNNER_WIN32_WINDOW"; - -// The number of Win32Window objects that currently exist. -static int g_active_window_count = 0; - -using EnableNonClientDpiScaling = BOOL __stdcall(HWND hwnd); - -// Scale helper to convert logical scaler values to physical using passed in -// scale factor -int Scale(int source, double scale_factor) { - return static_cast(source * scale_factor); -} - -// Dynamically loads the |EnableNonClientDpiScaling| from the User32 module. -// This API is only needed for PerMonitor V1 awareness mode. -void EnableFullDpiSupportIfAvailable(HWND hwnd) { - HMODULE user32_module = LoadLibraryA("User32.dll"); - if (!user32_module) { - return; - } - auto enable_non_client_dpi_scaling = - reinterpret_cast( - GetProcAddress(user32_module, "EnableNonClientDpiScaling")); - if (enable_non_client_dpi_scaling != nullptr) { - enable_non_client_dpi_scaling(hwnd); - FreeLibrary(user32_module); - } -} - -} // namespace - -// Manages the Win32Window's window class registration. -class WindowClassRegistrar { - public: - ~WindowClassRegistrar() = default; - - // Returns the singleton registar instance. - static WindowClassRegistrar* GetInstance() { - if (!instance_) { - instance_ = new WindowClassRegistrar(); - } - return instance_; - } - - // Returns the name of the window class, registering the class if it hasn't - // previously been registered. - const wchar_t* GetWindowClass(); - - // Unregisters the window class. Should only be called if there are no - // instances of the window. - void UnregisterWindowClass(); - - private: - WindowClassRegistrar() = default; - - static WindowClassRegistrar* instance_; - - bool class_registered_ = false; -}; - -WindowClassRegistrar* WindowClassRegistrar::instance_ = nullptr; - -const wchar_t* WindowClassRegistrar::GetWindowClass() { - if (!class_registered_) { - WNDCLASS window_class{}; - window_class.hCursor = LoadCursor(nullptr, IDC_ARROW); - window_class.lpszClassName = kWindowClassName; - window_class.style = CS_HREDRAW | CS_VREDRAW; - window_class.cbClsExtra = 0; - window_class.cbWndExtra = 0; - window_class.hInstance = GetModuleHandle(nullptr); - window_class.hIcon = - LoadIcon(window_class.hInstance, MAKEINTRESOURCE(IDI_APP_ICON)); - window_class.hbrBackground = 0; - window_class.lpszMenuName = nullptr; - window_class.lpfnWndProc = Win32Window::WndProc; - RegisterClass(&window_class); - class_registered_ = true; - } - return kWindowClassName; -} - -void WindowClassRegistrar::UnregisterWindowClass() { - UnregisterClass(kWindowClassName, nullptr); - class_registered_ = false; -} - -Win32Window::Win32Window() { - ++g_active_window_count; -} - -Win32Window::~Win32Window() { - --g_active_window_count; - Destroy(); -} - -bool Win32Window::CreateAndShow(const std::wstring& title, - const Point& origin, - const Size& size) { - Destroy(); - - const wchar_t* window_class = - WindowClassRegistrar::GetInstance()->GetWindowClass(); - - const POINT target_point = {static_cast(origin.x), - static_cast(origin.y)}; - HMONITOR monitor = MonitorFromPoint(target_point, MONITOR_DEFAULTTONEAREST); - UINT dpi = FlutterDesktopGetDpiForMonitor(monitor); - double scale_factor = dpi / 96.0; - - HWND window = CreateWindow( - window_class, title.c_str(), WS_OVERLAPPEDWINDOW | WS_VISIBLE, - Scale(origin.x, scale_factor), Scale(origin.y, scale_factor), - Scale(size.width, scale_factor), Scale(size.height, scale_factor), - nullptr, nullptr, GetModuleHandle(nullptr), this); - - if (!window) { - return false; - } - - return OnCreate(); -} - -// static -LRESULT CALLBACK Win32Window::WndProc(HWND const window, - UINT const message, - WPARAM const wparam, - LPARAM const lparam) noexcept { - if (message == WM_NCCREATE) { - auto window_struct = reinterpret_cast(lparam); - SetWindowLongPtr(window, GWLP_USERDATA, - reinterpret_cast(window_struct->lpCreateParams)); - - auto that = static_cast(window_struct->lpCreateParams); - EnableFullDpiSupportIfAvailable(window); - that->window_handle_ = window; - } else if (Win32Window* that = GetThisFromHandle(window)) { - return that->MessageHandler(window, message, wparam, lparam); - } - - return DefWindowProc(window, message, wparam, lparam); -} - -LRESULT -Win32Window::MessageHandler(HWND hwnd, - UINT const message, - WPARAM const wparam, - LPARAM const lparam) noexcept { - switch (message) { - case WM_DESTROY: - window_handle_ = nullptr; - Destroy(); - if (quit_on_close_) { - PostQuitMessage(0); - } - return 0; - - case WM_DPICHANGED: { - auto newRectSize = reinterpret_cast(lparam); - LONG newWidth = newRectSize->right - newRectSize->left; - LONG newHeight = newRectSize->bottom - newRectSize->top; - - SetWindowPos(hwnd, nullptr, newRectSize->left, newRectSize->top, newWidth, - newHeight, SWP_NOZORDER | SWP_NOACTIVATE); - - return 0; - } - case WM_SIZE: { - RECT rect = GetClientArea(); - if (child_content_ != nullptr) { - // Size and position the child window. - MoveWindow(child_content_, rect.left, rect.top, rect.right - rect.left, - rect.bottom - rect.top, TRUE); - } - return 0; - } - - case WM_ACTIVATE: - if (child_content_ != nullptr) { - SetFocus(child_content_); - } - return 0; - } - - return DefWindowProc(window_handle_, message, wparam, lparam); -} - -void Win32Window::Destroy() { - OnDestroy(); - - if (window_handle_) { - DestroyWindow(window_handle_); - window_handle_ = nullptr; - } - if (g_active_window_count == 0) { - WindowClassRegistrar::GetInstance()->UnregisterWindowClass(); - } -} - -Win32Window* Win32Window::GetThisFromHandle(HWND const window) noexcept { - return reinterpret_cast( - GetWindowLongPtr(window, GWLP_USERDATA)); -} - -void Win32Window::SetChildContent(HWND content) { - child_content_ = content; - SetParent(content, window_handle_); - RECT frame = GetClientArea(); - - MoveWindow(content, frame.left, frame.top, frame.right - frame.left, - frame.bottom - frame.top, true); - - SetFocus(child_content_); -} - -RECT Win32Window::GetClientArea() { - RECT frame; - GetClientRect(window_handle_, &frame); - return frame; -} - -HWND Win32Window::GetHandle() { - return window_handle_; -} - -void Win32Window::SetQuitOnClose(bool quit_on_close) { - quit_on_close_ = quit_on_close; -} - -bool Win32Window::OnCreate() { - // No-op; provided for subclasses. - return true; -} - -void Win32Window::OnDestroy() { - // No-op; provided for subclasses. -} diff --git a/examples/ui/layout/adaptive_app_demos/windows/runner/win32_window.h b/examples/ui/layout/adaptive_app_demos/windows/runner/win32_window.h deleted file mode 100644 index 17ba431125..0000000000 --- a/examples/ui/layout/adaptive_app_demos/windows/runner/win32_window.h +++ /dev/null @@ -1,98 +0,0 @@ -#ifndef RUNNER_WIN32_WINDOW_H_ -#define RUNNER_WIN32_WINDOW_H_ - -#include - -#include -#include -#include - -// A class abstraction for a high DPI-aware Win32 Window. Intended to be -// inherited from by classes that wish to specialize with custom -// rendering and input handling -class Win32Window { - public: - struct Point { - unsigned int x; - unsigned int y; - Point(unsigned int x, unsigned int y) : x(x), y(y) {} - }; - - struct Size { - unsigned int width; - unsigned int height; - Size(unsigned int width, unsigned int height) - : width(width), height(height) {} - }; - - Win32Window(); - virtual ~Win32Window(); - - // Creates and shows a win32 window with |title| and position and size using - // |origin| and |size|. New windows are created on the default monitor. Window - // sizes are specified to the OS in physical pixels, hence to ensure a - // consistent size to will treat the width height passed in to this function - // as logical pixels and scale to appropriate for the default monitor. Returns - // true if the window was created successfully. - bool CreateAndShow(const std::wstring& title, - const Point& origin, - const Size& size); - - // Release OS resources associated with window. - void Destroy(); - - // Inserts |content| into the window tree. - void SetChildContent(HWND content); - - // Returns the backing Window handle to enable clients to set icon and other - // window properties. Returns nullptr if the window has been destroyed. - HWND GetHandle(); - - // If true, closing this window will quit the application. - void SetQuitOnClose(bool quit_on_close); - - // Return a RECT representing the bounds of the current client area. - RECT GetClientArea(); - - protected: - // Processes and route salient window messages for mouse handling, - // size change and DPI. Delegates handling of these to member overloads that - // inheriting classes can handle. - virtual LRESULT MessageHandler(HWND window, - UINT const message, - WPARAM const wparam, - LPARAM const lparam) noexcept; - - // Called when CreateAndShow is called, allowing subclass window-related - // setup. Subclasses should return false if setup fails. - virtual bool OnCreate(); - - // Called when Destroy is called. - virtual void OnDestroy(); - - private: - friend class WindowClassRegistrar; - - // OS callback called by message pump. Handles the WM_NCCREATE message which - // is passed when the non-client area is being created and enables automatic - // non-client DPI scaling so that the non-client area automatically - // responsponds to changes in DPI. All other messages are handled by - // MessageHandler. - static LRESULT CALLBACK WndProc(HWND const window, - UINT const message, - WPARAM const wparam, - LPARAM const lparam) noexcept; - - // Retrieves a class instance pointer for |window| - static Win32Window* GetThisFromHandle(HWND const window) noexcept; - - bool quit_on_close_ = false; - - // window handle for top level window. - HWND window_handle_ = nullptr; - - // window handle for hosted content. - HWND child_content_ = nullptr; -}; - -#endif // RUNNER_WIN32_WINDOW_H_ diff --git a/src/docs/development/ui/layout/building-adaptive-apps.md b/src/docs/development/ui/layout/building-adaptive-apps.md index f4aef9001d..5f6f6ba198 100644 --- a/src/docs/development/ui/layout/building-adaptive-apps.md +++ b/src/docs/development/ui/layout/building-adaptive-apps.md @@ -248,11 +248,11 @@ and define it in terms of small to large: enum ScreenSize { Small, Normal, Large, ExtraLarge } ScreenSize getSize(BuildContext context) { - double deviceWidth = MediaQuery.of(context).size.shortestSide; - if (deviceWidth > 900) return ScreenSize.ExtraLarge; - if (deviceWidth > 600) return ScreenSize.Large; - if (deviceWidth > 300) return ScreenSize.Normal; - return ScreenSize.Small; + double deviceWidth = MediaQuery.of(context).size.shortestSide; + if (deviceWidth > 900) return ScreenSize.ExtraLarge; + if (deviceWidth > 600) return ScreenSize.Large; + if (deviceWidth > 300) return ScreenSize.Normal; + return ScreenSize.Small; } ``` @@ -265,27 +265,24 @@ You can also use screen-based breakpoints to reflow your top-level widget trees. For example, you could switch from a vertical to a horizontal layout when the user isn’t on a handset: - + ```dart bool isHandset = MediaQuery.of(context).size.width < 600; return Flex( - children: [...], - direction: isHandset ? - Axis.vertical : - Axis.horizontal -); + children: [Text("Foo"), Text("Bar"), Text("Baz")], + direction: isHandset ? Axis.vertical : Axis.horizontal); ``` In another widget, you might swap some of the children completely: - + ```dart -Widget foo = Row(children: [ - BackButton(), - ...isHandset ? - _getHandsetChildren() : - _getNormalChildren(), -],); +Widget foo = Row( + children: [ + BackButton(), + ...isHandset ? _getHandsetChildren() : _getNormalChildren(), + ], +); ``` #### Use LayoutBuilder for extra flexibility @@ -304,15 +301,14 @@ depended on a global value. The previous example could be rewritten using `LayoutBuilder`: - + ```dart -Widget foo = LayoutBuilder(builder: (_, constraints, __){ - bool useVerticalLayout = constraints.maxWidth < 400.0; - return Flex( - children: [...], - direction: useVerticalLayout ? - Axis.vertical : Axis.horizontal - ); +Widget foo = LayoutBuilder( + builder: (BuildContext context, BoxConstraints constraints) { + bool useVerticalLayout = constraints.maxWidth < 400.0; + return Flex( + children: [Text("Hello"), Text("World")], + direction: useVerticalLayout ? Axis.vertical : Axis.horizontal); }); ``` @@ -334,7 +330,7 @@ you can use the [`Platform`][] API along with the `kIsWeb` value: [`Platform`]: {{site.api}}/flutter/package-platform_platform/Platform-class.html - + ```dart bool get isMobileDevice => !kIsWeb && (Platform.isIOS || Platform.isAndroid); bool get isDesktopDevice => @@ -356,35 +352,36 @@ if you create a single source of truth for styling values like padding, spacing, corner shape, font sizes, and so on. This can be done easily with some helper classes: - + ```dart -class Insets { - static const double xsmall = 4; - static const double small = 8; - // etc +class InsetValues { + static const double xsmall = 4; + static const double small = 8; + // etc } - class Fonts { - static const String raleway = 'Raleway'; - // etc + static const String raleway = 'Raleway'; + // etc } -class TextStyles { - static const TextStyle raleway = const TextStyle(fontFamily: Fonts.raleway, ... ); - static late TextStyle body1 = raleway.copyWith( ... ); - // etc +class TextStylesValues { + static const TextStyle raleway = const TextStyle( + fontFamily: Fonts.raleway, + ); + static late TextStyle body1 = raleway.copyWith(color: Color(0xFF42A5F5)); + // etc } ``` These constants can then be used in place of hard-coded numeric values: - + ```dart return Padding( - insets: EdgeInsets.all(Insets.small), - child: Text('Hello!', style: TextStyles.body1) -) + padding: EdgeInsets.all(InsetValues.small), + child: Text('Hello!', style: TextStylesValues.body1), +); ``` With all views referencing the same shared-design system rules, @@ -492,14 +489,13 @@ If you need to implement custom scroll behavior, you can use the [`Listener`][] widget, which lets you customize how your UI reacts to the scroll wheel. - + ```dart return Listener( - onPointerSignal: (event) { - if (event is PointerScrollEvent) print(event.scrollDelta.dy); - }, - child: ... -); + onPointerSignal: (event) { + if (event is PointerScrollEvent) print(event.scrollDelta.dy); + }, + child: Container()); ``` [`Listener`]: {{site.api}}/flutter/widgets/Listener-class.html @@ -573,14 +569,14 @@ of the tree that should be treated as a group when tabbing. For example, you might to tab through all the fields in a form before tabbing to the submit button: - + ```dart return Column(children: [ - FocusTraversalGroup( - child: MyFormWithMultipleColumnsAndRows(); - ), - SubmitButton(), -]) + FocusTraversalGroup( + child: MyFormWithMultipleColumnsAndRows(), + ), + SubmitButton(), +]); ``` Flutter has several built-in ways to traverse widgets and groups, @@ -635,7 +631,7 @@ already has a focus node, you can wrap it in a If you’d like to apply a set of keyboard shortcuts to a large section of the tree, you can use the [`Shortcuts`][] widget: - + ```dart // Define a class for each type of shortcut action you want class CreateNewItemIntent extends Intent { @@ -646,7 +642,8 @@ Widget build(BuildContext context) { return Shortcuts( // Bind intents to key combinations shortcuts: { - SingleActivator(LogicalKeyboardKey.keyN, control: true): CreateNewItemIntent(), + SingleActivator(LogicalKeyboardKey.keyN, control: true): + CreateNewItemIntent(), }, child: Actions( // Bind intents to an actual method in your code @@ -654,10 +651,10 @@ Widget build(BuildContext context) { CreateNewItemIntent: CallbackAction( onInvoke: (CreateNewItemIntent intent) => _createNewItem()), }, - // Your sub-tree must be wrapped in a focusNode, so it can take focus. + // Your sub-tree must be wrapped in a focusNode, so it can take focus. child: Focus( autofocus: true, - child: ..., + child: Container(), ), ), ); @@ -674,7 +671,7 @@ panels that can accept shortcuts whenever they're visible (regardless of their focus state). Adding global listeners is easy with [`RawKeyboard`][]: - + ```dart void initState() { super.initState(); @@ -693,7 +690,7 @@ you can use the `RawKeyboard.instance.keysPressed` map. For example, a method like the following can check whether any of the provided keys are being held down: - + ```dart static bool isKeyDown(Set keys) { return keys.intersection(RawKeyboard.instance.keysPressed).isNotEmpty; @@ -703,12 +700,12 @@ static bool isKeyDown(Set keys) { Putting these two things together, you can fire an action when `Shift+N` is pressed: - + ```dart -void _handleKey(event){ +void _handleKey(event) { if (event is RawKeyDownEvent) { bool isShiftDown = isKeyDown({ - LogicalKeyboardKey.shiftLeft, + LogicalKeyboardKey.shiftLeft, LogicalKeyboardKey.shiftRight, }); if (isShiftDown && event.logicalKey == LogicalKeyboardKey.keyN) { @@ -764,13 +761,16 @@ return MouseRegion( `MouseRegion` is also useful for creating custom rollover and hover effects: - + ```dart return MouseRegion( onEnter: (_) => setState(() => _isMouseOver = true), onExit: (_) => setState(() => _isMouseOver = false), onHover: (PointerHoverEvent e) => print(e.localPosition), - child: ..., + child: Container( + height: 500, + color: _isMouseOver ? Colors.blue : Colors.black, + ), ); ``` @@ -900,23 +900,25 @@ comfortable on a given platform. Dealing with multi-select within a list is another area with subtle differences across platforms: - + ```dart -static bool get isSpanSelectModifierDown - => isKeyDown([LogicalKeyboardKey.shiftLeft, LogicalKeyboardKey.shiftRight]); +static bool get isSpanSelectModifierDown => + isKeyDown({LogicalKeyboardKey.shiftLeft, LogicalKeyboardKey.shiftRight}); ``` To perform a platform-aware check for control or command, you can write something like this: - + ```dart static bool get isMultiSelectModifierDown { bool isDown = false; - if (DeviceOS.isMacOS) { - isDown = isKeyDown([LogicalKeyboardKey.metaLeft, LogicalKeyboardKey.metaRight]); + if (Platform.isMacOS) { + isDown = isKeyDown( + {LogicalKeyboardKey.metaLeft, LogicalKeyboardKey.metaRight}); } else { - isDown = isKeyDown([LogicalKeyboardKey.controlLeft, LogicalKeyboardKey.controlRight]); + isDown = isKeyDown( + {LogicalKeyboardKey.controlLeft, LogicalKeyboardKey.controlRight}); } return isDown; } @@ -950,19 +952,23 @@ users on the web tend to have an adverse reaction. Luckily, this is easy to support with the [`SelectableText`][] widget: - + ```dart return SelectableText('Select me!'); ``` To support rich text, then use `TextSpan`: - + ```dart -return SelectableText.rich(TextSpan(children: [ - TextSpan(text: 'Hello'), - TextSpan(text: 'Bold', style: TextStyle(fontWeight: FontWeight.bold)), -])); +return SelectableText.rich( + TextSpan( + children: [ + TextSpan(text: 'Hello'), + TextSpan(text: 'Bold', style: TextStyle(fontWeight: FontWeight.bold)), + ], + ), +); ``` [`SelectableText`]: {{site.api}}/flutter/material/SelectableText-class.html @@ -1018,7 +1024,7 @@ and positioned: To show basic tooltips in Flutter, use the built-in [`Tooltip`][] widget: - + ```dart return const Tooltip( message: 'I am a Tooltip', From a90c85f919c43e971e09a2eaeeb5663354002672 Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Fri, 29 Oct 2021 15:40:41 -0500 Subject: [PATCH 12/64] code excerpt migration for --- --- assets-and-images.md --- .../assets_and_images/analysis_options.yaml | 29 ++++++ .../assets_and_images/graphics/background.png | Bin 0 -> 1313038 bytes .../ui/assets_and_images/graphics/my_icon.png | Bin 0 -> 317569 bytes examples/ui/assets_and_images/lib/main.dart | 42 +++++++++ examples/ui/assets_and_images/pubspec.yaml | 89 ++++++++++++++++++ src/docs/development/ui/assets-and-images.md | 13 +-- 6 files changed, 167 insertions(+), 6 deletions(-) create mode 100644 examples/ui/assets_and_images/analysis_options.yaml create mode 100644 examples/ui/assets_and_images/graphics/background.png create mode 100644 examples/ui/assets_and_images/graphics/my_icon.png create mode 100644 examples/ui/assets_and_images/lib/main.dart create mode 100644 examples/ui/assets_and_images/pubspec.yaml diff --git a/examples/ui/assets_and_images/analysis_options.yaml b/examples/ui/assets_and_images/analysis_options.yaml new file mode 100644 index 0000000000..61b6c4de17 --- /dev/null +++ b/examples/ui/assets_and_images/analysis_options.yaml @@ -0,0 +1,29 @@ +# This file configures the analyzer, which statically analyzes Dart code to +# check for errors, warnings, and lints. +# +# The issues identified by the analyzer are surfaced in the UI of Dart-enabled +# IDEs (https://dart.dev/tools#ides-and-editors). The analyzer can also be +# invoked from the command line by running `flutter analyze`. + +# The following line activates a set of recommended lints for Flutter apps, +# packages, and plugins designed to encourage good coding practices. +include: package:flutter_lints/flutter.yaml + +linter: + # The lint rules applied to this project can be customized in the + # section below to disable rules from the `package:flutter_lints/flutter.yaml` + # included above or to enable additional rules. A list of all available lints + # and their documentation is published at + # https://dart-lang.github.io/linter/lints/index.html. + # + # Instead of disabling a lint rule for the entire project in the + # section below, it can also be suppressed for a single line of code + # or a specific dart file by using the `// ignore: name_of_lint` and + # `// ignore_for_file: name_of_lint` syntax on the line or in the file + # producing the lint. + rules: + # avoid_print: false # Uncomment to disable the `avoid_print` rule + # prefer_single_quotes: true # Uncomment to enable the `prefer_single_quotes` rule + +# Additional information about this file can be found at +# https://dart.dev/guides/language/analysis-options diff --git a/examples/ui/assets_and_images/graphics/background.png b/examples/ui/assets_and_images/graphics/background.png new file mode 100644 index 0000000000000000000000000000000000000000..1bc292f7681a5a0fed673dfe7601e7eafca89ba2 GIT binary patch literal 1313038 zcmY(qcUTiq_bp6OP!SN7-UI|J6zMI1NC`?4QA%h+=ppnLN)SYzcOueT=uLVJ zH9&ySYbZh>bhy61a_{%eJkOkU_FjAKv*(YQ^PDpi{#F}EeTU@^2?+`HYju@(BqZb; zBqU@fwT{vXP}lO)uh zwt5)!_D?LVnZ(*NhpB>P`4`9>!B|6;O}{}8j@tfv1HF|vPe=wYa(DGPRn3Rze= zTUrbGKwbVrAOZNu{)13!4~s`WP)8?sSs!`s|6<7g!~Zc0b3ghoiU&lV+feK6BV}hd z>qnA8FN9ujE8KbX=n=rp%0~8`irW8#|Le(f+j)4n$O;R4dwUCciwQZq*$Ruu$jAu4 z5ET{`75v8#bcZ>4SojD!x%2$D$p7l7Si6JW>|H$Uot+;2N7usA+0#RwoBKbB{_pYM z@2KZE)2O8?9HuT+IQ0O9|8+Z66Fn=Mk3kh~;$t)leahjhEi9$}>s%g&Hg-3YBW zm$F^F_fX|+;LD6dCG(qCUKZ+i?%g2$bC;J!$$m<{skz#$30q;+eVLA5^BSDJ6ry8J z`Z03ZH#Zo~ZtNfKCx%M7KH6)!^oi{r9HdS@-QNe_M}y}I$~YknV_J@s(S7<|f60@6 zkQ-ax8~75ON;|dkVgv)1SHS*YXzt$#OJDakcD!3O)ZevnTKRL;Q2K#N^v`q@sFx4B}!>^%{+<86A~Y7?)c@tR$b_ zzcgd>8Z`7@uieQ12vLFKYcw8{V52_*MI@Vb<(3>ZC55+uD;=?{f>s!Pd}*FDI0Kw; z)5fW?@=#}^)1Sv&q}bosdW zi59&k`QMZBM>VnLQBRM!maz=}13`k)4vGQ#(1y-*$rX#jWga!4a%#fn6&6q>c!p`g z0A<x%K@6%zD_&a-@TL5fZt(@jErb8=5+K zKQyX=k#ViB{UyWZMtfzBQ|1{f5hZlX@{Gc#2nSC=0px_I^DyU| zQT6eNiMR<>BloGv1mAH2d6Po?$C*mf{4+4s4TFP^+YM5tzF)bL$zfZQ29&IBwyCU| zaj((or_QT2UVnkwheuPE$B{7I)emOtvwwE>1FMRoVS>jTGfmCXlMonY!S7V5MIt%@ zs?mMoS56n2VAz%14ZEoa1co7Cj(N==%(H9!OF1PND839h^ zHPhG^OlnH#L);Xv2!HOM5AzzfL&Af8Po0^ZJSr#sV1v@>RaRuAW49^1RoQs3$Ch85=+} zQ&CN*gHnrN;5)Tb-STb@9NBu+$g0De97m24+OMzxs>rX6z$%E01V;cywI31od@1Zg z}2#XH*zQg;9CZC=eY=~hkZG;3!n-!wGn6laf_8ns71Ti)HY zrj8dx;21&!&Km}^tP4$516Xkb$cL2!Ji5|4b8)=8;b3BAT;*zIjanRD=AOkX^DiI; zj�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

#5Ol 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ⅈ1$`k%QshHkptT@wKmgZPL-DN7?C;H;nN@ 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≫a_{yk19zJB$?)ldHR$H5}U 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

YgC^=Wj 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

Ro&5AMy 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�{9NXfoVS;!^W9Z*?N4FwJz|EbT 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

  • |S<|@@c_aBRslT(iYpt@{8nJ$7C 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 TN4bhEcc*O7aSM1c~{O|XK` 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
    LbncB;rY$*W-u}@KrvLaC|7p72o~+!lce)u3 zd+OHD_IeqN+!?A|V-`|X(ZrI=R z7-7(XksCibZ{2M@USkLjY?mB7v_HpiC3VZ%<8B;jMX#-)H8xgu0bTy%AHP05|NL`d zin%%3aPIWH;i&07GSd(klX^03NDf|$4qkizOidLz+sfQaHlacNIrNWU;Cqqh4A>RP zg!MTKw`ORPmt-I#Q_y310t*g~T;oMP=bZ_$)YTtN;cPnx$m z8V+XAV3n?CFR`!ev1f`-4?C(mIkjOl9^)KtO<*g$LLbUt;7Blb@Qs|?znIKzJJ|;C z4(Z+k3Q7j0cANXK0UKK+mA$ch$o9+0?op>6DXINtXTS&O5H4V2xw$<;yRwBj zv^gFG-PHfXrD%>$p6Q!>Njf!lb|{+kw>2LD6Eq(W;q&oX`|G=1G-!ogLN4tt`w(`3 zoyLhjeeT8hp8Jh08;%`8AN?)t1KYtf$VoKHx!u!7u)%dBK+3G9pg1#_%8xPS3Gjh_QbN>Ep{JF1i7o8S0^W5=w8w4y^AIiig5TeFmD=?KB zNyKAQc+tFuhcbq6ud6YdR2t96JcO%ze^j)~+F2(A=rwm}bzRZKJa0fKL(jRj2+2MY z6odrglWJ+K!%%M?JVR=K-hTVk*k=UA(DMu)$%92`5Ee#D9Tv&yT-b~!X}uyq6geS+ z0qrxR5lvV#f)?>Po6+P4&2^3a6!n#wt=qIZAQAo>8Gn=+1~mr?3yqmOS~PB6b{n^< zwc8y4-r1ZvSERb>ZhkrAjYCB9If|7rqh^-@#mi4g__s75fO|{PLiC5j(3|}hSpy2( z2iRsrqRH(kA3|hhQ5ask<)w5IUe=nI>|VyM8d={Xe54D>Bw$Dl!yv_ko@JLTG;Z@z zlewX>9tzyN`G_n zxl`Jgeh>_2N)tc^a8lu8e$s(>TUV^`S;98Hyc@rY%pX5-VmcKqoO17kgb8vIT-CT4?Z~|(zz|;$1z>I z%LtH0ZCzY*EoXw%a`p5Kin}$0S|cqs^4_{*`)9n`d7<4?N|-3?t!R8zdw2ZlN0|{tQz5V8lnH{CL??`#-UaY2hLk=p2KgVaonszP3Z$+Y=oWQHD?1ju`go_q) zWQw@Ui~v@h8BIC9pW&-4hjGi0rN|sNV(z!wV`U~=Ga_~AzL_&=ck9W3I&fgIC~PV4 zMHCs{%2POjjaj<$&G=CiIILb>Vn>+tZxKvRByt3pkQJ~#+4XLXKKHh6WR|Y$wX_?PU`{hVynT!>CNd*kD~E&=gtnNh}!VwUZ$Gc=3xPiVq}^AEELbKY`_*yRLQFmO+h(IC_ik7b^P4@Q6vL`B;*i}}} z4_|&Q2hcmy-@f+RbUI`A^x1Qj5xtiTx;VXk>b=o4Nqzk3_s{2?xt4?Q-1NqqC#SdH zdS`m|jgvVoUY_23`^_3&o|=Aq^2gKLl~9~dzFoU|BboVja;N&$f<_uKi;}~x*lJy4_oRV<9fJ`o?C&32B9() zk!AedJ%=9e-vcB1clWoJy)*C#qXr%w^}NX_pIbY)P84%Iqra^=%;sf_{VW;noEYSm z%oW&-5#fl)WBYSr`vTsG@2wj>>>08(7j`VvtL2p;BbDUAb}#^$%t>?QN;TeON6!+) z7BTHXooJBbwddV#JZI0I9kN7&zB$t(85RbB<2garrB5I9{q5-jr+>g+F!Csq=>2W! zEJtZ_6zL-%i*JPthsLLL#=Kz*PI7e4&}*6*?>7eq6A-(X+{F7k(jg2lYmYY8zK)h4j&!7VEp(479uCfM2-qO%AV=+WZ`V2F+$OdpcmN#XTxBO zbF|IyW#jnXrq<9}j+*z3=FzYY?S%i6a0OuI%mn);OH{BD?>(7A@kCg_*d4Wb>}XkR z1-BmcxpaNKL12*!VI6uJf7m-~HU}GLgBd<#RHGlXYHeizx(;TiBjH_HC9tsdQTi$H zdZ6Q}_1?K$5RENoeaY1ss|yxITU`e~vzvyU*BY`v>;Za0-#(}3T{F`+$CAI3TaCld z-S7_^&X~w2Tx87lW7sEM%f=zUU@Xof4uFwilWx17Tp3xrSCoB*?V5iZ)uszzGolJsUHCJrUhVdOA!oT*1EJfq)MOUF0&L5u-`sp`<;rI+8 z^e5hoAa#F^6C=#LK>=98&dp8M=9##3%-J{+IVOy&J8z?~ z7v^3cICI{uc>;6RO?moU5c!wI&D`aXGV>GLw2@ZT9akx)MPdvwgt; zj6+J!vz9!1l*7;c{LcsU-km-Oh%lCUFE92tqi3YtH=hT0AB~z4kv(1`2CjM{^Wxmt zw88OH(tNGQoStcpK%+5mil9Np%~MYt51=NL+ZXk>AKthYZ3PM=R)#Q|lkTPzfYHn- zWMHpeSwtftwGFt9F|L&+#~7o)ZzhBYk_~|_#>Ior3@K+K0^7SeFk({5XhZ@w*61YR zoCp{WjH?NHik}f~@2t_j1N*0APdz!(DeqP%kJ&tfGI{urGUxFn5NF0yqlxj>t*_2I zFd&k*XLrX*B)ml1(X`SGLP097qsOFrQzRmOXjNC$wd*%e@1H$Ag!j!`SEnET@MH~h zGU@{290?TZ@IV(GyV3D792gxqGJcE3I;FvJCFi1Z=cuclLoaAs7xk@0jJNKPDpkXh zk8{?QKDsj_;=AAd%lJc|gzC-%&*)s)fpdm648f<)*%p3#=d@#k-M|{{Hs?> z6AOqQ+JCTJyjhegL+#^~=dujN(mp@=I9iO>HEB^FCiCKEPA92%Z=8Ik@1Du{cs#xO z;~%sSjH8;2MLS1RL|0P`|JVQde@qAW?;a^#TQfR8ZSM{pJYFj9_UVf+e6{G-+UnZ> z({$v>(~V0b7RUM&iOndv-CAr|e!rB_ThpKZ(VwNTYL-(p((y&N?%tTb{fj?e)MIX5 za{1~9b*0{0jbY^wPrcMx%KHWnU;gBS>ATkPdN=%U?938e2afGPVM$s!IWb?_p* z!#IgfF93T$gukVH57$}y;{br>SW@d=*!n_ry0&ZpXVULzJyT|lW$hYWV(XcaQqUZY z#~4T!$=z|_@Tenp-I=15+fzVj=JPMT)Sgt@kv!-ovp5SRUnGd`*AhjoAb^` zu+b(5hKO}X?tNGfhUgscCRH;^8-FtA(~M{yXQeL-8Gyzj<77*zybp?2zxmqV4kg~# z#_RlHDunyjO?42 zF9h668!t+DGkL~A$GF|TV`rJE>!%Yhe6h98p_D%QxcPo~C8Hr3w@_sMUi^PAxvk8@ z{W+1o@X{9sKzZ0&_Wx=a9r==jG}HOhPj1%P{A5v|dPxK-Ioo)>l=W=hzECZ35yNEG zh$oye#AlxSsQkLuHi?-wpcQ#nQo( z!y?t6=8#!g>Bysu6j$u?vk+)q+tVG#0LEICaibmhPeQP+WuiU6v z+dHS)E0NYmt>cdAd~%(!gC*S;W#?_`# zHnOE=bTT=}6Gt-1SP)HEJalCG+aG+tyvEAbay}k9^i+HJ@wDNiK=vDNXAEC1Sty;~ z2tIwBL6!qx)7D)hLqtdDHR&A=Q%)a|wKd6SSsKgImCoFj0hbEF0kJ?}t+l21Dg_@e zSY@1@+jYR5E7JLl z0OfmhF2F2%5D*(6JblKA4or`_&Hy4O=fD%mQIR<{t%5Q;qY%~W_8(gl~t^6PReUm-0!n=(%odAs6LGMAo}Ofqh;=V z*y%tyySGO_=i{k;(f6xwyjk|hlf!sEbN)hlq-I!Cjm=u;jb+1}%kWdW!13Vt#5FyK zj9eLZ9GQ^Kdo)l@Na;;+>4SIU@vYN|7r#^~#plyUl{r4D??mggs*D5KfieWF2@Jrf zXFzfSnOiMXruD6-NTT2X{Ch8+-{1Yd`}z->-|~(xJ2GfR)5^`sJ-AM`m`u?7Ejni> zc^i8V96i?FlLAn)9ELUN=s8$6{_Y+F>!!CI<2N?1>+Kng#WB8wQ)h#s37CYv?KwWP zpWfq`dRPkns_6StSmgGdC!^ol;HMX)scZV?7+N$dV*BlHe|!3kU;DM9xMfYI4Ip*TIfdhPSl{UYm%<3>$FZ48?qaCM^PqWeZJc@ym30-LJCc3moOTG-t&ew><&a{&PXlfy@k zWQQmhsR3V((Cgv!^~uZwi;L6CFTXPIp|pN>1LwNn-T8BswDj-mIm36h2W#WWHR)E_ zYRX6NbT64~FFyZ#BDYKfbk^s0v&%SEWHri+5F!3FhxI6XYR|W}e+=Q#%cJ?QMYIIK%$02^kN^w9GESTk zuvi!0jsRNE=5#SePHF)MePPfroX)PZj{iSXclxX6nIHE3;l7jNE|P~5H|?5{W;`B` zXPm^Y6DMez7Duw3` z1lJ1q@E5Qk+tAQTfsK)YtyzFU!pGm6;=cL&7VO2GWWaPWCU&z-2gGq++{pN|Sk8d! zWsevufaD7kV}4Gt$UFm$qdF5!BYcRJ)lsG`gX>wcBAEGw7oMMCH?mKn6QVYN&XJSp zQ7%gGLJZ(r^E@x0eip!e?mGz;fGDE?+PgWf9DYRZdG-j1y>ftp5Cjj_BR6e5BxSs% zTsT{%Fe3_siF$L)V5mUCJ0h_*gf|4+jR=Rp6v+fbS#5yl;7*CqfGI+Zh^!CO%3O*< zi)>AFHP~4L<{%UZWzi+ip(K^Py!7%*(+hW_UO`L9G7ygltbTk#;@PL4&DqPT>Aiq?|+@MW)@avP5-*Gr*@$rfXDY2zS>~OShfWR@bQllLTz}hHt0i!^l1A2Jip+^;uiNtEH=y4MmxOO96>rwia zDWRpbs$=*1e2#+3h(h-pqPdf6Ckhf>jMp3qRw;VU`CD(EU;XT-KUux@%b!hlSVZ}5 z0Uzgz|G~fc*Q;;;>enl~zM2u({DXT1f`ZMFaI2*J$gu-#FGUE_`wBba4S4--Bn3?K}BaqAIZ7WlP;?*+hJg#A&N5R zN{-1w0gyX6G@|JY9`q#RgkC5~N0H$tb13eWY5ust(Ajg(_V0rk63U>J#%Gj8JoJ*x zxS$-my%EjpWq@n?3 zm%f{PJ6Z3)=QAb@PCHznM25?Gx}2Cz@$vN>RskD^5QqFwu-p}{?}c-;W9=Lw1KU*G zD3#xxa^*;Vn5^LdKb~Q9;jQz-hxD1Dm)Sb4EqNUclL5*C86yHNG9@Y`42S$M{bPc< zz#sXvzt2< zPs7WH8CgoZ4KPhR$KRD(hpWu=rAi`4&ilb~LkeC6n<@+X3tSy-q#{N(&U5d?Ta3yR zRdRfpQLMT_i_4Ki`h}P|beAdRm zGh1X=-}ZLBY7R2+QF`ZQRV$nsEfjR;<^p@y3#f*~0uPm9?oy>e=WVKj>x~Tl_FI+B z?)^s_=5?y7fWHQu`L#v7|W;dMhe5J?sW&~PJkH@{ zMS?$E(kYBS_u11&t$lOy^`p%VWD3VB4j%73p=`R?kef+@~nSB-I?=REWB%bjb!Wp(PQbE{wb?zeN!A6xzSr>}&Yk5+&4yDzPF z*P8u<|K*>oo~g9`==RzGzifzN!QG#~_OsQ=L&sOEwRrjCEvsvN0neVh7yw1^3^3A~IEV!0|3zz6s zRi*5Z013y?J;LvFxzFf9au|N#ihk8jusa$&|4zr@Mho=&p7>BDl7W}zz)a;|x>eSV z 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

    8R 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 z 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 SMZkUl0000^&+FC)uXLuARmL@AXJ$u3LQ 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 z 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%0A8+an1a(s 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%0AZC!=WJwXZP$tNerl}p?1loeVZ4@{91j7 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 j%QxH`kjy``=_> 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 literal 0 HcmV?d00001 diff --git a/examples/ui/assets_and_images/lib/main.dart b/examples/ui/assets_and_images/lib/main.dart new file mode 100644 index 0000000000..77c26572b6 --- /dev/null +++ b/examples/ui/assets_and_images/lib/main.dart @@ -0,0 +1,42 @@ +import 'package:flutter/material.dart'; +import 'dart:async' show Future; +// #docregion RootBundle +import 'package:flutter/services.dart' show rootBundle; + +Future loadAsset() async { + return await rootBundle.loadString('assets/config.json'); +} +// #enddocregion RootBundle + +class MyHomePage extends StatefulWidget { + const MyHomePage({Key? key, required this.title}) : super(key: key); + + // This widget is the home page of your application. It is stateful, meaning + // that it has a State object (defined below) that contains fields that affect + // how it looks. + + // This class is the configuration for the state. It holds the values (in this + // case the title) provided by the parent (in this case the App widget) and + // used by the build method of the State. Fields in a Widget subclass are + // always marked "final". + + final String title; + + @override + State createState() => _MyHomePageState(); +} + +class _MyHomePageState extends State { + @override + Widget build(BuildContext context) { + // #docregion BackgroundImage + return const Image(image: AssetImage('graphics/background.png')); + // #enddocregion BackgroundImage + } +} + +AssetImage getHeartIconImage() { + // #docregion PackageImage + return const AssetImage('icons/heart.png', package: 'my_icons'); + // #enddocregion PackageImage +} diff --git a/examples/ui/assets_and_images/pubspec.yaml b/examples/ui/assets_and_images/pubspec.yaml new file mode 100644 index 0000000000..c7962b5aab --- /dev/null +++ b/examples/ui/assets_and_images/pubspec.yaml @@ -0,0 +1,89 @@ +name: assets_and_images +description: A new Flutter project. + +# The following line prevents the package from being accidentally published to +# pub.dev using `flutter pub publish`. This is preferred for private packages. +publish_to: 'none' # Remove this line if you wish to publish to pub.dev + +# The following defines the version and build number for your application. +# A version number is three numbers separated by dots, like 1.2.43 +# followed by an optional build number separated by a +. +# Both the version and the builder number may be overridden in flutter +# build by specifying --build-name and --build-number, respectively. +# In Android, build-name is used as versionName while build-number used as versionCode. +# Read more about Android versioning at https://developer.android.com/studio/publish/versioning +# In iOS, build-name is used as CFBundleShortVersionString while build-number used as CFBundleVersion. +# Read more about iOS versioning at +# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html +version: 1.0.0+1 + +environment: + sdk: ">=2.12.0 <3.0.0" + +# Dependencies specify other packages that your package needs in order to work. +# To automatically upgrade your package dependencies to the latest versions +# consider running `flutter pub upgrade --major-versions`. Alternatively, +# dependencies can be manually updated by changing the version numbers below to +# the latest version available on pub.dev. To see which dependencies have newer +# versions available, run `flutter pub outdated`. +dependencies: + flutter: + sdk: flutter + + + # The following adds the Cupertino Icons font to your application. + # Use with the CupertinoIcons class for iOS style icons. + cupertino_icons: ^1.0.2 + +dev_dependencies: + flutter_test: + sdk: flutter + + # The "flutter_lints" package below contains a set of recommended lints to + # encourage good coding practices. The lint set provided by the package is + # activated in the `analysis_options.yaml` file located at the root of your + # package. See that file for information about deactivating specific lint + # rules and activating additional ones. + flutter_lints: ^1.0.0 + +# For information on the generic Dart part of this file, see the +# following page: https://dart.dev/tools/pub/pubspec + +# The following section is specific to Flutter. +flutter: + + # The following line ensures that the Material Icons font is + # included with your application, so that you can use the icons in + # the material Icons class. + uses-material-design: true + + # To add assets to your application, add an assets section, like this: + assets: + - graphics/my_icon.png + - graphics/background.png + + # An image asset can refer to one or more resolution-specific "variants", see + # https://flutter.dev/assets-and-images/#resolution-aware. + + # For details regarding adding assets from package dependencies, see + # https://flutter.dev/assets-and-images/#from-packages + + # To add custom fonts to your application, add a fonts section here, + # in this "flutter" section. Each entry in this list should have a + # "family" key with the font family name, and a "fonts" key with a + # list giving the asset and other descriptors for the font. For + # example: + # fonts: + # - family: Schyler + # fonts: + # - asset: fonts/Schyler-Regular.ttf + # - asset: fonts/Schyler-Italic.ttf + # style: italic + # - family: Trajan Pro + # fonts: + # - asset: fonts/TrajanPro.ttf + # - asset: fonts/TrajanPro_Bold.ttf + # weight: 700 + # + # For details regarding fonts from package dependencies, + # see https://flutter.dev/custom-fonts/#from-packages diff --git a/src/docs/development/ui/assets-and-images.md b/src/docs/development/ui/assets-and-images.md index 58ca94150d..b3b9f1f278 100644 --- a/src/docs/development/ui/assets-and-images.md +++ b/src/docs/development/ui/assets-and-images.md @@ -4,6 +4,8 @@ description: How to use images (and other assets) in your Flutter app. short-title: Assets and images --- + + Flutter apps can include both code and _assets_ (sometimes called resources). An asset is a file that is bundled and deployed with your app, @@ -149,8 +151,8 @@ to an `AssetBundle` is not available, you can use `rootBundle` to directly load such assets. For example: + ```dart -import 'dart:async' show Future; import 'package:flutter/services.dart' show rootBundle; Future loadAsset() async { @@ -223,10 +225,9 @@ class in a widget's `build()` method. For example, your app can load the background image from the asset declarations above: + ```dart -Widget build(BuildContext context) { - return Image(image: AssetImage('graphics/background.png')); -} +return const Image(image: AssetImage('graphics/background.png')); ``` Anything using the default asset bundle inherits resolution @@ -256,9 +257,9 @@ called `my_icons`, which has the following directory structure: To load the image, use: - + ```dart -AssetImage('icons/heart.png', package: 'my_icons') +return const AssetImage('icons/heart.png', package: 'my_icons'); ``` Assets used by the package itself should also be fetched From 12d80d695f693970a63adbcb0e1bcc0acc1d460b Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Wed, 3 Nov 2021 12:57:20 -0500 Subject: [PATCH 13/64] Update PULL_REQUEST_TEMPLATE.md Updating template with freeze warning for Friday, November 5. --- .github/PULL_REQUEST_TEMPLATE.md | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index 16f65204d2..cd9543919a 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -1,3 +1,12 @@ +**IMPORTANT:** Due to work on the flutter.dev infrastructure, +**all open pull requests will be closed November 5.** + +If your PR needs to be merged by November 5, please say that in your PR. + +Otherwise, please [file an issue](https://github.com/flutter/website/issues/new/choose) about the needed change, and (if you submit a PR) be prepared to recreate the PR November 15 or later. + +--- + _Description of what this PR is changing or adding, and why:_ _Issues fixed by this PR (if any):_ From ac0858772338926ba0f5497e35853f169fb4a6e4 Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Wed, 3 Nov 2021 13:46:33 -0500 Subject: [PATCH 14/64] Update PULL_REQUEST_TEMPLATE.md Remove line break in first line. --- .github/PULL_REQUEST_TEMPLATE.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index cd9543919a..b6bacda743 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -1,5 +1,4 @@ -**IMPORTANT:** Due to work on the flutter.dev infrastructure, -**all open pull requests will be closed November 5.** +**IMPORTANT:** Due to work on the flutter.dev infrastructure, **all open pull requests will be closed November 5.** If your PR needs to be merged by November 5, please say that in your PR. From 7b53240ee0949966a47cab6e3028f4e8a7366a55 Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Wed, 3 Nov 2021 16:20:19 -0500 Subject: [PATCH 15/64] building adaptive apps code excerpts --- .../ui/layout/adaptive_app_demos/README.md | 22 +------- .../lib/global/styling.dart | 6 +- .../lib/global/targeted_actions.dart | 19 ++++--- .../lib/main_app_scaffold.dart | 55 +++++++++++++------ .../lib/widgets/app_title_bar.dart | 6 +- .../lib/widgets/buttons.dart | 10 +++- .../lib/widgets/ok_cancel_dialog.dart | 2 +- .../widgets/scroll_view_with_scrollbars.dart | 7 ++- .../ui/layout/building-adaptive-apps.md | 10 ++-- 9 files changed, 79 insertions(+), 58 deletions(-) diff --git a/examples/ui/layout/adaptive_app_demos/README.md b/examples/ui/layout/adaptive_app_demos/README.md index 20e4857b9b..63558e4902 100644 --- a/examples/ui/layout/adaptive_app_demos/README.md +++ b/examples/ui/layout/adaptive_app_demos/README.md @@ -1,23 +1,3 @@ # adaptive_app_demos -Demo code for adaptive app development techniques. - - -### Demonstrated in this repo: -* Login view - * re-flows from vertical to horizontal layout depending on screen size - * shows how to use horizontal constraints to stop an item from growing excessively large -* Main App Scaffold - * a responsive scaffold that changes from tab bar + drawer, to a combined side-menu for larger screens - * children are shared between widgets showing how you can reuse the same widget in multiple places -* A custom title bar is implemented for all platforms using a single widget - * VisualDensity is controlled with a button inside the title bar, and changes density across the entire app - * VisualDensity button is right-aligned on macOS to not conflict with native window controls -* AdaptiveGrid uses LayoutBuilder to create a responsive grid, - * //TODO: shows cross platform multi-select behavior - * //TODO: shows popups and right-click menu to delete - * //TODO: shows select all and delete behavior -* AdaptiveDataTable uses LayoutBuilder to add/remove columns in a table, depending on space available -* AdaptiveReflow uses LayoutBuilder to reflow between 3 different layout types: Vertical, Horizontal and Mixed. -* FocusExamples show various examples of how you can control focusable widgets and listen for key events -* Logout dialog contains adaptive logic to place the "Ok" button on the left-hand side on Windows, as per OS convention. +This project contains demo code for adaptive app development techniques from https://github.com/gskinnerTeam/flutter-adaptive-demo and additional code excerpts featured in [Building adaptive apps](https://flutter.dev/docs/development/ui/layout/building-adaptive-apps) \ No newline at end of file diff --git a/examples/ui/layout/adaptive_app_demos/lib/global/styling.dart b/examples/ui/layout/adaptive_app_demos/lib/global/styling.dart index d0b299119e..9703368706 100644 --- a/examples/ui/layout/adaptive_app_demos/lib/global/styling.dart +++ b/examples/ui/layout/adaptive_app_demos/lib/global/styling.dart @@ -8,8 +8,10 @@ class Insets { } class TextStyles { - static TextStyle buttonText1 = TextStyle(fontWeight: FontWeight.bold, fontSize: 14); - static TextStyle buttonText2 = TextStyle(fontWeight: FontWeight.normal, fontSize: 11); + static TextStyle buttonText1 = + TextStyle(fontWeight: FontWeight.bold, fontSize: 14); + static TextStyle buttonText2 = + TextStyle(fontWeight: FontWeight.normal, fontSize: 11); static TextStyle h1 = TextStyle(fontWeight: FontWeight.bold, fontSize: 22); static TextStyle h2 = TextStyle(fontWeight: FontWeight.bold, fontSize: 16); } diff --git a/examples/ui/layout/adaptive_app_demos/lib/global/targeted_actions.dart b/examples/ui/layout/adaptive_app_demos/lib/global/targeted_actions.dart index b49d5d72ad..c48c9d7879 100644 --- a/examples/ui/layout/adaptive_app_demos/lib/global/targeted_actions.dart +++ b/examples/ui/layout/adaptive_app_demos/lib/global/targeted_actions.dart @@ -15,7 +15,8 @@ import 'package:provider/provider.dart'; /// binding is activated with the intent. If no action is defined for a scope /// for that intent, then nothing happens. class TargetedActionScope extends StatefulWidget { - TargetedActionScope({Key? key, required this.child, required this.shortcuts}) : super(key: key); + TargetedActionScope({Key? key, required this.child, required this.shortcuts}) + : super(key: key); final Widget child; final Map shortcuts; @@ -93,7 +94,8 @@ class TargetedActionBinding extends StatefulWidget { } class _TargetedActionBindingState extends State { - final GlobalKey _subtreeKey = GlobalKey(debugLabel: 'Targeted Action Binding'); + final GlobalKey _subtreeKey = + GlobalKey(debugLabel: 'Targeted Action Binding'); @override Widget build(BuildContext context) { @@ -110,7 +112,9 @@ class _TargetedActionBindingState extends State { @override void deactivate() { - Provider.of<_TargetedActionRegistry>(context, listen: false).targetKeys.remove(_subtreeKey); + Provider.of<_TargetedActionRegistry>(context, listen: false) + .targetKeys + .remove(_subtreeKey); super.deactivate(); } } @@ -120,8 +124,7 @@ class _TargetedActionBindingState extends State { // // It is found through a provider. class _TargetedActionRegistry { - _TargetedActionRegistry() - : targetKeys = {}; + _TargetedActionRegistry() : targetKeys = {}; Set targetKeys; @@ -137,7 +140,8 @@ class _TargetedActionRegistry { // tha support the action. for (GlobalKey key in targetKeys) { if (key.currentContext != null) { - Action? foundAction = Actions.maybeFind(key.currentContext!, intent: intent); + Action? foundAction = + Actions.maybeFind(key.currentContext!, intent: intent); if (foundAction != null && foundAction.isEnabled(intent)) { return true; } @@ -153,7 +157,8 @@ class _TargetedActionRegistry { // contexts tha support the action. for (GlobalKey key in targetKeys) { if (key.currentContext != null) { - if (Actions.maybeFind(key.currentContext!, intent: intent) != null) { + if (Actions.maybeFind(key.currentContext!, intent: intent) != + null) { return Actions.invoke(key.currentContext!, intent); } } diff --git a/examples/ui/layout/adaptive_app_demos/lib/main_app_scaffold.dart b/examples/ui/layout/adaptive_app_demos/lib/main_app_scaffold.dart index 50318e55c6..410f297100 100644 --- a/examples/ui/layout/adaptive_app_demos/lib/main_app_scaffold.dart +++ b/examples/ui/layout/adaptive_app_demos/lib/main_app_scaffold.dart @@ -21,10 +21,22 @@ List getMainMenuChildren(BuildContext context) { void changePage(int value) => context.read().selectedIndex = value; int index = context.select((AppModel m) => m.selectedIndex); return [ - SelectedPageButton(onPressed: () => changePage(0), label: "Adaptive Grid", isSelected: index == 0), - SelectedPageButton(onPressed: () => changePage(1), label: "Adaptive Data Table", isSelected: index == 1), - SelectedPageButton(onPressed: () => changePage(2), label: "Adaptive Reflow", isSelected: index == 2), - SelectedPageButton(onPressed: () => changePage(3), label: "Focus Examples", isSelected: index == 3), + SelectedPageButton( + onPressed: () => changePage(0), + label: "Adaptive Grid", + isSelected: index == 0), + SelectedPageButton( + onPressed: () => changePage(1), + label: "Adaptive Data Table", + isSelected: index == 1), + SelectedPageButton( + onPressed: () => changePage(2), + label: "Adaptive Reflow", + isSelected: index == 2), + SelectedPageButton( + onPressed: () => changePage(3), + label: "Focus Examples", + isSelected: index == 3), ]; } @@ -43,8 +55,10 @@ class _MainAppScaffoldState extends State { bool isLoggedOut = context.select((AppModel m) => m.isLoggedIn) == false; return TargetedActionScope( shortcuts: { - LogicalKeySet(LogicalKeyboardKey.keyA, LogicalKeyboardKey.control): SelectAllIntent(), - LogicalKeySet(LogicalKeyboardKey.keyS, LogicalKeyboardKey.control): SelectNoneIntent(), + LogicalKeySet(LogicalKeyboardKey.keyA, LogicalKeyboardKey.control): + SelectAllIntent(), + LogicalKeySet(LogicalKeyboardKey.keyS, LogicalKeyboardKey.control): + SelectNoneIntent(), LogicalKeySet(LogicalKeyboardKey.delete): DeleteIntent(), }, child: WindowBorder( @@ -59,11 +73,15 @@ class _MainAppScaffoldState extends State { ? LoginPage() // Otherwise, show the full application with dynamic scaffold : Focus( - autofocus: true, - child: Scaffold( + autofocus: true, + child: Scaffold( key: _scaffoldKey, - drawer: useTabs ? _SideMenu(showPageButtons: false) : null, - appBar: useTabs ? AppBar(backgroundColor: Colors.blue.shade300) : null, + drawer: useTabs + ? _SideMenu(showPageButtons: false) + : null, + appBar: useTabs + ? AppBar(backgroundColor: Colors.blue.shade300) + : null, body: Stack(children: [ // Vertical layout with Tab controller and drawer if (useTabs) ...[ @@ -85,7 +103,7 @@ class _MainAppScaffoldState extends State { ], ]), ), - ), + ), ), ], ), @@ -117,7 +135,8 @@ class _SideMenu extends StatelessWidget { Widget build(BuildContext context) { void _handleLogoutPressed() async { String message = "Are you sure you want to logout?"; - bool? doLogout = await showDialog(context: context, builder: (_) => OkCancelDialog(message: message)); + bool? doLogout = await showDialog( + context: context, builder: (_) => OkCancelDialog(message: message)); if (doLogout ?? false) { context.read().logout(); } @@ -131,19 +150,21 @@ class _SideMenu extends StatelessWidget { // Buttons Column(children: [ SizedBox(height: Insets.extraLarge), - if (showPageButtons)...getMainMenuChildren(context), + if (showPageButtons) ...getMainMenuChildren(context), SizedBox(height: Insets.extraLarge), SecondaryMenuButton(label: "Submenu Item 1"), SecondaryMenuButton(label: "Submenu Item 2"), SecondaryMenuButton(label: "Submenu Item 3"), Spacer(), - OutlinedButton(child: Text("Logout"), onPressed: _handleLogoutPressed), + OutlinedButton( + child: Text("Logout"), onPressed: _handleLogoutPressed), SizedBox(height: Insets.large), ]), // Divider Align( alignment: Alignment.centerRight, - child: Container(width: 1, height: double.infinity, color: Colors.blue)), + child: Container( + width: 1, height: double.infinity, color: Colors.blue)), ], ), ); @@ -154,7 +175,9 @@ class _TabMenu extends StatelessWidget { @override Widget build(BuildContext context) { // Wrap all the main menu buttons in Expanded() so they fill up the screen horizontally - List tabButtons = getMainMenuChildren(context).map((btn) => Expanded(child: btn)).toList(); + List tabButtons = getMainMenuChildren(context) + .map((btn) => Expanded(child: btn)) + .toList(); return Column( children: [ // Top Divider diff --git a/examples/ui/layout/adaptive_app_demos/lib/widgets/app_title_bar.dart b/examples/ui/layout/adaptive_app_demos/lib/widgets/app_title_bar.dart index 32e40aaee9..564a097e9a 100644 --- a/examples/ui/layout/adaptive_app_demos/lib/widgets/app_title_bar.dart +++ b/examples/ui/layout/adaptive_app_demos/lib/widgets/app_title_bar.dart @@ -23,7 +23,8 @@ class AppTitleBar extends StatelessWidget { if (hideTitle == false) Positioned.fill( child: Center( - child: Text("Adaptive Scaffold", style: style.copyWith(color: Colors.white)), + child: Text("Adaptive Scaffold", + style: style.copyWith(color: Colors.white)), ), ), @@ -32,7 +33,8 @@ class AppTitleBar extends StatelessWidget { // Enable Touch Mode Button Row( // Touch button should be right-aligned on macOS to avoid the native buttons - textDirection: DeviceType.isMacOS ? TextDirection.rtl : TextDirection.ltr, + textDirection: + DeviceType.isMacOS ? TextDirection.rtl : TextDirection.ltr, children: [ IconButton( onPressed: () => context.read().toggleTouchMode(), diff --git a/examples/ui/layout/adaptive_app_demos/lib/widgets/buttons.dart b/examples/ui/layout/adaptive_app_demos/lib/widgets/buttons.dart index f45f020946..28d3588256 100644 --- a/examples/ui/layout/adaptive_app_demos/lib/widgets/buttons.dart +++ b/examples/ui/layout/adaptive_app_demos/lib/widgets/buttons.dart @@ -2,7 +2,9 @@ import 'package:adaptive_app_demos/global/styling.dart'; import 'package:flutter/material.dart'; class StyledTextButton extends StatelessWidget { - const StyledTextButton({Key? key, required this.onPressed, required this.child}) : super(key: key); + const StyledTextButton( + {Key? key, required this.onPressed, required this.child}) + : super(key: key); final VoidCallback onPressed; final Widget child; @@ -35,7 +37,11 @@ class SecondaryMenuButton extends StatelessWidget { } class SelectedPageButton extends StatelessWidget { - const SelectedPageButton({Key? key, required this.onPressed, required this.label, required this.isSelected}) + const SelectedPageButton( + {Key? key, + required this.onPressed, + required this.label, + required this.isSelected}) : super(key: key); final VoidCallback? onPressed; final String label; diff --git a/examples/ui/layout/adaptive_app_demos/lib/widgets/ok_cancel_dialog.dart b/examples/ui/layout/adaptive_app_demos/lib/widgets/ok_cancel_dialog.dart index 15f0c8c5af..0b7ca65ee3 100644 --- a/examples/ui/layout/adaptive_app_demos/lib/widgets/ok_cancel_dialog.dart +++ b/examples/ui/layout/adaptive_app_demos/lib/widgets/ok_cancel_dialog.dart @@ -32,7 +32,7 @@ class _OkCancelButtons extends StatelessWidget { Widget build(BuildContext context) { // #docregion RowTextDirection TextDirection btnDirection = - DeviceType.isWindows && false ? TextDirection.rtl : TextDirection.ltr; + DeviceType.isWindows ? TextDirection.rtl : TextDirection.ltr; return Row( children: [ Spacer(), diff --git a/examples/ui/layout/adaptive_app_demos/lib/widgets/scroll_view_with_scrollbars.dart b/examples/ui/layout/adaptive_app_demos/lib/widgets/scroll_view_with_scrollbars.dart index 9281d1a3e9..4ae2c6cd98 100644 --- a/examples/ui/layout/adaptive_app_demos/lib/widgets/scroll_view_with_scrollbars.dart +++ b/examples/ui/layout/adaptive_app_demos/lib/widgets/scroll_view_with_scrollbars.dart @@ -3,11 +3,14 @@ import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; class ScrollViewWithScrollbars extends StatefulWidget { - const ScrollViewWithScrollbars({Key? key, required this.child, this.axis = Axis.vertical}) : super(key: key); + const ScrollViewWithScrollbars( + {Key? key, required this.child, this.axis = Axis.vertical}) + : super(key: key); final Widget child; final Axis axis; @override - _ScrollViewWithScrollbarsState createState() => _ScrollViewWithScrollbarsState(); + _ScrollViewWithScrollbarsState createState() => + _ScrollViewWithScrollbarsState(); } class _ScrollViewWithScrollbarsState extends State { diff --git a/src/docs/development/ui/layout/building-adaptive-apps.md b/src/docs/development/ui/layout/building-adaptive-apps.md index 5f6f6ba198..7976537324 100644 --- a/src/docs/development/ui/layout/building-adaptive-apps.md +++ b/src/docs/development/ui/layout/building-adaptive-apps.md @@ -23,9 +23,7 @@ apps, but they fall into three major categories: * [Input](#input) * [Idioms and norms](#idioms-and-norms) -{% comment %} -TODO Embed Kevin's video when available. -{% endcomment %} + This page covers all three categories in detail using code snippets to illustrate the concepts. @@ -36,6 +34,8 @@ were built using the concepts described here. [Flokk]: {{site.github}}/gskinnerTeam/flokk [Folio]: {{site.github}}/gskinnerTeam/flutter-folio +Original demo code for adaptive app development techniques from [flutter-adaptive-demo](https://github.com/gskinnerTeam/flutter-adaptive-demo). Code excerpts seen on this page are available in the examples directory at [adaptive app demos](https://github.com/flutter/website/tree/main/examples/ui/layout/adaptive_app_demos) + ## Building adaptive layouts One of the first things you must consider when bringing @@ -152,7 +152,7 @@ densities, you can easily adjust your UI: To set a custom visual density, inject the density into your `MaterialApp` theme: - + ```dart double densityAmt = touchMode ? 0.0 : -1.0; @@ -1077,7 +1077,7 @@ This can be easily handled in Flutter using the ```dart TextDirection btnDirection = - DeviceType.isWindows && false ? TextDirection.rtl : TextDirection.ltr; + DeviceType.isWindows ? TextDirection.rtl : TextDirection.ltr; return Row( children: [ Spacer(), From 661a4363a49b80f74ea76e239d50a759da6135f3 Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Thu, 4 Nov 2021 10:06:14 -0500 Subject: [PATCH 16/64] update mention of github repo for the adaptive app repo and mention that snippets may not make total sense in the repo --- examples/ui/layout/adaptive_app_demos/README.md | 5 ++++- src/docs/development/ui/layout/building-adaptive-apps.md | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/examples/ui/layout/adaptive_app_demos/README.md b/examples/ui/layout/adaptive_app_demos/README.md index 63558e4902..5a38cf1bf6 100644 --- a/examples/ui/layout/adaptive_app_demos/README.md +++ b/examples/ui/layout/adaptive_app_demos/README.md @@ -1,3 +1,6 @@ # adaptive_app_demos -This project contains demo code for adaptive app development techniques from https://github.com/gskinnerTeam/flutter-adaptive-demo and additional code excerpts featured in [Building adaptive apps](https://flutter.dev/docs/development/ui/layout/building-adaptive-apps) \ No newline at end of file +This project contains demo code for adaptive app development techniques from https://github.com/gskinnerTeam/flutter-adaptive-demo. + +Additional example code in this project was moved from code snippets originally seen in [Building adaptive apps](https://flutter.dev/docs/development/ui/layout/building-adaptive-apps) to ensure analysis in the flutter.dev CI pipeline. These snippets were intended to illustrate concepts and may therefore not be fully integrated/a functional part of the project as the original demo code. + diff --git a/src/docs/development/ui/layout/building-adaptive-apps.md b/src/docs/development/ui/layout/building-adaptive-apps.md index 7976537324..f86a28091f 100644 --- a/src/docs/development/ui/layout/building-adaptive-apps.md +++ b/src/docs/development/ui/layout/building-adaptive-apps.md @@ -34,7 +34,7 @@ were built using the concepts described here. [Flokk]: {{site.github}}/gskinnerTeam/flokk [Folio]: {{site.github}}/gskinnerTeam/flutter-folio -Original demo code for adaptive app development techniques from [flutter-adaptive-demo](https://github.com/gskinnerTeam/flutter-adaptive-demo). Code excerpts seen on this page are available in the examples directory at [adaptive app demos](https://github.com/flutter/website/tree/main/examples/ui/layout/adaptive_app_demos) +Original demo code for adaptive app development techniques from [flutter-adaptive-demo](https://github.com/gskinnerTeam/flutter-adaptive-demo). ## Building adaptive layouts From e19792292f8ea1febd80732c9bae21fd626fcd81 Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Thu, 4 Nov 2021 10:23:56 -0500 Subject: [PATCH 17/64] clean up visual density snippet --- .../adaptive_app_demos/lib/pages/adaptive_reflow_page.dart | 2 +- src/docs/development/ui/layout/building-adaptive-apps.md | 4 ---- 2 files changed, 1 insertion(+), 5 deletions(-) diff --git a/examples/ui/layout/adaptive_app_demos/lib/pages/adaptive_reflow_page.dart b/examples/ui/layout/adaptive_app_demos/lib/pages/adaptive_reflow_page.dart index 3a994b55db..bc6f819c61 100644 --- a/examples/ui/layout/adaptive_app_demos/lib/pages/adaptive_reflow_page.dart +++ b/examples/ui/layout/adaptive_app_demos/lib/pages/adaptive_reflow_page.dart @@ -66,11 +66,11 @@ class _ContentPanel extends StatelessWidget { Widget build(BuildContext context) { // #docregion VisualDensityOwnView VisualDensity density = Theme.of(context).visualDensity; + // #enddocregion VisualDensityOwnView return ConstrainedBox( constraints: BoxConstraints(minHeight: 300, minWidth: 300), child: Padding( padding: EdgeInsets.all(Insets.large + density.vertical * 6), - // #enddocregion VisualDensityOwnView child: Container( alignment: Alignment.center, color: Colors.purple.shade100, diff --git a/src/docs/development/ui/layout/building-adaptive-apps.md b/src/docs/development/ui/layout/building-adaptive-apps.md index f86a28091f..1b3e46735a 100644 --- a/src/docs/development/ui/layout/building-adaptive-apps.md +++ b/src/docs/development/ui/layout/building-adaptive-apps.md @@ -171,10 +171,6 @@ you can look it up: ```dart VisualDensity density = Theme.of(context).visualDensity; -return ConstrainedBox( - constraints: BoxConstraints(minHeight: 300, minWidth: 300), - child: Padding( - padding: EdgeInsets.all(Insets.large + density.vertical * 6), ``` Not only does the container react automatically to changes From 0ead0309fd0216f665cac6ec2c169a3d08ea7aa3 Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Thu, 4 Nov 2021 10:37:42 -0500 Subject: [PATCH 18/64] update listener excerpt with ListView --- .../adaptive_app_demos/lib/widgets/extra_widget_excerpts.dart | 2 +- src/docs/development/ui/layout/building-adaptive-apps.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/examples/ui/layout/adaptive_app_demos/lib/widgets/extra_widget_excerpts.dart b/examples/ui/layout/adaptive_app_demos/lib/widgets/extra_widget_excerpts.dart index 9c776f6513..eb48951712 100644 --- a/examples/ui/layout/adaptive_app_demos/lib/widgets/extra_widget_excerpts.dart +++ b/examples/ui/layout/adaptive_app_demos/lib/widgets/extra_widget_excerpts.dart @@ -25,7 +25,7 @@ class ScrollListen extends StatelessWidget { onPointerSignal: (event) { if (event is PointerScrollEvent) print(event.scrollDelta.dy); }, - child: Container()); + child: ListView()); // #enddocregion PointerScroll } diff --git a/src/docs/development/ui/layout/building-adaptive-apps.md b/src/docs/development/ui/layout/building-adaptive-apps.md index 1b3e46735a..a2670e9880 100644 --- a/src/docs/development/ui/layout/building-adaptive-apps.md +++ b/src/docs/development/ui/layout/building-adaptive-apps.md @@ -491,7 +491,7 @@ return Listener( onPointerSignal: (event) { if (event is PointerScrollEvent) print(event.scrollDelta.dy); }, - child: Container()); + child: ListView()); ``` [`Listener`]: {{site.api}}/flutter/widgets/Listener-class.html From 26e20a8d745e9b71bbc38a3d3792ba4d6c66c8ce Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Fri, 5 Nov 2021 09:13:51 -0500 Subject: [PATCH 19/64] adding trailing comma to make code nicer --- .../lib/widgets/extra_widget_excerpts.dart | 8 ++++++-- src/docs/development/ui/layout/building-adaptive-apps.md | 8 ++++++-- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/examples/ui/layout/adaptive_app_demos/lib/widgets/extra_widget_excerpts.dart b/examples/ui/layout/adaptive_app_demos/lib/widgets/extra_widget_excerpts.dart index eb48951712..a4cdbe88d9 100644 --- a/examples/ui/layout/adaptive_app_demos/lib/widgets/extra_widget_excerpts.dart +++ b/examples/ui/layout/adaptive_app_demos/lib/widgets/extra_widget_excerpts.dart @@ -10,8 +10,12 @@ Widget LayoutBuilderWidget() { builder: (BuildContext context, BoxConstraints constraints) { bool useVerticalLayout = constraints.maxWidth < 400.0; return Flex( - children: [Text("Hello"), Text("World")], - direction: useVerticalLayout ? Axis.vertical : Axis.horizontal); + children: [ + Text("Hello"), + Text("World"), + ], + direction: useVerticalLayout ? Axis.vertical : Axis.horizontal, + ); }); // #enddocregion LayoutBuilder diff --git a/src/docs/development/ui/layout/building-adaptive-apps.md b/src/docs/development/ui/layout/building-adaptive-apps.md index a2670e9880..75c7f45828 100644 --- a/src/docs/development/ui/layout/building-adaptive-apps.md +++ b/src/docs/development/ui/layout/building-adaptive-apps.md @@ -303,8 +303,12 @@ Widget foo = LayoutBuilder( builder: (BuildContext context, BoxConstraints constraints) { bool useVerticalLayout = constraints.maxWidth < 400.0; return Flex( - children: [Text("Hello"), Text("World")], - direction: useVerticalLayout ? Axis.vertical : Axis.horizontal); + children: [ + Text("Hello"), + Text("World"), + ], + direction: useVerticalLayout ? Axis.vertical : Axis.horizontal, + ); }); ``` From 574382a5ad6f04571ebb2ef248b61168a080ec61 Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Fri, 5 Nov 2021 09:45:58 -0500 Subject: [PATCH 20/64] flutter.dev freeze PR Template --- .github/PULL_REQUEST_TEMPLATE.md | 17 +++-------------- 1 file changed, 3 insertions(+), 14 deletions(-) diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index b6bacda743..f3e539aded 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -1,16 +1,5 @@ -**IMPORTANT:** Due to work on the flutter.dev infrastructure, **all open pull requests will be closed November 5.** +**IMPORTANT:** Due to work on the flutter.dev infrastructure, this repo is **not accepting pull requests**. -If your PR needs to be merged by November 5, please say that in your PR. +Instead of creating a PR, please file an issue (https://github.com/flutter/website/issues/new/choose) about the needed change. -Otherwise, please [file an issue](https://github.com/flutter/website/issues/new/choose) about the needed change, and (if you submit a PR) be prepared to recreate the PR November 15 or later. - ---- - -_Description of what this PR is changing or adding, and why:_ - -_Issues fixed by this PR (if any):_ - -## Presubmit checklist -- [ ] This PR doesn’t contain automatically generated corrections (Grammarly or similar). -- [ ] This PR follows the [Google Developer Documentation Style Guidelines](https://developers.google.com/style) — for example, it doesn’t use _i.e._ or _e.g._, and it avoids _I_ and _we_ (first person). -- [ ] This PR uses [semantic line breaks](https://github.com/dart-lang/site-shared/blob/master/doc/writing-for-dart-and-flutter-websites.md#semantic-line-breaks) of 80 characters or fewer. +We expect to start accepting PRs again the week of November 15. From d58a5a14046b2605dd2c8a0d9f9a0adbb59d0732 Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Mon, 15 Nov 2021 18:32:34 -0600 Subject: [PATCH 21/64] fix linkcheck add re2 and update javascript regex --- Dockerfile | 1 + firebase.json | 6 +++--- package.json | 3 ++- tool/check-links.sh | 2 ++ tool/test.sh | 12 ++++++------ 5 files changed, 14 insertions(+), 10 deletions(-) diff --git a/Dockerfile b/Dockerfile index 4e81784811..ec75381edd 100644 --- a/Dockerfile +++ b/Dockerfile @@ -31,6 +31,7 @@ ENV NODE_ENV=development COPY package.json package-lock.json ./ RUN npm install -g npm firebase-tools superstatic RUN npm install +RUN npm i npm re2 COPY ./ ./ diff --git a/firebase.json b/firebase.json index 3f90280e0d..a18163c71f 100644 --- a/firebase.json +++ b/firebase.json @@ -12,9 +12,9 @@ ], "rewrites": [], "redirects": [ - { "regex": "^/(flutter(/.*)?)", "destination": "https://api.flutter.dev/:1", "type": 301 }, - { "regex": "^/(objcdoc(/.*)?)", "destination": "https://api.flutter.dev/:1", "type": 301 }, - { "regex": "^/(javadoc(/.*)?)", "destination": "https://api.flutter.dev/:1", "type": 301 }, + { "regex": "^\/(flutter(\/.*)?)", "destination": "https://api.flutter.dev/:1", "type": 301 }, + { "regex": "^\/(objcdoc(\/.*)?)", "destination": "https://api.flutter.dev/:1", "type": 301 }, + { "regex": "^\/(javadoc(\/.*)?)", "destination": "https://api.flutter.dev/:1", "type": 301 }, { "regex": "(?P.*)\\.html$", "destination": ":basename", "type": 301 }, { "regex": "(?P.*)\\.$", "destination": ":basename", "type": 301 }, diff --git a/package.json b/package.json index 087499c95f..042ad7c476 100644 --- a/package.json +++ b/package.json @@ -11,6 +11,7 @@ "dependencies": { "bootstrap-scss": "^4.6.0", "diff2html-cli": "^5.1.11", - "font-awesome": "^4.7.0" + "font-awesome": "^4.7.0", + "superstatic": "^7.1.0" } } diff --git a/tool/check-links.sh b/tool/check-links.sh index b2f32efd2f..f3a601f76f 100755 --- a/tool/check-links.sh +++ b/tool/check-links.sh @@ -76,6 +76,8 @@ trap "cleanup" EXIT # original exit code is preserved unleash_robots +node -e "console.log(require('superstatic').RE2mode())" + # Attempt to launch the server. CMD="npx superstatic --port $SERVE_PORT" echo "=> $CMD" diff --git a/tool/test.sh b/tool/test.sh index 82740a5440..444d2cbe3a 100755 --- a/tool/test.sh +++ b/tool/test.sh @@ -99,12 +99,12 @@ if [[ "$TARGET" =~ ^($DEV|$BETA|$STABLE)$ ]]; then # TODO superstatic in docker is broken. Until we move away from # that method of link checking, this will remain commented out :) - # if [[ $CHECK_LINKS ]]; then - # echo $'\n---------------------------------------------------' - # echo "=> Checking links for build..." - # echo $'---------------------------------------------------\n' - # tool/check-links.sh - # fi + if [[ $CHECK_LINKS ]]; then + echo $'\n---------------------------------------------------' + echo "=> Checking links for build..." + echo $'---------------------------------------------------\n' + tool/check-links.sh + fi else echo "=> Target branch \"$TARGET\" is invalid!" From 58759f6f4135905cd7f1ea733f974d6f1aec3aa0 Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Tue, 16 Nov 2021 14:16:23 -0600 Subject: [PATCH 22/64] update dockerfile install re2 --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index ec75381edd..eaaa2c12ec 100644 --- a/Dockerfile +++ b/Dockerfile @@ -31,7 +31,7 @@ ENV NODE_ENV=development COPY package.json package-lock.json ./ RUN npm install -g npm firebase-tools superstatic RUN npm install -RUN npm i npm re2 +RUN npm i re2 COPY ./ ./ From a7c26460d1e613b0e502a03837c2aa1fe2a27df6 Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Tue, 30 Nov 2021 18:12:04 -0500 Subject: [PATCH 23/64] Remove unnecessary/unused code from adaptive_app_demos --- .../ui/layout/adaptive_app_demos/README.md | 2 +- .../lib/global/device_size.dart | 6 ----- .../lib/global/device_type.dart | 22 ++++++++++++++----- .../lib/global/styling.dart | 17 -------------- .../lib/main_app_scaffold.dart | 2 +- .../lib/pages/adaptive_data_table_page.dart | 2 +- .../lib/pages/adaptive_grid_page.dart | 1 - .../lib/pages/adaptive_reflow_page.dart | 2 +- .../lib/pages/focus_examples_page.dart | 2 +- .../lib/widgets/app_title_bar.dart | 1 - .../lib/widgets/buttons.dart | 2 +- .../lib/widgets/ok_cancel_dialog.dart | 1 - 12 files changed, 22 insertions(+), 38 deletions(-) delete mode 100644 examples/ui/layout/adaptive_app_demos/lib/global/styling.dart diff --git a/examples/ui/layout/adaptive_app_demos/README.md b/examples/ui/layout/adaptive_app_demos/README.md index 5a38cf1bf6..b008a9ef7e 100644 --- a/examples/ui/layout/adaptive_app_demos/README.md +++ b/examples/ui/layout/adaptive_app_demos/README.md @@ -2,5 +2,5 @@ This project contains demo code for adaptive app development techniques from https://github.com/gskinnerTeam/flutter-adaptive-demo. -Additional example code in this project was moved from code snippets originally seen in [Building adaptive apps](https://flutter.dev/docs/development/ui/layout/building-adaptive-apps) to ensure analysis in the flutter.dev CI pipeline. These snippets were intended to illustrate concepts and may therefore not be fully integrated/a functional part of the project as the original demo code. +Additional example code in this project was moved from code snippets originally seen in [Building adaptive apps](https://flutter.dev/docs/development/ui/layout/building-adaptive-apps) to ensure analysis in the flutter.dev CI pipeline. These snippets were intended to illustrate concepts and may therefore not be fully integrated/a functional part of the original demo code. diff --git a/examples/ui/layout/adaptive_app_demos/lib/global/device_size.dart b/examples/ui/layout/adaptive_app_demos/lib/global/device_size.dart index 8d7cced46d..e8dd079d5b 100644 --- a/examples/ui/layout/adaptive_app_demos/lib/global/device_size.dart +++ b/examples/ui/layout/adaptive_app_demos/lib/global/device_size.dart @@ -51,18 +51,12 @@ class widgetWithBreakPoints extends StatelessWidget { ]); } - Widget BackButton() { - return ElevatedButton( - onPressed: () => {DoNothingAction}, child: Icon(Icons.flutter_dash)); - } - Widget WidgetSwap(BuildContext context) { bool isHandset = MediaQuery.of(context).size.width < 600; // #docregion WidgetSwap Widget foo = Row( children: [ - BackButton(), ...isHandset ? _getHandsetChildren() : _getNormalChildren(), ], ); diff --git a/examples/ui/layout/adaptive_app_demos/lib/global/device_type.dart b/examples/ui/layout/adaptive_app_demos/lib/global/device_type.dart index 69bd787224..9f27848124 100644 --- a/examples/ui/layout/adaptive_app_demos/lib/global/device_type.dart +++ b/examples/ui/layout/adaptive_app_demos/lib/global/device_type.dart @@ -1,3 +1,4 @@ +import 'package:flutter/material.dart'; import 'package:flutter/widgets.dart'; import 'package:universal_platform/universal_platform.dart'; import 'dart:io' show Platform; @@ -28,9 +29,12 @@ class DeviceType { } // #docregion Styling -class InsetValues { - static const double xsmall = 4; - static const double small = 8; +class Insets { + static const double xsmall = 3; + static const double small = 4; + static const double medium = 5; + static const double large = 10; + static const double extraLarge = 20; // etc } @@ -39,10 +43,16 @@ class Fonts { // etc } -class TextStylesValues { +class TextStyles { static const TextStyle raleway = const TextStyle( fontFamily: Fonts.raleway, ); + static TextStyle buttonText1 = + TextStyle(fontWeight: FontWeight.bold, fontSize: 14); + static TextStyle buttonText2 = + TextStyle(fontWeight: FontWeight.normal, fontSize: 11); + static TextStyle h1 = TextStyle(fontWeight: FontWeight.bold, fontSize: 22); + static TextStyle h2 = TextStyle(fontWeight: FontWeight.bold, fontSize: 16); static late TextStyle body1 = raleway.copyWith(color: Color(0xFF42A5F5)); // etc } @@ -53,8 +63,8 @@ class MyWidget extends StatelessWidget { Widget build(BuildContext context) { // #docregion UseConstants return Padding( - padding: EdgeInsets.all(InsetValues.small), - child: Text('Hello!', style: TextStylesValues.body1), + padding: EdgeInsets.all(Insets.small), + child: Text('Hello!', style: TextStyles.body1), ); // #enddocregion UseConstants } diff --git a/examples/ui/layout/adaptive_app_demos/lib/global/styling.dart b/examples/ui/layout/adaptive_app_demos/lib/global/styling.dart deleted file mode 100644 index 9703368706..0000000000 --- a/examples/ui/layout/adaptive_app_demos/lib/global/styling.dart +++ /dev/null @@ -1,17 +0,0 @@ -import 'package:flutter/material.dart'; - -class Insets { - static double medium = 5; - static double large = 10; - static double extraLarge = 20; - static double small = 3; -} - -class TextStyles { - static TextStyle buttonText1 = - TextStyle(fontWeight: FontWeight.bold, fontSize: 14); - static TextStyle buttonText2 = - TextStyle(fontWeight: FontWeight.normal, fontSize: 11); - static TextStyle h1 = TextStyle(fontWeight: FontWeight.bold, fontSize: 22); - static TextStyle h2 = TextStyle(fontWeight: FontWeight.bold, fontSize: 16); -} diff --git a/examples/ui/layout/adaptive_app_demos/lib/main_app_scaffold.dart b/examples/ui/layout/adaptive_app_demos/lib/main_app_scaffold.dart index 410f297100..f5dd9d0c8d 100644 --- a/examples/ui/layout/adaptive_app_demos/lib/main_app_scaffold.dart +++ b/examples/ui/layout/adaptive_app_demos/lib/main_app_scaffold.dart @@ -1,6 +1,6 @@ import 'package:adaptive_app_demos/app_model.dart'; import 'package:adaptive_app_demos/global/device_size.dart'; -import 'package:adaptive_app_demos/global/styling.dart'; +import 'package:adaptive_app_demos/global/device_type.dart'; import 'package:adaptive_app_demos/pages/adaptive_data_table_page.dart'; import 'package:adaptive_app_demos/pages/adaptive_grid_page.dart'; import 'package:adaptive_app_demos/pages/adaptive_reflow_page.dart'; diff --git a/examples/ui/layout/adaptive_app_demos/lib/pages/adaptive_data_table_page.dart b/examples/ui/layout/adaptive_app_demos/lib/pages/adaptive_data_table_page.dart index 64a6055301..be747bdd4c 100644 --- a/examples/ui/layout/adaptive_app_demos/lib/pages/adaptive_data_table_page.dart +++ b/examples/ui/layout/adaptive_app_demos/lib/pages/adaptive_data_table_page.dart @@ -1,4 +1,4 @@ -import 'package:adaptive_app_demos/global/styling.dart'; +import 'package:adaptive_app_demos/global/device_type.dart'; import 'package:adaptive_app_demos/widgets/scroll_view_with_scrollbars.dart'; import 'package:flutter/material.dart'; diff --git a/examples/ui/layout/adaptive_app_demos/lib/pages/adaptive_grid_page.dart b/examples/ui/layout/adaptive_app_demos/lib/pages/adaptive_grid_page.dart index deb1c25408..1b36d06d39 100644 --- a/examples/ui/layout/adaptive_app_demos/lib/pages/adaptive_grid_page.dart +++ b/examples/ui/layout/adaptive_app_demos/lib/pages/adaptive_grid_page.dart @@ -1,7 +1,6 @@ import 'dart:math'; import 'package:adaptive_app_demos/global/device_type.dart'; -import 'package:adaptive_app_demos/global/styling.dart'; import 'package:adaptive_app_demos/global/targeted_actions.dart'; import 'package:adaptive_app_demos/widgets/buttons.dart'; import 'package:flutter/material.dart'; diff --git a/examples/ui/layout/adaptive_app_demos/lib/pages/adaptive_reflow_page.dart b/examples/ui/layout/adaptive_app_demos/lib/pages/adaptive_reflow_page.dart index bc6f819c61..1a62b82f1a 100644 --- a/examples/ui/layout/adaptive_app_demos/lib/pages/adaptive_reflow_page.dart +++ b/examples/ui/layout/adaptive_app_demos/lib/pages/adaptive_reflow_page.dart @@ -1,4 +1,4 @@ -import 'package:adaptive_app_demos/global/styling.dart'; +import 'package:adaptive_app_demos/global/device_type.dart'; import 'package:adaptive_app_demos/widgets/scroll_view_with_scrollbars.dart'; import 'package:flextras/flextras.dart'; import 'package:flutter/material.dart'; diff --git a/examples/ui/layout/adaptive_app_demos/lib/pages/focus_examples_page.dart b/examples/ui/layout/adaptive_app_demos/lib/pages/focus_examples_page.dart index cded4d69fe..38eaaeb7a8 100644 --- a/examples/ui/layout/adaptive_app_demos/lib/pages/focus_examples_page.dart +++ b/examples/ui/layout/adaptive_app_demos/lib/pages/focus_examples_page.dart @@ -1,4 +1,4 @@ -import 'package:adaptive_app_demos/global/styling.dart'; +import 'package:adaptive_app_demos/global/device_type.dart'; import 'package:flextras/flextras.dart'; import 'package:flutter/material.dart'; import 'package:flutter/rendering.dart'; diff --git a/examples/ui/layout/adaptive_app_demos/lib/widgets/app_title_bar.dart b/examples/ui/layout/adaptive_app_demos/lib/widgets/app_title_bar.dart index 564a097e9a..02e0d7ff79 100644 --- a/examples/ui/layout/adaptive_app_demos/lib/widgets/app_title_bar.dart +++ b/examples/ui/layout/adaptive_app_demos/lib/widgets/app_title_bar.dart @@ -1,6 +1,5 @@ import 'package:adaptive_app_demos/app_model.dart'; import 'package:adaptive_app_demos/global/device_type.dart'; -import 'package:adaptive_app_demos/global/styling.dart'; import 'package:bitsdojo_window/bitsdojo_window.dart'; import 'package:flutter/material.dart'; import 'package:provider/provider.dart'; diff --git a/examples/ui/layout/adaptive_app_demos/lib/widgets/buttons.dart b/examples/ui/layout/adaptive_app_demos/lib/widgets/buttons.dart index 28d3588256..c5ca71a2c2 100644 --- a/examples/ui/layout/adaptive_app_demos/lib/widgets/buttons.dart +++ b/examples/ui/layout/adaptive_app_demos/lib/widgets/buttons.dart @@ -1,4 +1,4 @@ -import 'package:adaptive_app_demos/global/styling.dart'; +import 'package:adaptive_app_demos/global/device_type.dart'; import 'package:flutter/material.dart'; class StyledTextButton extends StatelessWidget { diff --git a/examples/ui/layout/adaptive_app_demos/lib/widgets/ok_cancel_dialog.dart b/examples/ui/layout/adaptive_app_demos/lib/widgets/ok_cancel_dialog.dart index 0b7ca65ee3..31fb07a60c 100644 --- a/examples/ui/layout/adaptive_app_demos/lib/widgets/ok_cancel_dialog.dart +++ b/examples/ui/layout/adaptive_app_demos/lib/widgets/ok_cancel_dialog.dart @@ -1,5 +1,4 @@ import 'package:adaptive_app_demos/global/device_type.dart'; -import 'package:adaptive_app_demos/global/styling.dart'; import 'package:flutter/material.dart'; class OkCancelDialog extends StatelessWidget { From b5592257439a3ba477993b9e5965c09cf34e6ffa Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Wed, 1 Dec 2021 16:34:06 -0500 Subject: [PATCH 24/64] Code excerpts building adaptive apps - platform channels --- examples/codelabs | 2 +- .../data-and-backend/json/lib/extras.dart | 0 .../analysis_options.yaml | 29 +++++ .../platform_integration/lib/c_interop.dart | 14 +++ .../lib/generated_pigeon.dart | 16 +++ .../lib/platform_channels.dart | 56 +++++++++ .../platform_integration/lib/use_pigeon.dart | 19 +++ .../platform_integration/pubspec.yaml | 90 ++++++++++++++ .../analysis_options.yaml | 29 +++++ .../plugin_api_migration/lib/css_colors.dart | 28 +++++ .../plugin_api_migration/lib/test.dart | 17 +++ .../lib/url_launcher.dart | 41 +++++++ .../plugin_api_migration/pubspec.yaml | 93 ++++++++++++++ .../development/tools/analysis_options.yaml | 29 +++++ .../tools/lib/hot-reload/after.dart | 70 +++++++++++ .../tools/lib/hot-reload/before.dart | 74 +++++++++++ .../tools/lib/hot-reload/foo_const.dart | 10 ++ .../tools/lib/hot-reload/getter.dart | 10 ++ examples/development/tools/pubspec.yaml | 89 ++++++++++++++ .../plugin-api-migration.md | 4 +- .../packages-and-plugins/using-packages.md | 22 +++- .../platform-integration/c-interop.md | 8 +- .../platform-integration/platform-channels.md | 91 +++++++------- src/docs/development/tools/hot-reload.md | 116 ++++++++++++++---- .../ui/layout/building-adaptive-apps.md | 22 ++-- 25 files changed, 893 insertions(+), 86 deletions(-) create mode 100644 examples/development/data-and-backend/json/lib/extras.dart create mode 100644 examples/development/platform_integration/analysis_options.yaml create mode 100644 examples/development/platform_integration/lib/c_interop.dart create mode 100644 examples/development/platform_integration/lib/generated_pigeon.dart create mode 100644 examples/development/platform_integration/lib/platform_channels.dart create mode 100644 examples/development/platform_integration/lib/use_pigeon.dart create mode 100644 examples/development/platform_integration/pubspec.yaml create mode 100644 examples/development/plugin_api_migration/analysis_options.yaml create mode 100644 examples/development/plugin_api_migration/lib/css_colors.dart create mode 100644 examples/development/plugin_api_migration/lib/test.dart create mode 100644 examples/development/plugin_api_migration/lib/url_launcher.dart create mode 100644 examples/development/plugin_api_migration/pubspec.yaml create mode 100644 examples/development/tools/analysis_options.yaml create mode 100644 examples/development/tools/lib/hot-reload/after.dart create mode 100644 examples/development/tools/lib/hot-reload/before.dart create mode 100644 examples/development/tools/lib/hot-reload/foo_const.dart create mode 100644 examples/development/tools/lib/hot-reload/getter.dart create mode 100644 examples/development/tools/pubspec.yaml diff --git a/examples/codelabs b/examples/codelabs index 02a3bed1cc..27d59bd313 160000 --- a/examples/codelabs +++ b/examples/codelabs @@ -1 +1 @@ -Subproject commit 02a3bed1cc5bb5555bd4d754a788a07697afdce8 +Subproject commit 27d59bd3137fcbf19753dd76e9fa299ce5736b67 diff --git a/examples/development/data-and-backend/json/lib/extras.dart b/examples/development/data-and-backend/json/lib/extras.dart new file mode 100644 index 0000000000..e69de29bb2 diff --git a/examples/development/platform_integration/analysis_options.yaml b/examples/development/platform_integration/analysis_options.yaml new file mode 100644 index 0000000000..61b6c4de17 --- /dev/null +++ b/examples/development/platform_integration/analysis_options.yaml @@ -0,0 +1,29 @@ +# This file configures the analyzer, which statically analyzes Dart code to +# check for errors, warnings, and lints. +# +# The issues identified by the analyzer are surfaced in the UI of Dart-enabled +# IDEs (https://dart.dev/tools#ides-and-editors). The analyzer can also be +# invoked from the command line by running `flutter analyze`. + +# The following line activates a set of recommended lints for Flutter apps, +# packages, and plugins designed to encourage good coding practices. +include: package:flutter_lints/flutter.yaml + +linter: + # The lint rules applied to this project can be customized in the + # section below to disable rules from the `package:flutter_lints/flutter.yaml` + # included above or to enable additional rules. A list of all available lints + # and their documentation is published at + # https://dart-lang.github.io/linter/lints/index.html. + # + # Instead of disabling a lint rule for the entire project in the + # section below, it can also be suppressed for a single line of code + # or a specific dart file by using the `// ignore: name_of_lint` and + # `// ignore_for_file: name_of_lint` syntax on the line or in the file + # producing the lint. + rules: + # avoid_print: false # Uncomment to disable the `avoid_print` rule + # prefer_single_quotes: true # Uncomment to enable the `prefer_single_quotes` rule + +# Additional information about this file can be found at +# https://dart.dev/guides/language/analysis-options diff --git a/examples/development/platform_integration/lib/c_interop.dart b/examples/development/platform_integration/lib/c_interop.dart new file mode 100644 index 0000000000..b94af40f74 --- /dev/null +++ b/examples/development/platform_integration/lib/c_interop.dart @@ -0,0 +1,14 @@ +// #docregion DynamicLibrary +import 'dart:ffi'; // For FFI +import 'dart:io'; // For Platform.isX + +final DynamicLibrary nativeAddLib = Platform.isAndroid + ? DynamicLibrary.open("libnative_add.so") + : DynamicLibrary.process(); +// #enddocregion DynamicLibrary + +// #docregion NativeAdd +final int Function(int x, int y) nativeAdd = nativeAddLib + .lookup>("native_add") + .asFunction(); +// #enddocregion NativeAdd diff --git a/examples/development/platform_integration/lib/generated_pigeon.dart b/examples/development/platform_integration/lib/generated_pigeon.dart new file mode 100644 index 0000000000..cdcb5ad4e1 --- /dev/null +++ b/examples/development/platform_integration/lib/generated_pigeon.dart @@ -0,0 +1,16 @@ +// #docregion Search +import 'package:pigeon/pigeon.dart'; + +class SearchRequest { + String query = ""; +} + +class SearchReply { + String result = ""; +} + +@HostApi() +abstract class Api { + Future search(SearchRequest request); +} +// #enddocregion Search diff --git a/examples/development/platform_integration/lib/platform_channels.dart b/examples/development/platform_integration/lib/platform_channels.dart new file mode 100644 index 0000000000..263750601e --- /dev/null +++ b/examples/development/platform_integration/lib/platform_channels.dart @@ -0,0 +1,56 @@ +// #docregion Import +import 'dart:async'; +import 'package:flutter/material.dart'; +import 'package:flutter/services.dart'; +// #enddocregion Import + +class MyHomePage extends StatefulWidget { + const MyHomePage({Key? key}) : super(key: key); + + @override + _MyHomePageState createState() => _MyHomePageState(); +} + +// #docregion MyHomePageState +class _MyHomePageState extends State { + static const platform = MethodChannel('samples.flutter.dev/battery'); + // #docregion GetBattery + // Get battery level. +// #enddocregion MyHomePageState + String _batteryLevel = 'Unknown battery level.'; + + Future _getBatteryLevel() async { + String batteryLevel; + try { + final int result = await platform.invokeMethod('getBatteryLevel'); + batteryLevel = 'Battery level at $result % .'; + } on PlatformException catch (e) { + batteryLevel = "Failed to get battery level: '${e.message}'."; + } + + setState(() { + _batteryLevel = batteryLevel; + }); + } + // #enddocregion GetBattery + +// #docregion Build + @override + Widget build(BuildContext context) { + return Material( + child: Center( + child: Column( + mainAxisAlignment: MainAxisAlignment.spaceEvenly, + children: [ + ElevatedButton( + child: const Text('Get Battery Level'), + onPressed: _getBatteryLevel, + ), + Text(_batteryLevel), + ], + ), + ), + ); + } +// #enddocregion Build +} diff --git a/examples/development/platform_integration/lib/use_pigeon.dart b/examples/development/platform_integration/lib/use_pigeon.dart new file mode 100644 index 0000000000..02862a2c44 --- /dev/null +++ b/examples/development/platform_integration/lib/use_pigeon.dart @@ -0,0 +1,19 @@ +// ignore_for_file: avoid_print + +// #docregion UseApi +import 'generated_pigeon.dart'; + +void onClick() async { + SearchRequest request = SearchRequest()..query = 'test'; + Api api = SomeApi(); + SearchReply reply = await api.search(request); + print('reply: ${reply.result}'); +} +// #enddocregion UseApi + +class SomeApi extends Api { + @override + Future search(SearchRequest request) { + return Future(() => {SearchReply}); + } +} diff --git a/examples/development/platform_integration/pubspec.yaml b/examples/development/platform_integration/pubspec.yaml new file mode 100644 index 0000000000..1e34594940 --- /dev/null +++ b/examples/development/platform_integration/pubspec.yaml @@ -0,0 +1,90 @@ +name: platform_integration +description: A new Flutter project. + +# The following line prevents the package from being accidentally published to +# pub.dev using `flutter pub publish`. This is preferred for private packages. +publish_to: 'none' # Remove this line if you wish to publish to pub.dev + +# The following defines the version and build number for your application. +# A version number is three numbers separated by dots, like 1.2.43 +# followed by an optional build number separated by a +. +# Both the version and the builder number may be overridden in flutter +# build by specifying --build-name and --build-number, respectively. +# In Android, build-name is used as versionName while build-number used as versionCode. +# Read more about Android versioning at https://developer.android.com/studio/publish/versioning +# In iOS, build-name is used as CFBundleShortVersionString while build-number used as CFBundleVersion. +# Read more about iOS versioning at +# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html +version: 1.0.0+1 + +environment: + sdk: ">=2.12.0 <3.0.0" + +# Dependencies specify other packages that your package needs in order to work. +# To automatically upgrade your package dependencies to the latest versions +# consider running `flutter pub upgrade --major-versions`. Alternatively, +# dependencies can be manually updated by changing the version numbers below to +# the latest version available on pub.dev. To see which dependencies have newer +# versions available, run `flutter pub outdated`. +dependencies: + flutter: + sdk: flutter + pigeon: ^1.0.11 + + + # The following adds the Cupertino Icons font to your application. + # Use with the CupertinoIcons class for iOS style icons. + cupertino_icons: ^1.0.2 + +dev_dependencies: + flutter_test: + sdk: flutter + + # The "flutter_lints" package below contains a set of recommended lints to + # encourage good coding practices. The lint set provided by the package is + # activated in the `analysis_options.yaml` file located at the root of your + # package. See that file for information about deactivating specific lint + # rules and activating additional ones. + flutter_lints: ^1.0.0 + +# For information on the generic Dart part of this file, see the +# following page: https://dart.dev/tools/pub/pubspec + +# The following section is specific to Flutter. +flutter: + + # The following line ensures that the Material Icons font is + # included with your application, so that you can use the icons in + # the material Icons class. + uses-material-design: true + + # To add assets to your application, add an assets section, like this: + # assets: + # - images/a_dot_burr.jpeg + # - images/a_dot_ham.jpeg + + # An image asset can refer to one or more resolution-specific "variants", see + # https://flutter.dev/assets-and-images/#resolution-aware. + + # For details regarding adding assets from package dependencies, see + # https://flutter.dev/assets-and-images/#from-packages + + # To add custom fonts to your application, add a fonts section here, + # in this "flutter" section. Each entry in this list should have a + # "family" key with the font family name, and a "fonts" key with a + # list giving the asset and other descriptors for the font. For + # example: + # fonts: + # - family: Schyler + # fonts: + # - asset: fonts/Schyler-Regular.ttf + # - asset: fonts/Schyler-Italic.ttf + # style: italic + # - family: Trajan Pro + # fonts: + # - asset: fonts/TrajanPro.ttf + # - asset: fonts/TrajanPro_Bold.ttf + # weight: 700 + # + # For details regarding fonts from package dependencies, + # see https://flutter.dev/custom-fonts/#from-packages diff --git a/examples/development/plugin_api_migration/analysis_options.yaml b/examples/development/plugin_api_migration/analysis_options.yaml new file mode 100644 index 0000000000..61b6c4de17 --- /dev/null +++ b/examples/development/plugin_api_migration/analysis_options.yaml @@ -0,0 +1,29 @@ +# This file configures the analyzer, which statically analyzes Dart code to +# check for errors, warnings, and lints. +# +# The issues identified by the analyzer are surfaced in the UI of Dart-enabled +# IDEs (https://dart.dev/tools#ides-and-editors). The analyzer can also be +# invoked from the command line by running `flutter analyze`. + +# The following line activates a set of recommended lints for Flutter apps, +# packages, and plugins designed to encourage good coding practices. +include: package:flutter_lints/flutter.yaml + +linter: + # The lint rules applied to this project can be customized in the + # section below to disable rules from the `package:flutter_lints/flutter.yaml` + # included above or to enable additional rules. A list of all available lints + # and their documentation is published at + # https://dart-lang.github.io/linter/lints/index.html. + # + # Instead of disabling a lint rule for the entire project in the + # section below, it can also be suppressed for a single line of code + # or a specific dart file by using the `// ignore: name_of_lint` and + # `// ignore_for_file: name_of_lint` syntax on the line or in the file + # producing the lint. + rules: + # avoid_print: false # Uncomment to disable the `avoid_print` rule + # prefer_single_quotes: true # Uncomment to enable the `prefer_single_quotes` rule + +# Additional information about this file can be found at +# https://dart.dev/guides/language/analysis-options diff --git a/examples/development/plugin_api_migration/lib/css_colors.dart b/examples/development/plugin_api_migration/lib/css_colors.dart new file mode 100644 index 0000000000..3e185f0081 --- /dev/null +++ b/examples/development/plugin_api_migration/lib/css_colors.dart @@ -0,0 +1,28 @@ +// #docregion CssColors +import 'package:css_colors/css_colors.dart'; +import 'package:flutter/material.dart'; + +void main() { + runApp(const MyApp()); +} + +class MyApp extends StatelessWidget { + const MyApp({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + return const MaterialApp( + home: DemoPage(), + ); + } +} + +class DemoPage extends StatelessWidget { + const DemoPage({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + return Scaffold(body: Container(color: CSSColors.orange)); + } +} +// #enddocregion CssColors diff --git a/examples/development/plugin_api_migration/lib/test.dart b/examples/development/plugin_api_migration/lib/test.dart new file mode 100644 index 0000000000..5234d1d714 --- /dev/null +++ b/examples/development/plugin_api_migration/lib/test.dart @@ -0,0 +1,17 @@ +// ignore_for_file: import_of_legacy_library_into_null_safe + +// #docregion Test +import 'package:flutter_test/flutter_test.dart'; +import 'package:battery/battery.dart'; +import 'package:e2e/e2e.dart'; + +void main() { + E2EWidgetsFlutterBinding.ensureInitialized(); + + testWidgets('Can get battery level', (WidgetTester tester) async { + final Battery battery = Battery(); + final int batteryLevel = await battery.batteryLevel; + expect(batteryLevel, isNotNull); + }); +} +// #enddocregion Test diff --git a/examples/development/plugin_api_migration/lib/url_launcher.dart b/examples/development/plugin_api_migration/lib/url_launcher.dart new file mode 100644 index 0000000000..ca33dca36a --- /dev/null +++ b/examples/development/plugin_api_migration/lib/url_launcher.dart @@ -0,0 +1,41 @@ +// ignore_for_file: import_of_legacy_library_into_null_safe + +// #docregion UrlLauncher +import 'package:flutter/material.dart'; +import 'package:url_launcher/url_launcher.dart'; + +void main() { + runApp(const MyApp()); +} + +class MyApp extends StatelessWidget { + const MyApp({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + return const MaterialApp( + home: DemoPage(), + ); + } +} + +class DemoPage extends StatelessWidget { + const DemoPage({Key? key}) : super(key: key); + + launchURL() { + launch('https://flutter.dev'); + } + + @override + Widget build(BuildContext context) { + return Scaffold( + body: Center( + child: ElevatedButton( + onPressed: launchURL, + child: const Text('Show Flutter homepage'), + ), + ), + ); + } +} +// #enddocregion UrlLauncher diff --git a/examples/development/plugin_api_migration/pubspec.yaml b/examples/development/plugin_api_migration/pubspec.yaml new file mode 100644 index 0000000000..5173db1930 --- /dev/null +++ b/examples/development/plugin_api_migration/pubspec.yaml @@ -0,0 +1,93 @@ +name: plugin_api_migration +description: A new Flutter project. + +# The following line prevents the package from being accidentally published to +# pub.dev using `flutter pub publish`. This is preferred for private packages. +publish_to: 'none' # Remove this line if you wish to publish to pub.dev + +# The following defines the version and build number for your application. +# A version number is three numbers separated by dots, like 1.2.43 +# followed by an optional build number separated by a +. +# Both the version and the builder number may be overridden in flutter +# build by specifying --build-name and --build-number, respectively. +# In Android, build-name is used as versionName while build-number used as versionCode. +# Read more about Android versioning at https://developer.android.com/studio/publish/versioning +# In iOS, build-name is used as CFBundleShortVersionString while build-number used as CFBundleVersion. +# Read more about iOS versioning at +# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html +version: 1.0.0+1 + +environment: + sdk: ">=2.12.0 <3.0.0" + +# Dependencies specify other packages that your package needs in order to work. +# To automatically upgrade your package dependencies to the latest versions +# consider running `flutter pub upgrade --major-versions`. Alternatively, +# dependencies can be manually updated by changing the version numbers below to +# the latest version available on pub.dev. To see which dependencies have newer +# versions available, run `flutter pub outdated`. +dependencies: + flutter: + sdk: flutter + css_colors: ^1.0.0 + url_launcher: ^5.4.0 + battery: ^2.0.3 + e2e: ^0.7.0+1 + + + # The following adds the Cupertino Icons font to your application. + # Use with the CupertinoIcons class for iOS style icons. + cupertino_icons: ^1.0.2 + +dev_dependencies: + flutter_test: + sdk: flutter + + # The "flutter_lints" package below contains a set of recommended lints to + # encourage good coding practices. The lint set provided by the package is + # activated in the `analysis_options.yaml` file located at the root of your + # package. See that file for information about deactivating specific lint + # rules and activating additional ones. + flutter_lints: ^1.0.0 + +# For information on the generic Dart part of this file, see the +# following page: https://dart.dev/tools/pub/pubspec + +# The following section is specific to Flutter. +flutter: + + # The following line ensures that the Material Icons font is + # included with your application, so that you can use the icons in + # the material Icons class. + uses-material-design: true + + # To add assets to your application, add an assets section, like this: + # assets: + # - images/a_dot_burr.jpeg + # - images/a_dot_ham.jpeg + + # An image asset can refer to one or more resolution-specific "variants", see + # https://flutter.dev/assets-and-images/#resolution-aware. + + # For details regarding adding assets from package dependencies, see + # https://flutter.dev/assets-and-images/#from-packages + + # To add custom fonts to your application, add a fonts section here, + # in this "flutter" section. Each entry in this list should have a + # "family" key with the font family name, and a "fonts" key with a + # list giving the asset and other descriptors for the font. For + # example: + # fonts: + # - family: Schyler + # fonts: + # - asset: fonts/Schyler-Regular.ttf + # - asset: fonts/Schyler-Italic.ttf + # style: italic + # - family: Trajan Pro + # fonts: + # - asset: fonts/TrajanPro.ttf + # - asset: fonts/TrajanPro_Bold.ttf + # weight: 700 + # + # For details regarding fonts from package dependencies, + # see https://flutter.dev/custom-fonts/#from-packages diff --git a/examples/development/tools/analysis_options.yaml b/examples/development/tools/analysis_options.yaml new file mode 100644 index 0000000000..61b6c4de17 --- /dev/null +++ b/examples/development/tools/analysis_options.yaml @@ -0,0 +1,29 @@ +# This file configures the analyzer, which statically analyzes Dart code to +# check for errors, warnings, and lints. +# +# The issues identified by the analyzer are surfaced in the UI of Dart-enabled +# IDEs (https://dart.dev/tools#ides-and-editors). The analyzer can also be +# invoked from the command line by running `flutter analyze`. + +# The following line activates a set of recommended lints for Flutter apps, +# packages, and plugins designed to encourage good coding practices. +include: package:flutter_lints/flutter.yaml + +linter: + # The lint rules applied to this project can be customized in the + # section below to disable rules from the `package:flutter_lints/flutter.yaml` + # included above or to enable additional rules. A list of all available lints + # and their documentation is published at + # https://dart-lang.github.io/linter/lints/index.html. + # + # Instead of disabling a lint rule for the entire project in the + # section below, it can also be suppressed for a single line of code + # or a specific dart file by using the `// ignore: name_of_lint` and + # `// ignore_for_file: name_of_lint` syntax on the line or in the file + # producing the lint. + rules: + # avoid_print: false # Uncomment to disable the `avoid_print` rule + # prefer_single_quotes: true # Uncomment to enable the `prefer_single_quotes` rule + +# Additional information about this file can be found at +# https://dart.dev/guides/language/analysis-options diff --git a/examples/development/tools/lib/hot-reload/after.dart b/examples/development/tools/lib/hot-reload/after.dart new file mode 100644 index 0000000000..749e80eefb --- /dev/null +++ b/examples/development/tools/lib/hot-reload/after.dart @@ -0,0 +1,70 @@ +// ignore_for_file: avoid_print, prefer_const_declarations, prefer_const_constructors + +import 'package:flutter/material.dart'; + +// #docregion Main +import 'package:flutter/widgets.dart'; + +void main() { + runApp(const Center(child: Text('Hello', textDirection: TextDirection.ltr))); +} +// #enddocregion Main + +// #docregion Enum +class Color { + Color(this.i, this.j); + final int i; + final int j; +} +// #enddocregion Enum + +// #docregion Class +class A { + T? i; + V? v; +} +// #enddocregion Class + +// #docregion SampleTable +final sampleTable = [ + Table( + children: const [ + TableRow( + children: [Text("T1")], + ) + ], + ), + Table( + children: const [ + TableRow( + children: [Text("T2")], + ) + ], + ), + Table( + children: const [ + TableRow( + children: [Text("T3")], + ) + ], + ), + Table( + children: const [ + TableRow( + children: [Text("T10")], // modified + ) + ], + ), +]; +// #enddocregion SampleTable + +// #docregion Const +const foo = 2; // modified +// #docregion FinalFoo +final bar = foo; +// #enddocregion FinalFoo +void onClick() { + print(foo); + print(bar); +} +// #enddocregion Const diff --git a/examples/development/tools/lib/hot-reload/before.dart b/examples/development/tools/lib/hot-reload/before.dart new file mode 100644 index 0000000000..6a8072499d --- /dev/null +++ b/examples/development/tools/lib/hot-reload/before.dart @@ -0,0 +1,74 @@ +// ignore_for_file: avoid_print, prefer_const_declarations, prefer_const_constructors + +/// #docregion Build +import 'package:flutter/material.dart'; + +void main() { + runApp(MyApp()); +} + +class MyApp extends StatelessWidget { + const MyApp({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + return GestureDetector(onTap: () => print('tapped')); + } +} +// #enddocregion Build + +// #docregion Enum +enum Color { + red, + green, + blue, +} +// #enddocregion Enum + +// #docregion Class +class A { + T? i; +} +// #enddocregion Class + +// #docregion SampleTable +final sampleTable = [ + Table( + children: const [ + TableRow( + children: [Text("T1")], + ) + ], + ), + Table( + children: const [ + TableRow( + children: [Text("T2")], + ) + ], + ), + Table( + children: const [ + TableRow( + children: [Text("T3")], + ) + ], + ), + Table( + children: const [ + TableRow( + children: [Text("T4")], + ) + ], + ), +]; +// #enddocregion SampleTable + +// #docregion Const +const foo = 1; +final bar = foo; +void onClick() { + print(foo); + print(bar); +} +// #enddocregion Const diff --git a/examples/development/tools/lib/hot-reload/foo_const.dart b/examples/development/tools/lib/hot-reload/foo_const.dart new file mode 100644 index 0000000000..2cbf3b9de7 --- /dev/null +++ b/examples/development/tools/lib/hot-reload/foo_const.dart @@ -0,0 +1,10 @@ +// ignore_for_file: avoid_print + +// #docregion Const +const foo = 1; +const bar = foo; // Convert foo to a const... +void onClick() { + print(foo); + print(bar); +} +// #enddocregion Const diff --git a/examples/development/tools/lib/hot-reload/getter.dart b/examples/development/tools/lib/hot-reload/getter.dart new file mode 100644 index 0000000000..5a7909a6af --- /dev/null +++ b/examples/development/tools/lib/hot-reload/getter.dart @@ -0,0 +1,10 @@ +// ignore_for_file: avoid_print + +// #docregion Const +const foo = 1; +int get bar => foo; // ...or provide a getter. +void onClick() { + print(foo); + print(bar); +} +// #enddocregion Const diff --git a/examples/development/tools/pubspec.yaml b/examples/development/tools/pubspec.yaml new file mode 100644 index 0000000000..fbafc9ed02 --- /dev/null +++ b/examples/development/tools/pubspec.yaml @@ -0,0 +1,89 @@ +name: tools +description: A new Flutter project. + +# The following line prevents the package from being accidentally published to +# pub.dev using `flutter pub publish`. This is preferred for private packages. +publish_to: 'none' # Remove this line if you wish to publish to pub.dev + +# The following defines the version and build number for your application. +# A version number is three numbers separated by dots, like 1.2.43 +# followed by an optional build number separated by a +. +# Both the version and the builder number may be overridden in flutter +# build by specifying --build-name and --build-number, respectively. +# In Android, build-name is used as versionName while build-number used as versionCode. +# Read more about Android versioning at https://developer.android.com/studio/publish/versioning +# In iOS, build-name is used as CFBundleShortVersionString while build-number used as CFBundleVersion. +# Read more about iOS versioning at +# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html +version: 1.0.0+1 + +environment: + sdk: ">=2.12.0 <3.0.0" + +# Dependencies specify other packages that your package needs in order to work. +# To automatically upgrade your package dependencies to the latest versions +# consider running `flutter pub upgrade --major-versions`. Alternatively, +# dependencies can be manually updated by changing the version numbers below to +# the latest version available on pub.dev. To see which dependencies have newer +# versions available, run `flutter pub outdated`. +dependencies: + flutter: + sdk: flutter + + + # The following adds the Cupertino Icons font to your application. + # Use with the CupertinoIcons class for iOS style icons. + cupertino_icons: ^1.0.2 + +dev_dependencies: + flutter_test: + sdk: flutter + + # The "flutter_lints" package below contains a set of recommended lints to + # encourage good coding practices. The lint set provided by the package is + # activated in the `analysis_options.yaml` file located at the root of your + # package. See that file for information about deactivating specific lint + # rules and activating additional ones. + flutter_lints: ^1.0.0 + +# For information on the generic Dart part of this file, see the +# following page: https://dart.dev/tools/pub/pubspec + +# The following section is specific to Flutter. +flutter: + + # The following line ensures that the Material Icons font is + # included with your application, so that you can use the icons in + # the material Icons class. + uses-material-design: true + + # To add assets to your application, add an assets section, like this: + # assets: + # - images/a_dot_burr.jpeg + # - images/a_dot_ham.jpeg + + # An image asset can refer to one or more resolution-specific "variants", see + # https://flutter.dev/assets-and-images/#resolution-aware. + + # For details regarding adding assets from package dependencies, see + # https://flutter.dev/assets-and-images/#from-packages + + # To add custom fonts to your application, add a fonts section here, + # in this "flutter" section. Each entry in this list should have a + # "family" key with the font family name, and a "fonts" key with a + # list giving the asset and other descriptors for the font. For + # example: + # fonts: + # - family: Schyler + # fonts: + # - asset: fonts/Schyler-Regular.ttf + # - asset: fonts/Schyler-Italic.ttf + # style: italic + # - family: Trajan Pro + # fonts: + # - asset: fonts/TrajanPro.ttf + # - asset: fonts/TrajanPro_Bold.ttf + # weight: 700 + # + # For details regarding fonts from package dependencies, + # see https://flutter.dev/custom-fonts/#from-packages diff --git a/src/docs/development/packages-and-plugins/plugin-api-migration.md b/src/docs/development/packages-and-plugins/plugin-api-migration.md index dc83ef9238..b3aad4c74a 100644 --- a/src/docs/development/packages-and-plugins/plugin-api-migration.md +++ b/src/docs/development/packages-and-plugins/plugin-api-migration.md @@ -3,6 +3,8 @@ title: Supporting the new Android plugins APIs description: How to update a plugin using the old APIs to support the new APIs. --- + + {{site.alert.note}} You might be directed to this page if the framework detects that your app uses a plugin based on the old Android APIs. @@ -250,7 +252,7 @@ but aren't required. This is a smoke test to ensure that the plugin properly registers with the new embedder. For example: - + ```dart import 'package:flutter_test/flutter_test.dart'; import 'package:battery/battery.dart'; diff --git a/src/docs/development/packages-and-plugins/using-packages.md b/src/docs/development/packages-and-plugins/using-packages.md index 46a92c26b9..d8988cc205 100644 --- a/src/docs/development/packages-and-plugins/using-packages.md +++ b/src/docs/development/packages-and-plugins/using-packages.md @@ -3,6 +3,8 @@ title: Using packages description: How to use packages in your Flutter app. --- + + Flutter supports using shared packages contributed by other developers to the Flutter and Dart ecosystems. This allows quickly building an app without having to develop everything from scratch. @@ -311,24 +313,29 @@ To use this package: 1. Open `lib/main.dart` and replace its full contents with: + ```dart import 'package:css_colors/css_colors.dart'; import 'package:flutter/material.dart'; void main() { - runApp(MyApp()); + runApp(const MyApp()); } class MyApp extends StatelessWidget { + const MyApp({Key? key}) : super(key: key); + @override Widget build(BuildContext context) { - return MaterialApp( + return const MaterialApp( home: DemoPage(), ); } } class DemoPage extends StatelessWidget { + const DemoPage({Key? key}) : super(key: key); + @override Widget build(BuildContext context) { return Scaffold(body: Container(color: CSSColors.orange)); @@ -368,24 +375,29 @@ To use this plugin: 1. Open `lib/main.dart` and replace its full contents with the following: + ```dart import 'package:flutter/material.dart'; import 'package:url_launcher/url_launcher.dart'; void main() { - runApp(MyApp()); + runApp(const MyApp()); } class MyApp extends StatelessWidget { + const MyApp({Key? key}) : super(key: key); + @override Widget build(BuildContext context) { - return MaterialApp( + return const MaterialApp( home: DemoPage(), ); } } class DemoPage extends StatelessWidget { + const DemoPage({Key? key}) : super(key: key); + launchURL() { launch('https://flutter.dev'); } @@ -396,7 +408,7 @@ To use this plugin: body: Center( child: ElevatedButton( onPressed: launchURL, - child: Text('Show Flutter homepage'), + child: const Text('Show Flutter homepage'), ), ), ); diff --git a/src/docs/development/platform-integration/c-interop.md b/src/docs/development/platform-integration/c-interop.md index 3ce27dd229..f71927904f 100644 --- a/src/docs/development/platform-integration/c-interop.md +++ b/src/docs/development/platform-integration/c-interop.md @@ -3,6 +3,8 @@ title: "Binding to native code using dart:ffi" description: "To use C code in your Flutter program, use the dart:ffi library (currently in beta)." --- + + Flutter mobile can use the [dart:ffi][] library to call native C APIs. _FFI_ stands for [_foreign function interface._][FFI] @@ -159,6 +161,7 @@ Dart binding code is not important. First, you must create a `DynamicLibrary` handle to the native code. This step varies between iOS and Android: + ```dart import 'dart:ffi'; // For FFI import 'dart:io'; // For Platform.isX @@ -175,10 +178,9 @@ but on iOS it takes the plugin's name. With a handle to the enclosing library, you can resolve the `native_add` symbol: - + ```dart -final int Function(int x, int y) nativeAdd = - nativeAddLib +final int Function(int x, int y) nativeAdd = nativeAddLib .lookup>("native_add") .asFunction(); ``` diff --git a/src/docs/development/platform-integration/platform-channels.md b/src/docs/development/platform-integration/platform-channels.md index 94d6482a0b..d2f7b3e1dc 100644 --- a/src/docs/development/platform-integration/platform-channels.md +++ b/src/docs/development/platform-integration/platform-channels.md @@ -4,6 +4,8 @@ short-title: Platform-specific code description: Learn how to write custom platform-specific code in your app. --- + + This guide describes how to write custom platform-specific code. Some platform-specific functionality is available through existing packages; see [using packages][]. @@ -145,18 +147,17 @@ All channel names used in a single app must be unique; prefix the channel name with a unique 'domain prefix', for example: `samples.flutter.dev/battery`. - + ```dart import 'dart:async'; - import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; -... +``` + +```dart class _MyHomePageState extends State { static const platform = MethodChannel('samples.flutter.dev/battery'); - // Get battery level. -} ``` Next, invoke a method on the method channel, specifying the concrete method @@ -168,49 +169,49 @@ platform API (such as when running in a simulator)—so wrap the Use the returned result to update the user interface state in `_batteryLevel` inside `setState`. - + ```dart - // Get battery level. - String _batteryLevel = 'Unknown battery level.'; - - Future _getBatteryLevel() async { - String batteryLevel; - try { - final int result = await platform.invokeMethod('getBatteryLevel'); - batteryLevel = 'Battery level at $result % .'; - } on PlatformException catch (e) { - batteryLevel = "Failed to get battery level: '${e.message}'."; - } - - setState(() { - _batteryLevel = batteryLevel; - }); +// Get battery level. +String _batteryLevel = 'Unknown battery level.'; + +Future _getBatteryLevel() async { + String batteryLevel; + try { + final int result = await platform.invokeMethod('getBatteryLevel'); + batteryLevel = 'Battery level at $result % .'; + } on PlatformException catch (e) { + batteryLevel = "Failed to get battery level: '${e.message}'."; } + + setState(() { + _batteryLevel = batteryLevel; + }); +} ``` Finally, replace the `build` method from the template to contain a small user interface that displays the battery state in a string, and a button for refreshing the value. - + ```dart - @override - Widget build(BuildContext context) { - return Material( - child: Center( - child: Column( - mainAxisAlignment: MainAxisAlignment.spaceEvenly, - children: [ - ElevatedButton( - child: Text('Get Battery Level'), - onPressed: _getBatteryLevel, - ), - Text(_batteryLevel), - ], - ), +@override +Widget build(BuildContext context) { + return Material( + child: Center( + child: Column( + mainAxisAlignment: MainAxisAlignment.spaceEvenly, + children: [ + ElevatedButton( + child: const Text('Get Battery Level'), + onPressed: _getBatteryLevel, + ), + Text(_batteryLevel), + ], ), - ); - } + ), + ); +} ``` ### Step 3: Add an Android platform-specific implementation @@ -663,33 +664,33 @@ languages are Objective-C, Java, Kotlin and Swift (via Objective-C interop). **Pigeon file:** - + ```dart import 'package:pigeon/pigeon.dart'; class SearchRequest { - String query; + String query = ""; } class SearchReply { - String result; + String result = ""; } @HostApi() abstract class Api { - SearchReply search(SearchRequest request); + Future search(SearchRequest request); } ``` **Dart usage:** - + ```dart -import 'generated_pigeon.dart' +import 'generated_pigeon.dart'; void onClick() async { SearchRequest request = SearchRequest()..query = 'test'; - Api api = Api(); + Api api = SomeApi(); SearchReply reply = await api.search(request); print('reply: ${reply.result}'); } diff --git a/src/docs/development/tools/hot-reload.md b/src/docs/development/tools/hot-reload.md index ec4d6b5ad9..b1ab39ff48 100644 --- a/src/docs/development/tools/hot-reload.md +++ b/src/docs/development/tools/hot-reload.md @@ -3,6 +3,8 @@ title: Hot reload description: Speed up development using Flutter's hot reload feature. --- + + Flutter's hot reload feature helps you quickly and easily experiment, build UIs, add features, and fix bugs. Hot reload works by injecting updated source code files into @@ -122,17 +124,17 @@ changed to enumerated types. For example: Before the change: - + ```dart enum Color { red, green, - blue + blue, } ``` After the change: - + ```dart class Color { Color(this.i, this.j); @@ -152,7 +154,7 @@ Hot reload won't work when generic type declarations are modified. For example, the following won't work: Before the change: - + ```dart class A { T? i; @@ -160,7 +162,7 @@ class A { ``` After the change: - + ```dart class A { T? i; @@ -209,25 +211,73 @@ If you change initializers of global variables and static fields, a full restart is necessary to see the changes. For example, consider the following code: - + ```dart final sampleTable = [ - Table("T1"), - Table("T2"), - Table("T3"), - Table("T4"), + Table( + children: const [ + TableRow( + children: [Text("T1")], + ) + ], + ), + Table( + children: const [ + TableRow( + children: [Text("T2")], + ) + ], + ), + Table( + children: const [ + TableRow( + children: [Text("T3")], + ) + ], + ), + Table( + children: const [ + TableRow( + children: [Text("T4")], + ) + ], + ), ]; ``` After running the app, you make the following change: - + ```dart final sampleTable = [ - Table("T1"), - Table("T2"), - Table("T3"), - Table("T10"), // modified + Table( + children: const [ + TableRow( + children: [Text("T1")], + ) + ], + ), + Table( + children: const [ + TableRow( + children: [Text("T2")], + ) + ], + ), + Table( + children: const [ + TableRow( + children: [Text("T3")], + ) + ], + ), + Table( + children: const [ + TableRow( + children: [Text("T10")], // modified + ) + ], + ), ]; ``` @@ -235,7 +285,7 @@ You hot reload, but the change is not reflected. Conversely, in the following example: - + ```dart const foo = 1; final bar = foo; @@ -248,9 +298,9 @@ void onClick() { Running the app for the first time prints `1` and `1`. Then, you make the following change: - + ```dart -const foo = 2; // modified +const foo = 2; // modified final bar = foo; void onClick() { print(foo); @@ -268,7 +318,7 @@ The flagging mechanism is triggered for most of the initialization work in the above example, but not for cases like the following: - + ```dart final bar = foo; ``` @@ -278,10 +328,24 @@ consider redefining the field as `const` or using a getter to return the value, rather than using `final`. For example, either of the following solutions work: - + ```dart -const bar = foo; // Convert foo to a const... -int get bar => foo; // ...or provide a getter. +const foo = 1; +const bar = foo; // Convert foo to a const... +void onClick() { + print(foo); + print(bar); +} +``` + + +```dart +const foo = 1; +int get bar => foo; // ...or provide a getter. +void onClick() { + print(foo); + print(bar); +} ``` For more information, read about the [differences @@ -302,6 +366,7 @@ see its effects after hot reload. For example, consider the following code: + ```dart import 'package:flutter/material.dart'; @@ -310,6 +375,9 @@ void main() { } class MyApp extends StatelessWidget { + const MyApp({Key? key}) : super(key: key); + + @override Widget build(BuildContext context) { return GestureDetector(onTap: () => print('tapped')); } @@ -318,12 +386,12 @@ class MyApp extends StatelessWidget { After running this app, change the code as follows: + ```dart import 'package:flutter/widgets.dart'; void main() { - runApp(const Center( - child: const Text('Hello', textDirection: TextDirection.ltr))); + runApp(const Center(child: Text('Hello', textDirection: TextDirection.ltr))); } ``` diff --git a/src/docs/development/ui/layout/building-adaptive-apps.md b/src/docs/development/ui/layout/building-adaptive-apps.md index 75c7f45828..39e5d2578d 100644 --- a/src/docs/development/ui/layout/building-adaptive-apps.md +++ b/src/docs/development/ui/layout/building-adaptive-apps.md @@ -275,7 +275,6 @@ you might swap some of the children completely: ```dart Widget foo = Row( children: [ - BackButton(), ...isHandset ? _getHandsetChildren() : _getNormalChildren(), ], ); @@ -354,9 +353,12 @@ This can be done easily with some helper classes: ```dart -class InsetValues { - static const double xsmall = 4; - static const double small = 8; +class Insets { + static const double xsmall = 3; + static const double small = 4; + static const double medium = 5; + static const double large = 10; + static const double extraLarge = 20; // etc } @@ -365,10 +367,16 @@ class Fonts { // etc } -class TextStylesValues { +class TextStyles { static const TextStyle raleway = const TextStyle( fontFamily: Fonts.raleway, ); + static TextStyle buttonText1 = + TextStyle(fontWeight: FontWeight.bold, fontSize: 14); + static TextStyle buttonText2 = + TextStyle(fontWeight: FontWeight.normal, fontSize: 11); + static TextStyle h1 = TextStyle(fontWeight: FontWeight.bold, fontSize: 22); + static TextStyle h2 = TextStyle(fontWeight: FontWeight.bold, fontSize: 16); static late TextStyle body1 = raleway.copyWith(color: Color(0xFF42A5F5)); // etc } @@ -379,8 +387,8 @@ These constants can then be used in place of hard-coded numeric values: ```dart return Padding( - padding: EdgeInsets.all(InsetValues.small), - child: Text('Hello!', style: TextStylesValues.body1), + padding: EdgeInsets.all(Insets.small), + child: Text('Hello!', style: TextStyles.body1), ); ``` From f0eeafa85926a6c3c6946ce03bb621664610d012 Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Thu, 30 Dec 2021 17:30:05 -0500 Subject: [PATCH 25/64] excerpts for cookbook/networking/send-data --- .../networking/send_data/lib/create_album.dart | 16 ++++++++++++++++ .../cookbook/networking/send_data/lib/main.dart | 2 ++ src/cookbook/networking/send-data.md | 4 ++-- 3 files changed, 20 insertions(+), 2 deletions(-) create mode 100644 examples/cookbook/networking/send_data/lib/create_album.dart diff --git a/examples/cookbook/networking/send_data/lib/create_album.dart b/examples/cookbook/networking/send_data/lib/create_album.dart new file mode 100644 index 0000000000..808be3fd75 --- /dev/null +++ b/examples/cookbook/networking/send_data/lib/create_album.dart @@ -0,0 +1,16 @@ +import 'package:http/http.dart' as http; +import 'dart:convert'; + +// #docregion CreateAlbum +Future createAlbum(String title) { + return http.post( + Uri.parse('https://jsonplaceholder.typicode.com/albums'), + headers: { + 'Content-Type': 'application/json; charset=UTF-8', + }, + body: jsonEncode({ + 'title': title, + }), + ); +} +// #enddocregion CreateAlbum diff --git a/examples/cookbook/networking/send_data/lib/main.dart b/examples/cookbook/networking/send_data/lib/main.dart index 984024c66d..0ae129fbd5 100644 --- a/examples/cookbook/networking/send_data/lib/main.dart +++ b/examples/cookbook/networking/send_data/lib/main.dart @@ -2,7 +2,9 @@ import 'dart:async'; import 'dart:convert'; import 'package:flutter/material.dart'; +// #docregion Http import 'package:http/http.dart' as http; +// #enddocregion Http // #docregion createAlbum Future createAlbum(String title) async { diff --git a/src/cookbook/networking/send-data.md b/src/cookbook/networking/send-data.md index 93a6e7543c..cd5163daa7 100644 --- a/src/cookbook/networking/send-data.md +++ b/src/cookbook/networking/send-data.md @@ -35,7 +35,7 @@ dependencies: Import the `http` package. - + ```dart import 'package:http/http.dart' as http; ``` @@ -54,7 +54,7 @@ by sending an album title to the [JSONPlaceholder][] using the [`http.post()`][] method. - + ```dart Future createAlbum(String title) { return http.post( From 3b718a93cdf97a1fc51ac18cc706f8ef10dd8ad9 Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Thu, 30 Dec 2021 17:34:48 -0500 Subject: [PATCH 26/64] one excerpt for cookbook/networking/delete-data --- examples/cookbook/networking/delete_data/lib/main.dart | 2 ++ src/cookbook/networking/delete-data.md | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/examples/cookbook/networking/delete_data/lib/main.dart b/examples/cookbook/networking/delete_data/lib/main.dart index 00ea271c00..edaa3b0b91 100644 --- a/examples/cookbook/networking/delete_data/lib/main.dart +++ b/examples/cookbook/networking/delete_data/lib/main.dart @@ -2,7 +2,9 @@ import 'dart:async'; import 'dart:convert'; import 'package:flutter/material.dart'; +// #docregion Http import 'package:http/http.dart' as http; +// #enddocregion Http Future fetchAlbum() async { final response = await http.get( diff --git a/src/cookbook/networking/delete-data.md b/src/cookbook/networking/delete-data.md index 3fc082f046..c61527a606 100644 --- a/src/cookbook/networking/delete-data.md +++ b/src/cookbook/networking/delete-data.md @@ -34,7 +34,7 @@ dependencies: Import the `http` package. - + ```dart import 'package:http/http.dart' as http; ``` From e4f5e2839d2e07e8bc18308d456026c2e7d1680d Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Thu, 30 Dec 2021 17:37:57 -0500 Subject: [PATCH 27/64] excerpt for cookbook/networking/fetch-data --- examples/cookbook/networking/fetch_data/lib/main.dart | 2 ++ src/cookbook/networking/fetch-data.md | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/examples/cookbook/networking/fetch_data/lib/main.dart b/examples/cookbook/networking/fetch_data/lib/main.dart index a36467c232..fecd8f9ec1 100644 --- a/examples/cookbook/networking/fetch_data/lib/main.dart +++ b/examples/cookbook/networking/fetch_data/lib/main.dart @@ -2,7 +2,9 @@ import 'dart:async'; import 'dart:convert'; import 'package:flutter/material.dart'; +// #docregion Http import 'package:http/http.dart' as http; +// #enddocregion Http // #docregion fetchAlbum Future fetchAlbum() async { diff --git a/src/cookbook/networking/fetch-data.md b/src/cookbook/networking/fetch-data.md index f302cf8c1f..983723b25f 100644 --- a/src/cookbook/networking/fetch-data.md +++ b/src/cookbook/networking/fetch-data.md @@ -39,7 +39,7 @@ dependencies: Import the http package. - + ```dart import 'package:http/http.dart' as http; ``` From b43740bb394f6d4013ee1d3a5ab7aae50dda46ae Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Thu, 30 Dec 2021 17:41:57 -0500 Subject: [PATCH 28/64] excerpt for cookbook/networking/update-data --- examples/cookbook/networking/update_data/lib/main.dart | 2 ++ src/cookbook/networking/update-data.md | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/examples/cookbook/networking/update_data/lib/main.dart b/examples/cookbook/networking/update_data/lib/main.dart index acec87d4b7..26eae1c5f5 100644 --- a/examples/cookbook/networking/update_data/lib/main.dart +++ b/examples/cookbook/networking/update_data/lib/main.dart @@ -2,7 +2,9 @@ import 'dart:async'; import 'dart:convert'; import 'package:flutter/material.dart'; +// #docregion Http import 'package:http/http.dart' as http; +// #enddocregion Http // #docregion fetchAlbum Future fetchAlbum() async { diff --git a/src/cookbook/networking/update-data.md b/src/cookbook/networking/update-data.md index 2b61fb8c55..e3126169d6 100644 --- a/src/cookbook/networking/update-data.md +++ b/src/cookbook/networking/update-data.md @@ -38,7 +38,7 @@ dependencies: Import the `http` package. - + ```dart import 'package:http/http.dart' as http; ``` From 5c776f90d15ec6cd41325d6f86a5bd999561f1aa Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Fri, 7 Jan 2022 17:57:29 -0600 Subject: [PATCH 29/64] last excerpt for cookbook/navigation/passing-data --- .../cookbook/navigation/passing_data/lib/main_todoscreen.dart | 2 ++ src/cookbook/navigation/passing-data.md | 4 ++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/examples/cookbook/navigation/passing_data/lib/main_todoscreen.dart b/examples/cookbook/navigation/passing_data/lib/main_todoscreen.dart index 7dd0c301a4..fa37418325 100644 --- a/examples/cookbook/navigation/passing_data/lib/main_todoscreen.dart +++ b/examples/cookbook/navigation/passing_data/lib/main_todoscreen.dart @@ -21,6 +21,7 @@ class TodosScreen extends StatelessWidget { title: const Text('Todos'), ), //passing in the ListView.builder + // #docregion ListViewBuilder body: ListView.builder( itemCount: todos.length, itemBuilder: (context, index) { @@ -29,6 +30,7 @@ class TodosScreen extends StatelessWidget { ); }, ), + // #enddocregion ListViewBuilder ); } } diff --git a/src/cookbook/navigation/passing-data.md b/src/cookbook/navigation/passing-data.md index c76f95ed4f..704a17980e 100644 --- a/src/cookbook/navigation/passing-data.md +++ b/src/cookbook/navigation/passing-data.md @@ -67,7 +67,7 @@ final todos = List.generate( ### Display the list of todos using a ListView - + ```dart ListView.builder( itemCount: todos.length, @@ -76,7 +76,7 @@ ListView.builder( title: Text(todos[index].title), ); }, -); +), ``` So far, so good. From be716fe112200716dd0df9bac0142789852327fd Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Fri, 7 Jan 2022 18:01:41 -0600 Subject: [PATCH 30/64] navigation_basics --- .../navigation_basics/analysis_options.yaml | 29 +++++ .../navigation_basics/lib/main.dart | 115 ++++++++++++++++++ .../navigation/navigation_basics/pubspec.yaml | 89 ++++++++++++++ 3 files changed, 233 insertions(+) create mode 100644 examples/cookbook/navigation/navigation_basics/analysis_options.yaml create mode 100644 examples/cookbook/navigation/navigation_basics/lib/main.dart create mode 100644 examples/cookbook/navigation/navigation_basics/pubspec.yaml diff --git a/examples/cookbook/navigation/navigation_basics/analysis_options.yaml b/examples/cookbook/navigation/navigation_basics/analysis_options.yaml new file mode 100644 index 0000000000..61b6c4de17 --- /dev/null +++ b/examples/cookbook/navigation/navigation_basics/analysis_options.yaml @@ -0,0 +1,29 @@ +# This file configures the analyzer, which statically analyzes Dart code to +# check for errors, warnings, and lints. +# +# The issues identified by the analyzer are surfaced in the UI of Dart-enabled +# IDEs (https://dart.dev/tools#ides-and-editors). The analyzer can also be +# invoked from the command line by running `flutter analyze`. + +# The following line activates a set of recommended lints for Flutter apps, +# packages, and plugins designed to encourage good coding practices. +include: package:flutter_lints/flutter.yaml + +linter: + # The lint rules applied to this project can be customized in the + # section below to disable rules from the `package:flutter_lints/flutter.yaml` + # included above or to enable additional rules. A list of all available lints + # and their documentation is published at + # https://dart-lang.github.io/linter/lints/index.html. + # + # Instead of disabling a lint rule for the entire project in the + # section below, it can also be suppressed for a single line of code + # or a specific dart file by using the `// ignore: name_of_lint` and + # `// ignore_for_file: name_of_lint` syntax on the line or in the file + # producing the lint. + rules: + # avoid_print: false # Uncomment to disable the `avoid_print` rule + # prefer_single_quotes: true # Uncomment to enable the `prefer_single_quotes` rule + +# Additional information about this file can be found at +# https://dart.dev/guides/language/analysis-options diff --git a/examples/cookbook/navigation/navigation_basics/lib/main.dart b/examples/cookbook/navigation/navigation_basics/lib/main.dart new file mode 100644 index 0000000000..202509be15 --- /dev/null +++ b/examples/cookbook/navigation/navigation_basics/lib/main.dart @@ -0,0 +1,115 @@ +import 'package:flutter/material.dart'; + +void main() { + runApp(const MyApp()); +} + +class MyApp extends StatelessWidget { + const MyApp({Key? key}) : super(key: key); + + // This widget is the root of your application. + @override + Widget build(BuildContext context) { + return MaterialApp( + title: 'Flutter Demo', + theme: ThemeData( + // This is the theme of your application. + // + // Try running your application with "flutter run". You'll see the + // application has a blue toolbar. Then, without quitting the app, try + // changing the primarySwatch below to Colors.green and then invoke + // "hot reload" (press "r" in the console where you ran "flutter run", + // or simply save your changes to "hot reload" in a Flutter IDE). + // Notice that the counter didn't reset back to zero; the application + // is not restarted. + primarySwatch: Colors.blue, + ), + home: const MyHomePage(title: 'Flutter Demo Home Page'), + ); + } +} + +class MyHomePage extends StatefulWidget { + const MyHomePage({Key? key, required this.title}) : super(key: key); + + // This widget is the home page of your application. It is stateful, meaning + // that it has a State object (defined below) that contains fields that affect + // how it looks. + + // This class is the configuration for the state. It holds the values (in this + // case the title) provided by the parent (in this case the App widget) and + // used by the build method of the State. Fields in a Widget subclass are + // always marked "final". + + final String title; + + @override + State createState() => _MyHomePageState(); +} + +class _MyHomePageState extends State { + int _counter = 0; + + void _incrementCounter() { + setState(() { + // This call to setState tells the Flutter framework that something has + // changed in this State, which causes it to rerun the build method below + // so that the display can reflect the updated values. If we changed + // _counter without calling setState(), then the build method would not be + // called again, and so nothing would appear to happen. + _counter++; + }); + } + + @override + Widget build(BuildContext context) { + // This method is rerun every time setState is called, for instance as done + // by the _incrementCounter method above. + // + // The Flutter framework has been optimized to make rerunning build methods + // fast, so that you can just rebuild anything that needs updating rather + // than having to individually change instances of widgets. + return Scaffold( + appBar: AppBar( + // Here we take the value from the MyHomePage object that was created by + // the App.build method, and use it to set our appbar title. + title: Text(widget.title), + ), + body: Center( + // Center is a layout widget. It takes a single child and positions it + // in the middle of the parent. + child: Column( + // Column is also a layout widget. It takes a list of children and + // arranges them vertically. By default, it sizes itself to fit its + // children horizontally, and tries to be as tall as its parent. + // + // Invoke "debug painting" (press "p" in the console, choose the + // "Toggle Debug Paint" action from the Flutter Inspector in Android + // Studio, or the "Toggle Debug Paint" command in Visual Studio Code) + // to see the wireframe for each widget. + // + // Column has various properties to control how it sizes itself and + // how it positions its children. Here we use mainAxisAlignment to + // center the children vertically; the main axis here is the vertical + // axis because Columns are vertical (the cross axis would be + // horizontal). + mainAxisAlignment: MainAxisAlignment.center, + children: [ + const Text( + 'You have pushed the button this many times:', + ), + Text( + '$_counter', + style: Theme.of(context).textTheme.headline4, + ), + ], + ), + ), + floatingActionButton: FloatingActionButton( + onPressed: _incrementCounter, + tooltip: 'Increment', + child: const Icon(Icons.add), + ), // This trailing comma makes auto-formatting nicer for build methods. + ); + } +} diff --git a/examples/cookbook/navigation/navigation_basics/pubspec.yaml b/examples/cookbook/navigation/navigation_basics/pubspec.yaml new file mode 100644 index 0000000000..2d473f6ef5 --- /dev/null +++ b/examples/cookbook/navigation/navigation_basics/pubspec.yaml @@ -0,0 +1,89 @@ +name: navigation_basics +description: A new Flutter project. + +# The following line prevents the package from being accidentally published to +# pub.dev using `flutter pub publish`. This is preferred for private packages. +publish_to: 'none' # Remove this line if you wish to publish to pub.dev + +# The following defines the version and build number for your application. +# A version number is three numbers separated by dots, like 1.2.43 +# followed by an optional build number separated by a +. +# Both the version and the builder number may be overridden in flutter +# build by specifying --build-name and --build-number, respectively. +# In Android, build-name is used as versionName while build-number used as versionCode. +# Read more about Android versioning at https://developer.android.com/studio/publish/versioning +# In iOS, build-name is used as CFBundleShortVersionString while build-number used as CFBundleVersion. +# Read more about iOS versioning at +# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html +version: 1.0.0+1 + +environment: + sdk: ">=2.15.1 <3.0.0" + +# Dependencies specify other packages that your package needs in order to work. +# To automatically upgrade your package dependencies to the latest versions +# consider running `flutter pub upgrade --major-versions`. Alternatively, +# dependencies can be manually updated by changing the version numbers below to +# the latest version available on pub.dev. To see which dependencies have newer +# versions available, run `flutter pub outdated`. +dependencies: + flutter: + sdk: flutter + + + # The following adds the Cupertino Icons font to your application. + # Use with the CupertinoIcons class for iOS style icons. + cupertino_icons: ^1.0.2 + +dev_dependencies: + flutter_test: + sdk: flutter + + # The "flutter_lints" package below contains a set of recommended lints to + # encourage good coding practices. The lint set provided by the package is + # activated in the `analysis_options.yaml` file located at the root of your + # package. See that file for information about deactivating specific lint + # rules and activating additional ones. + flutter_lints: ^1.0.0 + +# For information on the generic Dart part of this file, see the +# following page: https://dart.dev/tools/pub/pubspec + +# The following section is specific to Flutter. +flutter: + + # The following line ensures that the Material Icons font is + # included with your application, so that you can use the icons in + # the material Icons class. + uses-material-design: true + + # To add assets to your application, add an assets section, like this: + # assets: + # - images/a_dot_burr.jpeg + # - images/a_dot_ham.jpeg + + # An image asset can refer to one or more resolution-specific "variants", see + # https://flutter.dev/assets-and-images/#resolution-aware. + + # For details regarding adding assets from package dependencies, see + # https://flutter.dev/assets-and-images/#from-packages + + # To add custom fonts to your application, add a fonts section here, + # in this "flutter" section. Each entry in this list should have a + # "family" key with the font family name, and a "fonts" key with a + # list giving the asset and other descriptors for the font. For + # example: + # fonts: + # - family: Schyler + # fonts: + # - asset: fonts/Schyler-Regular.ttf + # - asset: fonts/Schyler-Italic.ttf + # style: italic + # - family: Trajan Pro + # fonts: + # - asset: fonts/TrajanPro.ttf + # - asset: fonts/TrajanPro_Bold.ttf + # weight: 700 + # + # For details regarding fonts from package dependencies, + # see https://flutter.dev/custom-fonts/#from-packages From 5d41f23416192f8e60ec131b9e5cfe508a45683b Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Fri, 7 Jan 2022 18:39:37 -0600 Subject: [PATCH 31/64] code excerpts for cookbook/navigation/navigation_basics --- .../navigation_basics/analysis_options.yaml | 2 +- .../navigation_basics/lib/main.dart | 118 +++++------------- .../navigation_basics/lib/main_step1.dart | 45 +++++++ .../navigation_basics/lib/main_step2.dart | 53 ++++++++ src/cookbook/navigation/navigation-basics.md | 20 +-- 5 files changed, 139 insertions(+), 99 deletions(-) create mode 100644 examples/cookbook/navigation/navigation_basics/lib/main_step1.dart create mode 100644 examples/cookbook/navigation/navigation_basics/lib/main_step2.dart diff --git a/examples/cookbook/navigation/navigation_basics/analysis_options.yaml b/examples/cookbook/navigation/navigation_basics/analysis_options.yaml index 61b6c4de17..b27b7286ea 100644 --- a/examples/cookbook/navigation/navigation_basics/analysis_options.yaml +++ b/examples/cookbook/navigation/navigation_basics/analysis_options.yaml @@ -23,7 +23,7 @@ linter: # producing the lint. rules: # avoid_print: false # Uncomment to disable the `avoid_print` rule - # prefer_single_quotes: true # Uncomment to enable the `prefer_single_quotes` rule + prefer_single_quotes: true # Additional information about this file can be found at # https://dart.dev/guides/language/analysis-options diff --git a/examples/cookbook/navigation/navigation_basics/lib/main.dart b/examples/cookbook/navigation/navigation_basics/lib/main.dart index 202509be15..b579a7d929 100644 --- a/examples/cookbook/navigation/navigation_basics/lib/main.dart +++ b/examples/cookbook/navigation/navigation_basics/lib/main.dart @@ -1,115 +1,53 @@ import 'package:flutter/material.dart'; void main() { - runApp(const MyApp()); + runApp(const MaterialApp( + title: 'Navigation Basics', + home: FirstRoute(), + )); } -class MyApp extends StatelessWidget { - const MyApp({Key? key}) : super(key: key); +class FirstRoute extends StatelessWidget { + const FirstRoute({Key? key}) : super(key: key); - // This widget is the root of your application. @override Widget build(BuildContext context) { - return MaterialApp( - title: 'Flutter Demo', - theme: ThemeData( - // This is the theme of your application. - // - // Try running your application with "flutter run". You'll see the - // application has a blue toolbar. Then, without quitting the app, try - // changing the primarySwatch below to Colors.green and then invoke - // "hot reload" (press "r" in the console where you ran "flutter run", - // or simply save your changes to "hot reload" in a Flutter IDE). - // Notice that the counter didn't reset back to zero; the application - // is not restarted. - primarySwatch: Colors.blue, + return Scaffold( + appBar: AppBar( + title: const Text('First Route'), + ), + body: Center( + child: ElevatedButton( + child: const Text('Open route'), + onPressed: () { + Navigator.push( + context, + MaterialPageRoute(builder: (context) => const SecondRoute()), + ); + }, + ), ), - home: const MyHomePage(title: 'Flutter Demo Home Page'), ); } } -class MyHomePage extends StatefulWidget { - const MyHomePage({Key? key, required this.title}) : super(key: key); - - // This widget is the home page of your application. It is stateful, meaning - // that it has a State object (defined below) that contains fields that affect - // how it looks. - - // This class is the configuration for the state. It holds the values (in this - // case the title) provided by the parent (in this case the App widget) and - // used by the build method of the State. Fields in a Widget subclass are - // always marked "final". - - final String title; - - @override - State createState() => _MyHomePageState(); -} - -class _MyHomePageState extends State { - int _counter = 0; - - void _incrementCounter() { - setState(() { - // This call to setState tells the Flutter framework that something has - // changed in this State, which causes it to rerun the build method below - // so that the display can reflect the updated values. If we changed - // _counter without calling setState(), then the build method would not be - // called again, and so nothing would appear to happen. - _counter++; - }); - } +class SecondRoute extends StatelessWidget { + const SecondRoute({Key? key}) : super(key: key); @override Widget build(BuildContext context) { - // This method is rerun every time setState is called, for instance as done - // by the _incrementCounter method above. - // - // The Flutter framework has been optimized to make rerunning build methods - // fast, so that you can just rebuild anything that needs updating rather - // than having to individually change instances of widgets. return Scaffold( appBar: AppBar( - // Here we take the value from the MyHomePage object that was created by - // the App.build method, and use it to set our appbar title. - title: Text(widget.title), + title: const Text('Second Route'), ), body: Center( - // Center is a layout widget. It takes a single child and positions it - // in the middle of the parent. - child: Column( - // Column is also a layout widget. It takes a list of children and - // arranges them vertically. By default, it sizes itself to fit its - // children horizontally, and tries to be as tall as its parent. - // - // Invoke "debug painting" (press "p" in the console, choose the - // "Toggle Debug Paint" action from the Flutter Inspector in Android - // Studio, or the "Toggle Debug Paint" command in Visual Studio Code) - // to see the wireframe for each widget. - // - // Column has various properties to control how it sizes itself and - // how it positions its children. Here we use mainAxisAlignment to - // center the children vertically; the main axis here is the vertical - // axis because Columns are vertical (the cross axis would be - // horizontal). - mainAxisAlignment: MainAxisAlignment.center, - children: [ - const Text( - 'You have pushed the button this many times:', - ), - Text( - '$_counter', - style: Theme.of(context).textTheme.headline4, - ), - ], + child: ElevatedButton( + onPressed: () { + Navigator.pop(context); + }, + child: const Text('Go back!'), ), ), - floatingActionButton: FloatingActionButton( - onPressed: _incrementCounter, - tooltip: 'Increment', - child: const Icon(Icons.add), - ), // This trailing comma makes auto-formatting nicer for build methods. ); } } diff --git a/examples/cookbook/navigation/navigation_basics/lib/main_step1.dart b/examples/cookbook/navigation/navigation_basics/lib/main_step1.dart new file mode 100644 index 0000000000..f2f4844dc8 --- /dev/null +++ b/examples/cookbook/navigation/navigation_basics/lib/main_step1.dart @@ -0,0 +1,45 @@ +import 'package:flutter/material.dart'; + +// #docregion FirstSecondRoutes +class FirstRoute extends StatelessWidget { + const FirstRoute({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar( + title: const Text('First Route'), + ), + body: Center( + child: ElevatedButton( + child: const Text('Open route'), + onPressed: () { + // Navigate to second route when tapped. + }, + ), + ), + ); + } +} + +class SecondRoute extends StatelessWidget { + const SecondRoute({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar( + title: const Text('Second Route'), + ), + body: Center( + child: ElevatedButton( + onPressed: () { + // Navigate back to first route when tapped. + }, + child: const Text('Go back!'), + ), + ), + ); + } +} +// #enddocregion Main diff --git a/examples/cookbook/navigation/navigation_basics/lib/main_step2.dart b/examples/cookbook/navigation/navigation_basics/lib/main_step2.dart new file mode 100644 index 0000000000..6c3c44237a --- /dev/null +++ b/examples/cookbook/navigation/navigation_basics/lib/main_step2.dart @@ -0,0 +1,53 @@ +import 'package:flutter/material.dart'; + +class FirstRoute extends StatelessWidget { + const FirstRoute({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar( + title: const Text('First Route'), + ), + body: Center( + child: ElevatedButton( + child: const Text('Open route'), + // #docregion FirstRouteOnPressed + // Within the `FirstRoute` widget + onPressed: () { + Navigator.push( + context, + MaterialPageRoute(builder: (context) => const SecondRoute()), + ); + } + // #enddocregion FirstRouteOnPressed + ), + ), + ); + } +} + +class SecondRoute extends StatelessWidget { + const SecondRoute({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar( + title: const Text('Second Route'), + ), + body: Center( + child: ElevatedButton( + // #docregion SecondRouteOnPressed + // Within the SecondRoute widget + onPressed: () { + Navigator.pop(context); + } + // #enddocregion SecondRouteOnPressed + , + child: const Text('Go back!'), + ), + ), + ); + } +} diff --git a/src/cookbook/navigation/navigation-basics.md b/src/cookbook/navigation/navigation-basics.md index bec5a5f2d9..8f1884255c 100644 --- a/src/cookbook/navigation/navigation-basics.md +++ b/src/cookbook/navigation/navigation-basics.md @@ -12,6 +12,8 @@ js: url: https://dartpad.dev/inject_embed.dart.js --- + + Most apps contain several screens for displaying different types of information. For example, an app might have a screen that displays products. @@ -45,6 +47,7 @@ second route returns to the first route. First, set up the visual structure: + ```dart class FirstRoute extends StatelessWidget { const FirstRoute({Key? key}) : super(key: key); @@ -53,11 +56,11 @@ class FirstRoute extends StatelessWidget { Widget build(BuildContext context) { return Scaffold( appBar: AppBar( - title: Text('First Route'), + title: const Text('First Route'), ), body: Center( child: ElevatedButton( - child: Text('Open route'), + child: const Text('Open route'), onPressed: () { // Navigate to second route when tapped. }, @@ -74,14 +77,14 @@ class SecondRoute extends StatelessWidget { Widget build(BuildContext context) { return Scaffold( appBar: AppBar( - title: Text("Second Route"), + title: const Text('Second Route'), ), body: Center( child: ElevatedButton( onPressed: () { // Navigate back to first route when tapped. }, - child: Text('Go back!'), + child: const Text('Go back!'), ), ), ); @@ -101,13 +104,13 @@ new route using a platform-specific animation. In the `build()` method of the `FirstRoute` widget, update the `onPressed()` callback: - + ```dart // Within the `FirstRoute` widget onPressed: () { Navigator.push( context, - MaterialPageRoute(builder: (context) => SecondRoute()), + MaterialPageRoute(builder: (context) => const SecondRoute()), ); } ``` @@ -122,7 +125,7 @@ routes managed by the `Navigator`. To implement a return to the original route, update the `onPressed()` callback in the `SecondRoute` widget: - + ```dart // Within the SecondRoute widget onPressed: () { @@ -132,6 +135,7 @@ onPressed: () { ## Interactive example + ```run-dartpad:theme-light:mode-flutter:run-true:width-100%:height-600px:split-60:ga_id-interactive_example:null_safety-true import 'package:flutter/material.dart'; @@ -173,7 +177,7 @@ class SecondRoute extends StatelessWidget { Widget build(BuildContext context) { return Scaffold( appBar: AppBar( - title: const Text("Second Route"), + title: const Text('Second Route'), ), body: Center( child: ElevatedButton( From 7e119cedfe6ed68b0995d583d3b9e863029f6ad2 Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Fri, 7 Jan 2022 18:45:55 -0600 Subject: [PATCH 32/64] clean up pubspec --- .../navigation/navigation_basics/pubspec.yaml | 67 ------------------- 1 file changed, 67 deletions(-) diff --git a/examples/cookbook/navigation/navigation_basics/pubspec.yaml b/examples/cookbook/navigation/navigation_basics/pubspec.yaml index 2d473f6ef5..6d0a12f93d 100644 --- a/examples/cookbook/navigation/navigation_basics/pubspec.yaml +++ b/examples/cookbook/navigation/navigation_basics/pubspec.yaml @@ -1,89 +1,22 @@ name: navigation_basics description: A new Flutter project. -# The following line prevents the package from being accidentally published to -# pub.dev using `flutter pub publish`. This is preferred for private packages. publish_to: 'none' # Remove this line if you wish to publish to pub.dev -# The following defines the version and build number for your application. -# A version number is three numbers separated by dots, like 1.2.43 -# followed by an optional build number separated by a +. -# Both the version and the builder number may be overridden in flutter -# build by specifying --build-name and --build-number, respectively. -# In Android, build-name is used as versionName while build-number used as versionCode. -# Read more about Android versioning at https://developer.android.com/studio/publish/versioning -# In iOS, build-name is used as CFBundleShortVersionString while build-number used as CFBundleVersion. -# Read more about iOS versioning at -# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html version: 1.0.0+1 environment: sdk: ">=2.15.1 <3.0.0" -# Dependencies specify other packages that your package needs in order to work. -# To automatically upgrade your package dependencies to the latest versions -# consider running `flutter pub upgrade --major-versions`. Alternatively, -# dependencies can be manually updated by changing the version numbers below to -# the latest version available on pub.dev. To see which dependencies have newer -# versions available, run `flutter pub outdated`. dependencies: flutter: sdk: flutter - - - # The following adds the Cupertino Icons font to your application. - # Use with the CupertinoIcons class for iOS style icons. cupertino_icons: ^1.0.2 dev_dependencies: flutter_test: sdk: flutter - - # The "flutter_lints" package below contains a set of recommended lints to - # encourage good coding practices. The lint set provided by the package is - # activated in the `analysis_options.yaml` file located at the root of your - # package. See that file for information about deactivating specific lint - # rules and activating additional ones. flutter_lints: ^1.0.0 -# For information on the generic Dart part of this file, see the -# following page: https://dart.dev/tools/pub/pubspec - -# The following section is specific to Flutter. flutter: - - # The following line ensures that the Material Icons font is - # included with your application, so that you can use the icons in - # the material Icons class. uses-material-design: true - - # To add assets to your application, add an assets section, like this: - # assets: - # - images/a_dot_burr.jpeg - # - images/a_dot_ham.jpeg - - # An image asset can refer to one or more resolution-specific "variants", see - # https://flutter.dev/assets-and-images/#resolution-aware. - - # For details regarding adding assets from package dependencies, see - # https://flutter.dev/assets-and-images/#from-packages - - # To add custom fonts to your application, add a fonts section here, - # in this "flutter" section. Each entry in this list should have a - # "family" key with the font family name, and a "fonts" key with a - # list giving the asset and other descriptors for the font. For - # example: - # fonts: - # - family: Schyler - # fonts: - # - asset: fonts/Schyler-Regular.ttf - # - asset: fonts/Schyler-Italic.ttf - # style: italic - # - family: Trajan Pro - # fonts: - # - asset: fonts/TrajanPro.ttf - # - asset: fonts/TrajanPro_Bold.ttf - # weight: 700 - # - # For details regarding fonts from package dependencies, - # see https://flutter.dev/custom-fonts/#from-packages From cc8755845422ce92c6458f24cc3c4bdff5789e9f Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Fri, 7 Jan 2022 18:47:01 -0600 Subject: [PATCH 33/64] clean up analysis options --- .../navigation_basics/analysis_options.yaml | 24 ------------------- 1 file changed, 24 deletions(-) diff --git a/examples/cookbook/navigation/navigation_basics/analysis_options.yaml b/examples/cookbook/navigation/navigation_basics/analysis_options.yaml index b27b7286ea..6ac1e596e7 100644 --- a/examples/cookbook/navigation/navigation_basics/analysis_options.yaml +++ b/examples/cookbook/navigation/navigation_basics/analysis_options.yaml @@ -1,29 +1,5 @@ -# This file configures the analyzer, which statically analyzes Dart code to -# check for errors, warnings, and lints. -# -# The issues identified by the analyzer are surfaced in the UI of Dart-enabled -# IDEs (https://dart.dev/tools#ides-and-editors). The analyzer can also be -# invoked from the command line by running `flutter analyze`. - -# The following line activates a set of recommended lints for Flutter apps, -# packages, and plugins designed to encourage good coding practices. include: package:flutter_lints/flutter.yaml linter: - # The lint rules applied to this project can be customized in the - # section below to disable rules from the `package:flutter_lints/flutter.yaml` - # included above or to enable additional rules. A list of all available lints - # and their documentation is published at - # https://dart-lang.github.io/linter/lints/index.html. - # - # Instead of disabling a lint rule for the entire project in the - # section below, it can also be suppressed for a single line of code - # or a specific dart file by using the `// ignore: name_of_lint` and - # `// ignore_for_file: name_of_lint` syntax on the line or in the file - # producing the lint. rules: - # avoid_print: false # Uncomment to disable the `avoid_print` rule prefer_single_quotes: true - -# Additional information about this file can be found at -# https://dart.dev/guides/language/analysis-options From 24a65d2f6917828140ae445fa68f3397c5d1de97 Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Fri, 14 Jan 2022 13:39:51 -0600 Subject: [PATCH 34/64] excerpts for cookbook/animation/opacity-animation --- examples/cookbook/animation/opacity_animation/lib/main.dart | 2 ++ src/cookbook/animation/opacity-animation.md | 4 ++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/examples/cookbook/animation/opacity_animation/lib/main.dart b/examples/cookbook/animation/opacity_animation/lib/main.dart index 4ae1c3430d..c80471b58b 100644 --- a/examples/cookbook/animation/opacity_animation/lib/main.dart +++ b/examples/cookbook/animation/opacity_animation/lib/main.dart @@ -49,11 +49,13 @@ class _MyHomePageState extends State { opacity: _visible ? 1.0 : 0.0, duration: const Duration(milliseconds: 500), // The green box must be a child of the AnimatedOpacity widget. + // #docregion Container child: Container( width: 200.0, height: 200.0, color: Colors.green, ), + // #enddocregion Container ), // #enddocregion AnimatedOpacity ), diff --git a/src/cookbook/animation/opacity-animation.md b/src/cookbook/animation/opacity-animation.md index 0c2947af18..27100a830c 100644 --- a/src/cookbook/animation/opacity-animation.md +++ b/src/cookbook/animation/opacity-animation.md @@ -33,13 +33,13 @@ animations. This recipe uses the following steps: First, create something to fade in and out. For this example, draw a green box on screen. - + ```dart Container( width: 200.0, height: 200.0, color: Colors.green, -); +) ``` ## 2. Define a `StatefulWidget` From 22904164b3088224b75386220a2a1160dbbbaba9 Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Fri, 14 Jan 2022 13:49:05 -0600 Subject: [PATCH 35/64] new examples project for cookbook/testing/unit/introduction --- .../unit/introduction/analysis_options.yaml | 5 + .../testing/unit/introduction/lib/main.dart | 115 ++++++++++++++++++ .../testing/unit/introduction/pubspec.yaml | 21 ++++ 3 files changed, 141 insertions(+) create mode 100644 examples/cookbook/testing/unit/introduction/analysis_options.yaml create mode 100644 examples/cookbook/testing/unit/introduction/lib/main.dart create mode 100644 examples/cookbook/testing/unit/introduction/pubspec.yaml diff --git a/examples/cookbook/testing/unit/introduction/analysis_options.yaml b/examples/cookbook/testing/unit/introduction/analysis_options.yaml new file mode 100644 index 0000000000..6ac1e596e7 --- /dev/null +++ b/examples/cookbook/testing/unit/introduction/analysis_options.yaml @@ -0,0 +1,5 @@ +include: package:flutter_lints/flutter.yaml + +linter: + rules: + prefer_single_quotes: true diff --git a/examples/cookbook/testing/unit/introduction/lib/main.dart b/examples/cookbook/testing/unit/introduction/lib/main.dart new file mode 100644 index 0000000000..202509be15 --- /dev/null +++ b/examples/cookbook/testing/unit/introduction/lib/main.dart @@ -0,0 +1,115 @@ +import 'package:flutter/material.dart'; + +void main() { + runApp(const MyApp()); +} + +class MyApp extends StatelessWidget { + const MyApp({Key? key}) : super(key: key); + + // This widget is the root of your application. + @override + Widget build(BuildContext context) { + return MaterialApp( + title: 'Flutter Demo', + theme: ThemeData( + // This is the theme of your application. + // + // Try running your application with "flutter run". You'll see the + // application has a blue toolbar. Then, without quitting the app, try + // changing the primarySwatch below to Colors.green and then invoke + // "hot reload" (press "r" in the console where you ran "flutter run", + // or simply save your changes to "hot reload" in a Flutter IDE). + // Notice that the counter didn't reset back to zero; the application + // is not restarted. + primarySwatch: Colors.blue, + ), + home: const MyHomePage(title: 'Flutter Demo Home Page'), + ); + } +} + +class MyHomePage extends StatefulWidget { + const MyHomePage({Key? key, required this.title}) : super(key: key); + + // This widget is the home page of your application. It is stateful, meaning + // that it has a State object (defined below) that contains fields that affect + // how it looks. + + // This class is the configuration for the state. It holds the values (in this + // case the title) provided by the parent (in this case the App widget) and + // used by the build method of the State. Fields in a Widget subclass are + // always marked "final". + + final String title; + + @override + State createState() => _MyHomePageState(); +} + +class _MyHomePageState extends State { + int _counter = 0; + + void _incrementCounter() { + setState(() { + // This call to setState tells the Flutter framework that something has + // changed in this State, which causes it to rerun the build method below + // so that the display can reflect the updated values. If we changed + // _counter without calling setState(), then the build method would not be + // called again, and so nothing would appear to happen. + _counter++; + }); + } + + @override + Widget build(BuildContext context) { + // This method is rerun every time setState is called, for instance as done + // by the _incrementCounter method above. + // + // The Flutter framework has been optimized to make rerunning build methods + // fast, so that you can just rebuild anything that needs updating rather + // than having to individually change instances of widgets. + return Scaffold( + appBar: AppBar( + // Here we take the value from the MyHomePage object that was created by + // the App.build method, and use it to set our appbar title. + title: Text(widget.title), + ), + body: Center( + // Center is a layout widget. It takes a single child and positions it + // in the middle of the parent. + child: Column( + // Column is also a layout widget. It takes a list of children and + // arranges them vertically. By default, it sizes itself to fit its + // children horizontally, and tries to be as tall as its parent. + // + // Invoke "debug painting" (press "p" in the console, choose the + // "Toggle Debug Paint" action from the Flutter Inspector in Android + // Studio, or the "Toggle Debug Paint" command in Visual Studio Code) + // to see the wireframe for each widget. + // + // Column has various properties to control how it sizes itself and + // how it positions its children. Here we use mainAxisAlignment to + // center the children vertically; the main axis here is the vertical + // axis because Columns are vertical (the cross axis would be + // horizontal). + mainAxisAlignment: MainAxisAlignment.center, + children: [ + const Text( + 'You have pushed the button this many times:', + ), + Text( + '$_counter', + style: Theme.of(context).textTheme.headline4, + ), + ], + ), + ), + floatingActionButton: FloatingActionButton( + onPressed: _incrementCounter, + tooltip: 'Increment', + child: const Icon(Icons.add), + ), // This trailing comma makes auto-formatting nicer for build methods. + ); + } +} diff --git a/examples/cookbook/testing/unit/introduction/pubspec.yaml b/examples/cookbook/testing/unit/introduction/pubspec.yaml new file mode 100644 index 0000000000..c1b97e7578 --- /dev/null +++ b/examples/cookbook/testing/unit/introduction/pubspec.yaml @@ -0,0 +1,21 @@ +name: introduction +description: Flutter project for unit testing introduction. + +publish_to: 'none' +version: 1.0.0+1 + +environment: + sdk: ">=2.15.1 <3.0.0" + +dependencies: + flutter: + sdk: flutter + cupertino_icons: ^1.0.2 + +dev_dependencies: + flutter_test: + sdk: flutter + flutter_lints: ^1.0.0 + +flutter: + uses-material-design: true \ No newline at end of file From 07924076c8a2b3052b115d144372945d45d1fa67 Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Fri, 14 Jan 2022 14:10:33 -0600 Subject: [PATCH 36/64] excerpts for cookbook/testing/unit/introduction --- .../analysis_options.yaml | 0 .../testing/unit/counter_app/lib/counter.dart | 7 ++ .../pubspec.yaml | 5 +- .../unit/counter_app/test/counter_test.dart | 13 ++ .../testing/unit/counter_app/test/group.dart | 26 ++++ .../testing/unit/introduction/lib/main.dart | 115 ------------------ src/cookbook/testing/unit/introduction.md | 8 +- 7 files changed, 53 insertions(+), 121 deletions(-) rename examples/cookbook/testing/unit/{introduction => counter_app}/analysis_options.yaml (100%) create mode 100644 examples/cookbook/testing/unit/counter_app/lib/counter.dart rename examples/cookbook/testing/unit/{introduction => counter_app}/pubspec.yaml (84%) create mode 100644 examples/cookbook/testing/unit/counter_app/test/counter_test.dart create mode 100644 examples/cookbook/testing/unit/counter_app/test/group.dart delete mode 100644 examples/cookbook/testing/unit/introduction/lib/main.dart diff --git a/examples/cookbook/testing/unit/introduction/analysis_options.yaml b/examples/cookbook/testing/unit/counter_app/analysis_options.yaml similarity index 100% rename from examples/cookbook/testing/unit/introduction/analysis_options.yaml rename to examples/cookbook/testing/unit/counter_app/analysis_options.yaml diff --git a/examples/cookbook/testing/unit/counter_app/lib/counter.dart b/examples/cookbook/testing/unit/counter_app/lib/counter.dart new file mode 100644 index 0000000000..9e855b366e --- /dev/null +++ b/examples/cookbook/testing/unit/counter_app/lib/counter.dart @@ -0,0 +1,7 @@ +class Counter { + int value = 0; + + void increment() => value++; + + void decrement() => value--; +} diff --git a/examples/cookbook/testing/unit/introduction/pubspec.yaml b/examples/cookbook/testing/unit/counter_app/pubspec.yaml similarity index 84% rename from examples/cookbook/testing/unit/introduction/pubspec.yaml rename to examples/cookbook/testing/unit/counter_app/pubspec.yaml index c1b97e7578..f792b6f409 100644 --- a/examples/cookbook/testing/unit/introduction/pubspec.yaml +++ b/examples/cookbook/testing/unit/counter_app/pubspec.yaml @@ -1,4 +1,4 @@ -name: introduction +name: counter_app description: Flutter project for unit testing introduction. publish_to: 'none' @@ -11,10 +11,9 @@ dependencies: flutter: sdk: flutter cupertino_icons: ^1.0.2 + test: ^1.20.1 dev_dependencies: - flutter_test: - sdk: flutter flutter_lints: ^1.0.0 flutter: diff --git a/examples/cookbook/testing/unit/counter_app/test/counter_test.dart b/examples/cookbook/testing/unit/counter_app/test/counter_test.dart new file mode 100644 index 0000000000..651b05598c --- /dev/null +++ b/examples/cookbook/testing/unit/counter_app/test/counter_test.dart @@ -0,0 +1,13 @@ +// Import the test package and Counter class +import 'package:test/test.dart'; +import 'package:counter_app/counter.dart'; + +void main() { + test('Counter value should be incremented', () { + final counter = Counter(); + + counter.increment(); + + expect(counter.value, 1); + }); +} diff --git a/examples/cookbook/testing/unit/counter_app/test/group.dart b/examples/cookbook/testing/unit/counter_app/test/group.dart new file mode 100644 index 0000000000..0ee1f2a1a7 --- /dev/null +++ b/examples/cookbook/testing/unit/counter_app/test/group.dart @@ -0,0 +1,26 @@ +import 'package:test/test.dart'; +import 'package:counter_app/counter.dart'; + +void main() { + group('Counter', () { + test('value should start at 0', () { + expect(Counter().value, 0); + }); + + test('value should be incremented', () { + final counter = Counter(); + + counter.increment(); + + expect(counter.value, 1); + }); + + test('value should be decremented', () { + final counter = Counter(); + + counter.decrement(); + + expect(counter.value, -1); + }); + }); +} diff --git a/examples/cookbook/testing/unit/introduction/lib/main.dart b/examples/cookbook/testing/unit/introduction/lib/main.dart deleted file mode 100644 index 202509be15..0000000000 --- a/examples/cookbook/testing/unit/introduction/lib/main.dart +++ /dev/null @@ -1,115 +0,0 @@ -import 'package:flutter/material.dart'; - -void main() { - runApp(const MyApp()); -} - -class MyApp extends StatelessWidget { - const MyApp({Key? key}) : super(key: key); - - // This widget is the root of your application. - @override - Widget build(BuildContext context) { - return MaterialApp( - title: 'Flutter Demo', - theme: ThemeData( - // This is the theme of your application. - // - // Try running your application with "flutter run". You'll see the - // application has a blue toolbar. Then, without quitting the app, try - // changing the primarySwatch below to Colors.green and then invoke - // "hot reload" (press "r" in the console where you ran "flutter run", - // or simply save your changes to "hot reload" in a Flutter IDE). - // Notice that the counter didn't reset back to zero; the application - // is not restarted. - primarySwatch: Colors.blue, - ), - home: const MyHomePage(title: 'Flutter Demo Home Page'), - ); - } -} - -class MyHomePage extends StatefulWidget { - const MyHomePage({Key? key, required this.title}) : super(key: key); - - // This widget is the home page of your application. It is stateful, meaning - // that it has a State object (defined below) that contains fields that affect - // how it looks. - - // This class is the configuration for the state. It holds the values (in this - // case the title) provided by the parent (in this case the App widget) and - // used by the build method of the State. Fields in a Widget subclass are - // always marked "final". - - final String title; - - @override - State createState() => _MyHomePageState(); -} - -class _MyHomePageState extends State { - int _counter = 0; - - void _incrementCounter() { - setState(() { - // This call to setState tells the Flutter framework that something has - // changed in this State, which causes it to rerun the build method below - // so that the display can reflect the updated values. If we changed - // _counter without calling setState(), then the build method would not be - // called again, and so nothing would appear to happen. - _counter++; - }); - } - - @override - Widget build(BuildContext context) { - // This method is rerun every time setState is called, for instance as done - // by the _incrementCounter method above. - // - // The Flutter framework has been optimized to make rerunning build methods - // fast, so that you can just rebuild anything that needs updating rather - // than having to individually change instances of widgets. - return Scaffold( - appBar: AppBar( - // Here we take the value from the MyHomePage object that was created by - // the App.build method, and use it to set our appbar title. - title: Text(widget.title), - ), - body: Center( - // Center is a layout widget. It takes a single child and positions it - // in the middle of the parent. - child: Column( - // Column is also a layout widget. It takes a list of children and - // arranges them vertically. By default, it sizes itself to fit its - // children horizontally, and tries to be as tall as its parent. - // - // Invoke "debug painting" (press "p" in the console, choose the - // "Toggle Debug Paint" action from the Flutter Inspector in Android - // Studio, or the "Toggle Debug Paint" command in Visual Studio Code) - // to see the wireframe for each widget. - // - // Column has various properties to control how it sizes itself and - // how it positions its children. Here we use mainAxisAlignment to - // center the children vertically; the main axis here is the vertical - // axis because Columns are vertical (the cross axis would be - // horizontal). - mainAxisAlignment: MainAxisAlignment.center, - children: [ - const Text( - 'You have pushed the button this many times:', - ), - Text( - '$_counter', - style: Theme.of(context).textTheme.headline4, - ), - ], - ), - ), - floatingActionButton: FloatingActionButton( - onPressed: _incrementCounter, - tooltip: 'Increment', - child: const Icon(Icons.add), - ), // This trailing comma makes auto-formatting nicer for build methods. - ); - } -} diff --git a/src/cookbook/testing/unit/introduction.md b/src/cookbook/testing/unit/introduction.md index 24c87a26a8..c672aaa8f5 100644 --- a/src/cookbook/testing/unit/introduction.md +++ b/src/cookbook/testing/unit/introduction.md @@ -10,6 +10,8 @@ next: path: /cookbook/testing/unit/mocking --- + + How can you ensure that your app continues to work as you add more features or change existing functionality? By writing tests. @@ -73,7 +75,7 @@ function, method, or class. For this example, create a `Counter` class inside the `lib/counter.dart` file. It is responsible for incrementing and decrementing a `value` starting at `0`. - + ```dart class Counter { int value = 0; @@ -95,7 +97,7 @@ defined using the top-level `test` function, and you can check if the results are correct by using the top-level `expect` function. Both of these functions come from the `test` package. - + ```dart // Import the test package and Counter class import 'package:test/test.dart'; @@ -117,7 +119,7 @@ void main() { If you have several tests that are related to one another, combine them using the `group` function provided by the `test` package. - + ```dart import 'package:test/test.dart'; import 'package:counter_app/counter.dart'; From 56442c86113cc3dc5eafbe0e060f5c3e3b7e2ab8 Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Fri, 14 Jan 2022 14:31:10 -0600 Subject: [PATCH 37/64] code excerpt steps for cookbook/testing/widget/tap-drag --- .../widget/tap_drag/test/main_steps.dart | 100 ++++++++++++++++++ src/cookbook/testing/widget/tap-drag.md | 6 +- 2 files changed, 103 insertions(+), 3 deletions(-) create mode 100644 examples/cookbook/testing/widget/tap_drag/test/main_steps.dart diff --git a/examples/cookbook/testing/widget/tap_drag/test/main_steps.dart b/examples/cookbook/testing/widget/tap_drag/test/main_steps.dart new file mode 100644 index 0000000000..6e628bc39b --- /dev/null +++ b/examples/cookbook/testing/widget/tap_drag/test/main_steps.dart @@ -0,0 +1,100 @@ +import 'package:flutter/material.dart'; +import 'package:flutter_test/flutter_test.dart'; + +void main() { + // #docregion TestWidgetStep2 + testWidgets('Add and remove a todo', (WidgetTester tester) async { + // Build the widget + await tester.pumpWidget(const TodoList()); + + // Enter 'hi' into the TextField. + await tester.enterText(find.byType(TextField), 'hi'); + }); + // #enddocregion TestWidgetStep2 + + // #docregion TestWidgetStep3 + testWidgets('Add and remove a todo', (WidgetTester tester) async { + // Enter text code... + + // Tap the add button. + await tester.tap(find.byType(FloatingActionButton)); + + // Rebuild the widget after the state has changed. + await tester.pump(); + + // Expect to find the item on screen. + expect(find.text('hi'), findsOneWidget); + }); + // #enddocregion TestWidgetStep3 + + // #docregion TestWidgetStep4 + testWidgets('Add and remove a todo', (WidgetTester tester) async { + // Enter text and add the item... + + // Swipe the item to dismiss it. + await tester.drag(find.byType(Dismissible), const Offset(500.0, 0.0)); + + // Build the widget until the dismiss animation ends. + await tester.pumpAndSettle(); + + // Ensure that the item is no longer on screen. + expect(find.text('hi'), findsNothing); + }); + // #enddocregion TestWidgetStep4 +} + +class TodoList extends StatefulWidget { + const TodoList({Key? key}) : super(key: key); + + @override + _TodoListState createState() => _TodoListState(); +} + +class _TodoListState extends State { + static const _appTitle = 'Todo List'; + final todos = []; + final controller = TextEditingController(); + + @override + Widget build(BuildContext context) { + return MaterialApp( + title: _appTitle, + home: Scaffold( + appBar: AppBar( + title: const Text(_appTitle), + ), + body: Column( + children: [ + TextField( + controller: controller, + ), + Expanded( + child: ListView.builder( + itemCount: todos.length, + itemBuilder: (BuildContext context, int index) { + final todo = todos[index]; + + return Dismissible( + key: Key('$todo$index'), + onDismissed: (direction) => todos.removeAt(index), + child: ListTile(title: Text(todo)), + background: Container(color: Colors.red), + ); + }, + ), + ), + ], + ), + floatingActionButton: FloatingActionButton( + onPressed: () { + setState(() { + todos.add(controller.text); + controller.clear(); + }); + }, + child: const Icon(Icons.add), + ), + ), + ); + } +} diff --git a/src/cookbook/testing/widget/tap-drag.md b/src/cookbook/testing/widget/tap-drag.md index 8ea605dffe..669a9dc8fb 100644 --- a/src/cookbook/testing/widget/tap-drag.md +++ b/src/cookbook/testing/widget/tap-drag.md @@ -126,7 +126,7 @@ Accomplish this task by: 2. Using the [`enterText()`][] method from the `WidgetTester`. - + ```dart testWidgets('Add and remove a todo', (WidgetTester tester) async { // Build the widget @@ -158,7 +158,7 @@ This involves three steps: [`pump()`][] method. 3. Ensure that the list item appears on screen. - + ```dart testWidgets('Add and remove a todo', (WidgetTester tester) async { // Enter text code... @@ -186,7 +186,7 @@ item removes it from the list. This involves three steps: animation is complete. 3. Ensure that the item no longer appears on screen. - + ```dart testWidgets('Add and remove a todo', (WidgetTester tester) async { // Enter text and add the item... From 2c391538c76a6d4a38295b3bf0a9a3da4c4d1dee Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Fri, 14 Jan 2022 14:44:14 -0600 Subject: [PATCH 38/64] excerpts for cookbook/testing/integration/introduction --- .../introduction/lib/test_driver/integration_test.dart | 3 +++ src/cookbook/testing/integration/introduction.md | 1 + 2 files changed, 4 insertions(+) create mode 100644 examples/cookbook/testing/integration/introduction/lib/test_driver/integration_test.dart diff --git a/examples/cookbook/testing/integration/introduction/lib/test_driver/integration_test.dart b/examples/cookbook/testing/integration/introduction/lib/test_driver/integration_test.dart new file mode 100644 index 0000000000..b38629cca9 --- /dev/null +++ b/examples/cookbook/testing/integration/introduction/lib/test_driver/integration_test.dart @@ -0,0 +1,3 @@ +import 'package:integration_test/integration_test_driver.dart'; + +Future main() => integrationDriver(); diff --git a/src/cookbook/testing/integration/introduction.md b/src/cookbook/testing/integration/introduction.md index 84c1d4a206..bd652a0cea 100644 --- a/src/cookbook/testing/integration/introduction.md +++ b/src/cookbook/testing/integration/introduction.md @@ -231,6 +231,7 @@ To get started testing in a web browser, [Download ChromeDriver][]. Next, create a new directory named `test_driver` containing a new file named`integration_test.dart`: + ```dart import 'package:integration_test/integration_test_driver.dart'; From 850677f66c09b659740d2db792f66dcc345253dc Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Fri, 14 Jan 2022 14:59:15 -0600 Subject: [PATCH 39/64] excerpts for cookbook/gestures/dismissible --- examples/cookbook/gestures/dismissible/lib/main.dart | 2 ++ src/cookbook/gestures/dismissible.md | 4 ++-- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/examples/cookbook/gestures/dismissible/lib/main.dart b/examples/cookbook/gestures/dismissible/lib/main.dart index 75341a6781..365e0c9d71 100644 --- a/examples/cookbook/gestures/dismissible/lib/main.dart +++ b/examples/cookbook/gestures/dismissible/lib/main.dart @@ -16,7 +16,9 @@ class MyApp extends StatefulWidget { } class MyAppState extends State { + // #docregion Items final items = List.generate(20, (i) => 'Item ${i + 1}'); + // #enddocregion Items @override Widget build(BuildContext context) { diff --git a/src/cookbook/gestures/dismissible.md b/src/cookbook/gestures/dismissible.md index 7699eda2e1..cf3b6109a4 100644 --- a/src/cookbook/gestures/dismissible.md +++ b/src/cookbook/gestures/dismissible.md @@ -40,9 +40,9 @@ In this example, you want 20 sample items to work with. To keep it simple, generate a list of strings. - + ```dart -final items = List.generate(20, (i) => "Item ${i + 1}"); +final items = List.generate(20, (i) => 'Item ${i + 1}'); ``` ### Convert the data source into a list From 9633a06250e50cba6ff9a9c92b0d960fe0d9ff97 Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Fri, 14 Jan 2022 15:07:13 -0600 Subject: [PATCH 40/64] add newline at end of pubspec --- examples/cookbook/testing/unit/counter_app/pubspec.yaml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/examples/cookbook/testing/unit/counter_app/pubspec.yaml b/examples/cookbook/testing/unit/counter_app/pubspec.yaml index f792b6f409..6c965f9bf9 100644 --- a/examples/cookbook/testing/unit/counter_app/pubspec.yaml +++ b/examples/cookbook/testing/unit/counter_app/pubspec.yaml @@ -17,4 +17,5 @@ dev_dependencies: flutter_lints: ^1.0.0 flutter: - uses-material-design: true \ No newline at end of file + uses-material-design: true + \ No newline at end of file From e851331f6858755e04caea6a5a724e5b896ce42c Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Fri, 14 Jan 2022 15:08:26 -0600 Subject: [PATCH 41/64] true newline at the end of the pubspec --- examples/cookbook/testing/unit/counter_app/pubspec.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/examples/cookbook/testing/unit/counter_app/pubspec.yaml b/examples/cookbook/testing/unit/counter_app/pubspec.yaml index 6c965f9bf9..86e771470e 100644 --- a/examples/cookbook/testing/unit/counter_app/pubspec.yaml +++ b/examples/cookbook/testing/unit/counter_app/pubspec.yaml @@ -18,4 +18,3 @@ dev_dependencies: flutter: uses-material-design: true - \ No newline at end of file From 9714d402ab5e6e97503ff6dee3e3bd4ca72a4275 Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Mon, 24 Jan 2022 17:02:58 -0600 Subject: [PATCH 42/64] code excerpts for cookbook/persistence/key-value --- .../key_value/lib/partial_excerpts.dart | 45 +++++++++++++++++++ .../persistence/key_value/pubspec.yaml | 2 + src/cookbook/persistence/key-value.md | 18 ++++---- 3 files changed, 56 insertions(+), 9 deletions(-) create mode 100644 examples/cookbook/persistence/key_value/lib/partial_excerpts.dart diff --git a/examples/cookbook/persistence/key_value/lib/partial_excerpts.dart b/examples/cookbook/persistence/key_value/lib/partial_excerpts.dart new file mode 100644 index 0000000000..5e7d7f0d32 --- /dev/null +++ b/examples/cookbook/persistence/key_value/lib/partial_excerpts.dart @@ -0,0 +1,45 @@ +// ignore_for_file: unused_local_variable + +import 'package:shared_preferences/shared_preferences.dart'; +import 'package:flutter/services.dart'; + +void step2() async { + int counter = 0; + + // #docregion Step2 + // obtain shared preferences + final prefs = await SharedPreferences.getInstance(); + + // set value + prefs.setInt('counter', counter); + // #enddocregion Step2 +} + +void step3() async { + // #docregion Step3 + final prefs = await SharedPreferences.getInstance(); + + // Try reading data from the counter key. If it doesn't exist, return 0. + final counter = prefs.getInt('counter') ?? 0; + // #enddocregion Step3 +} + +void step4() async { + // #docregion Step4 + final prefs = await SharedPreferences.getInstance(); + + prefs.remove('counter'); + // #enddocregion Step4 +} + +void testing() { + // #docregion Testing + const MethodChannel('plugins.flutter.io/shared_preferences') + .setMockMethodCallHandler((MethodCall methodCall) async { + if (methodCall.method == 'getAll') { + return {}; // set initial values here if desired + } + return null; + }); + // #enddocregion Testing +} diff --git a/examples/cookbook/persistence/key_value/pubspec.yaml b/examples/cookbook/persistence/key_value/pubspec.yaml index 00786b9ac3..ff64f09b49 100644 --- a/examples/cookbook/persistence/key_value/pubspec.yaml +++ b/examples/cookbook/persistence/key_value/pubspec.yaml @@ -8,6 +8,8 @@ dependencies: flutter: sdk: flutter shared_preferences: ^2.0.5 + flutter_test: + sdk: flutter dev_dependencies: flutter_lints: ^1.0.3 diff --git a/src/cookbook/persistence/key-value.md b/src/cookbook/persistence/key-value.md index 6d25c38e28..ac49c0fbcb 100644 --- a/src/cookbook/persistence/key-value.md +++ b/src/cookbook/persistence/key-value.md @@ -65,7 +65,7 @@ To read data, use the appropriate getter method provided by the `SharedPreferences` class. For each setter there is a corresponding getter. For example, you can use the `getInt`, `getBool`, and `getString` methods. - + ```dart final prefs = await SharedPreferences.getInstance(); @@ -77,7 +77,7 @@ final counter = prefs.getInt('counter') ?? 0; To delete data, use the `remove()` method. - + ```dart final prefs = await SharedPreferences.getInstance(); @@ -107,15 +107,15 @@ Populate `SharedPreferences` with initial values in your tests by running the following code in a `setupAll()` method in your test files: - + ```dart const MethodChannel('plugins.flutter.io/shared_preferences') - .setMockMethodCallHandler((MethodCall methodCall) async { - if (methodCall.method == 'getAll') { - return {}; // set initial values here if desired - } - return null; - }); + .setMockMethodCallHandler((MethodCall methodCall) async { + if (methodCall.method == 'getAll') { + return {}; // set initial values here if desired + } + return null; +}); ``` ## Complete example From 2ae498de3b04c50b18736125707ad84038f8d8d4 Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Mon, 24 Jan 2022 17:14:51 -0600 Subject: [PATCH 43/64] import flutter_test --- .../cookbook/persistence/key_value/lib/partial_excerpts.dart | 1 + 1 file changed, 1 insertion(+) diff --git a/examples/cookbook/persistence/key_value/lib/partial_excerpts.dart b/examples/cookbook/persistence/key_value/lib/partial_excerpts.dart index 5e7d7f0d32..90bfacd117 100644 --- a/examples/cookbook/persistence/key_value/lib/partial_excerpts.dart +++ b/examples/cookbook/persistence/key_value/lib/partial_excerpts.dart @@ -2,6 +2,7 @@ import 'package:shared_preferences/shared_preferences.dart'; import 'package:flutter/services.dart'; +import 'package:flutter_test/flutter_test.dart'; void step2() async { int counter = 0; From 39066d5dd1e3a85ebe0d2ddbef593818d622497b Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Mon, 24 Jan 2022 17:27:53 -0600 Subject: [PATCH 44/64] code excerpt for cookbook/persistence/sqlite --- examples/cookbook/persistence/sqlite/lib/main.dart | 5 +++-- src/cookbook/persistence/sqlite.md | 5 ++--- src/development/platform-integration/c-interop.md | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/examples/cookbook/persistence/sqlite/lib/main.dart b/examples/cookbook/persistence/sqlite/lib/main.dart index bcd3b83531..e67585ceed 100644 --- a/examples/cookbook/persistence/sqlite/lib/main.dart +++ b/examples/cookbook/persistence/sqlite/lib/main.dart @@ -1,9 +1,10 @@ +// #docregion imports import 'dart:async'; -import 'package:flutter/widgets.dart'; - import 'package:path/path.dart'; import 'package:sqflite/sqflite.dart'; +// #enddocregion imports +import 'package:flutter/widgets.dart'; void main() async { // Avoid errors caused by flutter upgrade. diff --git a/src/cookbook/persistence/sqlite.md b/src/cookbook/persistence/sqlite.md index 9831cff76c..e78803f5cc 100644 --- a/src/cookbook/persistence/sqlite.md +++ b/src/cookbook/persistence/sqlite.md @@ -55,7 +55,7 @@ dependencies: Make sure to import the packages in the file you'll be working in. - + ```dart import 'dart:async'; @@ -353,10 +353,9 @@ To run the example: ```dart import 'dart:async'; -import 'package:flutter/widgets.dart'; - import 'package:path/path.dart'; import 'package:sqflite/sqflite.dart'; +import 'package:flutter/widgets.dart'; void main() async { // Avoid errors caused by flutter upgrade. diff --git a/src/development/platform-integration/c-interop.md b/src/development/platform-integration/c-interop.md index 6f9ef6ae3c..5a023551b0 100644 --- a/src/development/platform-integration/c-interop.md +++ b/src/development/platform-integration/c-interop.md @@ -162,7 +162,7 @@ import 'dart:ffi'; // For FFI import 'dart:io'; // For Platform.isX final DynamicLibrary nativeAddLib = Platform.isAndroid - ? DynamicLibrary.open('libnative_add.so') + ? DynamicLibrary.open("libnative_add.so") : DynamicLibrary.process(); ``` From 21464e5a5f80af2c59e3b8d513f7cda0e5c5b55a Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Mon, 24 Jan 2022 17:45:45 -0600 Subject: [PATCH 45/64] code excerpts for cookbook/maintenance/error-reporting --- .../error_reporting/analysis_options.yaml | 9 ++++++ .../maintenance/error_reporting/lib/main.dart | 30 +++++++++++++++++++ .../maintenance/error_reporting/pubspec.yaml | 18 +++++++++++ src/cookbook/maintenance/error-reporting.md | 8 +++-- src/cookbook/persistence/key-value.md | 2 +- .../platform-integration/c-interop.md | 2 +- 6 files changed, 64 insertions(+), 5 deletions(-) create mode 100644 examples/cookbook/maintenance/error_reporting/analysis_options.yaml create mode 100644 examples/cookbook/maintenance/error_reporting/lib/main.dart create mode 100644 examples/cookbook/maintenance/error_reporting/pubspec.yaml diff --git a/examples/cookbook/maintenance/error_reporting/analysis_options.yaml b/examples/cookbook/maintenance/error_reporting/analysis_options.yaml new file mode 100644 index 0000000000..283e6fe81d --- /dev/null +++ b/examples/cookbook/maintenance/error_reporting/analysis_options.yaml @@ -0,0 +1,9 @@ +# Take our settings from the example directory's main analysis_options.yaml +# file. If necessary for a particular example, this file can also include +# overrides for individual lints. + +include: ../../../analysis_options.yaml + +linter: + rules: + avoid_print: false diff --git a/examples/cookbook/maintenance/error_reporting/lib/main.dart b/examples/cookbook/maintenance/error_reporting/lib/main.dart new file mode 100644 index 0000000000..469abdd24d --- /dev/null +++ b/examples/cookbook/maintenance/error_reporting/lib/main.dart @@ -0,0 +1,30 @@ +// #docregion InitializeSDK +import 'package:flutter/widgets.dart'; +import 'package:sentry_flutter/sentry_flutter.dart'; + +Future main() async { + await SentryFlutter.init( + (options) => options.dsn = 'https://example@sentry.io/example', + appRunner: () => runApp(const MyApp()), + ); +} +// #enddocregion InitializeSDK + +void captureErrors() async { + try { + // Do something + } catch (exception, stackTrace) { + // #docregion CaptureException + await Sentry.captureException(exception, stackTrace: stackTrace); + // #enddocregion CaptureException + } +} + +class MyApp extends StatelessWidget { + const MyApp({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + return Container(); + } +} diff --git a/examples/cookbook/maintenance/error_reporting/pubspec.yaml b/examples/cookbook/maintenance/error_reporting/pubspec.yaml new file mode 100644 index 0000000000..50dd858205 --- /dev/null +++ b/examples/cookbook/maintenance/error_reporting/pubspec.yaml @@ -0,0 +1,18 @@ +name: error_reporting +description: error reporting + +environment: + sdk: '>=2.12.0 <3.0.0' + +dependencies: + flutter: + sdk: flutter + sentry_flutter: ^6.2.2 + +dev_dependencies: + flutter_test: + sdk: flutter + flutter_lints: ^1.0.3 + +flutter: + uses-material-design: true diff --git a/src/cookbook/maintenance/error-reporting.md b/src/cookbook/maintenance/error-reporting.md index bb0d6ca2e1..920b67850f 100644 --- a/src/cookbook/maintenance/error-reporting.md +++ b/src/cookbook/maintenance/error-reporting.md @@ -9,6 +9,8 @@ next: path: /cookbook/navigation/hero-animations --- + + While one always tries to create apps that are free of bugs, they're sure to crop up from time to time. Since buggy apps lead to unhappy users and customers, @@ -63,7 +65,7 @@ dependencies: Initialize the SDK to capture different unhandled errors automatically: - + ```dart import 'package:flutter/widgets.dart'; import 'package:sentry_flutter/sentry_flutter.dart'; @@ -71,7 +73,7 @@ import 'package:sentry_flutter/sentry_flutter.dart'; Future main() async { await SentryFlutter.init( (options) => options.dsn = 'https://example@sentry.io/example', - appRunner: () => runApp(MyApp()), + appRunner: () => runApp(const MyApp()), ); } ``` @@ -94,7 +96,7 @@ Besides the automatic error reporting that Sentry generates by importing and initializing the SDK, you can use the API to report errors to Sentry: - + ```dart await Sentry.captureException(exception, stackTrace: stackTrace); ``` diff --git a/src/cookbook/persistence/key-value.md b/src/cookbook/persistence/key-value.md index ac49c0fbcb..b17b2a717a 100644 --- a/src/cookbook/persistence/key-value.md +++ b/src/cookbook/persistence/key-value.md @@ -50,7 +50,7 @@ various primitive types, such as `setInt`, `setBool`, and `setString`. Setter methods do two things: First, synchronously update the key-value pair in-memory. Then, persist the data to disk. - + ```dart // obtain shared preferences final prefs = await SharedPreferences.getInstance(); diff --git a/src/development/platform-integration/c-interop.md b/src/development/platform-integration/c-interop.md index 5a023551b0..6f9ef6ae3c 100644 --- a/src/development/platform-integration/c-interop.md +++ b/src/development/platform-integration/c-interop.md @@ -162,7 +162,7 @@ import 'dart:ffi'; // For FFI import 'dart:io'; // For Platform.isX final DynamicLibrary nativeAddLib = Platform.isAndroid - ? DynamicLibrary.open("libnative_add.so") + ? DynamicLibrary.open('libnative_add.so') : DynamicLibrary.process(); ``` From a408ffd01a0e74939bc4e524e9f0a7841dc0f737 Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Mon, 24 Jan 2022 18:00:09 -0600 Subject: [PATCH 46/64] refresh code excerpts --- src/development/platform-integration/c-interop.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/development/platform-integration/c-interop.md b/src/development/platform-integration/c-interop.md index 6f9ef6ae3c..a0af218b9b 100644 --- a/src/development/platform-integration/c-interop.md +++ b/src/development/platform-integration/c-interop.md @@ -162,7 +162,11 @@ import 'dart:ffi'; // For FFI import 'dart:io'; // For Platform.isX final DynamicLibrary nativeAddLib = Platform.isAndroid +<<<<<<< HEAD ? DynamicLibrary.open('libnative_add.so') +======= + ? DynamicLibrary.open("libnative_add.so") +>>>>>>> flutter-main : DynamicLibrary.process(); ``` From 398a416959eeb198450b0c8c9fbc4ea948c3c1ba Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Fri, 4 Feb 2022 11:51:46 -0600 Subject: [PATCH 47/64] Remove unnecessary sidenav links for Deployment + Data & Backend --- src/_data/sidenav.yml | 3 --- src/development/index.md | 4 ---- 2 files changed, 7 deletions(-) delete mode 100644 src/development/index.md diff --git a/src/_data/sidenav.yml b/src/_data/sidenav.yml index 92f5341238..d8717c120a 100644 --- a/src/_data/sidenav.yml +++ b/src/_data/sidenav.yml @@ -48,7 +48,6 @@ - title: Development expanded: true - permalink: /development children: - title: User interface permalink: /development/ui @@ -117,10 +116,8 @@ - title: Widget catalog permalink: /development/ui/widgets - title: Data & backend - permalink: /development/data-and-backend children: - title: State management - permalink: /development/data-and-backend/state-mgmt children: - title: Introduction permalink: /development/data-and-backend/state-mgmt/intro diff --git a/src/development/index.md b/src/development/index.md deleted file mode 100644 index b764a98021..0000000000 --- a/src/development/index.md +++ /dev/null @@ -1,4 +0,0 @@ ---- -layout: toc -title: Development ---- From 79f040dcae493764b26c982362c401c38790a74c Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Fri, 4 Feb 2022 16:28:37 -0600 Subject: [PATCH 48/64] resolve merge conflict --- src/development/platform-integration/c-interop.md | 4 ---- 1 file changed, 4 deletions(-) diff --git a/src/development/platform-integration/c-interop.md b/src/development/platform-integration/c-interop.md index a0af218b9b..5a023551b0 100644 --- a/src/development/platform-integration/c-interop.md +++ b/src/development/platform-integration/c-interop.md @@ -162,11 +162,7 @@ import 'dart:ffi'; // For FFI import 'dart:io'; // For Platform.isX final DynamicLibrary nativeAddLib = Platform.isAndroid -<<<<<<< HEAD - ? DynamicLibrary.open('libnative_add.so') -======= ? DynamicLibrary.open("libnative_add.so") ->>>>>>> flutter-main : DynamicLibrary.process(); ``` From e4319cd23ea5a2ccc85e6a02a688d35f4ab35e6d Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Fri, 4 Feb 2022 16:32:18 -0600 Subject: [PATCH 49/64] fix c_interop.dart quotes and refresh code excerpt --- .../development/platform_integration/lib/c_interop.dart | 8 -------- src/development/platform-integration/c-interop.md | 6 +----- 2 files changed, 1 insertion(+), 13 deletions(-) diff --git a/examples/development/platform_integration/lib/c_interop.dart b/examples/development/platform_integration/lib/c_interop.dart index d1edea64ff..87e8ed4551 100644 --- a/examples/development/platform_integration/lib/c_interop.dart +++ b/examples/development/platform_integration/lib/c_interop.dart @@ -3,20 +3,12 @@ import 'dart:ffi'; // For FFI import 'dart:io'; // For Platform.isX final DynamicLibrary nativeAddLib = Platform.isAndroid -<<<<<<< HEAD ? DynamicLibrary.open('libnative_add.so') -======= - ? DynamicLibrary.open("libnative_add.so") ->>>>>>> flutter-main : DynamicLibrary.process(); // #enddocregion DynamicLibrary // #docregion NativeAdd final int Function(int x, int y) nativeAdd = nativeAddLib -<<<<<<< HEAD .lookup>('native_add') -======= - .lookup>("native_add") ->>>>>>> flutter-main .asFunction(); // #enddocregion NativeAdd diff --git a/src/development/platform-integration/c-interop.md b/src/development/platform-integration/c-interop.md index 5a023551b0..1a9be0865c 100644 --- a/src/development/platform-integration/c-interop.md +++ b/src/development/platform-integration/c-interop.md @@ -162,7 +162,7 @@ import 'dart:ffi'; // For FFI import 'dart:io'; // For Platform.isX final DynamicLibrary nativeAddLib = Platform.isAndroid - ? DynamicLibrary.open("libnative_add.so") + ? DynamicLibrary.open('libnative_add.so') : DynamicLibrary.process(); ``` @@ -176,11 +176,7 @@ you can resolve the `native_add` symbol: ```dart final int Function(int x, int y) nativeAdd = nativeAddLib -<<<<<<< HEAD .lookup>('native_add') -======= - .lookup>("native_add") ->>>>>>> flutter-main .asFunction(); ``` From 70fe4798ce09d4896516cee060929e7744ac9b39 Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Fri, 4 Feb 2022 16:56:11 -0600 Subject: [PATCH 50/64] Revert "code excerpts for cookbook/maintenance/error-reporting" This reverts commit 21464e5a5f80af2c59e3b8d513f7cda0e5c5b55a. --- .../error_reporting/analysis_options.yaml | 9 ------ .../maintenance/error_reporting/lib/main.dart | 30 ------------------- .../maintenance/error_reporting/pubspec.yaml | 18 ----------- src/cookbook/maintenance/error-reporting.md | 8 ++--- src/cookbook/persistence/key-value.md | 2 +- .../platform-integration/c-interop.md | 2 +- 6 files changed, 5 insertions(+), 64 deletions(-) delete mode 100644 examples/cookbook/maintenance/error_reporting/analysis_options.yaml delete mode 100644 examples/cookbook/maintenance/error_reporting/lib/main.dart delete mode 100644 examples/cookbook/maintenance/error_reporting/pubspec.yaml diff --git a/examples/cookbook/maintenance/error_reporting/analysis_options.yaml b/examples/cookbook/maintenance/error_reporting/analysis_options.yaml deleted file mode 100644 index 283e6fe81d..0000000000 --- a/examples/cookbook/maintenance/error_reporting/analysis_options.yaml +++ /dev/null @@ -1,9 +0,0 @@ -# Take our settings from the example directory's main analysis_options.yaml -# file. If necessary for a particular example, this file can also include -# overrides for individual lints. - -include: ../../../analysis_options.yaml - -linter: - rules: - avoid_print: false diff --git a/examples/cookbook/maintenance/error_reporting/lib/main.dart b/examples/cookbook/maintenance/error_reporting/lib/main.dart deleted file mode 100644 index 469abdd24d..0000000000 --- a/examples/cookbook/maintenance/error_reporting/lib/main.dart +++ /dev/null @@ -1,30 +0,0 @@ -// #docregion InitializeSDK -import 'package:flutter/widgets.dart'; -import 'package:sentry_flutter/sentry_flutter.dart'; - -Future main() async { - await SentryFlutter.init( - (options) => options.dsn = 'https://example@sentry.io/example', - appRunner: () => runApp(const MyApp()), - ); -} -// #enddocregion InitializeSDK - -void captureErrors() async { - try { - // Do something - } catch (exception, stackTrace) { - // #docregion CaptureException - await Sentry.captureException(exception, stackTrace: stackTrace); - // #enddocregion CaptureException - } -} - -class MyApp extends StatelessWidget { - const MyApp({Key? key}) : super(key: key); - - @override - Widget build(BuildContext context) { - return Container(); - } -} diff --git a/examples/cookbook/maintenance/error_reporting/pubspec.yaml b/examples/cookbook/maintenance/error_reporting/pubspec.yaml deleted file mode 100644 index 50dd858205..0000000000 --- a/examples/cookbook/maintenance/error_reporting/pubspec.yaml +++ /dev/null @@ -1,18 +0,0 @@ -name: error_reporting -description: error reporting - -environment: - sdk: '>=2.12.0 <3.0.0' - -dependencies: - flutter: - sdk: flutter - sentry_flutter: ^6.2.2 - -dev_dependencies: - flutter_test: - sdk: flutter - flutter_lints: ^1.0.3 - -flutter: - uses-material-design: true diff --git a/src/cookbook/maintenance/error-reporting.md b/src/cookbook/maintenance/error-reporting.md index 920b67850f..bb0d6ca2e1 100644 --- a/src/cookbook/maintenance/error-reporting.md +++ b/src/cookbook/maintenance/error-reporting.md @@ -9,8 +9,6 @@ next: path: /cookbook/navigation/hero-animations --- - - While one always tries to create apps that are free of bugs, they're sure to crop up from time to time. Since buggy apps lead to unhappy users and customers, @@ -65,7 +63,7 @@ dependencies: Initialize the SDK to capture different unhandled errors automatically: - + ```dart import 'package:flutter/widgets.dart'; import 'package:sentry_flutter/sentry_flutter.dart'; @@ -73,7 +71,7 @@ import 'package:sentry_flutter/sentry_flutter.dart'; Future main() async { await SentryFlutter.init( (options) => options.dsn = 'https://example@sentry.io/example', - appRunner: () => runApp(const MyApp()), + appRunner: () => runApp(MyApp()), ); } ``` @@ -96,7 +94,7 @@ Besides the automatic error reporting that Sentry generates by importing and initializing the SDK, you can use the API to report errors to Sentry: - + ```dart await Sentry.captureException(exception, stackTrace: stackTrace); ``` diff --git a/src/cookbook/persistence/key-value.md b/src/cookbook/persistence/key-value.md index b17b2a717a..ac49c0fbcb 100644 --- a/src/cookbook/persistence/key-value.md +++ b/src/cookbook/persistence/key-value.md @@ -50,7 +50,7 @@ various primitive types, such as `setInt`, `setBool`, and `setString`. Setter methods do two things: First, synchronously update the key-value pair in-memory. Then, persist the data to disk. - + ```dart // obtain shared preferences final prefs = await SharedPreferences.getInstance(); diff --git a/src/development/platform-integration/c-interop.md b/src/development/platform-integration/c-interop.md index 1a9be0865c..5b1fecd138 100644 --- a/src/development/platform-integration/c-interop.md +++ b/src/development/platform-integration/c-interop.md @@ -162,7 +162,7 @@ import 'dart:ffi'; // For FFI import 'dart:io'; // For Platform.isX final DynamicLibrary nativeAddLib = Platform.isAndroid - ? DynamicLibrary.open('libnative_add.so') + ? DynamicLibrary.open("libnative_add.so") : DynamicLibrary.process(); ``` From e3c01f36832e228397735312053c8907e76b25a6 Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Mon, 24 Jan 2022 17:45:45 -0600 Subject: [PATCH 51/64] code excerpts for cookbook/maintenance/error-reporting --- .../error_reporting/analysis_options.yaml | 9 ++++++ .../maintenance/error_reporting/lib/main.dart | 30 +++++++++++++++++++ .../maintenance/error_reporting/pubspec.yaml | 18 +++++++++++ src/cookbook/maintenance/error-reporting.md | 8 +++-- src/cookbook/persistence/key-value.md | 2 +- .../platform-integration/c-interop.md | 2 +- 6 files changed, 64 insertions(+), 5 deletions(-) create mode 100644 examples/cookbook/maintenance/error_reporting/analysis_options.yaml create mode 100644 examples/cookbook/maintenance/error_reporting/lib/main.dart create mode 100644 examples/cookbook/maintenance/error_reporting/pubspec.yaml diff --git a/examples/cookbook/maintenance/error_reporting/analysis_options.yaml b/examples/cookbook/maintenance/error_reporting/analysis_options.yaml new file mode 100644 index 0000000000..283e6fe81d --- /dev/null +++ b/examples/cookbook/maintenance/error_reporting/analysis_options.yaml @@ -0,0 +1,9 @@ +# Take our settings from the example directory's main analysis_options.yaml +# file. If necessary for a particular example, this file can also include +# overrides for individual lints. + +include: ../../../analysis_options.yaml + +linter: + rules: + avoid_print: false diff --git a/examples/cookbook/maintenance/error_reporting/lib/main.dart b/examples/cookbook/maintenance/error_reporting/lib/main.dart new file mode 100644 index 0000000000..469abdd24d --- /dev/null +++ b/examples/cookbook/maintenance/error_reporting/lib/main.dart @@ -0,0 +1,30 @@ +// #docregion InitializeSDK +import 'package:flutter/widgets.dart'; +import 'package:sentry_flutter/sentry_flutter.dart'; + +Future main() async { + await SentryFlutter.init( + (options) => options.dsn = 'https://example@sentry.io/example', + appRunner: () => runApp(const MyApp()), + ); +} +// #enddocregion InitializeSDK + +void captureErrors() async { + try { + // Do something + } catch (exception, stackTrace) { + // #docregion CaptureException + await Sentry.captureException(exception, stackTrace: stackTrace); + // #enddocregion CaptureException + } +} + +class MyApp extends StatelessWidget { + const MyApp({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + return Container(); + } +} diff --git a/examples/cookbook/maintenance/error_reporting/pubspec.yaml b/examples/cookbook/maintenance/error_reporting/pubspec.yaml new file mode 100644 index 0000000000..50dd858205 --- /dev/null +++ b/examples/cookbook/maintenance/error_reporting/pubspec.yaml @@ -0,0 +1,18 @@ +name: error_reporting +description: error reporting + +environment: + sdk: '>=2.12.0 <3.0.0' + +dependencies: + flutter: + sdk: flutter + sentry_flutter: ^6.2.2 + +dev_dependencies: + flutter_test: + sdk: flutter + flutter_lints: ^1.0.3 + +flutter: + uses-material-design: true diff --git a/src/cookbook/maintenance/error-reporting.md b/src/cookbook/maintenance/error-reporting.md index bb0d6ca2e1..920b67850f 100644 --- a/src/cookbook/maintenance/error-reporting.md +++ b/src/cookbook/maintenance/error-reporting.md @@ -9,6 +9,8 @@ next: path: /cookbook/navigation/hero-animations --- + + While one always tries to create apps that are free of bugs, they're sure to crop up from time to time. Since buggy apps lead to unhappy users and customers, @@ -63,7 +65,7 @@ dependencies: Initialize the SDK to capture different unhandled errors automatically: - + ```dart import 'package:flutter/widgets.dart'; import 'package:sentry_flutter/sentry_flutter.dart'; @@ -71,7 +73,7 @@ import 'package:sentry_flutter/sentry_flutter.dart'; Future main() async { await SentryFlutter.init( (options) => options.dsn = 'https://example@sentry.io/example', - appRunner: () => runApp(MyApp()), + appRunner: () => runApp(const MyApp()), ); } ``` @@ -94,7 +96,7 @@ Besides the automatic error reporting that Sentry generates by importing and initializing the SDK, you can use the API to report errors to Sentry: - + ```dart await Sentry.captureException(exception, stackTrace: stackTrace); ``` diff --git a/src/cookbook/persistence/key-value.md b/src/cookbook/persistence/key-value.md index ac49c0fbcb..b17b2a717a 100644 --- a/src/cookbook/persistence/key-value.md +++ b/src/cookbook/persistence/key-value.md @@ -50,7 +50,7 @@ various primitive types, such as `setInt`, `setBool`, and `setString`. Setter methods do two things: First, synchronously update the key-value pair in-memory. Then, persist the data to disk. - + ```dart // obtain shared preferences final prefs = await SharedPreferences.getInstance(); diff --git a/src/development/platform-integration/c-interop.md b/src/development/platform-integration/c-interop.md index 5b1fecd138..1a9be0865c 100644 --- a/src/development/platform-integration/c-interop.md +++ b/src/development/platform-integration/c-interop.md @@ -162,7 +162,7 @@ import 'dart:ffi'; // For FFI import 'dart:io'; // For Platform.isX final DynamicLibrary nativeAddLib = Platform.isAndroid - ? DynamicLibrary.open("libnative_add.so") + ? DynamicLibrary.open('libnative_add.so') : DynamicLibrary.process(); ``` From 5ecf52fe83dfa495dc5164a8b561fcf050ad14de Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Fri, 4 Feb 2022 17:10:22 -0600 Subject: [PATCH 52/64] update codelabs submodule --- examples/codelabs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/codelabs b/examples/codelabs index 93ed3d40a5..d65c511323 160000 --- a/examples/codelabs +++ b/examples/codelabs @@ -1 +1 @@ -Subproject commit 93ed3d40a58154050fa22b2a224776d0847f2200 +Subproject commit d65c511323edd36380fda75924e2d1b18822b4a9 From c322bcf3b4a59bbccbdf9fba4415fd01fae1ddba Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Fri, 4 Feb 2022 17:31:37 -0600 Subject: [PATCH 53/64] resolve weird diff markers --- .../analysis_options.yaml | 4 --- .../lib/generated_pigeon.dart | 8 ----- .../analysis_options.yaml | 30 +---------------- .../development/tools/analysis_options.yaml | 30 +---------------- .../tools/lib/hot-reload/after.dart | 16 ---------- .../tools/lib/hot-reload/before.dart | 16 ---------- .../assets_and_images/analysis_options.yaml | 30 +---------------- .../lib/pages/focus_examples_page.dart | 4 --- .../lib/widgets/extra_widget_excerpts.dart | 4 --- .../platform-integration/platform-channels.md | 8 ----- src/development/tools/hot-reload.md | 32 ------------------- 11 files changed, 3 insertions(+), 179 deletions(-) diff --git a/examples/development/platform_integration/analysis_options.yaml b/examples/development/platform_integration/analysis_options.yaml index 3c82c32a12..b27b7286ea 100644 --- a/examples/development/platform_integration/analysis_options.yaml +++ b/examples/development/platform_integration/analysis_options.yaml @@ -23,11 +23,7 @@ linter: # producing the lint. rules: # avoid_print: false # Uncomment to disable the `avoid_print` rule -<<<<<<< HEAD prefer_single_quotes: true -======= - # prefer_single_quotes: true # Uncomment to enable the `prefer_single_quotes` rule ->>>>>>> flutter-main # Additional information about this file can be found at # https://dart.dev/guides/language/analysis-options diff --git a/examples/development/platform_integration/lib/generated_pigeon.dart b/examples/development/platform_integration/lib/generated_pigeon.dart index 4a1a0fb2e3..16b8aabdd8 100644 --- a/examples/development/platform_integration/lib/generated_pigeon.dart +++ b/examples/development/platform_integration/lib/generated_pigeon.dart @@ -2,19 +2,11 @@ import 'package:pigeon/pigeon.dart'; class SearchRequest { -<<<<<<< HEAD String query = ''; } class SearchReply { String result = ''; -======= - String query = ""; -} - -class SearchReply { - String result = ""; ->>>>>>> flutter-main } @HostApi() diff --git a/examples/development/plugin_api_migration/analysis_options.yaml b/examples/development/plugin_api_migration/analysis_options.yaml index df023ed7a5..6ac1e596e7 100644 --- a/examples/development/plugin_api_migration/analysis_options.yaml +++ b/examples/development/plugin_api_migration/analysis_options.yaml @@ -1,33 +1,5 @@ -# This file configures the analyzer, which statically analyzes Dart code to -# check for errors, warnings, and lints. -# -# The issues identified by the analyzer are surfaced in the UI of Dart-enabled -# IDEs (https://dart.dev/tools#ides-and-editors). The analyzer can also be -# invoked from the command line by running `flutter analyze`. - -# The following line activates a set of recommended lints for Flutter apps, -# packages, and plugins designed to encourage good coding practices. include: package:flutter_lints/flutter.yaml linter: - # The lint rules applied to this project can be customized in the - # section below to disable rules from the `package:flutter_lints/flutter.yaml` - # included above or to enable additional rules. A list of all available lints - # and their documentation is published at - # https://dart-lang.github.io/linter/lints/index.html. - # - # Instead of disabling a lint rule for the entire project in the - # section below, it can also be suppressed for a single line of code - # or a specific dart file by using the `// ignore: name_of_lint` and - # `// ignore_for_file: name_of_lint` syntax on the line or in the file - # producing the lint. rules: - # avoid_print: false # Uncomment to disable the `avoid_print` rule -<<<<<<< HEAD - prefer_single_quotes: true # Uncomment to enable the `prefer_single_quotes` rule -======= - # prefer_single_quotes: true # Uncomment to enable the `prefer_single_quotes` rule ->>>>>>> flutter-main - -# Additional information about this file can be found at -# https://dart.dev/guides/language/analysis-options + prefer_single_quotes: true diff --git a/examples/development/tools/analysis_options.yaml b/examples/development/tools/analysis_options.yaml index df023ed7a5..6ac1e596e7 100644 --- a/examples/development/tools/analysis_options.yaml +++ b/examples/development/tools/analysis_options.yaml @@ -1,33 +1,5 @@ -# This file configures the analyzer, which statically analyzes Dart code to -# check for errors, warnings, and lints. -# -# The issues identified by the analyzer are surfaced in the UI of Dart-enabled -# IDEs (https://dart.dev/tools#ides-and-editors). The analyzer can also be -# invoked from the command line by running `flutter analyze`. - -# The following line activates a set of recommended lints for Flutter apps, -# packages, and plugins designed to encourage good coding practices. include: package:flutter_lints/flutter.yaml linter: - # The lint rules applied to this project can be customized in the - # section below to disable rules from the `package:flutter_lints/flutter.yaml` - # included above or to enable additional rules. A list of all available lints - # and their documentation is published at - # https://dart-lang.github.io/linter/lints/index.html. - # - # Instead of disabling a lint rule for the entire project in the - # section below, it can also be suppressed for a single line of code - # or a specific dart file by using the `// ignore: name_of_lint` and - # `// ignore_for_file: name_of_lint` syntax on the line or in the file - # producing the lint. rules: - # avoid_print: false # Uncomment to disable the `avoid_print` rule -<<<<<<< HEAD - prefer_single_quotes: true # Uncomment to enable the `prefer_single_quotes` rule -======= - # prefer_single_quotes: true # Uncomment to enable the `prefer_single_quotes` rule ->>>>>>> flutter-main - -# Additional information about this file can be found at -# https://dart.dev/guides/language/analysis-options + prefer_single_quotes: true diff --git a/examples/development/tools/lib/hot-reload/after.dart b/examples/development/tools/lib/hot-reload/after.dart index 988277d1e4..dbbccc3d60 100644 --- a/examples/development/tools/lib/hot-reload/after.dart +++ b/examples/development/tools/lib/hot-reload/after.dart @@ -30,44 +30,28 @@ final sampleTable = [ Table( children: const [ TableRow( -<<<<<<< HEAD children: [Text('T1')], -======= - children: [Text("T1")], ->>>>>>> flutter-main ) ], ), Table( children: const [ TableRow( -<<<<<<< HEAD children: [Text('T2')], -======= - children: [Text("T2")], ->>>>>>> flutter-main ) ], ), Table( children: const [ TableRow( -<<<<<<< HEAD children: [Text('T3')], -======= - children: [Text("T3")], ->>>>>>> flutter-main ) ], ), Table( children: const [ TableRow( -<<<<<<< HEAD children: [Text('T10')], // modified -======= - children: [Text("T10")], // modified ->>>>>>> flutter-main ) ], ), diff --git a/examples/development/tools/lib/hot-reload/before.dart b/examples/development/tools/lib/hot-reload/before.dart index 09446e7ed7..040c41278f 100644 --- a/examples/development/tools/lib/hot-reload/before.dart +++ b/examples/development/tools/lib/hot-reload/before.dart @@ -36,44 +36,28 @@ final sampleTable = [ Table( children: const [ TableRow( -<<<<<<< HEAD children: [Text('T1')], -======= - children: [Text("T1")], ->>>>>>> flutter-main ) ], ), Table( children: const [ TableRow( -<<<<<<< HEAD children: [Text('T2')], -======= - children: [Text("T2")], ->>>>>>> flutter-main ) ], ), Table( children: const [ TableRow( -<<<<<<< HEAD children: [Text('T3')], -======= - children: [Text("T3")], ->>>>>>> flutter-main ) ], ), Table( children: const [ TableRow( -<<<<<<< HEAD children: [Text('T4')], -======= - children: [Text("T4")], ->>>>>>> flutter-main ) ], ), diff --git a/examples/ui/assets_and_images/analysis_options.yaml b/examples/ui/assets_and_images/analysis_options.yaml index df023ed7a5..6ac1e596e7 100644 --- a/examples/ui/assets_and_images/analysis_options.yaml +++ b/examples/ui/assets_and_images/analysis_options.yaml @@ -1,33 +1,5 @@ -# This file configures the analyzer, which statically analyzes Dart code to -# check for errors, warnings, and lints. -# -# The issues identified by the analyzer are surfaced in the UI of Dart-enabled -# IDEs (https://dart.dev/tools#ides-and-editors). The analyzer can also be -# invoked from the command line by running `flutter analyze`. - -# The following line activates a set of recommended lints for Flutter apps, -# packages, and plugins designed to encourage good coding practices. include: package:flutter_lints/flutter.yaml linter: - # The lint rules applied to this project can be customized in the - # section below to disable rules from the `package:flutter_lints/flutter.yaml` - # included above or to enable additional rules. A list of all available lints - # and their documentation is published at - # https://dart-lang.github.io/linter/lints/index.html. - # - # Instead of disabling a lint rule for the entire project in the - # section below, it can also be suppressed for a single line of code - # or a specific dart file by using the `// ignore: name_of_lint` and - # `// ignore_for_file: name_of_lint` syntax on the line or in the file - # producing the lint. rules: - # avoid_print: false # Uncomment to disable the `avoid_print` rule -<<<<<<< HEAD - prefer_single_quotes: true # Uncomment to enable the `prefer_single_quotes` rule -======= - # prefer_single_quotes: true # Uncomment to enable the `prefer_single_quotes` rule ->>>>>>> flutter-main - -# Additional information about this file can be found at -# https://dart.dev/guides/language/analysis-options + prefer_single_quotes: true diff --git a/examples/ui/layout/adaptive_app_demos/lib/pages/focus_examples_page.dart b/examples/ui/layout/adaptive_app_demos/lib/pages/focus_examples_page.dart index 2e19b78f0f..6696c9c202 100644 --- a/examples/ui/layout/adaptive_app_demos/lib/pages/focus_examples_page.dart +++ b/examples/ui/layout/adaptive_app_demos/lib/pages/focus_examples_page.dart @@ -1,10 +1,6 @@ import 'package:adaptive_app_demos/global/device_type.dart'; import 'package:flextras/flextras.dart'; import 'package:flutter/material.dart'; -<<<<<<< HEAD -======= -import 'package:flutter/rendering.dart'; ->>>>>>> flutter-main import 'package:flutter/services.dart'; import 'package:flutter/gestures.dart'; diff --git a/examples/ui/layout/adaptive_app_demos/lib/widgets/extra_widget_excerpts.dart b/examples/ui/layout/adaptive_app_demos/lib/widgets/extra_widget_excerpts.dart index bcebf0757e..c85adf19b9 100644 --- a/examples/ui/layout/adaptive_app_demos/lib/widgets/extra_widget_excerpts.dart +++ b/examples/ui/layout/adaptive_app_demos/lib/widgets/extra_widget_excerpts.dart @@ -1,7 +1,3 @@ -<<<<<<< HEAD -======= -import 'package:flutter/widgets.dart'; ->>>>>>> flutter-main import 'package:flutter/material.dart'; import 'package:flutter/gestures.dart'; import 'package:flutter/services.dart'; diff --git a/src/development/platform-integration/platform-channels.md b/src/development/platform-integration/platform-channels.md index 18204ac61b..32e5a24c18 100644 --- a/src/development/platform-integration/platform-channels.md +++ b/src/development/platform-integration/platform-channels.md @@ -761,19 +761,11 @@ languages are Objective-C, Java, Kotlin and Swift (via Objective-C interop). import 'package:pigeon/pigeon.dart'; class SearchRequest { -<<<<<<< HEAD String query = ''; } class SearchReply { String result = ''; -======= - String query = ""; -} - -class SearchReply { - String result = ""; ->>>>>>> flutter-main } @HostApi() diff --git a/src/development/tools/hot-reload.md b/src/development/tools/hot-reload.md index ca95e4a712..4eff223f28 100644 --- a/src/development/tools/hot-reload.md +++ b/src/development/tools/hot-reload.md @@ -211,44 +211,28 @@ final sampleTable = [ Table( children: const [ TableRow( -<<<<<<< HEAD children: [Text('T1')], -======= - children: [Text("T1")], ->>>>>>> flutter-main ) ], ), Table( children: const [ TableRow( -<<<<<<< HEAD children: [Text('T2')], -======= - children: [Text("T2")], ->>>>>>> flutter-main ) ], ), Table( children: const [ TableRow( -<<<<<<< HEAD children: [Text('T3')], -======= - children: [Text("T3")], ->>>>>>> flutter-main ) ], ), Table( children: const [ TableRow( -<<<<<<< HEAD children: [Text('T4')], -======= - children: [Text("T4")], ->>>>>>> flutter-main ) ], ), @@ -263,44 +247,28 @@ final sampleTable = [ Table( children: const [ TableRow( -<<<<<<< HEAD children: [Text('T1')], -======= - children: [Text("T1")], ->>>>>>> flutter-main ) ], ), Table( children: const [ TableRow( -<<<<<<< HEAD children: [Text('T2')], -======= - children: [Text("T2")], ->>>>>>> flutter-main ) ], ), Table( children: const [ TableRow( -<<<<<<< HEAD children: [Text('T3')], -======= - children: [Text("T3")], ->>>>>>> flutter-main ) ], ), Table( children: const [ TableRow( -<<<<<<< HEAD children: [Text('T10')], // modified -======= - children: [Text("T10")], // modified ->>>>>>> flutter-main ) ], ), From 567ca3cc2220fc1e45ffa026a3e9059b3c4fe5b3 Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Mon, 7 Feb 2022 10:06:25 -0600 Subject: [PATCH 54/64] add newline at end of file --- examples/development/platform_integration/lib/c_interop.dart | 1 + 1 file changed, 1 insertion(+) diff --git a/examples/development/platform_integration/lib/c_interop.dart b/examples/development/platform_integration/lib/c_interop.dart index 87e8ed4551..e9c633a56f 100644 --- a/examples/development/platform_integration/lib/c_interop.dart +++ b/examples/development/platform_integration/lib/c_interop.dart @@ -12,3 +12,4 @@ final int Function(int x, int y) nativeAdd = nativeAddLib .lookup>('native_add') .asFunction(); // #enddocregion NativeAdd + From 8adbf49f274012b20985969416d2d6a5983c8746 Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Mon, 7 Feb 2022 10:09:50 -0600 Subject: [PATCH 55/64] updated examples/codelabs to latest commit 2f4462a --- examples/codelabs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/codelabs b/examples/codelabs index d65c511323..2f4462a3f7 160000 --- a/examples/codelabs +++ b/examples/codelabs @@ -1 +1 @@ -Subproject commit d65c511323edd36380fda75924e2d1b18822b4a9 +Subproject commit 2f4462a3f7aa2699a6e6df91ecd1324539e22cba From d664aaed47b4eadc8af80a5e8eae2a4816762bfe Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Mon, 7 Feb 2022 10:48:38 -0600 Subject: [PATCH 56/64] remove extra newline --- examples/development/platform_integration/lib/c_interop.dart | 1 - 1 file changed, 1 deletion(-) diff --git a/examples/development/platform_integration/lib/c_interop.dart b/examples/development/platform_integration/lib/c_interop.dart index e9c633a56f..87e8ed4551 100644 --- a/examples/development/platform_integration/lib/c_interop.dart +++ b/examples/development/platform_integration/lib/c_interop.dart @@ -12,4 +12,3 @@ final int Function(int x, int y) nativeAdd = nativeAddLib .lookup>('native_add') .asFunction(); // #enddocregion NativeAdd - From bf798801292f53496e9449b36cb51c54d9456fed Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Wed, 9 Feb 2022 10:57:13 -0600 Subject: [PATCH 57/64] update readme with a test --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index 74b0f47c05..0bc31b270f 100644 --- a/README.md +++ b/README.md @@ -281,6 +281,8 @@ run `./tool/refresh-code-excerpts.sh`. For more information see [Code excerpts][] . +This is a test. + ## Writing for flutter.dev From b332ac5d7e52cc82bc591d88bbab91aafbdcc4e8 Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Wed, 9 Feb 2022 10:58:09 -0600 Subject: [PATCH 58/64] remove test line --- README.md | 2 -- 1 file changed, 2 deletions(-) diff --git a/README.md b/README.md index 0bc31b270f..74b0f47c05 100644 --- a/README.md +++ b/README.md @@ -281,8 +281,6 @@ run `./tool/refresh-code-excerpts.sh`. For more information see [Code excerpts][] . -This is a test. - ## Writing for flutter.dev From f3778e71b0c47f95de4860bee01817fcc47fd9ab Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Thu, 10 Feb 2022 14:43:20 -0600 Subject: [PATCH 59/64] excerpts for cookbook/effects/gradient_bubbles --- .../gradient_bubbles/lib/bubble_painter.dart | 71 ++++++ .../lib/bubble_painter_empty.dart | 45 ++++ .../effects/gradient_bubbles/lib/main.dart | 112 +++++++++ src/cookbook/effects/gradient-bubbles.md | 218 ++++++++++-------- 4 files changed, 349 insertions(+), 97 deletions(-) create mode 100644 examples/cookbook/effects/gradient_bubbles/lib/bubble_painter.dart create mode 100644 examples/cookbook/effects/gradient_bubbles/lib/bubble_painter_empty.dart create mode 100644 examples/cookbook/effects/gradient_bubbles/lib/main.dart diff --git a/examples/cookbook/effects/gradient_bubbles/lib/bubble_painter.dart b/examples/cookbook/effects/gradient_bubbles/lib/bubble_painter.dart new file mode 100644 index 0000000000..407093547d --- /dev/null +++ b/examples/cookbook/effects/gradient_bubbles/lib/bubble_painter.dart @@ -0,0 +1,71 @@ +import 'package:flutter/material.dart'; +import 'dart:ui' as ui; + +@immutable +class BubbleBackground extends StatelessWidget { + const BubbleBackground({ + Key? key, + required this.colors, + this.child, + }) : super(key: key); + + final List colors; + final Widget? child; + + @override + Widget build(BuildContext context) { + return CustomPaint( + // #docregion ScrollableContext + painter: BubblePainter( + colors: colors, + bubbleContext: context, + scrollable: ScrollableState(), + ), + // #enddocregion ScrollableContext + child: child, + ); + } +} + +// #docregion BPWithoutPaint +class BubblePainter extends CustomPainter { + BubblePainter({ + required ScrollableState scrollable, + required BuildContext bubbleContext, + required List colors, + }) : _scrollable = scrollable, + _bubbleContext = bubbleContext, + _colors = colors; + + final ScrollableState _scrollable; + final BuildContext _bubbleContext; + final List _colors; + + @override + bool shouldRepaint(BubblePainter oldDelegate) { + return oldDelegate._scrollable != _scrollable || + oldDelegate._bubbleContext != _bubbleContext || + oldDelegate._colors != _colors; + } + +// #enddocregion BPWithoutPaint + @override + void paint(Canvas canvas, Size size) { + final scrollableBox = _scrollable.context.findRenderObject() as RenderBox; + final scrollableRect = Offset.zero & scrollableBox.size; + final bubbleBox = _bubbleContext.findRenderObject() as RenderBox; + + final origin = + bubbleBox.localToGlobal(Offset.zero, ancestor: scrollableBox); + final paint = Paint() + ..shader = ui.Gradient.linear( + scrollableRect.topCenter, + scrollableRect.bottomCenter, + _colors, + [0.0, 1.0], + TileMode.clamp, + Matrix4.translationValues(-origin.dx, -origin.dy, 0.0).storage, + ); + canvas.drawRect(Offset.zero & size, paint); + } +} diff --git a/examples/cookbook/effects/gradient_bubbles/lib/bubble_painter_empty.dart b/examples/cookbook/effects/gradient_bubbles/lib/bubble_painter_empty.dart new file mode 100644 index 0000000000..5434950f33 --- /dev/null +++ b/examples/cookbook/effects/gradient_bubbles/lib/bubble_painter_empty.dart @@ -0,0 +1,45 @@ +import 'package:flutter/material.dart'; +import 'dart:ui' as ui; + +// #docregion BubblePainterEmpty +@immutable +class BubbleBackground extends StatelessWidget { + const BubbleBackground({ + Key? key, + required this.colors, + this.child, + }) : super(key: key); + + final List colors; + final Widget? child; + + @override + Widget build(BuildContext context) { + return CustomPaint( + painter: BubblePainter( + colors: colors, + ), + child: child, + ); + } +} + +class BubblePainter extends CustomPainter { + BubblePainter({ + required List colors, + }) : _colors = colors; + + final List _colors; + + @override + void paint(Canvas canvas, Size size) { + // TODO: + } + + @override + bool shouldRepaint(BubblePainter oldDelegate) { + // TODO: + return false; + } +} +// #enddocregion BubblePainterEmpty \ No newline at end of file diff --git a/examples/cookbook/effects/gradient_bubbles/lib/main.dart b/examples/cookbook/effects/gradient_bubbles/lib/main.dart new file mode 100644 index 0000000000..0ea56cc464 --- /dev/null +++ b/examples/cookbook/effects/gradient_bubbles/lib/main.dart @@ -0,0 +1,112 @@ +import 'package:flutter/material.dart'; +import 'dart:ui' as ui; + +@immutable +class BubbleBackground extends StatelessWidget { + const BubbleBackground({ + Key? key, + required this.colors, + this.child, + }) : super(key: key); + + final List colors; + final Widget? child; + + @override + Widget build(BuildContext context) { + return CustomPaint( + painter: BubblePainter( + colors: colors, + bubbleContext: context, + scrollable: ScrollableState(), + ), + child: child, + ); + } +} + +// #docregion BubblePainter +class BubblePainter extends CustomPainter { + BubblePainter({ + required ScrollableState scrollable, + required BuildContext bubbleContext, + required List colors, + }) : _scrollable = scrollable, + _bubbleContext = bubbleContext, + _colors = colors; + + final ScrollableState _scrollable; + final BuildContext _bubbleContext; + final List _colors; + + @override + bool shouldRepaint(BubblePainter oldDelegate) { + return oldDelegate._scrollable != _scrollable || + oldDelegate._bubbleContext != _bubbleContext || + oldDelegate._colors != _colors; + } + + @override + void paint(Canvas canvas, Size size) { + final scrollableBox = _scrollable.context.findRenderObject() as RenderBox; + final scrollableRect = Offset.zero & scrollableBox.size; + final bubbleBox = _bubbleContext.findRenderObject() as RenderBox; + + final origin = + bubbleBox.localToGlobal(Offset.zero, ancestor: scrollableBox); + final paint = Paint() + ..shader = ui.Gradient.linear( + scrollableRect.topCenter, + scrollableRect.bottomCenter, + _colors, + [0.0, 1.0], + TileMode.clamp, + Matrix4.translationValues(-origin.dx, -origin.dy, 0.0).storage, + ); + canvas.drawRect(Offset.zero & size, paint); + } +} +// #enddocregion BubblePainter + +class Message { + Message(); + + bool isMine = true; + String text = 'The quick brown fox jumps over the lazy dog'; + String from = 'Flutter Dev'; +} + +class MyChat extends StatefulWidget { + const MyChat({Key? key}) : super(key: key); + + @override + _MyChatState createState() => _MyChatState(); +} + +class _MyChatState extends State { + Message message = Message(); + + @override + Widget build(BuildContext context) { + // #docregion BubbleBackground + return BubbleBackground( + // The colors of the gradient, which are different + // depending on which user sent this message. + colors: message.isMine + ? [const Color(0xFF6C7689), const Color(0xFF3A364B)] + : [const Color(0xFF19B7FF), const Color(0xFF491CCB)], + // The content within the bubble. + child: DefaultTextStyle.merge( + style: const TextStyle( + fontSize: 18.0, + color: Colors.white, + ), + child: Padding( + padding: const EdgeInsets.all(12.0), + child: Text(message.text), + ), + ), + ); + // #enddocregion BubbleBackground + } +} diff --git a/src/cookbook/effects/gradient-bubbles.md b/src/cookbook/effects/gradient-bubbles.md index 7b22ccf117..61f7494ccc 100644 --- a/src/cookbook/effects/gradient-bubbles.md +++ b/src/cookbook/effects/gradient-bubbles.md @@ -12,6 +12,8 @@ js: url: https://dartpad.dev/inject_embed.dart.js --- + + Traditional chat apps display messages in chat bubbles with solid color backgrounds. Modern chat apps display chat bubbles with gradients that are based @@ -65,26 +67,26 @@ background with a new stateless widget called represent the full-screen gradient that should be applied to the bubble. - + ```dart BubbleBackground( - // The colors of the gradient, which are different - // depending on which user sent this message. - colors: message.isMine - ? [const Color(0xFF6C7689), const Color(0xFF3A364B)] - : [const Color(0xFF19B7FF), const Color(0xFF491CCB)], - // The content within the bubble. - child: DefaultTextStyle.merge( - style: const TextStyle( - fontSize: 18.0, - color: Colors.white, - ), - child: Padding( - padding: const EdgeInsets.all(12.0), - child: child, - ), - ), -), + // The colors of the gradient, which are different + // depending on which user sent this message. + colors: message.isMine + ? [const Color(0xFF6C7689), const Color(0xFF3A364B)] + : [const Color(0xFF19B7FF), const Color(0xFF491CCB)], + // The content within the bubble. + child: DefaultTextStyle.merge( + style: const TextStyle( + fontSize: 18.0, + color: Colors.white, + ), + child: Padding( + padding: const EdgeInsets.all(12.0), + child: Text(message.text), + ), + ), +); ``` ## Create a custom painter @@ -95,47 +97,47 @@ method to return a `CustomPaint` with a `CustomPainter` called `BubblePainter`. `BubblePainter` is used to paint the bubble gradients. - + ```dart @immutable class BubbleBackground extends StatelessWidget { - const BubbleBackground({ - Key? key, - required this.colors, - this.child, - }) : super(key: key); - - final List colors; - final Widget? child; - - @override - Widget build(BuildContext context) { - return CustomPaint( - painter: BubblePainter( - colors: colors, - ), - child: child, - ); - } + const BubbleBackground({ + Key? key, + required this.colors, + this.child, + }) : super(key: key); + + final List colors; + final Widget? child; + + @override + Widget build(BuildContext context) { + return CustomPaint( + painter: BubblePainter( + colors: colors, + ), + child: child, + ); + } } class BubblePainter extends CustomPainter { - BubblePainter({ - required List colors, - }) : _colors = colors; - - final List _colors; - - @override - void paint(Canvas canvas, Size size) { - // TODO: - } - - @override - bool shouldRepaint(BubblePainter oldDelegate) { - // TODO: - return false; - } + BubblePainter({ + required List colors, + }) : _colors = colors; + + final List _colors; + + @override + void paint(Canvas canvas, Size size) { + // TODO: + } + + @override + bool shouldRepaint(BubblePainter oldDelegate) { + // TODO: + return false; + } } ``` @@ -148,35 +150,37 @@ a reference to the ancestor `ScrollableState` and a reference to the `BubbleBackground`’s `BuildContext`. Provide each of those to the `CustomPainter`. - + ```dart -BubbleBackground( - scrollable: Scrollable.of(context)!, +BubblePainter( + colors: colors, bubbleContext: context, - // ... + scrollable: ScrollableState(), ), - -//----- - +``` + + +```dart class BubblePainter extends CustomPainter { - BubblePainter({ - required ScrollableState scrollable, - required BuildContext bubbleContext, - required List colors, - }) : _scrollable = scrollable, - _bubbleContext = bubbleContext, - _colors = colors; - - final ScrollableState _scrollable; - final BuildContext _bubbleContext; - final List _colors; - - @override - bool shouldRepaint(BubblePainter oldDelegate) { - return oldDelegate._scrollable != _scrollable || - oldDelegate._bubbleContext != _bubbleContext || - oldDelegate._colors != _colors; - } + BubblePainter({ + required ScrollableState scrollable, + required BuildContext bubbleContext, + required List colors, + }) : _scrollable = scrollable, + _bubbleContext = bubbleContext, + _colors = colors; + + final ScrollableState _scrollable; + final BuildContext _bubbleContext; + final List _colors; + + @override + bool shouldRepaint(BubblePainter oldDelegate) { + return oldDelegate._scrollable != _scrollable || + oldDelegate._bubbleContext != _bubbleContext || + oldDelegate._colors != _colors; + } } ``` @@ -192,27 +196,47 @@ of the bubble, configure a shader with the given colors, and then use a matrix translation to offset the shader based on the bubble’s position within the `Scrollable`. - + ```dart class BubblePainter extends CustomPainter { - @override - void paint(Canvas canvas, Size size) { - final scrollableBox = _scrollable.context.findRenderObject() as RenderBox; - final scrollableRect = Offset.zero & scrollableBox.size; - final bubbleBox = _bubbleContext.findRenderObject() as RenderBox; - - final origin = bubbleBox.localToGlobal(Offset.zero, ancestor: scrollableBox); - final paint = Paint() - ..shader = ui.Gradient.linear( - scrollableRect.topCenter, - scrollableRect.bottomCenter, - _colors, - [0.0, 1.0], - TileMode.clamp, - Matrix4.translationValues(-origin.dx, -origin.dy, 0.0).storage, - ); - canvas.drawRect(Offset.zero & size, paint); - } + BubblePainter({ + required ScrollableState scrollable, + required BuildContext bubbleContext, + required List colors, + }) : _scrollable = scrollable, + _bubbleContext = bubbleContext, + _colors = colors; + + final ScrollableState _scrollable; + final BuildContext _bubbleContext; + final List _colors; + + @override + bool shouldRepaint(BubblePainter oldDelegate) { + return oldDelegate._scrollable != _scrollable || + oldDelegate._bubbleContext != _bubbleContext || + oldDelegate._colors != _colors; + } + + @override + void paint(Canvas canvas, Size size) { + final scrollableBox = _scrollable.context.findRenderObject() as RenderBox; + final scrollableRect = Offset.zero & scrollableBox.size; + final bubbleBox = _bubbleContext.findRenderObject() as RenderBox; + + final origin = + bubbleBox.localToGlobal(Offset.zero, ancestor: scrollableBox); + final paint = Paint() + ..shader = ui.Gradient.linear( + scrollableRect.topCenter, + scrollableRect.bottomCenter, + _colors, + [0.0, 1.0], + TileMode.clamp, + Matrix4.translationValues(-origin.dx, -origin.dy, 0.0).storage, + ); + canvas.drawRect(Offset.zero & size, paint); + } } ``` From 616df570fa76bdba908102dcb56a15ace7e98ecc Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Thu, 10 Feb 2022 14:57:01 -0600 Subject: [PATCH 60/64] clean up unused import and added a dart analyze ignore --- .../effects/gradient_bubbles/lib/bubble_painter_empty.dart | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/examples/cookbook/effects/gradient_bubbles/lib/bubble_painter_empty.dart b/examples/cookbook/effects/gradient_bubbles/lib/bubble_painter_empty.dart index 5434950f33..5d737a8296 100644 --- a/examples/cookbook/effects/gradient_bubbles/lib/bubble_painter_empty.dart +++ b/examples/cookbook/effects/gradient_bubbles/lib/bubble_painter_empty.dart @@ -1,5 +1,6 @@ +// ignore_for_file: unused_field + import 'package:flutter/material.dart'; -import 'dart:ui' as ui; // #docregion BubblePainterEmpty @immutable @@ -42,4 +43,4 @@ class BubblePainter extends CustomPainter { return false; } } -// #enddocregion BubblePainterEmpty \ No newline at end of file +// #enddocregion BubblePainterEmpty From 3c4b9029a028dc606658d529eaeb11723d09fc19 Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Thu, 10 Feb 2022 15:10:25 -0600 Subject: [PATCH 61/64] pubspec and analysis_options --- .../gradient_bubbles/analysis_options.yaml | 6 ++++++ .../effects/gradient_bubbles/pubspec.yaml | 18 ++++++++++++++++++ 2 files changed, 24 insertions(+) create mode 100644 examples/cookbook/effects/gradient_bubbles/analysis_options.yaml create mode 100644 examples/cookbook/effects/gradient_bubbles/pubspec.yaml diff --git a/examples/cookbook/effects/gradient_bubbles/analysis_options.yaml b/examples/cookbook/effects/gradient_bubbles/analysis_options.yaml new file mode 100644 index 0000000000..45c332111e --- /dev/null +++ b/examples/cookbook/effects/gradient_bubbles/analysis_options.yaml @@ -0,0 +1,6 @@ +include: package:flutter_lints/flutter.yaml + +linter: + rules: + avoid_print: true + prefer_single_quotes: true diff --git a/examples/cookbook/effects/gradient_bubbles/pubspec.yaml b/examples/cookbook/effects/gradient_bubbles/pubspec.yaml new file mode 100644 index 0000000000..5bfbaee468 --- /dev/null +++ b/examples/cookbook/effects/gradient_bubbles/pubspec.yaml @@ -0,0 +1,18 @@ +name: gradient_bubbles +description: A new Flutter project. +publish_to: 'none' +version: 1.0.0+1 + +environment: + sdk: ">=2.16.0 <3.0.0" +dependencies: + flutter: + sdk: flutter + cupertino_icons: ^1.0.2 + +dev_dependencies: + flutter_test: + sdk: flutter + flutter_lints: ^1.0.0 +flutter: + uses-material-design: true From ee30991a7af11e30e497e910b9cdabcbd69ba58b Mon Sep 17 00:00:00 2001 From: Khanh Nguyen Date: Thu, 1 Sep 2022 15:43:22 -0700 Subject: [PATCH 62/64] update dependabot to automatically check submodules for updates --- .github/dependabot.yml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index ca935ba5f3..e30545e7d5 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -21,6 +21,11 @@ updates: interval: "daily" allow: - dependency-type: "production" + # Automatically update submodules + - package-ecosystem: 'gitsubmodule' + directory: '/' + schedule: + interval: 'daily' - package-ecosystem: "pub" directory: "/" schedule: From f35e7189b5acb5e886c5727a80b06e4f39f85357 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 21 Nov 2022 03:37:33 +0000 Subject: [PATCH 63/64] Bump examples/codelabs from `6d9c942` to `2f352af` Bumps [examples/codelabs](https://github.com/flutter/codelabs) from `6d9c942` to `2f352af`. - [Release notes](https://github.com/flutter/codelabs/releases) - [Commits](https://github.com/flutter/codelabs/compare/6d9c94290d7f7160121fcd171318f287072457ed...2f352afce7fc4ab505c2ae4be471a848831c3504) --- updated-dependencies: - dependency-name: examples/codelabs dependency-type: direct:production ... Signed-off-by: dependabot[bot] --- examples/codelabs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/codelabs b/examples/codelabs index 6d9c94290d..2f352afce7 160000 --- a/examples/codelabs +++ b/examples/codelabs @@ -1 +1 @@ -Subproject commit 6d9c94290d7f7160121fcd171318f287072457ed +Subproject commit 2f352afce7fc4ab505c2ae4be471a848831c3504 From 50ad9ad85f8c5a909867a4af5b95faf280ffa57a Mon Sep 17 00:00:00 2001 From: "Shams Zakhour (ignore Sfshaza)" <44418985+sfshaza2@users.noreply.github.com> Date: Mon, 21 Nov 2022 10:25:44 -0800 Subject: [PATCH 64/64] Revert "Bump examples/codelabs from `6d9c942` to `2f352af`" --- examples/codelabs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/examples/codelabs b/examples/codelabs index 2f352afce7..6d9c94290d 160000 --- a/examples/codelabs +++ b/examples/codelabs @@ -1 +1 @@ -Subproject commit 2f352afce7fc4ab505c2ae4be471a848831c3504 +Subproject commit 6d9c94290d7f7160121fcd171318f287072457ed

  • 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
    mE$=CQ>Ys- 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 z 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