egui/crates/eframe/Cargo.toml

170 lines
5.4 KiB
TOML
Raw Normal View History

[package]
name = "eframe"
version = "0.20.1"
authors = ["Emil Ernerfeldt <emil.ernerfeldt@gmail.com>"]
description = "egui framework - write GUI apps that compiles to web and/or natively"
edition = "2021"
rust-version = "1.65"
homepage = "https://github.com/emilk/egui/tree/master/crates/eframe"
license = "MIT OR Apache-2.0"
readme = "README.md"
repository = "https://github.com/emilk/egui/tree/master/crates/eframe"
categories = ["gui", "game-development"]
keywords = ["egui", "gui", "gamedev"]
2022-03-10 13:25:33 +00:00
include = ["../LICENSE-APACHE", "../LICENSE-MIT", "**/*.rs", "Cargo.toml"]
[package.metadata.docs.rs]
all-features = true
2022-12-11 15:52:37 +00:00
targets = ["x86_64-unknown-linux-gnu", "wasm32-unknown-unknown"]
[lib]
[features]
Implement accessibility APIs via AccessKit (#2294) * squash before rebase * Update AccessKit, introducing support for editable spinners on Windows and an important fix for navigation order on macOS * Restore support for increment and decrement actions in DragValue * Avoid VoiceOver race condition bug * fix clippy lint * Tell AccessKit that the default action for a text edit (equivalent to a click) is to set the focus. This matters to some platform adapters. * Refactor InputState functions for AccessKit actions * Support the AccessKit SetValue for DragValue; this is the only way for a Windows AT to programmatically adjust the value * Same for Slider * Properly associate the slider label with both the slider and the drag value * Lazily activate egui's AccessKit support * fix clippy lint * Update AccessKit * More documentation, particularly around lazy activation * Tweak one of the doc comments * See if I can get AccessKit exempted from the 'missing backticks' lint * Make PlatformOutput::accesskit_update an Option * Refactor lazy activation * Refactor node mutation (again) * Eliminate the need for an explicit is_accesskit_active method, at least for now * Fix doc comment * More refactoring of tree construction; don't depend on Arc::get_mut * Override a clippy lint; I seem to have no other choice * Final planned refactor: a more flexible approach to hierarchy * Last AccessKit update for this PR; includes an important macOS DPI fix * Move and document the optional accesskit dependency * Fix comment typo Co-authored-by: Emil Ernerfeldt <emil.ernerfeldt@gmail.com> * reformat * More elegant code for conditionally creating a node Co-authored-by: Emil Ernerfeldt <emil.ernerfeldt@gmail.com> * Set step to 1.0 for all integer sliders * Add doc example for Response::labelled_by * Clarify a TODO comment I left for myself Co-authored-by: Emil Ernerfeldt <emil.ernerfeldt@gmail.com>
2022-12-04 18:17:12 +00:00
default = ["accesskit", "default_fonts", "glow"]
## Enable platform accessibility API implementations through [AccessKit](https://accesskit.dev/).
accesskit = ["egui/accesskit", "egui-winit/accesskit"]
## Detect dark mode system preference using [`dark-light`](https://docs.rs/dark-light).
##
## See also [`NativeOptions::follow_system_theme`] and [`NativeOptions::default_theme`].
dark-light = ["dep:dark-light"]
2022-04-11 08:53:16 +00:00
## If set, egui will use `include_bytes!` to bundle some fonts.
## If you plan on specifying your own fonts you may disable this feature.
default_fonts = ["egui/default_fonts"]
## Use [`glow`](https://github.com/grovesNL/glow) for painting, via [`egui_glow`](https://github.com/emilk/egui/tree/master/crates/egui_glow).
glow = ["dep:glow", "dep:egui_glow", "dep:glutin", "dep:glutin-winit"]
## Enable saving app state to disk.
persistence = [
"directories-next",
"egui-winit/serde",
"egui/persistence",
"ron",
"serde",
]
## Enable profiling with the [`puffin`](https://docs.rs/puffin) crate.
##
## Only enabled on native, because of the low resolution (1ms) of time keeping in browsers.
## `eframe` will call `puffin::GlobalProfiler::lock().new_frame()` for you
puffin = ["dep:puffin", "egui_glow?/puffin", "egui-wgpu?/puffin"]
## Enable screen reader support (requires `ctx.options_mut(|o| o.screen_reader = true);`) on web.
##
## For other platforms, use the "accesskit" feature instead.
web_screen_reader = ["tts"]
## If set, eframe will look for the env-var `EFRAME_SCREENSHOT_TO` and write a screenshot to that location, and then quit.
## This is used to generate images for the examples.
__screenshot = ["dep:image"]
## Use [`wgpu`](https://docs.rs/wgpu) for painting (via [`egui-wgpu`](https://github.com/emilk/egui/tree/master/crates/egui-wgpu)).
## This overrides the `glow` feature.
wgpu = ["dep:wgpu", "dep:egui-wgpu", "dep:pollster"]
[dependencies]
egui = { version = "0.20.0", path = "../egui", default-features = false, features = [
"bytemuck",
"tracing",
] }
thiserror = "1.0.37"
tracing = { version = "0.1", default-features = false, features = ["std"] }
#! ### Optional dependencies
## Enable this when generating docs.
document-features = { version = "0.2", optional = true }
egui_glow = { version = "0.20.0", path = "../egui_glow", optional = true, default-features = false }
glow = { version = "0.11", optional = true }
ron = { version = "0.8", optional = true, features = ["integer128"] }
serde = { version = "1", optional = true, features = ["derive"] }
# -------------------------------------------
# native:
[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
egui-winit = { version = "0.20.0", path = "../egui-winit", default-features = false, features = [
2022-11-07 08:23:45 +00:00
"clipboard",
"links",
] }
raw-window-handle = { version = "0.5.0" }
2023-02-08 09:00:03 +00:00
winit = "0.28.1"
# optional native:
dark-light = { version = "1.0", optional = true }
directories-next = { version = "2", optional = true }
egui-wgpu = { version = "0.20.0", path = "../egui-wgpu", optional = true, features = [
2022-11-07 08:23:45 +00:00
"winit",
] } # if wgpu is used, use it with winit
pollster = { version = "0.2", optional = true } # needed for wgpu
# we can expose these to user so that they can select which backends they want to enable to avoid compiling useless deps.
# this can be done at the same time we expose x11/wayland features of winit crate.
glutin = { version = "0.30", optional = true }
glutin-winit = { version = "0.3.0", optional = true }
image = { version = "0.24", optional = true, default-features = false, features = [
"png",
] }
2022-11-07 11:37:37 +00:00
puffin = { version = "0.14", optional = true }
wgpu = { version = "0.15.0", optional = true }
# -------------------------------------------
# web:
[target.'cfg(target_arch = "wasm32")'.dependencies]
bytemuck = "1.7"
js-sys = "0.3"
percent-encoding = "2.1"
cargo update (#2671) * cargo update Updating crates.io index Updating ab_glyph v0.2.18 -> v0.2.20 Updating ab_glyph_rasterizer v0.1.7 -> v0.1.8 Updating ahash v0.8.2 -> v0.8.3 Updating anyhow v1.0.66 -> v1.0.68 Updating async-broadcast v0.4.1 -> v0.5.0 Updating async-recursion v1.0.0 -> v1.0.2 Updating async-trait v0.1.59 -> v0.1.64 Updating atomic_refcell v0.1.8 -> v0.1.9 Updating bumpalo v3.11.1 -> v3.12.0 Updating bytemuck v1.12.3 -> v1.13.0 Updating bytemuck_derive v1.3.0 -> v1.4.0 Updating bytes v1.3.0 -> v1.4.0 Updating calloop v0.10.3 -> v0.10.5 Updating cc v1.0.77 -> v1.0.79 Removing chunked_transfer v1.4.0 Updating clipboard-win v4.4.2 -> v4.5.0 Updating concurrent-queue v2.0.0 -> v2.1.0 Updating cxx v1.0.83 -> v1.0.89 Updating cxx-build v1.0.83 -> v1.0.89 Updating cxxbridge-flags v1.0.83 -> v1.0.89 Updating cxxbridge-macro v1.0.83 -> v1.0.89 Updating document-features v0.2.6 -> v0.2.7 Updating dyn-clone v1.0.9 -> v1.0.10 Updating either v1.8.0 -> v1.8.1 Updating enum-map v2.4.1 -> v2.4.2 Updating enum-map-derive v0.10.0 -> v0.11.0 Updating futures-core v0.3.25 -> v0.3.26 Updating futures-io v0.3.25 -> v0.3.26 Updating futures-sink v0.3.25 -> v0.3.26 Updating futures-task v0.3.25 -> v0.3.26 Updating futures-util v0.3.25 -> v0.3.26 Updating glob v0.3.0 -> v0.3.1 Updating heck v0.4.0 -> v0.4.1 Updating image v0.24.4 -> v0.24.5 Updating itoa v1.0.4 -> v1.0.5 Updating jpeg-decoder v0.2.6 -> v0.3.0 Updating js-sys v0.3.60 -> v0.3.61 Updating libc v0.2.138 -> v0.2.139 Updating link-cplusplus v1.0.7 -> v1.0.8 Updating nom v7.1.1 -> v7.1.3 Adding nom8 v0.2.0 Updating num_enum v0.5.7 -> v0.5.9 Updating num_enum_derive v0.5.7 -> v0.5.9 Updating once_cell v1.16.0 -> v1.17.0 Updating ordered-stream v0.1.2 -> v0.1.4 Updating owned_ttf_parser v0.17.1 -> v0.18.1 Updating parking_lot_core v0.9.5 -> v0.9.7 Updating paste v1.0.9 -> v1.0.11 Updating plist v1.3.1 -> v1.4.0 Updating polling v2.5.1 -> v2.5.2 Updating proc-macro-crate v1.2.1 -> v1.3.0 Updating proc-macro2 v1.0.47 -> v1.0.50 Updating puffin v0.14.0 -> v0.14.2 Updating puffin_http v0.11.0 -> v0.11.1 Adding quick-xml v0.26.0 Updating quote v1.0.21 -> v1.0.23 Updating regex v1.7.0 -> v1.7.1 Updating rustls v0.20.7 -> v0.20.8 Updating ryu v1.0.11 -> v1.0.12 Updating scratch v1.0.2 -> v1.0.3 Updating serde v1.0.149 -> v1.0.152 Updating serde_derive v1.0.149 -> v1.0.152 Updating serde_json v1.0.89 -> v1.0.91 Updating serde_repr v0.1.9 -> v0.1.10 Updating syn v1.0.105 -> v1.0.107 Updating termcolor v1.1.3 -> v1.2.0 Updating thiserror v1.0.37 -> v1.0.38 Updating thiserror-impl v1.0.37 -> v1.0.38 Updating tinyvec_macros v0.1.0 -> v0.1.1 Updating toml v0.5.9 -> v0.5.11 Adding toml_datetime v0.5.1 Adding toml_edit v0.18.1 Updating ttf-parser v0.17.1 -> v0.18.1 Updating typenum v1.15.0 -> v1.16.0 Updating unicode-bidi v0.3.8 -> v0.3.10 Updating unicode-ident v1.0.5 -> v1.0.6 Updating ureq v2.5.0 -> v2.6.2 Updating wasm-bindgen v0.2.83 -> v0.2.84 Updating wasm-bindgen-backend v0.2.83 -> v0.2.84 Updating wasm-bindgen-futures v0.4.33 -> v0.4.34 Updating wasm-bindgen-macro v0.2.83 -> v0.2.84 Updating wasm-bindgen-macro-support v0.2.83 -> v0.2.84 Updating wasm-bindgen-shared v0.2.83 -> v0.2.84 Updating wayland-sys v0.30.0 -> v0.30.1 Updating web-sys v0.3.60 -> v0.3.61 Updating webbrowser v0.8.6 -> v0.8.7 Updating webpki-roots v0.22.5 -> v0.22.6 Updating which v4.3.0 -> v4.4.0 Updating x11-dl v2.20.1 -> v2.21.0 Updating zbus v3.6.2 -> v3.8.0 Updating zbus_macros v3.6.2 -> v3.8.0 Updating zbus_names v2.4.0 -> v2.5.0 Updating zstd-sys v2.0.4+zstd.1.5.2 -> v2.0.6+zstd.1.5.2 Updating zvariant v3.9.0 -> v3.10.0 Updating zvariant_derive v3.9.0 -> v3.10.0 * Remove unnecessary import of wasm_bindgen::JsCast (its now in prelude) * egui_glow/README.md: add line on how to run the example * revert wasm-bindgen update * Revert "Remove unnecessary import of wasm_bindgen::JsCast (its now in prelude)" This reverts commit 95c3076cce76577d9f0f35e48f99b4acd2dbe62e.
2023-02-04 12:41:34 +00:00
wasm-bindgen = "=0.2.83"
wasm-bindgen-futures = "0.4"
web-sys = { version = "0.3.58", features = [
"BinaryType",
"Blob",
"Clipboard",
"ClipboardEvent",
"CompositionEvent",
"console",
"CssStyleDeclaration",
"DataTransfer",
"DataTransferItem",
"DataTransferItemList",
"Document",
"DomRect",
"DragEvent",
"Element",
"Event",
"EventListener",
"EventTarget",
"ExtSRgb",
"File",
"FileList",
"FocusEvent",
"HtmlCanvasElement",
"HtmlElement",
"HtmlInputElement",
"InputEvent",
"KeyboardEvent",
"Location",
"MediaQueryList",
"MouseEvent",
"Navigator",
"Performance",
"Storage",
"Touch",
"TouchEvent",
"TouchList",
"WebGl2RenderingContext",
"WebglDebugRendererInfo",
"WebGlRenderingContext",
"WheelEvent",
"Window",
] }
# optional web:
egui-wgpu = { version = "0.20.0", path = "../egui-wgpu", optional = true } # if wgpu is used, use it without (!) winit
tts = { version = "0.25", optional = true, default-features = false }
wgpu = { version = "0.15.0", optional = true, features = ["webgl"] }