mirror of
https://github.com/servo/servo
synced 2026-04-25 17:15:48 +02:00
Build a fake tree (working)
This commit is contained in:
13
Cargo.lock
generated
13
Cargo.lock
generated
@@ -2289,7 +2289,7 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "ecolor"
|
||||
version = "0.33.0"
|
||||
source = "git+https://codeberg.org/shuppy/accesskit-test#5762fccc07f1b6d27f4d8154c69d08cdfa6d5da6"
|
||||
source = "git+https://codeberg.org/shuppy/accesskit-test#053a2f7737ba6e63737fb878d67b801f6df184ba"
|
||||
dependencies = [
|
||||
"bytemuck",
|
||||
"emath",
|
||||
@@ -2298,7 +2298,7 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "egui"
|
||||
version = "0.33.0"
|
||||
source = "git+https://codeberg.org/shuppy/accesskit-test#5762fccc07f1b6d27f4d8154c69d08cdfa6d5da6"
|
||||
source = "git+https://codeberg.org/shuppy/accesskit-test#053a2f7737ba6e63737fb878d67b801f6df184ba"
|
||||
dependencies = [
|
||||
"accesskit",
|
||||
"ahash",
|
||||
@@ -2328,8 +2328,7 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "egui-winit"
|
||||
version = "0.33.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "bb4ea8cb063c00d8f23ce11279c01eb63a195a72be0e21d429148246dab7983e"
|
||||
source = "git+https://codeberg.org/shuppy/accesskit-test#053a2f7737ba6e63737fb878d67b801f6df184ba"
|
||||
dependencies = [
|
||||
"accesskit_winit",
|
||||
"arboard",
|
||||
@@ -2394,7 +2393,7 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "emath"
|
||||
version = "0.33.0"
|
||||
source = "git+https://codeberg.org/shuppy/accesskit-test#5762fccc07f1b6d27f4d8154c69d08cdfa6d5da6"
|
||||
source = "git+https://codeberg.org/shuppy/accesskit-test#053a2f7737ba6e63737fb878d67b801f6df184ba"
|
||||
dependencies = [
|
||||
"bytemuck",
|
||||
]
|
||||
@@ -2522,7 +2521,7 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "epaint"
|
||||
version = "0.33.0"
|
||||
source = "git+https://codeberg.org/shuppy/accesskit-test#5762fccc07f1b6d27f4d8154c69d08cdfa6d5da6"
|
||||
source = "git+https://codeberg.org/shuppy/accesskit-test#053a2f7737ba6e63737fb878d67b801f6df184ba"
|
||||
dependencies = [
|
||||
"ab_glyph",
|
||||
"ahash",
|
||||
@@ -2539,7 +2538,7 @@ dependencies = [
|
||||
[[package]]
|
||||
name = "epaint_default_fonts"
|
||||
version = "0.33.0"
|
||||
source = "git+https://codeberg.org/shuppy/accesskit-test#5762fccc07f1b6d27f4d8154c69d08cdfa6d5da6"
|
||||
source = "git+https://codeberg.org/shuppy/accesskit-test#053a2f7737ba6e63737fb878d67b801f6df184ba"
|
||||
|
||||
[[package]]
|
||||
name = "equator"
|
||||
|
||||
@@ -241,6 +241,7 @@ codegen-units = 1
|
||||
|
||||
[patch.crates-io]
|
||||
egui = { git = "https://codeberg.org/shuppy/accesskit-test" }
|
||||
egui-winit = { git = "https://codeberg.org/shuppy/accesskit-test" }
|
||||
# If you need to temporarily test Servo with a local fork of some upstream
|
||||
# crate, add that here. Use the form:
|
||||
#
|
||||
|
||||
@@ -549,40 +549,41 @@ impl Minibrowser {
|
||||
// where they meet. then we can do what we want with that root.
|
||||
node.push_child(*root_accesskit_node_id);
|
||||
});
|
||||
|
||||
if first_update {
|
||||
let root_id = self.root_accesskit_node_id.expect("Guaranteed by accesskit_subtree_builder() call above");
|
||||
self.accesskit_adapter.update_if_active(|| {
|
||||
let mut root = Node::default();
|
||||
root.set_role(Role::WebView);
|
||||
let a_id = root_id.with(1);
|
||||
let mut a = Node::default();
|
||||
a.set_role(Role::Button);
|
||||
let b_id = root_id.with(2);
|
||||
let mut b = Node::default();
|
||||
b.set_role(Role::Button);
|
||||
let c_id = root_id.with(3);
|
||||
let mut c = Node::default();
|
||||
c.set_role(Role::Button);
|
||||
root.set_children(vec![a_id, b_id, c_id]);
|
||||
TreeUpdate {
|
||||
nodes: vec![
|
||||
(root_id, root),
|
||||
(a_id, a),
|
||||
(b_id, b),
|
||||
(c_id, c),
|
||||
],
|
||||
tree: None,
|
||||
// TODO: this needs to align with the focus in egui’s updates,
|
||||
// unless the focus has genuinely changed
|
||||
focus: b_id,
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
*last_update = now;
|
||||
});
|
||||
|
||||
if let Some(root_id) = self.root_accesskit_node_id {
|
||||
if let Some(accesskit_mut) = self.context.egui_winit.accesskit_mut() {
|
||||
accesskit_mut.update_if_active(|| {
|
||||
let mut root = Node::default();
|
||||
root.set_role(Role::WebView);
|
||||
let a_id = root_id.with(1);
|
||||
let mut a = Node::default();
|
||||
a.set_role(Role::Button);
|
||||
let b_id = root_id.with(2);
|
||||
let mut b = Node::default();
|
||||
b.set_role(Role::Button);
|
||||
let c_id = root_id.with(3);
|
||||
let mut c = Node::default();
|
||||
c.set_role(Role::Button);
|
||||
root.set_children(vec![a_id, b_id, c_id]);
|
||||
TreeUpdate {
|
||||
nodes: vec![
|
||||
(root_id, root),
|
||||
(a_id, a),
|
||||
(b_id, b),
|
||||
(c_id, c),
|
||||
],
|
||||
tree: None,
|
||||
// TODO: this needs to align with the focus in egui’s updates,
|
||||
// unless the focus has genuinely changed
|
||||
focus: b_id,
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// Paint the minibrowser, as of the last update.
|
||||
|
||||
Reference in New Issue
Block a user