- 10 Jan, 2022 1 commit
-
-
Viren Khatri authored
-
- 05 Nov, 2021 1 commit
-
-
JBBx2016 authored
-
- 04 Oct, 2021 1 commit
-
-
Greg Spencer authored
This does a cleanup of the examples, removing all of the "section" markers and extra comments that we don't need anymore now that the samples are no longer in the source code. It also removes the --template arguments from the {@tool dartpad} and {@tool sample} directives, since those are no longer used. It converts two examples that I discovered were still embedded into linked examples in the examples folder. I didn't delete the templates from the snippets config folder yet, because there are still embedded samples in the dart:ui package from the engine that use them. Once dart:ui no longer uses the templates, they can be removed. I bumped the version of the snippets package to pick up a change that allows removal of the --template argument.
-
- 30 Sep, 2021 1 commit
-
-
Greg Spencer authored
I've added a Focus.withExternalFocusNode constructor to the Focus widget (and the FocusScope widget) that makes it explicit that the widget's attributes won't affect the settings of the given focus node. This is to help address #83023, which is a snag in the API that people run into occasionally. This should help make it explicit when you want the widget attributes to take precedence, and when you don't.
-
- 25 Aug, 2021 1 commit
-
-
Greg Spencer authored
This extracts the sample code out from the API doc comments, and places them in separate files on disk, allowing running of the examples locally, testing them, and building of slightly larger examples.
-
- 04 Aug, 2021 2 commits
-
-
LongCatIsLooong authored
-
xubaolin authored
-
- 29 Jul, 2021 1 commit
-
-
Tong Mu authored
-
- 28 Jul, 2021 1 commit
-
- 26 Jul, 2021 1 commit
-
-
Tong Mu authored
-
- 10 May, 2021 1 commit
-
-
Michael Goderbauer authored
-
- 31 Mar, 2021 1 commit
-
-
Alexandre Ardhuin authored
-
- 26 Mar, 2021 1 commit
-
-
Alexandre Ardhuin authored
-
- 12 Mar, 2021 1 commit
-
-
Greg Spencer authored
Update samples to use repo analysis options, Fix sample templates and a ton of analyzer issues (#77868)
-
- 12 Feb, 2021 1 commit
-
-
Greg Spencer authored
This updates the onKey handler of the FocusNode that the Focus widget manages when the widget is updated and the handler has changed. Also added a setter for onKey to the FocusNode.
-
- 24 Dec, 2020 1 commit
-
-
Shi-Hao Hong authored
-
- 11 Dec, 2020 1 commit
-
-
Michael Goderbauer authored
-
- 02 Nov, 2020 1 commit
-
-
Greg Spencer authored
-
- 29 Oct, 2020 1 commit
-
-
Greg Spencer authored
This removes the nullOk parameter from Focus.of, FocusTraversalOrder.of and FocusTraversalGroup.of, and creates maybeOf equivalents for each. The of methods now return non-nullable values, and the maybeOf equivalents return nullable values.
-
- 19 Oct, 2020 1 commit
-
-
Greg Spencer authored
- - When I added notification of key events before processing them as text, it made it so that shortcut key bindings like the spacebar would prevent spaces from being inserted into text fields, which is obviously not desirable (and so that change was reverted). At the same time, we do want to make it possible to override key events so that they can do things like intercept a tab key or arrow keys that change the focus. This PR changes the behavior of the Shortcuts widget so that if it has a shortcut defined, but no action is bound to the intent, then instead of responding that the key is "handled", it responds as if nothing handled it. This allows the engine to continue to process the key as text entry. This PR includes: - Modification of the callback type for key handlers to return a KeyEventResult instead of a bool, so that we can return more information (i.e. the extra state of "stop propagation"). - Modification of the ActionDispatcher.invokeAction contract to require that Action.isEnabled return true before calling it. It will now assert if the action isn't enabled when invokeAction is called. This is to allow optimization of the number of calls to isEnabled, since the shortcuts widget now wants to know if the action was enabled before deciding to either handle the key or to return ignored. - Modification to ShortcutManager.handleKeypress to return KeyEventResult.ignored for keys which don't have an enabled action associated with them. - Adds an attribute to DoNothingAction that allows it to mark a key as not handled, even though it does have an action associated with it. This will allow disabling of a shortcut for a subtree.
-
- 05 Oct, 2020 1 commit
-
-
Alexandre Ardhuin authored
-
- 15 Sep, 2020 1 commit
-
-
Alexandre Ardhuin authored
* Reland "Nnbd widgets (#64672)" This reverts commit 127e6790. * remove non-nullable enforcement on AsyncSnapshot * make data param non-nullable for AsyncSnapshot.withData * make some Text params non-nullable
-
- 09 Sep, 2020 2 commits
-
-
Michael Goderbauer authored
This reverts commit e682ec71.
-
Alexandre Ardhuin authored
* migrate widget to nullsafety * remove double blank line after license * address review comments in actions.dart * nullable ObjectKey.value * use local variable oldElement * make State.build non-nullable * make State.context non-nullable * newline at eof * make ProxyWidget.child non-nullable * make _InactiveElements.debugContains non-nullable * make Element.depth non-nullable * make ProxyElement.build non-nullable * make StatefulElement.state non-nullable * remove 'Notice that' * avoid cast of list in RenderObjectElement.updateChildren * make IndexedSlot.value non-nullable * avoid cast of list in MultiChildRenderObjectElement.mount * make some WidgetsApp parameters non-nullable * hitTest take non-nullable position * make ScrollableState.position non-nullable * use _pixels instead of pixels * make ViewportOffset.pixels non-nullable * make param and return type of IndexedWidgetBuilder non-nullable * unused_import * make context param non-nullable for Builder in animated_list.dart * make ScrollMetrics.viewportDimension non-nullable * make ScrollMetrics.{min,max}ScrollExtent non-nullable * make _Location.file non-nullable * _WidgetForTypeTests.createElement throw UnimplementedError * update _NullWidget.build error message * make _ShortcutsState.manager non-nullable * Fix childCount issues for NNBD * fix childCount computation on web * increase max value on js side to compute childCount * make aspect parameter of dependOnInheritedWidgetOfExactType nullable * merge has{min,max}ScrollExtent into hasScrollExtents * update focus_manager.dart * address review comments in icon.dart * address review comments in image.dart * address review comments in routes.dart * address review comments in scroll_activity.dart * update doc comments * make UserScrollNotification.direction non-nullable and required * rename hasScrollExtents to hasContentDimensions * unnecessary late Co-authored-by:
Ian Hickson <ian@hixie.ch>
-
- 30 Jul, 2020 1 commit
-
-
Greg Spencer authored
-
- 29 Jul, 2020 2 commits
-
-
Michael Goderbauer authored
-
Michael Goderbauer authored
-
- 28 Jul, 2020 1 commit
-
-
Darren Austin authored
Updated references to the old button classes to the new ones in comments and documentation for classes in the widgets, services and rendering libraries. (#62099)
-
- 11 Jun, 2020 1 commit
-
-
Alexandre Ardhuin authored
* add language version 2.8 in packages/flutter * enable non-nullable analyzer flag
-
- 10 Jun, 2020 1 commit
-
-
Gabriel Terwesten authored
-
- 08 May, 2020 2 commits
-
-
Pierre-Louis authored
* Expose includeSemantics option to RawKeyboardListener * Revert "Expose includeSemantics option to RawKeyboardListener" This reverts commit 684edccfb0bacb358285b34b7a6dafd45a070ca7. * Set includeSemantics to false * Expose includeSemantics for RawKeyboardListener * Add test
-
Greg Spencer authored
-
- 01 May, 2020 1 commit
-
-
Greg Spencer authored
This adds an ExcludeFocus widget that prevents widgets in a subtree from having or obtaining focus. It also adds the ability for a FocusNode to conditionally prevent its children from being focusable when it isn't focusable (i.e. when canRequestFocus is false). It does this by adding an descendantsAreFocusable attribute to the FocusNode, which, when false, prevents the descendants of the node from being focusable (and removes focus from them if they are currently focused).
-
- 03 Mar, 2020 1 commit
-
-
Shi-Hao Hong authored
-
- 23 Feb, 2020 1 commit
-
-
Greg Spencer authored
-
- 20 Feb, 2020 1 commit
-
-
Greg Spencer authored
-
- 13 Feb, 2020 1 commit
-
-
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.
-
- 12 Feb, 2020 1 commit
-
-
Greg Spencer authored
This reverts commit 8ef5e2f0 because it breaks some semantics tests.
-
- 11 Feb, 2020 1 commit
-
-
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).
-
- 10 Feb, 2020 1 commit
-
-
Greg Spencer authored
This PR modifies the existing API docs samples to use DartPad so that all of the samples are now interactive apps on the API docs site. It also removes the restriction for the max width of the description area so that the dartpad region can expand horizontally. I updated the first paragraph on the API docs to indicate that Flutter is more than just mobile now (same text as the README.md at the top level). I modified a few of the examples so that they looked nicer, and fit better on the page. I added the sample description text above each DartPad instance, since that often defines the context of the example. I removed animations and images when they were redundant with the sample content. There were a few that made sense to keep, so I did.
-