2592 Commits

Author SHA1 Message Date
Kris Giesing
2acc2f6f84 Back out irrelevant change 2015-11-16 16:26:42 -08:00
Kris Giesing
58df220ea4 Fix issue with forward-delete in editable text widget 2015-11-16 16:07:21 -08:00
Hixie
5e221334fa Fix some examples.
- drag and drop was using the wrong draggables (long press vs short
  press).

- navigation.dart wasn't using material correctly and so was ending up
  with some red text.

- piano wasn't followig our style guide even a little.

- date picker was not scrollable.
2015-11-16 15:54:40 -08:00
Collin Jackson
e3b9094f2a Fix #104 Support for setting HTTP headers 2015-11-16 14:10:58 -08:00
Hixie
309d25d4bb Move Material page animations to Material layer.
PageRoute is now MaterialPageRoute.

This also changes the following:

- Now the HeroController is a Navigator observer, rather than a feature
  of HeroPageRoutes, which are gone. This means heroes can work between
  any kind of ModalRoute now.

- ModalPageRoute is moved from modal_barrier.dart to routes.dart.

- It allows routes to opt-out of their modal barrier being a shortcut to
  popping the route.

- Features of PageRoute that aren't Material-specific get promoted to
  ModalRoute features: storage, the subtree key, offstageness...

The AnimatedModalBarrier is still a ModalRoute feature.
2015-11-16 12:53:12 -08:00
Hans Muller
8b1dd598e1 Merge pull request #376 from HansMuller/stocks_bug
Safely clear SnackBack and BottomSheet placeholders

Correct one stocks demo bug: displaying the stock symbol viewer (single tap on a row) while a BottomSheet or SnackBar was up, would assert.

Thep SnackBack and BottomSheet placeholder keys are cleared when they're obscured by a route with an opaque OverlayEntry. So in that case there's no need to try and clear the placeholder's child again.
2015-11-16 08:11:15 -08:00
Hans Muller
7955995f24 Safely clear SnackBack and BottomSheet placeholders 2015-11-13 16:13:35 -08:00
Adam Barth
fc2e31b8aa You should be able to nest Scaffolds
Prior to this patch, MultiChildLayoutDelegate couldn't be re-entered because it
cleared _idToChild when unwinding its stack. Now we restore the previous value
of _idToChild when we unwind.
2015-11-13 15:35:39 -08:00
John McCutchan
d1e62a39e2 Update four callers of Message constructor to pass in required arguments 2015-11-13 14:39:06 -08:00
Adam Barth
69e511d207 Cursor is tiny when there's no text in an input
Now we use a zero-width space to force the engine to resolve the font and tell
us how large the text is likely to be once there's text in the widget.

Fixes #302
2015-11-13 10:17:23 -08:00
Ian Hickson
fc5832dcdf Merge pull request #355 from Hixie/tap-bugs
Fix tapcancel on slop.
2015-11-12 22:22:42 -08:00
Ian Hickson
16471d92b9 Merge pull request #353 from Hixie/hit-testing-cleanup
Hit Testing Cleanup
2015-11-12 22:22:36 -08:00
Ian Hickson
876459e898 Merge pull request #354 from Hixie/more-debugging-for-listeners
More detailed debugging info for RenderPointerListener et al
2015-11-12 22:22:34 -08:00
Ian Hickson
c40cb176e3 Fix tapcancel on slop.
Make sure to send tapcancel when the primary pointer fails because of
slop, even if the gesture won by default.

