[package]
edition = "2024"
name = "winio"
version = "0.12.0"
build = "build.rs"
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Single-threaded async GUI runtime based on compio."
readme = "README.md"
keywords = [
"async",
"gui",
]
categories = [
"asynchronous",
"gui",
]
license = "MIT"
repository = "https://github.com/compio-rs/winio"
[package.metadata.docs.rs]
features = [
"gtk",
"win32",
"all",
]
no-default-features = true
rustdoc-args = [
"--cfg",
"docsrs",
]
targets = [
"x86_64-unknown-linux-gnu",
"x86_64-pc-windows-msvc",
"aarch64-apple-darwin",
"aarch64-apple-ios",
"aarch64-linux-android",
]
[features]
all = [
"media",
"webview",
"wgpu",
"plotters",
"compio-compat",
]
compio-compat = [
"compio/runtime",
"compio/compat",
"compio/fs",
"winio-ui-stub/compio-compat",
"winio-ui-app-kit/compio-compat",
"winio-ui-ui-kit/compio-compat",
"winio-ui-win32?/compio-compat",
"winio-ui-winui?/compio-compat",
"winio-ui-gtk?/compio-compat",
"winio-ui-qt?/compio-compat",
"winio-ui-android/compio-compat",
]
default = [
"qt",
"win32",
]
enable_log = [
"compio/enable_log",
"compio-log/enable_log",
]
gen_blocks = ["winio-elm/gen_blocks"]
gtk = ["dep:winio-ui-gtk"]
media = [
"winio-ui-stub/media",
"winio-ui-app-kit/media",
"winio-ui-ui-kit/media",
"winio-ui-win32?/media",
"winio-ui-winui?/media",
"winio-ui-gtk?/media",
"winio-ui-qt?/media",
"winio-ui-android/media",
]
nightly = [
"gen_blocks",
"once_cell_try",
"winio-elm/nightly",
"winio-ui-windows-common/nightly",
"winio-ui-win32?/nightly",
]
objc-static = ["winio-ui-app-kit/objc-static"]
once_cell_try = [
"winio-ui-windows-common/once_cell_try",
"winio-ui-win32?/once_cell_try",
]
plotters = ["dep:plotters-backend"]
qt = ["dep:winio-ui-qt"]
qt-opengl = ["winio-ui-qt?/opengl"]
raw-window-handle = ["winio-handle/raw-window-handle"]
webview = [
"dep:cookie",
"winio-ui-stub/webview",
"winio-ui-app-kit/webview",
"winio-ui-ui-kit/webview",
"winio-ui-win32?/webview",
"winio-ui-winui?/webview",
"winio-ui-gtk?/webview",
"winio-ui-qt?/webview",
"winio-ui-android/webview",
]
wgpu = [
"dep:wgpu",
"winio-ui-stub/wgpu",
"winio-ui-app-kit/wgpu",
"winio-ui-ui-kit/wgpu",
"winio-ui-win32?/wgpu",
"winio-ui-winui?/wgpu",
"winio-ui-gtk?/wgpu",
"winio-ui-qt?/wgpu",
"winio-ui-android/wgpu",
]
win32 = ["dep:winio-ui-win32"]
win32-dark-mode = ["windows-dark-mode"]
windows-dark-mode = [
"winio-ui-win32?/dark-mode",
"winio-ui-winui?/win32-dark-mode",
]
winui = ["dep:winio-ui-winui"]
winui-content-dialog = ["winio-ui-winui?/content-dialog"]
winui-enable-cbs = ["winio-ui-winui?/enable-cbs"]
winui-webview-system = ["winio-ui-winui?/webview-system"]
[lib]
name = "winio"
path = "src/lib.rs"
[dependencies.cfg-if]
version = "1"
[dependencies.compio]
version = "0.19.0"
optional = true
default-features = false
[dependencies.compio-log]
version = "0.2.0"
[dependencies.cookie]
version = "0.18"
optional = true
[dependencies.futures-util]
version = "0.3"
[dependencies.image]
version = "0.25"
default-features = false
[dependencies.inherit-methods-macro]
version = "0.1"
[dependencies.plotters-backend]
version = "0.3"
optional = true
[dependencies.wgpu]
version = "30"
optional = true
default-features = false
[dependencies.winio-elm]
version = "0.6.0"
features = [
"handle",
"primitive",
]
[dependencies.winio-handle]
version = "0.7.0"
[dependencies.winio-layout]
version = "0.3.0"
[dependencies.winio-primitive]
version = "0.2.0"
[build-dependencies.cfg_aliases]
version = "0.2"
[target.'cfg(not(any(target_vendor = "apple", target_os = "android")))'.dependencies.winio-ui-stub]
version = "0.1.0"
[target.'cfg(not(any(windows, target_vendor = "apple")))'.dependencies.winio-ui-gtk]
version = "0.6.0"
optional = true
[target.'cfg(not(any(windows, target_vendor = "apple")))'.dependencies.winio-ui-qt]
version = "0.6.0"
optional = true
[target.'cfg(target_os = "android")'.dependencies.android-activity]
version = "0.6"
[target.'cfg(target_os = "android")'.dependencies.winio-ui-android]
version = "0.1.0"
[target.'cfg(target_os = "ios")'.dependencies.winio-ui-ui-kit]
version = "0.1.0"
[target.'cfg(target_os = "macos")'.dependencies.winio-ui-app-kit]
version = "0.6.0"
[target."cfg(windows)".dependencies.winio-ui-win32]
version = "0.6.0"
optional = true
[target."cfg(windows)".dependencies.winio-ui-windows-common]
version = "0.7.0"
[target."cfg(windows)".dependencies.winio-ui-winui]
version = "0.6.0"
optional = true