- 21 Sep, 2017 1 commit
-
-
Alexandre Ardhuin authored
-
- 14 Sep, 2017 1 commit
-
-
Carlo Bernaschina authored
-
- 31 Aug, 2017 1 commit
-
-
Devon Carew authored
* Revert "Revert "fire service protocol events for frames (#11565)" (#11727)" This reverts commit f25e2f52. * move the postEvent() call into a separate method
-
- 22 Aug, 2017 2 commits
-
-
Devon Carew authored
This reverts commit 5f9acc41.
-
Devon Carew authored
-
- 04 Aug, 2017 1 commit
-
-
Ian Hickson authored
It was previously possible for event dispatch to occurr during the brief window where the tree had been marked dirty but before it had been relaid out by reassemble, which would cause assertions to fire if someone did a hot reload while touching the device.
-
- 27 Jul, 2017 2 commits
-
-
Devon Carew authored
This reverts commit 4b4cabb7.
-
Devon Carew authored
* fire service protocol extension events for frames * start time in micros * introduce a profile() function; only send frame events when in profile (or debug) modes * moved the profile() function to foundation/profile.dart * refactor to make the change more testable; test the change * fire service protocol events by listening to onFrameInfo * remove the frame event stream; add a devicelab test * remove a todo * final
-
- 21 Jul, 2017 1 commit
-
-
Ian Hickson authored
Mainly, this adds documentation to members that were previously lacking documentation. It also adds a big block of documentation about improving performance of widgets. This also removes some references to package:collection and adds global setEquals and listEquals methods in foundation that we can use. (setEquals in particular should be much faster than the package:collection equivalent, though both should be faster as they avoid allocating new objects.) All remaining references now qualify the import so we know what our remaining dependencies are. Also lots of code reordering in Flutter driver to make the code consistent and apply the style guide more thoroughly.
-
- 19 Jul, 2017 1 commit
-
-
Ian Hickson authored
-
- 21 Jun, 2017 3 commits
-
-
Jacob Richman authored
* Revert "Revert "Change all ocurrences of '$runtimeType#$hashCode' to use the idAndType method. (#10871)" (#10880)" This reverts commit ceb814aa.
-
Jacob Richman authored
Revert "Change all ocurrences of '$runtimeType#$hashCode' to use the idAndType method. (#10871)" (#10880) This reverts commit d46e208b.
-
Jacob Richman authored
* Change all instances of '$runtimeType#$hashCode' to use the describeIdentity method. The describeIdentity method generates a shorter description with a consistent length consisting of the runtime type and the a 5 hex character long truncated version of the hash code.
-
- 02 Jun, 2017 1 commit
-
-
Ian Hickson authored
This prevents some of our mixins from being subclassed. Also, move mixins to using 'extends' instead of 'implements' for future compatibility with Dart changes. Also, rename a class that had Mixin in the name but was not a mixin.
-
- 12 May, 2017 1 commit
-
-
Adam Barth authored
Previously, we would strand the old route in the overlay even though it had been removed from the history.
-
- 05 May, 2017 1 commit
-
-
Ian Hickson authored
-
- 02 May, 2017 1 commit
-
-
Ian Hickson authored
This splits the frame pipeline into two, beginFrame and drawFrame. As part of making this change I added some debugging hooks that helped debug the issues that came up: * I added debugPrintScheduleFrameStacks which prints a stack whenever a frame is actually scheduled, so you can see why frames are being scheduled. * I added some toString output to EditableText and RawKeyboardListener. * I added a scheduler_tester.dart library for scheduler library tests. * I changed the test framework to flush microtasks before pumping. * Some asserts that had the old string literal form were replaced by asserts with messages. I also fixed a few subtle bugs that this uncovered: * setState() now calls `ensureVisualUpdate`, rather than `scheduleFrame`. This means that calling it from an AnimationController callback does not actually schedule an extra redundant frame as it used to. * I corrected some documentation.
-
- 28 Apr, 2017 1 commit
-
-
Adam Barth authored
This patch finishes documenting all the symbols except for those related to scrolling.
-
- 19 Apr, 2017 1 commit
-
-
Adam Barth authored
Turns out we have many immutable classes. Fixes #6892
-
- 15 Apr, 2017 1 commit
-
-
Ian Hickson authored
With this patch, you can do: ```dart Future<Null> foo() async { try { await controller.forward().orCancel; await controller.reverse().orCancel; await controller.forward().orCancel; } on TickerCanceled { // did not complete } } ``` ...in a State's async method, and so long as you dispose of the controller properly in your dispose, you'll have a nice way of doing animations in sequence without leaking the controller. try/finally works as well, if you need to allocate resources and discard them when canceled. Simultaneously, you can do: ```dart Future<Null> foo() async { await controller.forward().orCancel; await controller.reverse().orCancel; await controller.forward().orCancel; } ``` ...and have the same effect, where the method will just silently hang (and get GC'ed) if the widget is disposed, without leaking anything, if you don't need to catch the controller being killed. And all this, without spurious errors for uncaught exceptions on controllers.
-
- 07 Apr, 2017 1 commit
-
-
Alexandre Ardhuin authored
-
- 17 Mar, 2017 2 commits
-
-
Michael Goderbauer authored
Fixes #7793.
-
Alexandre Ardhuin authored
-
- 15 Mar, 2017 1 commit
-
-
Adam Barth authored
Also, add a few other random dartdocs that I encountered along the way.
-
- 08 Mar, 2017 1 commit
-
-
Alexandre Ardhuin authored
-
- 04 Mar, 2017 1 commit
-
-
Chris Bracken authored
Covers lib/ in package:flutter.
-
- 02 Feb, 2017 1 commit
-
-
Ian Hickson authored
This allows us, for example, to wait for the slow mode banner to have been removed from the screen before triggering a screen shot.
-
- 13 Jan, 2017 1 commit
-
-
Adam Barth authored
Previously, the ticker would not stop when it was muted because it thought it was already not ticking.
-
- 06 Jan, 2017 1 commit
-
-
Ian Hickson authored
The assert helped me debug an issue recently. The TODO is obsolete.
-
- 29 Nov, 2016 1 commit
-
-
Hans Muller authored
-
- 24 Nov, 2016 1 commit
-
-
Chris Bracken authored
Q: What happens if we set time dilation to zero? A: It would be bad.
-
- 19 Nov, 2016 1 commit
-
-
Ian Hickson authored
-
- 17 Nov, 2016 1 commit
-
-
Ian Hickson authored
(and minor doc changes) This will in the future allow Scrollable to not track the Simulation itself.
-
- 01 Nov, 2016 1 commit
-
-
Chris Bracken authored
-
- 26 Sep, 2016 1 commit
-
-
Ian Hickson authored
This requires all AnimationController objects to be given a TickerProvider, a class that can create the Ticker. It also provides some nice mixins for people who want to have their State provide a TickerProvider. And a schedulerTickerProvider for those cases where you just want to see your battery burn. Also, we now enforce destruction order for elements.
-
- 08 Sep, 2016 1 commit
-
-
Ian Hickson authored
Previously, pumpWidget() would do a partial pump (it didn't trigger Ticker callbacks or post-frame callbacks), and pump() would do a full pump. This patch brings them closer together. It also makes runApp run a full actual frame, rather than skipping the transient callback part of the frame logic. Having "half-frames" in the system was confusing and could lead to bugs where code expecting to run before the next layout pass didn't because a "half-frame" ran first. Also, make Tickers start ticking in the frame that they were started in, if they were started during a frame. This means we no longer spin a frame for t=0, we jump straight to the first actual frame. Other changes in this patch: * rename WidgetsBinding._runApp to WidgetsBinding.attachRootWidget, so that tests can use it to more accurately mock out runApp. * allow loadStructuredData to return synchronously. * make handleBeginFrame handle not being given a time stamp. * make DataPipeImageProvider.loadAsync protected (rather than private), and document it. There wasn't really a reason for it to be private. * fix ImageConfiguration.toString. * introduce debugPrintBuildScope and debugPrintScheduleBuildForStacks, which can help debug problems with widgets getting marked as dirty but not cleaned. * make debugPrintRebuildDirtyWidgets say "Building" the first time and "Rebuilding" the second, to make it clearer when a widget is first created. This makes debugging widget lifecycle issues much easier. * make debugDumpApp more resilient. * debugPrintStack now takes a label that is printed before the stack. * improve the banner shown for debugPrintBeginFrameBanner. * various and sundry documentation fixes
-
- 07 Sep, 2016 1 commit
-
-
Ian Hickson authored
Previously, if a StatefulWidget was marked dirty, then removed from the build, then reinserted using the exact same widget under a widget under a LayoutBuilder, it wouldn't rebuild. This fixes that. It also introduces an assert that's supposed to catch SizeObserver-like behaviour. Rather than make this patch even bigger, I papered over two pre-existing bugs which this assert uncovered (and fixed the other problems it found): https://github.com/flutter/flutter/issues/5751 https://github.com/flutter/flutter/issues/5749 We should fix those before 1.0 though.
-
- 29 Aug, 2016 1 commit
-
-
Ian Hickson authored
1: If a route is already dismissed when it's popped, there's no point trying to animate heroes, because it's going to be gone before the heroes code can look at it. 2: If a hero animation finishes just as a new one is starting, we previously blew away the state for the starting one. Now we correctly segregate the "starting up quest" variables from the "actively ongoing quest" variables.
-
- 03 Aug, 2016 1 commit
-
-
Ian Hickson authored
Adds Scheduler.debugPrintTransientCallbackRegistrationStack so that you can find out how your current callback got registered.
-
- 29 Jul, 2016 1 commit
-
-
Ian Hickson authored
And make Scrollbar work with LazyBlock. And an about box to the Stocks sample app.
-