- React SPA: dashboard, data sources CRUD, widgets CRUD, layout builder, presets. TanStack Router + Query, shadcn/ui, Vite proxy to :3000 - wire media + rss adapters into polling loop, remove xtb source type - media adapter: read username/password from headers, proper subsonic auth - event handler: subscribe to LayoutChanged, push screen update to clients - fix clippy warnings across workspace (Default impls, collapsible ifs, redundant closures, is_none_or, unused imports)
18 lines
519 B
Rust
18 lines
519 B
Rust
use crate::BoundingBox;
|
|
|
|
pub trait DisplayPort {
|
|
type Error;
|
|
|
|
fn clear_region(&mut self, bounds: BoundingBox) -> Result<(), Self::Error>;
|
|
fn draw_text(
|
|
&mut self,
|
|
text: &str,
|
|
x: u16,
|
|
y: u16,
|
|
bounds: BoundingBox,
|
|
) -> Result<(), Self::Error>;
|
|
fn draw_icon(&mut self, icon: &str, x: u16, y: u16) -> Result<(), Self::Error>;
|
|
fn fill_background(&mut self, bounds: BoundingBox) -> Result<(), Self::Error>;
|
|
fn flush(&mut self) -> Result<(), Self::Error>;
|
|
}
|