mirror of
https://github.com/bevyengine/bevy
synced 2024-12-22 19:13:08 +00:00
73e0ac26ca
# Objective `bevy_a11y` was impossible to integrate into some third-party projects in part because it insisted on managing the accessibility tree on its own. ## Solution The changes in this PR were necessary to get `bevy_egui` working with Bevy's AccessKit integration. They were tested on a fork of 0.11, developed against `bevy_egui`, then ported to main and tested against the `ui` example. ## Changelog ### Changed * Add `bevy_a11y::ManageAccessibilityUpdates` to indicate whether the ECS should manage accessibility tree updates. * Add getter/setter to `bevy_a11y::AccessibilityRequested`. * Add `bevy_a11y::AccessibilitySystem` `SystemSet` for ordering relative to accessibility tree updates. * Upgrade `accesskit` to v0.12.0. ### Fixed * Correctly set initial accessibility focus to new windows on creation. ## Migration Guide ### Change direct accesses of `AccessibilityRequested` to use `AccessibilityRequested.::get()`/`AccessibilityRequested::set()` #### Before ``` use std::sync::atomic::Ordering; // To access accessibility_requested.load(Ordering::SeqCst) // To update accessibility_requested.store(true, Ordering::SeqCst); ``` #### After ``` // To access accessibility_requested.get() // To update accessibility_requested.set(true); ``` --------- Co-authored-by: StaffEngineer <111751109+StaffEngineer@users.noreply.github.com>
47 lines
1.6 KiB
TOML
47 lines
1.6 KiB
TOML
[package]
|
|
name = "bevy_winit"
|
|
version = "0.12.0-dev"
|
|
edition = "2021"
|
|
description = "A winit window and input backend for Bevy Engine"
|
|
homepage = "https://bevyengine.org"
|
|
repository = "https://github.com/bevyengine/bevy"
|
|
license = "MIT OR Apache-2.0"
|
|
keywords = ["bevy"]
|
|
|
|
[features]
|
|
trace = []
|
|
wayland = ["winit/wayland", "winit/wayland-csd-adwaita"]
|
|
x11 = ["winit/x11"]
|
|
accesskit_unix = ["accesskit_winit/accesskit_unix", "accesskit_winit/async-io"]
|
|
|
|
[dependencies]
|
|
# bevy
|
|
bevy_a11y = { path = "../bevy_a11y", version = "0.12.0-dev" }
|
|
bevy_app = { path = "../bevy_app", version = "0.12.0-dev" }
|
|
bevy_derive = { path = "../bevy_derive", version = "0.12.0-dev" }
|
|
bevy_ecs = { path = "../bevy_ecs", version = "0.12.0-dev" }
|
|
bevy_hierarchy = { path = "../bevy_hierarchy", version = "0.12.0-dev" }
|
|
bevy_input = { path = "../bevy_input", version = "0.12.0-dev" }
|
|
bevy_math = { path = "../bevy_math", version = "0.12.0-dev" }
|
|
bevy_window = { path = "../bevy_window", version = "0.12.0-dev" }
|
|
bevy_utils = { path = "../bevy_utils", version = "0.12.0-dev" }
|
|
bevy_tasks = { path = "../bevy_tasks", version = "0.12.0-dev" }
|
|
|
|
# other
|
|
winit = { version = "0.28.7", default-features = false }
|
|
accesskit_winit = { version = "0.15", default-features = false }
|
|
approx = { version = "0.5", default-features = false }
|
|
raw-window-handle = "0.5"
|
|
|
|
[target.'cfg(target_os = "android")'.dependencies]
|
|
winit = { version = "0.28.7", default-features = false, features = [
|
|
"android-native-activity",
|
|
] }
|
|
|
|
[target.'cfg(target_arch = "wasm32")'.dependencies]
|
|
wasm-bindgen = { version = "0.2" }
|
|
web-sys = "0.3"
|
|
crossbeam-channel = "0.5"
|
|
|
|
[package.metadata.docs.rs]
|
|
features = ["x11"]
|