1. 17 Jan, 2024 1 commit
  2. 12 Jan, 2024 1 commit
  3. 07 Dec, 2023 1 commit
    • Jasper van Riet's avatar
      Introduce `exitDuration` to Tooltip for mouse pointer devices (#138321) · 3c422dd7
      Jasper van Riet authored
      This PR introduces a new property `exitDuration` to Tooltip, the counterpart to `waitDuration`. The need for this is shown by #136586. This changes the behaviour of `showDuration` on mouse pointer devices. This is because the use cases for the current behaviour on touch screen devices vs mouse pointer devices is fundamentally different.
      
      <details>
      <summary>Demo: tooltip with showDuration set</summary>
      
      Tooltip disappears after 100 ms when moving away the mouse. Tooltip will not disappear when hovered.
      
      https://github.com/flutter/flutter/assets/5138348/81d36dc9-78e0-4723-a84b-2552843ee181
      
      </details>
      
      Currently, when `showDuration` is set, this adjusts the time it takes for the tooltip to hide _after_ a mouse pointer has left the tooltip. This is not the same use case as its effect on touch screen devices, where it dictates how long the tooltip stays on screen after a long press. That is needed because the tooltip takes up screen space and there is not an intuitive way to hide it, whereas when using a mouse users expect to simply have to hover somewhere else. Having the tooltip stay around will look broken.
      
      Thus, this PR splits the two use cases. `showDuration` no longer affects mouse pointer devices at all*. There is a precedent for such mouse pointer-only behaviour in `waitDuration`. Instead, I have split up the two use cases and created the new property `exitDuration`, which will still allow for tweaking the time it takes for the tooltip to hide after the user has moved their mouse pointer somewhere else.
      
      *Note: Should `showDuration` affect [this line](https://github.com/flutter/flutter/blob/e33d4b86270e3c012ba13d68d6e90f2eabc4912b/packages/flutter/lib/src/material/tooltip.dart#L610)?
      
      Fixes #136586.
      
      Note: I noticed that when I made the change, no tests were broken. Hopefully, the tests added here help that in the future. I also noticed that in the _existing_ tests, the `waitDuration` tests contain assertions that implicate that it is the role of `waitDuration` to change this behaviour, but that's not currently (nor in the new behaviour) true, so I have fixed those tests.
      3c422dd7
  4. 09 Nov, 2023 1 commit
  5. 03 Nov, 2023 1 commit
  6. 23 Oct, 2023 1 commit
  7. 20 Sep, 2023 1 commit
    • Greg Spencer's avatar
      Remove 'must be non-null' and 'must not be null' comments from material. (#134991) · a1e49be2
      Greg Spencer authored
      ## Description
      
      This removes all of the comments that are of the form "so-and-so (must not be null|can ?not be null|must be non-null)" from the cases where those values are defines as non-nullable values.
      
      This PR removes them from the material library.
      
      This was done by hand, since it really didn't lend itself to scripting, so it needs to be more than just spot-checked, I think. I was careful to leave any comment that referred to parameters that were nullable, but I may have missed some.
      
      In addition to being no longer relevant after null safety has been made the default, these comments were largely fragile, in that it was easy for them to get out of date, and not be accurate anymore anyhow.
      
      This did create a number of constructor comments which basically say "Creates a [Foo].", but I don't really know how to avoid that in a large scale change, since there's not much you can really say in a lot of cases.  I think we might consider some leniency for constructors to the "Comment must be meaningful" style guidance (which we de facto have already, since there are a bunch of these).
      
      ## Related PRs
      - https://github.com/flutter/flutter/pull/134984
      - https://github.com/flutter/flutter/pull/134992
      - https://github.com/flutter/flutter/pull/134993
      - https://github.com/flutter/flutter/pull/134994
      
      ## Tests
       - Documentation only change.
      a1e49be2
  8. 13 Jul, 2023 1 commit
  9. 21 Jun, 2023 1 commit
  10. 10 Jun, 2023 1 commit
  11. 26 May, 2023 1 commit
  12. 25 May, 2023 1 commit
  13. 18 May, 2023 1 commit
  14. 03 Feb, 2023 1 commit
  15. 02 Feb, 2023 1 commit
  16. 01 Feb, 2023 1 commit
  17. 24 Jan, 2023 1 commit
  18. 23 Dec, 2022 1 commit
  19. 20 Dec, 2022 1 commit
  20. 09 Dec, 2022 1 commit
  21. 02 Sep, 2022 1 commit
  22. 22 Aug, 2022 1 commit
  23. 19 Aug, 2022 1 commit
  24. 02 Aug, 2022 1 commit
  25. 22 Jun, 2022 1 commit
  26. 21 Jun, 2022 1 commit
  27. 25 May, 2022 1 commit
  28. 20 May, 2022 2 commits
  29. 19 May, 2022 1 commit
  30. 12 May, 2022 1 commit
  31. 09 May, 2022 1 commit
  32. 06 May, 2022 1 commit
  33. 27 Apr, 2022 1 commit
  34. 21 Apr, 2022 1 commit
  35. 14 Apr, 2022 1 commit
  36. 25 Mar, 2022 1 commit
  37. 22 Mar, 2022 1 commit
  38. 25 Feb, 2022 1 commit
  39. 03 Feb, 2022 1 commit