mirror of
https://github.com/emilk/egui.git
synced 2026-08-30 13:20:05 -04:00
<!-- Please read the "Making a PR" section of [`CONTRIBUTING.md`](https://github.com/emilk/egui/blob/master/CONTRIBUTING.md) before opening a Pull Request! * Keep your PR:s small and focused. * The PR title is what ends up in the changelog, so make it descriptive! * If applicable, add a screenshot or gif. * If it is a non-trivial addition, consider adding a demo for it to `egui_demo_lib`, or a new example. * Do NOT open PR:s from your `master` branch, as that makes it hard for maintainers to add commits to your PR. * Remember to run `cargo fmt` and `cargo clippy`. * Open the PR as a draft until you have self-reviewed it and run `./scripts/check.sh`. * When you have addressed a PR comment, mark it as resolved. Please be patient! I will review your PR, but my time is limited! --> Related to #3482 Not sure what the "best practice" is, to me it seems like one should import from "the original location" if possible, but now it should at least be possible to not re-export ahash without any breakage in the egui code base (but possibly in projects using egui, so one should probably deprecate it if one would like to go that path). It also seems like epaint re-exports ahash.
86 lines
3.2 KiB
TOML
86 lines
3.2 KiB
TOML
[package]
|
|
name = "egui-winit"
|
|
version.workspace = true
|
|
authors = ["Emil Ernerfeldt <emil.ernerfeldt@gmail.com>"]
|
|
description = "Bindings for using egui with winit"
|
|
edition.workspace = true
|
|
rust-version.workspace = true
|
|
homepage = "https://github.com/emilk/egui/tree/master/crates/egui-winit"
|
|
license.workspace = true
|
|
readme = "README.md"
|
|
repository = "https://github.com/emilk/egui/tree/master/crates/egui-winit"
|
|
categories = ["gui", "game-development"]
|
|
keywords = ["winit", "egui", "gui", "gamedev"]
|
|
include = ["../LICENSE-APACHE", "../LICENSE-MIT", "**/*.rs", "Cargo.toml"]
|
|
|
|
[lints]
|
|
workspace = true
|
|
|
|
[package.metadata.docs.rs]
|
|
all-features = true
|
|
|
|
|
|
[features]
|
|
default = ["clipboard", "links", "wayland", "winit/default", "x11"]
|
|
|
|
## Enable platform accessibility API implementations through [AccessKit](https://accesskit.dev/).
|
|
accesskit = ["accesskit_winit", "egui/accesskit"]
|
|
|
|
# Allow crates to choose an android-activity backend via Winit
|
|
# - It's important that most applications should not have to depend on android-activity directly, and can
|
|
# rely on Winit to pull in a suitable version (unlike most Rust crates, any version conflicts won't link)
|
|
# - It's also important that we don't impose an android-activity backend by taking this choice away from applications.
|
|
## Enable the `game-activity` backend via Winit on Android
|
|
android-game-activity = ["winit/android-game-activity"]
|
|
## Enable the `native-activity` backend via Winit on Android
|
|
android-native-activity = ["winit/android-native-activity"]
|
|
|
|
## [`bytemuck`](https://docs.rs/bytemuck) enables you to cast [`egui::epaint::Vertex`], [`egui::Vec2`] etc to `&[u8]`.
|
|
bytemuck = ["egui/bytemuck"]
|
|
|
|
## Enable cut/copy/paste to OS clipboard.
|
|
## If disabled a clipboard will be simulated so you can still copy/paste within the egui app.
|
|
clipboard = ["arboard", "smithay-clipboard"]
|
|
|
|
## Enable opening links in a browser when an egui hyperlink is clicked.
|
|
links = ["webbrowser"]
|
|
|
|
## Enable profiling with the [`puffin`](https://docs.rs/puffin) crate.
|
|
puffin = ["dep:puffin", "egui/puffin"]
|
|
|
|
## Allow serialization of [`WindowSettings`] using [`serde`](https://docs.rs/serde).
|
|
serde = ["egui/serde", "dep:serde"]
|
|
|
|
## Enables Wayland support.
|
|
wayland = ["winit/wayland", "bytemuck"]
|
|
|
|
## Enables compiling for x11.
|
|
x11 = ["winit/x11", "bytemuck"]
|
|
|
|
[dependencies]
|
|
egui = { workspace = true, default-features = false, features = ["log"] }
|
|
|
|
ahash.workspace = true
|
|
log.workspace = true
|
|
raw-window-handle.workspace = true
|
|
web-time.workspace = true
|
|
winit = { workspace = true, default-features = false, features = ["rwh_06"] }
|
|
|
|
#! ### Optional dependencies
|
|
|
|
# feature accesskit
|
|
accesskit_winit = { version = "0.16.0", optional = true }
|
|
|
|
## Enable this when generating docs.
|
|
document-features = { workspace = true, optional = true }
|
|
|
|
puffin = { workspace = true, optional = true }
|
|
serde = { workspace = true, optional = true }
|
|
webbrowser = { version = "1.0.0", optional = true }
|
|
|
|
[target.'cfg(any(target_os="linux", target_os="dragonfly", target_os="freebsd", target_os="netbsd", target_os="openbsd"))'.dependencies]
|
|
smithay-clipboard = { version = "0.7.0", optional = true }
|
|
|
|
[target.'cfg(not(target_os = "android"))'.dependencies]
|
|
arboard = { version = "3.3", optional = true, default-features = false }
|