diff --git a/sixtyfps_compiler/generator/rust.rs b/sixtyfps_compiler/generator/rust.rs index 14c753c27..14eb14bd5 100644 --- a/sixtyfps_compiler/generator/rust.rs +++ b/sixtyfps_compiler/generator/rust.rs @@ -685,7 +685,7 @@ fn compile_expression(e: &Expression, component: &Rc) -> TokenStream (Type::Float32, Type::Model) | (Type::Int32, Type::Model) => quote!((0..#f as i32)), (Type::Array(_), Type::Model) => quote!(#f.iter().cloned()), (Type::Float32, Type::Color) => { - quote!(sixtyfps::re_exports::Color::from(#f as u32)) + quote!(sixtyfps::re_exports::Color::from_argb_encoded(#f as u32)) } _ => f, } diff --git a/sixtyfps_runtime/corelib/graphics.rs b/sixtyfps_runtime/corelib/graphics.rs index 48bbfbced..f97e87fc2 100644 --- a/sixtyfps_runtime/corelib/graphics.rs +++ b/sixtyfps_runtime/corelib/graphics.rs @@ -104,12 +104,6 @@ impl Color { pub const TRANSPARENT: Color = Color::from_rgba(0, 0, 0, 0); } -impl From for Color { - fn from(encoded: u32) -> Self { - Color::from_argb_encoded(encoded) - } -} - impl InterpolatedPropertyValue for Color { fn interpolate(self, target_value: Self, t: f32) -> Self { Self { diff --git a/sixtyfps_runtime/interpreter/eval.rs b/sixtyfps_runtime/interpreter/eval.rs index 3501ee11d..3585507d2 100644 --- a/sixtyfps_runtime/interpreter/eval.rs +++ b/sixtyfps_runtime/interpreter/eval.rs @@ -209,7 +209,7 @@ pub fn eval_expression( (Value::Number(n), Type::String) => { Value::String(SharedString::from(format!("{}", n).as_str())) } - (Value::Number(n), Type::Color) => Value::Color(Color::from(n as u32)), + (Value::Number(n), Type::Color) => Value::Color(Color::from_argb_encoded(n as u32)), (v, _) => v, } }