1. 20 Sep, 2023 1 commit
    • Greg Spencer's avatar
      Remove 'must not be null' comments from various libraries. (#134984) · 8cda3bea
      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 animation, cupertino, foundation, gestures, semantics, and services libraries.  Each of them only had a few, so I lumped them together.
      
      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/134991
      - 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.
      8cda3bea
  2. 11 May, 2023 1 commit
  3. 08 Mar, 2023 1 commit
  4. 03 Feb, 2023 1 commit
  5. 23 Jan, 2023 1 commit
  6. 13 Jan, 2023 1 commit
    • Bernardo Ferrari's avatar
      Add `allowedButtonsFilter` to prevent Draggable from appearing with secondary click. (#111852) · 0752af84
      Bernardo Ferrari authored
      * DragTarget part 1.
      
      [WIP] Change GestureRecognizer. Sorry.
      
      [WIP] Move from GestureRecognizer to MultiDragGestureRecognizer.
      
      Make it a `Set<int>?`
      
      Get bitwise operations working.
      
      Fix test. Rename to allowedInputPointers.
      
      Convert into a builder.
      
      Improve code with default funciton.
      
      Refactor everything again.
      
      Rename to buttonEventFilter.
      
      Use static function.
      
      Fix analyzer.
      
      Fix private reference.
      
      Use // in private method.
      
      * Fix Renzo request.
      
      * Add `allowedButtonsFilter` everywhere.
      
      * Refactor monoDrag for multi pointer support.
      
      * Fix tests?
      
      * Change default to always true.
      
      * Fix PR comments.
      
      * Completely refactor long press.
      
      * Add forgotten class.
      
      * Revert "Completely refactor long press."
      
      This reverts commit 5038e8603e250e8c928b0f1754fb794b7b75738b.
      
      * Add default value to LongPress
      
      * Refactor doubleTap.
      
      * Relax double tap.
      
      * Write comment in LongPress.
      
      * Use template.
      0752af84
  7. 24 Aug, 2022 1 commit
  8. 17 Jun, 2022 1 commit
  9. 25 May, 2022 1 commit
    • Pierre-Louis's avatar
      Use `curly_braces_in_flow_control_structures` for `foundation`, `gestures`,... · 9cc72df7
      Pierre-Louis authored
      Use `curly_braces_in_flow_control_structures` for `foundation`, `gestures`, `painting`, `physics` (#104610)
      
      * Use `curly_braces_in_flow_control_structures` for `foundation`
      
      * Use `curly_braces_in_flow_control_structures` for `gestures`
      
      * Use `curly_braces_in_flow_control_structures` for `painting`
      
      * Use `curly_braces_in_flow_control_structures` for `physics`
      
      * fix comments
      
      * remove trailing space
      
      * fix TODO style
      9cc72df7
  10. 14 Apr, 2022 1 commit
  11. 03 Feb, 2022 1 commit
  12. 09 Aug, 2021 1 commit
  13. 15 Jul, 2021 1 commit
  14. 14 Jul, 2021 3 commits
  15. 13 Jul, 2021 2 commits
  16. 10 May, 2021 1 commit
  17. 07 May, 2021 1 commit
  18. 12 Jan, 2021 1 commit
  19. 17 Sep, 2020 1 commit
    • Jonah Williams's avatar
      Deprecate VelocityTracker default constructor and added... · b1d17c91
      Jonah Williams authored
      Deprecate VelocityTracker default constructor and added VelocityTracker.withKind constructor (#66043)
      
      We've gotten feedback that the VelocityTracker change was disruptive, though it did not break any of the flutter framework or customer tests. In order to make the change non-breaking, PointerDeviceKind parameter can be made optional.
      
      Nevertheless, this parameter should be provided so that the existing touch handlers can use more accurate gestures on mouse/stylus inputs, so we can encourage this by deprecating the default constructor and pointing users towards the VelocityTracker.withKind constructor that takes a non-optional parameter
      b1d17c91
  20. 08 Sep, 2020 1 commit
    • Jonah Williams's avatar
      [framework] make hit slop based on device pointer kind for drag/pan/scale gestures (#64267) · 29898812
      Jonah Williams authored
      Currently the framework uses fairly large "hit slop" values to disambiguate taps from drags/pans. This makes sense on touch devices where the interaction is not very precise, on mice however it can feel as if the UI is lagging. This is immediately noticeable on our infra dashboard, where it takes almost half of a grid square of drag before the actual drag kicks in.
      
      One potential solution is to always use smaller constants depending on whether the interaction is mouse or touch based. The only reasonable choice is to use the pointer device kind and not target platform - same platform can have different input sources. This requires exposing the pointer device kind in a few new places in several of the gesture detectors, and using the enum to compute the correct hit slop from an expanded set of constants.
      
      This almost works, however there are a few places (notably ListViews) which uses the touch hit slop as a default value in scroll physics. It does not seem like it will be easy to disambiguate a user provided scroll physics constant from the default and/or adjust it somehow - this might require significant changes to scroll physics which I have left out of this PR.
      
      This PR does not adjust:
      
      kTouchSlop used in scroll_physics.dart's minFlingDistance
      kTouchSlop used in PrimaryPointerGestureRecognizer/LongPressGestureRecognizer
      29898812
  21. 28 Jul, 2020 1 commit
  22. 11 Jun, 2020 1 commit
  23. 18 May, 2020 1 commit
  24. 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
  25. 24 Sep, 2019 1 commit
  26. 01 Mar, 2019 1 commit
  27. 29 Jan, 2019 1 commit
  28. 14 Sep, 2018 1 commit
  29. 12 Sep, 2018 1 commit
  30. 13 Jun, 2018 1 commit
    • Chris Bracken's avatar
      Revert elimination of Dart 1 (#18460) · 2ae48845
      Chris Bracken authored
      fuchsia_tester.dart still assumes Dart 1. Previously, it ran tests directly
      from source, flutter_platform.dart automatically runs a kernel compile when
      operating in Dart 2 mode, but this assumes a functional Dart SDK is available
      in the artifacts directly, and fuchsia_tester.dart mocks out the artifacts
      directory with an empty temp dir.
      
      Remaining work is:
      1. Get the frontend server building as a dependency on Fuchsia.
      2. Patch fuchsia_tester.dart to use a valid Dart SDK and frontend server.
      
      This also reverts migration to Dart 2 typedef syntax.
      
      This reverts commit 6c56bb24. (#18362)
      This reverts commit 3daebd05. (#18316)
      2ae48845
  31. 11 Jun, 2018 1 commit
    • Greg Spencer's avatar
      Update typedef syntax to use Function notation and turn on lint for old notation. (#18362) · 6c56bb24
      Greg Spencer authored
      Now that Dart 1 is turned off, reapplying my change to turn on the prefer_generic_function_type_aliases analysis option, and fix all the typedefs to Dart 2 preferred syntax.
      
      Also eliminated the unused analysis_options_repo.yaml file and turned on public_member_api_docs in analysys_options.yaml.
      
      No logic changes, just changing the typedef syntax for all typedefs, and updating analysis options.
      6c56bb24
  32. 05 Jun, 2018 1 commit
  33. 30 May, 2018 2 commits
  34. 17 Nov, 2017 1 commit
    • Greg Spencer's avatar
      Fix spelling errors in all the dartdocs. (#13061) · 0259be90
      Greg Spencer authored
      I got tired of drive-by spelling fixes, so I figured I'd just take care of them all at once.
      
      This only corrects errors in the dartdocs, not regular comments, and I skipped any sample code in the dartdocs. It doesn't touch any identifiers in the dartdocs either. No code changes, just comments.
      0259be90
  35. 25 Oct, 2017 1 commit
  36. 21 Sep, 2017 1 commit