feat: add edits back! and more webview support!

This commit adds a new type - the DomEdit - for serializing the changes made by the diffing machine. The architecture of how DomEdits fit into the cooperative scheduling is still TBD but it will allow us to build change lists without applying them immediately. This is more performant  and allows us to only render parts of the page at a time.

This commit also adds more infrastructure around webview. Dioxus can now run on the web, generate static pages, run in the desktop, and run on mobile, with a large part of thanks to webview.
This commit is contained in:
Jonathan Kelley committed 2021-07-05 18:37:15 -04:00
1 parent e8f29a8f8a
commit 904b26f711
22 files changed
+1155 -735

No files matched your search

+4 -4
View File
@@ -161,10 +161,10 @@ impl Parse for ElementAttr {
// todo: better error here
AttrType::BumpText(s.parse::<LitStr>()?)
}
"style" => {
//
todo!("inline style not yet supported")
}
// "style" => {
// //
// todo!("inline style not yet supported")
// }
"classes" => {
//
todo!("custom class lsit not supported")
+1 -1
View File
@@ -134,7 +134,7 @@ static HTML_TAGS: Lazy<HashSet<&'static str>> = Lazy::new(|| {
static SVG_TAGS: Lazy<HashSet<&'static str>> = Lazy::new(|| {
[
// SVTG
"svg", "path", "g",
"svg", "path", "g", "text",
]
.iter()
.cloned()