Unverified Commit 88a7d83a authored by Michael Goderbauer's avatar Michael Goderbauer Committed by GitHub

fix unresolved doc references in widgets - part 2 (#62499)

parent 71078416
...@@ -208,7 +208,7 @@ abstract class ViewportOffset extends ChangeNotifier { ...@@ -208,7 +208,7 @@ abstract class ViewportOffset extends ChangeNotifier {
} }
/// The direction in which the user is trying to change [pixels], relative to /// The direction in which the user is trying to change [pixels], relative to
/// the viewport's [RenderViewport.axisDirection]. /// the viewport's [RenderViewportBase.axisDirection].
/// ///
/// If the _user_ is not scrolling, this will return [ScrollDirection.idle] /// If the _user_ is not scrolling, this will return [ScrollDirection.idle]
/// even if there is (for example) a [ScrollActivity] currently animating the /// even if there is (for example) a [ScrollActivity] currently animating the
......
...@@ -734,11 +734,11 @@ abstract class AutofillClient { ...@@ -734,11 +734,11 @@ abstract class AutofillClient {
/// input fields during autofill. That is, when an autofillable [TextInputClient] /// input fields during autofill. That is, when an autofillable [TextInputClient]
/// gains focus, only the [AutofillClient]s within the same [AutofillScope] will /// gains focus, only the [AutofillClient]s within the same [AutofillScope] will
/// be visible to the autofill service, in the same order as they appear in /// be visible to the autofill service, in the same order as they appear in
/// [autofillClients]. /// [AutofillScope.autofillClients].
/// ///
/// [AutofillScope] also allows [TextInput] to redirect autofill values from the /// [AutofillScope] also allows [TextInput] to redirect autofill values from the
/// platform to the [AutofillClient] with the given identifier, by calling /// platform to the [AutofillClient] with the given identifier, by calling
/// [getAutofillClient]. /// [AutofillScope.getAutofillClient].
/// ///
/// An [AutofillClient] that's not tied to any [AutofillScope] will only /// An [AutofillClient] that's not tied to any [AutofillScope] will only
/// participate in autofill if the autofill is directly triggered by its own /// participate in autofill if the autofill is directly triggered by its own
......
...@@ -1243,8 +1243,8 @@ class TextInput { ...@@ -1243,8 +1243,8 @@ class TextInput {
/// An autofill context is a collection of input fields that live in the /// An autofill context is a collection of input fields that live in the
/// platform's text input plugin. The platform is encouraged to save the user /// platform's text input plugin. The platform is encouraged to save the user
/// input stored in the current autofill context before the context is /// input stored in the current autofill context before the context is
/// destroyed, when [finishAutofillContext] is called with `shouldSave` set to /// destroyed, when [TextInput.finishAutofillContext] is called with
/// true. /// `shouldSave` set to true.
/// ///
/// Currently, there can only be at most one autofill context at any given /// Currently, there can only be at most one autofill context at any given
/// time. When any input field in an [AutofillGroup] requests for autofill /// time. When any input field in an [AutofillGroup] requests for autofill
...@@ -1254,12 +1254,13 @@ class TextInput { ...@@ -1254,12 +1254,13 @@ class TextInput {
/// one will be created to hold the newly added input fields from the group. /// one will be created to hold the newly added input fields from the group.
/// ///
/// Once added to an autofill context, an input field will stay in the context /// Once added to an autofill context, an input field will stay in the context
/// until the context is destroyed. To prevent leaks, call [finishAutofillContext] /// until the context is destroyed. To prevent leaks, call
/// to signal the text input plugin that the user has finalized their input in /// [TextInput.finishAutofillContext] to signal the text input plugin that the
/// the current autofill context. The platform text input plugin either /// user has finalized their input in the current autofill context. The
/// encourages or discourages the platform from saving the user input based on /// platform text input plugin either encourages or discourages the platform
/// the value of the `shouldSave` parameter. The platform usually shows a /// from saving the user input based on the value of the `shouldSave`
/// "Save for autofill?" prompt for user confirmation. /// parameter. The platform usually shows a "Save for autofill?" prompt for
/// user confirmation.
/// {@endtemplate} /// {@endtemplate}
/// ///
/// On many platforms, calling [finishAutofillContext] shows the save user /// On many platforms, calling [finishAutofillContext] shows the save user
......
...@@ -101,7 +101,7 @@ abstract class Action<T extends Intent> with Diagnosticable { ...@@ -101,7 +101,7 @@ abstract class Action<T extends Intent> with Diagnosticable {
/// [ActionDispatcher.invokeAction] directly. /// [ActionDispatcher.invokeAction] directly.
/// ///
/// This method is only meant to be invoked by an [ActionDispatcher], or by /// This method is only meant to be invoked by an [ActionDispatcher], or by
/// its subclasses, and only when [enabled] is true. /// its subclasses, and only when [isEnabled] is true.
/// ///
/// When overriding this method, the returned value can be any Object, but /// When overriding this method, the returned value can be any Object, but
/// changing the return type of the override to match the type of the returned /// changing the return type of the override to match the type of the returned
...@@ -300,10 +300,10 @@ abstract class ContextAction<T extends Intent> extends Action<T> { ...@@ -300,10 +300,10 @@ abstract class ContextAction<T extends Intent> extends Action<T> {
/// [ActionDispatcher.invokeAction] directly. /// [ActionDispatcher.invokeAction] directly.
/// ///
/// This method is only meant to be invoked by an [ActionDispatcher], or by /// This method is only meant to be invoked by an [ActionDispatcher], or by
/// its subclasses, and only when [enabled] is true. /// its subclasses, and only when [isEnabled] is true.
/// ///
/// The optional `context` parameter is the context of the invocation of the /// The optional `context` parameter is the context of the invocation of the
/// action, and in the case of an action invoked by a [ShortcutsManager], via /// action, and in the case of an action invoked by a [ShortcutManager], via
/// a [Shortcuts] widget, will be the context of the [Shortcuts] widget. /// a [Shortcuts] widget, will be the context of the [Shortcuts] widget.
/// ///
/// When overriding this method, the returned value can be any Object, but /// When overriding this method, the returned value can be any Object, but
...@@ -943,7 +943,7 @@ class FocusableActionDetector extends StatefulWidget { ...@@ -943,7 +943,7 @@ class FocusableActionDetector extends StatefulWidget {
/// The cursor for a mouse pointer when it enters or is hovering over the /// The cursor for a mouse pointer when it enters or is hovering over the
/// widget. /// widget.
/// ///
/// The [cursor] defaults to [MouseCursor.defer], deferring the choice of /// The [mouseCursor] defaults to [MouseCursor.defer], deferring the choice of
/// cursor to the next region behind it in hit-test order. /// cursor to the next region behind it in hit-test order.
final MouseCursor mouseCursor; final MouseCursor mouseCursor;
......
...@@ -198,9 +198,9 @@ class AutofillGroup extends StatefulWidget { ...@@ -198,9 +198,9 @@ class AutofillGroup extends StatefulWidget {
/// [AutofillClient] when it exits (for example, when an [EditableText] gets /// [AutofillClient] when it exits (for example, when an [EditableText] gets
/// unmounted or reparented out of the [AutofillGroup]'s subtree). /// unmounted or reparented out of the [AutofillGroup]'s subtree).
/// ///
/// The [AutofillGroupState] class also provides an [attach] method that can be /// The [AutofillGroupState] class also provides an [AutofillGroupState.attach]
/// called by [TextInputClient]s that support autofill, instead of /// method that can be called by [TextInputClient]s that support autofill,
/// [TextInputConnection.attach], to create a [TextInputConnection] to interact /// instead of [TextInput.attach], to create a [TextInputConnection] to interact
/// with the platform's text input system. /// with the platform's text input system.
/// {@endtemplate} /// {@endtemplate}
/// ///
......
...@@ -1237,11 +1237,12 @@ class Transform extends SingleChildRenderObjectWidget { ...@@ -1237,11 +1237,12 @@ class Transform extends SingleChildRenderObjectWidget {
/// If it is specified at the same time as the [origin], both are applied. /// If it is specified at the same time as the [origin], both are applied.
/// ///
/// An [AlignmentDirectional.centerStart] value is the same as an [Alignment] /// An [AlignmentDirectional.centerStart] value is the same as an [Alignment]
/// whose [Alignment.x] value is `-1.0` if [textDirection] is /// whose [Alignment.x] value is `-1.0` if [Directionality.of] returns
/// [TextDirection.ltr], and `1.0` if [textDirection] is [TextDirection.rtl]. /// [TextDirection.ltr], and `1.0` if [Directionality.of] returns
/// Similarly [AlignmentDirectional.centerEnd] is the same as an [Alignment] /// [TextDirection.rtl]. Similarly [AlignmentDirectional.centerEnd] is the
/// whose [Alignment.x] value is `1.0` if [textDirection] is /// same as an [Alignment] whose [Alignment.x] value is `1.0` if
/// [TextDirection.ltr], and `-1.0` if [textDirection] is [TextDirection.rtl]. /// [Directionality.of] returns [TextDirection.ltr], and `-1.0` if
/// [Directionality.of] returns [TextDirection.rtl].
final AlignmentGeometry alignment; final AlignmentGeometry alignment;
/// Whether to apply the transformation when performing hit tests. /// Whether to apply the transformation when performing hit tests.
...@@ -6085,12 +6086,12 @@ class MouseRegion extends StatefulWidget { ...@@ -6085,12 +6086,12 @@ class MouseRegion extends StatefulWidget {
/// This means that a [MouseRegion.onExit] might not be matched by a /// This means that a [MouseRegion.onExit] might not be matched by a
/// [MouseRegion.onEnter]. /// [MouseRegion.onEnter].
/// ///
/// This restriction aims to prevent a common misuse: if [setState] is called /// This restriction aims to prevent a common misuse: if [State.setState] is
/// during [MouseRegion.onExit] without checking whether the widget is still /// called during [MouseRegion.onExit] without checking whether the widget is
/// mounted, an exception will occur. This is because the callback is /// still mounted, an exception will occur. This is because the callback is
/// triggered during the post-frame phase, at which point the widget has been /// triggered during the post-frame phase, at which point the widget has been
/// unmounted. Since [setState] is exclusive to widgets, the restriction is /// unmounted. Since [State.setState] is exclusive to widgets, the restriction
/// specific to [MouseRegion], and does not apply to its lower-level /// is specific to [MouseRegion], and does not apply to its lower-level
/// counterparts, [RenderMouseRegion] and [MouseTrackerAnnotation]. /// counterparts, [RenderMouseRegion] and [MouseTrackerAnnotation].
/// ///
/// There are a few ways to mitigate this restriction: /// There are a few ways to mitigate this restriction:
...@@ -6358,10 +6359,10 @@ class _RawMouseRegion extends SingleChildRenderObjectWidget { ...@@ -6358,10 +6359,10 @@ class _RawMouseRegion extends SingleChildRenderObjectWidget {
/// ///
/// [RepaintBoundary] is therefore used, both while propagating the /// [RepaintBoundary] is therefore used, both while propagating the
/// `markNeedsPaint` flag up the render tree and while traversing down the /// `markNeedsPaint` flag up the render tree and while traversing down the
/// render tree via [RenderObject.paintChild], to strategically contain repaints /// render tree via [PaintingContext.paintChild], to strategically contain
/// to the render subtree that visually changed for performance. This is done /// repaints to the render subtree that visually changed for performance. This
/// because the [RepaintBoundary] widget creates a [RenderObject] that always /// is done because the [RepaintBoundary] widget creates a [RenderObject] that
/// has a [Layer], decoupling ancestor render objects from the descendant /// always has a [Layer], decoupling ancestor render objects from the descendant
/// render objects. /// render objects.
/// ///
/// [RepaintBoundary] has the further side-effect of possibly hinting to the /// [RepaintBoundary] has the further side-effect of possibly hinting to the
...@@ -7168,7 +7169,7 @@ class Builder extends StatelessWidget { ...@@ -7168,7 +7169,7 @@ class Builder extends StatelessWidget {
/// Signature for the builder callback used by [StatefulBuilder]. /// Signature for the builder callback used by [StatefulBuilder].
/// ///
/// Call [setState] to schedule the [StatefulBuilder] to rebuild. /// Call `setState` to schedule the [StatefulBuilder] to rebuild.
typedef StatefulWidgetBuilder = Widget Function(BuildContext context, StateSetter setState); typedef StatefulWidgetBuilder = Widget Function(BuildContext context, StateSetter setState);
/// A platonic widget that both has state and calls a closure to obtain its child widget. /// A platonic widget that both has state and calls a closure to obtain its child widget.
......
...@@ -313,8 +313,8 @@ class ToolbarOptions { ...@@ -313,8 +313,8 @@ class ToolbarOptions {
/// action button on the soft keyboard for Android and iOS. The default action /// action button on the soft keyboard for Android and iOS. The default action
/// is [TextInputAction.done]. /// is [TextInputAction.done].
/// ///
/// Many [TextInputAction]s are common between Android and iOS. However, if an /// Many [TextInputAction]s are common between Android and iOS. However, if a
/// [inputAction] is provided that is not supported by the current /// [textInputAction] is provided that is not supported by the current
/// platform in debug mode, an error will be thrown when the corresponding /// platform in debug mode, an error will be thrown when the corresponding
/// EditableText receives focus. For example, providing iOS's "emergencyCall" /// EditableText receives focus. For example, providing iOS's "emergencyCall"
/// action when running on an Android device will result in an error when in /// action when running on an Android device will result in an error when in
...@@ -976,7 +976,7 @@ class EditableText extends StatefulWidget { ...@@ -976,7 +976,7 @@ class EditableText extends StatefulWidget {
/// When a non-completion action is pressed, such as "next" or "previous", it /// When a non-completion action is pressed, such as "next" or "previous", it
/// is often desirable to move the focus to the next or previous field. To do /// is often desirable to move the focus to the next or previous field. To do
/// this, handle it as in this example, by calling [FocusNode.focusNext] in /// this, handle it as in this example, by calling [FocusNode.focusNext] in
/// the [TextFormField.onFieldSubmitted] callback ([TextFormField] wraps /// the `onFieldSubmitted` callback of [TextFormField]. ([TextFormField] wraps
/// [EditableText] internally, and uses the value of `onFieldSubmitted` as its /// [EditableText] internally, and uses the value of `onFieldSubmitted` as its
/// [onSubmitted]). /// [onSubmitted]).
/// ///
...@@ -1056,7 +1056,7 @@ class EditableText extends StatefulWidget { ...@@ -1056,7 +1056,7 @@ class EditableText extends StatefulWidget {
final MouseCursor mouseCursor; final MouseCursor mouseCursor;
/// If true, the [RenderEditable] created by this widget will not handle /// If true, the [RenderEditable] created by this widget will not handle
/// pointer events, see [renderEditable] and [RenderEditable.ignorePointer]. /// pointer events, see [RenderEditable] and [RenderEditable.ignorePointer].
/// ///
/// This property is false by default. /// This property is false by default.
final bool rendererIgnoresPointer; final bool rendererIgnoresPointer;
...@@ -2171,10 +2171,10 @@ class EditableTextState extends State<EditableText> with AutomaticKeepAliveClien ...@@ -2171,10 +2171,10 @@ class EditableTextState extends State<EditableText> with AutomaticKeepAliveClien
return result; return result;
} }
/// The renderer for this widget's [Editable] descendant. /// The renderer for this widget's descendant.
/// ///
/// This property is typically used to notify the renderer of input gestures /// This property is typically used to notify the renderer of input gestures
/// when [ignorePointer] is true. See [RenderEditable.ignorePointer]. /// when [RenderEditable.ignorePointer] is true.
RenderEditable get renderEditable => _editableKey.currentContext.findRenderObject() as RenderEditable; RenderEditable get renderEditable => _editableKey.currentContext.findRenderObject() as RenderEditable;
@override @override
......
...@@ -1445,10 +1445,9 @@ class FocusManager with DiagnosticableTreeMixin, ChangeNotifier { ...@@ -1445,10 +1445,9 @@ class FocusManager with DiagnosticableTreeMixin, ChangeNotifier {
/// interaction type. /// interaction type.
/// ///
/// The initial value of [highlightMode] depends upon the value of /// The initial value of [highlightMode] depends upon the value of
/// [defaultTargetPlatform] and /// [defaultTargetPlatform] and [BaseMouseTracker.mouseIsConnected] of
/// [RendererBinding.instance.mouseTracker.mouseIsConnected], making a guess /// [RendererBinding.mouseTracker], making a guess about which interaction is
/// about which interaction is most appropriate for the initial interaction /// most appropriate for the initial interaction mode.
/// mode.
/// ///
/// Defaults to [FocusHighlightStrategy.automatic]. /// Defaults to [FocusHighlightStrategy.automatic].
FocusHighlightStrategy get highlightStrategy => _highlightStrategy; FocusHighlightStrategy get highlightStrategy => _highlightStrategy;
......
...@@ -398,7 +398,7 @@ class Focus extends StatefulWidget { ...@@ -398,7 +398,7 @@ class Focus extends StatefulWidget {
/// ///
/// See also: /// See also:
/// ///
/// * [DefaultFocusTraversal], a widget that sets the traversal policy for /// * [FocusTraversalGroup], a widget that sets the traversal policy for
/// its descendants. /// its descendants.
/// * [FocusTraversalPolicy], a class that can be extended to describe a /// * [FocusTraversalPolicy], a class that can be extended to describe a
/// traversal policy. /// traversal policy.
......
...@@ -348,7 +348,7 @@ class FormField<T> extends StatefulWidget { ...@@ -348,7 +348,7 @@ class FormField<T> extends StatefulWidget {
/// [TextFormField] to change if no other subtext decoration is set on the /// [TextFormField] to change if no other subtext decoration is set on the
/// field. To create a field whose height is fixed regardless of whether or /// field. To create a field whose height is fixed regardless of whether or
/// not an error is displayed, either wrap the [TextFormField] in a fixed /// not an error is displayed, either wrap the [TextFormField] in a fixed
/// height parent like [SizedBox], or set the [TextFormField.helperText] /// height parent like [SizedBox], or set the [InputDecoration.helperText]
/// parameter to a space. /// parameter to a space.
final FormFieldValidator<T> validator; final FormFieldValidator<T> validator;
......
...@@ -3290,8 +3290,9 @@ abstract class Element extends DiagnosticableTree implements BuildContext { ...@@ -3290,8 +3290,9 @@ abstract class Element extends DiagnosticableTree implements BuildContext {
/// the "active" lifecycle state. /// the "active" lifecycle state.
/// ///
/// Subclasses that override this method are likely to want to also override /// Subclasses that override this method are likely to want to also override
/// [update], [visitChildren], [insertChildRenderObject], [moveChildRenderObject], /// [update], [visitChildren], [RenderObjectElement.insertChildRenderObject],
/// and [removeChildRenderObject]. /// [RenderObjectElement.moveChildRenderObject], and
/// [RenderObjectElement.removeChildRenderObject].
@mustCallSuper @mustCallSuper
void mount(Element parent, dynamic newSlot) { void mount(Element parent, dynamic newSlot) {
assert(_debugLifecycleState == _ElementLifecycle.initial); assert(_debugLifecycleState == _ElementLifecycle.initial);
......
...@@ -689,9 +689,9 @@ class GestureDetector extends StatelessWidget { ...@@ -689,9 +689,9 @@ class GestureDetector extends StatelessWidget {
/// ///
/// By default, the drag start behavior is [DragStartBehavior.start]. /// By default, the drag start behavior is [DragStartBehavior.start].
/// ///
/// Only the [onStart] callbacks for the [VerticalDragGestureRecognizer], /// Only the [DragGestureRecognizer.onStart] callbacks for the
/// [HorizontalDragGestureRecognizer] and [PanGestureRecognizer] are affected /// [VerticalDragGestureRecognizer], [HorizontalDragGestureRecognizer] and
/// by this setting. /// [PanGestureRecognizer] are affected by this setting.
/// ///
/// See also: /// See also:
/// ///
...@@ -1223,7 +1223,7 @@ abstract class SemanticsGestureDelegate { ...@@ -1223,7 +1223,7 @@ abstract class SemanticsGestureDelegate {
/// object of the gesture detector. /// object of the gesture detector.
/// ///
/// This method is called when the widget is created, updated, or during /// This method is called when the widget is created, updated, or during
/// [RawGestureDetector.replaceGestureRecognizers]. /// [RawGestureDetectorState.replaceGestureRecognizers].
void assignSemantics(RenderSemanticsGestureHandler renderObject); void assignSemantics(RenderSemanticsGestureHandler renderObject);
@override @override
......
...@@ -132,10 +132,8 @@ class Icon extends StatelessWidget { ...@@ -132,10 +132,8 @@ class Icon extends StatelessWidget {
/// Announced in accessibility modes (e.g TalkBack/VoiceOver). /// Announced in accessibility modes (e.g TalkBack/VoiceOver).
/// This label does not show in the UI. /// This label does not show in the UI.
/// ///
/// See also: /// * [SemanticsProperties.label], which is set to [semanticLabel] in the
/// /// underlying [Semantics] widget.
/// * [Semantics.label], which is set to [semanticLabel] in the underlying
/// [Semantics] widget.
final String semanticLabel; final String semanticLabel;
/// The text direction to use for rendering the icon. /// The text direction to use for rendering the icon.
......
...@@ -74,7 +74,7 @@ class IconThemeData with Diagnosticable { ...@@ -74,7 +74,7 @@ class IconThemeData with Diagnosticable {
/// See also: /// See also:
/// ///
/// * [CupertinoIconThemeData.resolve] an implementation that resolves /// * [CupertinoIconThemeData.resolve] an implementation that resolves
/// [CupertinoIconThemeData.color] before returning. /// the color of [CupertinoIconThemeData] before returning.
IconThemeData resolve(BuildContext context) => this; IconThemeData resolve(BuildContext context) => this;
/// Whether all the properties of this object are non-null. /// Whether all the properties of this object are non-null.
......
...@@ -642,8 +642,8 @@ class Image extends StatefulWidget { ...@@ -642,8 +642,8 @@ class Image extends StatefulWidget {
/// The [bytes], [scale], and [repeat] arguments must not be null. /// The [bytes], [scale], and [repeat] arguments must not be null.
/// ///
/// This only accepts compressed image formats (e.g. PNG). Uncompressed /// This only accepts compressed image formats (e.g. PNG). Uncompressed
/// formats like rawRgba (the default format of [ui.Image.toByteData]) will /// formats like rawRgba (the default format of [dart:ui.Image.toByteData])
/// lead to exceptions. /// will lead to exceptions.
/// ///
/// Either the [width] and [height] arguments should be specified, or the /// Either the [width] and [height] arguments should be specified, or the
/// widget should be placed in a context that sets tight layout constraints. /// widget should be placed in a context that sets tight layout constraints.
......
...@@ -62,10 +62,8 @@ class ImageIcon extends StatelessWidget { ...@@ -62,10 +62,8 @@ class ImageIcon extends StatelessWidget {
/// Announced in accessibility modes (e.g TalkBack/VoiceOver). /// Announced in accessibility modes (e.g TalkBack/VoiceOver).
/// This label does not show in the UI. /// This label does not show in the UI.
/// ///
/// See also: /// * [SemanticsProperties.label], which is set to [semanticLabel] in the
/// /// underlying [Semantics] widget.
/// * [Semantics.label], which is set to [semanticLabel] in the underlying
/// [Semantics] widget.
final String semanticLabel; final String semanticLabel;
@override @override
......
...@@ -221,7 +221,7 @@ class DefaultWidgetsLocalizations implements WidgetsLocalizations { ...@@ -221,7 +221,7 @@ class DefaultWidgetsLocalizations implements WidgetsLocalizations {
/// A [LocalizationsDelegate] that uses [DefaultWidgetsLocalizations.load] /// A [LocalizationsDelegate] that uses [DefaultWidgetsLocalizations.load]
/// to create an instance of this class. /// to create an instance of this class.
/// ///
/// [WidgetsApp] automatically adds this value to [WidgetApp.localizationsDelegates]. /// [WidgetsApp] automatically adds this value to [WidgetsApp.localizationsDelegates].
static const LocalizationsDelegate<WidgetsLocalizations> delegate = _WidgetsLocalizationsDelegate(); static const LocalizationsDelegate<WidgetsLocalizations> delegate = _WidgetsLocalizationsDelegate();
} }
......
...@@ -253,7 +253,7 @@ class MediaQueryData { ...@@ -253,7 +253,7 @@ class MediaQueryData {
/// {@tool dartpad --template=stateful_widget_material} /// {@tool dartpad --template=stateful_widget_material}
/// ///
/// For apps that might be deployed on Android Q devices with full gesture /// For apps that might be deployed on Android Q devices with full gesture
/// navigation enabled, use [MediaQuery.systemGestureInsets] with [Padding] /// navigation enabled, use [systemGestureInsets] with [Padding]
/// to avoid having the left and right edges of the [Slider] from appearing /// to avoid having the left and right edges of the [Slider] from appearing
/// within the area reserved for system gesture navigation. /// within the area reserved for system gesture navigation.
/// ///
...@@ -309,7 +309,7 @@ class MediaQueryData { ...@@ -309,7 +309,7 @@ class MediaQueryData {
/// ///
/// See also: /// See also:
/// ///
/// * [Window.AccessibilityFeatures], where the setting originates. /// * [Window.accessibilityFeatures], where the setting originates.
final bool accessibleNavigation; final bool accessibleNavigation;
/// Whether the device is inverting the colors of the platform. /// Whether the device is inverting the colors of the platform.
...@@ -318,7 +318,7 @@ class MediaQueryData { ...@@ -318,7 +318,7 @@ class MediaQueryData {
/// ///
/// See also: /// See also:
/// ///
/// * [Window.AccessibilityFeatures], where the setting originates. /// * [Window.accessibilityFeatures], where the setting originates.
final bool invertColors; final bool invertColors;
/// Whether the user requested a high contrast between foreground and background /// Whether the user requested a high contrast between foreground and background
...@@ -333,7 +333,7 @@ class MediaQueryData { ...@@ -333,7 +333,7 @@ class MediaQueryData {
/// ///
/// See also: /// See also:
/// ///
/// * [Window.AccessibilityFeatures], where the setting originates. /// * [Window.accessibilityFeatures], where the setting originates.
final bool disableAnimations; final bool disableAnimations;
/// Whether the platform is requesting that text be drawn with a bold font /// Whether the platform is requesting that text be drawn with a bold font
...@@ -341,7 +341,7 @@ class MediaQueryData { ...@@ -341,7 +341,7 @@ class MediaQueryData {
/// ///
/// See also: /// See also:
/// ///
/// * [Window.AccessibilityFeatures], where the setting originates. /// * [Window.accessibilityFeatures], where the setting originates.
final bool boldText; final bool boldText;
/// Describes the navigation mode requested by the platform. /// Describes the navigation mode requested by the platform.
......
...@@ -312,7 +312,7 @@ abstract class Route<T> { ...@@ -312,7 +312,7 @@ abstract class Route<T> {
/// ///
/// This is called by [didPop] and in response to /// This is called by [didPop] and in response to
/// [NavigatorState.pushReplacement]. If [didPop] was not called, then the /// [NavigatorState.pushReplacement]. If [didPop] was not called, then the
/// [Navigator.finalizeRoute] method must be called immediately, and no exit /// [NavigatorState.finalizeRoute] method must be called immediately, and no exit
/// animation will run. /// animation will run.
/// ///
/// The [popped] future is completed by this method. The `result` argument /// The [popped] future is completed by this method. The `result` argument
...@@ -322,7 +322,7 @@ abstract class Route<T> { ...@@ -322,7 +322,7 @@ abstract class Route<T> {
/// This should be called before the pop animation, if any, takes place, /// This should be called before the pop animation, if any, takes place,
/// though in some cases the animation may be driven by the user before the /// though in some cases the animation may be driven by the user before the
/// route is committed to being popped; this can in particular happen with the /// route is committed to being popped; this can in particular happen with the
/// iOS-style back gesture. See [Navigator.didStartUserGesture]. /// iOS-style back gesture. See [NavigatorState.didStartUserGesture].
@protected @protected
@mustCallSuper @mustCallSuper
void didComplete(T result) { void didComplete(T result) {
...@@ -367,9 +367,9 @@ abstract class Route<T> { ...@@ -367,9 +367,9 @@ abstract class Route<T> {
/// Called whenever the internal state of the route has changed. /// Called whenever the internal state of the route has changed.
/// ///
/// This should be called whenever [willHandlePopInternally], [didPop], /// This should be called whenever [willHandlePopInternally], [didPop],
/// [offstage], or other internal state of the route changes value. It is used /// [ModalRoute.offstage], or other internal state of the route changes value.
/// by [ModalRoute], for example, to report the new information via its /// It is used by [ModalRoute], for example, to report the new information via
/// inherited widget to any children of the route. /// its inherited widget to any children of the route.
/// ///
/// See also: /// See also:
/// ///
...@@ -382,7 +382,7 @@ abstract class Route<T> { ...@@ -382,7 +382,7 @@ abstract class Route<T> {
/// the route may wish to rebuild as well. /// the route may wish to rebuild as well.
/// ///
/// This is called by the [Navigator] whenever the [NavigatorState]'s /// This is called by the [Navigator] whenever the [NavigatorState]'s
/// [widget] changes, for example because the [MaterialApp] has been rebuilt. /// [State.widget] changes, for example because the [MaterialApp] has been rebuilt.
/// This ensures that routes that directly refer to the state of the widget /// This ensures that routes that directly refer to the state of the widget
/// that built the [MaterialApp] will be notified when that widget rebuilds, /// that built the [MaterialApp] will be notified when that widget rebuilds,
/// since it would otherwise be difficult to notify the routes that state they /// since it would otherwise be difficult to notify the routes that state they
...@@ -1061,7 +1061,7 @@ class DefaultTransitionDelegate<T> extends TransitionDelegate<T> { ...@@ -1061,7 +1061,7 @@ class DefaultTransitionDelegate<T> extends TransitionDelegate<T> {
/// ### Displaying a full-screen route /// ### Displaying a full-screen route
/// ///
/// Although you can create a navigator directly, it's most common to use the /// Although you can create a navigator directly, it's most common to use the
/// navigator created by the [Router] which itself is created and configured by /// navigator created by the `Router` which itself is created and configured by
/// a [WidgetsApp] or a [MaterialApp] widget. You can refer to that navigator /// a [WidgetsApp] or a [MaterialApp] widget. You can refer to that navigator
/// with [Navigator.of]. /// with [Navigator.of].
/// ///
...@@ -1534,7 +1534,7 @@ class Navigator extends StatefulWidget { ...@@ -1534,7 +1534,7 @@ class Navigator extends StatefulWidget {
/// context. /// context.
/// ///
/// {@template flutter.widgets.navigator.pushNamed} /// {@template flutter.widgets.navigator.pushNamed}
/// The route name will be passed to that navigator's [onGenerateRoute] /// The route name will be passed to the [Navigator.onGenerateRoute]
/// callback. The returned route will be pushed into the navigator. /// callback. The returned route will be pushed into the navigator.
/// ///
/// The new route and the previous route (if any) are notified (see /// The new route and the previous route (if any) are notified (see
...@@ -1550,7 +1550,8 @@ class Navigator extends StatefulWidget { ...@@ -1550,7 +1550,8 @@ class Navigator extends StatefulWidget {
/// ///
/// The `T` type argument is the type of the return value of the route. /// The `T` type argument is the type of the return value of the route.
/// ///
/// To use [pushNamed], an [onGenerateRoute] callback must be provided, /// To use [pushNamed], an [Navigator.onGenerateRoute] callback must be
/// provided,
/// {@endtemplate} /// {@endtemplate}
/// ///
/// {@template flutter.widgets.navigator.pushNamed.arguments} /// {@template flutter.widgets.navigator.pushNamed.arguments}
...@@ -1638,7 +1639,7 @@ class Navigator extends StatefulWidget { ...@@ -1638,7 +1639,7 @@ class Navigator extends StatefulWidget {
/// the widget that created their route. The type of `result`, if provided, /// the widget that created their route. The type of `result`, if provided,
/// must match the type argument of the class of the old route (`TO`). /// must match the type argument of the class of the old route (`TO`).
/// ///
/// The route name will be passed to the navigator's [onGenerateRoute] /// The route name will be passed to the [Navigator.onGenerateRoute]
/// callback. The returned route will be pushed into the navigator. /// callback. The returned route will be pushed into the navigator.
/// ///
/// The new route and the route below the removed route are notified (see /// The new route and the route below the removed route are notified (see
...@@ -1658,8 +1659,8 @@ class Navigator extends StatefulWidget { ...@@ -1658,8 +1659,8 @@ class Navigator extends StatefulWidget {
/// The `T` type argument is the type of the return value of the new route, /// The `T` type argument is the type of the return value of the new route,
/// and `TO` is the type of the return value of the old route. /// and `TO` is the type of the return value of the old route.
/// ///
/// To use [pushReplacementNamed], an [onGenerateRoute] callback must be /// To use [pushReplacementNamed], a [Navigator.onGenerateRoute] callback must
/// provided. /// be provided.
/// {@endtemplate} /// {@endtemplate}
/// ///
/// {@macro flutter.widgets.navigator.pushNamed.arguments} /// {@macro flutter.widgets.navigator.pushNamed.arguments}
...@@ -1690,14 +1691,14 @@ class Navigator extends StatefulWidget { ...@@ -1690,14 +1691,14 @@ class Navigator extends StatefulWidget {
/// {@template flutter.widgets.navigator.popAndPushNamed} /// {@template flutter.widgets.navigator.popAndPushNamed}
/// The popping of the previous route is handled as per [pop]. /// The popping of the previous route is handled as per [pop].
/// ///
/// The new route's name will be passed to the navigator's [onGenerateRoute] /// The new route's name will be passed to the [Navigator.onGenerateRoute]
/// callback. The returned route will be pushed into the navigator. /// callback. The returned route will be pushed into the navigator.
/// ///
/// The new route, the old route, and the route below the old route (if any) /// The new route, the old route, and the route below the old route (if any)
/// are all notified (see [Route.didPop], [Route.didComplete], /// are all notified (see [Route.didPop], [Route.didComplete],
/// [Route.didPopNext], [Route.didPush], and [Route.didChangeNext]). If the /// [Route.didPopNext], [Route.didPush], and [Route.didChangeNext]). If the
/// [Navigator] has any [Navigator.observers], they will be notified as well /// [Navigator] has any [Navigator.observers], they will be notified as well
/// (see [NavigatorObserver.didPop] and [NavigatorObservers.didPush]). The /// (see [NavigatorObserver.didPop] and [NavigatorObserver.didPush]). The
/// animations for the pop and the push are performed simultaneously, so the /// animations for the pop and the push are performed simultaneously, so the
/// route below may be briefly visible even if both the old route and the new /// route below may be briefly visible even if both the old route and the new
/// route are opaque (see [TransitionRoute.opaque]). /// route are opaque (see [TransitionRoute.opaque]).
...@@ -1711,7 +1712,7 @@ class Navigator extends StatefulWidget { ...@@ -1711,7 +1712,7 @@ class Navigator extends StatefulWidget {
/// The `T` type argument is the type of the return value of the new route, /// The `T` type argument is the type of the return value of the new route,
/// and `TO` is the return value type of the old route. /// and `TO` is the return value type of the old route.
/// ///
/// To use [popAndPushNamed], an [onGenerateRoute] callback must be provided. /// To use [popAndPushNamed], a [Navigator.onGenerateRoute] callback must be provided.
/// ///
/// {@endtemplate} /// {@endtemplate}
/// ///
...@@ -1754,15 +1755,15 @@ class Navigator extends StatefulWidget { ...@@ -1754,15 +1755,15 @@ class Navigator extends StatefulWidget {
/// The removed routes are removed without being completed, so this method /// The removed routes are removed without being completed, so this method
/// does not take a return value argument. /// does not take a return value argument.
/// ///
/// The new route's name (`routeName`) will be passed to the navigator's /// The new route's name (`routeName`) will be passed to the
/// [onGenerateRoute] callback. The returned route will be pushed into the /// [Navigator.onGenerateRoute] callback. The returned route will be pushed
/// navigator. /// into the navigator.
/// ///
/// The new route and the route below the bottommost removed route (which /// The new route and the route below the bottommost removed route (which
/// becomes the route below the new route) are notified (see [Route.didPush] /// becomes the route below the new route) are notified (see [Route.didPush]
/// and [Route.didChangeNext]). If the [Navigator] has any /// and [Route.didChangeNext]). If the [Navigator] has any
/// [Navigator.observers], they will be notified as well (see /// [Navigator.observers], they will be notified as well (see
/// [NavigatorObservers.didPush] and [NavigatorObservers.didRemove]). The /// [NavigatorObserver.didPush] and [NavigatorObserver.didRemove]). The
/// removed routes are disposed, without being notified, once the new route /// removed routes are disposed, without being notified, once the new route
/// has finished animating. The futures that had been returned from pushing /// has finished animating. The futures that had been returned from pushing
/// those routes will not complete. /// those routes will not complete.
...@@ -1775,8 +1776,8 @@ class Navigator extends StatefulWidget { ...@@ -1775,8 +1776,8 @@ class Navigator extends StatefulWidget {
/// ///
/// The `T` type argument is the type of the return value of the new route. /// The `T` type argument is the type of the return value of the new route.
/// ///
/// To use [pushNamedAndRemoveUntil], an [onGenerateRoute] callback must be /// To use [pushNamedAndRemoveUntil], an [Navigator.onGenerateRoute] callback
/// provided. /// must be provided.
/// {@endtemplate} /// {@endtemplate}
/// ///
/// {@macro flutter.widgets.navigator.pushNamed.arguments} /// {@macro flutter.widgets.navigator.pushNamed.arguments}
...@@ -1899,8 +1900,8 @@ class Navigator extends StatefulWidget { ...@@ -1899,8 +1900,8 @@ class Navigator extends StatefulWidget {
/// [Route.didPush]. After removal, the new route and its new preceding route, /// [Route.didPush]. After removal, the new route and its new preceding route,
/// (the route below the bottommost removed route) are notified through /// (the route below the bottommost removed route) are notified through
/// [Route.didChangeNext]). If the [Navigator] has any [Navigator.observers], /// [Route.didChangeNext]). If the [Navigator] has any [Navigator.observers],
/// they will be notified as well (see [NavigatorObservers.didPush] and /// they will be notified as well (see [NavigatorObserver.didPush] and
/// [NavigatorObservers.didRemove]). The removed routes are disposed of and /// [NavigatorObserver.didRemove]). The removed routes are disposed of and
/// notified, once the new route has finished animating. The futures that had /// notified, once the new route has finished animating. The futures that had
/// been returned from pushing those routes will not complete. /// been returned from pushing those routes will not complete.
/// ///
...@@ -1949,7 +1950,7 @@ class Navigator extends StatefulWidget { ...@@ -1949,7 +1950,7 @@ class Navigator extends StatefulWidget {
/// the new route, are all notified (see [Route.didReplace], /// the new route, are all notified (see [Route.didReplace],
/// [Route.didChangeNext], and [Route.didChangePrevious]). If the [Navigator] /// [Route.didChangeNext], and [Route.didChangePrevious]). If the [Navigator]
/// has any [Navigator.observers], they will be notified as well (see /// has any [Navigator.observers], they will be notified as well (see
/// [NavigatorObservers.didReplace]). The removed route is disposed without /// [NavigatorObserver.didReplace]). The removed route is disposed without
/// being notified. The future that had been returned from pushing that routes /// being notified. The future that had been returned from pushing that routes
/// will not complete. /// will not complete.
/// ///
...@@ -1986,7 +1987,7 @@ class Navigator extends StatefulWidget { ...@@ -1986,7 +1987,7 @@ class Navigator extends StatefulWidget {
/// the new route, are all notified (see [Route.didReplace], /// the new route, are all notified (see [Route.didReplace],
/// [Route.didChangeNext], and [Route.didChangePrevious]). If the [Navigator] /// [Route.didChangeNext], and [Route.didChangePrevious]). If the [Navigator]
/// has any [Navigator.observers], they will be notified as well (see /// has any [Navigator.observers], they will be notified as well (see
/// [NavigatorObservers.didReplace]). The removed route is disposed without /// [NavigatorObserver.didReplace]). The removed route is disposed without
/// being notified. The future that had been returned from pushing that routes /// being notified. The future that had been returned from pushing that routes
/// will not complete. /// will not complete.
/// ///
...@@ -2732,6 +2733,8 @@ class _NavigatorReplaceObservation extends _NavigatorObservation { ...@@ -2732,6 +2733,8 @@ class _NavigatorReplaceObservation extends _NavigatorObservation {
} }
/// The state for a [Navigator] widget. /// The state for a [Navigator] widget.
///
/// A reference to this class can be obtained by calling [Navigator.of].
class NavigatorState extends State<Navigator> with TickerProviderStateMixin { class NavigatorState extends State<Navigator> with TickerProviderStateMixin {
final GlobalKey<OverlayState> _overlayKey = GlobalKey<OverlayState>(); final GlobalKey<OverlayState> _overlayKey = GlobalKey<OverlayState>();
List<_RouteEntry> _history = <_RouteEntry>[]; List<_RouteEntry> _history = <_RouteEntry>[];
......
...@@ -380,12 +380,12 @@ abstract class TransitionRoute<T> extends OverlayRoute<T> { ...@@ -380,12 +380,12 @@ abstract class TransitionRoute<T> extends OverlayRoute<T> {
/// need to coordinate transitions with. /// need to coordinate transitions with.
/// ///
/// If true, and `nextRoute.canTransitionFrom()` is true, then the /// If true, and `nextRoute.canTransitionFrom()` is true, then the
/// [buildTransitions] `secondaryAnimation` will run from 0.0 - 1.0 /// [ModalRoute.buildTransitions] `secondaryAnimation` will run from 0.0 - 1.0
/// when [nextRoute] is pushed on top of this one. Similarly, if /// when [nextRoute] is pushed on top of this one. Similarly, if
/// the [nextRoute] is popped off of this route, the /// the [nextRoute] is popped off of this route, the
/// `secondaryAnimation` will run from 1.0 - 0.0. /// `secondaryAnimation` will run from 1.0 - 0.0.
/// ///
/// If false, this route's [buildTransitions] `secondaryAnimation` parameter /// If false, this route's [ModalRoute.buildTransitions] `secondaryAnimation` parameter
/// value will be [kAlwaysDismissedAnimation]. In other words, this route /// value will be [kAlwaysDismissedAnimation]. In other words, this route
/// will not animate when when [nextRoute] is pushed on top of it or when /// will not animate when when [nextRoute] is pushed on top of it or when
/// [nextRoute] is popped off of it. /// [nextRoute] is popped off of it.
...@@ -395,7 +395,7 @@ abstract class TransitionRoute<T> extends OverlayRoute<T> { ...@@ -395,7 +395,7 @@ abstract class TransitionRoute<T> extends OverlayRoute<T> {
/// See also: /// See also:
/// ///
/// * [canTransitionFrom], which must be true for [nextRoute] for the /// * [canTransitionFrom], which must be true for [nextRoute] for the
/// [buildTransitions] `secondaryAnimation` to run. /// [ModalRoute.buildTransitions] `secondaryAnimation` to run.
bool canTransitionTo(TransitionRoute<dynamic> nextRoute) => true; bool canTransitionTo(TransitionRoute<dynamic> nextRoute) => true;
/// Returns true if [previousRoute] should animate when this route /// Returns true if [previousRoute] should animate when this route
...@@ -405,12 +405,12 @@ abstract class TransitionRoute<T> extends OverlayRoute<T> { ...@@ -405,12 +405,12 @@ abstract class TransitionRoute<T> extends OverlayRoute<T> {
/// need to coordinate transitions with. /// need to coordinate transitions with.
/// ///
/// If true, and `previousRoute.canTransitionTo()` is true, then the /// If true, and `previousRoute.canTransitionTo()` is true, then the
/// previous route's [buildTransitions] `secondaryAnimation` will /// previous route's [ModalRoute.buildTransitions] `secondaryAnimation` will
/// run from 0.0 - 1.0 when this route is pushed on top of /// run from 0.0 - 1.0 when this route is pushed on top of
/// it. Similarly, if this route is popped off of [previousRoute] /// it. Similarly, if this route is popped off of [previousRoute]
/// the previous route's `secondaryAnimation` will run from 1.0 - 0.0. /// the previous route's `secondaryAnimation` will run from 1.0 - 0.0.
/// ///
/// If false, then the previous route's [buildTransitions] /// If false, then the previous route's [ModalRoute.buildTransitions]
/// `secondaryAnimation` value will be kAlwaysDismissedAnimation. In /// `secondaryAnimation` value will be kAlwaysDismissedAnimation. In
/// other words [previousRoute] will not animate when this route is /// other words [previousRoute] will not animate when this route is
/// pushed on top of it or when then this route is popped off of it. /// pushed on top of it or when then this route is popped off of it.
...@@ -420,7 +420,7 @@ abstract class TransitionRoute<T> extends OverlayRoute<T> { ...@@ -420,7 +420,7 @@ abstract class TransitionRoute<T> extends OverlayRoute<T> {
/// See also: /// See also:
/// ///
/// * [canTransitionTo], which must be true for [previousRoute] for its /// * [canTransitionTo], which must be true for [previousRoute] for its
/// [buildTransitions] `secondaryAnimation` to run. /// [ModalRoute.buildTransitions] `secondaryAnimation` to run.
bool canTransitionFrom(TransitionRoute<dynamic> previousRoute) => true; bool canTransitionFrom(TransitionRoute<dynamic> previousRoute) => true;
@override @override
...@@ -1114,7 +1114,7 @@ abstract class ModalRoute<T> extends TransitionRoute<T> with LocalHistoryRoute<T ...@@ -1114,7 +1114,7 @@ abstract class ModalRoute<T> extends TransitionRoute<T> with LocalHistoryRoute<T
/// If [barrierDismissible] is false, then tapping the barrier has no effect. /// If [barrierDismissible] is false, then tapping the barrier has no effect.
/// ///
/// If this getter would ever start returning a different value, the /// If this getter would ever start returning a different value, the
/// [changedInternalState] should be invoked so that the change can take /// [Route.changedInternalState] should be invoked so that the change can take
/// effect. /// effect.
/// ///
/// See also: /// See also:
...@@ -1150,14 +1150,14 @@ abstract class ModalRoute<T> extends TransitionRoute<T> with LocalHistoryRoute<T ...@@ -1150,14 +1150,14 @@ abstract class ModalRoute<T> extends TransitionRoute<T> with LocalHistoryRoute<T
/// For example, when a dialog is on the screen, the page below the dialog is /// For example, when a dialog is on the screen, the page below the dialog is
/// usually darkened by the modal barrier. /// usually darkened by the modal barrier.
/// ///
/// The color is ignored, and the barrier made invisible, when [offstage] is /// The color is ignored, and the barrier made invisible, when
/// true. /// [ModalRoute.offstage] is true.
/// ///
/// While the route is animating into position, the color is animated from /// While the route is animating into position, the color is animated from
/// transparent to the specified color. /// transparent to the specified color.
/// ///
/// If this getter would ever start returning a different color, the /// If this getter would ever start returning a different color, the
/// [changedInternalState] should be invoked so that the change can take /// [Route.changedInternalState] should be invoked so that the change can take
/// effect. /// effect.
/// ///
/// See also: /// See also:
...@@ -1182,7 +1182,7 @@ abstract class ModalRoute<T> extends TransitionRoute<T> with LocalHistoryRoute<T ...@@ -1182,7 +1182,7 @@ abstract class ModalRoute<T> extends TransitionRoute<T> with LocalHistoryRoute<T
/// usually darkened by the modal barrier. /// usually darkened by the modal barrier.
/// ///
/// If this getter would ever start returning a different label, the /// If this getter would ever start returning a different label, the
/// [changedInternalState] should be invoked so that the change can take /// [Route.changedInternalState] should be invoked so that the change can take
/// effect. /// effect.
/// ///
/// See also: /// See also:
......
...@@ -73,9 +73,10 @@ class SafeArea extends StatelessWidget { ...@@ -73,9 +73,10 @@ class SafeArea extends StatelessWidget {
/// The greater of the minimum insets and the media padding will be applied. /// The greater of the minimum insets and the media padding will be applied.
final EdgeInsets minimum; final EdgeInsets minimum;
/// Specifies whether the [SafeArea] should maintain the [viewPadding] instead /// Specifies whether the [SafeArea] should maintain the
/// of the [padding] when consumed by the [viewInsets] of the current /// [MediaQueryData.viewPadding] instead of the [MediaQueryData.padding] when
/// context's [MediaQuery], defaults to false. /// consumed by the [MediaQueryData.viewInsets] of the current context's
/// [MediaQuery], defaults to false.
/// ///
/// For example, if there is an onscreen keyboard displayed above the /// For example, if there is an onscreen keyboard displayed above the
/// SafeArea, the padding can be maintained below the obstruction rather than /// SafeArea, the padding can be maintained below the obstruction rather than
......
...@@ -44,7 +44,7 @@ import 'scrollable.dart'; ...@@ -44,7 +44,7 @@ import 'scrollable.dart';
/// only be visible for a very brief period. /// only be visible for a very brief period.
@optionalTypeArgs @optionalTypeArgs
class ScrollAwareImageProvider<T> extends ImageProvider<T> { class ScrollAwareImageProvider<T> extends ImageProvider<T> {
/// Creates a [ScrollingAwareImageProvider]. /// Creates a [ScrollAwareImageProvider].
/// ///
/// The [context] object is the [BuildContext] of the [State] using this /// The [context] object is the [BuildContext] of the [State] using this
/// provider. It is used to determine scrolling velocity during [resolve]. It /// provider. It is used to determine scrolling velocity during [resolve]. It
......
...@@ -784,7 +784,7 @@ abstract class ScrollPosition extends ViewportOffset with ScrollMetrics { ...@@ -784,7 +784,7 @@ abstract class ScrollPosition extends ViewportOffset with ScrollMetrics {
/// deferred. /// deferred.
/// ///
/// The actual work of this is delegated to the [physics] via /// The actual work of this is delegated to the [physics] via
/// [ScrollPhysics.recommendDeferredScrolling] called with the current /// [ScrollPhysics.recommendDeferredLoading] called with the current
/// [activity]'s [ScrollActivity.velocity]. /// [activity]'s [ScrollActivity.velocity].
/// ///
/// Returning true from this method indicates that the [ScrollPhysics] /// Returning true from this method indicates that the [ScrollPhysics]
......
...@@ -208,10 +208,11 @@ abstract class ScrollView extends StatelessWidget { ...@@ -208,10 +208,11 @@ abstract class ScrollView extends StatelessWidget {
/// The first child in the [GrowthDirection.forward] growth direction. /// The first child in the [GrowthDirection.forward] growth direction.
/// ///
/// Children after [center] will be placed in the [axisDirection] relative to /// Children after [center] will be placed in the [AxisDirection] determined
/// the [center]. Children before [center] will be placed in the opposite of /// by [scrollDirection] and [reverse] relative to the [center]. Children
/// the [axisDirection] relative to the [center]. This makes the [center] the /// before [center] will be placed in the opposite of the axis direction
/// inflection point of the growth direction. /// relative to the [center]. This makes the [center] the inflection point of
/// the growth direction.
/// ///
/// The [center] must be the key of one of the slivers built by [buildSlivers]. /// The [center] must be the key of one of the slivers built by [buildSlivers].
/// ///
...@@ -226,11 +227,12 @@ abstract class ScrollView extends StatelessWidget { ...@@ -226,11 +227,12 @@ abstract class ScrollView extends StatelessWidget {
/// The relative position of the zero scroll offset. /// The relative position of the zero scroll offset.
/// ///
/// For example, if [anchor] is 0.5 and the [axisDirection] is /// For example, if [anchor] is 0.5 and the [AxisDirection] determined by
/// [AxisDirection.down] or [AxisDirection.up], then the zero scroll offset is /// [scrollDirection] and [reverse] is [AxisDirection.down] or
/// vertically centered within the viewport. If the [anchor] is 1.0, and the /// [AxisDirection.up], then the zero scroll offset is vertically centered
/// [axisDirection] is [AxisDirection.right], then the zero scroll offset is /// within the viewport. If the [anchor] is 1.0, and the axis direction is
/// on the left edge of the viewport. /// [AxisDirection.right], then the zero scroll offset is on the left edge of
/// the viewport.
final double anchor; final double anchor;
/// {@macro flutter.rendering.viewport.cacheExtent} /// {@macro flutter.rendering.viewport.cacheExtent}
...@@ -856,7 +858,8 @@ abstract class BoxScrollView extends ScrollView { ...@@ -856,7 +858,8 @@ abstract class BoxScrollView extends ScrollView {
/// ///
/// [AutomaticKeepAlive] descendants typically signal it to be kept alive /// [AutomaticKeepAlive] descendants typically signal it to be kept alive
/// by using the [AutomaticKeepAliveClientMixin], then implementing the /// by using the [AutomaticKeepAliveClientMixin], then implementing the
/// [wantKeepAlive] getter and calling [updateKeepAlive]. /// [AutomaticKeepAliveClientMixin.wantKeepAlive] getter and calling
/// [AutomaticKeepAliveClientMixin.updateKeepAlive].
/// ///
/// ## Transitioning to [CustomScrollView] /// ## Transitioning to [CustomScrollView]
/// ///
......
...@@ -264,8 +264,8 @@ class Scrollable extends StatefulWidget { ...@@ -264,8 +264,8 @@ class Scrollable extends StatefulWidget {
/// when it is called, and callers will not get updated if the value changes. /// when it is called, and callers will not get updated if the value changes.
/// ///
/// The heuristic used is determined by the [physics] of this [Scrollable] /// The heuristic used is determined by the [physics] of this [Scrollable]
/// via [ScrollPhysics.recommendDeferredScrolling]. That method is called with /// via [ScrollPhysics.recommendDeferredLoading]. That method is called with
/// the current [activity]'s [ScrollActivity.velocity]. /// the current [ScrollPosition.activity]'s [ScrollActivity.velocity].
/// ///
/// If there is no [Scrollable] in the widget tree above the [context], this /// If there is no [Scrollable] in the widget tree above the [context], this
/// method returns false. /// method returns false.
...@@ -884,9 +884,6 @@ class ScrollIncrementDetails { ...@@ -884,9 +884,6 @@ class ScrollIncrementDetails {
class ScrollIntent extends Intent { class ScrollIntent extends Intent {
/// Creates a const [ScrollIntent] that requests scrolling in the given /// Creates a const [ScrollIntent] that requests scrolling in the given
/// [direction], with the given [type]. /// [direction], with the given [type].
///
/// If [reversed] is specified, then the scroll will happen in the opposite
/// direction from the normal scroll direction.
const ScrollIntent({ const ScrollIntent({
@required this.direction, @required this.direction,
this.type = ScrollIncrementType.line, this.type = ScrollIncrementType.line,
......
...@@ -149,10 +149,10 @@ class ScrollbarPainter extends ChangeNotifier implements CustomPainter { ...@@ -149,10 +149,10 @@ class ScrollbarPainter extends ChangeNotifier implements CustomPainter {
/// scrollable extent is large, the current visible viewport is small, and the /// scrollable extent is large, the current visible viewport is small, and the
/// viewport is not overscrolled. /// viewport is not overscrolled.
/// ///
/// The size of the scrollbar may shrink to a smaller size than [minLength] /// The size of the scrollbar may shrink to a smaller size than [minLength] to
/// to fit in the available paint area. E.g., when [minLength] is /// fit in the available paint area. E.g., when [minLength] is
/// `double.infinity`, it will not be respected if [viewportDimension] and /// `double.infinity`, it will not be respected if
/// [mainAxisMargin] are finite. /// [ScrollMetrics.viewportDimension] and [mainAxisMargin] are finite.
/// ///
/// Mustn't be null and the value has to be within the range of 0 to /// Mustn't be null and the value has to be within the range of 0 to
/// [minOverscrollLength], inclusive. Defaults to 18.0. /// [minOverscrollLength], inclusive. Defaults to 18.0.
...@@ -164,7 +164,7 @@ class ScrollbarPainter extends ChangeNotifier implements CustomPainter { ...@@ -164,7 +164,7 @@ class ScrollbarPainter extends ChangeNotifier implements CustomPainter {
/// When overscrolling, the size of the scrollbar may shrink to a smaller size /// When overscrolling, the size of the scrollbar may shrink to a smaller size
/// than [minOverscrollLength] to fit in the available paint area. E.g., when /// than [minOverscrollLength] to fit in the available paint area. E.g., when
/// [minOverscrollLength] is `double.infinity`, it will not be respected if /// [minOverscrollLength] is `double.infinity`, it will not be respected if
/// the [viewportDimension] and [mainAxisMargin] are finite. /// the [ScrollMetrics.viewportDimension] and [mainAxisMargin] are finite.
/// ///
/// The value is less than or equal to [minLength] and greater than or equal to 0. /// The value is less than or equal to [minLength] and greater than or equal to 0.
/// If unspecified or set to null, it will defaults to the value of [minLength]. /// If unspecified or set to null, it will defaults to the value of [minLength].
......
...@@ -272,7 +272,7 @@ class ShortcutManager extends ChangeNotifier with Diagnosticable { ...@@ -272,7 +272,7 @@ class ShortcutManager extends ChangeNotifier with Diagnosticable {
/// ///
/// When the map is changed, listeners to this manager will be notified. /// When the map is changed, listeners to this manager will be notified.
/// ///
/// The returned [LogicalKeyMap] should not be modified. /// The returned map should not be modified.
Map<LogicalKeySet, Intent> get shortcuts => _shortcuts; Map<LogicalKeySet, Intent> get shortcuts => _shortcuts;
Map<LogicalKeySet, Intent> _shortcuts; Map<LogicalKeySet, Intent> _shortcuts;
set shortcuts(Map<LogicalKeySet, Intent> value) { set shortcuts(Map<LogicalKeySet, Intent> value) {
......
...@@ -106,7 +106,8 @@ int _kDefaultSemanticIndexCallback(Widget _, int localIndex) => localIndex; ...@@ -106,7 +106,8 @@ int _kDefaultSemanticIndexCallback(Widget _, int localIndex) => localIndex;
/// ///
/// [AutomaticKeepAlive] descendants typically signal it to be kept alive by /// [AutomaticKeepAlive] descendants typically signal it to be kept alive by
/// using the [AutomaticKeepAliveClientMixin], then implementing the /// using the [AutomaticKeepAliveClientMixin], then implementing the
/// [wantKeepAlive] getter and calling [updateKeepAlive]. /// [AutomaticKeepAliveClientMixin.wantKeepAlive] getter and calling
/// [AutomaticKeepAliveClientMixin.updateKeepAlive].
/// {@endtemplate} /// {@endtemplate}
/// ///
/// See also: /// See also:
...@@ -327,9 +328,9 @@ class SliverChildBuilderDelegate extends SliverChildDelegate { ...@@ -327,9 +328,9 @@ class SliverChildBuilderDelegate extends SliverChildDelegate {
/// null. /// null.
/// ///
/// If the order in which [builder] returns children ever changes, consider /// If the order in which [builder] returns children ever changes, consider
/// providing a [findChildIndex]. This allows the delegate to find the new index /// providing a [findChildIndexCallback]. This allows the delegate to find the
/// for a child that was previously located at a different index to attach the /// new index for a child that was previously located at a different index to
/// existing state to the [Widget] at its new location. /// attach the existing state to the [Widget] at its new location.
const SliverChildBuilderDelegate( const SliverChildBuilderDelegate(
this.builder, { this.builder, {
this.findChildIndexCallback, this.findChildIndexCallback,
...@@ -393,13 +394,13 @@ class SliverChildBuilderDelegate extends SliverChildDelegate { ...@@ -393,13 +394,13 @@ class SliverChildBuilderDelegate extends SliverChildDelegate {
/// Typically, children in a scrolling container must be annotated with a /// Typically, children in a scrolling container must be annotated with a
/// semantic index in order to generate the correct accessibility /// semantic index in order to generate the correct accessibility
/// announcements. This should only be set to false if the indexes have /// announcements. This should only be set to false if the indexes have
/// already been provided by an [IndexedChildSemantics] widget. /// already been provided by an [IndexedSemantics] widget.
/// ///
/// Defaults to true. /// Defaults to true.
/// ///
/// See also: /// See also:
/// ///
/// * [IndexedChildSemantics], for an explanation of how to manually /// * [IndexedSemantics], for an explanation of how to manually
/// provide semantic indexes. /// provide semantic indexes.
final bool addSemanticIndexes; final bool addSemanticIndexes;
...@@ -599,7 +600,7 @@ class SliverChildListDelegate extends SliverChildDelegate { ...@@ -599,7 +600,7 @@ class SliverChildListDelegate extends SliverChildDelegate {
/// Typically, children in a scrolling container must be annotated with a /// Typically, children in a scrolling container must be annotated with a
/// semantic index in order to generate the correct accessibility /// semantic index in order to generate the correct accessibility
/// announcements. This should only be set to false if the indexes have /// announcements. This should only be set to false if the indexes have
/// already been provided by an [IndexedChildSemantics] widget. /// already been provided by an [IndexedSemantics] widget.
/// ///
/// Defaults to true. /// Defaults to true.
/// ///
...@@ -717,8 +718,8 @@ abstract class SliverWithKeepAliveWidget extends RenderObjectWidget { ...@@ -717,8 +718,8 @@ abstract class SliverWithKeepAliveWidget extends RenderObjectWidget {
/// Helps subclasses build their children lazily using a [SliverChildDelegate]. /// Helps subclasses build their children lazily using a [SliverChildDelegate].
/// ///
/// The widgets returned by the [delegate] are cached and the delegate is only /// The widgets returned by the [delegate] are cached and the delegate is only
/// consulted again if it changes and the new delegate's [shouldRebuild] method /// consulted again if it changes and the new delegate's
/// returns true. /// [SliverChildDelegate.shouldRebuild] method returns true.
abstract class SliverMultiBoxAdaptorWidget extends SliverWithKeepAliveWidget { abstract class SliverMultiBoxAdaptorWidget extends SliverWithKeepAliveWidget {
/// Initializes fields for subclasses. /// Initializes fields for subclasses.
const SliverMultiBoxAdaptorWidget({ const SliverMultiBoxAdaptorWidget({
......
...@@ -281,12 +281,12 @@ class _RenderSliverFractionalPadding extends RenderSliverEdgeInsetsPadding { ...@@ -281,12 +281,12 @@ class _RenderSliverFractionalPadding extends RenderSliverEdgeInsetsPadding {
/// {@end-tool} /// {@end-tool}
/// ///
/// [SliverFillRemaining] will defer to the size of its [child] if the /// [SliverFillRemaining] will defer to the size of its [child] if the
/// [precedingScrollExtent] exceeded the length of the viewport's main axis. /// [SliverConstraints.precedingScrollExtent] exceeded the length of the viewport's main axis.
/// ///
/// {@tool dartpad --template=stateless_widget_scaffold} /// {@tool dartpad --template=stateless_widget_scaffold}
/// ///
/// In this sample the [SliverFillRemaining] defers to the size of its [child] /// In this sample the [SliverFillRemaining] defers to the size of its [child]
/// because the [precedingScrollExtent] of the [SliverConstraints] has gone /// because the [SliverConstraints.precedingScrollExtent] has gone
/// beyond that of the viewport's main axis. /// beyond that of the viewport's main axis.
/// ///
/// ```dart /// ```dart
......
...@@ -67,14 +67,6 @@ enum TextSelectionHandleType { ...@@ -67,14 +67,6 @@ enum TextSelectionHandleType {
/// [start] handle always moves the [start]/[baseOffset] of the selection. /// [start] handle always moves the [start]/[baseOffset] of the selection.
enum _TextSelectionHandlePosition { start, end } enum _TextSelectionHandlePosition { start, end }
/// Signature for reporting changes to the selection component of a
/// [TextEditingValue] for the purposes of a [TextSelectionOverlay]. The
/// [caretRect] argument gives the location of the caret in the coordinate space
/// of the [RenderBox] given by the [TextSelectionOverlay.renderObject].
///
/// Used by [TextSelectionOverlay.onSelectionOverlayChanged].
typedef TextSelectionOverlayChanged = void Function(TextEditingValue value, Rect caretRect);
/// Signature for when a pointer that's dragging to select text has moved again. /// Signature for when a pointer that's dragging to select text has moved again.
/// ///
/// The first argument [startDetails] contains the details of the event that /// The first argument [startDetails] contains the details of the event that
...@@ -869,8 +861,8 @@ abstract class TextSelectionGestureDetectorBuilderDelegate { ...@@ -869,8 +861,8 @@ abstract class TextSelectionGestureDetectorBuilderDelegate {
/// ///
/// The class implements sensible defaults for many user interactions /// The class implements sensible defaults for many user interactions
/// with an [EditableText] (see the documentation of the various gesture handler /// with an [EditableText] (see the documentation of the various gesture handler
/// methods, e.g. [onTapDown], [onForcePress], etc.). Subclasses of /// methods, e.g. [onTapDown], [onForcePressStart], etc.). Subclasses of
/// [EditableTextSelectionHandlesProvider] can change the behavior performed in /// [TextSelectionGestureDetectorBuilder] can change the behavior performed in
/// responds to these gesture events by overriding the corresponding handler /// responds to these gesture events by overriding the corresponding handler
/// methods of this class. /// methods of this class.
/// ///
......
...@@ -1216,8 +1216,7 @@ mixin WidgetInspectorService { ...@@ -1216,8 +1216,7 @@ mixin WidgetInspectorService {
} }
/// Returns a unique id for [object] that will remain live at least until /// Returns a unique id for [object] that will remain live at least until
/// [disposeGroup] is called on [groupName] or [dispose] is called on the id /// [disposeGroup] is called on [groupName].
/// returned by this method.
@protected @protected
String toId(Object object, String groupName) { String toId(Object object, String groupName) {
if (object == null) if (object == null)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment