Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: flutter/flutter
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: cc14ef529014
Choose a base ref
...
head repository: flutter/flutter
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: cb7b7dfe86c7
Choose a head ref
  • 20 commits
  • 48 files changed
  • 12 contributors

Commits on Nov 17, 2025

  1. Remove unnecessary final modifier in StandardMessageCodec.java‎ (#…

    …178598)
    
    ## Pre-launch Checklist
    
    - [x] I read the [Contributor Guide] and followed the process outlined
    there for submitting PRs.
    - [x] I read the [Tree Hygiene] wiki page, which explains my
    responsibilities.
    - [x] I read and followed the [Flutter Style Guide], including [Features
    we expect every widget to implement].
    - [x] I signed the [CLA].
    - [ ] I listed at least one issue that this PR fixes in the description
    above.
    - [ ] I updated/added relevant documentation (doc comments with `///`).
    - [ ] I added new tests to check the change I am making, or this PR is
    [test-exempt].
    - [x] I followed the [breaking change policy] and added [Data Driven
    Fixes] where supported.
    - [x] All existing and new tests are passing.
    
    If you need help, consider asking for advice on the #hackers-new channel
    on [Discord].
    
    **Note**: The Flutter team is currently trialing the use of [Gemini Code
    Assist for
    GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code).
    Comments from the `gemini-code-assist` bot should not be taken as
    authoritative feedback from the Flutter team. If you find its comments
    useful you can update your code accordingly, but if you are unsure or
    disagree with the feedback, please feel free to wait for a Flutter team
    member's review for guidance on which automated comments should be
    addressed.
    
    <!-- Links -->
    [Contributor Guide]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
    [Tree Hygiene]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
    [test-exempt]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
    [Flutter Style Guide]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
    [Features we expect every widget to implement]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
    [CLA]: https://cla.developers.google.com/
    [flutter/tests]: https://github.com/flutter/tests
    [breaking change policy]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
    [Discord]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
    [Data Driven Fixes]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
    AbdeMohlbi authored Nov 17, 2025
    Configuration menu
    Copy the full SHA
    6252afa View commit details
    Browse the repository at this point in the history
  2. Small cleanup in AndroidTouchProcessor.java‎ (#178574)

    before :
    ```java
     if (isPointerEvent && isMovementEvent) {
          // Continue.
        } else {
          return false;
        }
    ```
    after :
    ```java
    if (!isPointerEvent || !isMovementEvent) {
          return false;
        }
    ```
    ## Pre-launch Checklist
    
    - [x] I read the [Contributor Guide] and followed the process outlined
    there for submitting PRs.
    - [x] I read the [Tree Hygiene] wiki page, which explains my
    responsibilities.
    - [x] I read and followed the [Flutter Style Guide], including [Features
    we expect every widget to implement].
    - [x] I signed the [CLA].
    - [ ] I listed at least one issue that this PR fixes in the description
    above.
    - [ ] I updated/added relevant documentation (doc comments with `///`).
    - [ ] I added new tests to check the change I am making, or this PR is
    [test-exempt].
    - [x] I followed the [breaking change policy] and added [Data Driven
    Fixes] where supported.
    - [x] All existing and new tests are passing.
    
    If you need help, consider asking for advice on the #hackers-new channel
    on [Discord].
    
    **Note**: The Flutter team is currently trialing the use of [Gemini Code
    Assist for
    GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code).
    Comments from the `gemini-code-assist` bot should not be taken as
    authoritative feedback from the Flutter team. If you find its comments
    useful you can update your code accordingly, but if you are unsure or
    disagree with the feedback, please feel free to wait for a Flutter team
    member's review for guidance on which automated comments should be
    addressed.
    
    <!-- Links -->
    [Contributor Guide]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
    [Tree Hygiene]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
    [test-exempt]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
    [Flutter Style Guide]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
    [Features we expect every widget to implement]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
    [CLA]: https://cla.developers.google.com/
    [flutter/tests]: https://github.com/flutter/tests
    [breaking change policy]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
    [Discord]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
    [Data Driven Fixes]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
    AbdeMohlbi authored Nov 17, 2025
    Configuration menu
    Copy the full SHA
    08f1b66 View commit details
    Browse the repository at this point in the history
  3. Roll Skia from 84c83c0dfb4a to 47fd0d9b1044 (4 revisions) (#178673)

    https://skia.googlesource.com/skia.git/+log/84c83c0dfb4a..47fd0d9b1044
    
    2025-11-17 [email protected] Manual roll
    Dawn from 0c868bb228e4 to 807351eca19f (10 revisions)
    2025-11-17
    recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com
    Roll recipe dependencies (trivial).
    2025-11-17 [email protected] [graphite] Paint and RenderStep share
    uniform binding.
    2025-11-17 [email protected] Roll
    vulkan-deps from 1012b9b17dd1 to df6a456f0d0e (3 revisions)
    
    If this roll has caused a breakage, revert this CL and stop the roller
    using the controls here:
    https://autoroll.skia.org/r/skia-flutter-autoroll
    Please CC
    [email protected],[email protected],[email protected] on the
    revert to ensure that a human
    is aware of the problem.
    
    To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
    To file a bug in Flutter:
    https://github.com/flutter/flutter/issues/new/choose
    
    To report a problem with the AutoRoller itself, please file a bug:
    https://issues.skia.org/issues/new?component=1389291&template=1850622
    
    Documentation for the AutoRoller is here:
    https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
    engine-flutter-autoroll authored Nov 17, 2025
    Configuration menu
    Copy the full SHA
    2805900 View commit details
    Browse the repository at this point in the history
  4. Add DropdownMenuFormField.decorationBuilder (#178640)

    ## Description
    
    This PR adds `DropdownMenuFormField.decorationBuilder` and passes it to
    the underlying `DropdownMenu`.
    
    ## Related Issue
    
    Follow-up to #176264 which added
    `DropdownMenu.decorationBuilder`.
    
    ## Tests
    
    - Adds 1 test.
    bleroux authored Nov 17, 2025
    Configuration menu
    Copy the full SHA
    4b33f98 View commit details
    Browse the repository at this point in the history
  5. Fix DropdownMenu width when decorationBuilder provides label (#178465)

    ## Description
    
    This PR fixes `DropdownMenu` preferred width calculation to include the
    label provided by `DropdownMenu.decorationBuilder`.
    
    ## Before
    
    <img width="225" height="63" alt="Image"
    src="https://github.com/user-attachments/assets/47dbec7d-c59c-4379-8f22-792c844f6ac4"
    />
    
    ## After
    
    <img width="225" height="63" alt="Image"
    src="https://github.com/user-attachments/assets/d4223e56-2b3f-4e12-893a-284ceb3b8ea4"
    />
    
    ## Related Issue
    
    Fixes [DropdownMenu wrong width when decorationBuilder provides label
    ](#178459)
    
    ## Tests
    
    - Adds 2 tests.
    bleroux authored Nov 17, 2025
    Configuration menu
    Copy the full SHA
    cbfa8f4 View commit details
    Browse the repository at this point in the history
  6. Make a11y computeChildGeometry slightly faster (#177477)

    This is not a fix for #166173, it's only a by-product. The fix will be
    in separate PR, this includes the unrelated code changes to make that PR
    smaller.
    
    According to `bench_material3_semantics`, this reduces
    `Semantics.ensureGeometry` by ~100 μs (321.6 μs -> 228.9 μs).
    
    ## Pre-launch Checklist
    
    - [ ] I read the [Contributor Guide] and followed the process outlined
    there for submitting PRs.
    - [ ] I read the [Tree Hygiene] wiki page, which explains my
    responsibilities.
    - [ ] I read and followed the [Flutter Style Guide], including [Features
    we expect every widget to implement].
    - [ ] I signed the [CLA].
    - [ ] I listed at least one issue that this PR fixes in the description
    above.
    - [ ] I updated/added relevant documentation (doc comments with `///`).
    - [ ] I added new tests to check the change I am making, or this PR is
    [test-exempt].
    - [ ] I followed the [breaking change policy] and added [Data Driven
    Fixes] where supported.
    - [ ] All existing and new tests are passing.
    
    If you need help, consider asking for advice on the #hackers-new channel
    on [Discord].
    
    **Note**: The Flutter team is currently trialing the use of [Gemini Code
    Assist for
    GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code).
    Comments from the `gemini-code-assist` bot should not be taken as
    authoritative feedback from the Flutter team. If you find its comments
    useful you can update your code accordingly, but if you are unsure or
    disagree with the feedback, please feel free to wait for a Flutter team
    member's review for guidance on which automated comments should be
    addressed.
    
    <!-- Links -->
    [Contributor Guide]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
    [Tree Hygiene]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
    [test-exempt]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
    [Flutter Style Guide]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
    [Features we expect every widget to implement]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
    [CLA]: https://cla.developers.google.com/
    [flutter/tests]: https://github.com/flutter/tests
    [breaking change policy]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
    [Discord]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
    [Data Driven Fixes]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
    LongCatIsLooong authored Nov 17, 2025
    Configuration menu
    Copy the full SHA
    f5b0b09 View commit details
    Browse the repository at this point in the history

Commits on Nov 18, 2025

  1. [fuchsia] Add wrapper for zx_iob_writev (#178626)

    Unfortunately, I don't think there's an easy way to add a test for this
    because it's possible to create IOBuffers from dart.
    
    I need to add this because Fuchsia logging now uses IOBuffers rather
    than sockets, so some logging code that I have will need this.
    
    ## Pre-launch Checklist
    
    - [X] I read the [Contributor Guide] and followed the process outlined
    there for submitting PRs.
    - [X] I read the [Tree Hygiene] wiki page, which explains my
    responsibilities.
    - [X] I read and followed the [Flutter Style Guide], including [Features
    we expect every widget to implement].
    - [X] I signed the [CLA].
    - [X] I listed at least one issue that this PR fixes in the description
    above.
    - [X] I updated/added relevant documentation (doc comments with `///`).
    - [X] I added new tests to check the change I am making, or this PR is
    [test-exempt].
    - [X] I followed the [breaking change policy] and added [Data Driven
    Fixes] where supported.
    - [X] All existing and new tests are passing.
    sutes-work authored Nov 18, 2025
    Configuration menu
    Copy the full SHA
    b7e2650 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    2243a1f View commit details
    Browse the repository at this point in the history
  3. Roll Skia from 47fd0d9b1044 to d7268f8245f2 (6 revisions) (#178695)

    https://skia.googlesource.com/skia.git/+log/47fd0d9b1044..d7268f8245f2
    
    2025-11-18 [email protected] Add [[nodiscard]] to various SkAuto*
    types
    2025-11-17 [email protected] [rust png] Restrict `sBIT` handling to
    8-bit images.
    2025-11-17 [email protected] [pdf] Only paint non-degenenerate paths
    2025-11-17
    recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com
    Roll recipe dependencies (trivial).
    2025-11-17 [email protected] [graphite] Fix typo in add_image_to_key
    2025-11-17
    recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com
    Roll recipe dependencies (trivial).
    
    If this roll has caused a breakage, revert this CL and stop the roller
    using the controls here:
    https://autoroll.skia.org/r/skia-flutter-autoroll
    Please CC
    [email protected],[email protected],[email protected] on the
    revert to ensure that a human
    is aware of the problem.
    
    To file a bug in Skia: https://bugs.chromium.org/p/skia/issues/entry
    To file a bug in Flutter:
    https://github.com/flutter/flutter/issues/new/choose
    
    To report a problem with the AutoRoller itself, please file a bug:
    https://issues.skia.org/issues/new?component=1389291&template=1850622
    
    Documentation for the AutoRoller is here:
    https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md
    engine-flutter-autoroll authored Nov 18, 2025
    Configuration menu
    Copy the full SHA
    7f85317 View commit details
    Browse the repository at this point in the history
  4. Fix deprecation warning in some API examples using RadioListTile (#17…

    …8635)
    
    - Fix #178633
    - This PR is to clean API examples, improve user experience when
    accessing API page
    
    ## Pre-launch Checklist
    
    - [x] I read the [Contributor Guide] and followed the process outlined
    there for submitting PRs.
    - [x] I read the [Tree Hygiene] wiki page, which explains my
    responsibilities.
    - [x] I read and followed the [Flutter Style Guide], including [Features
    we expect every widget to implement].
    - [x] I signed the [CLA].
    - [x] I listed at least one issue that this PR fixes in the description
    above.
    - [ ] I updated/added relevant documentation (doc comments with `///`).
    - [ ] I added new tests to check the change I am making, or this PR is
    [test-exempt].
    - [x] I followed the [breaking change policy] and added [Data Driven
    Fixes] where supported.
    - [x] All existing and new tests are passing.
    
    If you need help, consider asking for advice on the #hackers-new channel
    on [Discord].
    
    **Note**: The Flutter team is currently trialing the use of [Gemini Code
    Assist for
    GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code).
    Comments from the `gemini-code-assist` bot should not be taken as
    authoritative feedback from the Flutter team. If you find its comments
    useful you can update your code accordingly, but if you are unsure or
    disagree with the feedback, please feel free to wait for a Flutter team
    member's review for guidance on which automated comments should be
    addressed.
    
    <!-- Links -->
    [Contributor Guide]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
    [Tree Hygiene]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
    [test-exempt]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
    [Flutter Style Guide]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
    [Features we expect every widget to implement]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
    [CLA]: https://cla.developers.google.com/
    [flutter/tests]: https://github.com/flutter/tests
    [breaking change policy]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
    [Discord]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
    [Data Driven Fixes]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
    
    Signed-off-by: huycozy <[email protected]>
    huycozy authored Nov 18, 2025
    Configuration menu
    Copy the full SHA
    4940bf1 View commit details
    Browse the repository at this point in the history
  5. Add framework-side hitTestBehavior support for Semantics widget and a…

    …pply to ModalRoute (#177570)
    
    Fix premature dialog dismissal on Flutter Web when semantics are enabled
    by correctly propagating hitTestBehavior through the semantics pipeline
    and declaring modal routes as opaque to pointer events.
    
    Before change
    https://dialog-dismiss-before.web.app/
    
    Click on the "Show Dialog" button.
    Click anywhere inside the dialog that is not a form field.
    Observe the dialog being dismissed.
    
    After change
    https://dialog-dimiss-after.web.app/
    
    Click on the "Show Dialog" button.
    Click anywhere inside the dialog that is not a form field.
    Observe the dialog not dismissed.
    
    Fixes: #149001
    Engine work: #176974
    flutter-zl authored Nov 18, 2025
    Configuration menu
    Copy the full SHA
    1cc0f49 View commit details
    Browse the repository at this point in the history
  6. Refactor SnackBar behavior selection example to use RadioGroup (#17…

    …8618)
    
    <img width="951" height="141" alt="Screenshot 2025-11-16 at 22 02 12"
    src="https://github.com/user-attachments/assets/3aae6cfe-b5f4-41d9-a1f5-4a658894a007"
    />
    
    ## Pre-launch Checklist
    
    - [x] I read the [Contributor Guide] and followed the process outlined
    there for submitting PRs.
    - [x] I read the [Tree Hygiene] wiki page, which explains my
    responsibilities.
    - [x] I read and followed the [Flutter Style Guide], including [Features
    we expect every widget to implement].
    - [x] I signed the [CLA].
    - [ ] I listed at least one issue that this PR fixes in the description
    above.
    - [ ] I updated/added relevant documentation (doc comments with `///`).
    - [ ] I added new tests to check the change I am making, or this PR is
    [test-exempt].
    - [x] I followed the [breaking change policy] and added [Data Driven
    Fixes] where supported.
    - [x] All existing and new tests are passing.
    
    If you need help, consider asking for advice on the #hackers-new channel
    on [Discord].
    
    **Note**: The Flutter team is currently trialing the use of [Gemini Code
    Assist for
    GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code).
    Comments from the `gemini-code-assist` bot should not be taken as
    authoritative feedback from the Flutter team. If you find its comments
    useful you can update your code accordingly, but if you are unsure or
    disagree with the feedback, please feel free to wait for a Flutter team
    member's review for guidance on which automated comments should be
    addressed.
    
    <!-- Links -->
    [Contributor Guide]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
    [Tree Hygiene]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
    [test-exempt]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
    [Flutter Style Guide]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
    [Features we expect every widget to implement]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
    [CLA]: https://cla.developers.google.com/
    [flutter/tests]: https://github.com/flutter/tests
    [breaking change policy]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
    [Discord]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
    [Data Driven Fixes]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
    AbdeMohlbi authored Nov 18, 2025
    Configuration menu
    Copy the full SHA
    4df749a View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    bc3c4e4 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    2a1a95f View commit details
    Browse the repository at this point in the history
  9. Roll Skia from ec2f626cdcad to 614e71550fc3 (3 revisions) (#178708)

    engine-flutter-autoroll authored Nov 18, 2025
    Configuration menu
    Copy the full SHA
    eb593e4 View commit details
    Browse the repository at this point in the history
  10. Add missing flutter_lints dev dependencies (#178105)

    These are raised by the analyzer, following
    #173715
    guidezpl authored Nov 18, 2025
    Configuration menu
    Copy the full SHA
    8ccb48b View commit details
    Browse the repository at this point in the history
  11. Revert "[ Tool ] Don't delete .dart_tool/widget_preview_scaffold du…

    …ring `flutter clean` (#175664)" (#178672)
    
    This reverts commit e983e4b.
    bkonyi authored Nov 18, 2025
    Configuration menu
    Copy the full SHA
    731b367 View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    eeef182 View commit details
    Browse the repository at this point in the history
  13. Fix #160622: change containsWatchConpanion function to detect compani…

    …on watch apps defined by only the project info file. (#176832)
    
    (Please be generous for some typos and grammar error in sentences below.
    English is not my mother tongue)
    
    TRDR : This patch fixes flutter run(and might be flutter build too)
    failure on iOS flutter apps with companion watchOS app in case the
    WKCompanionAppBundleIdentifier value is defined by xcode project
    configuration and uses different app bundle id by scheme(which happens
    when you do something like com.myapp.app1.dev things for scheme bundle
    id)
    
    This change checks default scheme (the scheme with corresponding name
    for the debug/release mode and selected build flavor.) in the build
    settings check step of containsWatchCompanion function.
    
    
    current code of containsWatchCompanion function works like below
    
    1. check all default Info.plist file's content of all targets to
    determine if the project has watchOS companion apps.
    (this doesn't work well in mordern xcode settings when they use multi
    plist files which are selected on build time by build configuration.
    Sometimes, the default Info.plist file doesn't even exist in the
    project.)
    
    2. check if "WKCompanionAppBundleIdentifier" is included in the xcode
    project info file(the ios/Runner.xcodeproj/project.pbxproj file in case
    of iOS project generated by flutter)
    
    3. If "WKCompanionAppBundleIdentifier" has found in the project info
    file,
    check build configuration variables of every single scheme but the
    current target scheme if they have config value with key
    "INFOPLIST_KEY_WKCompanionAppBundleIdentifier" identical to current
    build configuration's bundle identifier returned by
    productBundleIdentifier@xcode_project.dart function.
    
    
    I believe The third step causes many problems reported in some issue and
    pr, saying iOS app with companion watchOS app fails on build or run.
    #160622
    #172436
    
    In my case, My iOS project had multiple schemes which are linked to
    different build configurations, but using single Runner setting per app.
    because we exclude current scheme for the check, we get all the
    INFOPLIST_KEY_WKCompanionAppBundleIdentifier values except the one which
    should be same with the identifier returned by
    productBundleIdentifier@xcode_project.dart function.
    that is because companion watch apps doesn't have to have same
    WKCompanionAppBundleIdentifier with other scheme's main app. We have to
    check the default scheme to see watchOS companion app`s
    WKCompanionAppBundleIdentifier, not other scheme. (other schemes can
    have slightly different or totally different bundle id. that was to
    support different environment systems like dev, prod in my case)
    as a result, flutter run gave me WatchOS app built for device target
    iOS/iPad, not Watch. which caused problem during installation of iOS app
    to a simulator because the embeded Watch App was in invalid format. I
    found this by inspecting Info.plist of generated watchOS app.
    
    below is part of the flutter run verbose log with failure caused by old
    code.
    [+1154 ms] An error was encountered processing the command
    (domain=IXUserPresentableErrorDomain, code=1):
    App installation failed: ‘Bora Debug-dev’을(를) 설치할 수 없음 (which says
    "cannot install" in korean)
               나중에 다시 시도하십시오. (which says "try again later" in korean)
    Found WatchKit 2.0 app at
    /Users/javalia/Library/Developer/CoreSimulator/Devices/071691B3-7901-47E5-9B38-4D5B799F3530/data/Library/Caches/com.apple.mobile.installd.staging/temp.8HZIEG/extracted/Payload/Runner.app/Watch/bora
    Watch App.app but it does not have a WKWatchKitApp or WKApplication key
    set to true in its Info.plist
    Underlying error (domain=IXUserPresentableErrorDomain, code=1):
    ‘Bora Debug-dev’을(를) 설치할 수 없음 (which says "cannot install" in korean)
               	나중에 다시 시도하십시오. (which says "try it later" in korean)
    
    
    I suggest this change with two reasons : 
    
    1. I think forcing watchOS app makers split their runner configurations
    to support watch companion app is something not recommendable/not good
    to force as a convention.
    (Which is implied in the comment which is removed by this pr, and could
    be one of the valid detouring.
    some people in this issue
    #160622 said that a detouring
    is adding of dummy WKCompanionAppBundleIdentifier configuration in iOS
    app, which should be in only watchOS apps in normal.)
    
    2. The function should work as it's name implies, so I guess it should
    not omit default scheme during check. Matching function's behavior with
    it's name will be likely to reduce potential errors caused by this
    change while fixing problems.
    
    ## Pre-launch Checklist
    
    - [ X ] I read the [Contributor Guide] and followed the process outlined
    there for submitting PRs.
    - [ X ] I read the [Tree Hygiene] wiki page, which explains my
    responsibilities.
    - [ X ] I read and followed the [Flutter Style Guide], including
    [Features we expect every widget to implement].
    - [ X ] I signed the [CLA].
    - [ X ] I listed at least one issue that this PR fixes in the
    description above.
    - [ ] I updated/added relevant documentation (doc comments with `///`).
    - [ ] I added new tests to check the change I am making, or this PR is
    [test-exempt].
    - [ ] I followed the [breaking change policy] and added [Data Driven
    Fixes] where supported.
    - [ ] All existing and new tests are passing.
    
    If you need help, consider asking for advice on the #hackers-new channel
    on [Discord].
    
    **Note**: The Flutter team is currently trialing the use of [Gemini Code
    Assist for
    GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code).
    Comments from the `gemini-code-assist` bot should not be taken as
    authoritative feedback from the Flutter team. If you find its comments
    useful you can update your code accordingly, but if you are unsure or
    disagree with the feedback, please feel free to wait for a Flutter team
    member's review for guidance on which automated comments should be
    addressed.
    
    <!-- Links -->
    [Contributor Guide]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
    [Tree Hygiene]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
    [test-exempt]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
    [Flutter Style Guide]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
    [Features we expect every widget to implement]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
    [CLA]: https://cla.developers.google.com/
    [flutter/tests]: https://github.com/flutter/tests
    [breaking change policy]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
    [Discord]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
    [Data Driven Fixes]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
    
    ---------
    
    Co-authored-by: hellohuanlin <[email protected]>
    garrettjavalia and hellohuanlin authored Nov 18, 2025
    Configuration menu
    Copy the full SHA
    3a28b6e View commit details
    Browse the repository at this point in the history
  14. Enable UIScene Migration and update create templates (#178700)

    Reland #178328.
    
    ## Pre-launch Checklist
    
    - [x] I read the [Contributor Guide] and followed the process outlined
    there for submitting PRs.
    - [x] I read the [Tree Hygiene] wiki page, which explains my
    responsibilities.
    - [x] I read and followed the [Flutter Style Guide], including [Features
    we expect every widget to implement].
    - [x] I signed the [CLA].
    - [x] I listed at least one issue that this PR fixes in the description
    above.
    - [x] I updated/added relevant documentation (doc comments with `///`).
    - [x] I added new tests to check the change I am making, or this PR is
    [test-exempt].
    - [x] I followed the [breaking change policy] and added [Data Driven
    Fixes] where supported.
    - [x] All existing and new tests are passing.
    
    If you need help, consider asking for advice on the #hackers-new channel
    on [Discord].
    
    **Note**: The Flutter team is currently trialing the use of [Gemini Code
    Assist for
    GitHub](https://developers.google.com/gemini-code-assist/docs/review-github-code).
    Comments from the `gemini-code-assist` bot should not be taken as
    authoritative feedback from the Flutter team. If you find its comments
    useful you can update your code accordingly, but if you are unsure or
    disagree with the feedback, please feel free to wait for a Flutter team
    member's review for guidance on which automated comments should be
    addressed.
    
    <!-- Links -->
    [Contributor Guide]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#overview
    [Tree Hygiene]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md
    [test-exempt]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#tests
    [Flutter Style Guide]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md
    [Features we expect every widget to implement]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Style-guide-for-Flutter-repo.md#features-we-expect-every-widget-to-implement
    [CLA]: https://cla.developers.google.com/
    [flutter/tests]: https://github.com/flutter/tests
    [breaking change policy]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Tree-hygiene.md#handling-breaking-changes
    [Discord]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Chat.md
    [Data Driven Fixes]:
    https://github.com/flutter/flutter/blob/main/docs/contributing/Data-driven-Fixes.md
    vashworth authored Nov 18, 2025
    Configuration menu
    Copy the full SHA
    cb7b7df View commit details
    Browse the repository at this point in the history
Loading