This commit is contained in:
Nathan Sobo 2023-08-04 07:56:20 -06:00
parent 196946cbb6
commit b6110fed9e
2 changed files with 12 additions and 2 deletions

View file

@ -1528,6 +1528,11 @@ mod tests {
}); });
}); });
window.update(cx, |cx| {
let root = cx.root_element();
dbg!(root.debug(cx).unwrap());
});
// tree.layout( // tree.layout(
// SizeConstraint::strict(vec2f(100., 100.)), // SizeConstraint::strict(vec2f(100., 100.)),
// &mut (), // &mut (),

View file

@ -923,7 +923,7 @@ impl<'a> WindowContext<'a> {
Ok(element) Ok(element)
} }
pub(crate) fn layout(&mut self, refreshing: bool) -> Result<HashMap<usize, usize>> { pub fn layout(&mut self, refreshing: bool) -> Result<HashMap<usize, usize>> {
let window_size = self.window.platform_window.content_size(); let window_size = self.window.platform_window.content_size();
let root_view_id = self.window.root_view().id(); let root_view_id = self.window.root_view().id();
let mut rendered_root = self.window.rendered_views.remove(&root_view_id).unwrap(); let mut rendered_root = self.window.rendered_views.remove(&root_view_id).unwrap();
@ -963,7 +963,7 @@ impl<'a> WindowContext<'a> {
Ok(old_parents) Ok(old_parents)
} }
pub(crate) fn paint(&mut self) -> Result<Scene> { pub fn paint(&mut self) -> Result<Scene> {
let window_size = self.window.platform_window.content_size(); let window_size = self.window.platform_window.content_size();
let scale_factor = self.window.platform_window.scale_factor(); let scale_factor = self.window.platform_window.scale_factor();
@ -995,6 +995,11 @@ impl<'a> WindowContext<'a> {
Ok(scene) Ok(scene)
} }
pub fn root_element(&self) -> &Box<dyn AnyRootElement> {
let view_id = self.window.root_view().id();
self.window.rendered_views.get(&view_id).unwrap()
}
pub fn rect_for_text_range(&self, range_utf16: Range<usize>) -> Option<RectF> { pub fn rect_for_text_range(&self, range_utf16: Range<usize>) -> Option<RectF> {
let focused_view_id = self.window.focused_view_id?; let focused_view_id = self.window.focused_view_id?;
self.window self.window