Repository navigation
Comparing changes
Open a pull request
base repository: flutter/packages
base: 0b72e92bf5dd
head repository: flutter/packages
compare: 3742a4eecd6b
- 12 commits
- 103 files changed
- 9 contributors
Commits on Oct 29, 2026
-
[vector_graphics_compiler] Fix em units in text positions (#13388)
Text `x`, `y`, `dx` and `dy` values in `em` were treated as pixels. For example, `dy=".35em"` with `font-size="425px"` moved the text down by 0.35 pixels instead of about 149, so text centered this way was drawn too high. `DoubleOrPercentage.fromString` stripped the unit with `parseDouble`, so an `em` value ended up the same as a plain number. Now it remembers that the value is in `em`, and `computeTextPosition` multiplies it by the element's font size, including one inherited from a parent. Without a font size it uses `kDefaultFontSize` (16), the same default `computeTextConfig` uses when drawing the text. The bug is in `vector_graphics_compiler`, which `flutter_svg` uses to parse SVGs. Fixes flutter/flutter#158758 ## Pre-Review Checklist **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. [^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling.
Configuration menu - View commit details
-
Copy full SHA for 10f15b3 - Browse repository at this point
Copy the full SHA 10f15b3View commit details -
Sync release-cupertino_ui-1.1.5 to main (#13481)
This automated PR syncs the changes from the release branch release-cupertino_ui-1.1.5 back to the main branch.
Configuration menu - View commit details
-
Copy full SHA for 1c01533 - Browse repository at this point
Copy the full SHA 1c01533View commit details -
Sync release-go_router-18.1.2 to main (#13480)
This automated PR syncs the changes from the release branch release-go_router-18.1.2 back to the main branch.
Configuration menu - View commit details
-
Copy full SHA for c99c1e1 - Browse repository at this point
Copy the full SHA c99c1e1View commit details -
[camera_android_x] implement CameraX RecordingStats and VideoRecordEv…
…ent APIs (#13330) Fixes flutter/flutter#148138 ## Pre-Review Checklist **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. [^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling.
Configuration menu - View commit details
-
Copy full SHA for faab724 - Browse repository at this point
Copy the full SHA faab724View commit details -
[vector_graphics] Dispose pictures decoded after their VectorGraphic …
…is removed (#13435) If a `VectorGraphic` was removed while its picture was still loading, the picture was never disposed, so it leaked. The fix caches the picture first, and lets a removed widget release it a moment later. That way, if another widget is waiting on the same load, it can still pick it up, and the picture only gets disposed when nobody is using it. I didn't use the fix suggested in the issue because it disposes the picture too early when two widgets share a load, and the remaining one ends up drawing a disposed picture. There's a test for that case too. Fixes flutter/flutter#190185 ## Pre-Review Checklist **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. [^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling.
Configuration menu - View commit details
-
Copy full SHA for ccbe75f - Browse repository at this point
Copy the full SHA ccbe75fView commit details -
[material_ui] Unskip web tests that pass on CanvasKit and Skwasm: tim…
…e_picker_test (#13471) Removes the `@TestOn('!chrome')` annotation from `packages/material_ui/test/time_picker_test.dart` so that its tests run on the web. All 190 tests in the file now pass on Chrome under both CI web renderers (CanvasKit with dart2js and Skwasm with dart2wasm). The time picker state restoration group still does not work on the web, so it is now skipped individually with `skip: kIsWeb` instead of skipping the whole file. Part of flutter/flutter#33615 (the state restoration group remains skipped on web pending that issue). This is a test-only change, so it is exempt from version and CHANGELOG updates. ## Pre-Review Checklist **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. [^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling.
Configuration menu - View commit details
-
Copy full SHA for 8615faf - Browse repository at this point
Copy the full SHA 8615fafView commit details -
Sync release-material_ui-1.9.0 to main (#13479)
This automated PR syncs the changes from the release branch release-material_ui-1.9.0 back to the main branch.
Configuration menu - View commit details
-
Copy full SHA for fb19211 - Browse repository at this point
Copy the full SHA fb19211View commit details -
[image_picker_ios] PR 4/5 Migrate the view provider, PHPicker save op…
…eration, and image utilities to Swift (#13394) Migrates the Objective-C helpers that `ImagePickerPlugin` calls into the Swift target: * `FIPViewProvider` becomes `ViewProvider` / `DefaultViewProvider`. * `FLTPHPickerSaveImageToPathOperation` becomes `PHPickerSaveImageToPathOperation`. * `FLTImagePickerImageUtil`, `FLTImagePickerMetaDataUtil`, and `FLTImagePickerPhotoAssetUtil` become `ImagePickerImageUtil`, `ImagePickerMetaDataUtil`, and `ImagePickerPhotoAssetUtil`. * The `PHImageManager` seam becomes `ImageDataRequesting`. * `PHPickerResult` conforms to `PickerItem`, replacing the `BridgedPickerItem` wrapper. Deletes the custom module map and `image_picker_ios.h` umbrella header. The `image_picker_ios_objc` target remains for the Pigeon messages until the next PR. CocoaPods no longer sets `s.module_map`. Bumps image_picker_ios to **0.8.13+14**. PR 4/5 of the Obj-C → Swift migration, stacked on #13235. Part of flutter/flutter#119107 ## Pre-Review Checklist **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. [^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling.
Configuration menu - View commit details
-
Copy full SHA for 09e67ff - Browse repository at this point
Copy the full SHA 09e67ffView commit details -
[pigeon] Separate native interop Dart bindings into a conditionally i…
…mported companion file (#13393) Separates generated Dart native interop code (`dart:ffi`, `dart:io`, `package:jni`, `package:ffi`, `package:objective_c`, and `.ffi.dart`/`.jni.dart` bindings) into a companion `*.native_interop.g.dart` file that is conditionally imported (`if (dart.library.ffi)`) by the main `*.g.dart` file. This allows the main generated `*.g.dart` file (data classes, enums, codecs, and method-channel APIs) to be imported on Web without failing `dart2js` / `dart2wasm` compilation due to transitive `dart:ffi` / `dart:io` imports (preventing the issue worked around in #13380). ## Pre-Review Checklist **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. [^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling.
Configuration menu - View commit details
-
Copy full SHA for 3258d45 - Browse repository at this point
Copy the full SHA 3258d45View commit details
Commits on Oct 30, 2026
-
manual roll and manual build and copy (#13495)
removes deprecated method and bumps ci flutter master version. Unblocks roller
Configuration menu - View commit details
-
Copy full SHA for b9975c9 - Browse repository at this point
Copy the full SHA b9975c9View commit details -
[material_ui] Fix Escape key not closing MenuAnchor opened by tap or …
…click (#13430) Fixes an issue where pressing the `Escape` key does not close a `MenuAnchor` menu that was opened by a tap or click when `childFocusNode` is not provided. ### Root Cause 1. When a `MenuAnchor` is opened via a tap or click (e.g. from a `TextButton` or `IconButton`) without a `childFocusNode`, the button does not request focus on tap and `RawMenuAnchorState.open` only requests focus on `widget.childFocusNode`. As a result, `FocusManager.instance.primaryFocus` remains outside both `RawMenuAnchor` and `_Submenu`, so key events never route through their `Shortcuts` or `Actions` widgets. 2. In `_Submenu.build`, `FocusScope(node: anchor._menuScopeNode)` was placed above `Actions` and `Shortcuts`, so even when `_menuScopeNode` itself had primary focus, key events walked up past `FocusScope` without passing through `_Submenu`'s `Shortcuts` and `Actions`. ### Fix 1. Wrap `FocusScope(node: anchor._menuScopeNode)` inside `Actions` and `Shortcuts` in `_Submenu.build` so key events dispatched to `_menuScopeNode` walk up through `_kMenuTraversalShortcuts` and `DismissMenuAction`. 2. In `_MenuAnchorState._handleMenuOpenRequest`, when a root menu opens without a `childFocusNode` and focus is not already inside the `MenuAnchor` subtree, move focus to `_menuScopeNode` via `FocusScope.of(context).setFirstFocus(_menuScopeNode)` (and detach `_menuScopeNode` cleanly if closed/disposed before `FocusScope` mounts). Fixes flutter/flutter#195059 ## Pre-Review Checklist **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. [^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling.
Configuration menu - View commit details
-
Copy full SHA for e830a53 - Browse repository at this point
Copy the full SHA e830a53View commit details -
[pigeon] Allow event channel unregistration (#13438)
Adds a new class for each event channel API that wraps the underlying EventChannel and allows setting the stream handler, matching the underlying Flutter API. This allows clients that need to set a new handler later (notably, removing a handler to avoid an engine-lifetime reference to a handler for a transient channel) to do so, using the same API that non-Pigeon event channel code would use. The existing static `register` method is kept to avoid unnecessary breaking changes, but clients no longer need to use it if they want to create the channel directly. Fixes flutter/flutter#195049 ## Pre-Review Checklist [^1]: Regular contributors who have demonstrated familiarity with the repository guidelines only need to comment if the PR is not auto-exempted by repo tooling.
Configuration menu - View commit details
-
Copy full SHA for 3742a4e - Browse repository at this point
Copy the full SHA 3742a4eView commit details
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff 0b72e92bf5dd...3742a4eecd6b