Commit graph

151 commits

Author SHA1 Message Date
Jonathan Kelley
904b26f711 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.
2021-07-05 18:37:15 -04:00
Jonathan Kelley
e8f29a8f8a wip: enable more diffing 2021-07-05 01:11:49 -04:00
Jonathan Kelley
b5e5ef171a feat: two calculator examples 2021-07-02 15:48:19 -04:00
Jonathan Kelley
d9e6d0925b docs: examples 2021-07-02 01:30:52 -04:00
Jonathan Kelley
93900aac44 concept: integrate signals 2021-06-30 14:08:12 -04:00
Jonathan Kelley
f4fb5bb454 feat: integrate serialization and string borrowing
This commit adds lifetimes to the diff and realdom methods so consumers may borrow the contents of the DOM for serialization or asynchronous modifications.
2021-06-28 12:05:17 -04:00
Jonathan Kelley
9813f23cdf wip: more work on diffing machine 2021-06-26 22:13:57 -04:00
Jonathan Kelley
81382e7044 chore: rename ctx to cx 2021-06-25 21:15:33 -04:00
Jonathan Kelley
23c14078bb docs: move suspense into a "figured out task" 2021-06-25 13:17:18 -04:00
Jonathan Kelley
9d7ee79826 feat: events work again! 2021-06-23 01:44:48 -04:00
Jonathan Kelley
73047fe956 feat: props memoization is more powerful
This commit solves the memoization , properly memoizing properties that don't have any generic parameters. This is a rough heuristic to prevent non-static lifetimes from creeping into props and breaking our minual lifetime management.

Props that have a generic parameter are opted-out of the `partialeq` requirement and props *without* lifetimes must implement partialeq. We're going to leave manual disabling of memoization for future work.
2021-06-22 17:20:54 -04:00
Jonathan Kelley
70cd46dbb2 docs: move around examples 2021-06-17 18:00:32 -04:00
Jonathan Kelley
b9ff95fa12 wip: start moving events to rc<event> 2021-06-16 23:37:55 -04:00
Jonathan Kelley
36ea39ae30 Feat: rename recoil to atoms 2021-06-16 11:19:37 -04:00
Jonathan Kelley
47e896038e wip: more work on updating syntad 2021-06-15 10:02:46 -04:00
Jonathan Kelley
fe6938ceb3 wip: pre vnodes instead of vnode 2021-06-08 14:00:29 -04:00
Jonathan Kelley
c1fd848f89 WIP: move to static props 2021-05-31 18:55:56 -04:00
Jonathan Kelley
fe67ff9fa4 wip: doesnt share on thread 2021-05-27 17:57:59 -04:00
Jonathan Kelley
ee67654f58 wip: recoil 2021-05-26 01:40:30 -04:00
Jonathan Kelley
a99147c85b Feat: Clean up repo a bit 2021-05-16 02:55:16 -04:00
Jonathan Kelley
c28697e1fe Feat: some code health 2021-05-16 02:06:02 -04:00
Jonathan Kelley
9810feebf5 Feat: major overhaul to diffing 2021-05-15 12:03:08 -04:00
Jonathan Kelley
ce33031519 wip: todomvc 2021-03-29 12:31:47 -04:00
Jonathan Kelley
9f7f43b661 Feat: building large apps, revamp macro 2021-03-22 23:52:54 -04:00
Jonathan Kelley
5791e49700 wip: integrate 3d renderer components 2021-03-21 14:09:15 -04:00
Jonathan Kelley
742f150eb3 wip: begint to accept iterator types 2021-03-18 18:54:26 -04:00
Jonathan Kelley
9b560dfedb wip: more liveview and webview custom client 2021-03-16 14:28:54 -04:00
Jonathan Kelley
7856f2b153 wip: livehost bones 2021-03-16 11:03:59 -04:00
Jonathan Kelley
9d0727edab Feat: remove old macro 2021-03-13 19:11:06 -05:00
Jonathan Kelley
5ad81885e4 wip: staticify? 2021-03-11 12:27:01 -05:00
Jonathan Kelley
92d9521a73 WIP: remove FC 2021-03-07 21:28:20 -05:00
Jonathan Kelley
4b8e9f4a12 Feat: wowza got it all working 2021-03-02 00:14:28 -05:00
Jonathan Kelley
da00df6688 Feat: parse custom rsx syntax 2021-03-01 22:55:20 -05:00
Jonathan Kelley
9dcee01b33 Chore: remove html crate 2021-02-28 17:30:10 -05:00
Jonathan Kelley
ea2aa4b0c9 Feat: event loop 2021-02-12 16:11:33 -05:00
Jonathan Kelley
f47651b32a Feat: overall API updates 2021-02-12 00:29:46 -05:00
Jonathan Kelley
4d01436c3f Feat: found a fast solution to hook state 2021-02-06 22:19:56 -05:00
Jonathan Kelley
a2406b33d6 Feat: updates to docs, extension 2021-01-29 11:57:52 -05:00
Jonathan Kelley
2e626aea51 Feat: first work for rsx vscode ext 2021-01-26 14:02:35 -05:00
Jonathan Kelley
9c01736895 WIP: Dioxus-webview 2021-01-21 03:22:08 -05:00
Jonathan Kelley
28ac37a8b2 Feat: update fc_macro 2021-01-21 02:25:44 -05:00
Jonathan Kelley
6aeea9b790 Feat: add router 2021-01-20 17:48:58 -05:00
Jonathan Kelley
4d7ac5bb5d Feat: dioxus frontend crate 2021-01-20 12:04:27 -05:00
Jonathan Kelley
6c1205e91b Chore: merge validation into macr 2021-01-19 09:08:41 -05:00
Jonathan Kelley
3475adaaa6 Chore: remove unused macro 2021-01-19 08:51:30 -05:00
Jonathan Kelley
18ad810768 Chore: cleanup the CLI package 2021-01-19 08:50:56 -05:00
Jonathan Kelley
9c616ea5c0 Feat: more docs, dissolve vnode crate into dioxus-core 2021-01-16 01:30:48 -05:00
Jonathan Kelley
23ab5af1bf Feat: add diopack 2021-01-15 23:32:53 -05:00
Jonathan Kelley
d13e04c9ff Feat: more docs, example, mroe nodes 2021-01-15 23:25:29 -05:00
Jonathan Kelley
ce34d0dfcd Feat: WIP 2021-01-14 20:56:28 -05:00
Jonathan Kelley
2b9c8d09d9 Feat: docs, code frm percy 2021-01-14 02:56:41 -05:00