5981 Commits

Author SHA1 Message Date
Michael Goderbauer
d285b8843f
Add option to delay rendering the first frame (#45135) 2019-11-21 12:13:45 -08:00
Gary Qian
6b66d79436
Track and use fallback TextAffinity for null affinity platform TextSelections. (#44622) 2019-11-20 16:37:10 -08:00
chunhtai
314eb3bae3
Moving pointer event sanitizing to engine. (#44217) 2019-11-20 13:04:29 -08:00
Todd Volkert
ce8e2bb7cf
Revert "[Material] Update the Slider and RangeSlider to the latest Material spec (#44351)" (#45268)
This reverts commit 421bf64703b5c0fae7196923da0561f6a4c6ec79.

Was causing severe breakages in Google.
2019-11-20 10:42:23 -08:00
Jonah Williams
f20471d081 Revert "reland add lifecycle enum and fix the scheduleforcedframe (#45133)" (#45260)
This reverts commit 99324105da695ed55d322a039cf5349a7b2ab45b.

It was implicated in https://github.com/flutter/flutter/issues/45258
2019-11-20 09:43:15 -08:00
Anthony
421bf64703
[Material] Update the Slider and RangeSlider to the latest Material spec (#44351)
Update the Slider and RangeSlider to the latest Material spec. This introduces an updated track, updated thumbs, updated tick marks, and a new value indicator shape. The old paddle value indicator shape is also updated so that text scaling works consistently.
2019-11-20 18:18:40 +01:00
Ian Hickson
b75abd9f7e
Try a mildly prettier FlutterError and make it less drastic in release mode. (#44967) 2019-11-19 17:35:47 -08:00
Greg Spencer
0d27fdced9
Scroll scrollable to keep focused control visible. (#44965)
Before this change, it was possible to move the focus onto a control that was no longer in the view using focus traversal. This changes that, so that when a control is focused, it makes sure that if it is the child of a scrollable, that the scrollable attempts to keep it in view. If it is already in view, then nothing scrolls.

When asked to move in a direction, the focus traversal code tries to find a control to move to inside the scrollable first, and then looks for things outside of the scrollable only once the scrollable has reached its limit in that direction.
2019-11-19 17:10:34 -08:00
chunhtai
99324105da
reland add lifecycle enum and fix the scheduleforcedframe (#45133)
* reland add lifecycle enum and fix the scheduleforcedframe
2019-11-19 15:45:37 -08:00
Greg Spencer
a3186fbaa1
Analyze dartpad (#45124)
This fixes the sample code analysis to treat dartpad snippets in the same way as snippet snippets, which it wasn't until now (the snippet generator was treating them as "samples"), and some errors crept in. This PR also fixes those errors.

Also, added a --verbose option to the sample analyzer.
2019-11-19 15:16:12 -08:00
Greg Spencer
6e10719dc5
FocusableActionDetector widget (#44867)
This adds a FocusableActionDetector, a widget which combines the functionality of Actions, Shortcuts, MouseRegion and a Focus widget to create a detector that defines actions and key bindings, and will notify that the focus or hover highlights should be shown or not. This widget can be used to give a control the required detection modes for focus and hover handling on desktop and web platforms.

I replaced a bunch of similar code in many of our widgets with this widget, and found that pretty much any control that wants to be focusable wants all of these features as well: focus highlights, hover highlights, and actions to activate it.

Also eliminated an extra _hasFocus variable in FocusState that wasn't being used.
2019-11-18 17:23:30 -08:00
Greg Spencer
d026f2d948
Properly interpret modifiers on GLFW key events (#44844)
GLFW key events set modifier flags based on what the modifier state was before the event, unlike every other platform. This modifies the GLFW key support to take that into account.

As a small cleanup, I fixed a documentation macro reference for the modifier flags that was duplicate
2019-11-18 14:07:08 -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
chunhtai
7e1920b817
revert added lifecycle enum (#45119) 2019-11-18 13:38:47 -08:00
chunhtai
af48f71497
reland add new enum change (#45012)
This reverts commit 75f310791f154f9f416d9ce137e83478ccc3f112.
2019-11-18 10:04:09 -08:00
Ian Hickson
62e4ab87b3
Update our deprecation style. (#44618) 2019-11-15 19:21:53 -08:00
Kate Lovett
ae62a3cf1b
Error Message for createState assertion (#44610)
* Init

* Added error message to assert

* Removing unrelated changes
2019-11-15 13:05:18 -08:00
LongCatIsLooong
851d6996e7
Revert "Implement PageView using SliverLayoutBuilder, Deprecate RenderSliverFillViewport (#37024)" (#44778)
* Revert "Implement PageView using SliverLayoutBuilder, Deprecate RenderSliverFillViewport (#37024)"

This reverts commit 9aea03f4afb1c616dd98c2b328032af7849f99cc.
2019-11-14 17:14:26 -08:00
Kaushik Iska
75f310791f Revert "reland add new enum change (#44281) (#44487)" (#44947)
This reverts commit f0794917fc69f7bcf65e193c8d95643d23127198.
2019-11-14 16:49:43 -08:00
chunhtai
f0794917fc
reland add new enum change (#44281) (#44487)
* reland add new enum change (#44281)

This reverts commit ed82bb821cd7c62315ec5973e36855ca75f17350.
2019-11-14 13:27:38 -08:00
Ian Hickson
96fbbdc3e0
Fix "node._relayoutBoundary == _relayoutBoundary" crash (#44490) 2019-11-14 13:19:55 -08:00
Michael Goderbauer
bcc93bca23
Make disposing a ScrollPosition with pixels=null legal (#44617) 2019-11-13 11:31:20 -08:00
Tong Mu
01f4f1ac55
ModalBarrier and Drawer barrier prevents mouse events (#44296)
* Add opaque to barriers
* Detect opaque and test
2019-11-12 18:25:53 -08:00
Mouad Debbar
9307a83f7c
Changing RenderEditable.textAlign doesn't break hot reload anymore (#44605) 2019-11-11 14:35:15 -08:00
Greg Spencer
23d1ae0ff7
Convert to TextPosition for getWordBoundary (#44611)
Convert the call to getWordBoundary to use a TextPosition, in preparation for landing flutter/engine#13727, which switches the desired API to the final desired API.
2019-11-11 14:27:06 -08:00
Sam Rawlins
86c91b12d8 Remove new unused elements (#44551) 2019-11-11 13:29:46 -08:00
Alex Fourman
924ab725d9 Fix AboutListTile having an empty icon placeholder when no icon set. (#43422) 2019-11-08 19:33:44 -08:00
Greg Spencer
dd90ff429d
Remove TextRange, export it from dart:ui (#44422)
This removes TextRange from the framework and moves it to the engine, in preparation for using it to return text ranges from the text extent APIs, and updates the APIs that use Paragraph.getWordBoundary (there was only one) to expect a TextRange or  a pair of ints temporarily until the engine side returns TextRanges, so that I can convert over without breaking the builds.
2019-11-08 18:57:44 -08:00
Greg Spencer
c921c5ae67
Add macOS fn key support. (#44410)
This adds support for the fn key on macOS. It adds it to the key mappings as a supplemental mapping that overwrites the one from the Chrome headers, since the chrome headers have a TODO, but no implementation of the key.

Also, ignore the fn key entirely on macOS. This is because On macOS laptop keyboards, the fn key is used to generate home/end and f1-f12, but it ALSO generates a separate down/up event for the fn key itself. Other platforms hide the fn key, and just produce the key that it is combined with, so to keep it possible to write cross platform code that looks at which keys are pressed, the fn key is ignored.
2019-11-08 16:30:38 -08:00
LongCatIsLooong
09c80aa45a
Segmented control quick double tap fix (#44391) 2019-11-08 10:05:53 -08:00
Luiz França
d961ae85b5 Adding subtitle to ExpansionTile (#43946)
* Adding subtitle to expansion_tile
2019-11-08 10:04:49 -08:00
Greg Spencer
19778f9e33
Make selected item get focus when dropdown is opened (#43722)
As it stands, dropdowns currently do not focus the item that is selected, so if you select something on a dropdown, and then close it, and re-open it, then the new item is not auto-focused. This PR changes that so that selected value is focused by default when the dropdown is re-opened.
2019-11-08 08:58:37 -08:00
liyuqian
cc9e9ce2ce
Remove TODO that's done (#44318)
See https://github.com/flutter/engine/pull/13728
2019-11-07 14:06:07 -08:00
LongCatIsLooong
62db22d152
CupertinoDynamicColor improvements (#44317) 2019-11-07 13:14:08 -08:00
Greg Spencer
028ed7122a
Synchronize modifier keys in RawKeyboard.keysPressed with modifier flags on events. (#43948)
Currently, we listen to keyboard events to find out which keys should be represented in RawKeyboard.instance.keysPressed, but that's not sufficient to represent the physical state of the keys, since modifier keys could have been pressed when the overall app did not have keyboard focus (especially on desktop platforms).

This PR synchronizes the list of modifier keys in keysPressed with the modifier key flags that are present in the raw key event so that they can be relied upon to represent the current state of the keyboard. When synchronizing these states, we don't send any new key events, since they didn't happen when the app had keyboard focus, but if you ask "is this key down", we'll give the right answer
2019-11-06 14:52:55 -08:00
Taufiq Rahman
3243ebe3ee Tap.dart: Fixes the spacing to the right side of reason (#43246) 2019-11-06 14:48:43 -08:00
chunhtai
ed82bb821c
revert add new enum change (#44281) 2019-11-06 11:07:24 -08:00
Gary Qian
8cd892b39b
Use alphabetic baselines for layout of InputDecorator (#44029) 2019-11-06 10:50:16 -08:00
Jonah Williams
2110dfe0f5
remove yield from inherited model (#44233) 2019-11-06 10:38:56 -08:00
chunhtai
7aebde1904
added new lifecycle state (#39945)
* added new lfecycle state

* update

* update
2019-11-05 20:03:09 -08:00
LongCatIsLooong
a9fc9e561a
Apply minimumDate & maximumDate constraints in CupertinoDatePicker date mode (#44149) 2019-11-05 14:16:55 -08:00
Shi-Hao Hong
1663fde347
Wire selectedItemBuilder through DropdownButtonFormField (#44160) 2019-11-05 12:32:03 -08:00
Justin McCandless
9734754aad
CupertinoContextMenu (iOS 13) (#43918)
Adds the CupertinoContextMenu widget for iOS 13 support.
2019-11-05 07:55:54 -08:00
Edman P. Anjos
28b5cc3825
Pad CupertinoAlertDialog with MediaQuery viewInsets (#42967)
Fixes #42049.
2019-11-05 11:50:30 +01:00
umevoshi
d96afee888 Fix comment typo in tabs.dart (#44068) 2019-11-04 17:33:23 -08:00
Thalles Santos
0431c8a64d Typo in TextFormField comments (#44076)
initalValue should be initialValue
2019-11-04 17:32:41 -08:00
Kate Lovett
11e1c24069
SliverAppBar - Configurable overscroll stretch with callback feature & FlexibleSpaceBar support (#42250) 2019-11-04 17:10:26 -08:00
LongCatIsLooong
bbb2a0f837
Update cupertino demos in gallery (#43841) 2019-11-04 16:31:52 -08:00
Dan Field
7957c56997
Respond to TextInputClient.reattach messages. (#43959) 2019-11-04 16:28:03 -08:00
Nurhan Turgut
97cf355b9d
Adding handling of TextInputClient.onConnectionClosed messages handli… (#43466)
* Adding handling of TextInputClient.onConnectionClosed messages handling to Framework

* Adding more test cases for closing connection to editable_text_test

* fixing analyze error.

* Fixing analyze error in the test file

* Fixing comments on the new method

* Adding more closing connection examples.

* Indentation change

* Remove auto-add white space

* Changing the oncloseconnection behaviour to stop editing. Updating the tests

* Addressing PR comments. Added explicit log for method channnels to the tests. Added comments to the interfaces.

* add more documentation
2019-11-04 13:35:18 -08:00