190 Commits

Author SHA1 Message Date
Hixie
0a0a92eb45 Port stocks to fn3 and introduce an App component. 2015-09-25 17:52:33 -07:00
Adam Barth
93f1ba5dac Add Mimic to fn3 2015-09-25 16:43:22 -07:00
Adam Barth
24171915aa Fix indent 2015-09-25 15:43:03 -07:00
Adam Barth
e1b8f0b659 Add UniqueComponent helper for creating components with unique states 2015-09-25 15:36:25 -07:00
Adam Barth
ff5676952e Add an onScroll callback to Scrollable 2015-09-25 15:08:22 -07:00
Hixie
a765507c9d fn3: Port Card Collection demo
Also:

- Make Dismissable report when it starts squashing, since otherwise we
  don't invalidate the list early enough and it gets mad that it wasn't
  told one of its children had changed size.

- Have Dismissable check that it gets removed after it's dismissed, to
  avoid having lots of redundant widgets around.

- Start tracking the height of each child of a MixedViewport, so that we
  don't accumulate floating point errors when a child jiggles up and down.

- Have _childOffsets reuse its storage space rather than newing up a new
  copy each time we reset the cache.

- Avoid double-updating child sizes when handling mixed viewport invalidations.
2015-09-25 14:44:54 -07:00
Adam Barth
af8019bf69 Merge pull request #1355 from abarth/current_state
Add a currentWidget and currentState accessor to GlobalKeys
2015-09-25 14:22:39 -07:00
Adam Barth
80997a68d6 Add a currentWidget and currentState accessor to GlobalKeys 2015-09-25 14:22:22 -07:00
Adam Barth
3387bbaa37 Add ensureWidgetIsVisible to fn3 2015-09-25 14:21:12 -07:00
Adam Barth
d717be946a Add findRenderObject to BuildContext 2015-09-25 13:37:14 -07:00
Adam Barth
d19e86f0a9 Merge d8ea1b194b446f555402770acd8ac6b217becb7c to fn3 2015-09-25 11:57:30 -07:00
Andrew Wilson
75061728e6 Merge pull request #1342 from apwilson/fling
Add fling to Scrollable.
2015-09-25 11:18:53 -07:00
Andrew Wilson
d771927219 Add fling to Scrollable. 2015-09-25 11:15:24 -07:00
Adam Barth
96b0801c7b Merge pull request #1345 from abarth/fn3_more_tests
Port some more tests to fn3
2015-09-25 10:56:53 -07:00
Adam Barth
7d02880cf4 Port some more tests to fn3 2015-09-25 10:51:56 -07:00
Adam Barth
0768ea973e Merge pull request #1341 from abarth/fn3_editing
Port Input and EditableText to fn3
2015-09-25 10:51:31 -07:00
Hixie
5f9cb4aa38 Port ScrollableMixedWidgetListState to fn3. 2015-09-25 10:27:43 -07:00
Adam Barth
481b764f67 Port Input and EditableText to fn3 2015-09-25 10:08:29 -07:00
Adam Barth
fe77808d08 Copy Input and EditableText into fn3 2015-09-25 10:06:59 -07:00
Adam Barth
06ffa75919 Convert some tests to fn3 2015-09-25 09:29:04 -07:00
Adam Barth
b5893f9e13 Fix typos in fn3 2015-09-25 08:42:39 -07:00
Hixie
a3a238238a fn3: GlobalKey registration progress
Remove the "update" notification logic.
Hook the register/unregister functions. We're still not notifying.
2015-09-24 16:06:00 -07:00
Hixie
c3b3b71bed Rename ComponentState and use initState().
ComponentState becomes State, for brevity.
Instead of overriding its constructor, override initState().
This makes writing States much simpler.
2015-09-24 16:00:51 -07:00
Adam Barth
7dd26a7a5a Port some more examples to fn3 2015-09-24 15:43:40 -07:00
Adam Barth
9edd65502b Merge pull request #1330 from abarth/date_picker_example
Port Date Picker example to fn3
2015-09-24 14:52:30 -07:00
Hixie
b948967855 fn3: MixedViewport
Also:
- Expose the slot of each Element.
- Minor improvements to HomogeneousViewport.
- Replace TestComponent with FlipComponent in tests.
2015-09-24 14:52:13 -07:00
Adam Barth
cefbfa3bea Port Date Picker example to fn3 2015-09-24 14:46:29 -07:00
Adam Barth
878775bb89 Port big_switch.dart to fn3 2015-09-24 13:29:40 -07:00
Adam Barth
0206f1a65d Port PopupMenu to fn3
This changes how PopupMenu works slightly because there's no long an onPressed
callback on PopupMenuItem. Instead, callers should use showPopupMenu.
2015-09-24 12:57:50 -07:00
Adam Barth
82dd9d65df Port scaffold to fn3 2015-09-24 12:57:44 -07:00
Adam Barth
9f176fc86e Port widgets that depend on scrolling to fn3 2015-09-24 11:13:57 -07:00
Adam Barth
01f1351d3e Merge pull request #1321 from jamesr/update_for_sky_services_roll
Updates for change in Mojom dart enum generation
2015-09-24 10:42:36 -07:00
James Robinson
9809130029 Updates for change in Mojom dart enum generation 2015-09-24 10:35:20 -07:00
Adam Barth
2ce5a0c5bc Merge pull request #1319 from abarth/fn3_scrollable
Port most of scrollable.dart to fn3
2015-09-24 10:32:31 -07:00
Adam Barth
0d63d6b775 Port most of scrollable.dart to fn3 2015-09-24 10:26:27 -07:00
Adam Barth
8bcad76384 Port Focus and Navigator-based widgets to fn3 2015-09-24 09:36:08 -07:00
Adam Barth
93ae1f287e Port transitions.dart to fn3 2015-09-23 21:51:13 -07:00
Adam Barth
e7bc8f57d3 Merge pull request #1313 from abarth/fn3_drawer
Port some drawer and button widgets to fn3
2015-09-23 20:27:21 -07:00
James Robinson
7c854e121b Merge pull request #1317 from jamesr/roll_pubspec_and_mojo_sdk
Update to Mojo 4e4d51ce28a8edcb32b9c7f555e38e2ae84a825e, update deps
2015-09-23 17:58:54 -07:00
Ian Hickson
eb323dbedc Merge pull request #1315 from Hixie/PointerEventListenerCollision
Fix the minedigger game.
2015-09-23 17:34:55 -07:00
James Robinson
e854d7457d Update to Mojo 4e4d51ce28a8edcb32b9c7f555e38e2ae84a825e, update deps
This updates to mojo 4e4d51ce28a and mojo sdk 711a0bcfb141b4 and updates the sky
package's pubspec.yaml dependency to '>=0.1.0 <0.2.0' to be compatible with
the current mojo package. This includes an update to the Mojo Dart generator to
produce real classes for enums and the corresponding updates for users of the
KeyboardType enum in Sky as well as one scoped_ptr->std::unique_ptr in shell
corresponding to a change in the Mojo EDK.

