diff --git a/_config.yml b/_config.yml index b496ed59f8b..4c4167681c6 100644 --- a/_config.yml +++ b/_config.yml @@ -99,18 +99,26 @@ defaults: path: '' values: toc: true + - scope: + path: 'accessibility-and-localization' + values: + show_breadcrumbs: true + - scope: + path: 'add-to-app' + values: + show_breadcrumbs: true - scope: path: 'cookbook' values: show_breadcrumbs: true - scope: - path: 'development' + path: 'data-and-backend' values: show_breadcrumbs: true - scope: - path: 'development/ui/widgets' + path: 'deployment' values: - toc: false + show_breadcrumbs: true - scope: path: 'get-started' values: @@ -119,10 +127,38 @@ defaults: path: 'get-started/flutter-for' values: show_breadcrumbs: false + - scope: + path: 'packages-and-plugins' + values: + show_breadcrumbs: true + - scope: + path: 'perf' + values: + show_breadcrumbs: true + - scope: + path: 'platform-integration' + values: + show_breadcrumbs: true - scope: path: 'release' values: show_breadcrumbs: true + - scope: + path: 'testing' + values: + show_breadcrumbs: true + - scope: + path: 'tools' + values: + show_breadcrumbs: true + - scope: + path: 'ui' + values: + show_breadcrumbs: true + - scope: + path: 'ui/widgets' + values: + toc: false ########### Alerts ########### diff --git a/firebase.json b/firebase.json index 203230522eb..02ef492e0ee 100644 --- a/firebase.json +++ b/firebase.json @@ -24,53 +24,55 @@ { "source": "/support", "destination": "https://flutter.dev/community", "type": 301 }, { "source": "/docs/:rest*", "destination": "/:rest*", "type": 301 }, - { "source": "/accessibility", "destination": "/development/accessibility-and-localization/accessibility", "type": 301 }, + { "source": "/accessibility", "destination": "/accessibility-and-localization/accessibility", "type": 301 }, { "source": "/adaptations", "destination": "/resources/platform-adaptations", "type": 301 }, - { "source": "/adaptive*", "destination": "/development/ui/layout/adaptive-responsive", "type": 301 }, + { "source": "/adaptive*", "destination": "/ui/layout/adaptive-responsive", "type": 301 }, { "source": "/android-release", "destination": "/deployment/android", "type": 301 }, - { "source": "/animations", "destination": "/development/ui/animations", "type": 301 }, - { "source": "/animations/:rest*", "destination": "/development/ui/animations/:rest*", "type": 301 }, - { "source": "/assets-and-images", "destination": "/development/ui/assets-and-images", "type": 301 }, + { "source": "/animations", "destination": "/ui/animations", "type": 301 }, + { "source": "/animations/:rest*", "destination": "/ui/animations/:rest*", "type": 301 }, + { "source": "/assets-and-images", "destination": "/ui/assets-and-images", "type": 301 }, { "source": "/bootstrap-into-dart", "destination": "/resources/bootstrap-into-dart", "type": 301 }, { "source": "/bug-reports", "destination": "/resources/bug-reports", "type": 301 }, { "source": "/cd", "destination": "/deployment/cd", "type": 301 }, { "source": "/custom-fonts", "destination": "/cookbook/design/fonts", "type": 301 }, { "source": "/debugging", "destination": "/testing/debugging", "type": 301 }, { "source": "/deferred-components", "destination": "/perf/deferred-components", "type": 301 }, - { "source": "/desktop", "destination": "/development/platform-integration/desktop", "type": 301 }, - { "source": "/desktop/windows", "destination": "/development/platform-integration/windows/building", "type": 301 }, - { "source": "/desktop/macos", "destination": "/development/platform-integration/macos/building", "type": 301 }, - { "source": "/desktop/linux", "destination": "/development/platform-integration/linux/building", "type": 301 }, + { "source": "/desktop", "destination": "/platform-integration/desktop", "type": 301 }, + { "source": "/desktop/windows", "destination": "/platform-integration/windows/building", "type": 301 }, + { "source": "/desktop/macos", "destination": "/platform-integration/macos/building", "type": 301 }, + { "source": "/desktop/linux", "destination": "/platform-integration/linux/building", "type": 301 }, { "source": "/perf/rendering/*", "destination": "/perf", "type": 301 }, - { "source": "/developing-packages", "destination": "/development/packages-and-plugins/developing-packages", "type": 301 }, - { "source": "/devtools/:rest*", "destination": "/development/tools/devtools/:rest*", "type": 301 }, + { "source": "/developing-packages", "destination": "/packages-and-plugins/developing-packages", "type": 301 }, + { "source": "/development", "destination": "/", "type": 301 }, + { "source": "/development/:rest*", "destination": "/:rest*", "type": 301 }, + { "source": "/devtools/:rest*", "destination": "/tools/devtools/:rest*", "type": 301 }, { "source": "/downloads/:resource*", "destination": "/resources/:resource*", "type": 301 }, { "source": "/f/flutter-survey-metadata.json", "destination": "https://storage.googleapis.com/flutter-uxr/surveys/flutter-survey-metadata.json", "type": 301 }, { "source": "/faq", "destination": "/resources/faq", "type": 301 }, { "source": "/fastlane-cd", "destination": "/deployment/cd#fastlane", "type": 301 }, { "source": "/flutter-for-:platform*", "destination": "/get-started/flutter-for/:platform*-devs", "type": 301 }, - { "source": "/formatting", "destination": "/development/tools/formatting", "type": 301 }, - { "source": "/gestures", "destination": "/development/ui/advanced/gestures", "type": 301 }, - { "source": "/hot-reload", "destination": "/development/tools/hot-reload", "type": 301 }, + { "source": "/formatting", "destination": "/tools/formatting", "type": 301 }, + { "source": "/gestures", "destination": "/ui/advanced/gestures", "type": 301 }, + { "source": "/hot-reload", "destination": "/tools/hot-reload", "type": 301 }, { "source": "/ide-setup", "destination": "/get-started/editor", "type": 301 }, { "source": "/images/catalog-widget-placeholder.png", "destination": "/assets/images/docs/catalog-widget-placeholder.png", "type": 301 }, - { "source": "/inspector", "destination": "/development/tools/devtools/inspector", "type": 301 }, - { "source": "/intellij-ide", "destination": "/development/tools/android-studio", "type": 301 }, + { "source": "/inspector", "destination": "/tools/devtools/inspector", "type": 301 }, + { "source": "/intellij-ide", "destination": "/tools/android-studio", "type": 301 }, { "source": "/intellij-setup", "destination": "/get-started/editor", "type": 301 }, { "source": "/ios-release", "destination": "/deployment/ios", "type": 301 }, { "source": "/jobs/**", "destination": "/jobs", "type": 301 }, - { "source": "/json", "destination": "/development/data-and-backend/json", "type": 301 }, - { "source": "/layout", "destination": "/development/ui/layout/box-constraints", "type": 301 }, - { "source": "/networking", "destination": "/development/data-and-backend/networking", "type": 301 }, + { "source": "/json", "destination": "/data-and-backend/json", "type": 301 }, + { "source": "/layout", "destination": "/ui/layout/box-constraints", "type": 301 }, + { "source": "/networking", "destination": "/data-and-backend/networking", "type": 301 }, { "source": "/overview", "destination": "/resources/architectural-overview", "type": 301 }, - { "source": "/platform-channels", "destination": "/development/platform-integration/platform-channels", "type": 301 }, - { "source": "/platform-plugins*", "destination": "/development/packages-and-plugins/using-packages", "type": 301 }, - { "source": "/platform-services", "destination": "/development/platform-integration/platform-channels", "type": 301 }, + { "source": "/platform-channels", "destination": "/platform-integration/platform-channels", "type": 301 }, + { "source": "/platform-plugins*", "destination": "/packages-and-plugins/using-packages", "type": 301 }, + { "source": "/platform-services", "destination": "/platform-integration/platform-channels", "type": 301 }, { "source": "/reading-writing-files", "destination": "/cookbook/persistence/reading-writing-files", "type": 301 }, { "source": "/release-notes", "destination": "/release/release-notes", "type": 301 }, { "source": "/release-notes/:version*", "destination": "/release/release-notes/release-notes-:version*", "type": 301 }, - { "source": "/responsive*", "destination": "/development/ui/layout/adaptive-responsive", "type": 301 }, - { "source": "/routing-and-navigation", "destination": "/development/ui/navigation", "type": 301 }, + { "source": "/responsive*", "destination": "/ui/layout/adaptive-responsive", "type": 301 }, + { "source": "/routing-and-navigation", "destination": "/ui/navigation", "type": 301 }, { "source": "/sdk-archive", "destination": "/release/archive", "type": 301 }, { "source": "/setup-:os*", "destination": "/get-started/install/:os*", "type": 301 }, { "source": "/setup", "destination": "/get-started/install", "type": 301 }, @@ -79,15 +81,16 @@ { "source": "/tutorials", "destination": "/reference/tutorials", "type": 301 }, { "source": "/ui-performance", "destination": "/perf/ui-performance", "type": 301 }, { "source": "/upgrading", "destination": "/release/upgrade", "type": 301 }, - { "source": "/using-ide-vscode", "destination": "/development/tools/vs-code", "type": 301 }, - { "source": "/using-ide", "destination": "/development/tools/android-studio", "type": 301 }, - { "source": "/using-packages", "destination": "/development/packages-and-plugins/using-packages", "type": 301 }, + { "source": "/using-ide-vscode", "destination": "/tools/vs-code", "type": 301 }, + { "source": "/using-ide", "destination": "/tools/android-studio", "type": 301 }, + { "source": "/using-packages", "destination": "/packages-and-plugins/using-packages", "type": 301 }, { "source": "/web-analogs", "destination": "/get-started/flutter-for/web-devs", "type": 301 }, { "source": "/webflutter.dev/web", "destination": "/web", "type": 301 }, - { "source": "/widgets-intro", "destination": "/development/ui/widgets-intro", "type": 301 }, - { "source": "/widgets", "destination": "/development/ui/widgets/catalog", "type": 301 }, - { "source": "/widgets/:rest*", "destination": "/development/ui/widgets/:rest*", "type": 301 }, + { "source": "/widgets-intro", "destination": "/ui/widgets-intro", "type": 301 }, + { "source": "/widgets", "destination": "/ui/widgets/catalog", "type": 301 }, + { "source": "/widgets/:rest*", "destination": "/ui/widgets/:rest*", "type": 301 }, + { "source": "/add-to-app/android/add-splash-screen", "destination": "/platform-integration/android/splash-screen", "type": 301 }, { "source": "/cookbook/networking/named-routes", "destination": "/cookbook/navigation/named-routes", "type": 301 }, { "source": "/cookbook/testing/integration-test-introduction", "destination": "/cookbook/testing/integration", "type": 301 }, { "source": "/cookbook/testing/integration-test-profiling", "destination": "/cookbook/testing/integration/profiling", "type": 301 }, @@ -98,46 +101,21 @@ { "source": "/cookbook/testing/widget-test-introduction", "destination": "/cookbook/testing/widget", "type": 301 }, { "source": "/cookbook/testing/widget-test-tap-drag", "destination": "/cookbook/testing/widget/tap-drag", "type": 301 }, { "source": "/deployment/fastlane-cd", "destination": "/deployment/cd#fastlane", "type": 301 }, - { "source": "/development/add-to-app/android/add-splash-screen", "destination": "/development/platform-integration/android/splash-screen", "type": 301 }, - { "source": "/development/ios-14", "destination": "/development/platform-integration/ios/ios-debugging", "type": 301 }, - { "source": "/development/ios-project-migration", "destination": "/development/platform-integration/ios", "type": 301 }, - { "source": "/development/packages-and-plugins/androidx-compatibility", "destination": "/development/platform-integration/android/androidx-migration", "type": 301 }, - { "source": "/development/packages-and-plugins/c-interop", "destination": "/development/platform-integration/android/c-interop", "type": 301 }, - { "source": "/development/packages-and-plugins/plugin-api-migration", "destination": "/release/breaking-changes/plugin-api-migration", "type": 301 }, - { "source": "/development/platform-integration/ios-app-clip", "destination": "/development/platform-integration/ios/ios-app-clip", "type": 301 }, - { "source": "/development/platform-integration/platform-views", "destination": "/development/platform-integration/android/platform-views", "type": 301 }, - { "source": "/development/platform-integration/web-images", "destination": "/development/platform-integration/web/web-images", "type": 301 }, - { "source": "/development/tools/devtools", "destination": "/development/tools/devtools/overview", "type": 301 }, - { "source": "/development/tools/devtools/code-size", "destination": "/development/tools/devtools/app-size", "type": 301 }, - { "source": "/development/tools/devtools/codeSize", "destination": "/development/tools/devtools/app-size", "type": 301 }, - { "source": "/development/tools/devtools/timeline", "destination": "/development/tools/devtools/performance", "type": 301 }, - { "source": "/development/tools/ide", "destination": "/development/tools/android-studio", "type": 301 }, - { "source": "/development/tools/ide/android-studio", "destination": "/development/tools/android-studio", "type": 301 }, - { "source": "/development/tools/ide/vs-code", "destination": "/development/tools/vs-code", "type": 301 }, - { "source": "/development/tools/inspector", "destination": "/development/tools/devtools/inspector", "type": 301 }, - { "source": "/development/tools/sdk/archive", "destination": "/release/archive", "type": 301 }, - { "source": "/development/tools/sdk/overview", "destination": "/development/tools/sdk", "type": 301 }, - { "source": "/development/tools/sdk/releases", "destination": "/release/archive", "type": 301 }, - { "source": "/development/tools/sdk/release-notes", "destination": "/release/release-notes", "type": 301 }, - { "source": "/development/tools/sdk/release-notes/:rest*", "destination": "/release/release-notes/:rest*", "type": 301 }, - { "source": "/development/tools/sdk/release-notes/supported-platforms", "destination": "/reference/supported-platforms", "type": 301 }, - { "source": "/development/tools/sdk/upgrading", "destination": "/release/upgrade", "type": 301 }, - { "source": "/development/tools/web-renderers", "destination": "/development/platform-integration/web/renderers", "type": 301 }, - { "source": "/development/ui/advanced/splash-screen", "destination": "/development/platform-integration/android/splash-screen", "type": 301 }, - { "source": "/development/ui/advanced/actions_and_shortcuts", "destination": "/development/ui/advanced/actions-and-shortcuts", "type": 301 }, - { "source": "/development/ui/layout/responsive", "destination": "/development/ui/layout/adaptive-responsive", "type": 301 }, - { "source": "/development/ui/material3-updates", "destination": "/development/ui/material", "type": 301 }, - { "source": "/development/ui/splash-screen", "destination": "/development/platform-integration/android/splash-screen", "type": 301 }, - { "source": "/development/ui/splash-screen/android-splash-screen", "destination": "/development/platform-integration/android/splash-screen", "type": 301 }, - { "source": "/development/ui/widgets/catalog", "destination": "/development/ui/widgets", "type": 301 }, - { "source": "/development/ui/widgets/widgetindex", "destination": "/reference/widgets", "type": 301 }, { "source": "/get-started", "destination": "/get-started/install", "type": 301 }, { "source": "/get-started/flutter-for", "destination": "/get-started/flutter-for/android-devs", "type": 301 }, { "source": "/get-started/flutter-for/ios-devs", "destination": "/get-started/flutter-for/swiftui-devs", "type": 301 }, { "source": "/get-started/install/null", "destination": "/get-started/install", "type": 301 }, - { "source": "/get-started/web", "destination": "/development/platform-integration/web/building", "type": 301 }, + { "source": "/get-started/web", "destination": "/platform-integration/web/building", "type": 301 }, + { "source": "/ios-14", "destination": "/platform-integration/ios/ios-debugging", "type": 301 }, + { "source": "/ios-project-migration", "destination": "/platform-integration/ios", "type": 301 }, + { "source": "/packages-and-plugins/androidx-compatibility", "destination": "/platform-integration/android/androidx-migration", "type": 301 }, + { "source": "/packages-and-plugins/c-interop", "destination": "/platform-integration/android/c-interop", "type": 301 }, + { "source": "/packages-and-plugins/plugin-api-migration", "destination": "/release/breaking-changes/plugin-api-migration", "type": 301 }, + { "source": "/platform-integration/ios-app-clip", "destination": "/platform-integration/ios/ios-app-clip", "type": 301 }, + { "source": "/platform-integration/platform-views", "destination": "/platform-integration/android/platform-views", "type": 301 }, + { "source": "/platform-integration/web-images", "destination": "/platform-integration/web/web-images", "type": 301 }, { "source": "/release/release-notes/changelogs/changelog-1.17.0", "destination": "/release/release-notes/release-notes-1.17.0", "type": 301 }, - { "source": "/reference/widgets/:catalogpage+", "destination": "/development/ui/widgets/:catalogpage+", "type": 301 }, + { "source": "/reference/widgets/:catalogpage+", "destination": "/ui/widgets/:catalogpage+", "type": 301 }, { "source": "/reference/widgets/widgetindex", "destination": "/reference/widgets", "type": 301 }, { "source": "/release/breaking-changes/scrollable_alert_dialog", "destination": "/release/breaking-changes/scrollable-alert-dialog", "type": 301 }, { "source": "/resources/rendering", "destination": "/resources/architectural-overview#rendering-and-layout", "type": 301 }, @@ -145,11 +123,35 @@ { "source": "/resources/technical-overview", "destination": "/resources/architectural-overview", "type": 301 }, { "source": "/testing/best-practices", "destination": "/perf/best-practices", "type": 301 }, { "source": "/testing/ui-performance", "destination": "/perf/ui-performance", "type": 301 }, - { "source": "/tutorials/animation", "destination": "/development/ui/animations/tutorial", "type": 301 }, - { "source": "/tutorials/interactive", "destination": "/development/ui/interactive", "type": 301 }, - { "source": "/tutorials/internationalization", "destination": "/development/accessibility-and-localization/internationalization", "type": 301 }, - { "source": "/tutorials/layout", "destination": "/development/ui/layout", "type": 301 }, - { "source": "/web", "destination": "/development/platform-integration/web", "type": 301 }, + { "source": "/tools/devtools", "destination": "/tools/devtools/overview", "type": 301 }, + { "source": "/tools/devtools/code-size", "destination": "/tools/devtools/app-size", "type": 301 }, + { "source": "/tools/devtools/codeSize", "destination": "/tools/devtools/app-size", "type": 301 }, + { "source": "/tools/devtools/timeline", "destination": "/tools/devtools/performance", "type": 301 }, + { "source": "/tools/ide", "destination": "/tools/android-studio", "type": 301 }, + { "source": "/tools/ide/android-studio", "destination": "/tools/android-studio", "type": 301 }, + { "source": "/tools/ide/vs-code", "destination": "/tools/vs-code", "type": 301 }, + { "source": "/tools/inspector", "destination": "/tools/devtools/inspector", "type": 301 }, + { "source": "/tools/sdk/archive", "destination": "/release/archive", "type": 301 }, + { "source": "/tools/sdk/overview", "destination": "/tools/sdk", "type": 301 }, + { "source": "/tools/sdk/releases", "destination": "/release/archive", "type": 301 }, + { "source": "/tools/sdk/release-notes", "destination": "/release/release-notes", "type": 301 }, + { "source": "/tools/sdk/release-notes/:rest*", "destination": "/release/release-notes/:rest*", "type": 301 }, + { "source": "/tools/sdk/release-notes/supported-platforms", "destination": "/reference/supported-platforms", "type": 301 }, + { "source": "/tools/sdk/upgrading", "destination": "/release/upgrade", "type": 301 }, + { "source": "/tools/web-renderers", "destination": "/platform-integration/web/renderers", "type": 301 }, + { "source": "/tutorials/animation", "destination": "/ui/animations/tutorial", "type": 301 }, + { "source": "/tutorials/interactive", "destination": "/ui/interactive", "type": 301 }, + { "source": "/tutorials/internationalization", "destination": "/accessibility-and-localization/internationalization", "type": 301 }, + { "source": "/tutorials/layout", "destination": "/ui/layout", "type": 301 }, + { "source": "/ui/advanced/splash-screen", "destination": "/platform-integration/android/splash-screen", "type": 301 }, + { "source": "/ui/advanced/actions_and_shortcuts", "destination": "/ui/advanced/actions-and-shortcuts", "type": 301 }, + { "source": "/ui/layout/responsive", "destination": "/ui/layout/adaptive-responsive", "type": 301 }, + { "source": "/ui/material3-updates", "destination": "/ui/material", "type": 301 }, + { "source": "/ui/splash-screen", "destination": "/platform-integration/android/splash-screen", "type": 301 }, + { "source": "/ui/splash-screen/android-splash-screen", "destination": "/platform-integration/android/splash-screen", "type": 301 }, + { "source": "/ui/widgets/catalog", "destination": "/ui/widgets", "type": 301 }, + { "source": "/ui/widgets/widgetindex", "destination": "/reference/widgets", "type": 301 }, + { "source": "/web", "destination": "/platform-integration/web", "type": 301 }, { "source": "/whats-new-archive", "destination": "/release/whats-new", "type": 301 }, { "source": "/whats-new", "destination": "/release/whats-new", "type": 301 }, @@ -174,7 +176,7 @@ { "source": "/go/a11y-links", "destination": "https://docs.google.com/document/d/1FxzANiyJFkoRxJ7V2IejpfB5DX19gxiJps-8N2oUW_U/edit#", "type": 301 }, { "source": "/go/a11y-text-attributes", "destination": "https://docs.google.com/document/d/1vhbwxFOTRTUvW2C_onFffEH5Fn2pAfMQDyv-gekias0/edit?usp=sharing&resourcekey=0-ChQvjIoWYO7jXcaCXMj5Qw", "type": 301 }, { "source": "/go/actions-and-shortcuts-design-revision", "destination": "https://docs.google.com/document/d/1A9yald55O_C6Weqp4tOtyMisfOC1ZC0UMq7Yc-pNfVQ/edit", "type": 301 }, - { "source": "/go/adaptive", "destination": "/development/ui/layout/building-adaptive-apps", "type": 301 }, + { "source": "/go/adaptive", "destination": "/ui/layout/building-adaptive-apps", "type": 301 }, { "source": "/go/adaptive-layout-foldables", "destination": "https://docs.google.com/document/d/1qhrpTWYs5f67X8v32NCCNTRMIjSrVHuaMEFAul-Q_Ms/edit?usp=sharing", "type": 301 }, { "source": "/go/add-to-app-samples", "destination": "https://docs.google.com/document/d/1M_GsAL8C1NxbsmzI35w2Th1wvX1KMoPHY5yeeNbzjY0", "type": 301 }, { "source": "/go/allow-datatable-row-height-to-expand", "destination": "https://docs.google.com/document/d/1qr1IgaU2z9eaM6zCa4u-Q8kJD5Zq7IcdxVyrgR7CwZc/edit?usp=sharing&resourcekey=0-1bNp0ocF4AwGBj6NvRfrEA", "type": 301 }, @@ -185,9 +187,9 @@ { "source": "/go/android-migration-summary", "destination": "https://docs.google.com/document/d/1wKspwf6LQu6uo32uQ9NcukfiKhLL4ButV9cwpjeb8QI", "type": 301 }, { "source": "/go/android-ndk-version", "destination": "https://docs.google.com/document/d/1sljfqHpI5m4uxsL7B89yhYluO97Mz1YKyA0VgzzXyZ4/edit?usp=sharing&resourcekey=0-Ts9Rk8jbJor7WBMMiehKWg", "type": 301 }, { "source": "/go/android-plugin-migration", "destination": "/release/breaking-changes/plugin-api-migration", "type": 301 }, - { "source": "/go/android-project-migration", "destination": "/development/platform-integration/android/androidx-migration", "type": 301 }, + { "source": "/go/android-project-migration", "destination": "/platform-integration/android/androidx-migration", "type": 301 }, { "source": "/go/android-root-predictive-back", "destination": "https://docs.google.com/document/d/1BGCWy1_LRrXEB6qeqTAKlk-U2CZlKJ5xI97g45U7azk/edit#", "type": 301 }, - { "source": "/go/android-splash-migration", "destination": "/development/platform-integration/android/splash-screen-migration", "type": 301 }, + { "source": "/go/android-splash-migration", "destination": "/platform-integration/android/splash-screen-migration", "type": 301 }, { "source": "/go/android-startup-tracing", "destination": "https://docs.google.com/document/d/1I7jvRg3UmG7P84hdis-9A00fEr2Ntj-K7f_FbGLubGE/edit?usp=sharing", "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 }, @@ -204,7 +206,7 @@ { "source": "/go/blankcanvas", "destination": "https://docs.google.com/document/d/1rS_RO2DQ_d4_roc3taAB6vXFjv7-9hJP7pyZ9NhPOdA/edit?resourcekey=0-VBzTPoqLwsruo0j9dokuOg", "type": 301 }, { "source": "/go/bottom-navigation-bar-title-deprecation", "destination": "https://docs.google.com/document/d/1L-2nPf5hbLGNoRvOSUmnxgUHahBVzW1ybhTXGY3ObDw/edit?usp=sharing", "type": 301 }, { "source": "/go/buffer-queue", "destination": "https://docs.google.com/document/d/1rXl9G-VmISVlVkKVgrnQKeX7Mexyez0x9HZ5F5yKxrQ/edit?usp=sharing", "type": 301 }, - { "source": "/go/build-aar", "destination": "/development/add-to-app/android/project-setup#option-a---depend-on-the-android-archive-aar", "type": 301 }, + { "source": "/go/build-aar", "destination": "/add-to-app/android/project-setup#option-a---depend-on-the-android-archive-aar", "type": 301 }, { "source": "/go/build-dashboard-v2", "destination": "https://docs.google.com/document/d/1kwh48xYuoVtadYFb2I2t6BJMGEW07K7T5WYcieAZZiY", "type": 301 }, { "source": "/go/build-flows", "destination": "https://docs.google.com/document/d/1imsVxbeAsttTi90EFpbnbVzov9z0xXd7tLCAr_QAJ38", "type": 301 }, { "source": "/go/buildtextspan-buildcontext", "destination": "https://docs.google.com/document/d/1nr-g45gXcWTYoW9UmChZV7Ije3lKP4pEvDQCdz6NFdI/edit?usp=sharing", "type": 301 }, @@ -242,7 +244,7 @@ { "source": "/go/desktop-resize-macos", "destination": "https://docs.google.com/document/d/1slGllp1Jhde7wkF6snqGhdrZwHV1VVmXeIF3f0t24JU/edit?usp=sharing", "type": 301 }, { "source": "/go/desktop-resize", "destination": "https://docs.google.com/document/d/1OTy-qCGdP7tYfrEKCNX9A24sgnx5vshfK6FupfniyxA", "type": 301 }, { "source": "/go/detect-memory-leaks", "destination": "https://docs.google.com/document/d/1hvRVpULPnwGjBc5nw52iSaDfB8hjIzbaQuECHmKvDrY/edit", "type": 301 }, - { "source": "/go/developing-plugins", "destination": "/development/packages-and-plugins/developing-packages#plugin", "type": 301 }, + { "source": "/go/developing-plugins", "destination": "/packages-and-plugins/developing-packages#plugin", "type": 301 }, { "source": "/go/dirty-region-management", "destination": "https://docs.google.com/document/d/19WDvGJql1bmnECTdEzJFeH9Ixw4AP2R7JlgujBSbDbk/edit?usp=sharing", "type": 301 }, { "source": "/go/disable-dropdownmenuitem", "destination": "https://docs.google.com/document/d/13W6PupVZUt6TenoE3NaTP9OCYsKBIYg9YgdurKe1XKs/edit?usp=sharing&resourcekey=0-6n8D5zSLjWs2ZncIyG6HUw", "type": 301 }, { "source": "/go/docs-nnbd-migration-guide", "destination": "https://docs.google.com/document/d/1U8blxmkArsd09C-IGe3cQbJ5SvDLhwn0rWWsY2SthZ4/edit?usp=sharing&resourcekey=0-0CviWT1D47VGxK-Li4_NIw", "type": 301 }, @@ -296,7 +298,7 @@ { "source": "/go/globalkey-duplication-refactoring", "destination": "https://docs.google.com/document/d/15U1XDLrP-SXfgeu5DBBsA7MQuFpDUW005Y2ObwmYWIc/", "type": 301 }, { "source": "/go/gn-ninja-engine-artifacts", "destination": "https://docs.google.com/document/d/10C0yexPKlx4CdlF-fO4efGhQXEvDH92-RiAhBTj5EF8/", "type": 301 }, { "source": "/go/golden-workflow", "destination": "https://docs.google.com/document/d/1MuIUz9pyE_bBZPbtMCj3pYgkdgG4s4Egh6FMknTngKw", "type": 301 }, - { "source": "/go/google-apis", "destination": "/development/data-and-backend/google-apis?utm_source=go-link&utm_medium=referral&utm_campaign=go-google-apis", "type": 301 }, + { "source": "/go/google-apis", "destination": "/data-and-backend/google-apis?utm_source=go-link&utm_medium=referral&utm_campaign=go-google-apis", "type": 301 }, { "source": "/go/go-router-improvements", "destination": "https://docs.google.com/document/d/1_mRXinbL_rb0mUt6DAFZ8kj0kh33ZjEMJuUq4PJgwj8/edit?usp=sharing&resourcekey=0-sYbRzE9opneOFZ5F8J3gGw", "type": 301 }, { "source": "/go/go-router-support-imperative-routing", "destination": "https://docs.google.com/document/d/1HCgLi7ialw2Eqv-f_2z9ogdOfcmepIIqCsRhF-DT9dM/edit?usp=sharing", "type": 301 }, { "source": "/go/go-router-v2-5-breaking-changes", "destination": "https://docs.google.com/document/d/1MoEM3C6sDvMUuZYCxlYoMI2QJlkONu8i9G53uy5xk-M/edit", "type": 301 }, @@ -379,7 +381,7 @@ { "source": "/go/platform-interface-breaking-changes", "destination": "https://docs.google.com/document/d/1LD7QjmzJZLCopUrFAAE98wOUQpjmguyGTN2wd_89Srs/edit#heading=h.xabf9lffxrkb", "type": 301 }, { "source": "/go/platinum-tests", "destination": "https://docs.google.com/document/d/1yqGEMsLp6dstSlq56E2BqNP2PinKB9Z7WXC3pGjcD7Y/edit?usp=sharing", "type": 301 }, { "source": "/go/plugin-binding-review", "destination": "https://docs.google.com/document/d/1-9Si_ocFYh-Wa1qKV4PV2ocywKDYdiR_1yO3twPvrfM", "type": 301 }, - { "source": "/go/plugin-platforms", "destination": "/development/packages-and-plugins/developing-packages#plugin-platforms", "type": 301 }, + { "source": "/go/plugin-platforms", "destination": "/packages-and-plugins/developing-packages#plugin-platforms", "type": 301 }, { "source": "/go/plugin-shared-ios-macos", "destination": "https://docs.google.com/document/d/1JdgBrMXV0a6fnVoooILNTQB8dNCvLloT4D4TBkECQ6c/edit?usp=sharing&resourcekey=0-iPL3CzwOjUquabkMiucaHA", "type": 301 }, { "source": "/go/plugin-support-for-custom-embeddings", "destination": "https://docs.google.com/document/d/1AJTHdC20JhD3viR4JWTghagIztqL5jg_R9NFQmnwAMw/edit?usp=sharing&resourcekey=0-qAECjzHKB5tM47azrVnH1w", "type": 301 }, { "source": "/go/plugins-list-migration", "destination": "https://docs.google.com/document/d/1itYyHax0bzL3-hRtQd1zRPqJfOrLYih1fW0nPDJDytc/edit", "type": 301 }, diff --git a/src/_data/clock/faqs.yml b/src/_data/clock/faqs.yml index c591c6da745..b0f1c782d9e 100644 --- a/src/_data/clock/faqs.yml +++ b/src/_data/clock/faqs.yml @@ -92,7 +92,7 @@ - title: What language(s) should the clock use? content: > Any. If you have words in your clock, consider - internationalizing + internationalizing them. Note that written parts of your submission must be in English to be eligible for judging, and your submission must, at a minimum, support English language evaluation. However, we will not judge your clock face for language inclusion. Please ensure that your clock face’s text does not include profanity in any language, and is built and submitted in accordance with the @@ -102,7 +102,7 @@ - title: What accessibility requirements should I add? content: > Google values accessibility, and it will be a consideration in your submission as part of the “overall execution” - criteria. Check the + criteria. Check the Flutter accessibility page for details. - title: > @@ -119,7 +119,7 @@ Take a look at Flutter performance profiling, and enable the performance overlay feature in the - Flutter + Flutter Inspector to see whether frames are being drawn redundantly. - title: Is there an age limit to participate? @@ -138,7 +138,7 @@ - title: Do contest submissions have to be formatted by the Dart formatter? content: > Yes. This ensures more consistent and readable code. - You can do this from your IDE or at the command + You can do this from your IDE or at the command line. - title: Speaking of code formatting, what are some good coding practices for Flutter? @@ -180,7 +180,7 @@ - title: How can I share my clock face online? content: > We’re glad you asked! Flutter’s web support is in technical preview and you can use to share your clock face online. - Once you enable web support, test your app by selecting + Once you enable web support, test your app by selecting Chrome as the target device in your IDE, or at the command line with flutter run -d chrome. Build a web version of your app for deployment using flutter build web. Then, you can host it using GitHub Pages, Firebase, diff --git a/src/_data/docs_cards.yml b/src/_data/docs_cards.yml index 9f1f42263fb..29b8af54c81 100644 --- a/src/_data/docs_cards.yml +++ b/src/_data/docs_cards.yml @@ -3,7 +3,7 @@ url: /get-started/install - name: Widgets catalog description: Dip into the rich set of Flutter widgets available in the SDK. - url: /development/ui/widgets + url: /ui/widgets - name: API docs description: Bookmark the API reference docs for the Flutter framework. url: https://api.flutter.dev/ diff --git a/src/_data/happy_paths_cards.yml b/src/_data/happy_paths_cards.yml index 793fe6a41f8..2a55c3f93cf 100644 --- a/src/_data/happy_paths_cards.yml +++ b/src/_data/happy_paths_cards.yml @@ -1,24 +1,24 @@ - name: Ads image: /assets/images/docs/happy-paths/HappyPaths_Icon_Ad_2d.png description: Monetize your mobile app with in-app ads. - url: /development/packages-and-plugins/happy-paths/recommended/#ads- + url: /packages-and-plugins/happy-paths/recommended/#ads- - name: Background processing image: /assets/images/docs/happy-paths/HappyPaths_Icon_Processing_2d.png description: Enable headless execution of Dart code. - url: /development/packages-and-plugins/happy-paths/recommended/#background-processing- + url: /packages-and-plugins/happy-paths/recommended/#background-processing- - name: Geolocation image: /assets/images/docs/happy-paths/HappyPaths_Icon_Geolocation_2d.png description: Determine a user's location for enhanced app functionality. - url: /development/packages-and-plugins/happy-paths/recommended/#geolocation- + url: /packages-and-plugins/happy-paths/recommended/#geolocation- - name: Immutable data image: /assets/images/docs/happy-paths/HappyPaths_Icon_ImmutableData_2d.png description: Handle immutable data structures. - url: /development/packages-and-plugins/happy-paths/recommended/#immutable-data-- + url: /packages-and-plugins/happy-paths/recommended/#immutable-data-- - name: Structured local storage image: /assets/images/docs/happy-paths/HappyPaths_Icon_Storage_2d.png description: Maintain and preserve data. - url: /development/packages-and-plugins/happy-paths/recommended/#structured-local-storage- + url: /packages-and-plugins/happy-paths/recommended/#structured-local-storage- - name: Web sockets image: /assets/images/docs/happy-paths/HappyPaths_Icon_WebSockets_2d.png description: Handle client and server connections. - url: /development/packages-and-plugins/happy-paths/recommended/#web-sockets- \ No newline at end of file + url: /packages-and-plugins/happy-paths/recommended/#web-sockets- \ No newline at end of file diff --git a/src/_data/sidenav.yml b/src/_data/sidenav.yml index 7063a57b703..e15849ce396 100644 --- a/src/_data/sidenav.yml +++ b/src/_data/sidenav.yml @@ -60,292 +60,263 @@ - title: Tutorials permalink: /reference/tutorials -- title: Development - permalink: /development - expanded: true +- divider + +- title: User interface + permalink: /ui children: - - title: User interface - permalink: /development/ui + - title: Introduction to widgets + permalink: /ui/widgets-intro + - title: Building layouts + permalink: /ui/layout children: - - title: Introduction to widgets - permalink: /development/ui/widgets-intro - - title: Building layouts - permalink: /development/ui/layout - children: - - title: Layouts in Flutter - permalink: /development/ui/layout - match-page-url-exactly: true - - title: Tutorial - permalink: /development/ui/layout/tutorial - - title: Creating adaptive and responsive apps - permalink: /development/ui/layout/adaptive-responsive - - title: Building adaptive apps - permalink: /development/ui/layout/building-adaptive-apps - - title: Understanding constraints - permalink: /development/ui/layout/constraints - - title: Box constraints - permalink: /development/ui/layout/box-constraints - - title: Adding interactivity - permalink: /development/ui/interactive - - title: Assets and images - permalink: /development/ui/assets-and-images - - title: Material Design - permalink: /development/ui/material - - title: Navigation & routing - permalink: /development/ui/navigation - children: - - title: Navigation in Flutter - permalink: /development/ui/navigation - match-page-url-exactly: true - - title: Deep linking - permalink: /development/ui/navigation/deep-linking - - title: URL strategies - permalink: /development/ui/navigation/url-strategies - - title: Animations - permalink: /development/ui/animations - children: - - title: Introduction - permalink: /development/ui/animations - match-page-url-exactly: true - - title: Overview - permalink: /development/ui/animations/overview - - title: Tutorial - permalink: /development/ui/animations/tutorial - - title: Implicit animations - permalink: /development/ui/animations/implicit-animations - - title: Hero animations - permalink: /development/ui/animations/hero-animations - - title: Staggered animations - permalink: /development/ui/animations/staggered-animations - - title: Advanced UI - permalink: /development/ui/advanced - children: - - title: Actions & shortcuts - permalink: /development/ui/advanced/actions_and_shortcuts - - title: Fonts & typography - permalink: /development/ui/advanced/typography - - title: Keyboard focus system - permalink: /development/ui/advanced/focus - - title: Gestures - permalink: /development/ui/advanced/gestures - - title: Shaders - permalink: /development/ui/advanced/shaders - - title: Slivers - permalink: /development/ui/advanced/slivers - - title: Widget catalog - permalink: /development/ui/widgets - - title: Data & backend - permalink: /development/data-and-backend + - title: Layouts in Flutter + permalink: /ui/layout + match-page-url-exactly: true + - title: Tutorial + permalink: /ui/layout/tutorial + - title: Creating adaptive and responsive apps + permalink: /ui/layout/adaptive-responsive + - title: Building adaptive apps + permalink: /ui/layout/building-adaptive-apps + - title: Understanding constraints + permalink: /ui/layout/constraints + - title: Box constraints + permalink: /ui/layout/box-constraints + - title: Adding interactivity + permalink: /ui/interactive + - title: Assets and images + permalink: /ui/assets-and-images + - title: Material Design + permalink: /ui/material + - title: Navigation & routing + permalink: /ui/navigation children: - - title: State management - permalink: /development/data-and-backend/state-mgmt - children: - - title: Introduction - permalink: /development/data-and-backend/state-mgmt/intro - - title: Think declaratively - permalink: /development/data-and-backend/state-mgmt/declarative - - title: Ephemeral vs app state - permalink: /development/data-and-backend/state-mgmt/ephemeral-vs-app - - title: Simple app state management - permalink: /development/data-and-backend/state-mgmt/simple - - title: Options - permalink: /development/data-and-backend/state-mgmt/options - - title: Networking & http - permalink: /development/data-and-backend/networking - - title: JSON and serialization - permalink: /development/data-and-backend/json - - title: Firebase - permalink: /development/data-and-backend/firebase - - title: Google APIs - permalink: /development/data-and-backend/google-apis - - title: Accessibility & internationalization # TODO: use: Accessibility & localization - permalink: /development/accessibility-and-localization + - title: Navigation in Flutter + permalink: /ui/navigation + match-page-url-exactly: true + - title: Deep linking + permalink: /ui/navigation/deep-linking + - title: URL strategies + permalink: /ui/navigation/url-strategies + - title: Animations + permalink: /ui/animations children: - - title: Accessibility - permalink: /development/accessibility-and-localization/accessibility - - title: Internationalization - permalink: /development/accessibility-and-localization/internationalization - - title: Platform integration - permalink: /development/platform-integration + - title: Introduction + permalink: /ui/animations + match-page-url-exactly: true + - title: Overview + permalink: /ui/animations/overview + - title: Tutorial + permalink: /ui/animations/tutorial + - title: Implicit animations + permalink: /ui/animations/implicit-animations + - title: Hero animations + permalink: /ui/animations/hero-animations + - title: Staggered animations + permalink: /ui/animations/staggered-animations + - title: Advanced UI + permalink: /ui/advanced children: - - title: Supported platforms - permalink: /reference/supported-platforms - - title: Building desktop apps with Flutter - permalink: /development/platform-integration/desktop - - title: Writing platform-specific code - permalink: /development/platform-integration/platform-channels - - title: Android - permalink: /development/platform-integration/android - children: - - title: Adding a splash screen - permalink: /development/platform-integration/android/splash-screen - - title: C interop - permalink: /development/platform-integration/android/c-interop - - title: Hosting native Android views - permalink: /development/platform-integration/android/platform-views - - title: AndroidX migration - permalink: /development/platform-integration/android/androidx-migration - - title: Deprecated Splash Screen API Migration - permalink: /development/platform-integration/android/splash-screen-migration - - title: Restore state on Android **NEW** - permalink: /development/platform-integration/android/restore-state-android - - title: Targeting ChromeOS with Android - permalink: /development/platform-integration/android/chromeos - - title: iOS - permalink: /development/platform-integration/ios - children: - - title: Leveraging Apple's system libraries - permalink: /development/platform-integration/ios/apple-frameworks - - title: Adding a splash screen - permalink: /development/platform-integration/ios/splash-screen - - title: Adding iOS App Clip support - permalink: /development/platform-integration/ios/ios-app-clip - - title: Adding iOS app extensions - permalink: /development/platform-integration/ios/app-extensions - - title: C interop - permalink: /development/platform-integration/ios/c-interop - - title: Hosting native iOS views - permalink: /development/platform-integration/ios/platform-views - - title: iOS debugging - permalink: /development/platform-integration/ios/ios-debugging - - title: Restore state on iOS **NEW** - permalink: /development/platform-integration/ios/restore-state-ios - - title: Linux - permalink: /development/platform-integration/linux - children: - - title: Building Linux apps - permalink: /development/platform-integration/linux/building - - title: macOS - permalink: /development/platform-integration/macos - children: - - title: Building macOS apps - permalink: /development/platform-integration/macos/building - - title: C interop - permalink: /development/platform-integration/macos/c-interop - - title: Web - permalink: /development/platform-integration/web - children: - - title: Building web apps - permalink: /development/platform-integration/web/building - - title: Web FAQ - permalink: /development/platform-integration/web/faq - - title: Web renderers - permalink: /development/platform-integration/web/renderers - - title: Custom app initialization - permalink: /development/platform-integration/web/initialization - - title: Displaying images on the web - permalink: /development/platform-integration/web/web-images - - title: Windows - permalink: /development/platform-integration/windows - children: - - title: Building Windows apps - permalink: /development/platform-integration/windows/building - - title: Run loop migration - permalink: /development/platform-integration/windows/run-loop-migration - - title: Version information migration - permalink: /development/platform-integration/windows/version-migration - - title: Dark mode migration - permalink: /development/platform-integration/windows/dark-mode-migration - - title: Packages & plugins - permalink: /development/packages-and-plugins + - title: Actions & shortcuts + permalink: /ui/advanced/actions_and_shortcuts + - title: Fonts & typography + permalink: /ui/advanced/typography + - title: Keyboard focus system + permalink: /ui/advanced/focus + - title: Gestures + permalink: /ui/advanced/gestures + - title: Shaders + permalink: /ui/advanced/shaders + - title: Slivers + permalink: /ui/advanced/slivers + - title: Widget catalog + permalink: /ui/widgets + +- title: Data & backend + permalink: /data-and-backend + children: + - title: State management + permalink: /data-and-backend/state-mgmt children: - - title: Background processes - permalink: /development/packages-and-plugins/background-processes - - title: Developing packages & plugins - permalink: /development/packages-and-plugins/developing-packages - - title: Flutter Favorites program - permalink: /development/packages-and-plugins/favorites - - title: Happy paths project - permalink: /development/packages-and-plugins/happy-paths - match-page-url-exactly: true - - title: Happy paths recommendations - permalink: /development/packages-and-plugins/happy-paths/recommended - - title: Plugins in Flutter tests - permalink: /development/packages-and-plugins/plugins-in-tests - - title: Using packages - permalink: /development/packages-and-plugins/using-packages - - title: Package site - permalink: https://pub.dev/flutter - - title: Add Flutter to an existing app - permalink: /development/add-to-app + - title: Introduction + permalink: /data-and-backend/state-mgmt/intro + - title: Think declaratively + permalink: /data-and-backend/state-mgmt/declarative + - title: Ephemeral vs app state + permalink: /data-and-backend/state-mgmt/ephemeral-vs-app + - title: Simple app state management + permalink: /data-and-backend/state-mgmt/simple + - title: Options + permalink: /data-and-backend/state-mgmt/options + - title: Networking & http + permalink: /data-and-backend/networking + - title: JSON and serialization + permalink: /data-and-backend/json + - title: Firebase + permalink: /data-and-backend/firebase + - title: Google APIs + permalink: /data-and-backend/google-apis + +- title: Accessibility & localization + permalink: /accessibility-and-localization + children: + - title: Accessibility + permalink: /accessibility-and-localization/accessibility + - title: Internationalization + permalink: /accessibility-and-localization/internationalization + +- title: Platform integration + permalink: /platform-integration + children: + - title: Supported platforms + permalink: /reference/supported-platforms + - title: Building desktop apps with Flutter + permalink: /platform-integration/desktop + - title: Writing platform-specific code + permalink: /platform-integration/platform-channels + - title: Android + permalink: /platform-integration/android + children: + - title: Adding a splash screen + permalink: /platform-integration/android/splash-screen + - title: C interop + permalink: /platform-integration/android/c-interop + - title: Hosting native Android views + permalink: /platform-integration/android/platform-views + - title: AndroidX migration + permalink: /platform-integration/android/androidx-migration + - title: Deprecated Splash Screen API Migration + permalink: /platform-integration/android/splash-screen-migration + - title: Restore state on Android + permalink: /platform-integration/android/restore-state-android + - title: Targeting ChromeOS with Android + permalink: /platform-integration/android/chromeos + - title: iOS + permalink: /platform-integration/ios + children: + - title: Leveraging Apple's system libraries + permalink: /platform-integration/ios/apple-frameworks + - title: Adding a splash screen + permalink: /platform-integration/ios/splash-screen + - title: Adding iOS App Clip support + permalink: /platform-integration/ios/ios-app-clip + - title: Adding iOS app extensions + permalink: /platform-integration/ios/app-extensions + - title: C interop + permalink: /platform-integration/ios/c-interop + - title: Hosting native iOS views + permalink: /platform-integration/ios/platform-views + - title: iOS debugging + permalink: /platform-integration/ios/ios-debugging + - title: Restore state on iOS + permalink: /platform-integration/ios/restore-state-ios + - title: Linux + permalink: /platform-integration/linux + children: + - title: Building Linux apps + permalink: /platform-integration/linux/building + - title: macOS + permalink: /platform-integration/macos children: - - title: Introduction - permalink: /development/add-to-app - match-page-url-exactly: true - - title: Adding to an Android app - permalink: /development/add-to-app/android - children: - - title: Project setup - permalink: /development/add-to-app/android/project-setup - - title: Add a single Flutter screen - permalink: /development/add-to-app/android/add-flutter-screen - - title: Add a Flutter Fragment - permalink: /development/add-to-app/android/add-flutter-fragment - - title: Add a Flutter View - permalink: /development/add-to-app/android/add-flutter-view - - title: Plugin setup - permalink: /development/add-to-app/android/plugin-setup - - title: Adding to an iOS app - permalink: /development/add-to-app/ios - children: - - title: Project setup - permalink: /development/add-to-app/ios/project-setup - - title: Add a single Flutter screen - permalink: /development/add-to-app/ios/add-flutter-screen - - title: Debugging & hot reload - permalink: /development/add-to-app/debugging - - title: Loading sequence and performance - permalink: /development/add-to-app/performance - - title: Multiple Flutter instances - permalink: /development/add-to-app/multiple-flutters - - title: Tools & features - permalink: /development/tools + - title: Building macOS apps + permalink: /platform-integration/macos/building + - title: C interop + permalink: /platform-integration/macos/c-interop + - title: Web + permalink: /platform-integration/web children: - - title: Android Studio & IntelliJ - permalink: /development/tools/android-studio - - title: Visual Studio Code - permalink: /development/tools/vs-code - - title: DevTools - permalink: /development/tools/devtools - children: - - title: Overview - permalink: /development/tools/devtools/overview - - title: Install from Android Studio & IntelliJ - permalink: /development/tools/devtools/android-studio - - title: Install from VS Code - permalink: /development/tools/devtools/vscode - - title: Install from command line - permalink: /development/tools/devtools/cli - - title: Flutter inspector - permalink: /development/tools/devtools/inspector - - title: Performance view - permalink: /development/tools/devtools/performance - - title: CPU Profiler view - permalink: /development/tools/devtools/cpu-profiler - - title: Memory view - permalink: /development/tools/devtools/memory - - title: Debug console view **NEW** - permalink: /development/tools/devtools/console - - title: Network view - permalink: /development/tools/devtools/network - - title: Debugger - permalink: /development/tools/devtools/debugger - - title: Logging view - permalink: /development/tools/devtools/logging - - title: App size tool - permalink: /development/tools/devtools/app-size - - title: Release notes - permalink: /development/tools/devtools/release-notes - - title: SDK overview - permalink: /development/tools/sdk - - title: Flutter and the pubspec file - permalink: /development/tools/pubspec - - title: Hot reload - permalink: /development/tools/hot-reload - - title: Flutter Fix - permalink: /development/tools/flutter-fix - - title: Code formatting - permalink: /development/tools/formatting + - title: Building web apps + permalink: /platform-integration/web/building + - title: Web FAQ + permalink: /platform-integration/web/faq + - title: Web renderers + permalink: /platform-integration/web/renderers + - title: Custom app initialization + permalink: /platform-integration/web/initialization + - title: Displaying images on the web + permalink: /platform-integration/web/web-images + - title: Windows + permalink: /platform-integration/windows + children: + - title: Building Windows apps + permalink: /platform-integration/windows/building + - title: Run loop migration + permalink: /platform-integration/windows/run-loop-migration + - title: Version information migration + permalink: /platform-integration/windows/version-migration + - title: Dark mode migration + permalink: /platform-integration/windows/dark-mode-migration + +- title: Packages & plugins + permalink: /packages-and-plugins + children: + - title: Background processes + permalink: /packages-and-plugins/background-processes + - title: Developing packages & plugins + permalink: /packages-and-plugins/developing-packages + - title: Flutter Favorites program + permalink: /packages-and-plugins/favorites + - title: Happy paths project + permalink: /packages-and-plugins/happy-paths + match-page-url-exactly: true + - title: Happy paths recommendations + permalink: /packages-and-plugins/happy-paths/recommended + - title: Plugins in Flutter tests + permalink: /packages-and-plugins/plugins-in-tests + - title: Using packages + permalink: /packages-and-plugins/using-packages + - title: Package site + permalink: https://pub.dev/flutter + +- title: Tools & features + permalink: /tools + children: + - title: Android Studio & IntelliJ + permalink: /tools/android-studio + - title: Visual Studio Code + permalink: /tools/vs-code + - title: DevTools + permalink: /tools/devtools + children: + - title: Overview + permalink: /tools/devtools/overview + - title: Install from Android Studio & IntelliJ + permalink: /tools/devtools/android-studio + - title: Install from VS Code + permalink: /tools/devtools/vscode + - title: Install from command line + permalink: /tools/devtools/cli + - title: Flutter inspector + permalink: /tools/devtools/inspector + - title: Performance view + permalink: /tools/devtools/performance + - title: CPU Profiler view + permalink: /tools/devtools/cpu-profiler + - title: Memory view + permalink: /tools/devtools/memory + - title: Debug console view + permalink: /tools/devtools/console + - title: Network view + permalink: /tools/devtools/network + - title: Debugger + permalink: /tools/devtools/debugger + - title: Logging view + permalink: /tools/devtools/logging + - title: App size tool + permalink: /tools/devtools/app-size + - title: Release notes + permalink: /tools/devtools/release-notes + - title: SDK overview + permalink: /tools/sdk + - title: Flutter and the pubspec file + permalink: /tools/pubspec + - title: Hot reload + permalink: /tools/hot-reload + - title: Flutter Fix + permalink: /tools/flutter-fix + - title: Code formatting + permalink: /tools/formatting - title: Testing & debugging permalink: /testing @@ -405,6 +376,7 @@ permalink: /perf/appendix - title: Deployment + permalink: /deployment children: - title: Obfuscating Dart code permalink: /deployment/obfuscate @@ -425,6 +397,41 @@ - title: Continuous deployment permalink: /deployment/cd +- title: Add to an existing app + permalink: /add-to-app + children: + - title: Introduction + permalink: /add-to-app + match-page-url-exactly: true + - title: Adding to an Android app + permalink: /add-to-app/android + children: + - title: Project setup + permalink: /add-to-app/android/project-setup + - title: Add a single Flutter screen + permalink: /add-to-app/android/add-flutter-screen + - title: Add a Flutter Fragment + permalink: /add-to-app/android/add-flutter-fragment + - title: Add a Flutter View + permalink: /add-to-app/android/add-flutter-view + - title: Plugin setup + permalink: /add-to-app/android/plugin-setup + - title: Adding to an iOS app + permalink: /add-to-app/ios + children: + - title: Project setup + permalink: /add-to-app/ios/project-setup + - title: Add a single Flutter screen + permalink: /add-to-app/ios/add-flutter-screen + - title: Debugging & hot reload + permalink: /add-to-app/debugging + - title: Loading sequence and performance + permalink: /add-to-app/performance + - title: Multiple Flutter instances + permalink: /add-to-app/multiple-flutters + +- divider + - title: Resources children: - title: Architectural overview diff --git a/src/_includes/docs/catalogpage.html b/src/_includes/docs/catalogpage.html index d35e90b11b6..45c0cbac0d5 100644 --- a/src/_includes/docs/catalogpage.html +++ b/src/_includes/docs/catalogpage.html @@ -17,7 +17,7 @@ {% endif -%} -
See more widgets in the widget catalog.
+See more widgets in the widget catalog.
{% assign components = site.data.catalog.widgets | where_exp:"comp","comp.categories contains include.category" -%} @@ -63,5 +63,5 @@See more widgets in the widget catalog.
+See more widgets in the widget catalog.
diff --git a/src/_includes/docs/performance.md b/src/_includes/docs/performance.md index f998b3a770f..d2250ef8355 100644 --- a/src/_includes/docs/performance.md +++ b/src/_includes/docs/performance.md @@ -5,4 +5,4 @@ see [Using the Performance view][]. {{site.alert.end}} -[Using the Performance view]: {{site.url}}/development/tools/devtools/performance +[Using the Performance view]: {{site.url}}/tools/devtools/performance diff --git a/src/_includes/header.html b/src/_includes/header.html index 1530a73bb80..3beaa177d84 100644 --- a/src/_includes/header.html +++ b/src/_includes/header.html @@ -54,7 +54,7 @@