diff --git a/packages/flutter/lib/src/material/chip_theme.dart b/packages/flutter/lib/src/material/chip_theme.dart index 38b636315a..71d9ab7297 100644 --- a/packages/flutter/lib/src/material/chip_theme.dart +++ b/packages/flutter/lib/src/material/chip_theme.dart @@ -360,7 +360,7 @@ class ChipThemeData extends Diagnosticable { /// /// The arguments must not be null. /// - /// {@macro flutter.material.themeData.lerp} + /// {@macro flutter.painting.gradient.lerp} static ChipThemeData lerp(ChipThemeData a, ChipThemeData b, double t) { assert(t != null); if (a == null && b == null) diff --git a/packages/flutter/lib/src/material/slider_theme.dart b/packages/flutter/lib/src/material/slider_theme.dart index 4560710ae7..44d8c1df45 100644 --- a/packages/flutter/lib/src/material/slider_theme.dart +++ b/packages/flutter/lib/src/material/slider_theme.dart @@ -391,7 +391,7 @@ class SliderThemeData extends Diagnosticable { /// /// The arguments must not be null. /// - /// {@macro flutter.material.themeData.lerp} + /// {@macro flutter.painting.gradient.lerp} static SliderThemeData lerp(SliderThemeData a, SliderThemeData b, double t) { assert(a != null); assert(b != null); diff --git a/packages/flutter/lib/src/material/tab_bar_theme.dart b/packages/flutter/lib/src/material/tab_bar_theme.dart index eeec4e1179..f9be2c7b11 100644 --- a/packages/flutter/lib/src/material/tab_bar_theme.dart +++ b/packages/flutter/lib/src/material/tab_bar_theme.dart @@ -63,7 +63,7 @@ class TabBarTheme extends Diagnosticable { /// /// The arguments must not be null. /// - /// {@macro flutter.material.themeData.lerp} + /// {@macro flutter.painting.gradient.lerp} static TabBarTheme lerp(TabBarTheme a, TabBarTheme b, double t) { assert(a != null); assert(b != null); diff --git a/packages/flutter/lib/src/material/theme_data.dart b/packages/flutter/lib/src/material/theme_data.dart index e1e02f5779..5e4fb66a3e 100644 --- a/packages/flutter/lib/src/material/theme_data.dart +++ b/packages/flutter/lib/src/material/theme_data.dart @@ -774,19 +774,9 @@ class ThemeData extends Diagnosticable { /// Linearly interpolate between two themes. /// - /// {@template flutter.material.themeData.lerp} - /// The `t` argument represents position on the timeline, with 0.0 meaning - /// that the interpolation has not started, returning `a` (or something - /// equivalent to `a`), 1.0 meaning that the interpolation has finished, - /// returning `b` (or something equivalent to `b`), and values in between - /// meaning that the interpolation is at the relevant point on the timeline - /// between `a` and `b`. The interpolation can be extrapolated beyond 0.0 and - /// 1.0, so negative values and values greater than 1.0 are valid (and can - /// easily be generated by curves such as [Curves.elasticInOut]). + /// The arguments must not be null. /// - /// Values for `t` are usually obtained from an [Animation], such as - /// an [AnimationController]. - /// {@endtemplate} + /// {@macro flutter.painting.gradient.lerp} static ThemeData lerp(ThemeData a, ThemeData b, double t) { assert(a != null); assert(b != null); diff --git a/packages/flutter/lib/src/material/typography.dart b/packages/flutter/lib/src/material/typography.dart index 29349bdcc5..e10a44ab0c 100644 --- a/packages/flutter/lib/src/material/typography.dart +++ b/packages/flutter/lib/src/material/typography.dart @@ -361,7 +361,7 @@ class TextTheme extends Diagnosticable { /// /// The arguments must not be null. /// - /// {@macro flutter.material.themeData.lerp} + /// {@macro flutter.painting.gradient.lerp} static TextTheme lerp(TextTheme a, TextTheme b, double t) { assert(a != null); assert(b != null); diff --git a/packages/flutter/lib/src/painting/alignment.dart b/packages/flutter/lib/src/painting/alignment.dart index 671855df36..007348edc6 100644 --- a/packages/flutter/lib/src/painting/alignment.dart +++ b/packages/flutter/lib/src/painting/alignment.dart @@ -85,7 +85,7 @@ abstract class AlignmentGeometry { /// representing a combination of both is returned. That object can be turned /// into a concrete [Alignment] using [resolve]. /// - /// {@macro flutter.material.themeData.lerp} + /// {@macro flutter.painting.gradient.lerp} static AlignmentGeometry lerp(AlignmentGeometry a, AlignmentGeometry b, double t) { assert(t != null); if (a == null && b == null) @@ -324,7 +324,7 @@ class Alignment extends AlignmentGeometry { /// /// If either is null, this function interpolates from [Alignment.center]. /// - /// {@macro flutter.material.themeData.lerp} + /// {@macro flutter.painting.gradient.lerp} static Alignment lerp(Alignment a, Alignment b, double t) { assert(t != null); if (a == null && b == null) @@ -505,7 +505,7 @@ class AlignmentDirectional extends AlignmentGeometry { /// /// If either is null, this function interpolates from [AlignmentDirectional.center]. /// - /// {@macro flutter.material.themeData.lerp} + /// {@macro flutter.painting.gradient.lerp} static AlignmentDirectional lerp(AlignmentDirectional a, AlignmentDirectional b, double t) { assert(t != null); if (a == null && b == null) diff --git a/packages/flutter/lib/src/painting/border_radius.dart b/packages/flutter/lib/src/painting/border_radius.dart index ed16d30888..8ee074ffb0 100644 --- a/packages/flutter/lib/src/painting/border_radius.dart +++ b/packages/flutter/lib/src/painting/border_radius.dart @@ -127,7 +127,7 @@ abstract class BorderRadiusGeometry { /// representing a combination of both is returned. That object can be turned /// into a concrete [BorderRadius] using [resolve]. /// - /// {@macro flutter.material.themeData.lerp} + /// {@macro flutter.painting.gradient.lerp} static BorderRadiusGeometry lerp(BorderRadiusGeometry a, BorderRadiusGeometry b, double t) { assert(t != null); if (a == null && b == null) @@ -471,7 +471,7 @@ class BorderRadius extends BorderRadiusGeometry { /// /// If either is null, this function interpolates from [BorderRadius.zero]. /// - /// {@macro flutter.material.themeData.lerp} + /// {@macro flutter.painting.gradient.lerp} static BorderRadius lerp(BorderRadius a, BorderRadius b, double t) { assert(t != null); if (a == null && b == null) @@ -688,7 +688,7 @@ class BorderRadiusDirectional extends BorderRadiusGeometry { /// /// If either is null, this function interpolates from [BorderRadiusDirectional.zero]. /// - /// {@macro flutter.material.themeData.lerp} + /// {@macro flutter.painting.gradient.lerp} static BorderRadiusDirectional lerp(BorderRadiusDirectional a, BorderRadiusDirectional b, double t) { assert(t != null); if (a == null && b == null) diff --git a/packages/flutter/lib/src/painting/borders.dart b/packages/flutter/lib/src/painting/borders.dart index 8cf8181535..9e9f309eb9 100644 --- a/packages/flutter/lib/src/painting/borders.dart +++ b/packages/flutter/lib/src/painting/borders.dart @@ -198,7 +198,7 @@ class BorderSide { /// /// The arguments must not be null. /// - /// {@macro flutter.material.themeData.lerp} + /// {@macro flutter.painting.gradient.lerp} static BorderSide lerp(BorderSide a, BorderSide b, double t) { assert(a != null); assert(b != null); @@ -404,7 +404,7 @@ abstract class ShapeBorder { /// function instead. If both return null, it returns `a` before `t=0.5` /// and `b` after `t=0.5`. /// - /// {@macro flutter.material.themeData.lerp} + /// {@macro flutter.painting.gradient.lerp} static ShapeBorder lerp(ShapeBorder a, ShapeBorder b, double t) { assert(t != null); ShapeBorder result; diff --git a/packages/flutter/lib/src/painting/box_border.dart b/packages/flutter/lib/src/painting/box_border.dart index 82f7d29220..aeaeb57910 100644 --- a/packages/flutter/lib/src/painting/box_border.dart +++ b/packages/flutter/lib/src/painting/box_border.dart @@ -98,7 +98,7 @@ abstract class BoxBorder extends ShapeBorder { /// For a more flexible approach, consider [ShapeBorder.lerp], which would /// instead [add] the two sets of sides and interpolate them simultaneously. /// - /// {@macro flutter.material.themeData.lerp} + /// {@macro flutter.painting.gradient.lerp} static BoxBorder lerp(BoxBorder a, BoxBorder b, double t) { assert(t != null); if ((a is Border || a == null) && (b is Border || b == null)) @@ -421,7 +421,7 @@ class Border extends BoxBorder { /// If a border is null, it is treated as having four [BorderSide.none] /// borders. /// - /// {@macro flutter.material.themeData.lerp} + /// {@macro flutter.painting.gradient.lerp} static Border lerp(Border a, Border b, double t) { assert(t != null); if (a == null && b == null) @@ -711,7 +711,7 @@ class BorderDirectional extends BoxBorder { /// If a border is null, it is treated as having four [BorderSide.none] /// borders. /// - /// {@macro flutter.material.themeData.lerp} + /// {@macro flutter.painting.gradient.lerp} static BorderDirectional lerp(BorderDirectional a, BorderDirectional b, double t) { assert(t != null); if (a == null && b == null) diff --git a/packages/flutter/lib/src/painting/box_decoration.dart b/packages/flutter/lib/src/painting/box_decoration.dart index 53512bf5be..90a7e374b9 100644 --- a/packages/flutter/lib/src/painting/box_decoration.dart +++ b/packages/flutter/lib/src/painting/box_decoration.dart @@ -215,7 +215,7 @@ class BoxDecoration extends Decoration { /// unmodified. Otherwise, the values are computed by interpolating the /// properties appropriately. /// - /// {@macro flutter.material.themeData.lerp} + /// {@macro flutter.painting.gradient.lerp} /// /// See also: /// diff --git a/packages/flutter/lib/src/painting/box_shadow.dart b/packages/flutter/lib/src/painting/box_shadow.dart index 44d8e1e986..e707b7ecaa 100644 --- a/packages/flutter/lib/src/painting/box_shadow.dart +++ b/packages/flutter/lib/src/painting/box_shadow.dart @@ -94,7 +94,7 @@ class BoxShadow { /// a box shadow that matches the other box shadow in color but has a zero /// offset and a zero blurRadius. /// - /// {@macro flutter.material.themeData.lerp} + /// {@macro flutter.painting.gradient.lerp} static BoxShadow lerp(BoxShadow a, BoxShadow b, double t) { assert(t != null); if (a == null && b == null) @@ -115,7 +115,7 @@ class BoxShadow { /// /// If the lists differ in length, excess items are lerped with null. /// - /// {@macro flutter.material.themeData.lerp} + /// {@macro flutter.painting.gradient.lerp} static List lerpList(List a, List b, double t) { assert(t != null); if (a == null && b == null) diff --git a/packages/flutter/lib/src/painting/colors.dart b/packages/flutter/lib/src/painting/colors.dart index d735428092..39928f6098 100644 --- a/packages/flutter/lib/src/painting/colors.dart +++ b/packages/flutter/lib/src/painting/colors.dart @@ -194,7 +194,7 @@ class HSVColor { /// that will interpolate from a transparent red and cycle through the hues to /// match the target color, regardless of what that color's hue is. /// - /// {@macro flutter.material.themeData.lerp} + /// {@macro flutter.painting.gradient.lerp} /// /// Values outside of the valid range for each channel will be clamped. static HSVColor lerp(HSVColor a, HSVColor b, double t) { diff --git a/packages/flutter/lib/src/painting/decoration.dart b/packages/flutter/lib/src/painting/decoration.dart index 9c90f67a24..4141870cd1 100644 --- a/packages/flutter/lib/src/painting/decoration.dart +++ b/packages/flutter/lib/src/painting/decoration.dart @@ -124,7 +124,7 @@ abstract class Decoration extends Diagnosticable { /// respectively to find a solution. If the two values can't directly be /// interpolated, then the interpolation is done via null (at `t == 0.5`). /// - /// {@macro flutter.material.themeData.lerp} + /// {@macro flutter.painting.gradient.lerp} static Decoration lerp(Decoration a, Decoration b, double t) { assert(t != null); if (a == null && b == null) diff --git a/packages/flutter/lib/src/painting/edge_insets.dart b/packages/flutter/lib/src/painting/edge_insets.dart index afa7672180..f0347b1c00 100644 --- a/packages/flutter/lib/src/painting/edge_insets.dart +++ b/packages/flutter/lib/src/painting/edge_insets.dart @@ -190,7 +190,7 @@ abstract class EdgeInsetsGeometry { /// representing a combination of both is returned. That object can be turned /// into a concrete [EdgeInsets] using [resolve]. /// - /// {@macro flutter.material.themeData.lerp} + /// {@macro flutter.painting.gradient.lerp} static EdgeInsetsGeometry lerp(EdgeInsetsGeometry a, EdgeInsetsGeometry b, double t) { assert(t != null); if (a == null && b == null) @@ -546,7 +546,7 @@ class EdgeInsets extends EdgeInsetsGeometry { /// /// If either is null, this function interpolates from [EdgeInsets.zero]. /// - /// {@macro flutter.material.themeData.lerp} + /// {@macro flutter.painting.gradient.lerp} static EdgeInsets lerp(EdgeInsets a, EdgeInsets b, double t) { assert(t != null); if (a == null && b == null) @@ -770,7 +770,7 @@ class EdgeInsetsDirectional extends EdgeInsetsGeometry { /// (either [EdgeInsets] or [EdgeInsetsDirectional]), consider the /// [EdgeInsetsGeometry.lerp] static method. /// - /// {@macro flutter.material.themeData.lerp} + /// {@macro flutter.painting.gradient.lerp} static EdgeInsetsDirectional lerp(EdgeInsetsDirectional a, EdgeInsetsDirectional b, double t) { assert(t != null); if (a == null && b == null) diff --git a/packages/flutter/lib/src/painting/flutter_logo.dart b/packages/flutter/lib/src/painting/flutter_logo.dart index e9505b6101..8ec0627a63 100644 --- a/packages/flutter/lib/src/painting/flutter_logo.dart +++ b/packages/flutter/lib/src/painting/flutter_logo.dart @@ -127,7 +127,7 @@ class FlutterLogoDecoration extends Decoration { /// non-null value. If one of the values is null, then the result is obtained /// by scaling the other value's opacity and [margin]. /// - /// {@macro flutter.material.themeData.lerp} + /// {@macro flutter.painting.gradient.lerp} /// /// See also: /// diff --git a/packages/flutter/lib/src/painting/fractional_offset.dart b/packages/flutter/lib/src/painting/fractional_offset.dart index a751e74f12..c957085035 100644 --- a/packages/flutter/lib/src/painting/fractional_offset.dart +++ b/packages/flutter/lib/src/painting/fractional_offset.dart @@ -178,7 +178,7 @@ class FractionalOffset extends Alignment { /// /// If either is null, this function interpolates from [FractionalOffset.center]. /// - /// {@macro flutter.material.themeData.lerp} + /// {@macro flutter.painting.gradient.lerp} static FractionalOffset lerp(FractionalOffset a, FractionalOffset b, double t) { assert(t != null); if (a == null && b == null) diff --git a/packages/flutter/lib/src/painting/gradient.dart b/packages/flutter/lib/src/painting/gradient.dart index 1b4217a02f..18b2185ca9 100644 --- a/packages/flutter/lib/src/painting/gradient.dart +++ b/packages/flutter/lib/src/painting/gradient.dart @@ -185,7 +185,19 @@ abstract class Gradient { /// function instead. If both return null, it returns `a` before `t == 0.5` /// and `b` after `t == 0.5`. /// - /// {@macro flutter.material.themeData.lerp} + /// {@template flutter.painting.gradient.lerp} + /// The `t` argument represents position on the timeline, with 0.0 meaning + /// that the interpolation has not started, returning `a` (or something + /// equivalent to `a`), 1.0 meaning that the interpolation has finished, + /// returning `b` (or something equivalent to `b`), and values in between + /// meaning that the interpolation is at the relevant point on the timeline + /// between `a` and `b`. The interpolation can be extrapolated beyond 0.0 and + /// 1.0, so negative values and values greater than 1.0 are valid (and can + /// easily be generated by curves such as [Curves.elasticInOut]). + /// + /// Values for `t` are usually obtained from an [Animation], such as + /// an [AnimationController]. + /// {@endtemplate} static Gradient lerp(Gradient a, Gradient b, double t) { assert(t != null); Gradient result; diff --git a/packages/flutter/lib/src/painting/shape_decoration.dart b/packages/flutter/lib/src/painting/shape_decoration.dart index ab7b352c15..880dac84f8 100644 --- a/packages/flutter/lib/src/painting/shape_decoration.dart +++ b/packages/flutter/lib/src/painting/shape_decoration.dart @@ -204,7 +204,7 @@ class ShapeDecoration extends Decoration { /// fields are all null (including the [shape], which cannot normally be /// null). /// - /// {@macro flutter.material.themeData.lerp} + /// {@macro flutter.painting.gradient.lerp} /// /// See also: /// diff --git a/packages/flutter/lib/src/painting/text_style.dart b/packages/flutter/lib/src/painting/text_style.dart index 97c83f5947..a8748e10b2 100644 --- a/packages/flutter/lib/src/painting/text_style.dart +++ b/packages/flutter/lib/src/painting/text_style.dart @@ -558,7 +558,7 @@ class TextStyle extends Diagnosticable { /// /// This will not work well if the styles don't set the same fields. /// - /// {@macro flutter.material.themeData.lerp} + /// {@macro flutter.painting.gradient.lerp} /// /// If [foreground] is specified on either of `a` or `b`, both will be treated /// as if they have a [foreground] paint (creating a new [Paint] if necessary diff --git a/packages/flutter/lib/src/rendering/box.dart b/packages/flutter/lib/src/rendering/box.dart index c6d699d6db..ad4ecee389 100644 --- a/packages/flutter/lib/src/rendering/box.dart +++ b/packages/flutter/lib/src/rendering/box.dart @@ -449,7 +449,7 @@ class BoxConstraints extends Constraints { /// If either is null, this function interpolates from a [BoxConstraints] /// object whose fields are all set to 0.0. /// - /// {@macro flutter.material.themeData.lerp} + /// {@macro flutter.painting.gradient.lerp} static BoxConstraints lerp(BoxConstraints a, BoxConstraints b, double t) { assert(t != null); if (a == null && b == null) diff --git a/packages/flutter/lib/src/rendering/stack.dart b/packages/flutter/lib/src/rendering/stack.dart index 9b1d7e11ad..9712d1593c 100644 --- a/packages/flutter/lib/src/rendering/stack.dart +++ b/packages/flutter/lib/src/rendering/stack.dart @@ -131,7 +131,7 @@ class RelativeRect { /// /// If either rect is null, this function interpolates from [RelativeRect.fill]. /// - /// {@macro flutter.material.themeData.lerp} + /// {@macro flutter.painting.gradient.lerp} static RelativeRect lerp(RelativeRect a, RelativeRect b, double t) { assert(t != null); if (a == null && b == null) diff --git a/packages/flutter/lib/src/rendering/table_border.dart b/packages/flutter/lib/src/rendering/table_border.dart index f30ea6552e..5c471a7860 100644 --- a/packages/flutter/lib/src/rendering/table_border.dart +++ b/packages/flutter/lib/src/rendering/table_border.dart @@ -147,7 +147,7 @@ class TableBorder { /// If a border is null, it is treated as having only [BorderSide.none] /// borders. /// - /// {@macro flutter.material.themeData.lerp} + /// {@macro flutter.painting.gradient.lerp} static TableBorder lerp(TableBorder a, TableBorder b, double t) { assert(t != null); if (a == null && b == null) diff --git a/packages/flutter/lib/src/widgets/icon_theme_data.dart b/packages/flutter/lib/src/widgets/icon_theme_data.dart index 57585d3530..7df1d4f3cc 100644 --- a/packages/flutter/lib/src/widgets/icon_theme_data.dart +++ b/packages/flutter/lib/src/widgets/icon_theme_data.dart @@ -68,7 +68,7 @@ class IconThemeData extends Diagnosticable { /// Linearly interpolate between two icon theme data objects. /// - /// {@macro flutter.material.themeData.lerp} + /// {@macro flutter.painting.gradient.lerp} static IconThemeData lerp(IconThemeData a, IconThemeData b, double t) { assert(t != null); return IconThemeData(