1. 27 Sep, 2019 2 commits
  2. 26 Sep, 2019 3 commits
    • Greg Spencer's avatar
      Added proper focus handling when pushing and popping routes (#40166) · 1a7bb1f5
      Greg Spencer authored
      The proposed change will change focus handling when pushing and popping routes so that the FocusScopeNode for the route receives focus when pushed, and that the FocusScopeNode in the navigator receives focus when the route is popped.
      
      This means that the last setFirstFocus call on the scope is used to determine which control actually receives focus. When the focus scope receives focus, it traverses its children, trying to find a non-scope node that is the "first focus" of itself or a child node.
      
      This is a breaking change, because the focus behavior has changed. If you push a route after this change, and had a 'first focus' set on a widget via FocusScopeNode.setFirstFocus, it won't currently receive focus immediately, but after this change it will. Similarly, if you pop a route after this change, the focus will go back to where it was before the route was pushed, which is correct, but different from what happens now.
      1a7bb1f5
    • Greg Spencer's avatar
      Fix mouse hover to not schedule a frame for every mouse move. (#41014) · 05097916
      Greg Spencer authored
      This fixes the mouse hover code to not schedule frames with every mouse move.
      
      Before this, it would schedule a post frame callback, and then schedule a frame immediately, even if there was nothing that needed to be updated. Now it will schedule checks for mouse position updates synchronously, unless there's a new annotation, and skip scheduling a new frame in all cases. It has to be async in the case of a new annotation (i.e. a new MouseRegion is added), since when the annotation is added, it hasn't yet painted, and it can't hit test against the new layer until after the paint, so in that case it schedules a post frame callback, but since it's already building a frame when it does that, it doesn't need to schedule a frame.
      
      The code also used to do mouse position checks for all mice if only one mouse changed position. I fixed this part too, so that it will only check position for the mouse that changed.
      05097916
    • Hans Muller's avatar
  3. 24 Sep, 2019 5 commits
  4. 18 Sep, 2019 1 commit
  5. 17 Sep, 2019 6 commits
  6. 16 Sep, 2019 1 commit
  7. 14 Sep, 2019 1 commit
  8. 13 Sep, 2019 2 commits
  9. 10 Sep, 2019 3 commits
  10. 06 Sep, 2019 1 commit
  11. 05 Sep, 2019 2 commits
  12. 04 Sep, 2019 2 commits
  13. 03 Sep, 2019 2 commits
  14. 02 Sep, 2019 1 commit
    • Anthony's avatar
      Show search app bar theme (#37962) · e3f8d055
      Anthony authored
      Use the entire appBarTheme from the showSearch delegate for the search pages appBar theme, rather than just a select set of fields.
      e3f8d055
  15. 28 Aug, 2019 3 commits
  16. 26 Aug, 2019 1 commit
  17. 23 Aug, 2019 1 commit
    • Greg Spencer's avatar
      Normalize assert checking of clipBehavior (#38568) · 365f577c
      Greg Spencer authored
      I noticed that we were pretty inconsistent with the way that we checked the value of clipBehavior in the framework, so I normalized the usages and updated docs where necessary.
      
      This is a breaking change if you used to pass null explicitly to FlatButton, OutlineButton or RaisedButton constructors, expecting to get Clip.none. It will now assert if you do that. Existing implementations that pass null implicitly by not specifying clipBehavior won't need to change their call sites. It always implicitly defaulted to Clip.none before, and it will continue to do that, it's only places where it was explicitly set to null in order to get the implicit default that it will fail.
      365f577c
  18. 22 Aug, 2019 1 commit
  19. 21 Aug, 2019 2 commits