2216 Commits

Author SHA1 Message Date
Simon Binder
d2de911d50 Sliver animated list (#28834) 2019-05-06 11:26:38 +02:00
Shi-Hao Hong
2f75005a16
Fix Exception on Nested TabBarView disposal (#31581)
* Add Flag to determine if pixels is set by viewport during disposal

* Add TODO to remove nested TabBarView workaround once unnecessary build/dispose issues are resolved
2019-05-04 09:14:49 -07:00
Justin McCandless
0a3df1b576
Text wrap width (#31987)
Add `textWidthBasis` param to Text to allow calculating width according to longest line.
2019-05-03 11:41:07 -07:00
chunhtai
38808d9fe4
Reland fix 25807 implement move for sliver multibox widget (#31978) 2019-05-03 09:48:20 -07:00
Efthymis Sarmpanis
39d660be78 Extract TODO comment from Image.asset dardoc (#31903) 2019-05-03 08:29:02 -07:00
Justin McCandless
34325ba33a
Revert "Tight Paragraph Width (#30988)" (#31979)
This reverts commit 323108ff47fd6caaeb8eaf30716e70d860673a1e due to weird engine dependency bug
2019-05-02 10:36:51 -07:00
Justin McCandless
323108ff47
Tight Paragraph Width (#30988)
Add `textWidthBasis` param to Text to allow calculating width according to longest line.
2019-05-02 09:21:45 -07:00
James Lin
0c20a2ed01 Fix MediaQueryData.toString() to generate readable output
MediaQueryData.toString() omitted commas and spaces around some
properties, making the output difficult to read.
2019-05-02 08:44:51 -07:00
Todd Volkert
f48cc4611a
Add documentation to Navigator (#31851) 2019-05-02 08:02:11 -07:00
Jacob Richman
e17f9e8ff8
Fix bug handling cyclic diagnostics. (#31960) 2019-05-01 22:09:53 -07:00
LongCatIsLooong
15f187fce0
Add docs to AppBar (#31317)
- Added docs to AppBar to cover AppBar's inherited MediaQuery when not used in a Scaffold in general
- s/Hero]s/Hero]es/
2019-05-01 20:39:37 -07:00
Greg Spencer
be75fb36c5
Change unfocus to unfocus the entire chain, Fix setFirstFocus (#31909)
In #31614, I added an unfocus() to FocusNodes to allow giving up of focus, but it only worked on the primary focus. This changes that so that it will unfocus the entire chain, not just the primary focus. Now, if you call unfocus() on a FocusNode or FocusScopeNode, and their hasFocus returns true, then after calling unfocus(), it will return false. Before this change, it would only do that if hasPrimaryFocus was also true.

This also fixes a bug in the way setFirstFocus was implemented, making it conform more to the behavior of the previous implementation. It has simplified logic in reparent, and in when it requests focus for scope nodes that have had setFirstFocus called on them.
2019-05-01 12:20:41 -07:00
Jacob Richman
63aa5b3647
Refactor core uses of FlutterError. (#30983)
Make FlutterError objects more structured so they can be displayed better in debugging tools such as Dart DevTools.
2019-05-01 11:20:12 -07:00
Jonah Williams
60a1b2b9ea
Revert "Redo: Add buttons to gestures (#31819)" (#31912)
This reverts commit fea2c7d671633fea21bfc93ccddbb57c4510752f.
2019-05-01 10:06:45 -07:00
Dan Field
4bc35fc87a
Allow DSS to be dragged when its children do not fill extent (#31832)
* Allow DSS to be dragged when its children do not fill extent

* Fix when maxChildSize  < 1.0
2019-04-30 15:42:42 -07:00
Tong Mu
fea2c7d671
Redo: Add buttons to gestures (#31819)
* Revert "Revert "Add buttons to gestures (#30339)" (#31801)"

This reverts commit 8fd7fa492aaad0d0d4aa062d71b1ecba8b0d4f44.

* Synthesise kPrimaryButton for unknown devices

* Change TestPointer to a better API
2019-04-30 09:56:24 -07:00
liyuqian
7cab6d5e1c
Support clipBehavior changes in hot reload (#31761)
## Description

Make `_RenderCustomClip`'s `clipBehavior` non-final so we can update it during `updateRenderObject`. This will support `clipBehavior` changes in hot reload.

## Related Issues

Fixes #30863

## Tests

I added the following tests:

* ClipRect updates clipBehavior in updateRenderObject
* ClipRRect updates clipBehavior in updateRenderObject
* ClipOval updates clipBehavior in updateRenderObject
* ClipPath updates clipBehavior in updateRenderObject
* PhysicalModel updates clipBehavior in updateRenderObject
* PhysicalShape updates clipBehavior in updateRenderObject
2019-04-30 09:46:38 -07:00
Jonah Williams
37e25238a8
Attempt to reduce usage of runtimeType (#31696) 2019-04-29 16:44:50 -07:00
Dan Field
fe9512fa72
Re-enable const (#31600)
* Re-enable const
2019-04-29 16:02:42 -07:00
Jonah Williams
8fd7fa492a
Revert "Add buttons to gestures (#30339)" (#31801)
This reverts commit 727e7e829f4debf7a7aaaad3c37151b362ed4cba.
2019-04-29 12:59:30 -07:00
Tong Mu
727e7e829f
Add buttons to gestures (#30339)
* Callbacks of tap, long press, drag, and double tap GR respond to only primary events.
* Add "secondary" callbacks to tap.
* Recognizers only compete on events if there are any related callbacks.
* Add "kSecondaryButton" constant.
2019-04-29 10:46:33 -07:00
Dmitriy Zaitsev
8e66c53f3d Fix the documentation for UiKitView#creationParams (#31619)
It looks like the documentation for UiKitView has been copy-pasted from AndroidView or so.
This PR fixes the word 'Android' to 'iOS' for the `creationParams`.
2019-04-29 14:50:44 +02:00
Sander Kersten
9d16b84b35 Fix calculation of hero rectTween when Navigator isn't fullscreen (#29677) 2019-04-29 14:43:44 +02:00
xster
26d7f502a9
Add some docs to StatefulBuilder (#31291) 2019-04-26 18:10:18 -07:00
Dan Field
6a48e663ef
Bottom sheet scrolling (#21896) 2019-04-26 14:12:11 -07:00
LongCatIsLooong
7d19f97d03
Fix refresh control in the gallery demo, update comments (#30129)
- Fixed the bug where CupertinoRefreshControl doesn't work in the gallery demo on Android.
- Updated documentation on CupertinoRefreshControl
- Added comments to the gallery demo
- Added concrete examples to ScrollPhysics
2019-04-25 20:49:47 -07:00
Todd Volkert
e57d0ff73b
Fix doc link (#31638) 2019-04-25 20:31:45 -07:00
Greg Spencer
7775c23784
[Re-Land] Implement focus traversal for desktop platforms. (#31614)
This re-lands the Focus changes in #30040. Correctness changes in routes.dart, and removes the automatic requesting of focus on reparent when there is no current focus, which caused undesirable selections.

Addresses #11344, #1608, #13264, and #1678
Fixes #30084
Fixes #26704
2019-04-25 16:26:58 -07:00
Justin McCandless
a21a1f4105
iOS selection handles are invisible (#31332)
Fix a bug where text selection handles were invisible in iOS
2019-04-25 12:32:10 -07:00
xster
8cfc92465d
CupertinoPicker fidelity revision (#31464) 2019-04-25 00:03:04 -07:00
Todd Volkert
e00f1a3c17
Fix typo in docs (#31538) 2019-04-24 07:43:01 -07:00
chunhtai
5c5ddd1fc2
Revert "Fix 25807: implement move for sliver multibox widget (#29188)" (#31497)
This reverts commit 77ab0b83214792e8e6117295982c9397e03193a2.
2019-04-23 10:41:19 -07:00
liyuqian
981e922aa1
Improve docs to address flutter/flutter#31202 (#31454)
## Description

Clarify that ClipRect can be added to ensure that CustomPainter will be drawing within bounds.

## Related Issues

https://github.com/flutter/flutter/issues/31202
2019-04-23 09:57:05 -07:00
Greg Spencer
590cc27b31
Revert "Implement focus traversal for desktop platforms, shoehorn edition. (#30040)" (#31461)
This reverts commit 4218c0bc38bc74a97b1b03d7b8b7f0ce32e29468.
2019-04-22 18:02:35 -07:00
Todd Volkert
b9170a9d9a
Add more breadcrumb docs to Transformation (#31420) 2019-04-22 09:53:03 -07:00
Todd Volkert
9a4a3fc62a
Add Widget of the Week video to SizedBox (#31421) 2019-04-22 09:52:41 -07:00
Greg Spencer
4218c0bc38
Implement focus traversal for desktop platforms, shoehorn edition. (#30040)
Implements focus traversal for desktop platforms, including re-implementing the existing focus manager and focus tree.

This implements a Focus widget that can be put into a widget tree to allow input focus to be given to a particular part of a widget tree.

It incorporates with the existing FocusScope and FocusNode infrastructure, and has minimal breakage to the API, although FocusScope.reparentIfNeeded is removed, replaced by a call to FocusAttachment.reparent(), so this is a breaking change:

FocusScopeNodes must now be attached to the focus tree using FocusScopeNode.attach, which takes a context and an optional onKey callback, and returns a FocusAttachment that should be kept by the widget that hosts the FocusScopeNode. This is necessary because of the need to make sure that the focus tree reflects the widget hierarchy.

Callers that used to call FocusScope(context).reparentIfNeeded in their build method will call reparent  on a FocusAttachment instead, which they will obtain by calling FocusScopeNode.attach in their initState method. Widgets that own FocusNodes will need to call dispose on the focus node in their dispose method.

Addresses #11344, #1608, #13264, and #1678
Fixes #30084
Fixes #26704
2019-04-22 09:51:40 -07:00
chunhtai
77ab0b8321
Fix 25807: implement move for sliver multibox widget (#29188) 2019-04-22 09:28:53 -07:00
Justin McCandless
6e1b143fed
Text field scroll physics (#31088)
TextField and CupertinoTextField can now specify scrollPhysics. Cupertino defaults to bouncing now.
2019-04-22 07:42:59 -07:00
xster
1c332caed5
Commit a navigator.pop as soon as the back swipe is lifted (#30422) 2019-04-17 13:53:14 -07:00
Todd Volkert
1e2e96dbe4
Add breadcrumb to docs (#31178) 2019-04-17 10:59:23 -07:00
liyuqian
a8116e9ea3
Allow profile widget builds in profile mode (#30990)
## Description

Previously, such function is only available in the debug mode. But the
performance information is very noisy in debug mode with JIT. I feel
that such function is as important and useful as the performance overlay
and the `--trace-skia` option for the GPU thread.  So we should give it
the same ability to run in both profile and debug mode.

I've tested it using flutter_gallery in the profile mode. There's no
observable difference in the performance overlay between toggling widget
build profiling.

## Related Issues

https://github.com/flutter/flutter/issues/30984
2019-04-15 13:57:43 -07:00
Dan Field
42d3464d2e
Let sliver.dart _createErrorWidget work with other Widgets (#30880)
Credit to @ymback
2019-04-11 00:31:06 -07:00
Todd Volkert
499004779b
Revert "Add Form.onSaved (#30643)" (#30793)
This reverts commit 949023b27686fb80a0047157490d6c4c61995cef.
2019-04-10 14:49:10 -07:00
Jonah Williams
f66ee3e470
Add semanticsLabel parameter to TextSpan (#30837) 2019-04-10 12:24:01 -07:00
Shi-Hao Hong
b3bb5cd6b0
Fix StatefulWidget and StatelessWidget Sample Documentation (#30814) 2019-04-09 19:32:00 -07:00
Todd Volkert
949023b276
Add Form.onSaved (#30643)
When submitting data to a server, callers need a callback that will
get invoked after all the individual form fields are saved. If they
have a button that submits the form, they could just do this logic
in the click handler for the button (save the form, then submit to
the server), but if they have more ways than one to submit the form
(i.e. hitting enter while in a text form field), then it becomes
more convoluted and calls for a unified callback that will get
notified when the form is submitted.
2019-04-07 21:02:09 -07:00
Todd Volkert
cb78274c3f
Make FormField._validate() return void (#30644)
None of its callers were using the return value, so no need to
invoke the `isValid` getter unnecessarily.
2019-04-07 21:01:33 -07:00
Todd Volkert
535523dbe0
Add docs to FormFieldValidator (#30645)
To describe what its return value represents
2019-04-07 21:00:53 -07:00
Dan Field
d42db56b52
Add sample for ValueListenableBuilder (#30626)
* Add sample for ValueListenableBuilder
2019-04-06 20:14:41 -07:00