diff --git a/ports/servoshell/desktop/gui.rs b/ports/servoshell/desktop/gui.rs index f08e924c261..80a92f64560 100644 --- a/ports/servoshell/desktop/gui.rs +++ b/ports/servoshell/desktop/gui.rs @@ -554,7 +554,7 @@ impl Gui { // If the top parts of the GUI changed size, then update the size of the WebView and also // the size of its RenderingContext. - let rect = ctx.content_rect(); + let available_rect = ctx.available_rect_before_wrap(); // Build a graft node for each WebView. for (webview_id, webview) in window.webviews() { @@ -565,7 +565,7 @@ impl Gui { }); } } - let size = Size2D::new(rect.width(), rect.height()) * scale; + let size = Size2D::new(available_rect.width(), available_rect.height()) * scale; if let Some(webview) = window.active_webview() && size != webview.size() { @@ -580,7 +580,7 @@ impl Gui { ctx.clone(), LayerId::new(Order::Tooltip, Id::new("tooltip")), "tooltip layer".into(), - pos2(0.0, ctx.content_rect().max.y), + pos2(0.0, available_rect.max.y), ) .show(|ui| ui.add(Label::new(status_text.clone()).extend())); window.set_needs_repaint(); @@ -589,12 +589,8 @@ impl Gui { window.repaint_webviews(); if let Some(render_to_parent) = rendering_context.render_to_parent_callback() { - let rect = egui::Rect::from_two_pos( - (0.0, toolbar_height.0).into(), - ctx.content_rect().max, - ); ctx.layer_painter(LayerId::background()).add(PaintCallback { - rect, + rect: available_rect, callback: Arc::new(CallbackFn::new(move |info, painter| { let clip = info.viewport_in_pixels(); let rect_in_parent = Rect::new(