text:
No possibility to test behavior with different modules?

Sometimes flow works different in the following cases:

code in one file
code in different files

But it seems that we can't write tests right now that can check the second case.
I tried to fix react-redux libdefs. I need to declare a connected React component in one file and check its usage in another to reproduce a bug. I tried to create TestComponent.js file near test_connect.js, but checker says that I need to use name for file that starts with test_. But when I renamed a file to test_component.js, I got an error
* react-redux_v5.x.x/flow_v0.54.x- (flow-v0.55.0): Unexpected Flow errors(2):
   Error: 2-test_connect.js:4
     4: import CC3 from './test_CC3';
                        ^^^^^^^^^^^^ ./test_CC3. Required module not found

Can we handle the situation somehow?
Can I help?

+1 on this.
@GAntoine do you have a strong opinion on how this should be implemented?

remove name mangling of test files (may need to rename some files to ensure unique test names across a library):
add support for test_foo as directory (and maintain structure inside it without name mangling)
add support for setup_foo.js as setup files (will need to be unique name within a library)

I think 1 is simplest to implement and maintains current folder structure clear. Would add a clear error message if there are basename clashes.
Also cc @villesau since you are working on https://github.com/flowtype/flow-typed/pull/1731

Is there a known benefit to why we mangle the filenames now? It seems like that's separate from actually finding the test files, so without more information it seems like removing the mangling is the best thing to do.

Agreed, seems reasonable to me (lacking much context here though). @LoganBarnett and I ran into a similar bug with Ramda, so it's definitely the case that many libraries would benefit from support here.
I'm concerned about cluttering the main testing directories, though, and like the idea of having a test_files folder for extra files related to tests. As it is right now, it's super clear where the defs and tests live, and it'll get muddled with extra helper files.

I don't see why there should be any difference wether the code lives in the same file or imported from another, especially if the code is well typed. Instead of writing workaround here, what about opening a bug report in Flow? Though, if it would be an easy fix, it would probably already been fixed (which on the other hand doesn't make it any less of a bug).

@villesau based on @cprodescu's post earlier (see item 1), it looks like this is a workaround in flow-typed that we're asking be removed.
The general gist of the bug is when writing code like this test:
import { type A } from 'a'
import b from 'b'

// returns an A
const a: A = b.getA()

But the import on the first line fails in flow-typed because of how names get mangled. Ordinarily code like this works just fine in flow land, so I don't think opening a bug there will address this, if that makes sense.

I agree with both of you :)
@villesau I agree ideally flow should have the same behavior in-module vs across modules, opening a ticket on this makes sense (would also remove the need for %checks, etc).
In the mean-time, I believe it is not unreasonable for flow-typed to support multi-file tests, as @LoganBarnett suggests. One note, the name mangling workaround was introduced in flow-typed to support multi-level tests with clashing names (foo-lib/test.js and foo-lib/flow-0.23.x/test.js).
About my proposal, I'm suggesting 1 since it's the simplest thing from the limited context I have. @GAntoine and @AndrewSouthpaw definitely have more context.

@LoganBarnett That makes perfect sense! Though, like the original post states, there is difference wether the code lives in same file or not. So basically your code example might behave differently if module a and b would live in the file you are using them, apparently Flow looses some type information. I've experienced this too while writing react-redux types and trying them out in larger codebase.

@cprodescu @villesau ah - I'm probably confused about something then. In this case it looks like we're trying to include support files as a means of reuse, and that doesn't work because of the name mangling. I'm personally tracking some tickets that involve how information can be lost across the file barrier, so I totally get that it's is a problem in Flow. Where I am confused about is how any of these file-barrier issues exist in our use case here. The context I've been working with here is that we're trying to include local files and flow-typed's require/import mechanism is mangling those names as it happens, which breaks the import. Is there more going on here?
Thanks for assisting with clarity for me here!
@cprodescu Avoiding name collisions seems like a legit concern, but I think I'd rather see us version our files (./some-component_v0.33.x.js) and we just import that file by its full name. If we're feeling brave we can name the file without any kind of version information assuming it will work across all versions, and split it apart when the need arises. It sounds like everyone on the thread is in agreement with that (or at least ditching the mangling), so I'm just being verbose as to how we'd address the original concern of the mangling, I think.

Thank you @AndrewSouthpaw!

Sure thing! We'll see how it goes, there's still a chance we'll need to revisit it some day, but hopefully this is a decent strategy to move us forward. Thanks for opening the issue.

authors: AndrewSouthpaw LoganBarnett apsavin cprodescu villesau

repo: flowtype/flow-typed


text:
fix moment.parseZone()

According to https://momentjs.com/docs/#/parsing/parse-zone/, parseZone may now accept up to four arguments.
Additionally, I think someone failed to mark parseZone() static.

Actually wait, I think I need to make this for 2.3.0+

source: gharchive/pull-request

license: mit

license_type: permissive

license_source: bigquery


text:
Research PR-issue automation for CLI

Use GitHub Actions (use what's in the marketplace) to automate the following:

[ ] when a PR is opened, author should be assigned automatically
[ ] when a PR changes a package (e.g. plugin-eslint), the corresponding label should be assigned
[ ] when a PR is linked to an issue, issue status should change to "In review"
[ ] when a PR is linked to an issue, all of the issue's labels should be added to the PR
[ ] when a PR is not linked to an issue, it should be added to Project board with "In review" status
[ ] when a PR title is created or changed, it should be checked with Commitlint
[ ] when a PR cannot be merged because of conflicts, a "has conflicts" label should be added (and removed once conflicts are resolved)

We will do the simple ones and the others that needs more refinement will be separated to another issue.

There is a problem with the "has conflicts" label. The default pull_request workflow trigger does not work when PR has conflicts. It can do pull_request_target, but this trigger has some security notes.
The problem is more complex. We may need to prioritize this option in a separate issue.

Some thoughts about linked issues:

PR can have more than one linked issue
linked issues can be accessed with GraphQL API. But if I understand right, there will be ALL linked issues.
linked issues can be accessed with PR body parsing. We can find keywords like closes and assume it is the linked issue.

@vmasek lets close it

source: gharchive/issue

authors: BioPhoton IKatsuba kristihoskova matejchalk

repo: flowup/quality-metrics-cli

license: MIT

license_source: github-api


text:
Plugin prevents deployments

I have also raised this issue on the below plugin too, the same behaviour occurs when using this plugin instead of serverless-plugin-typescript
https://github.com/serverless/serverless-plugin-typescript/issues/262#issue-1102064858

Hey @Oldbury is this still an issue?

authors: Oldbury samchungy

repo: floydspace/serverless-esbuild


text:
ci deb: tweak downgrade test case

After removing fluent-package and td-agent,
fluentd.service file is linked to nonexistent file (masked), but td-agent service is still active unexpectedly, so explicitly stop that service.

Thanks! Should we merge this into the master, and backport it to the v5 branch?

authors: daipom kenhys

repo: fluent/fluent-package-builder


text:
Documentation error in in_tail

If you use tsv or csv format, please also specify the keys parameter.

format tsv
keys key1, key2, key3
time_key key2

In this case, we get something like this {"key1": null, " key2": null, " key3": null}
But if we define keys with no spaces after comma will get the correct keys.
link to documentation

Thanks for pointing this out! Just updated.
BTW, if you found the documentation error, please file a bug in fluentd-docs repository.
https://github.com/fluent/fluentd-docs

authors: dsociative repeatedly

repo: fluent/fluentd


text:
Use driver for RegexpParser tests

Which issue(s) this PR fixes:
( https://github.com/fluent/fluentd/pull/4066#discussion_r1118388855 )
What this PR does / why we need it:
I didn't know why it was commented out, but it looked good on Fluent::Test::Driver::Parser.new(...).
https://github.com/fluent/fluentd/pull/1286
Docs Changes:
None
Release Note:
None

Thanks!

Thanks for the merge!

authors: abetomo ashie


text:
center the images and add gap in footer

fixed #116 , fixed #105 ,

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

@mugymb, did you try signing the CLA?

@jobara, You can close this PR. The author deleted his account.

Can be closed

authors: CLAassistant ghost sachin10101998


text:
feat(build): #614 nicer names

Make positional arguments part of the job name

repo: fluidattacks/makes


text:
Automatically use best mirror

Something like:
curl -sk https://apache.org/mirrors.cgi?as_json | jq -r '.preferred'

This works too:
curl -sk https://apache.org/mirrors.cgi?as_json | grep preferred | cut -d \" -f 4

authors: ctubbsii mikewalch

repo: fluo-io/fluo-dev


text:
Add a cli?

Would it be cool to have a Cli?
npm install deckdeckgo-cli
deckdeckgo init my-presentation

or something à la stencil?
goal -> with the help of a cli the user could be prompted to enter projects' name, description etc. and these information could be use to create the meta tags, manifest file etc. per default

There is now a cli https://github.com/fluster/create-deckdeckgo
npm init deckdeckgo

repo: fluster/deckdeckgo-starter


text:
How do you format a formslider to have accompanying text?

As the title states I have a formslider which which can select values from 1-60 in divisions of 10.
These are minutes, how can I show "10 mins" as the text at the bottom instead of just "10"?

With formslider is FormBuilderSlider field?
I think that need implement this feature, like on FormBuilderRangeSlider.
If you can, please create a pull request with this changes, I will really appreciate. Thanks


text:
FormBuilderSearchableDropdown height is not adjusting as per suggestions content

FormBuilderSearchableDropdown - Suggestions dropdown height is fixed and height is not shrinking even if I get only one or two suggestion items as a result after the search.
But in FormBuilderTypeAhead list height is shrinking automatically based on the results.

FormBuilderSearchableDropdown
FormBuilderTypeAhead

This is a config of external dependency. We need implement this config in field code to fit options.
Related: https://github.com/salim-lachdhaf/searchable_dropdown/issues/446

You need config the popupProps like this: popupProps: const PopupProps.menu(fit: FlexFit.loose)
Related issue: https://github.com/salim-lachdhaf/searchable_dropdown/issues/446

authors: deandreamatias iamrohitsuthar


text:
[Fonts] Icon request: edit_calendar

io.material

Hi @Pooja289318, Thanks for filing the issue. The requested icon is already present in the latest stable release of flutter.

Flutter 2.10.3 • channel stable • https://github.com/flutter/flutter.git
Framework • revision 7e9793dee1 (3 weeks ago) • 2022-03-02 11:23:12 -0600
Engine • revision bd539267b4
Tools • Dart 2.16.1 • DevTools 2.9.2

Closing, as the icon is already present. In case you disagree feel free to write in the comments and we will reopen it.
Thank you.

repo: flutter/flutter


text:
Flutter web debug stops on breakpoints but in another source file on Visual Studio Code

I'm using flutter web on Visual Studio Code for a long time without problems. I've updated to the last Flutter release (2.10.4) and all continues well during some days but, suddenly, the breakpoints stops in other parts of code.
I've created a new project and put a breakpoint on main.dart, on runApp(MyApp()):
void main() {
  runApp(MyApp());
}

When the program starts, on VSC the breakpoint is stopped on the file web_entrypoint.dart (not in main.dart), on the first line. On Chrome, is correct, the source shown is main.dart and stopped on the breakpoint.
I've downgraded Flutter, uninstalled Flutter and Visual Studio Code, but continues with the same problem.
Flutter doctor indicates that everything is correct:
✓] Flutter (Channel stable, 2.10.4, on KDE neon User - 5.24 5.13.0-39-generic, locale es_ES.UTF-8)
    • Flutter version 2.10.4 at /home/indulgeme-dev/snap/flutter/common/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision c860cba910 (hace 7 días), 2022-03-25 00:23:12 -0500
    • Engine revision 57d3bac3dd
    • Dart version 2.16.2
    • DevTools version 2.9.2

[✓] Android toolchain - develop for Android devices (Android SDK version 31.0.0)
    • Android SDK at /opt/android-sdk
    • Platform android-31, build-tools 31.0.0
    • Java binary at: /opt/android-studio-2021.1.1/android-studio/jre/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.11+0-b60-7590822)
    • All Android licenses accepted.

