A touchscreen is just a screen that you can touch. Central to this crate is the Touchscreen trait:
pub trait Touchscreen:
embedded_graphics_core::prelude::DrawTarget +
embedded_graphics_core::prelude::OriginDimensions {
type TouchError;
fn get_touch_event(&mut self) -> Result<Option<TouchEvent>, Self::TouchError>;
}It is overly simple right now, it is more of a tentative starting point. There are 2 implementations, which can be selected by feature flags:
xpt2046-screen: A screen that combines XPT2046 (touch) with arbitrary embedded-graphicsDrawTarget.web-screen: A screen that marries WebSimulatorDisplay with mouse event handlers bound to a container element.sdl-screen: SimulatorDisplay adapted to Touchscreen. Unfinished
- Support touchscreens that can signal touch with interrupt
- Finish SDL
touchscreen - Clean up
web_screen, propagate mouse handling errors