From f99991b23bdf7442011a12dd86e058557d1107d5 Mon Sep 17 00:00:00 2001 From: Stuart Woodbury Date: Fri, 23 Dec 2022 09:52:12 -0500 Subject: [PATCH] feat(DesktopContext): expose set_inner_size --- packages/desktop/src/desktop_context.rs | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/packages/desktop/src/desktop_context.rs b/packages/desktop/src/desktop_context.rs index 89d0e2fe4..84e321e18 100644 --- a/packages/desktop/src/desktop_context.rs +++ b/packages/desktop/src/desktop_context.rs @@ -1,5 +1,6 @@ use crate::controller::DesktopController; use dioxus_core::ScopeState; +use wry::application::dpi::LogicalSize; use wry::application::event_loop::ControlFlow; use wry::application::event_loop::EventLoopProxy; use wry::application::window::Fullscreen as WryFullscreen; @@ -120,6 +121,11 @@ impl DesktopContext { let _ = self.proxy.send_event(SetZoomLevel(scale_factor)); } + /// modifies the inner size of the window + pub fn set_inner_size(&self, logical_size: LogicalSize) { + let _ = self.proxy.send_event(SetInnerSize(logical_size)); + } + /// launch print modal pub fn print(&self) { let _ = self.proxy.send_event(Print); @@ -159,6 +165,7 @@ pub enum UserWindowEvent { SetDecorations(bool), SetZoomLevel(f64), + SetInnerSize(LogicalSize), Print, DevTool, @@ -205,6 +212,7 @@ pub(super) fn handler( SetDecorations(state) => window.set_decorations(state), SetZoomLevel(scale_factor) => webview.zoom(scale_factor), + SetInnerSize(logical_size) => window.set_inner_size(logical_size), Print => { if let Err(e) = webview.print() {