style/values/generics/
background.rs1use crate::derives::*;
8use crate::values::generics::length::{GenericLengthPercentageOrAuto, LengthPercentageOrAuto};
9
10#[derive(
12 Animate,
13 Clone,
14 ComputeSquaredDistance,
15 Copy,
16 Debug,
17 MallocSizeOf,
18 PartialEq,
19 SpecifiedValueInfo,
20 ToAnimatedValue,
21 ToAnimatedZero,
22 ToComputedValue,
23 ToCss,
24 ToResolvedValue,
25 ToShmem,
26)]
27#[repr(C, u8)]
28pub enum GenericBackgroundSize<LengthPercent> {
29 ExplicitSize {
31 width: GenericLengthPercentageOrAuto<LengthPercent>,
33 #[css(skip_if = "GenericLengthPercentageOrAuto::is_auto")]
35 height: GenericLengthPercentageOrAuto<LengthPercent>,
36 },
37 #[animation(error)]
39 Cover,
40 #[animation(error)]
42 Contain,
43}
44
45pub use self::GenericBackgroundSize as BackgroundSize;
46
47impl<LengthPercentage> BackgroundSize<LengthPercentage> {
48 pub fn auto() -> Self {
50 GenericBackgroundSize::ExplicitSize {
51 width: LengthPercentageOrAuto::Auto,
52 height: LengthPercentageOrAuto::Auto,
53 }
54 }
55}