fixes for veilid 0.4.0

This commit is contained in:
Christien Rioux 2024-10-20 14:57:35 -04:00
parent 4966349ac9
commit e8810d208d
16 changed files with 454 additions and 341 deletions

View file

@ -145,3 +145,33 @@ class ScaleConfig extends ThemeExtension<ScaleConfig> {
lerpDouble(borderRadiusScale, other.borderRadiusScale, t) ?? 1);
}
}
class ScaleTheme extends ThemeExtension<ScaleTheme> {
ScaleTheme({
required this.scheme,
required this.config,
});
final ScaleScheme scheme;
final ScaleConfig config;
@override
ScaleTheme copyWith({
ScaleScheme? scheme,
ScaleConfig? config,
}) =>
ScaleTheme(
scheme: scheme ?? this.scheme,
config: config ?? this.config,
);
@override
ScaleTheme lerp(ScaleTheme? other, double t) {
if (other is! ScaleTheme) {
return this;
}
return ScaleTheme(
scheme: scheme.lerp(other.scheme, t),
config: config.lerp(other.config, t));
}
}