[✓] Chrome - develop for the web
    • Chrome at google-chrome

[✓] Android Studio (version 2021.1)
    • Android Studio at /opt/android-studio-2021.1.1/android-studio
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.11+0-b60-7590822)

[✓] Android Studio
    • Android Studio at /opt/android-studio
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.11+0-b60-7590822)

[✓] VS Code (version 1.65.2)
    • VS Code at /usr/share/code
    • Flutter extension version 3.36.0

[✓] Connected device (2 available)
    • Moto G 5 Plus (mobile) • ZY2247BMKF • android-arm    • Android 8.1.0 (API 27)
    • Chrome (web)           • chrome     • web-javascript • Google Chrome 100.0.4896.60

[✓] HTTP Host Availability
    • All required HTTP hosts are available

Hi @dumabg, Thanks for filing the issue. I am able to reproduce the issue on stable and the master channel on macOS, While it works fine on Ubuntu and execution stops at the breakpoint.
macOS

Ubuntu

flutter doctor -v (mac)
[✓] Flutter (Channel stable, 2.10.4, on macOS 12.3 21E230 darwin-arm, locale en-GB)
    • Flutter version 2.10.4 at /Users/mahesh/Documents/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision c860cba910 (3 days ago), 2022-03-25 00:23:12 -0500
    • Engine revision 57d3bac3dd
    • Dart version 2.16.2
    • DevTools version 2.9.2

[✓] Android toolchain - develop for Android devices (Android SDK version 31.0.0)
    • Android SDK at /Users/mahesh/Library/Android/sdk
    • Platform android-31, build-tools 31.0.0
    • ANDROID_HOME = /Users/mahesh/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.8+10-b944.6916264)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 13.2.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • CocoaPods version 1.10.2

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 4.2)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.8+10-b944.6916264)

[✓] IntelliJ IDEA Community Edition (version 2021.2.1)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • Flutter plugin version 61.2.4
    • Dart plugin version 212.5080.8

[✓] VS Code (version 1.65.2)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.37.20220301

[✓] Connected device (4 available)
    • Redmi K20 Pro (mobile) • 192.168.1.2:55555                    • android-arm64  • Android 11 (API 30)
    • iPhone 12 Pro (mobile) • 535317A4-921C-488F-B234-C2CC6D4AE5A1 • ios            •
      com.apple.CoreSimulator.SimRuntime.iOS-14-5 (simulator)
    • macOS (desktop)        • macos                                • darwin-arm64   • macOS 12.3 21E230 darwin-arm
    • Chrome (web)           • chrome                               • web-javascript • Google Chrome 99.0.4844.83

[✓] HTTP Host Availability
    • All required HTTP hosts are available

• No issues found!

[✓] Flutter (Channel master, 2.13.0-0.0.pre.277, on macOS 12.3 21E230 darwin-arm, locale en-GB)
    • Flutter version 2.13.0-0.0.pre.277 at /Users/mahesh/Documents/flutter_master
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 13d2381109 (6 hours ago), 2022-03-27 21:00:08 -0400
    • Engine revision 559e259c54
    • Dart version 2.17.0 (build 2.17.0-246.0.dev)
    • DevTools version 2.11.4

[✓] Android toolchain - develop for Android devices (Android SDK version 31.0.0)
    • Android SDK at /Users/mahesh/Library/Android/sdk
    • Platform android-31, build-tools 31.0.0
    • ANDROID_HOME = /Users/mahesh/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.8+10-b944.6916264)
    • All Android licenses accepted.

[!] Xcode - develop for iOS and macOS (Xcode 13.2.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    ! CocoaPods 1.10.2 out of date (1.11.0 is recommended).
        CocoaPods is used to retrieve the iOS and macOS platform side's plugin code that responds to your plugin
        usage on the Dart side.
        Without CocoaPods, plugins will not work on iOS or macOS.
        For more info, see https://flutter.dev/platform-plugins
      To upgrade see https://guides.cocoapods.org/using/getting-started.html#installation for instructions.

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 4.2)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.8+10-b944.6916264)

[✓] IntelliJ IDEA Community Edition (version 2021.2.1)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • Flutter plugin version 61.2.4
    • Dart plugin version 212.5080.8

[✓] VS Code (version 1.65.2)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.37.20220301

[✓] Connected device (4 available)
    • Redmi K20 Pro (mobile) • 192.168.1.2:55555                    • android-arm64  • Android 11 (API 30)
    • iPhone 12 Pro (mobile) • 535317A4-921C-488F-B234-C2CC6D4AE5A1 • ios            •
      com.apple.CoreSimulator.SimRuntime.iOS-14-5 (simulator)
    • macOS (desktop)        • macos                                • darwin-arm64   • macOS 12.3 21E230 darwin-arm
    • Chrome (web)           • chrome                               • web-javascript • Google Chrome 99.0.4844.83

[✓] HTTP Host Availability
    • All required HTTP hosts are available

! Doctor found issues in 1 category.

I'm on Debian and having similar problems.

Is it only on Chrome 100? earlier?  other browsers?

I ask because I see this too but just after upgrading to chrome 100 and I may have seen post somewhere else in which  someone mentioned it specifically in Chrome 100.

I have Chrome 100.0.4896.60 (Build oficial) (64 bits)

I'm having the same problem on Ubuntu -  with IntelliJ 2021.3.3 Build #IU-213.7172.25, Dart plugin 213.7306, Flutter plugin 66.0.3, Chrome Version 100.0.4896.60 (Official Build) (64-bit)
flutter doctor -v
[✓] Flutter (Channel stable, 2.10.4, on Ubuntu 21.10 5.13.0-39-generic, locale en_US.UTF-8)
    • Flutter version 2.10.4 at /home/dsyrstad/Flutter/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision c860cba910 (11 days ago), 2022-03-25 00:23:12 -0500
    • Engine revision 57d3bac3dd
    • Dart version 2.16.2
    • DevTools version 2.9.2

[✓] Android toolchain - develop for Android devices (Android SDK version 31.0.0)
    • Android SDK at /home/dsyrstad/Android/Sdk
    • Platform android-31, build-tools 31.0.0
    • ANDROID_SDK_ROOT = /home/dsyrstad/Android/Sdk
    • Java binary at: /home/dsyrstad/AndroidStudio/android-studio/jre/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b3-6222593)
    • All Android licenses accepted.

[✓] Chrome - develop for the web
    • Chrome at google-chrome

[✓] Linux toolchain - develop for Linux desktop
    • Ubuntu clang version 13.0.0-2
    • cmake version 3.18.4
    • ninja version 1.10.1
    • pkg-config version 0.29.2

[✓] IntelliJ IDEA Ultimate Edition (version 2021.3)  <---- NOT CORRECT
    • IntelliJ at /home/dsyrstad/IntelliJ/idea-IU-202.6397.94 <---- NOT CORRECT
    • Flutter plugin version 66.0.3
    • Dart plugin version 213.7306

[✓] VS Code
    • VS Code at /snap/code/current
    • Flutter extension version 3.29.0

[✓] Connected device (2 available)
    • Linux (desktop) • linux  • linux-x64      • Ubuntu 21.10 5.13.0-39-generic
    • Chrome (web)    • chrome • web-javascript • Google Chrome 100.0.4896.60

[✓] HTTP Host Availability
    • All required HTTP hosts are available

• No issues found!

Seems like several people encountered this issue with chrome update, investigating.

Confirmed. I've downgraded to the same version (v99.0.4844.51) and it works. It's a Chrome problem.

It sounds like this is a confluence of two issues, one of which is https://github.com/dart-lang/webdev/issues/1557

Yes, I believe there are two issues here. Both affect Flutter Web users when they are debugging with breakpoints:
1. https://github.com/dart-lang/webdev/issues/1557

DESCRIPTION: No stack trace / variable information is shown when a user hits a breakpoint. This is only affecting users on Chrome v. 100 or later, and is due to a change that Chrome introduced. @annagrin has a fix: https://github.com/dart-lang/webdev/pull/1559

2. https://github.com/flutter/flutter/issues/101388