When a new version of the sky and sky_services package are pushed this will fix
domokit/mojo#440.
2015-09-23 17:26:46 -07:00
Hixie
00d0a44f09 Fix the minedigger game.
Remove the Widgets framework's PointerEventListener definition now that
the Rendering layer has one. It was previously clashing in files that
imported both, which would result in it being hidden. Turns out
MineDigger is the only example that this affects.
2015-09-23 16:50:50 -07:00
Jeff Brown
307b1bfdbc Only pointers which are down should be tracked.
This change ensures that we only store the results of a hit
test on the initial pointer down event.  Moreover, we perform
new hit tests each time a hovering pointer moves.  This is
important to ensure correct behavior of input devices which can
hover, such as mice.

Previously the first hover movement after releasing a mouse
button would cause a new pointer state to be recorded along with
hit test results for wherever the pointer happened to be which
caused the following pointer down event to be delivered to the
wrong place.

Fixes issue #1189.
2015-09-23 16:48:14 -07:00
Hixie
ea45169083 fn3: Port HomogeneousViewport 2015-09-23 16:21:13 -07:00
Adam Barth
c734234631 Port some drawer and button widgets to fn3 2015-09-23 16:02:56 -07:00
Adam Barth
87107494c1 Port DragTarget to fn3 2015-09-23 15:44:40 -07:00
Adam Barth
ec92aca869 Port more widgets to fn3 2015-09-23 13:36:18 -07:00
Adam Barth
da2ee9129a Port some widgets to fn3 2015-09-23 11:26:55 -07:00
Hixie
6ea86b6a2f fn3: Listener
In this new world, Listener is just a wrapper around a node in the
render tree that hooks directly into the event handling logic.
2015-09-23 11:22:51 -07:00
Hixie
b3ebd4406b Expose _descendantRenderObject as 'renderer'
This allows people to use localToGlobal and company.
2015-09-23 11:13:45 -07:00