1681 Commits

Author SHA1 Message Date
Ian Hickson
4cc6c900ea Merge pull request #1657 from Hixie/debugging
Reduce latency of low-volume debugPrint output
2015-10-18 14:51:44 -07:00
Hixie
6c7fcefe11 Enable Positioned to be animated.
Add a AnimatedRelativeRectValue class for animating RelativeRects.

Add a PositionedTransition class for animating Positioned using
AnimatedRelativeRectValues.

Add a test for PositionedTransition.

Fix a math bug a RelativeRect found by the test.

Fix a logic bug in the two ParentDataWidget classes found by the test.
Specifically, they were marking the child dirty, rather than the parent.
The parentData is for the parent's layout, not the child's, so they have
to mark the parent dirty. (I didn't hoist this up to the superclass
because ParentData could be used for painting, hit testing,
accessibility, or any number of other things, and I didn't want to bake
in the assumption that it needed markNeedsLayout.)
2015-10-17 19:06:42 -07:00
Hixie
33e6a76949 toString()ify more stuff
- truncate pixel values to 1dp since there's really no point being told
  the Size is 302.98732587287 by 648.28498579187.

- describe more Widgets so that debugDumpApp() is more useful.

- remove bufferValue from ProgressIndicator (cc @hansmuller) since it's
  not yet implemented.

- half-hearted toString() for ThemeData. There's no point making a
  complete one, since it would cause line-wrap even on big monitors in
  debugDumpApp dumps, and you can easily get the actual values from a
  debugging if that's the issue.

- flesh out BoxConstraints.toString() so that fully unconstrained and
  fully infinite constraints are called out explicitly. I experimented
  with adding even more special cases, e.g. calling out unconstrained
  widths with fixed heights, etc, but it made the output less readable.

- remove a redundant _updateVariable() in AnimatedContainer (cc
  @abarth).

- add more information to RenderView.toString().
2015-10-17 17:55:17 -07:00
Hixie
a5d69d7008 Reduce latency of low-volume debugPrint output
If we haven't printed anything for a second, then reset the count of how
much we've printed.

I also reduced the amount of data to ~16kb until we pause because I saw
some corruption even pausing 1 second every ~32kb. (Numbers are
approximate because we're counting UTF-16 characters and some of the
characters in the output are multiple bytes in UTF-8.)
2015-10-17 16:43:22 -07:00
Ian Hickson
b6de7cb119 Merge pull request #1653 from Hixie/debugging
Sundry debugging aids and fixes
2015-10-16 19:27:51 -07:00
Hixie
c412c31646 RelativeRect
Introduce a class that can describe the metrics used in a Positioned
widget, to enable easier manipulation and storage of the values, e.g.
for animation purposes.
2015-10-16 17:01:39 -07:00
Hixie
a4acd46ba4 Sundry debugging aids and fixes
(These are all the debugging-related fixes and trivial typo fixes that I
extracted out of my heroes branch.)

Fix rendering.dart import order.

Introduce a debugLabel for Performances so that when you create a
performance, you can tag it so that if later you print it out, you can
figure out which performance it is.

Allow the progress of a PerformanceView to be determined (but not set).

Allow subclasses of PerformanceView that are constants to be created by
defining a constant constructor for PerformanceView.

Introduce a debugPrint() method that throttles its output. This is a
test to see if it resolves the problems people have been having with
debugDumpRenderTree() et al having their output corrupted on Android. It
turns out (according to some things I read On The Internets) that
Android only has a 64KB kernel buffer for its logs and and if you output
to it too fast, it'll drop data on the floor. If this does in fact
reliably resolve this problem, we should probably move the fix over to
C++ land (where "print" is implemented) so that any use of print is
handled (avoiding the interleaving problem we have now if you use both
debugPrint() and print()).

