When setting the TextSelection in a TextEditingController, preserve the
composing range so long as the new selection is:
* a collapsed selection; in other words, a cursor rather than a
selection with an extent. A selection with an extent is not
permitted when composing.
* within the composing region. Moving the cursor outside the composing
region ends composing mode.
When using physical keyboards for input with an IME, users expect to be
able to navigate using the cursor within the composing region with the
arrow keys in order to edit text in the composing range.
As an example, a user might erroneously enter the composing text
にほんごにゅうろく in kana, then hit the left arrow, followed by
backspace in order to delete the ろ, then input りょ in order to
generate the correct composing text にほんごにゅうりょく, before then
hitting the conversion key to convert to the kanji text 日本語入力 and
commit.
There have been some more additional reports of a missing 'package:characters' import after upgrading flutter, as well as problems with detecting the correct language version. This has me concerned that our pub caching logic is incorrect. Instead of the tool attempting to guess when pub should be run, always delegate to pub.
* Add transformAlignment and clipBehavior to AnimatedContainer, make Container.transformAlignment an AlignmentGeometry.
* Add clipBehavior test
* Fix comment
* Clarify clipBehavior animation
Split from #66776
Even if pub does not change the packge_config contents, it will still update a timestamp in one of the fields. This causes unnecessary rebuilds. To fix this, generate an additional file when running pub get that only contains the relevant fields and then update the KernelSnapshot rule to depend on it only.
Ensures all of the libraries that the application side code import are migrated to null safety. full null safety migration is blocked by json rpc 2 and a breaking change to vm service client.
When the developer doesn't have permission to create symlinks, we
display specific instructions, but they were only correct for recent
versions of Windows 10. This improves them by:
- Giving the correct instructions for older versions.
- For recent versions, adds a command that will deep-link into the
settings application so that developers don't have to figure out
where/how to enable developer mode.
Fixes https://github.com/flutter/flutter/issues/66973