1. 19 Oct, 2017 1 commit
  2. 18 Oct, 2017 1 commit
    • Michael Goderbauer's avatar
      Redesign Semantic Tree Compilation Algorithm (#12605) · f8a2bd20
      Michael Goderbauer authored
      * Oct 12 10:12am
      
      * implicit_semantics_test.dart passes
      
      * refactoring
      
      * works in nice
      
      * minor rename
      
      * more doc comments
      
      * to be explicit check better
      
      * fix test
      
      * ++
      
      * ++
      
      * semantics_9_test (BlockSemantics) and implicit_semantics_test are passing
      
      * doc updates
      
      * tiny refactor
      
      * fix static errors in tests
      
      * fix gesture detector
      
      * ++
      
      * ++
      
      * geometry
      
      * ++
      
      * remove noGeometry
      
      * revert test
      
      * +
      
      * all tests but scrolling/clipping pass
      
      * clipping works
      
      * scrolling halfway
      
      * sliver tests pass
      
      * ALL TESTS PASS
      
      * SemanticsNode changed
      
      * docs and tiny fixes
      
      * card test
      
      * more doc comments
      
      * remove missed print
      
      * more tests
      
      * make test pass on Linux
      
      * remove changes to intellij proj file
      
      * review comments
      f8a2bd20
  3. 14 Oct, 2017 2 commits
  4. 11 Oct, 2017 1 commit
  5. 06 Oct, 2017 2 commits
  6. 03 Oct, 2017 1 commit
  7. 02 Oct, 2017 2 commits
    • gspencergoog's avatar
      Add framework support for system text scale factor. (#12180) · 18f0d3ae
      gspencergoog authored
      * Add framework-side support for system text scale factor.
      
      * Rolling engine to e3404b81a53ba3180c7623a6f2190ebb28518f30
        Additional changes rolled in with engine change:
          libtxt: implementation of GetRectsForRange that processes a line at a time - e3404b8
          Provide an entropy source to the Dart engine (#4161) - e1aa867
          libtxt: search for fallback fonts that can match emoji and CJK characters - 8061df1
          Roll skia to e4679fa06a. (#4157) - 267e7a8
          Update buildroot to 53fea9aebbcc39c6522731471a1a45960ee0685e (#4160) - 02ea7ae
          Revert engine Dart roll. (#4158) - 14aab33
          Add support for system text scale factor. (#4124) - b2a7f4b
          Include _http into sky_engine libraries for analyzer (#4154) - b930f10
          libtxt: Remove postprocess_line and improve tracking of X offsets - 86f95f0
          libtxt: remove redundant line_widths (#4152) - 14bf515
          Roll dart to ade37f931e90b0fdb8fe16d6bf6f089545da55b6 (#4151) - 6f1264f
      18f0d3ae
    • Adam Barth's avatar
      Replace usage of FractionalOffset with Alignment (#12348) · 0044ea2d
      Adam Barth authored
      Alignment will eventually replace FractionalOffset.
      0044ea2d
  8. 27 Sep, 2017 1 commit
  9. 26 Sep, 2017 1 commit
  10. 25 Sep, 2017 1 commit
  11. 22 Sep, 2017 3 commits
  12. 21 Sep, 2017 1 commit
  13. 11 Sep, 2017 1 commit
  14. 08 Sep, 2017 1 commit
    • Adam Barth's avatar
      Rename BannerLocation enum values (#11960) · 1792766a
      Adam Barth authored
      * Rename BannerLocation enum values
      
       * topLeft -> topStart
       * topRight -> topEnd
       * bottomLeft -> bottomStart
       * bottomRight -> bottomEnd
      
      These names will make it easier for us to adjust the location of the
      banner in right-to-left mode.
      
      See the discussion on flutter-dev.
      
      * Add RTL support for Banner
      
      Fixes #11905
      1792766a
  15. 24 Aug, 2017 1 commit
  16. 15 Aug, 2017 1 commit
  17. 09 Aug, 2017 1 commit
  18. 08 Aug, 2017 1 commit
    • Michael Goderbauer's avatar
      Don't trigger an assert when markNeedsSemanticsUpdate is called multiple times... · b551f534
      Michael Goderbauer authored
      Don't trigger an assert when markNeedsSemanticsUpdate is called multiple times in edge cases (#11544)
      
      * Don't trigger assert if a render object ceases to be a semantic boundary
      
      This bug was exposed by https://github.com/flutter/flutter/pull/11309, which caused the following assertion to trigger when scrolling in the Animation demo:
      
      ```
      The following assertion was thrown during _updateSemantics():
      'package:flutter/src/rendering/object.dart': Failed assertion: line 2626 pos 16: 'fragment is
      _InterestingSemanticsFragment': is not true.
      ```
      
      A minimal reproduction of the bug can be found in `semantics_10_test.dart`, which has been added as a regression test for the bug by this PR.
      
      Looking at that test, here is a description of the faulty behaviour:
      1. During the second `pumpWidget` call `RenderExcludeSemantics` marks itself as needing a semantics update (due to excluding going from `false` -> `true`).
      2. This causes the nearest ancestor with semantics information (here: `RenderSemanticsAnnotations` representing the "container" Semantics widget) to be added to the `_nodesNeedingSemantics` list.
      3. `RenderSliverList` (implementation behind ListView) marks itself as needing a semantics update (due to its changing children).
      4. This causes the `RenderSemanticsGestureHandler` to be added to the `_nodesNeedingSemantics` list.
      5. Next, canDrag is updated from `true` -> `false`. This means, `RenderSemanticsGestureHandler` is no longer a semantics boundary, it marks itself as needing a semantics update.
      6. The nearest ancestor with semantics (`RenderSemanticsAnnotations`, the "container") is added to the `_nodesNeedingSemantics` list (this is a no-op because it is already in the list).
      7. During `flushSemantics`, the `_nodesNeedingSemantics` list is walked. The first entry (`RenderSemanticsAnnotations`) updates the semantics tree to only contain the container widget and drop everything else (= no children of the ExcludeSemantics widget are walked).
      8. The second entry (`RenderSemanticsGestureHandler`) is updated. It does not add any semantics of its own and is no longer a semantics boundary. Therefore, it wants to merge its descendent semantics into its parents. Here is where the assert throws because the algorithm assumes that every entry in the `_nodesNeedingSemantics` list will produce and own an `_InterestingSemanticsFragment` (passing your semantics on to your parents is not interesting).
      
      The problem here seems to be step 4 in combination with step 5. In step 4 we rely on the fact that `RenderSemanticsGestureHandler` is an (explicit or implicit) semantics boundary and that it will be able to absorb the semantics change of `RenderSliverList`. This is true
      at this time. However, in step 4 `RenderSemanticsGestureHandler` decides to no longer be an (explicit or implicit) semantics boundary and our assumption from step 5 becomes incorrect. We did nothing to correct this assumption.
      
      This PR removes a node, that could potentially cease to be a (explicit or implicit) semantics boundary from the `_nodesNeedingSemantics` list to fix that problem. Please node that this does not mean that the node's semantics will not be updated: The node's closest ances
      tor with semantics is added to that list during the `markNeedsSemanticsUpdate` call. During `flushSemantics` we will walk from this node to update the semantics of it's children (if changed), which will include the node in question.
      
      * tiny fix
      
      * simplify test
      
      * analyzer fixes
      
      * review comments
      b551f534
  19. 07 Aug, 2017 2 commits
  20. 03 Aug, 2017 1 commit
  21. 25 Jul, 2017 1 commit
  22. 14 Jul, 2017 1 commit
  23. 13 Jul, 2017 1 commit
  24. 12 Jul, 2017 1 commit
  25. 11 Jul, 2017 2 commits
  26. 29 Jun, 2017 1 commit
  27. 20 Jun, 2017 3 commits
  28. 15 Jun, 2017 1 commit
  29. 14 Jun, 2017 2 commits
  30. 12 Jun, 2017 1 commit
    • Ian Hickson's avatar
      More documentation (#10606) · a9f1cb8c
      Ian Hickson authored
      - How do you handle a tap on text?
      - Why is AnimatedOpacity expensive?
      - Why would you use a gesture arena team?
      ...and other minor fixes
      a9f1cb8c