4315 Commits

Author SHA1 Message Date
Chris Bracken
d957c8f040
Add EdgeInsets, MediaQuery support for view insets (#13272)
* Add MediaQuery support for view insets

Also updates EdgeInsets documentation to reflect WindowPadding's use for
both padding and view insets.

See engine commits:
  flutter/engine#4403
  flutter/engine#4406
2017-11-30 13:29:59 -08:00
Ian Hickson
4a4fa2a7c7
Cupertino RTL (#13273)
Fixes the remaining known issues with widgets supporting RTL.
2017-11-30 12:24:40 -08:00
Michael Goderbauer
6493c8b43d
Adapt markNeedsSemanticsUpdate algorithm to new semantics tree compiler (#13274)
* ensures that only semantics boundaries will be added to owner._nodesNeedingSemantics as expected by compiler.
* no longer throws assert if markNeedsSemanticsUpdate is called on non-semantic-boundary render object with a non-semantic-boundary parent.
* Fixes #13109.
* removes onlyLocalUpdates from markNeedsSemanticsUpdate as its no longer needed.
2017-11-30 12:18:33 -08:00
Yegor
a78c9f70da
remove the unused dispatchDidChangeDependencies (#13224) 2017-11-30 12:17:25 -08:00
xster
738e62cb2e
Let iOS have a minimum scroll movement threshold to break before motion starts (#13166)
* Add a minimum distance that needs breaking on iOS each time scrolls stopped.

* Testing and tests

* tweak docs

* review
2017-11-30 11:11:52 -08:00
Alexandre Ardhuin
c358898a76
try lint avoid_unused_constructor_parameters (#13250) 2017-11-30 09:20:53 +01:00
Yusuke Konishi
a46679f758 Implements FlatButton debugFillProperties (#13217)
* Implements FlatButton debugFillDescription

* Fix doc comment

* Override debugFillProperties instead of debugFillDescription

* Remove child debug property
2017-11-29 15:35:37 -08:00
Alexandre Ardhuin
1d7a22fba0
sort lints to make maintenance easier (#13231) 2017-11-29 07:54:44 +01:00
Greg Spencer
909406ba25
Consolidating .gitignore files. (#13002)
This consolidates all of the non-template .gitignore rules into the top level .gitignore, to ignore common things more broadly, with less maintenance needed for the .gitignore files. Does not touch the templates, so that they still produce needed .gitignores as part of flutter create.
2017-11-28 17:06:57 -08:00
Greg Spencer
02517b8b13
Fix some minor typos/grammar issues (#13230) 2017-11-28 16:27:26 -08:00
Jacob Richman
277001d1a8
Inspector JSON protocol to support Flutter IntelliJ Plugin tree view. (#12932) 2017-11-28 15:06:16 -08:00
Devon Carew
792e7ce872
add an assert to validate the RefreshIndicator.onRefresh result (#13198)
* add an assert to validate the RefreshIndicator.onRefresh result

* add a test for RefreshIndicator.onRefresh assert

* switch to using FlutterError.reportError, FlutterErrorDetails, and FlutterError
2017-11-28 11:00:36 -08:00
Devon Carew
bdbe53be01
remove unused constants (#13199) 2017-11-24 19:13:18 -08:00
Ian Hickson
4c9013b71b
BottomNavigationBar RTL (#13167) 2017-11-22 18:55:07 -08:00
Ian Hickson
9afc853f75
Revert "Reenable fade transition for Material page transition (#13048)" (#13172)
This reverts commit e73d406106aefb5b1d4d06bb209d19618bd0e6ac.

It caused major performance regressions.
2017-11-22 18:54:15 -08:00
Ian Hickson
2bda59a1fe
TabBar RTL (#13164) 2017-11-22 18:53:42 -08:00
amirh
78e044f5ec
Cancel the animated image stream timer if all listeners were removed. (#13158)
This is a bug in my previous CL: instead of cancelling the timer if
there are no more listeners, I canceled it if there were listeners (I
can claim I just missed a not :) ).

Not cancelling the timer when removing the last listener was not that bad, as
the timer callback is guarded by a check to see if there are listeners.
So the animation will not continue.

But in the case there were multiple listeners on the same stream, and
one of them is removed, this bug will stop the animation for all other
listeners.
I added a test case for this scenario.
2017-11-22 15:27:26 -08:00
Ian Hickson
2db0c25f82
Dismissible RTL (#13137)
Fix the dismissible demo in the gallery (make it actuall update when you pick something from its menu; give it a better affordance for resetting once you've dismissed everything).

Improve some docs.

Fix various flinging bugs with dismissible. Add tests for those cases.

Add a feature to flutter_test to support a drag-then-fling gesture (used by the flinging tests).
2017-11-22 15:20:15 -08:00
Alex
e6119282b7 feat: add optional headers param to network image (#13128)
* feat: add optional headers params to network image

* fix: addressed comments

* feat: add test

* style: format code
2017-11-22 15:19:52 -08:00
Pascal Welsch
891a218002 Add missing onDragCompleted to LongPressDraggable (#13119)
* Add missing onDragCompleted to LongPressDraggable

* Add test for LongPressDraggable onDragStarted and onDragCompleted
2017-11-22 15:18:28 -08:00
Leonardo Bispo de Oliveira
b3fa055894 ExpansionTile opened - initial state (#13115)
Changed the ExpansionTile widget to have an optional value to
initialize the widget as collapsed or expanded.

The widget will be collapsed by default.
2017-11-22 15:16:27 -08:00
Ian Hickson
34ba6be93a
Popup menus RTL (#13110)
This fixes the popup menu code to do a better job of expanding
smoothly regardless of which side of the screen it's on. It still
results in a bidirection growth when positioned at the bottom of the
screen, so maybe we'll need to animate menus differently, but that's
a problem for another patch.

Also, improve some docs and provide RelativeRect.toSize which I needed
at one point while building this patch (though it didn't survive all
the way to the end).
2017-11-22 15:15:21 -08:00
Pascal Welsch
e73d406106 Reenable fade transition for Material page transition (#13048)
Fixes #12877 by reverting #9472
2017-11-22 15:07:41 -08:00
Kyle Bradshaw
3dc32873bf AnimationController reset() method (#13044)
* AnimationController reset() method

Just a simple convenience method to fix #13039

* Added `reset()` test

* More test expectations

Per feedback.

* Removed test print

* Improved documentation of reset()

* Add controller.reverse to test
2017-11-22 15:06:43 -08:00
amirh
155a4cab18
Don't keep image stream listeners when TickerMode is disabled. (#13106)
This makes sure that we don't decode frames when we don't need to run
the animation.

For example, prior to this CL: an animated image in a page that is not
currently at the top of the page stack (it is covered by another page),
will keep the the image stream listener, and thus frames will still be
decoded.
2017-11-22 13:45:55 -08:00
xster
765dd80e8b
Add caching detail in doc (#13112)
* Add caching detail in doc

* review
2017-11-22 12:03:43 -08:00
Levin Rickert
396142b669 Fixed broken links to apple human interface guidelines (#13132) 2017-11-22 10:30:52 +01:00
xster
5fe32098b5
reverse doc from image providers back to image shorthands (#13074) 2017-11-20 10:34:48 -08:00
Mikkel Nygaard Ravn
9186ba0f89
Alpha pre roll (#13096) 2017-11-20 14:14:01 +01:00
amirh
cd54bd39ab
Fix table formatting in MultiFrameImageStreamCompleter doc - 2nd attempt (#13052) 2017-11-17 13:51:08 -08:00
amirh
5fc8eb8263
Use MultiFrameImageStreamProvider in the various image providers. (#12997) 2017-11-17 13:48:28 -08:00
Chris Bracken
86e23bdb64
Verify microtasks are flushed with each event loop (#13073)
Adds a test that verifies that the microtask queue is flushed between
engine event loop iterations.

Related issue: https://github.com/flutter/flutter/issues/9998
2017-11-17 12:05:39 -08:00
Greg Spencer
0259be90b8
Fix spelling errors in all the dartdocs. (#13061)
I got tired of drive-by spelling fixes, so I figured I'd just take care of them all at once.

This only corrects errors in the dartdocs, not regular comments, and I skipped any sample code in the dartdocs. It doesn't touch any identifiers in the dartdocs either. No code changes, just comments.
2017-11-17 10:05:21 -08:00
Ian Hickson
8b15b537b3
DropdownButton RTL (#13040)
This fixes DropdownButtons to align their popups correctly in RTL as well.

Also while I was there I fixed the issue with text scale factor in the gallery.
2017-11-16 17:57:50 -08:00
amirh
4cbe279d7b
Fix table formatting in MultiFrameImageStreamCompleter doc. (#13050) 2017-11-16 11:22:58 -08:00
amirh
bdbe3a153d
Add an accessibility service with an announce method. (#12594) 2017-11-16 11:01:37 -08:00
Ian Hickson
c97fc2063f
ExpansionPanel animation fixes (#13032)
Previously, ExpansionPanel would do weird things if interacted with
when it was already animating. This is fixed and there's now a test.

Also:

 * Minor fixes to make the gallery work in RTL, not that there's
   any way to see that without hard-coding the framework to RTL.
   But at least I'll be less annoyed when doing that.

 * Some trivial code and documentation cleanup.
2017-11-16 10:22:50 -08:00
Yegor
6be0846847
custom hashCode/== in Element to speed up inheritFromWidgetOfExactType (#13019)
* custom hashCode/== in Element to speed up inheritFromWidgetOfExactType

* explain why 24 bits
2017-11-15 15:23:55 -08:00
Greg Spencer
c15c021e6c
Adding accomodations to ListTile for scaleTextFactor. (#12973)
This makes ListTile expand vertically when text is scaled, or really when whatever is placed inside it is larger than the available space.

In order for UnconstrainedBox to be useful here, I needed for it to only unconstrain the child Row in one dimension, so I added a "constrainedAxis" parameter to the UnconstrainedBox.

Also, changed one enum test to use a switch instead.

I modified the ListTile test to be more representative of the intention of the spec: we were testing with text in the leading and trailing sections, and the design wants icons there. Because there was leading text, and the dense mode only changes the font size on the text lines, the leading text was propping up the minimum size of the tile, making so that the test wasn't really testing any changes in dense mode.
2017-11-15 09:00:36 -08:00
Jeff McGlynn
473d75a6e3 PageView ballistics overshoot the page on some devices (#12884)
* PageView ballistics overshoot the page on some devices

On some devices, such as Cupertino “Plus”-sized devices, scrolling left on the first page of a PageView will overshoot the first page and land on the second page.

The issue is that applyContentDimensions incorrectly detects a content size change due to a floating point comparison on certain screen sizes (18257.400000000005 vs 18257.4)

To fix this, perform a nearEqual comparison in applyContentDimensions.

* Apply style changes to nearEqual for code review feedback.
2017-11-14 14:34:43 -08:00
Hans Muller
53a2ec1bc9
Add support for baseline alignment to TextField (RenderEditable) (#13006) 2017-11-14 10:43:22 -08:00
Michael Goderbauer
736b414f13
Add text field content to semantics (#13000)
* Add text field content to semantics

* remove controller dup
2017-11-14 09:52:24 -08:00
Matt Sullivan
62ed4f5911 Fixed typo in navigator.dart doc comments (#12995) 2017-11-13 17:06:11 -08:00
Ian Hickson
9d0041c982
AnimatedAlign (#12871) 2017-11-13 11:31:15 -08:00
Greg Spencer
797b39e9b2
Creates a new flutter command 'ide-config' and removes *.iml and .idea from tree. (#12958)
Creates a new (hidden) flutter command 'ide-config' that will create and/or update
existing .iml files and some files under the .idea directory, as well as
removing existing *.iml files and the .idea directory.

It also:

 * Adds *.iml to the .gitignore
 * Removes existing .iml files from the repo, and moves them to the
   packages/flutter_tools/ide_templates/intellij directory.
 * Adds a flag to ide-config ('--update-templates') that will take any new .iml
   files in the flutter tree and add them to the existing templates.
     - If --overwrite is also specified, then all existing templates will also
       be overwritten with the contents from the flutter tree, and any that have
       been deleted from the flutter tree will also be removed from the
       templates.
 * Added new run configurations for all existing app targets that will now also
   be automatically added to IntelliJ.
 * Setting up the environment also includes setting the coding style guidelines
   and the git VCS.
 * Note that after this PR lands, Flutter developers will need to run it once to
   re-create the .iml files and configuration files that have been removed.

After this PR lands, .iml files will no longer appear in the untracked files
section for git.
2017-11-13 10:55:22 -08:00
amirh
c1d742b29f
Implement MultiFrameImageStreamCompleter - handles scheduling for animated image frames (#12955)
* Implement MultiFrameImageStreamCompleter

* only decode frames while there are active listeners

* review comments followup

* multiply animation frame timer duration by time dilation

* lint
2017-11-10 14:55:59 -08:00
Mikkel Nygaard Ravn
7298f9ca0b
Expose isMethodCall matcher in flutter_test (#12942) 2017-11-10 08:09:14 +01:00
Mikkel Nygaard Ravn
177e99b382
Support unpacking platform error events (#12938) 2017-11-09 17:16:48 +01:00
Alexandre Ardhuin
436aa93086
enable lint avoid_classes_with_only_static_members (#12602) 2017-11-09 07:12:36 +01:00
Greg Spencer
3541ad0a64
Add an UnconstrainedBox and factor out debug overflow indicator. (#12856)
UnconstrainedBox will allow its child to size itself as if it had no constraints, and then attempt to fit around that object, until its own constraints are exceeded, in which case it will clip and display an overflow warning.

I also factored out DebugOverflowIndicator, which will draw overflow indicators on containers which overflow but aren't expected to.
2017-11-08 20:15:06 -08:00