lerp static method
Linearly interpolate between two themes.
Implementation
static MacosThemeData lerp(MacosThemeData a, MacosThemeData b, double t) {
return MacosThemeData.raw(
brightness: t < 0.5 ? a.brightness : b.brightness,
dividerColor: Color.lerp(a.dividerColor, b.dividerColor, t)!,
primaryColor: Color.lerp(a.primaryColor, b.primaryColor, t)!,
canvasColor: Color.lerp(a.primaryColor, b.primaryColor, t)!,
typography: MacosTypography.lerp(a.typography, b.typography, t),
helpButtonTheme:
HelpButtonThemeData.lerp(a.helpButtonTheme, b.helpButtonTheme, t),
pushButtonTheme:
PushButtonThemeData.lerp(a.pushButtonTheme, b.pushButtonTheme, t),
tooltipTheme: TooltipThemeData.lerp(a.tooltipTheme, b.tooltipTheme, t),
visualDensity: VisualDensity.lerp(a.visualDensity, b.visualDensity, t),
scrollbarTheme:
ScrollbarThemeData.lerp(a.scrollbarTheme, b.scrollbarTheme, t),
macosIconButtonTheme: MacosIconButtonThemeData.lerp(
a.macosIconButtonTheme,
b.macosIconButtonTheme,
t,
),
iconTheme: MacosIconThemeData.lerp(a.iconTheme, b.iconTheme, t),
macosPopupButtonTheme: MacosPopupButtonThemeData.lerp(
a.macosPopupButtonTheme,
b.macosPopupButtonTheme,
t,
),
textFieldTheme:
MacosTextFieldThemeData.lerp(a.textFieldTheme, b.textFieldTheme, t),
);
}