refactor dioxus platform support to use feature mobile

This commit is contained in:
2026-01-04 19:31:29 -07:00
parent eda8c4467e
commit 6d5bf80d72
3 changed files with 18 additions and 17 deletions
+13 -2
View File
@@ -97,8 +97,8 @@ dioxus-asset-resolver = "0.7.2"
# Platform Integration
# ====================
# rfd only supports windows, macos, linux, and wasm32. No support for Android or iOS
[target.'cfg(any(target_os = "linux", target_os = "windows", target_os = "macos", target_arch = "wasm32"))'.dependencies]
rfd = { git = "https://github.com/PolyMeilex/rfd.git", version = "^0.16.0", default-features = false }
#[target.'cfg(any(target_os = "linux", target_os = "windows", target_os = "macos", target_arch = "wasm32"))'.dependencies]
rfd = { git = "https://github.com/PolyMeilex/rfd.git", version = "^0.16.0", default-features = false, optional = true }
# Denoising
# =========
@@ -126,6 +126,7 @@ web = [
"gloo-timers",
"tracing-web",
"deep_filter/wasm",
"rfd",
]
desktop = [
"dioxus/desktop",
@@ -138,3 +139,13 @@ desktop = [
"rfd/xdg-portal",
"etcetera",
]
mobile = [
"dioxus/mobile",
"tokio",
"tokio-rustls",
"tracing-subscriber/env-filter",
"opus",
"cpal",
"dasp_ring_buffer",
]
+2 -12
View File
@@ -210,12 +210,7 @@ pub fn Channel(id: ChannelId) -> Element {
)
}
#[cfg(any(
target_os = "windows",
target_os = "macos",
target_os = "linux",
target_arch = "wasm32",
))]
#[cfg(any(feature = "desktop", feature = "web"))]
pub fn pick_and_send_file(net: &Coroutine<Command>) {
let channels = if let Some(user) = STATE.server.read().this_user() {
vec![user.channel]
@@ -237,12 +232,7 @@ pub fn pick_and_send_file(net: &Coroutine<Command>) {
});
});
}
#[cfg(not(any(
target_os = "windows",
target_os = "macos",
target_os = "linux",
target_arch = "wasm32",
)))]
#[cfg(not(any(feature = "desktop", feature = "web")))]
pub fn pick_and_send_file(net: &Coroutine<Command>) {}
#[component]
+3 -3
View File
@@ -1,11 +1,11 @@
#[cfg(feature = "web")]
mod web;
#[cfg(feature = "desktop")]
#[cfg(any(feature = "desktop", feature = "android"))]
mod desktop;
#[cfg(all(feature = "web", not(feature = "desktop")))]
#[cfg(all(feature = "web", not(any(feature = "desktop", feature = "android"))))]
pub use web::*;
#[cfg(feature = "desktop")]
#[cfg(any(feature = "desktop", feature = "android"))]
pub use desktop::*;