1. 11 Dec, 2023 1 commit
    • Renzo Olivares's avatar
      Fix SelectionArea select-word edge cases (#136920) · f60e54b2
      Renzo Olivares authored
      This change fixes issues with screen order comparison logic when rects are encompassed within each other. This was causing issues when trying to select text that includes inline `WidgetSpan`s inside of a `SelectionArea`.
      
      * Adds `boundingBoxes` to `Selectable` for a more precise hit testing region.
      
      Fixes #132821
      Fixes updating selection edge by word boundary when widget spans are involved.
      Fixes crash when sending select word selection event to an unselectable element.
      f60e54b2
  2. 20 Sep, 2023 1 commit
    • Greg Spencer's avatar
      Remove 'must not be null' comments from painting and rendering libraries. (#134993) · fe9a2c54
      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 painting and rendering libraries.
      
      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/134991
      - https://github.com/flutter/flutter/pull/134992
      - https://github.com/flutter/flutter/pull/134994
      
      ## Tests
       - Documentation only change.
      fe9a2c54
  3. 11 Aug, 2023 1 commit
  4. 21 Jun, 2023 1 commit
    • Renzo Olivares's avatar
      Selection area right click behavior should match native (#128224) · b36ef583
      Renzo Olivares authored
      This change updates `SelectableRegion`s right-click gesture to match native platform behavior.
      
      Before: Right-click gesture selects word at position and opens context menu (All Platforms)
      After: 
      - Linux, toggles context menu on/off, and collapses selection when click was not on an active selection (uncollapsed).
      - Windows, Android, Fuchsia, shows context menu at right-clicked position (unless the click is at an active selection).
      - macOS, toggles the context menu if right click was at the same position as the previous / or selects word at position and opens context menu.
      - iOS, selects word at position and opens context menu.
      
      This change also prevents the `copy` menu button from being shown when there is a collapsed selection (nothing to copy).
      
      Fixes #117561
      b36ef583
  5. 12 May, 2023 1 commit
  6. 23 Mar, 2023 1 commit
  7. 21 Jan, 2023 1 commit
  8. 04 Nov, 2022 1 commit
  9. 31 May, 2022 1 commit
  10. 25 May, 2022 1 commit
  11. 24 May, 2022 1 commit