浏览代码

Some fixes for wayland and ios. (#602)

David Craven 2 年之前
父节点
当前提交
7e3a6fb4a4
共有 2 个文件被更改,包括 8 次插入2 次删除
  1. 1 1
      packages/desktop/Cargo.toml
  2. 7 1
      packages/desktop/src/desktop_context.rs

+ 1 - 1
packages/desktop/Cargo.toml

@@ -28,7 +28,7 @@ tokio = { version = "1.16.1", features = [
     "rt",
     "time",
 ], optional = true, default-features = false }
-webbrowser = "0.7.1"
+webbrowser = "0.8.0"
 infer = "0.9.0"
 dunce = "1.0.2"
 

+ 7 - 1
packages/desktop/src/desktop_context.rs

@@ -173,7 +173,13 @@ pub(super) fn handler(
 ) {
     // currently dioxus-desktop supports a single window only,
     // so we can grab the only webview from the map;
-    let webview = desktop.webviews.values().next().unwrap();
+    // on wayland it is possible that a user event is emitted
+    // before the webview is initialized. ignore the event.
+    let webview = if let Some(webview) = desktop.webviews.values().next() {
+        webview
+    } else {
+        return;
+    };
     let window = webview.window();
 
     match user_event {