1. 21 Sep, 2017 1 commit
  2. 12 Sep, 2017 1 commit
  3. 11 Sep, 2017 1 commit
  4. 28 Aug, 2017 1 commit
  5. 23 Aug, 2017 1 commit
  6. 03 Aug, 2017 1 commit
  7. 27 Jul, 2017 1 commit
    • Ian Hickson's avatar
      Increase the touch slop. (#11419) · 87445e59
      Ian Hickson authored
      It was 8.0. It's now arbitrarily 18.0.
      
      Changing this required adjusting some tests. Adjusting the tests
      required debugging the tests. Debugging the tests required some tools
      to help debugging gesture recognizers and gesture arenas, so I added
      some. It also required updating some toString() methods which resulted
      in some changes to the tree diagnostics logic.
      
      Also I cleaned up some docs while I was at it.
      87445e59
  8. 25 Jul, 2017 1 commit
  9. 21 Jul, 2017 1 commit
    • Ian Hickson's avatar
      Add documentation and clean up code. (#11330) · 8f56f6fd
      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.
      8f56f6fd
  10. 19 Jul, 2017 1 commit
  11. 30 Jun, 2017 1 commit
  12. 20 Jun, 2017 1 commit
    • Ian Hickson's avatar
      Text selection handles track scrolled text fields (#10805) · 6d32b339
      Ian Hickson authored
      Introduce CompositedTransformTarget and CompositedTransformFollower
      widgets, corresponding render objects, and corresponding layers.
      
      Adjust the way text fields work to use this.
      
      Various changes I needed to debug the issues that came up.
      6d32b339
  13. 16 Jun, 2017 1 commit
  14. 09 Jun, 2017 1 commit
  15. 06 May, 2017 1 commit
  16. 05 May, 2017 1 commit
  17. 02 May, 2017 1 commit
  18. 04 Mar, 2017 1 commit
  19. 13 Feb, 2017 1 commit
  20. 25 Jan, 2017 2 commits
    • Ian Hickson's avatar
      Sliver Padding (#7628) · 9ff2e978
      Ian Hickson authored
      9ff2e978
    • Ian Hickson's avatar
      Factor out debugPaintPadding and test it (#7598) · 58348612
      Ian Hickson authored
      I plan to use this to implement similar logic in SliverPadding.
      
      To make this easier to test I extended the paints matcher to accept a
      function that takes a canvas. While I was at it I also made it accept
      a Finder, it'll go and find the render object for you.
      
      Also added support for paints..path and fixed some grammar in the
      error messages.
      
      Also improved the docs for debugPaint*.
      58348612
  21. 29 Nov, 2016 1 commit
  22. 07 Nov, 2016 1 commit
  23. 16 Aug, 2016 2 commits
  24. 08 Jun, 2016 1 commit
  25. 27 May, 2016 1 commit
  26. 03 May, 2016 1 commit
  27. 19 Apr, 2016 1 commit
    • Ian Hickson's avatar
      Refactor service extensions (#3397) · 261923e5
      Ian Hickson authored
      Bindings now have a debugRegisterServiceExtensions() method that is
      invoked in debug mode (only). (Once we have a profile mode, there'll be
      a registerProfileServiceExtensions() method that gets called in that
      mode only to register extensions that apply then.)
      
      The BindingBase class provides convenience methods for registering
      service extensions that do the equivalent of:
      
      ```dart
      void extension() { ... }
      bool extension([bool enabled]) { ... }
      double extension([double extension])  { ... }
      Map<String, String> extension([Map<String, String> parameters]) { ... }
      ```
      
      The BindingBase class also itself registers ext.flutter.reassemble,
      which it has call a function on the binding called
      reassembleApplication().
      
      The Scheduler binding now exposes the preexisting
      ext.flutter.timeDilation.
      
      The Renderer binding now exposes the preexisting ext.flutter.debugPaint.
      
      The Renderer binding hooks reassembleApplication to trigger the
      rendering tree to be reprocessed (in particular, to fix up the
      optimisation closures).
      
      All the logic from rendering/debug.dart about service extensions is
      replaced by the above.
      
      I moved basic_types to foundation.
      
      The FlutterWidgets binding hooks reassembleApplication to trigger the
      widget tree to be entirely rebuilt.
      
      Flutter Driver now uses ext.flutter.driver instead of
      ext.flutter_driver, and is hooked using the same binding mechanism.
      Eventually we'll probably move the logic into the Flutter library so
      that you just get it without having to invoke a special method first.
      261923e5
  28. 29 Mar, 2016 1 commit
  29. 07 Mar, 2016 1 commit
  30. 04 Mar, 2016 1 commit
  31. 12 Feb, 2016 1 commit
  32. 11 Feb, 2016 1 commit
    • Ian Hickson's avatar
      Clean up imports and exports. · a94999ba
      Ian Hickson authored
      Each layer is supposed to reexport the parts of the previous layer
      that are part of its API.
      
      - In painting.dart, export from dart:ui all the Canvas-related APIs
        that make sense to be used at higher levels, e.g. PaintingStyle.
      
      - Delete painting/shadows.dart. It was dead code.
      
      - In rendering/object.dart, export all of painting.dart.
      
      - In widgets/basic.dart, export all of painting.dart and
        animation.dart. Some classes in animation/ are renamed to make this
        less disruptive and confusing to the namespace.
      
      - Split out Stocks back into an import model rather than a part model,
        so that it's easier to manage its dependencies on a per-file basis.
      
      - Move Ticker to scheduler library.
      
      - Remove as many redundant imports as possible now.
      
      - Some minor nit picking cleanup in various files.
      a94999ba
  33. 09 Feb, 2016 1 commit
  34. 04 Feb, 2016 1 commit
  35. 27 Jan, 2016 1 commit
  36. 09 Jan, 2016 1 commit
  37. 08 Jan, 2016 1 commit
    • Adam Barth's avatar
      Optimize repainting in Scaffold · ee88a685
      Adam Barth authored
      Previously, we triggered a layout (and hence a repaint) when sliding the
      draw because we gave the draw loose constraints. The drawer uses an
      Align to move itself to the proper side of the screen, so it can have
      tight constraints, which makes it a layout boundary.
      
      Also, don't trigger a layout just because the Scaffold rebuilds. There
      isn't any state in the scaffold custom layout, so it doesn't need to
      repaint just because we created a new instance of the delegate.
      
      Finally, add the debugging infrastructure I used to find these issues.
      ee88a685
  38. 15 Dec, 2015 1 commit
    • Hixie's avatar
      Catch exceptions in pointer handling · 4e23ecd6
      Hixie authored
      If we don't catch these exceptions, we get confused about what's going
      on with the pointers, and the app basically stops working.
      4e23ecd6