Fix a bug with the debugging code for "size". In the specific case of a
RenderBox having a parent that doesn't set parentUsesSize, then later
the parent setting parentUsesSize but the child having its layout
short-circuited (e.g. because the constraints didn't change), we didn't
update the _DebugSize object to know that now it's ok that the size be
used by the parent, and we'd assert.

Also, allow a _DebugSize to be used to set the size of yourself.
Previously you could only set your size from a regular Size or from your
child's _DebugSize.

Add more debugging information to various Widgets where it might be
helpful.

Make GlobalKey's toString() include the runtimeType so that when
subclassing it the new class doesn't claim to be a GlobalKey instance.

Include the Widget's key in the Element's description since we don't
include it in the detailed description normally (it's in the name part).

Fix a test that was returning null from a route.
2015-10-16 16:41:56 -07:00
Hans Muller
043224b6f9 Merge pull request #1651 from HansMuller/fix_scrollable_tabs
Fix scrollable tabs, add basic unit test
2015-10-16 15:49:22 -07:00
Hans Muller
58c929003e Fix scollable tabs, add basic unit test 2015-10-16 15:10:26 -07:00
Hixie
f361fdcd91 Release process rev number updates for stage two 2015-10-16 14:44:02 -07:00
Hixie
f235719020 Rev sky_engine and sky_services. 2015-10-16 11:23:58 -07:00
Hans Muller
068ab33911 OMG I've been running with checking turned off. Fixed scrollbar assertion failures. 2015-10-16 10:14:26 -07:00
Matt Perry
5cf97f8fbe Remove UpdateService from activity.mojom.
It was moved to update_service.mojom.
2015-10-16 11:14:14 -04:00
Adam Barth
8d173616aa Rationalize exports a bit more
The goal is to follow the guidelines in
https://github.com/flutter/engine/blob/master/sky/specs/style-guide.md#packages

Fixes #1638
2015-10-16 00:09:00 -07:00
Ian Hickson
c16b8efb95 Merge pull request #1641 from flutter/Hixie-patch-1
Describe conventions around exporting APIs
2015-10-15 22:42:31 -07:00
krisgiesing
b0c02407cf Merge pull request #1633 from krisgiesing/event_exports
Export new InputEvent classes from appropriate places
2015-10-15 17:50:02 -07:00
Ian Hickson
5d496d2d77 Describe conventions around exporting APIs
Fixes #1634.
2015-10-15 16:29:18 -07:00
Hans Muller
251dd27500 Revised LinearGradient ctor checking.
It's OK to just specify the colors list.
2015-10-15 15:46:03 -07:00
krisgiesing
fb6143da0f Merge pull request #1617 from krisgiesing/arena_sweep
Arena sweep
2015-10-15 13:08:34 -07:00
Jason Simmons
9ccb5fa917 Merge pull request #1610 from jason-simmons/slice_border_warning
Fix warnings seen when running skyanalyzer in strong mode
2015-10-15 12:59:28 -07:00
Hixie
8c24f976db Improve debugging output
Teach dumpRenderTree() to draw actual trees.
Make the TextStyle output terser so it doesn't overflow the output.
Make debugDumpApp() say what mode we're in (checked vs release).
Hide lifecycle state from release mode dumps (since it's checked-only state).
2015-10-15 11:23:23 -07:00
Jason Simmons
94fa673029 Fix warnings seen when running skyanalyzer in strong mode 2015-10-15 10:56:03 -07:00
Kris Giesing
c14ac38cb2 Export new InputEvent classes from appropriate places 2015-10-15 10:29:09 -07:00
Adam Barth
0bc96df174 Fix TextDecoration.lineThrough
We had a typo in our CSS translation.
2015-10-14 21:30:00 -07:00
Jason Simmons
ee5cc63143 Merge pull request #1615 from jason-simmons/edit_text_action_button_2
Implement better synchronization between the state of the input widget and the keyboard IME
2015-10-14 17:36:33 -07:00
Adam Barth
cfb9b58591 Merge pull request #1624 from abarth/list_item
Add a ListItem widget
2015-10-14 17:03:32 -07:00
Kris Giesing
5766e68063 Add release semantics, add test 2015-10-14 17:03:26 -07:00
Adam Barth
b7aa91d13e Add a ListItem widget 2015-10-14 16:33:31 -07:00
Ian Hickson
478bc5fd55 Merge pull request #1621 from Hixie/transform-alignment
Transform alignment
2015-10-14 15:50:52 -07:00
James Robinson
1dcecefb40 Merge pull request #1619 from jamesr/trim_mojo_dart
Remove unused code in //mojo/dart, we only want //mojo/dart/embedder
2015-10-14 15:33:22 -07:00
Hixie
04ddf92909 Transform alignment
For those times where you want to spin something around a point relative
to the size of your box, but you don't know the size of your box.
2015-10-14 15:30:56 -07:00
Jason Simmons
ab9de69856 Implement better synchronization between the state of the input widget and the keyboard IME
Also add an input widget API for the keyboard submit button
2015-10-14 15:19:46 -07:00
James Robinson
050de596d0 Remove unused code in //mojo/dart, we only want //mojo/dart/embedder 2015-10-14 14:32:05 -07:00
Kris Giesing
9921f377de Merge remote-tracking branch 'upstream/master' into arena_sweep 2015-10-14 13:39:30 -07:00
krisgiesing
37226db237 Merge pull request #1605 from krisgiesing/events-merge
Add dart-layer input event abstraction
2015-10-14 13:36:07 -07:00
John McCutchan
9786222d91 Merge pull request #1616 from johnmccutchan/roll_dart_2
Roll Dart runtime forward to 6aab1cecb25f8e04087320f2082336073628afb4
2015-10-14 13:31:11 -07:00
John McCutchan
c8d790b900 Roll Dart runtime forward to 6aab1cecb25f8e04087320f2082336073628afb4
Roll Dart runtime forward to:

6aab1cecb25f8e04087320f2082336073628afb4

Roll Observatory pub packages to:

5c199c5954146747f75ed127871207718dc87786

---

Update to new isolate create callback signature.
2015-10-14 13:27:05 -07:00
Kris Giesing
6883143803 Refactor to move conversion into the binding class 2015-10-14 13:09:51 -07:00
Ian Hickson
496708b0e4 Update style-guide.md 2015-10-14 12:50:24 -07:00
Jason Simmons
602a72acf4 Update the package versions of flutter and flutter_sprites 2015-10-14 12:20:58 -07:00
Jason Simmons
88c9515af1 Increment the version numbers of sky_engine and sky_services 2015-10-14 11:15:28 -07:00
Jason Simmons
795c23b036 Merge pull request #1604 from jason-simmons/mojo_merge_client_part3
Update to mojo 1292152bf533de1bfebf5966d6246e149f87add3
2015-10-14 11:03:25 -07:00
Hixie
5afa5dec55 Write down some unwritten rules of Flutter development. 2015-10-14 09:58:29 -07:00
Hans Muller
9cbb830991 Added Painter, ScrollingListPainter, MaterialScrollbarPainter
Enabled displaying a scrollbar in ScrollingLists. The scrollbar is painted as an "overlay", i.e. it's painted on top of the scrolling list's visible children.

Added an abstract Painter base class that encapsulates a paint method and the renderer that it's attached to. RenderBlockViewport and HomogenousViewport now support an overlayPainter property. If specified, RenderBlockViewport attaches itself to the overlayPainter when it's attached to the rendering tree. RenderBlockViewport now calls overlayPainter.paint() after it has painted its children.

Added an abstract ScrollingListPainter class that exposes ScrollingList's state which might be needed for painting. Like its scroll direction and scrollOffset. The ScrollingListPainter is notified when a scroll starts and ends.

Defined a Material-specific ScrollingListPainter that renders a scrollbar. The scrollbar thumb is faded in/out when the scroll starts/ends.

Added onScrollStart and onScrollEnd listeners to Scrollable.
2015-10-14 07:59:41 -07:00
Kris Giesing
f50b00ff14 Address more comments 2015-10-13 17:32:04 -07:00
Kris Giesing
76963678d3 Address comments 2015-10-13 16:57:40 -07:00
Adam Barth
10c2146189 Rev pub packages 2015-10-13 16:52:01 -07:00
Adam Barth
b80ecbf1de Rev pub packages 2015-10-13 16:46:47 -07:00
Kris Giesing
093e8b5650 Add hold and sweep semantics to gesture arena 2015-10-13 16:00:15 -07:00
Kris Giesing
9d3230e582 Merge remote-tracking branch 'upstream/master' into events-merge 2015-10-13 15:35:45 -07:00