Also, minor cleanup and clarification of an invariant.
2015-11-12 22:17:47 -08:00
Ian Hickson
1aa2751ba8 Trivial whitespace fixes. 2015-11-12 22:10:16 -08:00
Ian Hickson
c78e81f566 More detailed debugging info for RenderPointerListener et al
Elaborate on the debugging information exposed by
RenderPointerListener, Listener, and GestureDetector.
2015-11-12 21:22:38 -08:00
Ian Hickson
92b9d91af1 Hit Testing Cleanup
- Drop the unused BindingHitTestEntry class. (Well, it was
  constructed, but its member was never used, so it wasn't doing
  anything a boring old HitTestEntry couldn't already do.)

- Add toString()s to HitTestEntry and HitTestResult, to aid in
  debugging hit-test related code.
2015-11-12 20:57:08 -08:00
Adam Barth
679a423b3d Explicitly dispose heavy C++ objects
This patch calls dispose() explicitly on a number of heavy C++ objects so that
they can be eagerly finalized instead of waiting for GC.
2015-11-12 17:07:49 -08:00
Adam Barth
b628ff4051 Merge pull request #349 from abarth/reparent_data
Parent data not updated when reparenting using global keys
2015-11-12 16:58:57 -08:00
Adam Barth
35464f447b Parent data not updated when reparenting using global keys
When we reactivate a subtree that had a global key, we weren't updating the
parent data because:

1) The child wasn't in the tree when we updated the parent data element.
2) The activated child didn't go through mount (just through update).

This patch moves the parent data update work to when we attach the render
object, which we do both during mount and when reactivating a child.

Fixes #345
2015-11-12 16:51:56 -08:00
Hans Muller
45e1211677 Fix Dialog and PopupMenu completion logic 2015-11-12 16:31:24 -08:00
Ian Hickson
4a71f38224 Merge pull request #332 from Hixie/flutter-analyze
flutter analyze command
2015-11-12 12:28:48 -08:00
Hixie
a0227cab15 flutter analyze command
Other changes in this patch:
- Make the 'flutter' tool say "Updating flutter tool..." when it calls
  pub get, to avoid confusion about what the pub get output is about.
- Make the bash flutter tool call pub get when the revision has
  changed. (This was already happening on Windows.)
- Fix a raft of bugs found by the analyzer.
- Fix some style nits in various bits of code that happened to be near
  things the analyzer noticed.
- Remove the logic in "flutter test" that would run "pub get", since
  upon further reflexion it was determined it didn't work anyway.
  We'll probably have to add better diagnostics here and say to run the
  updater script.
- Remove the native velocity tracker script, since it was testing code
  that has since been removed.

Notes on ignored warnings:
- We ignore warnings in any packages that are not in the Flutter repo or
  in the author's current directory.
- We ignore various irrelevant Strong Mode warnings. We still enable
  strong mode because even though it's not really relevant to our needs,
  it does (more or less accidentally) catch a few things that are
  helpful to us.
- We allow CONSTANTS_LIKE_THIS, since we get some of those from other
  platforms that we are copying for sanity and consistency.
- We allow one-member abstract classes since we have a number of them
  where it's perfectly reasonable.
- We unfortunately still ignore warnings in mojom.dart autogenerated
  files. We should really fix those but that's a separate patch.
- We verify the actual source file when we see the 'Name non-constant
  identifiers using lowerCamelCase.' lint, to allow one-letter variables
  that use capital letters (e.g. for physics expressions) and to allow
  multiple-underscore variable names.
- We ignore all errors on lines that contain the following magic
  incantation and a "#" character:
    // analyzer doesn't like constructor tear-offs
- For all remaining errors, if the line contains a comment of the form
    // analyzer says "..."
  ...then we ignore any errors that have that "..." string in them.
2015-11-12 12:23:29 -08:00
Adam Barth
0259ad81db ItemBuilder should also get the index of the item
This seems useful for numbering the entries in the list, for example.

Fixes #328
2015-11-12 12:05:42 -08:00
Hans Muller
1aac53a500 showSnackBar() returns a Future, clears its placeholder
TransitionRoute completer is now optional.
2015-11-12 08:57:09 -08:00
Devon Carew
d057343b1b update double tap reference 2015-11-11 20:49:29 -08:00
Adam Barth
8a256abdde Merge pull request #321 from alhaad/fix_service_registry_handle
service_registry.dart should use the service registry handle instead of shell handle
2015-11-11 18:29:50 -08:00
Alhaad Gokhale
d0cfff1688 service_registry.dart should use the service registry handle instead of
shell handle.

