1
0
Jonathan Kelley 2 жил өмнө
parent
commit
2ce8ded74d

+ 1 - 0
examples/ios_demo/Cargo.toml

@@ -38,6 +38,7 @@ log = "0.4.11"
 im-rc = "15.1.0"
 dioxus = { path = "../../packages/dioxus" }
 dioxus-desktop = { path = "../../packages/desktop" }
+wry = { version = "0.27.2" }
 
 [target.'cfg(target_os = "android")'.dependencies]
 android_logger = "0.9.0"

+ 10 - 0
examples/ios_demo/README.md

@@ -33,3 +33,13 @@ From there, just click the "play" button with the right target and the app shoul
 
 Note that clicking play doesn't cause a new build, so you'll need to keep rebuilding the app between changes. The tooling here is very young, so please be patient. If you want to contribute to make things easier, please do! We'll be happy to help.
 
+
+## Running on Android
+
+Again, we want to make sure we have the right targets installed.
+
+The common targets here are
+- aarch64-linux-android
+- armv7-linux-androideabi
+- i686-linux-android
+- x86_64-linux-android

+ 2 - 2
examples/ios_demo/src/lib.rs

@@ -1,5 +1,7 @@
 use anyhow::Result;
 use dioxus::prelude::*;
+#[cfg(target_os = "android")]
+use wry::android_binding;
 
 pub fn main() -> Result<()> {
     init_logging();
@@ -70,8 +72,6 @@ fn _start_app() {
 }
 
 use dioxus_desktop::Config;
-#[cfg(target_os = "android")]
-use wry::android_binding;
 
 #[no_mangle]
 #[inline(never)]

+ 2 - 1
packages/desktop/Cargo.toml

@@ -39,7 +39,8 @@ slab = { workspace = true }
 futures-util = { workspace = true }
 urlencoding = "2.1.2"
 
-[target.'cfg(not(target_os = "ios"))'.dependencies]
+
+[target.'cfg(any(target_os = "windows",target_os = "macos",target_os = "linux",target_os = "dragonfly", target_os = "freebsd", target_os = "netbsd", target_os = "openbsd"))'.dependencies]
 rfd = "0.11.3"
 
 [target.'cfg(target_os = "ios")'.dependencies]

+ 18 - 2
packages/desktop/src/file_upload.rs

@@ -13,12 +13,28 @@ pub(crate) struct FileDialogRequest {
     pub bubbles: bool,
 }
 
-#[cfg(target_os = "ios")]
+#[cfg(not(any(
+    target_os = "windows",
+    target_os = "macos",
+    target_os = "linux",
+    target_os = "dragonfly",
+    target_os = "freebsd",
+    target_os = "netbsd",
+    target_os = "openbsd"
+)))]
 pub(crate) fn get_file_event(_request: &FileDialogRequest) -> Vec<PathBuf> {
     vec![]
 }
 
-#[cfg(not(target_os = "ios"))]
+#[cfg(any(
+    target_os = "windows",
+    target_os = "macos",
+    target_os = "linux",
+    target_os = "dragonfly",
+    target_os = "freebsd",
+    target_os = "netbsd",
+    target_os = "openbsd"
+))]
 pub(crate) fn get_file_event(request: &FileDialogRequest) -> Vec<PathBuf> {
     let mut dialog = rfd::FileDialog::new();
 

+ 9 - 1
packages/desktop/src/shortcut.rs

@@ -113,7 +113,15 @@ impl ShortcutRegistry {
             callbacks.remove(id.number);
             if callbacks.is_empty() {
                 if let Some(_shortcut) = shortcuts.remove(&id.id) {
-                    #[cfg(not(target_os = "ios"))]
+                    #[cfg(any(
+                        target_os = "windows",
+                        target_os = "macos",
+                        target_os = "linux",
+                        target_os = "dragonfly",
+                        target_os = "freebsd",
+                        target_os = "netbsd",
+                        target_os = "openbsd"
+                    ))]
                     let _ = self.manager.borrow_mut().unregister(_shortcut.shortcut);
                 }
             }