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