mirror of
https://github.com/servo/servo
synced 2026-04-25 17:15:48 +02:00
Print action requests from our subtree
Co-authored-by: Delan Azabani <dazabani@igalia.com> Signed-off-by: Luke Warlow <lwarlow@igalia.com>
This commit is contained in:
committed by
Delan Azabani
parent
6bab93ae4c
commit
64041ee394
@@ -6,7 +6,7 @@ use std::rc::Rc;
|
|||||||
use std::sync::LazyLock;
|
use std::sync::LazyLock;
|
||||||
|
|
||||||
pub(crate) use accessibility_traits::AccessibilityTree;
|
pub(crate) use accessibility_traits::AccessibilityTree;
|
||||||
use accesskit::{Node as AxNode, NodeId as AxNodeId, Role, Tree as AxTree};
|
use accesskit::{Action, Node as AxNode, NodeId as AxNodeId, Role, Tree as AxTree};
|
||||||
use html5ever::{LocalName, local_name};
|
use html5ever::{LocalName, local_name};
|
||||||
use layout_api::wrapper_traits::{LayoutNode, ThreadSafeLayoutNode};
|
use layout_api::wrapper_traits::{LayoutNode, ThreadSafeLayoutNode};
|
||||||
use log::trace;
|
use log::trace;
|
||||||
@@ -77,6 +77,7 @@ impl AccessibilityTreeCalculator {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
ax_next.add_action(Action::Click);
|
||||||
ax_nodes.insert(ax_next_id, ax_next);
|
ax_nodes.insert(ax_next_id, ax_next);
|
||||||
}
|
}
|
||||||
AccessibilityTree {
|
AccessibilityTree {
|
||||||
|
|||||||
@@ -213,7 +213,7 @@ impl ApplicationHandler<AppEvent> for App {
|
|||||||
.and_then(|window_id| state.window(ServoShellWindowId::from(u64::from(window_id))))
|
.and_then(|window_id| state.window(ServoShellWindowId::from(u64::from(window_id))))
|
||||||
{
|
{
|
||||||
if let Some(headed_window) = window.platform_window().as_headed_window() {
|
if let Some(headed_window) = window.platform_window().as_headed_window() {
|
||||||
headed_window.handle_winit_app_event(app_event);
|
headed_window.handle_winit_app_event(&window, app_event);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -758,8 +758,21 @@ impl HeadedWindow {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
pub(crate) fn handle_winit_app_event(&self, app_event: AppEvent) {
|
pub(crate) fn handle_winit_app_event(&self, _window: &ServoShellWindow, app_event: AppEvent) {
|
||||||
if let AppEvent::Accessibility(ref event) = app_event {
|
if let AppEvent::Accessibility(ref event) = app_event {
|
||||||
|
match &event.window_event {
|
||||||
|
egui_winit::accesskit_winit::WindowEvent::InitialTreeRequested => {
|
||||||
|
// TODO get the initial tree from servo
|
||||||
|
},
|
||||||
|
egui_winit::accesskit_winit::WindowEvent::ActionRequested(req) => {
|
||||||
|
// TODO use window to get active webview, then do something with action request.
|
||||||
|
if req.target_tree != TreeId::ROOT {
|
||||||
|
println!("{:?}", req);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
_ => {},
|
||||||
|
}
|
||||||
|
|
||||||
if self
|
if self
|
||||||
.gui
|
.gui
|
||||||
.borrow_mut()
|
.borrow_mut()
|
||||||
|
|||||||
Reference in New Issue
Block a user