1use crate::Rect;
2
3#[derive(Clone, Copy, Debug, Default, PartialEq, Eq)]
7#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
8pub struct ViewportState {
9 pub rect: Rect,
10}
11
12#[derive(Clone, Copy, Debug, Default, PartialEq, Eq)]
16#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
17pub struct ScrollState {
18 pub offset: u64,
19 pub is_scrolling: bool,
20}
21
22#[derive(Clone, Copy, Debug, Default, PartialEq, Eq)]
27#[cfg_attr(feature = "serde", derive(serde::Serialize, serde::Deserialize))]
28pub struct FrameState {
29 pub viewport: ViewportState,
30 pub scroll: ScrollState,
31}