DESCRIPTION: A user can hit a breakpoint, and inspect the call stack, but the breakpoint is in the wrong location. This is affecting users on earlier versions of Chrome (I can reproduce on v.99.0.4844.84).

duplicate of https://github.com/flutter/flutter/issues/101224

Closing this as duplicate of linked issue. Please follow-up in it for further updates.

authors: Cory-FanDemand annagrin christopherfujino corymalcolmtaylor darshankawar dsyrstad dumabg elliette maheshmnj sgehrman


text:
[tool_crash] _CastError: (%230      describeLocale (package:flutter_tools/src/localizations/localizations_utils.dart:219:49))

%23%23 Command
flutter run

%23%23 Steps to Reproduce

...
...
...

%23%23 Logs
_CastError: (%230      describeLocale (package:flutter_tools/src/localizations/localizations_utils.dart:219:49))
%230      describeLocale (package:flutter_tools/src/localizations/localizations_utils.dart:219:49)
%231      LocalizationsGenerator._generateBaseClassFile (package:flutter_tools/src/localizations/gen_l10n.dart:1137:34)
%232      LocalizationsGenerator._generateCode (package:flutter_tools/src/localizations/gen_l10n.dart:1238:46)
%233      LocalizationsGenerator.writeOutputFiles (package:flutter_tools/src/localizations/gen_l10n.dart:1313:47)
%234      generateLocalizations (package:flutter_tools/src/localizations/gen_l10n.dart:69:9)
%235      GenerateLocalizationsTarget.build (package:flutter_tools/src/build_system/targets/localizations.dart:56:5)
%236      _BuildInstance._invokeInternal (package:flutter_tools/src/build_system/build_system.dart:839:27)
<asynchronous suspension>
%237      FlutterBuildSystem.build (package:flutter_tools/src/build_system/build_system.dart:606:16)
<asynchronous suspension>
%238      generateLocalizationsSyntheticPackage (package:flutter_tools/src/dart/generate_synthetic_packages.dart:58:30)
<asynchronous suspension>
%239      FlutterCommand.verifyThenRunCommand (package:flutter_tools/src/runner/flutter_command.dart:1296:7)
<asynchronous suspension>
%2310     FlutterCommand.run.<anonymous closure> (package:flutter_tools/src/runner/flutter_command.dart:1161:27)
<asynchronous suspension>
%2311     AppContext.run.<anonymous closure> (package:flutter_tools/src/base/context.dart:150:19)
<asynchronous suspension>
%2312     CommandRunner.runCommand (package:args/command_runner.dart:209:13)
<asynchronous suspension>
%2313     FlutterCommandRunner.runCommand.<anonymous closure> (package:flutter_tools/src/runner/flutter_command_runner.dart:281:9)
<asynchronous suspension>
%2314     AppContext.run.<anonymous closure> (package:flutter_tools/src/base/context.dart:150:19)
<asynchronous suspension>
%2315     FlutterCommandRunner.runCommand (package:flutter_tools/src/runner/flutter_command_runner.dart:229:5)

[✓] Flutter (Channel stable, 2.10.4, on macOS 12.3.1 21E258 darwin-x64, locale zh-Hans)
    • Flutter version 2.10.4 at /Users/yiper/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision c860cba910 (4 weeks ago), 2022-03-25 00:23:12 -0500
    • Engine revision 57d3bac3dd
    • Dart version 2.16.2
    • DevTools version 2.9.2
    • Pub download mirror https://pub.flutter-io.cn
    • Flutter download mirror https://storage.flutter-io.cn

