mirror of
https://github.com/sudosylabs/vnidrop.git
synced 2026-08-05 18:39:55 +02:00
Add a native SwiftUI VniDrop app (Send/Receive/Settings) talking to the Rust core via generated UniFFI Swift bindings, plus the uniffi-bindgen helper crate. iOS uses a TabView, macOS a NavigationSplitView sidebar.
21 lines
409 B
Swift
21 lines
409 B
Swift
import SwiftUI
|
|
|
|
/// Cross-platform decoding of raw image bytes into a SwiftUI `Image`.
|
|
enum PlatformImage {
|
|
static func from(data: Data) -> Image? {
|
|
#if os(iOS)
|
|
guard let ui = UIImage(data: data) else { return nil }
|
|
return Image(uiImage: ui)
|
|
#else
|
|
guard let ns = NSImage(data: data) else { return nil }
|
|
return Image(nsImage: ns)
|
|
#endif
|
|
}
|
|
}
|
|
|
|
#if os(iOS)
|
|
import UIKit
|
|
#else
|
|
import AppKit
|
|
#endif
|