159 Commits

Author SHA1 Message Date
Alexandre Ardhuin
4d7525f05c
Opt out nnbd in packages/flutter (#59186)
* add language version 2.8 in packages/flutter

* enable non-nullable analyzer flag
2020-06-11 14:11:30 +02:00
Darren Austin
012cee2731
Typo fixing sweep through packages/flutter. (#59219) 2020-06-11 05:10:01 -07:00
Jason Simmons
5736def36c
Handle selection ranges where getBoxesForSelection returns an empty list (#59014) 2020-06-09 11:08:04 -07:00
MH Johnson
4bae771509
[Line Heights] Add textHeightBehavior to SelectableText. (#58530) 2020-06-03 11:53:02 -07:00
Mehmet Fidanboylu
1d395c5e18
Revert "Add clipBehavior to widgets with clipRect (#55977)" (#58344)
This reverts commit cd593dae1961ca2bc5c045a310f16e6cdffc8294.
2020-05-31 07:41:50 -07:00
liyuqian
cd593dae19
Add clipBehavior to widgets with clipRect (#55977)
* Add clipBehavior to RenderFlex

* Add clipBehavior to FittedBox

* Add clipBehavior to Flex and FittedBox

* Add clipBehavior to UnconstrainedBox

* Add clipBehavior to Stack and Wrap

* Add clipBehavior to TextEditable

* Add clipBehavior to ListWheelScrollView

* Add clipBehavior to SingleChildScrollView

* Add clipBehavior to RenderViewportBase's widgets

Those widgets are NestedScrollView and ShrinkWrappingViewport.

* Fix tests

* Remove enum Overflow and fix typo

* Remove clipToSize

* Analyze fix

* Remove Mixin and other small fixes

* Fix tests and respect Stack's default clipBehavior

* Add Overflow back to make it non-breaking

* Restore clipBehavior to make it non-breaking

* Small fixes

* Fix rebase
2020-05-29 15:38:50 -07:00
Justin McCandless
de8cf8b530
Customizable obscuringCharacter (#55415) 2020-04-24 17:59:02 -07:00
stuartmorgan
1cad96a63e
Handle surrogate pairs in RenderEditable (#55246)
The arrow key and delete handling in RenderEditable was using single
index values, which made it possible to move the cursor into the middle
of a surrogate pair (allowing things like adding text at that insertion
point), or to delete half of a surrogate pair. Since unpaired surrogate
pairs aren't valid UTF-16, doing so would cause assertions in the text
field.

This makes the arrow key and delete key handling surrogate-aware
(although not grapheme-cluster-aware, which is a larger fix that is out
of scope here).

Part of #55014
2020-04-22 12:21:03 -07:00
chunhtai
baafc66817
Enable gesture recognizer in selectable rich text (#54479) 2020-04-16 10:05:02 -07:00
LongCatIsLooong
4af5fe2c37
Reland "iOS UITextInput autocorrection prompt (#45354)" (#54119) 2020-04-07 12:11:14 -07:00
cjng96
d62c7ecce5
Ignore key events on edit control on web platform (#52656) (#52661) 2020-04-01 00:31:03 -07:00
Greg Spencer
1ba4f1f509
Add Linux and Windows target platforms (#51519)
This PR adds the linux and windows target platform enum values, along with automatically setting the defaultTargetPlatform to the appropriate value on those platforms.

Fixes #31366
2020-03-03 04:38:04 -08:00
stuartmorgan
6a337a76dd
Revert "Fix handling backspace on macos with text selection (#49760)" (#51577)
This reverts commit 9375377fa99e8faae8a573e9fe92b8712d33e82d.

Fixes #51511
2020-02-28 14:28:34 -08:00
Jonah Williams
213027dd82
[Perf/codesize] Reland: Reduce constraint member reads during layout
This reverts commit 2132a0c7a3d2a107190238ca0c5570baa0467bb7.
2020-02-28 10:02:57 -08:00
Ferhat
2132a0c7a3
Revert "[Perf/codesize] Reduce constraint member reads during layout (#51418)" (#51489)
This reverts commit 69080e07e6bb178332bf546cf83054a85b91b2fe.
2020-02-26 15:51:30 -08:00
Ferhat
69080e07e6
[Perf/codesize] Reduce constraint member reads during layout (#51418) 2020-02-25 13:50:21 -08:00
Alexandre Ardhuin
f15c887c63
change quote to avoid escapes (#50368) 2020-02-11 20:58:27 +01:00
Gary Qian
3e1a124e0e
Expose selectionHeightStyle and selectionWidthStyle on TextFields (#48917) 2020-02-05 17:38:03 -08:00
Matthew Cliatt
9375377fa9
Fix handling backspace on macos with text selection (#49760)
Fixes #46150 by catching both the delete and backspace keys, rather than just the delete key.
2020-01-30 09:36:41 -08:00
Dan Field
8b2993337a
revert #48985 (#49572) 2020-01-27 14:36:02 -08:00
Anthony
b67d5ec6e9 [a11y] Make sure RenderFractionalTranslation updates its semantics after the translation field is set (#48985) 2020-01-17 15:13:01 -08:00
Justin McCandless
c61e55ad6b Selection menu not showing when selection is 0,0 (#49000) 2020-01-17 10:58:01 -08:00
Alexandre Ardhuin
4f9b6cf017
enable lint prefer_final_in_for_each (#47724) 2020-01-07 16:32:04 +01:00
Gary Qian
b011ea5468
Pass _caretPrototype to prevent cache miss (#46720) 2019-12-20 06:46:49 +09:00
Lau Ching Jun
bc67d22449
Revert "iOS UITextInput autocorrection prompt (#45354)" (#47373)
This reverts commit 0f8c0da0a9ded2a9b7aa3bd01fcc29db80bbab0a.
2019-12-18 13:56:44 -08:00
LongCatIsLooong
0f8c0da0a9
iOS UITextInput autocorrection prompt (#45354) 2019-12-17 16:22:28 -08:00
Alexandre Ardhuin
a5f9b3b036
implicit-casts:false in flutter/lib/src/rendering (#45720)
* implicit-casts:false in flutter/lib/src/rendering

* address review comments
2019-12-04 10:27:04 +01:00
Gary Qian
d345a3b303
Revert "Track and use fallback TextAffinity for null affinity platform TextSelections. (#44622)" (#45698)
This reverts commit 6b66d794360bb7d3ff7bf2f6dfbcbd58516c3f20.
2019-11-28 19:42:06 +09:00
Ian Hickson
449f4a6673
License update (#45373)
* Update project.pbxproj files to say Flutter rather than Chromium

Also, the templates now have an empty organization so that we don't cause people to give their apps a Flutter copyright.

* Update the copyright notice checker to require a standard notice on all files

* Update copyrights on Dart files. (This was a mechanical commit.)

* Fix weird license headers on Dart files that deviate from our conventions; relicense Shrine.

Some were already marked "The Flutter Authors", not clear why. Their
dates have been normalized. Some were missing the blank line after the
license. Some were randomly different in trivial ways for no apparent
reason (e.g. missing the trailing period).

* Clean up the copyrights in non-Dart files. (Manual edits.)

Also, make sure templates don't have copyrights.

* Fix some more ORGANIZATIONNAMEs
2019-11-27 15:04:02 -08:00
Greg Spencer
245d1b51ce
Add macOS to TargetPlatform (#43457)
This PR adds TargetPlatform.macOS to the TargetPlatform enum. This allows us to begin implementation of some adaptive UI based on which target platform is desired.

I haven't updated the tests here, that will come in a follow-up PR.
2019-11-26 18:32:34 -08:00
Greg Spencer
a60bf8e23a
Spell check of Flutter docs (#45200)
No code changes, just comments: I spell-checked all the comments in the repo.
2019-11-22 08:43:55 -08:00
Gary Qian
6b66d79436
Track and use fallback TextAffinity for null affinity platform TextSelections. (#44622) 2019-11-20 16:37:10 -08:00
Greg Spencer
21158d8337
Add command key bindings to macOS text editing and fix selection. (#44130)
This adds support for the command key for text selection/editing on macOS. I had ported the text editing code (in #42879), but forgot to add support for the command key itself. This also adds a test that tests the text editing on multiple platforms instead of just testing Android.

There appears to still be a bug (filed #44135) where we're losing key events sometimes on macOS, leaving some keys "stuck" on, but this PR at least allows the right key combinations to be used.
2019-11-18 14:06:37 -08:00
Mouad Debbar
9307a83f7c
Changing RenderEditable.textAlign doesn't break hot reload anymore (#44605) 2019-11-11 14:35:15 -08:00
Jaumard
1faf6a9a89 create gesture recognizers on attach and dispose on detach to avoid leaks (#42076) 2019-10-17 15:48:20 -07:00
Greg Spencer
a7aa66164e
Re-implement hardware keyboard text selection. (#42879)
This re-implements keyboard text selection so that it will work on platforms other than Android (e.g. macOS, Linux, etc.).

Also, fixed a number of bugs in editing selection via a hardware keyboard (unable to select backwards, incorrect conversion to ASCII when cutting to clipboard, lack of support for CTRL-SHIFT-ARROW word selection, etc.).

Did not address the keyboard locale issues that remain, or add platform specific switches for the bindings. All that will need some more design work before implementing them.

Related Issues
Fixes #31951
2019-10-17 15:11:44 -07:00
chunhtai
0ca5e71f28
Implement system fonts system channel listener (#38930)
* Implement system fonts system channel listener
2019-09-24 12:29:03 -07:00
chunhtai
0086243be4
Fixed Selectable text align is broken (#40709)
* Fixed Selectable text align is broken
2019-09-19 09:37:00 -07:00
Ian Hickson
bfd27f6bd7
Audit use of defaultTargetPlatform (#36871) 2019-08-20 13:27:13 -07:00
Gary Qian
fb5b157098
Clamp scrollOffset to prevent textfield bouncing (#38573) 2019-08-19 12:45:52 -07:00
chunhtai
eddcc6bb25
reland Enable selection by default for password text field and expose api to turn on and off context menu options (#37324) 2019-08-01 14:19:04 -07:00
Michael Goderbauer
9a01ed2a55
Revert "reland Enable selection by default for password text field and expose api to turn on and off context menu options (#34676) (#37183)" (#37295)
This reverts commit 7eb09a842e406f15dccb5ac1fac2ec7f511708fb.
2019-07-31 15:34:22 +02:00
chunhtai
7eb09a842e
reland Enable selection by default for password text field and expose api to turn on and off context menu options (#34676) (#37183)
This reverts commit 48c7090f3c2faa20499d2ae8ccca563138d0c215.
2019-07-30 14:19:10 -07:00
chunhtai
48c7090f3c
Revert "Enable selection by default for password text field and expose api to turn on and off context menu options (#34676)" (#37055)
This reverts commit 0d0af31598f5ee0552529bfd3fdc35be1d8fe176.
2019-07-26 18:25:52 -07:00
chunhtai
0d0af31598
Enable selection by default for password text field and expose api to turn on and off context menu options (#34676) 2019-07-26 10:03:30 -07:00
chunhtai
2338576aa6
implement selectable text (#34019) 2019-07-19 12:17:41 -07:00
Mouad Debbar
9c9b71a0fb
Add multi-line flag to semantics (#36297) 2019-07-18 10:36:22 -07:00
chunhtai
f143fd6a4f
fix Selection handles position is off (#34665) 2019-07-03 10:50:10 -07:00
Justin McCandless
2d2bb6bf92
CupertinoTextField vertical alignment (#34723)
CupertinoTextField now supports vertical alignment via the textAlignVertical parameter.
2019-07-03 08:22:31 -07:00
Michael Goderbauer
eb9160eb93
Extract DiagnosticsNode serializer from WidgetInspector (#34012) 2019-06-13 11:30:18 -07:00