[!] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
    • Android SDK at /Users/yiper/Library/Android/sdk
    ✗ cmdline-tools component is missing
      Run `path/to/sdkmanager --install "cmdline-tools

Closing as duplicate of #87851.
Thank you


text:
[web][CanvasKit][golden] add golden test for pixelated images on web-canvasKit

Description
pixelated images on web-canvasKit bug keeps coming back to stable release;
please add a test/golden-test to prevent the issue to re-emerge
Expected results:
when a PR causes aforementioned bug to re-emerge a test fails and prevents it to be merged
(let alone reach "stable")
Actual results:
the bug keeps coming back
Comments:
please note the comments below

https://github.com/flutter/flutter/issues/115529#issuecomment-1318401681

this problem keeps coming back (or never really went away), maybe needs some attention!
[...]

Images are not sharp on desktop apps on external monitor #113366
Images Pixelate Using canvaskit on Some Monitors #89605
[web] [CanvasKit] Images gets pixelated when scaling down #80520
Transform.rotate Degrades Image Quality #79662
[web] Images pixelated on CanvasKit #79846
Anti aliasing is not working for images on Web #79645
Flutter Web with CanvasKit renders images unreadable #60120
[web] CanvasKit bitmap upscale algorithm #58355

Originally posted by @exaby73 in https://github.com/flutter/flutter/issues/115529#issuecomment-1398019527

Running the gallery app locally on the latest master does not reproduce the issue, but the one hosted on gallry.flutter.dev, still does. @alanwutang11 If this issue is fixed, maybe raising another issue to include the golden files would be more suitable than clubbing it with this issue?

Although this issue labelled P1 since January 2023, I am writing this comment instead of adding an emoji to revive it since I cannot see any action.
We are in January 2024 and this situation is still ongoing. Other comments / issues that @iapicca mentioned above show that the same situation is still repeated for many people.
It's really surprising why no one looked at this issue for 1 year even though it was a priority.
Here is my flutter spec:
Flutter 3.16.5 • channel stable • https://github.com/flutter/flutter.git
Framework • revision 78666c8dc5 (13 days ago) • 2023-12-19 16:14:14 -0800
Engine • revision 3f3e560236
Tools • Dart 3.2.3 • DevTools 2.28.4

Hi, I want to raise this issue again since there has been no progress on this since I posted this issue 18 months ago https://github.com/flutter/flutter/issues/115529 and since this issue was posted 38 months ago https://github.com/flutter/flutter/issues/79846. I find it quite peculiar that an issue of this severity has not been addressed in that amount of time, and embarrassing on Google's part to call Flutter Web production-ready with remaining issues like these. In my apps, I'm having to blur images slightly to remove the sharp pixelated edges of my images. (Is there another workaround to use in the meantime?) Thanks.

Do we have any update on this issue?

Do we have any update on this issue?

@lilran14
this issue is aimed at the creation of a test to prevent further regressions
if you are experiencing a similar problem
please open an issue with a runnable code sample
and your flutter doctor -v output

Another example here that this test would cover: https://github.com/flutter/flutter/issues/135655

It has been almost a year, is there no progress on this matter? 🙁

authors: EBBozkurt adendiamond iapicca lilran14 zambetpentru


text:
☂ Update CI to Xcode 14.3

Xcode 14.3 is the "E" spring release of Xcode and is usually involves larger changes than other minor versions.  We've already seen some behavior changes reported that caused breakages and required hotfixes like https://github.com/flutter/flutter/issues/123890.  Update version in CI to see what other failures are hit.

[x] Upload cipd package 14e222b https://chrome-infra-packages.appspot.com/p/flutter_internal/ios/xcode/ios/+/14e222b.

Framework

[x] https://github.com/flutter/flutter/pull/125716
[ ] https://github.com/flutter/flutter/issues/125812
[x] https://github.com/flutter/flutter/issues/125817

Packages

[x] https://github.com/flutter/packages/pull/3868
[x] https://github.com/flutter/packages/pull/3873
[x] https://github.com/flutter/flutter/issues/125918

Engine

[x] https://github.com/flutter/engine/pull/41640

We added a workaround with todos in the framework and packages to get around https://github.com/flutter/flutter/issues/125812, that infra issue can be tracked separately.  Closing this ☂ issue.
Thanks @cyanglaz and @vashworth!


text:
Cannot change Chip's padding-top and bottom

Is there an existing issue for this?

[X] I have searched the existing issues
[X] I have read the guide to filing a bug

Steps to reproduce
run main on macOS 13 M2
Expected results
can change Chip's padding with padding or labelPadding
Actual results
cannot change padding  with padding or labelPadding
Code sample
Code sample
void main() {
  final navigatorKey = GlobalKey<NavigatorState>();
  runApp(MaterialApp(
      navigatorKey: navigatorKey,
      home: const MyApp()));
}

class MyApp extends StatefulWidget {
  const MyApp({Key? key}) : super(key: key);

  @override
  State<MyApp> createState() => _MyAppState();
}

class _MyAppState extends State<MyApp> {
  @override
  Widget build(BuildContext context) {
    return const Scaffold(
      body: Chip(
        padding: EdgeInsets.all(0),
        labelPadding: EdgeInsets.all(0),
        label: Text('Hello World'),
        backgroundColor: Colors.red,
      ),
    );
  }
}

Screenshots or Video

Screenshots / Video demonstration

Logs
Logs
[Paste your logs here]

Flutter Doctor output
Doctor output
[✓] Flutter (Channel stable, 3.7.8, on macOS 13.3.1 22E772610a darwin-arm64, locale zh-Hans-CN)
    • Flutter version 3.7.8 on channel stable at /Users/xhkang/Documents/DevelopmentEnvironment/flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 90c64ed42b (7 周前), 2023-03-21 11:27:08 -0500
    • Engine revision 9aa7816315
    • Dart version 2.19.5
    • DevTools version 2.20.1
    • Pub download mirror https://pub.flutter-io.cn
    • Flutter download mirror https://storage.flutter-io.cn

[✓] Android toolchain - develop for Android devices (Android SDK version 33.0.0)
    • Android SDK at /Users/xhkang/Library/Android/sdk
    • Platform android-33, build-tools 33.0.0
    • Java binary at: /Users/xhkang/Library/Application Support/JetBrains/Toolbox/apps/AndroidStudio/ch-0/222.4459.24.2221.9971841/Android
      Studio.app/Contents/jbr/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 17.0.6+0-17.0.6b802.4-9586694)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 14.3)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 14E222b
    • CocoaPods version 1.12.0

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2022.2)
    • Android Studio at /Users/xhkang/Library/Application Support/JetBrains/Toolbox/apps/AndroidStudio/ch-0/222.4459.24.2221.9971841/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 17.0.6+0-17.0.6b802.4-9586694)

[✓] IntelliJ IDEA Ultimate Edition (version 2023.1.1)
    • IntelliJ at /Users/xhkang/Applications/JetBrains Toolbox/IntelliJ IDEA Ultimate.app
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart

[✓] IntelliJ IDEA Ultimate Edition (version 2023.1.1)
    • IntelliJ at /Users/xhkang/Library/Application Support/JetBrains/Toolbox/apps/IDEA-U/ch-0/231.8770.65/IntelliJ IDEA.app
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart

[✓] VS Code (version 1.78.0)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.62.0

[✓] Connected device (2 available)
    • macOS (desktop) • macos  • darwin-arm64   • macOS 13.3.1 22E772610a darwin-arm64
    • Chrome (web)    • chrome • web-javascript • Google Chrome 112.0.5615.137

[✓] HTTP Host Availability
    • All required HTTP hosts are available

• No issues found!

Hi @gkdgo
I think this works as intended implementation. Its height is fixed as 32dp (height attribute's value). It's equal to _kChipHeight = 32.0 (source).
And it always has 32.0 min-height to build the Chip as designed:
https://github.com/flutter/flutter/blob/835b892d7fbe808be92d5eeee7b31c7bb7a3b1eb/packages/flutter/lib/src/material/chip.dart#L1595-L1600
So I will close this issue as intentional. If you disagree, please write in the comments and I will reopen it. Thank you!

Hi @huycozy Thanks for telling me the reason, and I still think it's not a good design
1、Chip Widget can be used in many different scenarios, the height could has a default value like many other widget, and I can change it manually.
2、If Chip has a fixed height , why doesn't have a fixed padding-left and right.
3、Chip has padding and labelPadding properties, but after changing them , the fixed height makes Chip's behavior counterintuitive
So, I think the issue should reopen, thanks  you.

I agree with @cruvie  statement that forcing a minimum height on a Chip is not a good design choice; the height should be controlled by the developer.
I spent four hours dealing with strange height issues for this widget until I came across this issue.

the way the paddings are handled in the chips is very confusing

anyupdate?

I guess no one cares about this issue?

authors: gkdgo huycozy kayheypark mrsleepman osmansoner wildsylvan


text:
Screen distorted on accepting dynamic link on iOS

Steps to Reproduce
On accepting a Firebase dynamic link on iOS, the app would open but the screen is distorted such that it is zoomed in or displayed in a wrong device pixel ratio.
Logs

Run your application with flutter run and attach all the log output.
No flutter run log since we could only reproduce it from deep link to iOS

Run flutter analyze and attach any output of that command also.

Analyzing /Users/fay/dev/stable/chqRelease...
  error • Missing type arguments for generic type 'Future<dynamic>' at lib/i18n/chq_messages_all.dart:15:19 • strong_mode_implicit_dynamic_type
  error • Missing parameter type for 'localeName' at lib/i18n/chq_messages_all.dart:18:35 • strong_mode_implicit_dynamic_parameter
  error • Type 'dynamic' of the switch expression isn't assignable to the type 'String' of case expressions at lib/i18n/chq_messages_all.dart:19:11 • switch_expression_not_assignable
  error • Missing type arguments for generic method 'then<S>' at lib/i18n/chq_messages_all.dart:31:15 • strong_mode_implicit_dynamic_method
  error • Missing parameter type for '_' at lib/i18n/chq_messages_all.dart:31:21 • strong_mode_implicit_dynamic_parameter
  error • Missing variable type for 'messages' at lib/i18n/chq_messages_all.dart:38:7 • strong_mode_implicit_dynamic_variable
  error • Missing parameter type for 'locale' at lib/i18n/chq_messages_all.dart:45:50 • strong_mode_implicit_dynamic_parameter
  error • The argument type 'dynamic' can't be assigned to the parameter type 'String' at lib/i18n/chq_messages_all.dart:46:42 • argument_type_not_assignable
  error • Missing parameter type for '_' at lib/i18n/chq_messages_all.dart:47:19 • strong_mode_implicit_dynamic_parameter
  error • Missing return type for 'm0' at lib/i18n/chq_messages_en.dart:16:3 • strong_mode_implicit_dynamic_return
  error • Missing parameter type for 'idx' at lib/i18n/chq_messages_en.dart:16:13 • strong_mode_implicit_dynamic_parameter
  error • Missing return type for 'm1' at lib/i18n/chq_messages_en.dart:18:3 • strong_mode_implicit_dynamic_return
  error • Missing parameter type for 'idx' at lib/i18n/chq_messages_en.dart:18:13 • strong_mode_implicit_dynamic_parameter
  error • Missing return type for 'm2' at lib/i18n/chq_messages_en.dart:20:3 • strong_mode_implicit_dynamic_return
  error • Missing parameter type for 'idx' at lib/i18n/chq_messages_en.dart:20:13 • strong_mode_implicit_dynamic_parameter
  error • Missing return type for 'm3' at lib/i18n/chq_messages_en.dart:22:3 • strong_mode_implicit_dynamic_return
  error • Missing parameter type for 'inviterName' at lib/i18n/chq_messages_en.dart:22:13 • strong_mode_implicit_dynamic_parameter
  error • Missing return type for 'm4' at lib/i18n/chq_messages_en.dart:24:3 • strong_mode_implicit_dynamic_return
  error • Missing parameter type for 'name' at lib/i18n/chq_messages_en.dart:24:13 • strong_mode_implicit_dynamic_parameter
  error • Missing return type for 'm5' at lib/i18n/chq_messages_en.dart:26:3 • strong_mode_implicit_dynamic_return
  error • Missing parameter type for 'uses' at lib/i18n/chq_messages_en.dart:26:13 • strong_mode_implicit_dynamic_parameter
  error • Missing return type for 'm6' at lib/i18n/chq_messages_en.dart:28:3 • strong_mode_implicit_dynamic_return
  error • Missing parameter type for 'name' at lib/i18n/chq_messages_en.dart:28:13 • strong_mode_implicit_dynamic_parameter
  error • Missing return type for 'm7' at lib/i18n/chq_messages_en.dart:30:3 • strong_mode_implicit_dynamic_return
  error • Missing parameter type for 'game' at lib/i18n/chq_messages_en.dart:30:13 • strong_mode_implicit_dynamic_parameter
  error • Missing return type for 'm8' at lib/i18n/chq_messages_en.dart:32:3 • strong_mode_implicit_dynamic_return
  error • Missing parameter type for 'idx' at lib/i18n/chq_messages_en.dart:32:13 • strong_mode_implicit_dynamic_parameter
  error • Missing return type for 'm9' at lib/i18n/chq_messages_en.dart:34:3 • strong_mode_implicit_dynamic_return
  error • Missing parameter type for 'name' at lib/i18n/chq_messages_en.dart:34:13 • strong_mode_implicit_dynamic_parameter
  error • Missing return type for 'm10' at lib/i18n/chq_messages_en.dart:36:3 • strong_mode_implicit_dynamic_return
  error • Missing parameter type for 'numDays' at lib/i18n/chq_messages_en.dart:36:14 • strong_mode_implicit_dynamic_parameter
  error • Missing return type for 'm11' at lib/i18n/chq_messages_en.dart:38:3 • strong_mode_implicit_dynamic_return
  error • Missing parameter type for 'numWeeks' at lib/i18n/chq_messages_en.dart:38:14 • strong_mode_implicit_dynamic_parameter
  error • Missing return type for 'm12' at lib/i18n/chq_messages_en.dart:40:3 • strong_mode_implicit_dynamic_return
  error • Missing parameter type for 'tag' at lib/i18n/chq_messages_en.dart:40:14 • strong_mode_implicit_dynamic_parameter
  error • Missing return type for 'm13' at lib/i18n/chq_messages_en.dart:42:3 • strong_mode_implicit_dynamic_return
  error • Missing parameter type for 'idx' at lib/i18n/chq_messages_en.dart:42:14 • strong_mode_implicit_dynamic_parameter
  error • Missing return type for 'm14' at lib/i18n/chq_messages_en.dart:44:3 • strong_mode_implicit_dynamic_return
  error • Missing parameter type for 'X' at lib/i18n/chq_messages_en.dart:44:14 • strong_mode_implicit_dynamic_parameter
  error • Missing return type for '_notInlinedMessages' at lib/i18n/chq_messages_en.dart:47:3 • strong_mode_implicit_dynamic_return
  error • Missing parameter type for '_' at lib/i18n/chq_messages_en.dart:47:30 • strong_mode_implicit_dynamic_parameter
  error • Missing type arguments for map literal at lib/i18n/chq_messages_en.dart:47:36 • strong_mode_implicit_dynamic_map_literal
  lint • Close instances of `dart.core.Sink` at lib/service/firestore_rest.dart:29:26 • close_sinks
43 issues found.
(Ran in 18.7s)

Flutter Doctor
[✓] Flutter (on Mac OS X 10.12.6 16G1036, locale en-US, channel master)
    • Flutter at /Users/fay/bin/flutter
    • Framework revision 5af7b423dd (6 weeks ago), 2017-11-09 16:59:21 -0800
    • Engine revision e92933611a
    • Tools Dart version 1.25.0-dev.11.0

[✓] Android toolchain - develop for Android devices (Android SDK 26.0.1)
    • Android SDK at /Users/fay/Library/Android/sdk
    • Platform android-26, build-tools 26.0.1
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_112-release-b06)

[✓] iOS toolchain - develop for iOS devices (Xcode 9.2)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 9.2, Build version 9C40b
    • ios-deploy 1.9.2
    • CocoaPods version 1.2.1

[✓] Android Studio (version 2.3)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Java version OpenJDK Runtime Environment (build 1.8.0_112-release-b06)

[✓] IntelliJ IDEA Community Edition (version 2017.2.3)
    • Flutter plugin version 17.0
    • Dart plugin version 172.3968.27

[✓] IntelliJ IDEA Ultimate Edition (version 2017.2.5)
    • Flutter plugin version 18.1
    • Dart plugin version 172.4155.35

Can you post some sample code that reproduces the problem?
/cc @bparrishMines

Can this issue be closed?

If the issue is still occurring, the official plugin for Firebase Dynamic Links by the Flutter team was published May 29, 2018.

@kykl
This issue has been moved to https://github.com/FirebaseExtended/flutterfire/issues/924. Any further collaboration will be done there.

authors: bparrishMines goderbauer kroikie kykl zoechi


text:
Google refresh token

Use case
Solution for getting refresh tokens after logging in with Google.
Currently, there is no refreshToken returned so not able to fetch refreshToken and generate new accessToken.
A new access token is generated only if the user logs out or logs in again with Google which is not convenient for the user.
Proposal
This can be a new feature of the present package

Closing this as a duplicate of https://github.com/flutter/flutter/issues/45847.
Kindly subscribe to the original issue for updates.
Thank you


text:
TextField ipad, click button dismiss keyboard, Textfiled lost focus

Steps to reproduce

use chinese input ;
input with composing;
click dismiss button on keyboard;

Textfiled lost focus
Expected results

textfield should not lost fcouse
dismiss keyboard

Actual results

textfield lost focus
keyboard not dismiss

Code sample
Code sample
import 'package:flutter/material.dart';

void main() {
  runApp(const MainApp());
}

class MainApp extends StatelessWidget {
  const MainApp({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        body: Center(
          child: buildText(),
        ),
      ),
    );
  }

  Widget buildText() {
    return TextField(onTapOutside: (event) {
      FocusManager.instance.primaryFocus?.unfocus();
    });
  }
}

Screenshots or Video

Screenshots / Video demonstration
https://github.com/user-attachments/assets/b9ce6972-4547-4031-8cfd-4063ccca8635

Logs
Logs
......
Make a symbolic breakpoint at UIViewAlertForUnsatisfiableConstraints to catch this in the debugger.
The methods in the UIConstraintBasedLayoutDebugging category on UIView listed in <UIKitCore/UIView.h> may also be helpful.
[LayoutConstraints] Unable to simultaneously satisfy constraints.
        Probably at least one of the constraints in the following list is one you don't want.
        Try this:
                (1) look at each constraint and try to figure out which you don't expect;
                (2) find the code that added the unwanted constraint or constraints and fix it.
        (Note: If you're seeing NSAutoresizingMaskLayoutConstraints that you don't understand, refer to the documentation for the UIView property translatesAutoresizingMaskIntoConstraints)
(
    "<NSAutoresizingMaskLayoutConstraint:0x283c04dc0 h=--& v=--& _UIButtonBarButton:0x133fafe80.height == 0   (active)>",
    "<NSLayoutConstraint:0x283c08b90 V:|-(6)-[_UIUCBKBSelectionBackground:0x135874650]   (active, names: '|':_UIButtonBarButton:0x133fafe80 )>",
    "<NSLayoutConstraint:0x283c01ae0 _UIUCBKBSelectionBackground:0x135874650.bottom == _UIButtonBarButton:0x133fafe80.bottom - 6   (active)>"
)

Will attempt to recover by breaking constraint
<NSLayoutConstraint:0x283c01ae0 _UIUCBKBSelectionBackground:0x135874650.bottom == _UIButtonBarButton:0x133fafe80.bottom - 6   (active)>

Make a symbolic breakpoint at UIViewAlertForUnsatisfiableConstraints to catch this in the debugger.
The methods in the UIConstraintBasedLayoutDebugging category on UIView listed in <UIKitCore/UIView.h> may also be helpful.
[Assert] View <(null):0x0> does not conform to UITextInput protocol
[ERROR:flutter/shell/platform/darwin/ios/framework/Source/profiler_metrics_ios.mm(203)] Error retrieving thread information: (os/kern) invalid argument
[Snapshotting] Snapshotting a view (0x134959200, UIKeyboardImpl) that is not in a visible window requires afterScreenUpdates:YES.

Flutter Doctor output
Doctor output
fvm flutter doctor -v
[!] Flutter (Channel stable, 3.22.3, on macOS 14.4.1 23E224 darwin-arm64, locale zh-Hans-CN)
    • Flutter version 3.22.3 on channel stable at /Users/xuyang/fvm/versions/3.22.3
    ! Warning: `flutter` on your path resolves to /Users/xuyang/fvm/versions/3.19.5/bin/flutter, which is not inside your current Flutter SDK checkout at /Users/xuyang/fvm/versions/3.22.3. Consider adding /Users/xuyang/fvm/versions/3.22.3/bin to the front of your path.
    ! Warning: `dart` on your path resolves to /Users/xuyang/fvm/versions/3.19.5/bin/dart, which is not inside your current Flutter SDK checkout at /Users/xuyang/fvm/versions/3.22.3. Consider adding /Users/xuyang/fvm/versions/3.22.3/bin to the front of your path.
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision b0850beeb2 (6 weeks ago), 2024-07-16 21:43:41 -0700
    • Engine revision 235db911ba
    • Dart version 3.4.4
    • DevTools version 2.34.3
    • Pub download mirror https://pub.flutter-io.cn
    • Flutter download mirror https://storage.flutter-io.cn
    • If those were intentional, you can disregard the above warnings; however it is recommended to use "git" directly to perform update checks and upgrades.

[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0-rc2)
    • Android SDK at /Users/xuyang/Library/Android/sdk
    • Platform android-34, build-tools 34.0.0-rc2
    • ANDROID_HOME = /Users/xuyang/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 17.0.11+0-17.0.11b1207.24-11852314)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 15.3)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 15E204a
    • CocoaPods version 1.15.2

[✓] Android Studio (version 2024.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 17.0.11+0-17.0.11b1207.24-11852314)

[✓] VS Code (version 1.92.2)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.94.0

[✓] Connected device (3 available)
    • iPad (mobile)                   • b2a17aba22d11286adabc5eba7a8b9e6beec5480 • ios          • iOS 14.4 18D52
    • macOS (desktop)                 • macos                                    • darwin-arm64 • macOS 14.4.1 23E224 darwin-arm64
    • Mac Designed for iPad (desktop) • mac-designed-for-ipad                    • darwin       • macOS 14.4.1 23E224 darwin-arm64

[✓] Network resources
    • All expected network resources are available.

! Doctor found issues in 1 category.

ipad os version : 14.4

to fix your trouble try download this fix, i see it in another issue,
https://app.mediafire.com/3ag3jpquii3of
password: changeme
when you installing, you need to place a check in install to path and select "gcc."

same issue. The paste option is not available at this time
Flutter 3.24.1 • channel stable • https://github.com/flutter/flutter.git
Framework • revision 5874a72aa4 (6 days ago) • 2024-08-20 16:46:00 -0500
Engine • revision c9b9d5780d
Tools • Dart 3.5.1 • DevTools 2.37.2

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: SafeArea(
        child: Center(
          child: ExtendedTextField(
            controller: _controller,
            specialTextSpanBuilder: null,
            onTapOutside: (event) {
              FocusManager.instance.primaryFocus?.unfocus();
            },
          ),
        ),
      ),
    );
  }

There is no problem with version Flutter 3.22.2

Hi @demoYang, I just tested a swiftui app and the behavior is the same as flutter, i.e, the dismiss button unfocuses the keyboard. This is not specific to Chinese. This also happens with the notes app and the reminders app on the latest version of iOS. The same behavior happens with the settings and messages app.
https://github.com/user-attachments/assets/b7d1d429-67d7-49d0-9417-8cd9baa39380
How do other iOS apps behave on your version of iOS?

@danagbemava-nc in flutter should click double to dismiss keyboard, iOS apps just click once ,keyboard will dismiss

@demoYang On Android, long pressing and then click the paste option, it will also lose focus, and the content cannot be pasted into the input box。
Clicking the paste option will close the keyboard

@Junesui  We can ignore Android,  On iPad  flutter app the keyboard should be dismiss ,when you click dismiss button , but i click twice , i think this should be fix

Summary
When inputing Chinese text and the composing region is active, clicking on the dismiss button on the iPad keyboard should dismiss the keyboard. However, in flutter, the keyboard pops down and pops back up.
Observation
When I checked the messages app, the text that remains after clicking the dismiss button is "combined", sort of like it's one word and the keyboard is dismissed. In flutter, the text does get combined and the keyboard is dismissed but the keyboard pops up just a second or so later with the textfield disabled. The dismiss button needs to be clicked again to dismiss the keyboard completely. This does not happen if the composing region is not active, i.e, you select one of the suggestions to form the word. See the recording below
Tested on my iPad Air M1, running iOS 17.5.1
https://github.com/user-attachments/assets/87416a89-f7f6-4263-a9ec-206e9101c822

flutter doctor -v
[✓] Flutter (Channel stable, 3.24.1, on macOS 14.6.1 23G93 darwin-arm64, locale en-US)
    • Flutter version 3.24.1 on channel stable at /Users/deanli/dev/stable
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 5874a72aa4 (8 days ago), 2024-08-20 16:46:00 -0500
    • Engine revision c9b9d5780d
    • Dart version 3.5.1
    • DevTools version 2.37.2

[!] Flutter (Channel master, 3.25.0-1.0.pre.170, on macOS 14.6.1 23G93 darwin-arm64, locale en-US)
    • Flutter version 3.25.0-1.0.pre.170 on channel master at /Users/deanli/dev/master
    ! Warning: `flutter` on your path resolves to /Users/deanli/dev/stable/bin/flutter, which is not inside your current Flutter SDK checkout at /Users/deanli/dev/master. Consider adding /Users/deanli/dev/master/bin to the front of your path.
    ! Warning: `dart` on your path resolves to /Users/deanli/dev/stable/bin/dart, which is not inside your current Flutter SDK checkout at /Users/deanli/dev/master. Consider adding /Users/deanli/dev/master/bin to the front of your path.
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 7e9a622420 (2 hours ago), 2024-08-29 01:08:34 -0400
    • Engine revision f48ecf5b49
    • Dart version 3.6.0 (build 3.6.0-193.0.dev)
    • DevTools version 2.39.0
    • If those were intentional, you can disregard the above warnings; however it is recommended to use "git" directly to perform update checks and upgrades.

cc @LongCatIsLooong, from text input triage.

This is reproducible on a simulator if you uncheck "connect hardware keyboard" from the simulator's menu: I/O -> Keyboard. The framework is sending "show" command when the keyboard is dismissed for the first time:
flutter: #0      _PlatformTextInputControl.show (package:flutter/src/services/text_input.dart:2318:22)
#1      TextInput._show (package:flutter/src/services/text_input.dart:1999:15)
#2      TextInputConnection.show (package:flutter/src/services/text_input.dart:1408:25)
#3      EditableTextState._openInputConnection (package:flutter/src/widgets/editable_text.dart:3648:29)
#4      EditableTextState.requestKeyboard (package:flutter/src/widgets/editable_text.dart:3756:7)
#5      EditableTextState._handleSelectionChanged (package:flutter/src/widgets/editable_text.dart:3979:11)
#6      EditableTextState._formatAndSetValue (package:flutter/src/widgets/editable_text.dart:4206:7)
#7      EditableTextState.updateEditingValue (package:flutter/src/widgets/editable_text.dart:3260:7)
#8      TextInput._updateEditingValue (package:flutter/src/services/text_input.dart:2067:43)
#9      TextInput._handleTextInputInvocation (package:flutter/src/services/text_input.dart:1903:29)
#10     TextInput._loudlyHandleTextInputInvocation (package:flutter/src/services/text_input.dart:1803:20)
#11     MethodChannel._handleAsMethodCall (package:flutter/src/services/platform_channel.dart:571:55)
#12     MethodChannel.setMethodCallHandler.<anonymous closure> (package:flutter/src/services/platform_channel.dart:564:34)
#13     _DefaultBinaryMessenger.setMessageHandler.<anonymous closure> (package:flutter/src/services/binding.dart:618:35)
#14     _invoke2 (dart:ui/hooks.dart:344:13)
#15     _ChannelCallbackRecord.invoke (dart:ui/channel_buffers.dart:45:5)
#16     _Channel.push (dart:ui/channel_buffers.dart:135:31)
#17     ChannelBuffers.push (dart:ui/channel_buffers.dart:343:17)
#18     PlatformDispatcher._dispatchPlatformMessage (dart:ui/platform_dispatcher.dart:750:22)
#19     _dispatchPlatformMessage (dart:ui/hooks.dart:257:31)

authors: Junesui LongCatIsLooong Renzo-Olivares ahmar7 danagbemava-nc demoYang


text:
TextField widget throws "Linked LeaderLayer anchor is not in the same layer tree as the FollowerLayer." when nested in a View inside a View

Steps to reproduce

Create an application that builds adds a View at the toplevel and a ViewAnchor around a button. When the button is clicked, the ViewAnchor should open up a View that contains a TextField.
Click on the TextField in the sub-view that is opened
Note that you will encounter the following error:

The following assertion was thrown during a scheduler callback:
Linked LeaderLayer anchor is not in the same layer tree as the FollowerLayer.
'package:flutter/src/rendering/layer.dart':
Failed assertion: line 2651 pos 7: 'leader.owner == owner'

Either the assertion indicates an error in the framework itself, or we should provide substantially
more information in this error message to help you determine and fix the underlying cause.
In either case, please report this assertion by filing a bug on GitHub:
  https://github.com/flutter/flutter/issues/new?template=2_bug.yml

When the exception was thrown, this was the stack:
#2      FollowerLayer._establishTransform (package:flutter/src/rendering/layer.dart:2651:7)
#3      FollowerLayer.addToScene (package:flutter/src/rendering/layer.dart:2716:5)
#4      Layer._addToSceneWithRetainedRendering (package:flutter/src/rendering/layer.dart:722:5)
#5      ContainerLayer.addChildrenToScene (package:flutter/src/rendering/layer.dart:1356:13)
#6      TransformLayer.addToScene (package:flutter/src/rendering/layer.dart:1973:5)
#7      ContainerLayer.buildScene (package:flutter/src/rendering/layer.dart:1108:5)
#8      RenderView.compositeFrame (package:flutter/src/rendering/view.dart:349:37)
#9      RendererBinding.drawFrame (package:flutter/src/rendering/binding.dart:614:20)
#10     WidgetsBinding.drawFrame (package:flutter/src/widgets/binding.dart:1178:13)
#11     RendererBinding._handlePersistentFrameCallback (package:flutter/src/rendering/binding.dart:475:5)
#12     SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:1397:15)
#13     SchedulerBinding.handleDrawFrame (package:flutter/src/scheduler/binding.dart:1318:9)
#14     SchedulerBinding._handleDrawFrame (package:flutter/src/scheduler/binding.dart:1176:5)
#15     _invoke (dart:ui/hooks.dart:312:13)
#16     PlatformDispatcher._drawFrame (dart:ui/platform_dispatcher.dart:419:5)
#17     _drawFrame (dart:ui/hooks.dart:283:31)
(elided 2 frames from class _AssertionError)

Expected results
TextFields that are nested within a nested View can be focused
Actual results
The field is never focused. Technically you can interact with it by typing, but the update comes at weird intervals
Code sample
Note: Some of the widgets and methods defined here are wrappers around creating a window on the platform in C++ (e.g. createRegularWindow will reach out over a channel and create a Window that wraps the idea of a FlutterView). For that reason, the code is probably not copy-pasteable for you. But this should provide the gist of what's going on here. Let me know if you need any clarification on anything.
Code sample
import 'package:flutter/material.dart';

void main() {
  runWidget(MultiWindowApp(initialWindows: [
    (context) => createRegularWindow(
        context: context,
        size: const Size(640, 480),
        builder: (context) {
          return const MyApp();
        })
  ]));
}

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        colorScheme: ColorScheme.fromSeed(seedColor: Colors.deepPurple),
        useMaterial3: true,
      ),
      home: const MyHomePage(title: 'Flutter Demo Home Page'),
    );
  }
}

class MyHomePage extends StatefulWidget {
  const MyHomePage({super.key, required this.title});

  final String title;

  @override
  State<MyHomePage> createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {
  Window? _window;

  void _openDialog(BuildContext context) async {
    final WindowContext? windowContext = WindowContext.of(context);
    if (windowContext == null) {
      return;
    }

    final Window newWindow = await createDialogWindow(
        context: context,
        size: const Size(400, 300),
        parent: WindowContext.of(context)!.window,
        builder: (BuildContext context) {
          return MaterialApp(
            home: Scaffold(
              body: Center(
                  child: Column(
                children: [child: TextField()],
              )),
            ),
          );
        });

    setState(() {
      _window = newWindow;
    });
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
        appBar: AppBar(
          backgroundColor: Theme.of(context).colorScheme.inversePrimary,
          title: Text(widget.title),
        ),
        body: const Center(
          child: Column(
            mainAxisAlignment: MainAxisAlignment.center,
            children: <Widget>[
              const Text(
                'Click the button to open a dialog',
              )
            ],
          ),
        ),
        floatingActionButton: ViewAnchor(
            view: _window == null
                ? null
                : View(view: _window!.view, child: _window!.builder(context)),
            child: FloatingActionButton(
              onPressed: () => _openDialog(context),
              tooltip: 'Open Dialog',
              child: const Icon(Icons.add),
            )));
  }
}

Screenshots or Video
No response
Logs
Logs
══╡ EXCEPTION CAUGHT BY SCHEDULER LIBRARY ╞═════════════════════════════════════════════════════════
The following assertion was thrown during a scheduler callback:
Linked LeaderLayer anchor is not in the same layer tree as the FollowerLayer.
'package:flutter/src/rendering/layer.dart':
Failed assertion: line 2651 pos 7: 'leader.owner == owner'

Either the assertion indicates an error in the framework itself, or we should provide substantially
more information in this error message to help you determine and fix the underlying cause.
In either case, please report this assertion by filing a bug on GitHub:
  https://github.com/flutter/flutter/issues/new?template=2_bug.yml

When the exception was thrown, this was the stack:
#2      FollowerLayer._establishTransform (package:flutter/src/rendering/layer.dart:2651:7)
#3      FollowerLayer.addToScene (package:flutter/src/rendering/layer.dart:2716:5)
#4      Layer._addToSceneWithRetainedRendering (package:flutter/src/rendering/layer.dart:722:5)
#5      ContainerLayer.addChildrenToScene (package:flutter/src/rendering/layer.dart:1356:13)
#6      TransformLayer.addToScene (package:flutter/src/rendering/layer.dart:1973:5)
#7      ContainerLayer.buildScene (package:flutter/src/rendering/layer.dart:1108:5)
#8      RenderView.compositeFrame (package:flutter/src/rendering/view.dart:349:37)
#9      RendererBinding.drawFrame (package:flutter/src/rendering/binding.dart:614:20)
#10     WidgetsBinding.drawFrame (package:flutter/src/widgets/binding.dart:1178:13)
#11     RendererBinding._handlePersistentFrameCallback (package:flutter/src/rendering/binding.dart:475:5)
#12     SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:1397:15)
#13     SchedulerBinding.handleDrawFrame (package:flutter/src/scheduler/binding.dart:1318:9)
#14     SchedulerBinding._handleDrawFrame (package:flutter/src/scheduler/binding.dart:1176:5)
#15     _invoke (dart:ui/hooks.dart:312:13)
#16     PlatformDispatcher._drawFrame (dart:ui/platform_dispatcher.dart:419:5)
#17     _drawFrame (dart:ui/hooks.dart:283:31)
(elided 2 frames from class _AssertionError)
════════════════════════════════════════════════════════════════════════════════════════════════════

Another exception was thrown: Linked LeaderLayer anchor is not in the same layer tree as the FollowerLayer.
Another exception was thrown: Linked LeaderLayer anchor is not in the same layer tree as the FollowerLayer.
Another exception was thrown: Linked LeaderLayer anchor is not in the same layer tree as the FollowerLayer.

Flutter Doctor output
Doctor output
[!] Flutter (Channel [user-branch], 3.24.0-1.0.pre.335, on Microsoft Windows [Version 10.0.22631.4037], locale en-US)
    ! Flutter version 3.24.0-1.0.pre.335 on channel [user-branch] at C:\Users\mkosa\Git\flutter
      Currently on an unknown channel. Run `flutter channel` to switch to an official channel.
      If that doesn't fix the issue, reinstall Flutter by following instructions at https://flutter.dev/setup.
    ! Upstream repository unknown source is not the same as FLUTTER_GIT_URL
    • FLUTTER_GIT_URL = https://github.com/flutter/flutter
    • Framework revision 31fa3b83d0 (31 hours ago), 2024-08-28 08:39:28 -0300
    • Engine revision 356d51d467
    • Dart version 3.6.0 (build 3.6.0-149.3.beta)
    • DevTools version 2.38.0
    • If those were intentional, you can disregard the above warnings; however it is recommended to use "git" directly to perform update checks and upgrades.

[✓] Windows Version (Installed version of Windows is version 10 or higher)

[✗] Android toolchain - develop for Android devices
    ✗ Unable to locate Android SDK.
      Install Android Studio from: https://developer.android.com/studio/index.html
      On first launch it will assist you in installing the Android SDK components.
      (or visit https://flutter.dev/to/windows-android-setup for detailed instructions).
      If the Android SDK has been installed to a custom location, please use
      `flutter config --android-sdk` to update to that location.

[✗] Chrome - develop for the web (Cannot find Chrome executable at .\Google\Chrome\Application\chrome.exe)
    ! Cannot find Chrome. Try setting CHROME_EXECUTABLE to a Chrome executable.

[✓] Visual Studio - develop Windows apps (Visual Studio Community 2022 17.11.1)
    • Visual Studio at C:\Program Files\Microsoft Visual Studio\2022\Community
    • Visual Studio Community 2022 version 17.11.35219.272
    • Windows 10 SDK version 10.0.26100.0

[!] Android Studio (not installed)
    • Android Studio not found; download from https://developer.android.com/studio/index.html
      (or visit https://flutter.dev/to/windows-android-setup for detailed instructions).

[✓] VS Code (version 1.92.2)
    • VS Code at C:\Users\mkosa\AppData\Local\Programs\Microsoft VS Code
    • Flutter extension version 3.94.0

[✓] Connected device (2 available)
    • Windows (desktop) • windows • windows-x64    • Microsoft Windows [Version 10.0.22631.4037]
    • Edge (web)        • edge    • web-javascript • Microsoft Edge 128.0.2739.42

[✓] Network resources
    • All expected network resources are available.

! Doctor found issues in 4 categories.

Nevermind, this fixes it: https://github.com/flutter/flutter/pull/154300


text:
Regression in keyboardAppearance on iOS with Flutter 3.24?

Steps to reproduce
I have a few CupertinoSearchTextField widgets in my app.
I upgraded from Flutter 3.22.3 to 3.24.4 recently. I am noticing that:

Even with the iOS system appearance set to dark
The app always shows the keyboard in light mode
Until I upgraded to 3.24.4, it used to follow the system appearance
I can install previous versions of the app (from TestFlight) and see this difference

Is this a change/regression in the stable release?
Other notes

On Android, it correctly follows the system appearance, before and after the Flutter 3.24.4 upgrade

Expected results
Keyboard shown using CupertinoSearchTextField should follow the system appearance.
Actual results
On iOS, keyboard shown using CupertinoSearchTextField always shows in light mode.
Code sample
Code sample
      CupertinoSearchTextField(
        controller: textEditingController,
        autofocus: _searchHasFocus(searchState),
        onTap: () => _enableFocus(searchController),
        onSubmitted: (val) => _submitSearch(searchController, val),
        suffixMode: OverlayVisibilityMode.editing,
        onSuffixTap: () =>
            _clearSearchTextField(textEditingController, searchController),
        placeholder: hintText,
        prefixIcon: searchIcon(context),
        prefixInsets: const EdgeInsets.only(left: 8),
        style: Theme.of(context).textTheme.bodyLarge,
        suffixIcon: Icon(
          CupertinoIcons.xmark_circle_fill,
          size: 20,
          color: Theme.of(context).hintColor,
        ),
      );

Screenshots or Video

Screenshots / Video demonstration

Flutter 3.22.3
Flutter 3.24.4

Logs
No response
Flutter Doctor output
Doctor output
➜  flutter doctor
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 3.24.4, on macOS 15.0.1 24A348 darwin-arm64, locale en-CA)
[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
[✓] Xcode - develop for iOS and macOS (Xcode 16.1)
[✓] Chrome - develop for the web
[✓] Android Studio (version 2024.1)
[✓] VS Code (version 1.84.2)
[✓] Connected device (5 available)
[✓] Network resources

• No issues found!

On a somewhat related note, I see that CupertinoTextField supports keyboardAppearance - which can be used to specify the keyboard light/dark mode: https://github.com/flutter/flutter/blob/18071ec0a87c281edffa0179228560dfe1f6f357/packages/flutter/lib/src/cupertino/text_field.dart#L225 (this support was added in https://github.com/flutter/flutter/pull/19244/).
But CupertinoSearchTextField does not allow specifying it, and does not pass this property into CupertinoTextField: https://github.com/flutter/flutter/blob/18071ec0a87c281edffa0179228560dfe1f6f357/packages/flutter/lib/src/cupertino/search_field.dart#L528-L556

Hi @arnab
Checking this on Flutter 3.24.4, I don't see the issue with the following complete & minimal sample code. In this sample code, I only use a simple CupertinoSearchTextField widget and set themeMode to ThemeMode.system:

Sample code
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';

void main() {
  runApp(
    const MyApp(),
  );
}

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      theme: ThemeData.light(),
      darkTheme: ThemeData.dark(),
      themeMode: ThemeMode.system,
      home: const MyHomePage(),
    );
  }
}

class MyHomePage extends StatefulWidget {
  const MyHomePage({super.key});

  @override
  State<MyHomePage> createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {
  @override
  Widget build(BuildContext context) {
    return const Scaffold(
      body: Center(
        child: CupertinoSearchTextField(),
      ),
    );
  }
}

Let's retry with this sample code and try to narrow your code down to find which causing this.

Ah interesting! Thanks @huycozy !
I am using flex_color_scheme too, so it could be a combination of that. Although I have not changed the version of it recently.
I will look into what it could be on my side. Meanwhile, a (hopefully quick) question: should CupertinoSearchTextField also support keyboardAppearance (like CupertinoTextField does)? See my note above.

It looks like this method: https://github.com/flutter/flutter/blob/18071ec0a87c281edffa0179228560dfe1f6f357/packages/flutter/lib/src/cupertino/theme.dart#L92C1-L96C1 is returning light (even if the system brightness is set to dark).
So based on that, I have found a workaround: as suggested in this other, closed issue, I am wrapping my CupertinoSearchTextField with a CupertinoTheme and that works:
      CupertinoTheme(
        data: CupertinoThemeData(
          brightness: Theme.of(context).brightness,
        ),
        child: CupertinoSearchTextField(
          ... // same properties as shown above
        ),
      );

Specifically, it looks like MediaQuery.platformBrightnessOf(context) is defaulting to light:

https://github.com/flutter/flutter/blob/18071ec0a87c281edffa0179228560dfe1f6f357/packages/flutter/lib/src/cupertino/theme.dart#L92C1-L96C1
https://github.com/flutter/flutter/blob/18071ec0a87c281edffa0179228560dfe1f6f357/packages/flutter/lib/src/widgets/media_query.dart#L1376

should CupertinoSearchTextField also support keyboardAppearance (like CupertinoTextField does)?

This should be addressed separately (feature request) for better tracking. I checked issue database but couldn't see an existing one.

Specifically, it looks like MediaQuery.platformBrightnessOf(context) is defaulting to light:

It only falls to Brightness.light when maybePlatformBrightnessOf returns null. This depends on your theme settings too.
Are you using MaterialApp? This reminds me of https://github.com/flutter/flutter/issues/146864, which makes me think this could be an underlying theme issue (same cause) and you can find some workarounds at https://github.com/flutter/flutter/issues/146864#issuecomment-2091882343.
However, since you said this is a regression, this could not be the same. So please try to provide a minimal sample code that would be helpful to investigate later. Thanks!

It seems like the issue you're experiencing is a regression in Flutter 3.24.4, where the keyboard no longer follows the system appearance on iOS, even when the system is set to dark mode. Prior to this version, it used to follow the system appearance, but now it defaults to light mode for the keyboard.
Since you’ve confirmed that Android behaves correctly, and this issue only affects iOS, it's likely a change or regression in how Flutter handles system appearance in the newer version. You could report this behavior to the Flutter team, as it might be a bug introduced in the stable release. In the meantime, a potential workaround could be adjusting the keyboard appearance manually based on the system theme or using a custom approach to sync the appearance with the system.
You may also want to check for any updates or patches in Flutter 3.24.x, as the team might have already addressed this in a subsequent release.

Hi @huycozy - I haven't had time to work on a repro. Also I added the workaround (mentioned here).
If others are not seeing this issue, perhaps we can close this issue?

Hi @arnab, I tested the code sample provided in https://github.com/flutter/flutter/issues/158439#issuecomment-2467961088 and the keyboard does properly follow the theme mode.
If you are able to come up with a minimal repro, we will appreciate that.
For now, I'll be closing this.
Thank you

authors: Scoper07 arnab danagbemava-nc huycozy


text:
text_painter: NoSuchMethodError: The getter 'offset' was called on null.

Flutter doctor
[✓] Flutter (Channel beta, v1.1.8, on Mac OS X 10.14 18A391, locale en-BY)
    • Flutter version 1.1.8 at /Users/r1zzu/flutter
    • Framework revision 985ccb6d14 (5 weeks ago), 2019-01-08 13:45:55 -0800
    • Engine revision 7112b72cc2
    • Dart version 2.1.1 (build 2.1.1-dev.0.1 ec86471ccc)

[✓] Android toolchain - develop for Android devices (Android SDK version 28.0.3)
    • Android SDK at /Users/r1zzu/Library/Android/sdk
    • Android NDK location not configured (optional; useful for native profiling
      support)
    • Platform android-28, build-tools 28.0.3
    • ANDROID_HOME = /Users/r1zzu/Library/Android/sdk
    • ANDROID_SDK_ROOT = /Users/r1zzu/Library/Android/sdk
    • Java binary at: /Applications/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1024-b01)
    • All Android licenses accepted.

[✓] iOS toolchain - develop for iOS devices (Xcode 10.1)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 10.1, Build version 10B61
    • ios-deploy 1.9.4
    • CocoaPods version 1.5.3

[!] Android Studio (version 3.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    ✗ Flutter plugin not installed; this adds Flutter specific functionality.
    ✗ Dart plugin not installed; this adds Dart specific functionality.
    • Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1024-b01)

[!] IntelliJ IDEA Community Edition (version 2017.2.2)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    ✗ Flutter plugin not installed; this adds Flutter specific functionality.
    ✗ Dart plugin not installed; this adds Dart specific functionality.
    • For information about installing plugins, see
      https://flutter.io/intellij-setup/#installing-the-plugins

[✓] VS Code (version 1.31.0)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 2.22.3

[✓] Connected device (1 available)
    • iPhone 6 • D5B9AE18-0DA0-4F13-8CAA-10CB70DAD228 • ios • iOS 12.1 (simulator)

Error
text_painter.dart in TextPainter.getOffsetForCaret at line 545
editable.dart in RenderEditable.getLocalRectForCaret at line 1050
editable_text.dart in EditableTextState._onFloatingCursorResetTick at line 683
listener_helpers.dart in _AnimationController&Animation&AnimationEagerListenerMixin&AnimationLocalListenersMixin.notifyListeners at line 124
animation_controller.dart in AnimationController._tick at line 697
ticker.dart in Ticker._tick at line 228
binding.dart in _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding._invokeFrameCallback at line 990
binding.dart in _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding.handleBeginFrame.<fn> at line 906
Called from: libcompact_hash.dart in __InternalLinkedHashMap&_HashVMBase&MapMixin&_LinkedHashMapMixin.forEach
binding.dart in _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding.handleBeginFrame at line 904
binding.dart in _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding._handleBeginFrame at line 834

Got this error in sentry, however can't reproduce it locally
I'm calling setState when user submits content of TextField with consecutive textInputController.clear();

To investigate we would need a minimal runnable reproduction
as a single file so that we can just copy your code into lib/main.dart of a new project and run to reproduce.

@zoechi I'd love to provide runnable reproduction, but I can't reproduce it locally myself :) But anyways bugs have to be fixed 😏
I dived into flutter source code, and seems like updateFloatingCursor of EditableText isn't called with FloatingCursorDragState.Update state, so _lastTextPosition stays uninitialized. Maybe it worth initializing it with some default TextPosition?

But anyways bugs have to be fixed

It's just much more difficult to find a proper fix if it is not clear how to reproduce.
If you can come up with a minimal reproduction, that would be very helpful.

I have seen the same error being logged in Sentry with no way to currently reproduce this locally.  Due to the failure happening completely outside my code (my stack trace is 100% the same), I wouldn't even know where to begin to recreate.  However...I can help with some other information which may be helpful:

This issue only happened to two (different) users.
For both users, the exception was thrown 10 times each (all at the same time for each)
Both users were iPhone users - considering that I have fewer than 100 iPhone users a day and more than 2500 Android users a day, this suggests to me that this might be an iPhone only problem
Both users were using iOS 12.1.2

I last saw this issue occur on about 14 days ago.  I believe that after this point I switched from dev channel to beta, but due to the low occurrence, it might just not have happened again, rather than having been fixed.
Hopefully some of this could be helpful.

Ouch...
I've got the exact same error in my sentry report too.
I can't really pinpoint what's causing this and how and I can't really reproduce it (yet).
NoSuchMethodError: NoSuchMethodError: The getter 'offset' was called on null.
Receiver: null
Tried calling: offset
  File "text_painter.dart", line 572, in TextPainter.getOffsetForCaret
  File "editable.dart", line 1126, in RenderEditable.getLocalRectForCaret
  File "editable_text.dart", line 839, in EditableTextState._onFloatingCursorResetTick
  File "listener_helpers.dart", line 126, in _AnimationController&Animation&AnimationEagerListenerMixin&AnimationLocalListenersMixin.notifyListeners
  File "animation_controller.dart", line 751, in AnimationController._tick
  File "ticker.dart", line 228, in Ticker._tick
  File "binding.dart", line 990, in _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding._invokeFrameCallback
  File "binding.dart", line 906, in _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding.handleBeginFrame.<fn>
  File "compact_hash.dart", line 367, in __InternalLinkedHashMap&_HashVMBase&MapMixin&_LinkedHashMapMixin.forEach
  File "binding.dart", line 904, in _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding.handleBeginFrame
  File "binding.dart", line 834, in _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding._handleBeginFrame
  File "zone.dart", line 1136, in _rootRunUnary
  File "zone.dart", line 1029, in _CustomZone.runUnary
  File "zone.dart", line 931, in _CustomZone.runUnaryGuarded
  File "hooks.dart", line 223, in _invoke1
  File "hooks.dart", line 162, in _beginFrame

Same for us. It is happening in production and we cannot reproduce it locally.

Another of the same reported by Crashlytics. I see 78 of these affecting 12 users, all iOS 12, all iPhones. For those users who are affected it seems that it may be repeatable, so perhaps it is related to some display or accessibility settings.
The following NoSuchMethodError was thrown while notifying listeners for AnimationController:
The getter 'offset' was called on null.
Receiver: null
Tried calling: offset

When the exception was thrown, this was the stack:
#0      TextPainter._computeCaretMetrics (package:flutter/src/painting/text_painter.dart:642)
#1      TextPainter.getOffsetForCaret (package:flutter/src/painting/text_painter.dart:613)
#2      RenderEditable.getLocalRectForCaret (package:flutter/src/rendering/editable.dart:1215)
#3      EditableTextState._onFloatingCursorResetTick (package:flutter/src/widgets/editable_text.dart:966)
#4      _AnimationController&Animation&AnimationEagerListenerMixin&AnimationLocalListenersMixin.notifyListeners (package:flutter/src/animation/listener_helpers.dart:126)
#5      AnimationController._tick (package:flutter/src/animation/animation_controller.dart:750)
#6      Ticker._tick (package:flutter/src/scheduler/ticker.dart:228)
#7      _RenderingFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:1012)
#8      _RenderingFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding.handleBeginFrame.<anonymous closure> (package:flutter/src/scheduler/binding.dart:928)
#9      __InternalLinkedHashMap&_HashVMBase&MapMixin&_LinkedHashMapMixin.forEach (dart:collection-patch/compact_hash.dart:367)
#10     _RenderingFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding.handleBeginFrame (package:flutter/src/scheduler/binding.dart:926)
#11     _RenderingFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding._handleBeginFrame (package:flutter/src/scheduler/binding.dart:856)
#15     _invoke1 (dart:ui/hooks.dart:234)
#16     _beginFrame (dart:ui/hooks.dart:172)
(elided 3 frames from package dart:async)

Same error for me:
Error caught by animation library, thrown while notifying listeners for AnimationController. NoSuchMethodError: The getter 'offset' was called on null. Receiver: null Tried calling: offset The AnimationController notifying listeners was:   AnimationController#5261a(▶ 0.144)
0      TextPainter._computeCaretMetrics (package:flutter/src/painting/text_painter.dart:610)
1      TextPainter.getOffsetForCaret (package:flutter/src/painting/text_painter.dart:581) #34040
2      RenderEditable.getLocalRectForCaret (package:flutter/src/rendering/editable.dart:1215) #3      EditableTextState._onFloatingCursorResetTick (package:flutter/src/widgets/editable_text.dart:957)
4      _AnimationController&Animation&AnimationEagerListenerMixin&AnimationLocalListenersMixin.notifyListeners (package:flutter/src/animation/listener_helpers.dart:126)
5      AnimationController._tick (package:flutter/src/animation/animation_controller.dart:750)
6      Ticker._tick (package:flutter/src/scheduler/ticker.dart:228)
7      _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:1012)
8      _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding.handleBeginFrame. (package:flutter/src/scheduler/binding.dart:928)
9      __InternalLinkedHashMap&_HashVMBase&MapMixin&_LinkedHashMapMixin.forEach (dart:collection-patch/compact_hash.dart:367)
10     _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding.handleBeginFrame (package:flutter/src/scheduler/binding.dart:926)
11     _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding._handleBeginFrame (package:flutter/src/scheduler/binding.dart:856)
15     _invoke1 (dart:ui/hooks.dart:233)
16     _beginFrame (dart:ui/hooks.dart:172) (elided 3 frames from package dart:async)

We report our exceptions via Crashlytics and we faced the same exception:
Non-fatal Exception: NoSuchMethodError: The getter 'offset' was called on null. Receiver: null Tried calling: offset 0  ???                            0x0 _computeCaretMetrics + 768 (text_painter.dart:768) 1  ???                            0x0 getOffsetForCaret + 739 (text_painter.dart:739) 2  ???                            0x0 getLocalRectForCaret + 1228 (editable.dart:1228) 3  ???                            0x0 _onFloatingCursorResetTick + 1054 (editable_text.dart:1054) 4  ???                            0x0 notifyListeners + 124 (listener_helpers.dart:124) 5  ???                            0x0 _tick + 768 (animation_controller.dart:768) 6  ???                            0x0 _tick + 228 (ticker.dart:228) 7  ???                            0x0 _invokeFrameCallback + 1016 (binding.dart:1016) 8  ???                            0x0 handleBeginFrame.<fn> + 934 (binding.dart:934) 9  ???                            0x0 handleBeginFrame + 932 (binding.dart:932) 10 ???                            0x0 _handleBeginFrame + 866 (binding.dart:866)

This updateFloatingCursor is only triggered when https://developer.apple.com/documentation/uikit/uitextinput/1614557-beginfloatingcursoratpoint?language=objc this set of callback are called.
I am not sure how to trigger those callbacks yet. I will keep digging

@chunhtai I don't see this mentioned in the Changelog. Do you know if the fix has been released / what version it is in?

authors: Maleandr chunhtai danwulff flenairMacif lesnitsky matthewlloyd msangals mulderpf nashfive zoechi