[package] name = "octotablet" version = "0.1.0" authors = ["Aspen "] edition = "2021" description = "Cross-platform Tablet and Stylus Api 🐙✨" categories = [ # lol, very few relavant ones. Notably nothing for platform abstraction :V "os", ] keywords = [ # Not wacom specific but this is the most well-known search query "wacom", "tablet", "stylus", "pen", "ink", ] repository = "https://github.com/Fuzzyzilla/octotablet" license = "MIT" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [package.metadata.docs.rs] default-target = "x86_64-unknown-linux-gnu" targets = [ # Windows "i686-pc-windows-msvc", "x86_64-pc-windows-msvc", # Unix/Wayland "i686-unknown-linux-gnu", "x86_64-unknown-linux-gnu", ] rustdoc-args = ["--cfg", "docsrs"] [dependencies] # Common deps. bitflags = "2.4.2" enum_dispatch = "0.3.12" raw-window-handle = "0.6.0" strum = { version = "0.26.2", features = ["derive"] } thiserror = "1.0.58" smallvec = "1.13.1" # Wayland `tablet_unstable_v2` deps. # Crazy `cfg` stolen verbatim from winit's Cargo.toml as I assume they have more wisdom than I [target.'cfg(any(docsrs, all(unix, not(any(target_os = "redox", target_family = "wasm", target_os = "android", target_os = "ios", target_os = "macos")))))'.dependencies] wayland-backend = { version = "0.3.3", features = ["client_system"], optional = true } wayland-client = { version = "0.31.2", optional = true } wayland-protocols = { version = "0.31.2", features = ["client", "unstable"], optional = true } # Windows Ink `RealTimeStylus` [target.'cfg(any(docsrs, target_os = "windows"))'.dependencies.windows] version = "0.54.0" optional = true features = [ "implement", "Win32_UI_TabletPC", "Win32_UI_HiDpi", "Win32_System_Com_Marshal", "Win32_Foundation", ] [features] default = ["wayland-tablet-unstable-v2", "windows-ink"] # Wayland `tablet_unstable_v2` support # Note: "unstable" here refers to the protocol itself, not to the stability of it's integration into this crate! wayland-tablet-unstable-v2 = ["wayland-backend", "wayland-client", "wayland-protocols"] # Windows Ink `RealTimeStylus` support windows-ink = ["windows"] [dev-dependencies] eframe = "0.26.2" winit = "0.29.15" tiny-skia = {version = "0.11.4", default-features = false, features = ["std", "simd"]} usb-ids = "1.2024.2" softbuffer = "0.4.1" [build-dependencies] cfg_aliases = "0.2.0"