Merge branch 'master' into fix-event-bubbling
This commit is contained in:
1 parent
c8fca7b321
commit
98335bd9a6
368 files changed
+1877
-13498
No files matched your search
@@ -6,7 +6,7 @@ edition = "2018"
|
||||
description = "WebView renderer for Dioxus"
|
||||
license = "MIT OR Apache-2.0"
|
||||
repository = "https://github.com/DioxusLabs/dioxus/"
|
||||
homepage = "https://dioxuslabs.com/docs/0.3/guide/en/getting_started/desktop.html"
|
||||
homepage = "https://dioxuslabs.com/learn/0.4/getting_started/desktop"
|
||||
keywords = ["dom", "ui", "gui", "react"]
|
||||
|
||||
[dependencies]
|
||||
@@ -18,8 +18,8 @@ dioxus-hot-reload = { workspace = true, optional = true }
|
||||
serde = "1.0.136"
|
||||
serde_json = "1.0.79"
|
||||
thiserror = { workspace = true }
|
||||
log = { workspace = true }
|
||||
wry = { version = "0.28.0" }
|
||||
wry = { version = "0.28.0", default-features = false, features = ["protocol", "file-drop"] }
|
||||
tracing = { workspace = true }
|
||||
futures-channel = { workspace = true }
|
||||
tokio = { workspace = true, features = [
|
||||
"sync",
|
||||
@@ -51,7 +51,7 @@ core-foundation = "0.9.3"
|
||||
objc = "0.2.7"
|
||||
|
||||
[features]
|
||||
default = ["tokio_runtime", "hot-reload"]
|
||||
default = ["tokio_runtime", "hot-reload", "wry/objc-exception"]
|
||||
tokio_runtime = ["tokio"]
|
||||
fullscreen = ["wry/fullscreen"]
|
||||
transparent = ["wry/transparent"]
|
||||
@@ -59,6 +59,10 @@ devtools = ["wry/devtools"]
|
||||
dox = ["wry/dox"]
|
||||
hot-reload = ["dioxus-hot-reload"]
|
||||
|
||||
[package.metadata.docs.rs]
|
||||
default-features = false
|
||||
features = [ "dox", "tokio_runtime", "hot-reload" ]
|
||||
|
||||
[dev-dependencies]
|
||||
dioxus-core-macro = { workspace = true }
|
||||
dioxus-hooks = { workspace = true }
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
# Dioxus Desktop (webview)
|
||||
|
||||
|
||||
[![Crates.io][crates-badge]][crates-url]
|
||||
[![MIT licensed][mit-badge]][mit-url]
|
||||
[![Build Status][actions-badge]][actions-url]
|
||||
@@ -8,31 +7,25 @@
|
||||
|
||||
[crates-badge]: https://img.shields.io/crates/v/dioxus-desktop.svg
|
||||
[crates-url]: https://crates.io/crates/dioxus-desktop
|
||||
|
||||
[mit-badge]: https://img.shields.io/badge/license-MIT-blue.svg
|
||||
[mit-url]: https://github.com/dioxuslabs/dioxus/blob/master/LICENSE
|
||||
|
||||
[actions-badge]: https://github.com/dioxuslabs/dioxus/actions/workflows/main.yml/badge.svg
|
||||
[actions-url]: https://github.com/dioxuslabs/dioxus/actions?query=workflow%3ACI+branch%3Amaster
|
||||
|
||||
[discord-badge]: https://img.shields.io/discord/899851952891002890.svg?logo=discord&style=flat-square
|
||||
[discord-url]: https://discord.gg/XgGxMSkvUM
|
||||
|
||||
[Website](https://dioxuslabs.com) |
|
||||
[Guides](https://dioxuslabs.com/docs/0.3/guide/en/) |
|
||||
[Guides](https://dioxuslabs.com/learn/0.4/) |
|
||||
[API Docs](https://docs.rs/dioxus-desktop/latest/dioxus_desktop) |
|
||||
[Chat](https://discord.gg/XgGxMSkvUM)
|
||||
|
||||
|
||||
## Overview
|
||||
|
||||
`dioxus-desktop` provides a webview-based desktop renderer for the Dioxus VirtualDom.
|
||||
|
||||
This requires that webview is installed on the target system. WebView is installed by default on macOS and iOS devices, but might not come preinstalled on Windows or Linux devices. To fix these issues, follow the [instructions in the guide](guide-url).
|
||||
|
||||
[guide-url]: https://dioxuslabs.com/docs/0.3/guide/en/getting_started/desktop.html
|
||||
|
||||
|
||||
[guide-url]: https://dioxuslabs.com/learn/0.4/getting_started/desktop
|
||||
|
||||
## Features
|
||||
|
||||
@@ -48,6 +41,7 @@ This requires that webview is installed on the target system. WebView is install
|
||||
- Join the discord and ask questions!
|
||||
|
||||
## License
|
||||
|
||||
This project is licensed under the [MIT license].
|
||||
|
||||
[mit license]: https://github.com/DioxusLabs/dioxus/blob/master/LICENSE-MIT
|
||||
|
||||
@@ -194,7 +194,7 @@ impl DesktopService {
|
||||
/// launch print modal
|
||||
pub fn print(&self) {
|
||||
if let Err(e) = self.webview.print() {
|
||||
log::warn!("Open print modal failed: {e}");
|
||||
tracing::warn!("Open print modal failed: {e}");
|
||||
}
|
||||
}
|
||||
|
||||
@@ -209,7 +209,7 @@ impl DesktopService {
|
||||
self.webview.open_devtools();
|
||||
|
||||
#[cfg(not(debug_assertions))]
|
||||
log::warn!("Devtools are disabled in release builds");
|
||||
tracing::warn!("Devtools are disabled in release builds");
|
||||
}
|
||||
|
||||
/// Create a wry event handler that listens for wry events.
|
||||
|
||||
@@ -330,7 +330,7 @@ pub fn launch_with_props<P: 'static>(root: Component<P>, props: P, cfg: Config)
|
||||
if temp.contains_key("href") {
|
||||
let open = webbrowser::open(temp["href"].as_str().unwrap());
|
||||
if let Err(e) = open {
|
||||
log::error!("Open Browser error: {:?}", e);
|
||||
tracing::error!("Open Browser error: {:?}", e);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -123,7 +123,7 @@ impl QueryEngine {
|
||||
}})
|
||||
}})();"#
|
||||
)) {
|
||||
log::warn!("Query error: {err}");
|
||||
tracing::warn!("Query error: {err}");
|
||||
}
|
||||
|
||||
Query {
|
||||
|
||||
@@ -8,7 +8,6 @@ One of Dioxus' flagship features is the ability to quickly build a native deskto
|
||||
|
||||
Dioxus Desktop is built off Tauri. Right now there aren't any Dioxus abstractions over the menubar, handling, etc, so you'll want to leverage Tauri - mostly [Wry](http://github.com/tauri-apps/wry/) and [Tao](http://github.com/tauri-apps/tao) directly. An upcoming release of Dioxus-Desktop will include components and hooks for notifications, global shortcuts, menubar, etc.
|
||||
|
||||
|
||||
## Getting Set up
|
||||
|
||||
Getting Set up with Dioxus-Desktop is quite easy. Make sure you have Rust and Cargo installed, and then create a new project:
|
||||
@@ -44,9 +43,8 @@ fn app(cx: Scope) -> Element {
|
||||
}
|
||||
```
|
||||
|
||||
|
||||
To configure the webview, menubar, and other important desktop-specific features, checkout out some of the launch configuration in the [API reference](https://docs.rs/dioxus-desktop/).
|
||||
|
||||
## Future Steps
|
||||
|
||||
Make sure to read the [Dioxus Guide](https://dioxuslabs.com/docs/0.3/guide/en) if you already haven't!
|
||||
Make sure to read the [Dioxus Guide](https://dioxuslabs.com/learn/0.4/) if you already haven't!
|
||||
Reference in new issue
Block a user