1. 08 Oct, 2020 1 commit
  2. 11 Jun, 2020 1 commit
  3. 28 May, 2020 1 commit
  4. 27 May, 2020 1 commit
    • Greg Spencer's avatar
      Add MediaQueryData.navigationMode and allow controls to be focused when disabled. (#54919) · 8ef29154
      Greg Spencer authored
      This adds a new navigationMode to the MediaQueryData that indicates how focusable controls should behave under different navigation modes, currently with two modes: NavigationMode.traditional, and NavigationMode.directional.
      
      It may seem like focusing a disabled control is not desirable, but this is useful for user interfaces that use DPAD navigation because if a control gets disabled, losing focus is disruptive to the user, and it is difficult to control where the focus will end up unless it is done explicitly.
      8ef29154
  5. 29 Apr, 2020 1 commit
  6. 23 Mar, 2020 1 commit
  7. 13 Feb, 2020 1 commit
    • Greg Spencer's avatar
      Reland: Add OrderedFocusTraversalPolicy and FocusTraversalGrou… (#50672) · d57d4935
      Greg Spencer authored
      This re-lands #49235 with the addition of includeSemantics flag on the Focus widget so that the FocusTraversalGroup can create a Focus widget without affecting the semantics tree.
      
      The FocusTraversalGroup uses the Focus widget to create a grouping of descendants for traversal, but doesn't actually participate in focus (canRequestFocus is always false), so we don't want it to add a Semantics widget in that case, since that can cause semantics changes. The canRequestFocus attribute can also be used when a widget is disabled, so we do sometimes want to include Semantics even if that is false, but not in the case where it is always false, as for FocusTraversalGroup.
      
      - Added a test to make sure that FocusTraversalGroup doesn't add any semantics information.
      d57d4935
  8. 12 Feb, 2020 1 commit
  9. 11 Feb, 2020 1 commit
    • Greg Spencer's avatar
      Add OrderedFocusTraversalPolicy and FocusTraversalGroup to all… (#49235) · 8ef5e2f0
      Greg Spencer authored
      This change adds a way to provide explicit focus order for a part of the widget tree.
      
      It adds FocusTraversalPolicyGroup, which in many ways is similar to DefaultFocusTraversal, except that it groups a widget subtree together so that those nodes are traversed as a group. DefaultFocusTraversal doesn't work as one would expect: If there is more than one DefaultFocusTraversal inside of a focus scope, the policy can change depending on which node was asked to move "next", which can cause unexpected behavior. The new grouping mechanism doesn't have that problem. I deprecate DefaultFocusTraversal in this PR.
      
      It also adds OrderedFocusTraversalPolicy, which is a policy that can be supplied to FocusTraversalPolicyGroup to set the policy for a sub-tree. It looks for FocusTraversalOrder inherited widgets, which use a FocusOrder to do the sorting. FocusOrder has two subclasses: NumericalFocusOrder (which sorts based on a double), and LexicalFocusOrder, which sorts based on a String.
      
      As part of doing this, I refactored the way FocusTraversalPolicy is implemented so that it has more default implementation methods, and exposes a new protected member: sortDescendants, which makes it easier for developers to make their own policy subclasses: they only need to implement sortDescendants to get a new ordering behavior, but can also still override any of the default implementation behaviors if they need different behavior.
      
      I was able to do this without breaking the API (AFAICT).
      8ef5e2f0
  10. 15 Jan, 2020 1 commit
  11. 06 Dec, 2019 1 commit
  12. 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
  13. 01 Nov, 2019 1 commit
  14. 09 Oct, 2019 1 commit
    • Greg Spencer's avatar
      Enables setting of semantics focused and focusable attributes within Focus widgets. (#41814) · 89d6c8d9
      Greg Spencer authored
      This adds a Semantics node to the Focus and FocusScope widgets, setting the focused and focusable attributes so that the accessibility subsystem can be told when a control has the input focus.
      
      Includes an engine roll to flutter/engine@77252d2, and the following 8 engine changes:
      
      flutter/engine@77252d2 Greg Spencer Add missing focusable testing info (flutter/engine#13013)
      flutter/engine@0e42a29 skia-flutter-.. Roll src/third_party/skia 54548626a977..e27a503a0a21 (1 commits) (flutter/engine#13024)
      flutter/engine@6b56ed7 gaaclarke Refactor: FlutterDartProject (flutter/engine#13006)
      flutter/engine@393480c skia-flutter-.. Roll src/third_party/skia 77dde599c98a..54548626a977 (1 commits) (flutter/engine#13023)
      flutter/engine@080b89d skia-flutter-.. Roll src/third_party/skia 2b1a25a4d324..77dde599c98a (1 commits) (flutter/engine#13021)
      flutter/engine@90b0f30 Ben Konyi Roll src/third_party/dart f4a72bfc64..bb04f145b2 (18 commits) (flutter/engine#13020)
      flutter/engine@049fb89 skia-flutter-.. Roll fuchsia/sdk/core/linux-amd64 from q_uYX... to cknsi... (flutter/engine#13019)
      flutter/engine@6925b2a skia-flutter-.. Roll fuchsia/sdk/core/mac-amd64 from wuAtw... to u0JpE... (flutter/engine#13018)
      
      Related Issues
      Addresses #40101
      
      Landing on red in order to fix the build: it's red because of the needed engine roll.
      89d6c8d9
  15. 30 Sep, 2019 1 commit
  16. 03 Sep, 2019 1 commit
    • Greg Spencer's avatar
      Make disabled buttons/chips/text fields not be focusable. (#38726) · 8daa165d
      Greg Spencer authored
      This changes the behavior of text fields, Material buttons, and Chips so that if they are disabled they lose focus. Before this change, it was possible to disable a control and then use focus traversal to reach it anyhow, and in the case of text fields, enter text into a disabled field.
      
      Fixes #33985
      8daa165d
  17. 29 Apr, 2019 1 commit
  18. 07 Mar, 2019 1 commit
  19. 01 Mar, 2019 1 commit
    • Alexandre Ardhuin's avatar
      Add missing trailing commas (#28673) · 387f8854
      Alexandre Ardhuin authored
      * add trailing commas on list/map/parameters
      
      * add trailing commas on Invocation with nb of arg>1
      
      * add commas for widget containing widgets
      
      * add trailing commas if instantiation contains trailing comma
      
      * revert bad change
      387f8854
  20. 12 Sep, 2018 1 commit
  21. 02 Aug, 2018 1 commit
  22. 27 Jul, 2018 1 commit
  23. 23 Jul, 2018 1 commit
  24. 16 Jul, 2018 2 commits
  25. 01 Feb, 2018 1 commit
  26. 31 Jan, 2018 1 commit
  27. 09 Jan, 2018 1 commit
  28. 19 Dec, 2017 1 commit
  29. 07 Sep, 2017 1 commit
  30. 28 Aug, 2017 1 commit
    • Ian Hickson's avatar
      RTL: Padding, Flex (#11709) · f235a2c1
      Ian Hickson authored
      * Introduce a Directionality inherited widget which sets the ambient LTR vs RTL mode (defaulting to null, which means you cannot use directionality-influenced values).
      
      * Make it possible to configure Padding (including Container.padding and Container.margin) using a directionality-agnostic EdgeInsets variant.
      
      * Provide textDirection and verticalDirection controls on Row and Column to make them RTL-aware.
      
      * Introduce a variant of FractionalOffset based on the EdgeInsets variant. Not yet actually used.
      
      * Fix all the tests that depended on Row defaulting to LTR.
      f235a2c1
  31. 08 Aug, 2017 1 commit
  32. 27 Apr, 2017 1 commit
  33. 07 Apr, 2017 1 commit
  34. 08 Mar, 2017 1 commit
  35. 04 Mar, 2017 1 commit
  36. 22 Feb, 2017 1 commit
    • xster's avatar
      Conform appbar buttons to Material (#8263) · 72fa281f
      xster authored
      Extend app bar left to edge, right to 4dp
      Make leading button square and 56dp
      Keep title at 72dp on Android according to Material
      Renamed IconButton.size to .iconSize
      IconButton minimum size expands to 48dp (#8264)
      IconButton default constraints to 48. Can still stretch to infinity but can't be smaller than 48.
      Ink splash for IconButton 40% bigger than the touch target to match Material
      Tests
      72fa281f
  37. 06 Oct, 2016 1 commit
  38. 20 Sep, 2016 1 commit
  39. 18 Aug, 2016 1 commit