1. 17 Jun, 2020 1 commit
  2. 11 Jun, 2020 1 commit
  3. 31 May, 2020 1 commit
  4. 29 May, 2020 1 commit
    • liyuqian's avatar
      Add clipBehavior to widgets with clipRect (#55977) · cd593dae
      liyuqian authored
      * Add clipBehavior to RenderFlex
      
      * Add clipBehavior to FittedBox
      
      * Add clipBehavior to Flex and FittedBox
      
      * Add clipBehavior to UnconstrainedBox
      
      * Add clipBehavior to Stack and Wrap
      
      * Add clipBehavior to TextEditable
      
      * Add clipBehavior to ListWheelScrollView
      
      * Add clipBehavior to SingleChildScrollView
      
      * Add clipBehavior to RenderViewportBase's widgets
      
      Those widgets are NestedScrollView and ShrinkWrappingViewport.
      
      * Fix tests
      
      * Remove enum Overflow and fix typo
      
      * Remove clipToSize
      
      * Analyze fix
      
      * Remove Mixin and other small fixes
      
      * Fix tests and respect Stack's default clipBehavior
      
      * Add Overflow back to make it non-breaking
      
      * Restore clipBehavior to make it non-breaking
      
      * Small fixes
      
      * Fix rebase
      cd593dae
  5. 08 May, 2020 1 commit
  6. 08 Apr, 2020 1 commit
  7. 07 Jan, 2020 1 commit
  8. 27 Nov, 2019 1 commit
    • Ian Hickson's avatar
      License update (#45373) · 449f4a66
      Ian Hickson authored
      * Update project.pbxproj files to say Flutter rather than Chromium
      
      Also, the templates now have an empty organization so that we don't cause people to give their apps a Flutter copyright.
      
      * Update the copyright notice checker to require a standard notice on all files
      
      * Update copyrights on Dart files. (This was a mechanical commit.)
      
      * Fix weird license headers on Dart files that deviate from our conventions; relicense Shrine.
      
      Some were already marked "The Flutter Authors", not clear why. Their
      dates have been normalized. Some were missing the blank line after the
      license. Some were randomly different in trivial ways for no apparent
      reason (e.g. missing the trailing period).
      
      * Clean up the copyrights in non-Dart files. (Manual edits.)
      
      Also, make sure templates don't have copyrights.
      
      * Fix some more ORGANIZATIONNAMEs
      449f4a66
  9. 26 Nov, 2019 1 commit
  10. 16 Aug, 2019 1 commit
    • Yegor's avatar
      Teach render objects to reuse engine layers (#36402) · 34c69265
      Yegor authored
      Teach Layer and its implementations, RenderObject and its implementations, and PaintingContext to reuse engine layers. The idea is that a concrete RenderObject creates a Layer and holds on to it as long as it needs it (i.e. when it is composited, and the layer type does not change). In return, each Layer object holds on to an EngineLayer and reports it to the engine via addRetained and oldLayer. This allows the Web engine to reuse DOM elements across frames. Without it, each frame drops all previously rendered HTML and regenerates it from scratch.
      34c69265
  11. 01 Mar, 2019 1 commit
    • Alexandre Ardhuin's avatar
      Add missing trailing commas (#28673) · 387f8854
      Alexandre Ardhuin authored
      * add trailing commas on list/map/parameters
      
      * add trailing commas on Invocation with nb of arg>1
      
      * add commas for widget containing widgets
      
      * add trailing commas if instantiation contains trailing comma
      
      * revert bad change
      387f8854
  12. 21 Feb, 2019 1 commit
  13. 12 Sep, 2018 1 commit
  14. 23 Aug, 2018 1 commit
  15. 05 Jun, 2018 1 commit
  16. 07 Dec, 2017 1 commit
    • Ian Hickson's avatar
      Move image logic from services/ to painting/. (#13409) · 44e228eb
      Ian Hickson authored
      This allows the scheduler library to depend on the services library
      and the painting library to depend on the scheduler library without
      the services library having to depend on the scheduler library.
      
      While I was at it I also cleaned up some of the binding logic: the
      licenses logic can now be overridden (and the test library does so),
      and the image cache can now be overridden as well.
      44e228eb
  17. 02 Oct, 2017 1 commit
    • Adam Barth's avatar
      Add Alignment, which will replace FractionalOffset (#12342) · 2b126bcd
      Adam Barth authored
      Unlike FractionalOffset, Alignment uses the center as the zero of the
      coordinate system, which makes the RTL math work out much cleaner.
      
      Also, make FractionalOffset into a subclass of Alignment so that clients
      can continue to use FractionalOffset.
      2b126bcd
  18. 05 May, 2017 1 commit
  19. 02 May, 2017 1 commit
    • Ian Hickson's avatar
      Flush microtasks after transient callbacks are run. (#9702) · e8c46927
      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.
      e8c46927
  20. 19 Apr, 2017 1 commit
  21. 12 Apr, 2017 1 commit
    • Ian Hickson's avatar
      Move Point to Offset (#9277) · bf017b79
      Ian Hickson authored
      * Manually fix every use of Point.x and Point.y
      
      Some of these were moved to dx/dy, but not all.
      
      * Manually convert uses of the old gradient API
      
      * Remove old reference to Point.
      
      * Mechanical changes
      
      I applied the following at the root of the Flutter repository:
      
      git ls-files -z | xargs -0 sed -i 's/\bPoint[.]origin\b/Offset.zero/g'
      git ls-files -z | xargs -0 sed -i 's/\bPoint[.]lerp\b/Offset.lerp/g'
      git ls-files -z | xargs -0 sed -i 's/\bnew Point\b/new Offset/g'
      git ls-files -z | xargs -0 sed -i 's/\bconst Point\b/const Offset/g'
      git ls-files -z | xargs -0 sed -i 's/\bstatic Point /static Offset /g'
      git ls-files -z | xargs -0 sed -i 's/\bfinal Point /final Offset /g'
      git ls-files -z | xargs -0 sed -i 's/^\( *\)Point /\1Offset /g'
      git ls-files -z | xargs -0 sed -i 's/ui[.]Point\b/ui.Offset/g'
      git ls-files -z | xargs -0 sed -i 's/(Point\b/(Offset/g'
      git ls-files -z | xargs -0 sed -i 's/\([[{,]\) Point\b/\1 Offset/g'
      git ls-files -z | xargs -0 sed -i 's/@required Point\b/@required Offset/g'
      git ls-files -z | xargs -0 sed -i 's/<Point>/<Offset>/g'
      git ls-files -z | xargs -0 sed -i 's/[.]toOffset()//g'
      git ls-files -z | xargs -0 sed -i 's/[.]toPoint()//g'
      git ls-files -z | xargs -0 sed -i 's/\bshow Point, /show /g'
      git ls-files -z | xargs -0 sed -i 's/\bshow Point;/show Offset;/g'
      
      * Mechanical changes - dartdocs
      
      I applied the following at the root of the Flutter repository:
      
      git ls-files -z | xargs -0 sed -i 's/\ba \[Point\]/an [Offset]/g'
      git ls-files -z | xargs -0 sed -i 's/\[Point\]/[Offset]/g'
      
      * Further improvements and a test
      
      * Fix minor errors from rebasing...
      
      * Roll engine
      bf017b79
  22. 02 Feb, 2017 1 commit
  23. 09 Jan, 2017 1 commit
  24. 19 Nov, 2016 1 commit
  25. 16 Nov, 2016 1 commit
    • Ian Hickson's avatar
      Clean up some RenderObject layer stuff (#6883) · 15fb5c4c
      Ian Hickson authored
      More idiomatic use of constraints in performResize.
      
      Trivial fixes to comments.
      
      Make ProxyBox not use BoxParentData since it ignores the field.
      
      Make applyPaintTransform more helpful if you use a different ParentData
      subclass than RenderBox expects.
      
      Make debugAssertIsValid actually fulfill its contract in RenderObject as
      documented.
      
      Add a childBefore for symmetry (we already had childAfter).
      
      Fix the way we dump the child list when there's no children in a
      multichild render object.
      
      More asserts in the rendering test library.
      15fb5c4c
  26. 28 Sep, 2016 1 commit
    • Ian Hickson's avatar
      Fix globalToLocal and update spinning_mixed (#6035) · e01592a0
      Ian Hickson authored
      * globalToLocal was just broken when there was a rotation and a
        translation at the same time. This fixes that and adds a test.
      
      * update graphic used by spinning_mixed since the old one went 404.
      
      * simplify some of the code in the demo.
      
      * fix MatrixUtils.transformPoint to be consistent with how we transform
        points elsewhere.
      
      * stop transforming points elsewhere, just use
        MatrixUtils.transformPoint.
      
      * make the Widget binding handle not having a root element.
      
      * make the spinning_mixed demo update its widget tree.
      e01592a0
  27. 01 Jul, 2016 1 commit
  28. 08 Jun, 2016 1 commit
  29. 03 Jun, 2016 1 commit
  30. 31 May, 2016 1 commit
  31. 16 May, 2016 1 commit
    • Ian Hickson's avatar
      Make it possible to run tests live on a device (#3936) · 32527017
      Ian Hickson authored
      This makes it possible to substitute 'flutter run' for 'flutter test'
      and actually watch a test run on a device.
      
      For any test that depends on flutter_test:
      
      1. Remove any import of 'package:test/test.dart'.
      
      2. Replace `testWidgets('...', (WidgetTester tester) {`
            with `testWidgets('...', (WidgetTester tester) async {`
      
      3. Add an "await" in front of calls to any of the following:
          * tap()
          * tapAt()
          * fling()
          * flingFrom()
          * scroll()
          * scrollAt()
          * pump()
          * pumpWidget()
      
      4. Replace any calls to `tester.flushMicrotasks()` with calls to
         `await tester.idle()`.
      
      There's a guarding API that you can use, if you have particularly
      complicated tests, to get better error messages. Search for
      TestAsyncUtils.
      32527017
  32. 29 Apr, 2016 1 commit
  33. 22 Apr, 2016 1 commit
  34. 06 Apr, 2016 1 commit
  35. 24 Mar, 2016 1 commit
  36. 14 Mar, 2016 1 commit
  37. 04 Mar, 2016 1 commit
  38. 01 Feb, 2016 1 commit
  39. 16 Jan, 2016 1 commit
  40. 17 Dec, 2015 1 commit
    • Hixie's avatar
      Less tree walking for compositing bits updates. · ab01c7bf
      Hixie authored
      Use the same technique for updating compositing bits as layout and
      painting. This avoids walking the entire rendering tree when all you
      need to update is a small subtree.
      ab01c7bf