R=@abarth,@tonygentilcore
2015-11-11 17:14:35 -08:00
Jim Beveridge
04501af955 Fixes assert connecting to Activity service under Linux
Fixes #313.
2015-11-11 17:10:26 -08:00
Hans Muller
5755b15bf5 Add a persistent bottom sheet to the stocks demo 2015-11-11 15:38:13 -08:00
Adam Barth
b1435e2973 Merge pull request #305 from abarth/input_layout
Give loose contraints to text inside input widget
2015-11-11 09:56:29 -08:00
Adam Barth
64a645352c Give loose contraints to text inside input widget
The input widget scrolls, so it should give its text loose constraints.  That
way the text ends up being its intrinsic size even if put in a context with
tight constraints.

Fixes #298
2015-11-11 09:37:01 -08:00
Hans Muller
7791acd81d Merge pull request #303 from HansMuller/bottom_sheet_test
Add a unit test for persistent bottom sheets

ShowBottomSheet now clears its placeholder after the bottom sheet has been dismissed.

Added support for generating fling gestures to WidgetTester.
2015-11-11 09:10:05 -08:00
Hans Muller
b4c3970319 Add a unit test for persistent bottom sheets 2015-11-11 08:49:50 -08:00
Jason Simmons
480c5ae4eb Receive pointer events through PointerPackets 2015-11-10 16:06:24 -08:00
Adam Barth
b1a17cb0f8 Fix remaining analyzer warnings
Constructor tear-offs aren't supported by the analyzer yet.
2015-11-10 14:12:15 -08:00
Adam Barth
c685cb804d Fix analyzer warnings in mojo_client.dart 2015-11-10 14:06:22 -08:00
Adam Barth
f0ebc2b0b1 Merge pull request #279 from abarth/faster_layout
Make layout_bench.dart 19% faster
2015-11-10 12:24:33 -08:00
Adam Barth
1d7cd6b7c0 Make layout_bench.dart 19% faster
Previously we would walk from every node in layout to the root to mark the root
as needing paint. Now we leave dirty bits throughout the tree so that we can
cut off the walk as soon as we find a dirty node.
2015-11-10 12:11:16 -08:00
Hans Muller
5e08b98e0d Refactor bottom sheet support, add a bottom sheet to the stocks demo
Factored OverlayRoute out of the modal and persistent bottom sheet clases, since the bottom sheet classes need to drive the performance.

Added a bottom sheet to the stocks demo: long-press on a stock shows a modal bottom sheet.

Made AnimatedModalBarrier public.
2015-11-10 11:27:17 -08:00
Florian Loitsch
c5427fb9a8 Minor doc fixes. 2015-11-09 18:57:10 -08:00
Collin Jackson
c3f55dcec2 Fix #104 by adding support for HTTP post using DataPipeFiller 2015-11-09 16:40:24 -08:00
Hans Muller
da4fbdd4ae Updated {} and fling dismiss Future value 2015-11-09 09:39:19 -08:00
Hans Muller
9cb8188a0c Support drag-to-dismiss in persistent bottom sheets 2015-11-09 08:36:19 -08:00
Devon Carew
3b9862a52c support older android devices (>= 16) 2015-11-07 21:55:21 -08:00
Adam Barth
eed20996ba Merge pull request #1999 from abarth/null_width_factor
Don't crash if no widthFactor is set in an unbounded context
2015-11-06 14:52:12 -08:00
Adam Barth
5ee721fe68 Merge pull request #1995 from abarth/startup_assert
We throw an exception if you tap the screen during load
2015-11-06 14:52:03 -08:00
Adam Barth
e4a14e5675 Don't crash if no widthFactor is set in an unbounded context 2015-11-06 13:16:45 -08:00
Adam Barth
060b34f700 We throw an exception if you tap the screen during load
Inside runApp, we were building the render tree for the app, but we weren't
calling layout, which meant we were running a hit test on a dirty tree. Now
hitTest specifically asserts that the tree is clean and we synchronously call
layout for your app during runApp.

Fixes #1960
2015-11-06 11:46:24 -08:00
Adam Barth
5cf258c49e Merge pull request #1989 from abarth/fix_heroes
Heroes don't reverse any more
2015-11-06 10:59:39 -08:00