Move the reconciler into the lifecycle crate, so that we can (properly) support state changes. Wrap the reconciliation phase in a RenderEngine, which root-level objects (windows, etc) can subscribe to and interface with. Migrate a few things relating to themes out of alchemy core and into styles, because the reconciliation phase requires them and they fit well enough there... solving a circular dependency.

This commit is contained in:
Ryan McGrath 2019-05-26 00:27:07 -07:00
parent f1cb5fea93
commit 6833e39d52
No known key found for this signature in database
GPG key ID: 811674B62B666830
16 changed files with 57 additions and 1098 deletions

View file

@ -5,8 +5,10 @@ use std::sync::{Arc, RwLock};
use serde_json::Value;
use std::collections::HashMap;
use alchemy_styles::StylesList;
use crate::rsx::RSX;
use crate::traits::{Component};
use crate::rsx::{RSX, StylesList};
/// A value stored inside the `attributes` field on a `Props` instance.
/// It shadows `serde_json::Value`, but also allows for some other value