From 98b4de46dcee6dbe0c029ea62271c85f0a2f15a9 Mon Sep 17 00:00:00 2001
From: StarToaster <startoaster23@gmail.com>
Date: Sun, 6 Nov 2022 17:14:46 -0500
Subject: [PATCH] A bunch of fixes! New styles, widgets, and more!

---
 Cargo.toml                             |   1 +
 assets/lato-light - Copy.png           | Bin 0 -> 68127 bytes
 assets/lato-light.kayak_font           |   1 +
 assets/lato-light.png                  | Bin 0 -> 106104 bytes
 book/src/chapter_1.md                  |  18 +-
 examples/bevy_scene.rs                 |  21 +-
 examples/conditional_widget.rs         | 143 ++++++++
 examples/context.rs                    |  28 +-
 examples/hello_world_no_macro.rs       |  15 +-
 examples/quads.rs                      |  10 +-
 examples/scrolling.rs                  |  30 +-
 examples/simple_state.rs               | 108 +++---
 examples/tabs/tab.rs                   |   8 +-
 examples/tabs/tab_button.rs            |  29 +-
 examples/tabs/tabs.rs                  |   4 +
 examples/text_box.rs                   |   1 +
 examples/todo/input.rs                 | 176 ++++-----
 examples/todo/items.rs                 |  34 +-
 examples/todo/todo.rs                  |   4 +
 kayak_ui_macros/src/widget.rs          |  10 +-
 src/calculate_nodes.rs                 | 201 ++++++++---
 src/children.rs                        |   8 +
 src/clone_component.rs                 |   4 +-
 src/context.rs                         | 470 +++++++++++++++++--------
 src/event.rs                           |  16 +-
 src/event_dispatcher.rs                |  98 ++++--
 src/node.rs                            |   4 +
 src/render/unified/shader.wgsl         |   8 +-
 src/render_primitive.rs                |  12 +
 src/styles/style.rs                    |   3 +
 src/tree.rs                            |  10 +-
 src/widget.rs                          |  16 +
 src/widget_context.rs                  |  54 ++-
 src/widgets/app.rs                     |  13 +-
 src/widgets/button.rs                  | 123 +++++--
 src/widgets/clip.rs                    |   5 +-
 src/widgets/mod.rs                     |  22 +-
 src/widgets/scroll/scroll_bar.rs       |   2 +-
 src/widgets/scroll/scroll_box.rs       |   2 +-
 src/widgets/scroll/scroll_content.rs   |   2 +-
 src/widgets/text.rs                    |  70 ++--
 src/widgets/text_box.rs                | 183 +++++-----
 src/widgets/window.rs                  | 118 ++++++-
 src/widgets/window_context_provider.rs |  81 +++++
 44 files changed, 1474 insertions(+), 692 deletions(-)
 create mode 100644 assets/lato-light - Copy.png
 create mode 100644 assets/lato-light.kayak_font
 create mode 100644 assets/lato-light.png
 create mode 100644 examples/conditional_widget.rs
 create mode 100644 src/widgets/window_context_provider.rs

diff --git a/Cargo.toml b/Cargo.toml
index 10084b0..d5ff252 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -19,6 +19,7 @@ kayak_ui_macros = { path = "./kayak_ui_macros" }
 indexmap = "1.9"
 log = "0.4"
 bitflags = "1.3.2"
+reorder = "2.1"
 
 [dev-dependencies]
 fastrand = "1.8"
diff --git a/assets/lato-light - Copy.png b/assets/lato-light - Copy.png
new file mode 100644
index 0000000000000000000000000000000000000000..103c6324efec5ccfef51aab02cde1afb0d7895ae
GIT binary patch
literal 68127
zcmV*tKtjKXP)<h;3K|Lk000e1NJLTq00CqG00CqO0ssI2n0eNB009Z+Nkl<Zcmdp1
z2S60Z_x=vC8xV{o_KrPPED83A1;K(n8Z}~}M`CZWVlRLi&{$#xg@}q+v15x0Vu{#$
z7sS}h{om~F^}V~@yCc8k|IOaboAzer&3oUo1H)-RDfyFu-!0TDebH%QMZ9GPgoWFR
zoqm!fi>%l^LcMaks%v4k-Lnr{*D)L4(u14)$+}1QUwwqxDtV^m{x?&lW45*4XjRmz
zF-Nud0N=JpG=9Ohs;EniH*XLSfR`^}E1VcNu5Ybcc=81P{x(xemzaanrI~OE+kT;{
zN6ngC|5H4DfCu`sixoqM4ya$B37<aU{(YP{f!J8QeQRP1JJ@wVhlXfa9_8~R|0}$@
zg<Gd^Y8$qFzz2~9(U=UlA-Wac{QMcihvUHm8{V3*5DUM;S4>I;{CiNH2OLpyxB&#4
zUhgG!qb^;T&Ft-&ydMKrVI2u!KLF>#P>Xf$#LgYqVeNg&mBUXzQGJdGFOce@WJXC)
zD)Ih3UcA7gN4R+t=g%W0#Rm4J3%6{EI(1OCES#N@BL`l;#^cAhdKITn<J2k9Mcf<5
zvjBJDJ1zmEP1rx)*zUv?Rat!*7|EF!ZN(=xLL+y$yTY|HDi=oKT*&nrukYZ_pZGHY
z30ttmaLE%3tU+ASpVb$D=2R6Xvgi&9fJrPbGMqby`SWdHc7_@?j!&B=$j6Rh-8!3S
zZPf}t|18K2SW+djI7i!f0{3vQq@tu|Dn0qci5M_IUj;GZk|mftS@f!Tk(aFD3*RsB
zh2iMm_<J!HPrw9y%IMDi{4psNsq}cPkt-LvcD0cy8GgpkK?o8We&1>aasVAzy-1Q8
z^I0Z17z-8%@?Z>Jg;j#th%6%i!s5jwd&9dpid%c7S+mfs8`V+jRN~Ee+7e`CVdqZ7
z#IQ7A0bE@%bSQfFM(*53=RACf=x9Vm;o?P|ORzsr^&dwTrr>FAYz{9s6d{W~=tDlx
zfE-^J<g|rQs5WX3!l3gwPyVS#8DCmtRJ~>FWlrPtRb1uU9XPkM4Z3zc4ZNlt%gMIV
zsy-o|nW$8INXWW8`uE4BO9E5eyN4r3aPS~5Ulv9k958PlA|mvZw?Zqj^(c(unSvA?
zIKY-t_To_h1!yz{DPQAj!?XQ`zx<(ce9F$mN;U$ekvS?a!l+R=dQ`Rwg``=2ej29m
zgWobN(;1G8#PjF8sRv+yRadG|foF=$OcsFJ$e_<XBSVpq0r4*rnQ!q{XAM1Q_wLxd
znWZ~#ZyCqPpPy}i;skRQ6HGxURt!NwxNw2dWq|^G-!-WmEgvU=FiopEs_(+CwOFfW
z3i8Zfe+8xEsZ*IiH{ekNHU7XKBQetEClY9U8x;;MTcS`Q8|miW>;!*_&Yj`tXcMh!
zvQVE{>oRtHkYn^{tXzpac^Dnku8oo<;pT?s%~7QaN|eB)Nx}k(j1eO=n$ck|_LfKa
zYuDiGi!Z-KwQ6Y5f-Nmq4izh6`gCDtHB_VB%b<+m@hH01V2#jNv<Nk7*yPp`Q1RNf
zZJ0e<_IiOSl%{759<1TdU<5D068#yUJ~6)FCsVNoK0bU+q59#2&WJPndOE||S>eq7
z4L&D0Q7$ForV#3Z9%P)`xGgNMSreN!X$a3WYSqH2Q|go4!JYY-?*%UxxX>2lOT|#E
z9_mrLrts6OBIh7VqEG>5Av-~S%9t77<NLEX+Xih&ro0s#%(#&}bJ#FUn1G2Bnb4>a
zyG?AYuyht?^+P|~9!H-n2p%4`P+Y%0A1B9;9~WG;Ygg;FQs7sv3}a+L`xK-S7>LkN
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

literal 0
HcmV?d00001

diff --git a/assets/lato-light.kayak_font b/assets/lato-light.kayak_font
new file mode 100644
index 0000000..d82cd1e
--- /dev/null
+++ b/assets/lato-light.kayak_font
@@ -0,0 +1 @@
+{"atlas":{"type":"msdf","distanceRange":4,"size":64,"width":384,"height":384,"yOrigin":"bottom"},"metrics":{"emSize":1,"lineHeight":1.2,"ascender":0.98699999999999999,"descender":-0.21299999999999999,"underlineY":-0.10000000000000001,"underlineThickness":0.034000000000000002},"glyphs":[{"unicode":32,"advance":0.193},{"unicode":33,"advance":0.32250000000000001,"planeBounds":{"left":0.083125000000000004,"bottom":-0.040625000000000015,"right":0.239375,"top":0.74062499999999998},"atlasBounds":{"left":359.5,"bottom":20.5,"right":369.5,"top":70.5}},{"unicode":34,"advance":0.36699999999999999,"planeBounds":{"left":0.058250000000000003,"bottom":0.43099999999999999,"right":0.30825000000000002,"top":0.74350000000000005},"atlasBounds":{"left":51.5,"bottom":312.5,"right":67.5,"top":332.5}},{"unicode":35,"advance":0.57999999999999996,"planeBounds":{"left":0.01125,"bottom":-0.036874999999999991,"right":0.57374999999999998,"top":0.74437500000000001},"atlasBounds":{"left":158.5,"bottom":179.5,"right":194.5,"top":229.5}},{"unicode":36,"advance":0.57999999999999996,"planeBounds":{"left":0.038687500000000027,"bottom":-0.16506249999999995,"right":0.55431249999999999,"top":0.8505625},"atlasBounds":{"left":232.5,"bottom":318.5,"right":265.5,"top":383.5}},{"unicode":37,"advance":0.76700000000000002,"planeBounds":{"left":0.0082499999999999969,"bottom":-0.044937500000000012,"right":0.75824999999999998,"top":0.75193750000000004},"atlasBounds":{"left":0.5,"bottom":76.5,"right":48.5,"top":127.5}},{"unicode":38,"advance":0.6915,"planeBounds":{"left":0.015937500000000004,"bottom":-0.044687499999999984,"right":0.71906250000000005,"top":0.75218750000000001},"atlasBounds":{"left":68.5,"bottom":294.5,"right":113.5,"top":345.5}},{"unicode":39,"advance":0.2215,"planeBounds":{"left":0.056062500000000008,"bottom":0.43099999999999999,"right":0.16543750000000002,"top":0.74350000000000005},"atlasBounds":{"left":0.5,"bottom":3.5,"right":7.5,"top":23.5}},{"unicode":40,"advance":0.29999999999999999,"planeBounds":{"left":0.050562500000000003,"bottom":-0.16912499999999997,"right":0.28493750000000001,"top":0.79962500000000003},"atlasBounds":{"left":51.5,"bottom":249.5,"right":66.5,"top":311.5}},{"unicode":41,"advance":0.29999999999999999,"planeBounds":{"left":0.014562500000000004,"bottom":-0.16912499999999997,"right":0.24893750000000001,"top":0.79962500000000003},"atlasBounds":{"left":51.5,"bottom":186.5,"right":66.5,"top":248.5}},{"unicode":42,"advance":0.40000000000000002,"planeBounds":{"left":0.027375000000000014,"bottom":0.41000000000000003,"right":0.37112499999999998,"top":0.78500000000000003},"atlasBounds":{"left":115.5,"bottom":2.5,"right":137.5,"top":26.5}},{"unicode":43,"advance":0.57999999999999996,"planeBounds":{"left":0.015812500000000014,"bottom":0.05350000000000002,"right":0.56268750000000001,"top":0.61599999999999999},"atlasBounds":{"left":158.5,"bottom":91.5,"right":193.5,"top":127.5}},{"unicode":44,"advance":0.19750000000000001,"planeBounds":{"left":0.021125000000000001,"bottom":-0.16137499999999999,"right":0.177375,"top":0.11987500000000001},"atlasBounds":{"left":8.5,"bottom":5.5,"right":18.5,"top":23.5}},{"unicode":45,"advance":0.33250000000000002,"planeBounds":{"left":0.017812499999999992,"bottom":0.24206250000000001,"right":0.31468750000000001,"top":0.35143750000000001},"atlasBounds":{"left":19.5,"bottom":5.5,"right":38.5,"top":12.5}},{"unicode":46,"advance":0.19750000000000001,"planeBounds":{"left":0.020625000000000001,"bottom":-0.039375,"right":0.176875,"top":0.11687500000000001},"atlasBounds":{"left":19.5,"bottom":13.5,"right":29.5,"top":23.5}},{"unicode":47,"advance":0.35649999999999998,"planeBounds":{"left":-0.03418750000000001,"bottom":-0.079124999999999959,"right":0.38768750000000002,"top":0.764625},"atlasBounds":{"left":330.5,"bottom":204.5,"right":357.5,"top":258.5}},{"unicode":48,"advance":0.57999999999999996,"planeBounds":{"left":0.00093750000000000354,"bottom":-0.044437500000000012,"right":0.57906250000000004,"top":0.75243749999999998},"atlasBounds":{"left":158.5,"bottom":230.5,"right":195.5,"top":281.5}},{"unicode":49,"advance":0.57999999999999996,"planeBounds":{"left":0.086625000000000021,"bottom":-0.03537499999999999,"right":0.55537500000000006,"top":0.74587500000000007},"atlasBounds":{"left":299.5,"bottom":295.5,"right":329.5,"top":345.5}},{"unicode":50,"advance":0.57999999999999996,"planeBounds":{"left":0.027125000000000007,"bottom":-0.032874999999999988,"right":0.55837500000000007,"top":0.74837500000000001},"atlasBounds":{"left":197.5,"bottom":246.5,"right":231.5,"top":296.5}},{"unicode":51,"advance":0.57999999999999996,"planeBounds":{"left":0.028125000000000008,"bottom":-0.044687499999999984,"right":0.55937500000000007,"top":0.75218750000000001},"atlasBounds":{"left":197.5,"bottom":194.5,"right":231.5,"top":245.5}},{"unicode":52,"advance":0.57999999999999996,"planeBounds":{"left":-0.001625000000000016,"bottom":-0.036374999999999991,"right":0.59212500000000001,"top":0.74487500000000006},"atlasBounds":{"left":115.5,"bottom":27.5,"right":153.5,"top":77.5}},{"unicode":53,"advance":0.57999999999999996,"planeBounds":{"left":0.037999999999999999,"bottom":-0.040874999999999988,"right":0.53800000000000003,"top":0.74037500000000001},"atlasBounds":{"left":232.5,"bottom":114.5,"right":264.5,"top":164.5}},{"unicode":54,"advance":0.57999999999999996,"planeBounds":{"left":0.030125000000000009,"bottom":-0.040874999999999988,"right":0.56137499999999996,"top":0.74037500000000001},"atlasBounds":{"left":197.5,"bottom":143.5,"right":231.5,"top":193.5}},{"unicode":55,"advance":0.57999999999999996,"planeBounds":{"left":0.026812500000000013,"bottom":-0.036874999999999991,"right":0.57368750000000002,"top":0.74437500000000001},"atlasBounds":{"left":158.5,"bottom":40.5,"right":193.5,"top":90.5}},{"unicode":56,"advance":0.57999999999999996,"planeBounds":{"left":0.024374999999999983,"bottom":-0.044687499999999984,"right":0.55562500000000004,"top":0.75218750000000001},"atlasBounds":{"left":197.5,"bottom":91.5,"right":231.5,"top":142.5}},{"unicode":57,"advance":0.57999999999999996,"planeBounds":{"left":0.0474375,"bottom":-0.032874999999999988,"right":0.56306250000000002,"top":0.74837500000000001},"atlasBounds":{"left":232.5,"bottom":267.5,"right":265.5,"top":317.5}},{"unicode":58,"advance":0.23750000000000002,"planeBounds":{"left":0.040625000000000001,"bottom":-0.043250000000000004,"right":0.19687499999999999,"top":0.51924999999999999},"atlasBounds":{"left":330.5,"bottom":77.5,"right":340.5,"top":113.5}},{"unicode":59,"advance":0.23750000000000002,"planeBounds":{"left":0.040625000000000001,"bottom":-0.16525000000000001,"right":0.19687499999999999,"top":0.52224999999999999},"atlasBounds":{"left":51.5,"bottom":3.5,"right":61.5,"top":47.5}},{"unicode":60,"advance":0.57999999999999996,"planeBounds":{"left":0.048750000000000002,"bottom":0.10112500000000002,"right":0.48625000000000002,"top":0.56987500000000002},"atlasBounds":{"left":330.5,"bottom":353.5,"right":358.5,"top":383.5}},{"unicode":61,"advance":0.57999999999999996,"planeBounds":{"left":0.047562500000000014,"bottom":0.20493749999999999,"right":0.53193750000000006,"top":0.47056249999999999},"atlasBounds":{"left":197.5,"bottom":6.5,"right":228.5,"top":23.5}},{"unicode":62,"advance":0.57999999999999996,"planeBounds":{"left":0.09425,"bottom":0.10112500000000002,"right":0.53175000000000006,"top":0.56987500000000002},"atlasBounds":{"left":330.5,"bottom":259.5,"right":358.5,"top":289.5}},{"unicode":63,"advance":0.3705,"planeBounds":{"left":-0.019124999999999989,"bottom":-0.044437500000000012,"right":0.387125,"top":0.75243749999999998},"atlasBounds":{"left":330.5,"bottom":152.5,"right":356.5,"top":203.5}},{"unicode":64,"advance":0.82150000000000001,"planeBounds":{"left":0.021125000000000015,"bottom":-0.15643750000000001,"right":0.80237500000000006,"top":0.70293749999999999},"atlasBounds":{"left":0.5,"bottom":277.5,"right":50.5,"top":332.5}},{"unicode":65,"advance":0.64449999999999996,"planeBounds":{"left":-0.029062500000000002,"bottom":-0.036874999999999991,"right":0.67406250000000001,"top":0.74437500000000001},"atlasBounds":{"left":68.5,"bottom":243.5,"right":113.5,"top":293.5}},{"unicode":66,"advance":0.64100000000000001,"planeBounds":{"left":0.073374999999999982,"bottom":-0.036874999999999991,"right":0.60462499999999997,"top":0.74437500000000001},"atlasBounds":{"left":197.5,"bottom":40.5,"right":231.5,"top":90.5}},{"unicode":67,"advance":0.70350000000000001,"planeBounds":{"left":0.02662500000000001,"bottom":-0.044687499999999984,"right":0.68287500000000001,"top":0.75218750000000001},"atlasBounds":{"left":68.5,"bottom":37.5,"right":110.5,"top":88.5}},{"unicode":68,"advance":0.76000000000000001,"planeBounds":{"left":0.066812500000000011,"bottom":-0.036874999999999991,"right":0.73868750000000005,"top":0.74437500000000001},"atlasBounds":{"left":68.5,"bottom":89.5,"right":111.5,"top":139.5}},{"unicode":69,"advance":0.59099999999999997,"planeBounds":{"left":0.067000000000000004,"bottom":-0.036874999999999991,"right":0.56700000000000006,"top":0.74437500000000001},"atlasBounds":{"left":266.5,"bottom":333.5,"right":298.5,"top":383.5}},{"unicode":70,"advance":0.57200000000000006,"planeBounds":{"left":0.067000000000000004,"bottom":-0.036874999999999991,"right":0.56700000000000006,"top":0.74437500000000001},"atlasBounds":{"left":232.5,"bottom":12.5,"right":264.5,"top":62.5}},{"unicode":71,"advance":0.74850000000000005,"planeBounds":{"left":0.024000000000000021,"bottom":-0.044687499999999984,"right":0.71150000000000002,"top":0.75218750000000001},"atlasBounds":{"left":68.5,"bottom":140.5,"right":112.5,"top":191.5}},{"unicode":72,"advance":0.75600000000000001,"planeBounds":{"left":0.07331250000000003,"bottom":-0.036874999999999991,"right":0.6826875,"top":0.74437500000000001},"atlasBounds":{"left":115.5,"bottom":180.5,"right":154.5,"top":230.5}},{"unicode":73,"advance":0.29899999999999999,"planeBounds":{"left":0.086750000000000008,"bottom":-0.036874999999999991,"right":0.21174999999999999,"top":0.74437500000000001},"atlasBounds":{"left":341.5,"bottom":63.5,"right":349.5,"top":113.5}},{"unicode":74,"advance":0.45400000000000001,"planeBounds":{"left":0.0092499999999999961,"bottom":-0.040874999999999988,"right":0.38424999999999998,"top":0.74037500000000001},"atlasBounds":{"left":359.5,"bottom":284.5,"right":383.5,"top":334.5}},{"unicode":75,"advance":0.66000000000000003,"planeBounds":{"left":0.083874999999999991,"bottom":-0.036374999999999991,"right":0.67762500000000003,"top":0.74487500000000006},"atlasBounds":{"left":158.5,"bottom":333.5,"right":196.5,"top":383.5}},{"unicode":76,"advance":0.51150000000000007,"planeBounds":{"left":0.071687500000000001,"bottom":-0.036874999999999991,"right":0.52481250000000002,"top":0.74437500000000001},"atlasBounds":{"left":299.5,"bottom":102.5,"right":328.5,"top":152.5}},{"unicode":77,"advance":0.90900000000000003,"planeBounds":{"left":0.071687500000000029,"bottom":-0.036874999999999991,"right":0.83731250000000002,"top":0.74437500000000001},"atlasBounds":{"left":0.5,"bottom":128.5,"right":49.5,"top":178.5}},{"unicode":78,"advance":0.75600000000000001,"planeBounds":{"left":0.07331250000000003,"bottom":-0.036874999999999991,"right":0.6826875,"top":0.74437500000000001},"atlasBounds":{"left":115.5,"bottom":129.5,"right":154.5,"top":179.5}},{"unicode":79,"advance":0.79749999999999999,"planeBounds":{"left":0.023749999999999993,"bottom":-0.044437500000000012,"right":0.77375000000000005,"top":0.75243749999999998},"atlasBounds":{"left":0.5,"bottom":24.5,"right":48.5,"top":75.5}},{"unicode":80,"advance":0.59350000000000003,"planeBounds":{"left":0.086750000000000008,"bottom":-0.036874999999999991,"right":0.58674999999999999,"top":0.74437500000000001},"atlasBounds":{"left":232.5,"bottom":63.5,"right":264.5,"top":113.5}},{"unicode":81,"advance":0.79749999999999999,"planeBounds":{"left":0.022625000000000006,"bottom":-0.18899999999999997,"right":0.80387500000000001,"top":0.74850000000000005},"atlasBounds":{"left":0.5,"bottom":216.5,"right":50.5,"top":276.5}},{"unicode":82,"advance":0.63100000000000001,"planeBounds":{"left":0.082750000000000004,"bottom":-0.036874999999999991,"right":0.64524999999999999,"top":0.74437500000000001},"atlasBounds":{"left":158.5,"bottom":128.5,"right":194.5,"top":178.5}},{"unicode":83,"advance":0.52249999999999996,"planeBounds":{"left":0.01125,"bottom":-0.044687499999999984,"right":0.51124999999999998,"top":0.75218750000000001},"atlasBounds":{"left":232.5,"bottom":165.5,"right":264.5,"top":216.5}},{"unicode":84,"advance":0.58450000000000002,"planeBounds":{"left":-0.020250000000000008,"bottom":-0.036874999999999991,"right":0.60475000000000001,"top":0.74437500000000001},"atlasBounds":{"left":115.5,"bottom":231.5,"right":155.5,"top":281.5}},{"unicode":85,"advance":0.73350000000000004,"planeBounds":{"left":0.061812500000000013,"bottom":-0.041125000000000016,"right":0.67118750000000005,"top":0.74012500000000003},"atlasBounds":{"left":115.5,"bottom":78.5,"right":154.5,"top":128.5}},{"unicode":86,"advance":0.64449999999999996,"planeBounds":{"left":-0.029312499999999971,"bottom":-0.036874999999999991,"right":0.67381250000000004,"top":0.74437500000000001},"atlasBounds":{"left":68.5,"bottom":192.5,"right":113.5,"top":242.5}},{"unicode":87,"advance":0.98699999999999999,"planeBounds":{"left":-0.030187499999999985,"bottom":-0.036874999999999991,"right":1.0166875,"top":0.74437500000000001},"atlasBounds":{"left":0.5,"bottom":333.5,"right":67.5,"top":383.5}},{"unicode":88,"advance":0.59950000000000003,"planeBounds":{"left":-0.028625000000000022,"bottom":-0.036874999999999991,"right":0.62762499999999999,"top":0.74437500000000001},"atlasBounds":{"left":115.5,"bottom":333.5,"right":157.5,"top":383.5}},{"unicode":89,"advance":0.59950000000000003,"planeBounds":{"left":-0.020562499999999994,"bottom":-0.036874999999999991,"right":0.62006249999999996,"top":0.74437500000000001},"atlasBounds":{"left":115.5,"bottom":282.5,"right":156.5,"top":332.5}},{"unicode":90,"advance":0.63300000000000001,"planeBounds":{"left":0.02262500000000001,"bottom":-0.036874999999999991,"right":0.61637500000000001,"top":0.74437500000000001},"atlasBounds":{"left":158.5,"bottom":282.5,"right":196.5,"top":332.5}},{"unicode":91,"advance":0.29999999999999999,"planeBounds":{"left":0.049812500000000003,"bottom":-0.16331249999999997,"right":0.28418749999999998,"top":0.78981250000000003},"atlasBounds":{"left":51.5,"bottom":124.5,"right":66.5,"top":185.5}},{"unicode":92,"advance":0.35749999999999998,"planeBounds":{"left":-0.035687500000000011,"bottom":-0.079124999999999959,"right":0.38618750000000002,"top":0.764625},"atlasBounds":{"left":266.5,"bottom":0.5,"right":293.5,"top":54.5}},{"unicode":93,"advance":0.29999999999999999,"planeBounds":{"left":0.015562500000000002,"bottom":-0.16331249999999997,"right":0.24993750000000001,"top":0.78981250000000003},"atlasBounds":{"left":51.5,"bottom":62.5,"right":66.5,"top":123.5}},{"unicode":94,"advance":0.57999999999999996,"planeBounds":{"left":0.068250000000000005,"bottom":0.36625000000000002,"right":0.50575000000000003,"top":0.74124999999999996},"atlasBounds":{"left":330.5,"bottom":328.5,"right":358.5,"top":352.5}},{"unicode":95,"advance":0.39400000000000002,"planeBounds":{"left":-0.037374999999999992,"bottom":-0.1741875,"right":0.43137500000000001,"top":-0.064812499999999995},"atlasBounds":{"left":232.5,"bottom":4.5,"right":262.5,"top":11.5}},{"unicode":96,"advance":0.29249999999999998,"planeBounds":{"left":0.010625000000000001,"bottom":0.54643750000000002,"right":0.229375,"top":0.74956250000000002},"atlasBounds":{"left":51.5,"bottom":48.5,"right":65.5,"top":61.5}},{"unicode":97,"advance":0.48649999999999999,"planeBounds":{"left":0.016749999999999994,"bottom":-0.040062499999999994,"right":0.45424999999999999,"top":0.5380625},"atlasBounds":{"left":330.5,"bottom":290.5,"right":358.5,"top":327.5}},{"unicode":98,"advance":0.54600000000000004,"planeBounds":{"left":0.052062500000000018,"bottom":-0.037937500000000006,"right":0.53643750000000001,"top":0.75893750000000004},"atlasBounds":{"left":266.5,"bottom":232.5,"right":297.5,"top":283.5}},{"unicode":99,"advance":0.45500000000000002,"planeBounds":{"left":0.0094375000000000032,"bottom":-0.039562499999999994,"right":0.46256249999999999,"top":0.53856250000000006},"atlasBounds":{"left":299.5,"bottom":205.5,"right":328.5,"top":242.5}},{"unicode":100,"advance":0.54600000000000004,"planeBounds":{"left":0.0095625000000000172,"bottom":-0.037937500000000006,"right":0.49393750000000003,"top":0.75893750000000004},"atlasBounds":{"left":266.5,"bottom":142.5,"right":297.5,"top":193.5}},{"unicode":101,"advance":0.51100000000000001,"planeBounds":{"left":0.011812499999999993,"bottom":-0.039562499999999994,"right":0.4961875,"top":0.53856250000000006},"atlasBounds":{"left":266.5,"bottom":194.5,"right":297.5,"top":231.5}},{"unicode":102,"advance":0.32200000000000001,"planeBounds":{"left":-0.016687500000000008,"bottom":-0.032374999999999987,"right":0.34268750000000003,"top":0.74887500000000007},"atlasBounds":{"left":359.5,"bottom":195.5,"right":382.5,"top":245.5}},{"unicode":103,"advance":0.50450000000000006,"planeBounds":{"left":0.0021875000000000319,"bottom":-0.2225625,"right":0.51781250000000001,"top":0.5430625},"atlasBounds":{"left":232.5,"bottom":217.5,"right":265.5,"top":266.5}},{"unicode":104,"advance":0.54100000000000004,"planeBounds":{"left":0.04212500000000001,"bottom":-0.034687499999999989,"right":0.51087499999999997,"top":0.76218750000000002},"atlasBounds":{"left":299.5,"bottom":243.5,"right":329.5,"top":294.5}},{"unicode":105,"advance":0.23750000000000002,"planeBounds":{"left":0.041125000000000002,"bottom":-0.033874999999999988,"right":0.19737499999999999,"top":0.74737500000000001},"atlasBounds":{"left":330.5,"bottom":26.5,"right":340.5,"top":76.5}},{"unicode":106,"advance":0.23550000000000001,"planeBounds":{"left":-0.063562500000000008,"bottom":-0.21987500000000001,"right":0.20206250000000001,"top":0.74887500000000007},"atlasBounds":{"left":307.5,"bottom":2.5,"right":324.5,"top":64.5}},{"unicode":107,"advance":0.49199999999999999,"planeBounds":{"left":0.050437500000000003,"bottom":-0.034687499999999989,"right":0.50356250000000002,"top":0.76218750000000002},"atlasBounds":{"left":299.5,"bottom":153.5,"right":328.5,"top":204.5}},{"unicode":108,"advance":0.23750000000000002,"planeBounds":{"left":0.056250000000000001,"bottom":-0.034687499999999989,"right":0.18124999999999999,"top":0.76218750000000002},"atlasBounds":{"left":341.5,"bottom":11.5,"right":349.5,"top":62.5}},{"unicode":109,"advance":0.79549999999999998,"planeBounds":{"left":0.044625000000000005,"bottom":-0.03631249999999997,"right":0.76337500000000003,"top":0.54181250000000003},"atlasBounds":{"left":68.5,"bottom":346.5,"right":114.5,"top":383.5}},{"unicode":110,"advance":0.54100000000000004,"planeBounds":{"left":0.04212500000000001,"bottom":-0.03631249999999997,"right":0.51087499999999997,"top":0.54181250000000003},"atlasBounds":{"left":299.5,"bottom":346.5,"right":329.5,"top":383.5}},{"unicode":111,"advance":0.54100000000000004,"planeBounds":{"left":0.0046250000000000076,"bottom":-0.039562499999999994,"right":0.53587499999999999,"top":0.53856250000000006},"atlasBounds":{"left":197.5,"bottom":297.5,"right":231.5,"top":334.5}},{"unicode":112,"advance":0.53500000000000003,"planeBounds":{"left":0.046812500000000014,"bottom":-0.20999999999999996,"right":0.53118750000000003,"top":0.54000000000000004},"atlasBounds":{"left":266.5,"bottom":284.5,"right":297.5,"top":332.5}},{"unicode":113,"advance":0.54600000000000004,"planeBounds":{"left":0.0095625000000000172,"bottom":-0.20999999999999996,"right":0.49393750000000003,"top":0.54000000000000004},"atlasBounds":{"left":266.5,"bottom":93.5,"right":297.5,"top":141.5}},{"unicode":114,"advance":0.39700000000000002,"planeBounds":{"left":0.044062500000000018,"bottom":-0.036062499999999997,"right":0.4034375,"top":0.5420625},"atlasBounds":{"left":359.5,"bottom":246.5,"right":382.5,"top":283.5}},{"unicode":115,"advance":0.42999999999999999,"planeBounds":{"left":0.0078750000000000087,"bottom":-0.040312499999999966,"right":0.41412500000000002,"top":0.53781250000000003},"atlasBounds":{"left":330.5,"bottom":114.5,"right":356.5,"top":151.5}},{"unicode":116,"advance":0.35649999999999998,"planeBounds":{"left":-0.011500000000000007,"bottom":-0.042999999999999976,"right":0.36349999999999999,"top":0.70699999999999996},"atlasBounds":{"left":359.5,"bottom":335.5,"right":383.5,"top":383.5}},{"unicode":117,"advance":0.54100000000000004,"planeBounds":{"left":0.029875000000000009,"bottom":-0.04431249999999997,"right":0.49862499999999998,"top":0.53381250000000002},"atlasBounds":{"left":266.5,"bottom":55.5,"right":296.5,"top":92.5}},{"unicode":118,"advance":0.48699999999999999,"planeBounds":{"left":-0.022125000000000016,"bottom":-0.032499999999999973,"right":0.50912500000000005,"top":0.53000000000000003},"atlasBounds":{"left":158.5,"bottom":3.5,"right":192.5,"top":39.5}},{"unicode":119,"advance":0.73699999999999999,"planeBounds":{"left":-0.022125000000000016,"bottom":-0.03125,"right":0.75912500000000005,"top":0.53125},"atlasBounds":{"left":0.5,"bottom":179.5,"right":50.5,"top":215.5}},{"unicode":120,"advance":0.46050000000000002,"planeBounds":{"left":-0.019750000000000007,"bottom":-0.032499999999999973,"right":0.48025000000000001,"top":0.53000000000000003},"atlasBounds":{"left":68.5,"bottom":0.5,"right":100.5,"top":36.5}},{"unicode":121,"advance":0.48699999999999999,"planeBounds":{"left":-0.022374999999999985,"bottom":-0.21425,"right":0.50887499999999997,"top":0.53575000000000006},"atlasBounds":{"left":197.5,"bottom":335.5,"right":231.5,"top":383.5}},{"unicode":122,"advance":0.45200000000000001,"planeBounds":{"left":-0.0015625000000000001,"bottom":-0.032499999999999973,"right":0.45156250000000003,"top":0.53000000000000003},"atlasBounds":{"left":299.5,"bottom":65.5,"right":328.5,"top":101.5}},{"unicode":123,"advance":0.29999999999999999,"planeBounds":{"left":-0.0011249999999999876,"bottom":-0.16331249999999997,"right":0.28012500000000001,"top":0.78981250000000003},"atlasBounds":{"left":359.5,"bottom":133.5,"right":377.5,"top":194.5}},{"unicode":124,"advance":0.29999999999999999,"planeBounds":{"left":0.095062500000000008,"bottom":-0.20874999999999999,"right":0.20443749999999999,"top":0.79125000000000001},"atlasBounds":{"left":299.5,"bottom":0.5,"right":306.5,"top":64.5}},{"unicode":125,"advance":0.29999999999999999,"planeBounds":{"left":0.019625000000000014,"bottom":-0.16331249999999997,"right":0.300875,"top":0.78981250000000003},"atlasBounds":{"left":359.5,"bottom":71.5,"right":377.5,"top":132.5}},{"unicode":126,"advance":0.57999999999999996,"planeBounds":{"left":0.032187500000000029,"bottom":0.17806250000000001,"right":0.54781250000000004,"top":0.41243750000000001},"atlasBounds":{"left":197.5,"bottom":24.5,"right":230.5,"top":39.5}}],"kerning":[]}
diff --git a/assets/lato-light.png b/assets/lato-light.png
new file mode 100644
index 0000000000000000000000000000000000000000..c0810e29b4cec4bcc92c8184cc1177386676d901
GIT binary patch
literal 106104
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%0Dwo#)NTHr&=MYL4VSt=DLBpZne8
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
Qv;Y7A07*qoM6N<$f^#K*Pyhe`

literal 0
HcmV?d00001

diff --git a/book/src/chapter_1.md b/book/src/chapter_1.md
index 9ced789..419a831 100644
--- a/book/src/chapter_1.md
+++ b/book/src/chapter_1.md
@@ -69,13 +69,7 @@ fn startup(
     commands.spawn(UICameraBundle::new());
     let mut widget_context = KayakRootContext::new();
 
-    let pre_existing_app_entity = widget_context.get_child_at(None);
-    let app_entity = if let Some(entity) = pre_existing_app_entity {
-        commands.get_or_spawn(entity).id()
-    } else {
-        commands.spawn_empty().id()
-    };
-
+    let app_entity = widget_context.spawn_widget(&mut commands, None);
     // Create default app bundle
     let mut app_bundle = KayakAppBundle {
         ..Default::default()
@@ -85,12 +79,7 @@ fn startup(
     let mut children = KChildren::new();
 
     // Create the text child
-    let pre_existing_text_entity = widget_context.get_child_at(Some(app_entity));
-    let text_entity = if let Some(entity) = pre_existing_text_entity {
-        commands.get_or_spawn(entity).id()
-    } else {
-        commands.spawn_empty().id()
-    };
+    let text_entity = widget_context.spawn_widget(&mut commands, Some(app_entity));
     commands.entity(text_entity).insert(TextWidgetBundle {
         text: TextProps {
             content: "Hello World".into(),
@@ -113,10 +102,11 @@ fn startup(
 }
 fn main() {
     App::new()
-        .add_plugins(DefaultPlugins.set(ImagePlugin::default_nearest()))
+        .add_plugins(DefaultPlugins)
         .add_plugin(KayakContextPlugin)
         .add_plugin(KayakWidgets)
         .add_startup_system(startup)
         .run()
 }
+
 ```
diff --git a/examples/bevy_scene.rs b/examples/bevy_scene.rs
index 68a6568..dc9f966 100644
--- a/examples/bevy_scene.rs
+++ b/examples/bevy_scene.rs
@@ -227,29 +227,28 @@ fn startup(
                     text={TextProps {
                         size: 13.0,
                         content: "You can check if the cursor is over the UI or on a focusable widget using the BevyContext resource.".to_string(),
+                        user_styles: text_styles.clone(),
                         ..Default::default()
                     }}
-                    styles={text_styles.clone()}
                 />
                 <KButtonBundle
+                    button={KButton {
+                        text: "Change Tile Color".into(),
+                        ..Default::default()
+                    }}
                     on_event={handle_change_color}
                     styles={button_styles}
-                >
-                    <TextWidgetBundle
-                        text={TextProps {
-                            size: 16.0,
-                            content: "Change Tile Color".to_string(),
-                            ..Default::default()
-                        }}
-                    />
-                </KButtonBundle>
+                />
                 <TextWidgetBundle
                     text={TextProps {
                         size: 11.0,
                         content: "Go ahead and click the button! The tile won't move.".to_string(),
+                        user_styles: KStyle {
+                            top: Units::Pixels(10.0).into(),
+                            ..text_styles
+                        },
                         ..Default::default()
                     }}
-                    styles={text_styles}
                 />
             </WindowBundle>
         </KayakAppBundle>
diff --git a/examples/conditional_widget.rs b/examples/conditional_widget.rs
new file mode 100644
index 0000000..a6de4d6
--- /dev/null
+++ b/examples/conditional_widget.rs
@@ -0,0 +1,143 @@
+use bevy::prelude::*;
+use kayak_ui::prelude::{widgets::*, *};
+
+#[derive(Component, Default, PartialEq, Clone)]
+struct MyWidget;
+
+impl Widget for MyWidget {}
+
+#[derive(Component, Default, PartialEq, Clone)]
+struct MyWidgetState {
+    pub show_window: bool,
+}
+
+#[derive(Bundle)]
+struct MyWidgetBundle {
+    count: MyWidget,
+    styles: KStyle,
+    widget_name: WidgetName,
+}
+
+impl Default for MyWidgetBundle {
+    fn default() -> Self {
+        Self {
+            count: MyWidget::default(),
+            styles: KStyle::default(),
+            widget_name: MyWidget::default().get_name(),
+        }
+    }
+}
+
+fn my_widget_render(
+    In((widget_context, entity)): In<(KayakWidgetContext, Entity)>,
+    mut commands: Commands,
+    query: Query<&MyWidgetState>,
+) -> bool {
+    let state_entity = widget_context.use_state(&mut commands, entity, MyWidgetState::default());
+    if let Ok(state) = query.get(state_entity) {
+        let parent_id = Some(entity);
+        rsx! {
+            <ElementBundle>
+                <KButtonBundle
+                    button={KButton {
+                        text: "Show Window".into(),
+                        user_styles: KStyle {
+                            left: Units::Stretch(1.0).into(),
+                            right: Units::Stretch(1.0).into(),
+                            ..Default::default()
+                        }
+                    }}
+                    on_event={OnEvent::new(
+                        move |In((event_dispatcher_context, _, mut event, _entity)): In<(EventDispatcherContext, WidgetState, Event, Entity)>,
+                            mut query: Query<&mut MyWidgetState>| {
+                            event.prevent_default();
+                            event.stop_propagation();
+                            match event.event_type {
+                                EventType::Click(..) => {
+                                    if let Ok(mut state) = query.get_mut(state_entity) {
+                                        state.show_window = true;
+                                    }
+                                }
+                                _ => {}
+                            }
+                            (event_dispatcher_context, event)
+                        },
+                    )}
+                />
+                {if state.show_window {
+                    constructor! {
+                        <WindowBundle
+                            window={KWindow {
+                                title: "Conditional widget rendering!".into(),
+                                draggable: true,
+                                initial_position: Vec2::new(10.0, 10.0),
+                                size: Vec2::new(300.0, 250.0),
+                                ..KWindow::default()
+                            }}
+                        >
+                            <KButtonBundle
+                                button={KButton { text: "Hide Window".into(), ..Default::default() }}
+                                on_event={OnEvent::new(
+                                    move |In((event_dispatcher_context, _, mut event, _entity)): In<(EventDispatcherContext, WidgetState, Event, Entity)>,
+                                        mut query: Query<&mut MyWidgetState>| {
+                                        match event.event_type {
+                                            EventType::Click(..) => {
+                                                event.prevent_default();
+                                                event.stop_propagation();
+                                                if let Ok(mut state) = query.get_mut(state_entity) {
+                                                    state.show_window = false;
+                                                }
+                                            }
+                                            _ => {}
+                                        }
+                                        (event_dispatcher_context, event)
+                                    },
+                                )}
+                            />
+                        </WindowBundle>
+                    }
+                }}
+            </ElementBundle>
+        }
+    }
+
+    true
+}
+
+fn startup(
+    mut commands: Commands,
+    mut font_mapping: ResMut<FontMapping>,
+    asset_server: Res<AssetServer>,
+) {
+    font_mapping.set_default(asset_server.load("lato-light.kayak_font"));
+
+    // Camera 2D forces a clear pass in bevy.
+    // We do this because our scene is not rendering anything else.
+    commands.spawn(Camera2dBundle::default());
+    commands.spawn(UICameraBundle::new());
+
+    let mut widget_context = KayakRootContext::new();
+    let parent_id = None;
+    widget_context.add_widget_data::<MyWidget, MyWidgetState>();
+    widget_context.add_widget_system(
+        MyWidget::default().get_name(),
+        widget_update::<MyWidget, MyWidgetState>,
+        my_widget_render,
+    );
+    rsx! {
+        <KayakAppBundle>
+            <MyWidgetBundle />
+        </KayakAppBundle>
+    }
+    commands.insert_resource(widget_context);
+}
+
+fn main() {
+    App::new()
+        .insert_resource(ClearColor(Color::rgb(0.0, 0.0, 0.0)))
+        .add_plugins(DefaultPlugins)
+        .add_plugin(KayakContextPlugin)
+        .add_plugin(KayakWidgets)
+        .add_startup_system(startup)
+        .run()
+}
diff --git a/examples/context.rs b/examples/context.rs
index 5630b1f..bc128df 100644
--- a/examples/context.rs
+++ b/examples/context.rs
@@ -255,18 +255,17 @@ fn update_theme_demo(
                 };
 
                 let parent_id = Some(entity);
-                let mut children = kayak_ui::prelude::KChildren::new();
                 rsx! {
-                    <>
+                    <ElementBundle>
                         <TextWidgetBundle
                             text={TextProps {
                                 content: select_lbl,
                                 size: 14.0,
                                 line_height: Some(28.0),
-                                ..Default::default()
-                            }}
-                            styles={KStyle {
-                                height: StyleProp::Value(Units::Pixels(28.0)),
+                                user_styles: KStyle {
+                                    height: StyleProp::Value(Units::Pixels(28.0)),
+                                    ..Default::default()
+                                },
                                 ..Default::default()
                             }}
                         />
@@ -284,21 +283,14 @@ fn update_theme_demo(
                                 text={TextProps {
                                     content: "Lorem ipsum dolor...".into(),
                                     size: 12.0,
+                                    user_styles: text_styles.clone(),
                                     ..Default::default()
                                 }}
-                                styles={text_styles.clone()}
                             />
                             <KButtonBundle
+                                button={KButton { text: "BUTTON".into(), ..Default::default() }}
                                 styles={btn_style.clone()}
-                            >
-                                <TextWidgetBundle
-                                    text={TextProps {
-                                        content: "BUTTON".into(),
-                                        size: 14.0,
-                                        ..Default::default()
-                                    }}
-                                />
-                            </KButtonBundle>
+                            />
                             {
                                 if theme_demo.is_root {
                                     widget_context.set_context_entity::<Theme>(
@@ -321,10 +313,8 @@ fn update_theme_demo(
                                 }
                             }
                         </BackgroundBundle>
-                    </>
+                    </ElementBundle>
                 }
-
-                children.process(&widget_context, parent_id);
             }
         }
     }
diff --git a/examples/hello_world_no_macro.rs b/examples/hello_world_no_macro.rs
index 02192bd..647e31d 100644
--- a/examples/hello_world_no_macro.rs
+++ b/examples/hello_world_no_macro.rs
@@ -9,13 +9,7 @@ fn startup(
     commands.spawn(UICameraBundle::new());
     let mut widget_context = KayakRootContext::new();
 
-    let pre_existing_app_entity = widget_context.get_child_at(None);
-    let app_entity = if let Some(entity) = pre_existing_app_entity {
-        commands.get_or_spawn(entity).id()
-    } else {
-        commands.spawn_empty().id()
-    };
-
+    let app_entity = widget_context.spawn_widget(&mut commands, None);
     // Create default app bundle
     let mut app_bundle = KayakAppBundle {
         ..Default::default()
@@ -25,12 +19,7 @@ fn startup(
     let mut children = KChildren::new();
 
     // Create the text child
-    let pre_existing_text_entity = widget_context.get_child_at(Some(app_entity));
-    let text_entity = if let Some(entity) = pre_existing_text_entity {
-        commands.get_or_spawn(entity).id()
-    } else {
-        commands.spawn_empty().id()
-    };
+    let text_entity = widget_context.spawn_widget(&mut commands, Some(app_entity));
     commands.entity(text_entity).insert(TextWidgetBundle {
         text: TextProps {
             content: "Hello World".into(),
diff --git a/examples/quads.rs b/examples/quads.rs
index 514c9a9..5e65231 100644
--- a/examples/quads.rs
+++ b/examples/quads.rs
@@ -9,6 +9,7 @@ pub struct MyQuad {
     pos: Vec2,
     pub size: Vec2,
     pub color: Color,
+    pub z_index: i32,
 }
 
 fn my_quad_update(
@@ -24,16 +25,19 @@ fn my_quad_update(
             style.width = StyleProp::Value(Units::Pixels(quad.size.x));
             style.height = StyleProp::Value(Units::Pixels(quad.size.y));
             style.background_color = StyleProp::Value(quad.color);
+            style.z_index = StyleProp::Value(quad.z_index);
         }
 
         *on_event = OnEvent::new(
-            move |In((event_dispatcher_context, _, event, entity)): In<(
+            move |In((event_dispatcher_context, _, mut event, entity)): In<(
                 EventDispatcherContext,
                 WidgetState,
                 Event,
                 Entity,
             )>,
                   mut query: Query<(&mut KStyle, &MyQuad)>| {
+                event.prevent_default();
+                event.stop_propagation();
                 match event.event_type {
                     EventType::MouseIn(..) => {
                         if let Ok((mut styles, _)) = query.get_mut(entity) {
@@ -99,7 +103,7 @@ fn startup(
     rsx! {
         <KayakAppBundle>
             {
-                (0..1000).for_each(|_| {
+                (0..1000i32).for_each(|i| {
                     let pos = Vec2::new(fastrand::i32(0..1280) as f32, fastrand::i32(0..720) as f32);
                     let size = Vec2::new(
                         fastrand::i32(32..64) as f32,
@@ -113,7 +117,7 @@ fn startup(
                     );
                     constructor! {
                         <MyQuadBundle
-                            my_quad={MyQuad { pos, size, color }}
+                            my_quad={MyQuad { pos, size, color, z_index: i }}
                         />
                     }
                 });
diff --git a/examples/scrolling.rs b/examples/scrolling.rs
index 6c87b1b..baef12e 100644
--- a/examples/scrolling.rs
+++ b/examples/scrolling.rs
@@ -1,5 +1,5 @@
 use bevy::prelude::*;
-use kayak_ui::prelude::{widgets::*, KStyle, *};
+use kayak_ui::prelude::{widgets::*, *};
 
 fn startup(
     mut commands: Commands,
@@ -8,21 +8,14 @@ fn startup(
 ) {
     font_mapping.set_default(asset_server.load("roboto.kayak_font"));
 
+    // Camera 2D forces a clear pass in bevy.
+    // We do this because our scene is not rendering anything else.
+    commands.spawn(Camera2dBundle::default());
     commands.spawn(UICameraBundle::new());
 
-    let image = asset_server.load("kenny/panel_brown.png");
-
     let mut widget_context = KayakRootContext::new();
     let parent_id = None;
 
-    let nine_patch_styles = KStyle {
-        width: StyleProp::Value(Units::Pixels(512.0)),
-        height: StyleProp::Value(Units::Pixels(512.0)),
-        offset: StyleProp::Value(Edge::all(Units::Stretch(1.0))),
-        padding: StyleProp::Value(Edge::all(Units::Pixels(25.0))),
-        ..KStyle::default()
-    };
-
     let lorem_ipsum = r#"
 Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras sed tellus neque. Proin tempus ligula a mi molestie aliquam. Orci varius natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nullam venenatis consequat ultricies. Sed ac orci purus. Nullam velit nisl, dapibus vel mauris id, dignissim elementum sapien. Vestibulum faucibus sapien ut erat bibendum, id lobortis nisi luctus. Mauris feugiat at lectus at pretium. Pellentesque vitae finibus ante. Nulla non ex neque. Cras varius, lorem facilisis consequat blandit, lorem mauris mollis massa, eget consectetur magna sem vel enim. Nam aliquam risus pulvinar, volutpat leo eget, eleifend urna. Suspendisse in magna sed ligula vehicula volutpat non vitae augue. Phasellus aliquam viverra consequat. Nam rhoncus molestie purus, sed laoreet neque imperdiet eget. Sed egestas metus eget sodales congue.
                                     
@@ -37,12 +30,14 @@ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras sed tellus neque.
 
     rsx! {
         <KayakAppBundle>
-            <NinePatchBundle
-                nine_patch={NinePatch {
-                    handle: image.clone(),
-                    border: Edge::all(30.0),
+            <WindowBundle
+                window={KWindow {
+                    title: "Simple scrolling example".into(),
+                    draggable: true,
+                    initial_position: Vec2::new(10.0, 10.0),
+                    size: Vec2::new(512.0, 512.0),
+                    ..KWindow::default()
                 }}
-                styles={nine_patch_styles}
             >
                 <ScrollContextProviderBundle>
                     <ScrollBoxBundle>
@@ -55,7 +50,7 @@ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras sed tellus neque.
                         />
                     </ScrollBoxBundle>
                 </ScrollContextProviderBundle>
-            </NinePatchBundle>
+            </WindowBundle>
         </KayakAppBundle>
     }
     commands.insert_resource(widget_context);
@@ -63,6 +58,7 @@ Lorem ipsum dolor sit amet, consectetur adipiscing elit. Cras sed tellus neque.
 
 fn main() {
     App::new()
+        .insert_resource(ClearColor(Color::rgb(0.0, 0.0, 0.0)))
         .add_plugins(DefaultPlugins.set(ImagePlugin::default_nearest()))
         .add_plugin(KayakContextPlugin)
         .add_plugin(KayakWidgets)
diff --git a/examples/simple_state.rs b/examples/simple_state.rs
index eee326a..e55f5b2 100644
--- a/examples/simple_state.rs
+++ b/examples/simple_state.rs
@@ -38,22 +38,44 @@ fn current_count_render(
     if let Ok(current_count) = query.get(state_entity) {
         let parent_id = Some(entity);
         rsx! {
-            <TextWidgetBundle
-                text={
-                    TextProps {
-                        content: format!("Current Count: {}", current_count.foo).into(),
-                        size: 16.0,
-                        line_height: Some(40.0),
-                        ..Default::default()
+            <ElementBundle>
+                <TextWidgetBundle
+                    text={
+                        TextProps {
+                            content: format!("Current Count: {}", current_count.foo).into(),
+                            size: 16.0,
+                            line_height: Some(40.0),
+                            ..Default::default()
+                        }
                     }
-                }
-            />
+                />
+                <KButtonBundle
+                    button={KButton {
+                        text: "Click me!".into(),
+                        ..Default::default()
+                    }}
+                    on_event={OnEvent::new(
+                        move |In((event_dispatcher_context, _, mut event, _entity)): In<(EventDispatcherContext, WidgetState, Event, Entity)>,
+                            mut query: Query<&mut CurrentCountState>| {
+                            match event.event_type {
+                                EventType::Click(..) => {
+                                    event.prevent_default();
+                                    event.stop_propagation();
+                                    if let Ok(mut current_count) = query.get_mut(state_entity) {
+                                        current_count.foo += 1;
+                                    }
+                                }
+                                _ => {}
+                            }
+                            (event_dispatcher_context, event)
+                        },
+                    )}
+                />
+            </ElementBundle>
         }
-
-        return true;
     }
 
-    false
+    true
 }
 
 fn startup(
@@ -61,7 +83,7 @@ fn startup(
     mut font_mapping: ResMut<FontMapping>,
     asset_server: Res<AssetServer>,
 ) {
-    font_mapping.set_default(asset_server.load("roboto.kayak_font"));
+    font_mapping.set_default(asset_server.load("lato-light.kayak_font"));
 
     // Camera 2D forces a clear pass in bevy.
     // We do this because our scene is not rendering anything else.
@@ -78,44 +100,30 @@ fn startup(
     );
     rsx! {
         <KayakAppBundle>
-            <WindowBundle
-                window={KWindow {
-                    title: "State Example Window".into(),
-                    draggable: true,
-                    initial_position: Vec2::new(10.0, 10.0),
-                    size: Vec2::new(300.0, 250.0),
-                    ..KWindow::default()
-                }}
-            >
-                <CurrentCountBundle id={"current_count_entity"} />
-                <KButtonBundle
-                    on_event={OnEvent::new(
-                        move |In((event_dispatcher_context, widget_state, event, _entity)): In<(EventDispatcherContext, WidgetState, Event, Entity)>,
-                            mut query: Query<&mut CurrentCountState>| {
-                            match event.event_type {
-                                EventType::Click(..) => {
-                                    if let Some(state_entity) = widget_state.get(current_count_entity) {
-                                        if let Ok(mut current_count) = query.get_mut(state_entity) {
-                                            current_count.foo += 1;
-                                        }
-                                    }
-                                }
-                                _ => {}
-                            }
-                            (event_dispatcher_context, event)
-                        },
-                    )}
+            <WindowContextProviderBundle>
+                <WindowBundle
+                    window={KWindow {
+                        title: "State Example Window".into(),
+                        draggable: true,
+                        initial_position: Vec2::new(10.0, 10.0),
+                        size: Vec2::new(300.0, 250.0),
+                        ..KWindow::default()
+                    }}
                 >
-                    <TextWidgetBundle
-                        text={TextProps {
-                            content: "Click me!".into(),
-                            size: 16.0,
-                            alignment: Alignment::Start,
-                            ..Default::default()
-                        }}
-                    />
-                </KButtonBundle>
-            </WindowBundle>
+                    <CurrentCountBundle />
+                </WindowBundle>
+                <WindowBundle
+                    window={KWindow {
+                        title: "State Example Window".into(),
+                        draggable: true,
+                        initial_position: Vec2::new(500.0, 10.0),
+                        size: Vec2::new(300.0, 250.0),
+                        ..KWindow::default()
+                    }}
+                >
+                    <CurrentCountBundle />
+                </WindowBundle>
+            </WindowContextProviderBundle>
         </KayakAppBundle>
     }
     commands.insert_resource(widget_context);
diff --git a/examples/tabs/tab.rs b/examples/tabs/tab.rs
index 4088274..1260842 100644
--- a/examples/tabs/tab.rs
+++ b/examples/tabs/tab.rs
@@ -16,7 +16,6 @@ impl Widget for Tab {}
 #[derive(Bundle)]
 pub struct TabBundle {
     pub tab: Tab,
-    pub styles: KStyle,
     pub children: KChildren,
     pub widget_name: WidgetName,
 }
@@ -26,11 +25,6 @@ impl Default for TabBundle {
         Self {
             tab: Default::default(),
             children: Default::default(),
-            styles: KStyle {
-                height: Units::Auto.into(),
-                top: Units::Pixels(0.0).into(),
-                ..Default::default()
-            },
             widget_name: Tab::default().get_name(),
         }
     }
@@ -51,7 +45,7 @@ pub fn tab_render(
             let styles = KStyle {
                 background_color: StyleProp::Value(Color::rgba(0.0781, 0.0898, 0.101, 1.0)),
                 padding: StyleProp::Value(Edge::all(Units::Pixels(15.0))),
-                height: Units::Pixels(100.0).into(),
+                height: Units::Stretch(1.0).into(),
                 width: Units::Stretch(1.0).into(),
                 ..Default::default()
             };
diff --git a/examples/tabs/tab_button.rs b/examples/tabs/tab_button.rs
index 1e10a41..6099a8f 100644
--- a/examples/tabs/tab_button.rs
+++ b/examples/tabs/tab_button.rs
@@ -1,9 +1,10 @@
 use bevy::prelude::{Bundle, Color, Commands, Component, Entity, In, Query};
-use kayak_ui::prelude::{
-    rsx,
-    widgets::{KButtonBundle, TextProps, TextWidgetBundle},
-    Event, EventDispatcherContext, EventType, KChildren, KStyle, KayakWidgetContext, OnEvent,
-    StyleProp, Units, Widget, WidgetName, WidgetState,
+use kayak_ui::{
+    prelude::{
+        rsx, widgets::KButtonBundle, Corner, Event, EventDispatcherContext, EventType, KStyle,
+        KayakWidgetContext, OnEvent, StyleProp, Units, Widget, WidgetName, WidgetState,
+    },
+    widgets::KButton,
 };
 
 use crate::tab_context::TabContext;
@@ -74,14 +75,18 @@ pub fn tab_button_render(
 
             rsx! {
                 <KButtonBundle
-                    on_event={on_event}
-                    styles={KStyle {
-                        background_color: StyleProp::Value(background_color),
-                        height: StyleProp::Value(Units::Pixels(25.0)),
+                    button={KButton {
+                        text: tab_button.title.clone(),
+                        user_styles: KStyle {
+                            background_color: StyleProp::Value(background_color),
+                            border_radius: Corner::all(0.0).into(),
+                            height: StyleProp::Value(Units::Pixels(25.0)),
+                            ..Default::default()
+                        },
                         ..Default::default()
-                    }}>
-                    <TextWidgetBundle text={TextProps { content: tab_button.title.clone(), size: 16.0, line_height: Some(16.0), ..Default::default() }} />
-                </KButtonBundle>
+                    }}
+                    on_event={on_event}
+                />
             }
         }
     }
diff --git a/examples/tabs/tabs.rs b/examples/tabs/tabs.rs
index 416f0a9..8df527c 100644
--- a/examples/tabs/tabs.rs
+++ b/examples/tabs/tabs.rs
@@ -17,6 +17,9 @@ fn startup(
 ) {
     font_mapping.set_default(asset_server.load("roboto.kayak_font"));
 
+    // Camera 2D forces a clear pass in bevy.
+    // We do this because our scene is not rendering anything else.
+    commands.spawn(Camera2dBundle::default());
     commands.spawn(UICameraBundle::new());
 
     let mut widget_context = KayakRootContext::new();
@@ -89,6 +92,7 @@ fn startup(
 
 fn main() {
     App::new()
+        .insert_resource(ClearColor(Color::rgb(0.0, 0.0, 0.0)))
         .add_plugins(DefaultPlugins)
         .add_plugin(KayakContextPlugin)
         .add_plugin(KayakWidgets)
diff --git a/examples/text_box.rs b/examples/text_box.rs
index 723f96e..812b046 100644
--- a/examples/text_box.rs
+++ b/examples/text_box.rs
@@ -124,6 +124,7 @@ fn startup(
 
 fn main() {
     App::new()
+        .insert_resource(ClearColor(Color::rgb(0.0, 0.0, 0.0)))
         .add_plugins(DefaultPlugins)
         .add_plugin(KayakContextPlugin)
         .add_plugin(KayakWidgets)
diff --git a/examples/todo/input.rs b/examples/todo/input.rs
index 487632b..6e6b156 100644
--- a/examples/todo/input.rs
+++ b/examples/todo/input.rs
@@ -4,9 +4,7 @@ use kayak_ui::prelude::{widgets::*, *};
 use crate::TodoList;
 
 #[derive(Component, Default, Clone, PartialEq)]
-pub struct TodoInputProps {
-    has_focus: bool,
-}
+pub struct TodoInputProps;
 
 impl Widget for TodoInputProps {}
 
@@ -39,120 +37,78 @@ impl Default for TodoInputBundle {
 pub fn render_todo_input(
     In((widget_context, entity)): In<(KayakWidgetContext, Entity)>,
     mut commands: Commands,
-    mut todo_list: ResMut<TodoList>,
-    keyboard_input: Res<Input<KeyCode>>,
-    change_query: Query<Entity, (With<TodoInputProps>, With<Mounted>)>,
-    prop_query: Query<&TodoInputProps>,
+    todo_list: Res<TodoList>,
 ) -> bool {
-    if todo_list.is_changed() || !change_query.is_empty() {
-        if let Ok(props) = prop_query.get(entity) {
-            let on_change = OnChange::new(
-                move |In((_widget_context, _, value)): In<(KayakWidgetContext, Entity, String)>,
-                      mut todo_list: ResMut<TodoList>| {
-                    todo_list.new_item = value;
-                },
-            );
+    let on_change = OnChange::new(
+        move |In((_widget_context, _, value)): In<(KayakWidgetContext, Entity, String)>,
+              mut todo_list: ResMut<TodoList>| {
+            todo_list.new_item = value;
+        },
+    );
 
-            if keyboard_input.just_pressed(KeyCode::Return) {
-                if props.has_focus {
-                    let value = todo_list.new_item.clone();
-                    todo_list.items.push(value);
-                    todo_list.new_item.clear();
+    let handle_click = OnEvent::new(
+        move |In((event_dispatcher_context, _, event, _)): In<(
+            EventDispatcherContext,
+            WidgetState,
+            Event,
+            Entity,
+        )>,
+              mut todo_list: ResMut<TodoList>| {
+            match event.event_type {
+                EventType::Click(..) => {
+                    if !todo_list.new_item.is_empty() {
+                        let value = todo_list.new_item.clone();
+                        todo_list.items.push(value);
+                        todo_list.new_item.clear();
+                    }
                 }
+                _ => {}
             }
+            (event_dispatcher_context, event)
+        },
+    );
 
-            let handle_click = OnEvent::new(
-                move |In((event_dispatcher_context, _, event, _)): In<(
-                    EventDispatcherContext,
-                    WidgetState,
-                    Event,
-                    Entity,
-                )>,
-                      mut todo_list: ResMut<TodoList>| {
-                    match event.event_type {
-                        EventType::Click(..) => {
-                            let value = todo_list.new_item.clone();
-                            todo_list.items.push(value);
-                            todo_list.new_item.clear();
-                        }
-                        _ => {}
-                    }
-                    (event_dispatcher_context, event)
-                },
-            );
-
-            let handle_focus = OnEvent::new(
-                move |In((event_dispatcher_context, _, event, _)): In<(
-                    EventDispatcherContext,
-                    WidgetState,
-                    Event,
-                    Entity,
-                )>,
-                      mut props_query: Query<&mut TodoInputProps>| {
-                    if let Ok(mut props) = props_query.get_mut(entity) {
-                        match event.event_type {
-                            EventType::Focus => {
-                                props.has_focus = true;
-                            }
-                            EventType::Blur => {
-                                props.has_focus = false;
-                            }
-                            _ => {}
-                        }
-                    }
-                    (event_dispatcher_context, event)
-                },
-            );
-
-            let parent_id = Some(entity);
-            rsx! {
-                <ElementBundle
-                    id={"element_bundle"}
-                    styles={KStyle {
-                        layout_type: StyleProp::Value(LayoutType::Row),
+    let parent_id = Some(entity);
+    rsx! {
+        <ElementBundle
+            id={"element_bundle"}
+            styles={KStyle {
+                layout_type: StyleProp::Value(LayoutType::Row),
+                height: StyleProp::Value(Units::Pixels(32.0)),
+                cursor: StyleProp::Value(KCursorIcon(CursorIcon::Text)),
+                ..Default::default()
+            }}
+        >
+            {
+                // You can spawn whatever you want on UI widgets this way! :)
+                commands.entity(element_bundle).insert(Focusable);
+            }
+            <TextBoxBundle
+                styles={KStyle {
+                    bottom: StyleProp::Value(Units::Stretch(1.0)),
+                    top: StyleProp::Value(Units::Stretch(1.0)),
+                    ..Default::default()
+                }}
+                text_box={TextBoxProps {
+                    value: todo_list.new_item.clone(),
+                    placeholder: Some("Add item here..".into()),
+                    ..Default::default()
+                }}
+                on_change={on_change}
+            />
+            <KButtonBundle
+                button={KButton {
+                    text: "+".into(),
+                    user_styles: KStyle {
+                        width: StyleProp::Value(Units::Pixels(32.0)),
                         height: StyleProp::Value(Units::Pixels(32.0)),
-                        cursor: StyleProp::Value(KCursorIcon(CursorIcon::Text)),
+                        left: StyleProp::Value(Units::Pixels(5.0)),
                         ..Default::default()
-                    }}
-                    on_event={handle_focus}
-                >
-                    {
-                        // You can spawn whatever you want on UI widgets this way! :)
-                        commands.entity(element_bundle).insert(Focusable);
                     }
-                    <TextBoxBundle
-                        styles={KStyle {
-                            bottom: StyleProp::Value(Units::Stretch(1.0)),
-                            top: StyleProp::Value(Units::Stretch(1.0)),
-                            ..Default::default()
-                        }}
-                        text_box={TextBoxProps {
-                            value: todo_list.new_item.clone(),
-                            placeholder: Some("Add item here..".into()),
-                            ..Default::default()
-                        }}
-                        on_change={on_change}
-                    />
-                    <KButtonBundle
-                        styles={KStyle {
-                            width: StyleProp::Value(Units::Pixels(32.0)),
-                            height: StyleProp::Value(Units::Pixels(32.0)),
-                            left: StyleProp::Value(Units::Pixels(5.0)),
-                            ..Default::default()
-                        }}
-                        on_event={handle_click}
-                    >
-                        <TextWidgetBundle
-                            text={TextProps {
-                                content: "+".into(),
-                                ..Default::default()
-                            }}
-                        />
-                    </KButtonBundle>
-                </ElementBundle>
-            }
-            return true;
-        }
+                }}
+                on_event={handle_click}
+            />
+        </ElementBundle>
     }
-    false
+    true
 }
diff --git a/examples/todo/items.rs b/examples/todo/items.rs
index 789589c..2956999 100644
--- a/examples/todo/items.rs
+++ b/examples/todo/items.rs
@@ -65,7 +65,7 @@ pub fn render_todo_items(
                     <ElementBundle
                         styles={KStyle {
                             render_command: StyleProp::Value(RenderCommand::Quad),
-                            background_color: StyleProp::Value(Color::rgba(0.0781, 0.0898, 0.101, 1.0)),
+                            background_color: Color::rgba(0.160, 0.172, 0.235, 1.0).into(),
                             border_radius: StyleProp::Value(Corner::all(3.0)),
                             bottom: StyleProp::Value(Units::Pixels(5.0)),
                             height: StyleProp::Value(Units::Auto),
@@ -77,29 +77,27 @@ pub fn render_todo_items(
                         <TextWidgetBundle
                             text={TextProps {
                                 content: content.clone(),
-                                ..Default::default()
-                            }}
-                            styles={KStyle {
-                                right: StyleProp::Value(Units::Stretch(1.0)),
-                                top: StyleProp::Value(Units::Stretch(1.0)),
-                                bottom: StyleProp::Value(Units::Stretch(1.0)),
+                                user_styles: KStyle {
+                                    right: StyleProp::Value(Units::Stretch(1.0)),
+                                    top: StyleProp::Value(Units::Stretch(1.0)),
+                                    bottom: StyleProp::Value(Units::Stretch(1.0)),
+                                    ..Default::default()
+                                },
                                 ..Default::default()
                             }}
                         />
                         <KButtonBundle
-                            styles={KStyle {
-                                width: StyleProp::Value(Units::Pixels(32.0)),
-                                height: StyleProp::Value(Units::Pixels(32.0)),
-                                left: StyleProp::Value(Units::Pixels(15.0)),
-                                ..Default::default()
+                            button={KButton {
+                                text: "X".into(),
+                                user_styles: KStyle {
+                                    width: StyleProp::Value(Units::Pixels(32.0)),
+                                    height: StyleProp::Value(Units::Pixels(32.0)),
+                                    left: StyleProp::Value(Units::Pixels(15.0)),
+                                    ..Default::default()
+                                }
                             }}
                             on_event={handle_click}
-                        >
-                            <TextWidgetBundle text={TextProps {
-                                content: "X".into(),
-                                ..Default::default()
-                            }} />
-                        </KButtonBundle>
+                        />
                     </ElementBundle>
                 }
             })}
diff --git a/examples/todo/todo.rs b/examples/todo/todo.rs
index 25481cf..3da0b59 100644
--- a/examples/todo/todo.rs
+++ b/examples/todo/todo.rs
@@ -48,6 +48,9 @@ fn startup(
 ) {
     font_mapping.set_default(asset_server.load("roboto.kayak_font"));
 
+    // Camera 2D forces a clear pass in bevy.
+    // We do this because our scene is not rendering anything else.
+    commands.spawn(Camera2dBundle::default());
     commands.spawn(UICameraBundle::new());
 
     let mut widget_context = KayakRootContext::new();
@@ -93,6 +96,7 @@ fn startup(
 
 fn main() {
     App::new()
+        .insert_resource(ClearColor(Color::rgb(0.0, 0.0, 0.0)))
         .add_plugins(DefaultPlugins)
         .add_plugin(KayakContextPlugin)
         .add_plugin(KayakWidgets)
diff --git a/kayak_ui_macros/src/widget.rs b/kayak_ui_macros/src/widget.rs
index 55f3ef4..01f0b33 100644
--- a/kayak_ui_macros/src/widget.rs
+++ b/kayak_ui_macros/src/widget.rs
@@ -73,6 +73,7 @@ impl Widget {
                     (
                         entity_id,
                         quote! {{
+                            let parent_org = parent_id;
                             #props
                             #widget_block
                         }},
@@ -197,14 +198,7 @@ impl Widget {
         }
 
         let props = quote! {
-            let entity = widget_context.get_child_at(parent_id);
-            let #entity_id = if let Some(entity) = entity {
-                // use bevy::prelude::DespawnRecursiveExt;
-                // commands.entity(entity).despawn_recursive();
-                commands.get_or_spawn(entity).id()
-            } else {
-                commands.spawn_empty().id()
-            };
+            let #entity_id = widget_context.spawn_widget(&mut commands, parent_org);
             let mut #prop_ident = #name {
                 #assigned_attrs
                 ..Default::default()
diff --git a/src/calculate_nodes.rs b/src/calculate_nodes.rs
index a053978..4b7ccc8 100644
--- a/src/calculate_nodes.rs
+++ b/src/calculate_nodes.rs
@@ -8,10 +8,10 @@ use morphorm::Hierarchy;
 use crate::{
     layout::{DataCache, Rect},
     node::{DirtyNode, Node, NodeBuilder, WrappedIndex},
-    prelude::{KStyle, KayakRootContext},
+    prelude::{KStyle, KayakRootContext, Tree},
     render::font::FontMapping,
     render_primitive::RenderPrimitive,
-    styles::{StyleProp, Units},
+    styles::{RenderCommand, StyleProp, Units},
 };
 
 pub fn calculate_nodes(
@@ -37,7 +37,11 @@ pub fn calculate_nodes(
     // if query.is_empty() {
     //     return;
     // }
-    if let Ok(tree) = context.tree.clone().read() {
+    if let Ok(tree) = context.tree.clone().try_read() {
+        if tree.root_node.is_none() {
+            return;
+        }
+
         for dirty_entity in query.iter() {
             let dirty_entity = WrappedIndex(dirty_entity);
             let styles = all_styles_query
@@ -48,10 +52,10 @@ pub fn calculate_nodes(
             // 2. Unresolved widget prop styles
             // 3. Unresolved default styles
             let parent_styles = if let Some(parent_widget_id) = tree.parents.get(&dirty_entity) {
-                if let Ok((_, parent_node)) = node_query.get(parent_widget_id.0) {
-                    parent_node.resolved_styles.clone()
-                } else if let Some(parent_node) = new_nodes.get(&parent_widget_id.0) {
+                if let Some(parent_node) = new_nodes.get(&parent_widget_id.0) {
                     parent_node.0.resolved_styles.clone()
+                } else if let Ok((_, parent_node)) = node_query.get(parent_widget_id.0) {
+                    parent_node.resolved_styles.clone()
                 } else if let Ok(parent_styles) = all_styles_query.get(parent_widget_id.0) {
                     parent_styles.clone()
                 } else {
@@ -61,27 +65,21 @@ pub fn calculate_nodes(
                 default_styles.clone()
             };
 
-            let parent_z = if let Some(parent_widget_id) = tree.parents.get(&dirty_entity) {
-                if let Ok((_, parent_node)) = node_query.get(parent_widget_id.0) {
-                    parent_node.z
-                } else if let Some(parent_node) = new_nodes.get(&parent_widget_id.0) {
-                    parent_node.0.z
-                } else {
-                    -1.0
-                }
-            } else {
-                -1.0
-            };
-
-            let current_z = {
-                if parent_z > -1.0 {
-                    parent_z + 1.0
-                } else {
-                    let z = context.current_z;
-                    context.current_z += 1.0;
-                    z
-                }
-            };
+            // let parent_z = if let Some(parent_widget_id) = tree.parents.get(&dirty_entity) {
+            //     if let Some(parent_node) = new_nodes.get(&parent_widget_id.0) {
+            //         parent_node.0.z
+            //     } else if let Ok((_, parent_node)) = node_query.get(parent_widget_id.0) {
+            //         parent_node.z
+            //     } else {
+            //         if let Ok(parent_styles) = all_styles_query.get(parent_widget_id.0) {
+            //             parent_styles.z_index.resolve() as f32
+            //         } else {
+            //             -1.0
+            //         }
+            //     }
+            // } else {
+            //     -1.0
+            // };
 
             let raw_styles = styles.clone();
             let mut styles = raw_styles.clone();
@@ -90,6 +88,22 @@ pub fn calculate_nodes(
             // Fill in all `inherited` values for any `inherit` property
             styles.inherit(&parent_styles);
 
+            // let mut current_z = {
+            //     if parent_z > -1.0 {
+            //         parent_z + 1.0
+            //     } else {
+            //         let z = context.current_z;
+            //         context.current_z += 1.0;
+            //         z
+            //     }
+            // };
+
+            let current_z = if matches!(styles.z_index, StyleProp::Value(..)) {
+                styles.z_index.resolve() as f32
+            } else {
+                -1.0
+            };
+
             let (primitive, needs_layout) = create_primitive(
                 &mut commands,
                 &context,
@@ -99,6 +113,11 @@ pub fn calculate_nodes(
                 // &node_query,
                 dirty_entity,
                 &mut styles,
+                node_query
+                    .get(dirty_entity.0)
+                    .and_then(|(_, node)| Ok(node.raw_styles.clone().unwrap_or_default()))
+                    .unwrap_or_default(),
+                &all_styles_query,
             );
 
             let children = tree.children.get(&dirty_entity).cloned().unwrap_or(vec![]);
@@ -127,6 +146,10 @@ pub fn calculate_nodes(
                     );
                 }
             }
+            node.old_z = node_query
+                .get(dirty_entity.0)
+                .and_then(|old_node| Ok(old_node.1.z))
+                .unwrap_or(0.0);
             node.z = current_z;
             new_nodes.insert(dirty_entity.0, (node, needs_layout));
         }
@@ -134,11 +157,13 @@ pub fn calculate_nodes(
         // let has_new_nodes = new_nodes.len() > 0;
 
         for (entity, (node, needs_layout)) in new_nodes.drain() {
-            commands.entity(entity).insert(node);
             if !needs_layout {
                 commands.entity(entity).remove::<DirtyNode>();
-                log::trace!("{:?} needs layout!", entity.id());
+            } else {
+                // log::info!("{:?} needs layout!", entity.id());
             }
+
+            commands.entity(entity).insert(node);
         }
     }
 }
@@ -162,7 +187,10 @@ pub fn calculate_layout(
             for (entity, change) in cache.geometry_changed.iter() {
                 if !change.is_empty() {
                     for child in tree.child_iter(*entity) {
-                        commands.entity(child.0).insert(DirtyNode);
+                        // log::info!("Layout changed for: {:?}", child.0.id());
+                        if let Some(mut entity_commands) = commands.get_entity(child.0) {
+                            entity_commands.insert(DirtyNode);
+                        }
                     }
                 }
             }
@@ -179,6 +207,8 @@ fn create_primitive(
     dirty: &Query<Entity, With<DirtyNode>>,
     id: WrappedIndex,
     styles: &mut KStyle,
+    prev_styles: KStyle,
+    all_styles_query: &Query<&KStyle>,
 ) -> (RenderPrimitive, bool) {
     let mut render_primitive = RenderPrimitive::from(&styles.clone());
     let mut needs_layout = true;
@@ -196,34 +226,64 @@ fn create_primitive(
             if let Some(font) = fonts.get(&font_handle) {
                 // self.bind(id, &asset);
                 if let Ok(node_tree) = context.tree.try_read() {
-                    if let Some(parent_id) = node_tree.get_parent(id) {
-                        if !dirty.contains(parent_id.0) {
-                            if let Some(parent_layout) = context.get_layout(&parent_id) {
-                                properties.max_size = (parent_layout.width, parent_layout.height);
-
-                                if properties.max_size.0 == 0.0 || properties.max_size.1 == 0.0 {
-                                    needs_layout = true;
-                                } else {
-                                    needs_layout = false;
-                                }
-
-                                if context.get_geometry_changed(&parent_id) {
-                                    needs_layout = true;
-                                }
-
-                                // --- Calculate Text Layout --- //
-                                *text_layout = font.measure(&content, *properties);
-                                let measurement = text_layout.size();
-
-                                // --- Apply Layout --- //
-                                if matches!(styles.width, StyleProp::Default) {
-                                    styles.width = StyleProp::Value(Units::Pixels(measurement.0));
-                                }
-                                if matches!(styles.height, StyleProp::Default) {
-                                    styles.height = StyleProp::Value(Units::Pixels(measurement.1));
-                                }
+                    if let Some(parent_id) =
+                        find_not_empty_parent(&node_tree, all_styles_query, &id)
+                    {
+                        if let Some(parent_layout) = context.get_layout(&parent_id) {
+                            let border_x = if let Ok(style) = all_styles_query.get(parent_id.0) {
+                                let border = style.border.resolve();
+                                border.left + border.right
+                            } else {
+                                0.0
+                            };
+                            let border_y = if let Ok(style) = all_styles_query.get(parent_id.0) {
+                                let border = style.border.resolve();
+                                border.top + border.bottom
+                            } else {
+                                0.0
+                            };
+                            properties.max_size = (
+                                parent_layout.width - border_x,
+                                parent_layout.height - border_y,
+                            );
+
+                            needs_layout = false;
+
+                            if properties.max_size.0 == 0.0 || properties.max_size.1 == 0.0 {
+                                needs_layout = true;
+                            }
+
+                            if context.get_geometry_changed(&parent_id) {
+                                needs_layout = true;
+                            }
+
+                            if dirty.contains(parent_id.0) {
+                                needs_layout = true;
+                            }
+
+                            // --- Calculate Text Layout --- //
+                            *text_layout = font.measure(&content, *properties);
+                            let measurement = text_layout.size();
+
+                            log::trace!(
+                                "Text Node: {}, has a measurement of: {:?}, it's parent takes up: {:?}",
+                                &content,
+                                measurement,
+                                properties.max_size
+                            );
+
+                            // --- Apply Layout --- //
+                            if matches!(styles.width, StyleProp::Default) {
+                                styles.width = StyleProp::Value(Units::Pixels(measurement.0));
+                            }
+                            if matches!(styles.height, StyleProp::Default) {
+                                styles.height = StyleProp::Value(Units::Pixels(measurement.1));
                             }
+                        } else {
+                            log::trace!("no layout for: {:?}", parent_id.0.id());
                         }
+                    } else {
+                        log::trace!("No parent found for: {:?}", id.0.id());
                     }
                 }
             }
@@ -237,9 +297,38 @@ fn create_primitive(
         commands.entity(id.0).insert(DirtyNode);
     }
 
+    // If we have data from the previous frame no need to do anything here!
+    if matches!(prev_styles.width, StyleProp::Value(..)) {
+        styles.width = prev_styles.width;
+        styles.height = prev_styles.height;
+        needs_layout = false;
+    }
+
     (render_primitive, needs_layout)
 }
 
+pub fn find_not_empty_parent(
+    tree: &Tree,
+    all_styles_query: &Query<&KStyle>,
+    node: &WrappedIndex,
+) -> Option<WrappedIndex> {
+    if let Some(parent) = tree.parent(*node) {
+        if let Ok(styles) = all_styles_query.get(parent.0) {
+            if matches!(styles.render_command.resolve(), RenderCommand::Empty)
+                || matches!(styles.render_command.resolve(), RenderCommand::Layout)
+            {
+                find_not_empty_parent(tree, all_styles_query, &parent)
+            } else {
+                Some(parent)
+            }
+        } else {
+            find_not_empty_parent(tree, all_styles_query, &parent)
+        }
+    } else {
+        None
+    }
+}
+
 // pub fn build_nodes_tree(context: &mut Context, tree: &Tree, node_query: &Query<(Entity, &Node)>) {
 //     if tree.root_node.is_none() {
 //         return;
diff --git a/src/children.rs b/src/children.rs
index 810be98..10546b2 100644
--- a/src/children.rs
+++ b/src/children.rs
@@ -30,6 +30,14 @@ impl KChildren {
         }
     }
 
+    pub fn iter(&self) -> std::slice::Iter<Entity> {
+        self.inner.iter()
+    }
+
+    pub fn len(&self) -> usize {
+        self.inner.len()
+    }
+
     pub fn despawn(&mut self, commands: &mut Commands) {
         for child in self.inner.drain(..) {
             commands.entity(child).despawn_recursive();
diff --git a/src/clone_component.rs b/src/clone_component.rs
index 5cfb47b..1514109 100644
--- a/src/clone_component.rs
+++ b/src/clone_component.rs
@@ -20,7 +20,9 @@ pub(crate) fn clone_system<T: Clone + Component>(
 ) {
     if let Some(v) = world.entity(reference).get::<T>() {
         let v = v.clone();
-        world.entity_mut(target).insert(v);
+        if let Some(mut entity) = world.get_entity_mut(target) {
+            entity.insert(v);
+        }
     }
 }
 
diff --git a/src/context.rs b/src/context.rs
index 85c4c85..777cd36 100644
--- a/src/context.rs
+++ b/src/context.rs
@@ -81,7 +81,8 @@ pub struct KayakRootContext {
     pub(crate) clone_systems: Arc<RwLock<EntityCloneSystems>>,
     pub(crate) cloned_widget_entities: Arc<RwLock<HashMap<Entity, Entity>>>,
     pub(crate) widget_state: WidgetState,
-    index: Arc<RwLock<HashMap<Entity, usize>>>,
+    pub(crate) order_tree: Arc<RwLock<Tree>>,
+    pub(crate) index: Arc<RwLock<HashMap<Entity, usize>>>,
 }
 
 impl KayakRootContext {
@@ -99,6 +100,7 @@ impl KayakRootContext {
             cloned_widget_entities: Default::default(),
             widget_state: Default::default(),
             index: Default::default(),
+            order_tree: Default::default(),
         }
     }
 
@@ -188,36 +190,58 @@ impl KayakRootContext {
         }
     }
 
-    /// Returns a child entity or none if it does not exist.
+    /// Returns a new/existing widget entity.
     /// Because a re-render can potentially spawn new entities it's advised to use this
     /// to avoid creating a new entity.
     ///
     /// Usage:
+    /// ```rust
     /// fn setup() {
     ///     let mut widget_context = WidgetContext::new();
     ///     // Root tree node, no parent node.
-    ///     let root_entity = if let Some(root_entity) =  widget_context.get_child_at(None) {\
-    ///         root_entity
-    ///     } else {
-    ///         // Spawn if it does not exist in the tree!
-    ///         commands.spawn_empty().id()
-    ///     };
+    ///     let root_entity =  widget_context.spawn_widget(&mut commands, None);
     ///     commands.entity(root_entity).insert(KayakAppBundle::default());
     ///     widget_context.add_widget(None, root_entity);
     /// }
-    ///
-    ///
-    pub fn get_child_at(&self, parent_entity: Option<Entity>) -> Option<Entity> {
-        if let Ok(tree) = self.tree.try_read() {
-            if let Some(entity) = parent_entity {
-                let children = tree.child_iter(WrappedIndex(entity)).collect::<Vec<_>>();
-                return children
-                    .get(self.get_and_add_index(entity))
-                    .cloned()
-                    .map(|index| index.0);
+    ///```
+    pub fn spawn_widget(&self, commands: &mut Commands, parent_id: Option<Entity>) -> Entity {
+        let mut entity = None;
+        if let Some(parent_entity) = parent_id {
+            let children = self.get_children_ordered(parent_entity);
+            let child = children.get(self.get_and_add_index(parent_entity)).cloned();
+            if let Some(child) = child {
+                log::trace!("Reusing widget entity {:?}!", child.id());
+                entity = Some(commands.get_or_spawn(child).id());
             }
         }
-        None
+
+        // If we have no entity spawn it!
+        if entity.is_none() {
+            entity = Some(commands.spawn_empty().id());
+            log::trace!(
+                "Spawning new widget with entity {:?}!",
+                entity.unwrap().id()
+            );
+            // We need to add it to the ordered tree
+            if let Ok(mut tree) = self.order_tree.try_write() {
+                tree.add(
+                    WrappedIndex(entity.unwrap()),
+                    parent_id.and_then(|parent| Some(WrappedIndex(parent))),
+                )
+            }
+        }
+        entity.unwrap()
+    }
+
+    fn get_children_ordered(&self, entity: Entity) -> Vec<Entity> {
+        let mut children = vec![];
+        if let Ok(tree) = self.order_tree.read() {
+            let iterator = tree.child_iter(WrappedIndex(entity));
+
+            children = iterator.map(|index| index.0).collect::<Vec<_>>();
+        }
+
+        children
     }
 
     fn get_and_add_index(&self, parent: Entity) -> usize {
@@ -256,98 +280,139 @@ impl KayakRootContext {
 
         // self.node_tree.dump();
 
-        recurse_node_tree_to_build_primitives(
-            &*node_tree,
-            &self.layout_cache,
-            nodes,
-            widget_names,
-            node_tree.root_node.unwrap(),
-            0.0,
-            RenderPrimitive::Empty,
-        )
+        let render_primitives = if let Ok(mut layout_cache) = self.layout_cache.try_write() {
+            recurse_node_tree_to_build_primitives(
+                &*node_tree,
+                &mut layout_cache,
+                nodes,
+                widget_names,
+                node_tree.root_node.unwrap(),
+                0.0,
+                RenderPrimitive::Empty,
+            )
+        } else {
+            vec![]
+        };
+        // render_primitives.sort_by(|a, b| a.0.partial_cmp(&b.0).unwrap());
+
+        // render_primitives.iter().enumerate().for_each(|(index, p)| {
+        //     log::info!("Name: {:?}, Z: {:?}", p.to_string(), index);
+        // });
+
+        // dbg!(&render_primitives
+        //     .iter()
+        //     .map(|a| (a.1.to_string(), a.0))
+        //     .collect::<Vec<_>>());
+
+        render_primitives.into_iter().collect()
     }
 }
 
 fn recurse_node_tree_to_build_primitives(
     node_tree: &Tree,
-    layout_cache: &Arc<RwLock<LayoutCache>>,
+    layout_cache: &mut LayoutCache,
     nodes: &Query<&crate::node::Node>,
     widget_names: &Query<&WidgetName>,
     current_node: WrappedIndex,
-    mut main_z_index: f32,
+    main_z_index: f32,
     mut prev_clip: RenderPrimitive,
 ) -> Vec<RenderPrimitive> {
     let mut render_primitives = Vec::new();
     if let Ok(node) = nodes.get(current_node.0) {
-        if let Ok(cache) = layout_cache.try_read() {
-            if let Some(layout) = cache.rect.get(&current_node) {
-                let mut render_primitive = node.primitive.clone();
-                let mut layout = *layout;
-                let new_z_index = if matches!(render_primitive, RenderPrimitive::Clip { .. }) {
-                    main_z_index - 0.1
-                } else {
-                    main_z_index
-                };
-                layout.z_index = new_z_index;
-                render_primitive.set_layout(layout);
-
-                if matches!(render_primitive, RenderPrimitive::Empty) {
-                    log::trace!(
-                        "No render primitive for node: {}-{}",
-                        widget_names.get(current_node.0).unwrap().0,
-                        current_node.0.id(),
-                    );
-                }
+        let mut render_primitive = node.primitive.clone();
+        let mut new_z_index = if matches!(render_primitive, RenderPrimitive::Clip { .. }) {
+            main_z_index
+        } else {
+            main_z_index
+        };
+        let _layout = if let Some(layout) = layout_cache.rect.get_mut(&current_node) {
+            // log::info!(
+            //     "z_index is {} and node.z is {} for: {}-{}",
+            //     new_z_index,
+            //     node.z,
+            //     widget_names.get(current_node.0).unwrap().0,
+            //     current_node.0.id(),
+            // );
+
+            new_z_index += if node.z <= 0.0 { 0.0 } else { node.z };
+
+            layout.z_index = new_z_index;
+            render_primitive.set_layout(*layout);
+            *layout
+        } else {
+            log::warn!(
+                "No layout for node: {}-{}",
+                widget_names.get(current_node.0).unwrap().0,
+                current_node.0.id()
+            );
+            Rect::default()
+        };
 
-                render_primitives.push(render_primitive.clone());
+        match &render_primitive {
+            RenderPrimitive::Text { content, .. } => {
+                log::trace!(
+                    "Text node: {}-{} is equal to: {}",
+                    widget_names.get(current_node.0).unwrap().0,
+                    current_node.0.id(),
+                    content,
+                );
+            }
+            RenderPrimitive::Empty => {
+                log::trace!(
+                    "Empty node: {}-{}",
+                    widget_names.get(current_node.0).unwrap().0,
+                    current_node.0.id(),
+                );
+            }
+            _ => {}
+        }
 
-                let new_prev_clip = if matches!(render_primitive, RenderPrimitive::Clip { .. }) {
-                    render_primitive.clone()
-                } else {
-                    prev_clip
-                };
+        render_primitives.push(render_primitive.clone());
 
-                prev_clip = new_prev_clip.clone();
-                if node_tree.children.contains_key(&current_node) {
-                    for child in node_tree.children.get(&current_node).unwrap() {
-                        main_z_index += 1.0;
-                        render_primitives.extend(recurse_node_tree_to_build_primitives(
-                            node_tree,
-                            layout_cache,
-                            nodes,
-                            widget_names,
-                            *child,
-                            main_z_index,
-                            new_prev_clip.clone(),
-                        ));
-
-                        main_z_index = layout.z_index;
-                        // Between each child node we need to reset the clip.
-                        if matches!(prev_clip, RenderPrimitive::Clip { .. }) {
-                            // main_z_index = new_z_index;
-                            match &mut prev_clip {
-                                RenderPrimitive::Clip { layout } => {
-                                    layout.z_index = main_z_index + 0.1;
-                                }
-                                _ => {}
-                            };
-                            render_primitives.push(prev_clip.clone());
-                        }
-                    }
-                } else {
-                    log::trace!(
-                        "No children for node: {}-{}",
-                        widget_names.get(current_node.0).unwrap().0,
-                        current_node.0.id()
-                    );
-                }
-            } else {
-                log::warn!(
-                    "No layout for node: {}-{}",
-                    widget_names.get(current_node.0).unwrap().0,
-                    current_node.0.id()
+        let new_prev_clip = if matches!(render_primitive, RenderPrimitive::Clip { .. }) {
+            render_primitive.clone()
+        } else {
+            prev_clip
+        };
+
+        prev_clip = new_prev_clip.clone();
+        if node_tree.children.contains_key(&current_node) {
+            let z = 1.0f32;
+            let mut children_primitives = Vec::new();
+            for child in node_tree.children.get(&current_node).unwrap() {
+                // main_z_index += 1.0;
+                let mut children_p = recurse_node_tree_to_build_primitives(
+                    node_tree,
+                    layout_cache,
+                    nodes,
+                    widget_names,
+                    *child,
+                    main_z_index + if node.z < 0.0 { 0.0 } else { node.z } + z,
+                    new_prev_clip.clone(),
                 );
+
+                // Between each child node we need to reset the clip.
+                if matches!(prev_clip, RenderPrimitive::Clip { .. }) {
+                    children_p.push(prev_clip.clone());
+                }
+
+                if let Ok(node) = nodes.get(child.0) {
+                    let zz = if node.z < 0.0 { z } else { z + node.z };
+                    children_primitives.push((zz, children_p));
+                }
             }
+
+            // Sort and add
+            children_primitives.sort_by(|a, b| a.0.partial_cmp(&b.0).unwrap());
+            for cp in children_primitives.drain(..) {
+                render_primitives.extend(cp.1);
+            }
+        } else {
+            log::trace!(
+                "No children for node: {}-{}",
+                widget_names.get(current_node.0).unwrap().0,
+                current_node.0.id()
+            );
         }
     } else {
         log::error!(
@@ -365,7 +430,10 @@ fn recurse_node_tree_to_build_primitives(
                 )
                 .and_then(|v| Ok(v.0.clone()))
                 .unwrap_or("None".into()),
-            widget_names.get(current_node.0).unwrap().0,
+            widget_names
+                .get(current_node.0)
+                .and_then(|v| Ok(v.0.clone()))
+                .unwrap_or("None".into()),
             current_node.0.id()
         );
     }
@@ -411,6 +479,8 @@ fn update_widgets_sys(world: &mut World) {
         &context.cloned_widget_entities,
         &context.widget_state,
         &mut new_ticks,
+        &context.order_tree,
+        &context.index,
     );
 
     if let Some(old_focus) = old_focus {
@@ -435,8 +505,18 @@ fn update_widgets_sys(world: &mut World) {
         // system.apply_buffers(world);
     }
 
-    // if let Ok(tree) = context.tree.try_read() {
-    // tree.dump();
+    // Clear out indices
+    if let Ok(mut indices) = context.index.try_write() {
+        // for (entity, value) in indices.iter_mut() {
+        //     if tree.root_node.unwrap().0.id() != entity.id() {
+        //         *value = 0;
+        //     }
+        // }
+        indices.clear();
+    }
+
+    // if let Ok(order_tree) = context.order_tree.try_read() {
+    //     order_tree.dump();
     // }
 
     world.insert_resource(context);
@@ -454,6 +534,8 @@ fn update_widgets(
     cloned_widget_entities: &Arc<RwLock<HashMap<Entity, Entity>>>,
     widget_state: &WidgetState,
     new_ticks: &mut HashMap<String, u32>,
+    order_tree: &Arc<RwLock<Tree>>,
+    index: &Arc<RwLock<HashMap<Entity, usize>>>,
 ) {
     for entity in widgets.iter() {
         if let Some(entity_ref) = world.get_entity(entity.0) {
@@ -463,9 +545,12 @@ fn update_widgets(
                     context_entities.clone(),
                     layout_cache.clone(),
                     widget_state.clone(),
+                    order_tree.clone(),
+                    index.clone(),
                 );
                 widget_context.copy_from_point(&tree, *entity);
                 let children_before = widget_context.get_children(entity.0);
+                let widget_name = widget_type.0.clone();
                 let (widget_context, should_update_children) = update_widget(
                     systems,
                     tree,
@@ -482,27 +567,82 @@ fn update_widgets(
 
                 if should_update_children {
                     if let Ok(mut tree) = tree.write() {
+                        // let mut had_removal = false;
                         let diff = tree.diff_children(&widget_context, *entity, UPDATE_DEPTH);
                         for (_index, child, _parent, changes) in diff.changes.iter() {
-                            for change in changes.iter() {
-                                if matches!(change, Change::Inserted) {
-                                    if let Ok(mut cache) = layout_cache.try_write() {
-                                        cache.add(*child);
+                            if changes
+                                .iter()
+                                .any(|change| matches!(change, Change::Inserted))
+                            {
+                                if let Ok(mut cache) = layout_cache.try_write() {
+                                    cache.add(*child);
+                                }
+                            }
+
+                            if changes
+                                .iter()
+                                .any(|change| matches!(change, Change::Deleted))
+                            {
+                                // Children of this node need to be despawned.
+                                let mut despawn_list = Vec::default();
+                                for child in tree.down_iter_at(*child, true) {
+                                    let children = if let Some(parent) = tree.get_parent(child) {
+                                        world.entity(parent.0).get::<KChildren>()
+                                    } else {
+                                        None
+                                    };
+
+                                    if let Some(children) = children {
+                                        if !children.iter().any(|c| *c == child.0) {
+                                            despawn_list.push(child.0);
+                                        }
+                                    } else {
+                                        despawn_list.push(child.0);
+                                    }
+                                    if let Ok(mut order_tree) = order_tree.try_write() {
+                                        // had_removal = true;
+                                        log::trace!(
+                                            "Removing entity! {:?} inside of: {}-{:?}",
+                                            child.0.id(),
+                                            widget_name,
+                                            entity.0.id()
+                                        );
+                                        order_tree.remove(child);
+                                    }
+                                }
+                                for entity in despawn_list.drain(..) {
+                                    if let Some(entity_mut) = world.get_entity_mut(entity) {
+                                        entity_mut.despawn();
                                     }
                                 }
                             }
                         }
-                        // dbg!("Dumping widget tree:");
-                        // widget_context.dump_at(*entity);
-                        // dbg!(entity.0, &diff);
+
+                        // if had_removal {
+                        //     tree.dump();
+                        //     dbg!(&diff);
+                        // }
 
                         tree.merge(&widget_context, *entity, diff, UPDATE_DEPTH);
-                        // dbg!(tree.dump_at(*entity));
+
+                        // if had_removal {
+                        //     tree.dump();
+                        // }
+
+                        for child in widget_context.child_iter(*entity) {
+                            if let Some(mut entity_commands) = world.get_entity_mut(child.0) {
+                                entity_commands.insert(DirtyNode);
+                            }
+                        }
                     }
                 }
 
                 // if should_update_children {
-                let children = widget_context.child_iter(*entity).collect::<Vec<_>>();
+                let children = if let Ok(tree) = tree.read() {
+                    tree.child_iter(*entity).collect::<Vec<_>>()
+                } else {
+                    vec![]
+                };
                 update_widgets(
                     world,
                     tree,
@@ -515,6 +655,8 @@ fn update_widgets(
                     cloned_widget_entities,
                     widget_state,
                     new_ticks,
+                    order_tree,
+                    index,
                 );
                 // }
             }
@@ -550,8 +692,16 @@ fn update_widget(
     let should_rerender = {
         let old_props_entity =
             if let Ok(mut cloned_widget_entities) = cloned_widget_entities.try_write() {
-                if let Some(entity) = cloned_widget_entities.get(&entity.0) {
-                    *entity
+                if let Some(entity) = cloned_widget_entities.get(&entity.0).cloned() {
+                    if let Some(possible_entity) = world.get_entity(entity) {
+                        let target = possible_entity.id();
+                        cloned_widget_entities.insert(entity, target);
+                        target
+                    } else {
+                        let target = world.spawn_empty().insert(PreviousWidget).id();
+                        cloned_widget_entities.insert(entity, target);
+                        target
+                    }
                 } else {
                     let target = world.spawn_empty().insert(PreviousWidget).id();
                     cloned_widget_entities.insert(entity.0, target);
@@ -571,16 +721,23 @@ fn update_widget(
 
         if should_rerender {
             if let Ok(cloned_widget_entities) = cloned_widget_entities.try_read() {
-                let target_entity = cloned_widget_entities.get(&entity.0).unwrap();
-                if let Ok(clone_systems) = clone_systems.try_read() {
-                    for s in clone_systems.0.iter() {
-                        s.0(world, *target_entity, entity.0);
-                        s.1(world, *target_entity, entity.0, &widget_state);
-                        if let Some(styles) = world.entity(entity.0).get::<KStyle>().cloned() {
-                            world.entity_mut(*target_entity).insert(styles);
-                        }
-                        if let Some(children) = world.entity(entity.0).get::<KChildren>().cloned() {
-                            world.entity_mut(*target_entity).insert(children);
+                if let Some(target_entity) = cloned_widget_entities.get(&entity.0) {
+                    if let Ok(clone_systems) = clone_systems.try_read() {
+                        for s in clone_systems.0.iter() {
+                            s.0(world, *target_entity, entity.0);
+                            s.1(world, *target_entity, entity.0, &widget_state);
+                            if let Some(styles) = world.entity(entity.0).get::<KStyle>().cloned() {
+                                if let Some(mut entity) = world.get_entity_mut(*target_entity) {
+                                    entity.insert(styles);
+                                }
+                            }
+                            if let Some(children) =
+                                world.entity(entity.0).get::<KChildren>().cloned()
+                            {
+                                if let Some(mut entity) = world.get_entity_mut(*target_entity) {
+                                    entity.insert(children);
+                                }
+                            }
                         }
                     }
                 }
@@ -600,8 +757,31 @@ fn update_widget(
     // }
 
     let should_update_children;
-    log::trace!("Re-rendering: {:?} {:?}", &widget_type, entity.0.id());
+    if let Ok(tree) = tree.try_read() {
+        log::trace!(
+            "Re-rendering: {:?} {:?}, parent: {:?}",
+            &widget_type,
+            entity.0.id(),
+            tree.parent(entity)
+                .unwrap_or(WrappedIndex(Entity::from_raw(99999)))
+                .0
+                .id()
+        );
+    }
     {
+        // Before rendering widget we need to advance the indices correctly..
+        if let Some(children) = world.get::<KChildren>(entity.0) {
+            let child_count = children.len();
+            if let Ok(mut indices) = widget_context.index.try_write() {
+                indices.insert(entity.0, 0);
+                log::trace!(
+                    "Advancing children for: {:?} by: {:?}",
+                    entity.0.id(),
+                    child_count
+                );
+            }
+        }
+
         // Remove children from previous render.
         widget_context.remove_children(previous_children);
         let widget_render_system = &mut systems.get_mut(&widget_type).unwrap().1;
@@ -612,6 +792,10 @@ fn update_widget(
         new_ticks.insert(widget_type.clone(), new_tick);
         widget_render_system.set_last_change_tick(old_tick);
         widget_render_system.apply_buffers(world);
+
+        if let Ok(mut indices) = widget_context.index.try_write() {
+            indices.insert(entity.0, 0);
+        }
     }
     let widget_context = widget_context.take();
     let mut command_queue = CommandQueue::default();
@@ -631,34 +815,36 @@ fn update_widget(
     // Mark node as needing a recalculation of rendering/layout.
     commands.entity(entity.0).insert(DirtyNode);
 
-    for child in widget_context.child_iter(entity) {
-        commands.entity(child.0).insert(DirtyNode);
-    }
-
-    if let Ok(cloned_widget_entities) = cloned_widget_entities.try_read() {
-        let target_entity = cloned_widget_entities.get(&entity.0).unwrap();
-        if let Some(styles) = world.entity(entity.0).get::<KStyle>().cloned() {
-            commands.entity(*target_entity).insert(styles);
-        }
-        if let Some(children) = world.entity(entity.0).get::<KChildren>().cloned() {
-            commands.entity(*target_entity).insert(children);
+    for (_index, changed_entity, _parent, changes) in diff.changes.iter() {
+        if changes.iter().any(|change| *change == Change::Deleted) {
+            // commands.entity(changed_entity.0).despawn();
+            // commands.entity(changed_entity.0).remove::<DirtyNode>();
+            // commands.entity(changed_entity.0).despawn_recursive();
         }
-    }
-
-    if should_update_children {
-        for (_, changed_entity, _, changes) in diff.changes.iter() {
-            if changes.iter().any(|change| *change == Change::Deleted) {
-                // commands.entity(changed_entity.0).despawn();
-                commands.entity(changed_entity.0).remove::<DirtyNode>();
-            }
-            if changes.iter().any(|change| *change == Change::Inserted) {
-                commands.entity(changed_entity.0).insert(Mounted);
+        if changes.iter().any(|change| *change == Change::Inserted) {
+            if let Some(mut entity_commands) = commands.get_entity(changed_entity.0) {
+                entity_commands.insert(Mounted);
             }
         }
     }
+
     command_queue.apply(world);
 
     if should_update_children {
+        if let Ok(cloned_widget_entities) = cloned_widget_entities.try_read() {
+            if let Some(target_entity) = cloned_widget_entities.get(&entity.0) {
+                if let Some(styles) = world.entity(entity.0).get::<KStyle>().cloned() {
+                    if let Some(mut entity) = world.get_entity_mut(*target_entity) {
+                        entity.insert(styles);
+                    }
+                }
+                if let Some(children) = world.entity(entity.0).get::<KChildren>().cloned() {
+                    if let Some(mut entity) = world.get_entity_mut(*target_entity) {
+                        entity.insert(children);
+                    }
+                }
+            }
+        }
         for (_, child_entity, _, changes) in diff.changes.iter() {
             // Clone to entity.
             if changes.iter().any(|change| *change == Change::Deleted) {
@@ -729,7 +915,7 @@ fn calculate_ui(world: &mut World) {
     let mut layout_system = IntoSystem::into_system(calculate_layout);
     layout_system.initialize(world);
 
-    for _ in 0..5 {
+    for _ in 0..3 {
         node_system.run((), world);
         node_system.apply_buffers(world);
 
@@ -771,7 +957,7 @@ fn calculate_ui(world: &mut World) {
 
 /// A simple component that stores the type name of a widget
 /// This is used by Kayak in order to find out which systems to run.
-#[derive(Component, Debug)]
+#[derive(Component, Debug, Clone, PartialEq)]
 pub struct WidgetName(pub String);
 
 impl From<String> for WidgetName {
diff --git a/src/event.rs b/src/event.rs
index 7442a23..773a89f 100644
--- a/src/event.rs
+++ b/src/event.rs
@@ -21,6 +21,8 @@ pub struct Event {
     pub(crate) default_prevented: bool,
     /// OnChange systems to call afterwards
     pub(crate) on_change_systems: Vec<OnChange>,
+
+    pub testing_z_index: f32,
 }
 
 impl Default for Event {
@@ -32,6 +34,7 @@ impl Default for Event {
             should_propagate: true,
             default_prevented: false,
             on_change_systems: Vec::new(),
+            testing_z_index: 0.0,
         }
     }
 }
@@ -49,6 +52,7 @@ impl Event {
             should_propagate: event_type.propagates(),
             default_prevented: false,
             on_change_systems: Vec::new(),
+            testing_z_index: 0.0,
         }
     }
 
@@ -59,7 +63,17 @@ impl Event {
 
     /// If called, prevents this event from propagating up the hierarchy
     pub fn stop_propagation(&mut self) {
-        self.should_propagate = false;
+        if matches!(
+            self.event_type,
+            EventType::Click(..)
+                | EventType::MouseIn(..)
+                | EventType::MouseDown(..)
+                | EventType::Scroll(..)
+                | EventType::Focus
+                | EventType::Hover(..)
+        ) {
+            self.should_propagate = false;
+        }
     }
 
     /// Returns whether this event's default action has been prevented or not
diff --git a/src/event_dispatcher.rs b/src/event_dispatcher.rs
index 53a6340..3c80a66 100644
--- a/src/event_dispatcher.rs
+++ b/src/event_dispatcher.rs
@@ -11,7 +11,7 @@ use crate::{
     input_event::{InputEvent, InputEventCategory},
     keyboard_event::{KeyboardEvent, KeyboardModifiers},
     layout::Rect,
-    node::WrappedIndex,
+    node::{Node, WrappedIndex},
     on_event::OnEvent,
     prelude::KayakWidgetContext,
     styles::{KStyle, RenderCommand},
@@ -243,6 +243,8 @@ impl EventDispatcher {
                             context.context_entities.clone(),
                             context.layout_cache.clone(),
                             context.widget_state.clone(),
+                            context.order_tree.clone(),
+                            context.index.clone(),
                         );
                         node_event.run_on_change(world, widget_context);
                     }
@@ -382,30 +384,32 @@ impl EventDispatcher {
                     let (current, depth) = stack.pop().unwrap();
                     let mut enter_children = true;
 
-                    for input_event in input_events {
-                        // --- Process Event --- //
-                        if matches!(input_event.category(), InputEventCategory::Mouse) {
-                            // A widget's PointerEvents style will determine how it and its children are processed
-                            let pointer_events = Self::resolve_pointer_events(current, world);
-
-                            match pointer_events {
-                                PointerEvents::All | PointerEvents::SelfOnly => {
-                                    let events = self.process_pointer_events(
-                                        input_event,
-                                        (current, depth),
-                                        &mut states,
-                                        world,
-                                        context,
-                                        false,
-                                    );
-                                    event_stream.extend(events);
-
-                                    if matches!(pointer_events, PointerEvents::SelfOnly) {
-                                        enter_children = false;
+                    if world.entity(current.0).contains::<OnEvent>() {
+                        for input_event in input_events {
+                            // --- Process Event --- //
+                            if matches!(input_event.category(), InputEventCategory::Mouse) {
+                                // A widget's PointerEvents style will determine how it and its children are processed
+                                let pointer_events = Self::resolve_pointer_events(current, world);
+
+                                match pointer_events {
+                                    PointerEvents::All | PointerEvents::SelfOnly => {
+                                        let events = self.process_pointer_events(
+                                            input_event,
+                                            (current, depth),
+                                            &mut states,
+                                            world,
+                                            context,
+                                            false,
+                                        );
+                                        event_stream.extend(events);
+
+                                        if matches!(pointer_events, PointerEvents::SelfOnly) {
+                                            enter_children = false;
+                                        }
                                     }
+                                    PointerEvents::None => enter_children = false,
+                                    PointerEvents::ChildrenOnly => {}
                                 }
-                                PointerEvents::None => enter_children = false,
-                                PointerEvents::ChildrenOnly => {}
                             }
                         }
                     }
@@ -413,9 +417,17 @@ impl EventDispatcher {
                     // --- Push Children to Stack --- //
                     if enter_children {
                         if let Some(children) = node_tree.children.get(&current) {
+                            let mut stack_children = Vec::new();
                             for child in children {
-                                stack.push((*child, depth + 1));
+                                let child_z = world
+                                    .entity(child.0)
+                                    .get::<Node>()
+                                    .and_then(|node| Some(node.z))
+                                    .unwrap_or(0.0);
+                                stack_children.push((child_z, (*child, depth + 1)));
                             }
+                            stack_children.sort_by(|a, b| a.0.partial_cmp(&b.0).unwrap());
+                            stack.extend(stack_children.iter().map(|c| c.1));
                         }
                     }
                 }
@@ -511,6 +523,9 @@ impl EventDispatcher {
         let mut event_stream = Vec::<Event>::new();
         let (node, depth) = tree_node;
 
+        // let widget_name = world.entity(node.0).get::<WidgetName>();
+        // dbg!(widget_name);
+
         match input_event {
             InputEvent::MouseMoved(point) => {
                 if let Some(layout) = context.get_layout(&node) {
@@ -519,10 +534,23 @@ impl EventDispatcher {
                     let is_contained = layout.contains(point);
                     if !ignore_layout && was_contained != is_contained {
                         if was_contained {
+                            // Mouse out should fire even when
                             event_stream
                                 .push(Event::new(node.0, EventType::MouseOut(cursor_event)));
+                            // Self::update_state(
+                            //     states,
+                            //     (node, depth),
+                            //     &layout,
+                            //     EventType::MouseOut(cursor_event),
+                            // );
                         } else {
-                            event_stream.push(Event::new(node.0, EventType::MouseIn(cursor_event)));
+                            // event_stream.push(Event::new(node.0, EventType::MouseIn(cursor_event)));
+                            Self::update_state(
+                                states,
+                                (node, depth),
+                                &layout,
+                                EventType::MouseIn(cursor_event),
+                            );
                         }
                     }
                     if self.contains_cursor.is_none() || !self.contains_cursor.unwrap_or_default() {
@@ -557,7 +585,13 @@ impl EventDispatcher {
                 if let Some(layout) = context.get_layout(&node) {
                     if ignore_layout || layout.contains(&self.current_mouse_position) {
                         let cursor_event = self.get_cursor_event(self.current_mouse_position);
-                        event_stream.push(Event::new(node.0, EventType::MouseDown(cursor_event)));
+                        // event_stream.push(Event::new(node.0, EventType::MouseDown(cursor_event)));
+                        Self::update_state(
+                            states,
+                            (node, depth),
+                            &layout,
+                            EventType::MouseDown(cursor_event),
+                        );
 
                         if world.get::<Focusable>(node.0).is_some() {
                             Self::update_state(states, (node, depth), &layout, EventType::Focus);
@@ -578,7 +612,13 @@ impl EventDispatcher {
                 if let Some(layout) = context.get_layout(&node) {
                     if ignore_layout || layout.contains(&self.current_mouse_position) {
                         let cursor_event = self.get_cursor_event(self.current_mouse_position);
-                        event_stream.push(Event::new(node.0, EventType::MouseUp(cursor_event)));
+                        // event_stream.push(Event::new(node.0, EventType::MouseUp(cursor_event)));
+                        Self::update_state(
+                            states,
+                            (node, depth),
+                            &layout,
+                            EventType::MouseUp(cursor_event),
+                        );
                         // self.last_clicked.set(node);
 
                         if Self::contains_event(
@@ -701,11 +741,13 @@ impl EventDispatcher {
 
         let (node, depth) = tree_node;
         // Node is at or above best depth and is at or above best z-level
+
         let mut should_update = depth >= state.best_depth && layout.z_index >= state.best_z_index;
         // OR node is above best z-level
-        should_update |= layout.z_index > state.best_z_index;
+        should_update |= layout.z_index >= state.best_z_index;
 
         if should_update {
+            // dbg!(node.0.id(), layout.z_index);
             state.best_match = Some(node);
             state.best_z_index = layout.z_index;
             state.best_depth = depth;
diff --git a/src/node.rs b/src/node.rs
index 0fb1acc..820e79d 100644
--- a/src/node.rs
+++ b/src/node.rs
@@ -23,6 +23,7 @@ pub struct Node {
     pub primitive: RenderPrimitive,
     /// The z-index of this node, used for controlling layering
     pub z: f32,
+    pub old_z: f32,
 }
 
 impl Default for Node {
@@ -34,6 +35,7 @@ impl Default for Node {
             raw_styles: Default::default(),
             primitive: RenderPrimitive::Empty,
             z: Default::default(),
+            old_z: Default::default(),
         }
     }
 }
@@ -54,6 +56,7 @@ impl NodeBuilder {
                 raw_styles: None,
                 primitive: RenderPrimitive::Empty,
                 z: 0.0,
+                old_z: 0.0,
             },
         }
     }
@@ -68,6 +71,7 @@ impl NodeBuilder {
                 raw_styles: None,
                 primitive: RenderPrimitive::Empty,
                 z: 0.0,
+                old_z: 0.0,
             },
         }
     }
diff --git a/src/render/unified/shader.wgsl b/src/render/unified/shader.wgsl
index e299a44..3aac721 100644
--- a/src/render/unified/shader.wgsl
+++ b/src/render/unified/shader.wgsl
@@ -63,7 +63,7 @@ fn sdRoundBox(p: vec2<f32>, b: vec2<f32>, r: f32) -> f32 {
 
 @fragment
 fn fragment(in: VertexOutput) -> @location(0) vec4<f32> {
-    if (quad_type.t == 0) {
+    if quad_type.t == 0 {
         var size = in.size;
         var pos = in.pos.xy * 2.0;
         // Lock border to max size. This is similar to how HTML/CSS handles border radius.
@@ -76,8 +76,8 @@ fn fragment(in: VertexOutput) -> @location(0) vec4<f32> {
         rect_dist = 1.0 - smoothstep(0.0, fwidth(rect_dist), rect_dist);
         return vec4<f32>(in.color.rgb, rect_dist * in.color.a);
     }
-    if (quad_type.t == 1) {
-        var px_range = 3.5;
+    if quad_type.t == 1 {
+        var px_range = 5.0;
         var tex_dimensions = textureDimensions(font_texture);
         var msdf_unit = vec2<f32>(px_range, px_range) / vec2<f32>(f32(tex_dimensions.x), f32(tex_dimensions.y));
         var x = textureSample(font_texture, font_sampler, vec2<f32>(in.uv.x, 1.0 - in.uv.y), i32(in.uv.z));
@@ -86,7 +86,7 @@ fn fragment(in: VertexOutput) -> @location(0) vec4<f32> {
         var a = clamp(sig_dist + 0.5, 0.0, 1.0);
         return vec4<f32>(in.color.rgb, a);
     }
-    if (quad_type.t == 2) {
+    if quad_type.t == 2 {
         var bs = min(in.border_radius, min(in.size.x, in.size.y));
         var mask = sdRoundBox(
             in.pos.xy * 2.0 - (in.size.xy),
diff --git a/src/render_primitive.rs b/src/render_primitive.rs
index 9e11073..799af3e 100644
--- a/src/render_primitive.rs
+++ b/src/render_primitive.rs
@@ -56,6 +56,18 @@ impl RenderPrimitive {
             _ => (),
         }
     }
+
+    pub fn to_string(&self) -> String {
+        match self {
+            RenderPrimitive::Clip { .. } => "Clip".into(),
+            RenderPrimitive::Quad { .. } => "Quad".into(),
+            RenderPrimitive::Text { .. } => "Text".into(),
+            RenderPrimitive::Image { .. } => "Image".into(),
+            RenderPrimitive::NinePatch { .. } => "NinePatch".into(),
+            RenderPrimitive::TextureAtlas { .. } => "TextureAtlas".into(),
+            RenderPrimitive::Empty { .. } => "Empty".into(),
+        }
+    }
 }
 
 impl From<&KStyle> for RenderPrimitive {
diff --git a/src/styles/style.rs b/src/styles/style.rs
index dc8bb05..9decc31 100644
--- a/src/styles/style.rs
+++ b/src/styles/style.rs
@@ -361,6 +361,8 @@ define_styles! {
         pub top: StyleProp<Units>,
         /// The width of this widget
         pub width: StyleProp<Units>,
+        /// The z-index relative to it's parent.
+        pub z_index: StyleProp<i32>,
     }
 }
 
@@ -402,6 +404,7 @@ impl KStyle {
             row_between: StyleProp::Default,
             top: StyleProp::Default,
             width: StyleProp::Default,
+            z_index: StyleProp::Default,
         }
     }
 }
diff --git a/src/tree.rs b/src/tree.rs
index 1f64537..5be5caf 100644
--- a/src/tree.rs
+++ b/src/tree.rs
@@ -78,10 +78,6 @@ impl Tree {
             children
         } else {
             // Is root node
-            self.root_node = None;
-            self.parents.clear();
-            self.children.clear();
-
             Vec::default()
         }
     }
@@ -358,7 +354,7 @@ impl Tree {
             .iter()
             .map(|(id, node, parent_node, change)| {
                 if change[0] == Change::Deleted {
-                    return (0, *node, *parent_node, change.clone());
+                    return (*id, *node, *parent_node, change.clone());
                 } else if change[0] == Change::Inserted {
                     let child_id = other_tree
                         .children
@@ -672,6 +668,10 @@ impl Tree {
             }
         }
     }
+
+    pub fn down_iter_at(&self, node: WrappedIndex, include_self: bool) -> DownwardIterator {
+        DownwardIterator::new(self, Some(node), include_self)
+    }
 }
 
 /// An iterator that performs a depth-first traversal down a tree starting
diff --git a/src/widget.rs b/src/widget.rs
index c079b2d..f6e2381 100644
--- a/src/widget.rs
+++ b/src/widget.rs
@@ -38,6 +38,12 @@ pub fn widget_update_with_context<
     // Uses bevy state changes to see if context has changed.
     if let Some(context_entity) = widget_context.get_context_entity::<Context>(entity) {
         if context_query.contains(context_entity) {
+            log::trace!(
+                "Entity context: {} has changed! {}-{}",
+                std::any::type_name::<Context>(),
+                widget_param.widget_names.get(entity).unwrap().0,
+                entity.id()
+            );
             return true;
         }
     }
@@ -66,6 +72,11 @@ impl<'w, 's, Props: PartialEq + Component, State: PartialEq + Component>
         previous_entity: Entity,
     ) -> bool {
         if !self.mounted_query.is_empty() {
+            log::trace!(
+                "Entity was mounted! {}-{}",
+                self.widget_names.get(current_entity).unwrap().0,
+                current_entity.id()
+            );
             return true;
         }
 
@@ -91,6 +102,11 @@ impl<'w, 's, Props: PartialEq + Component, State: PartialEq + Component>
             self.children_query.get(previous_entity),
         ) {
             if children != old_children {
+                log::trace!(
+                    "Entity children have changed! {}-{}",
+                    self.widget_names.get(current_entity).unwrap().0,
+                    current_entity.id()
+                );
                 return true;
             }
         }
diff --git a/src/widget_context.rs b/src/widget_context.rs
index dd9cdb9..28c5839 100644
--- a/src/widget_context.rs
+++ b/src/widget_context.rs
@@ -23,8 +23,9 @@ pub struct KayakWidgetContext {
     new_tree: Arc<RwLock<Tree>>,
     context_entities: ContextEntities,
     layout_cache: Arc<RwLock<LayoutCache>>,
-    index: Arc<RwLock<HashMap<Entity, usize>>>,
+    pub(crate) index: Arc<RwLock<HashMap<Entity, usize>>>,
     widget_state: WidgetState,
+    order_tree: Arc<RwLock<Tree>>,
 }
 
 impl KayakWidgetContext {
@@ -33,14 +34,17 @@ impl KayakWidgetContext {
         context_entities: ContextEntities,
         layout_cache: Arc<RwLock<LayoutCache>>,
         widget_state: WidgetState,
+        order_tree: Arc<RwLock<Tree>>,
+        index: Arc<RwLock<HashMap<Entity, usize>>>,
     ) -> Self {
         Self {
             old_tree,
             new_tree: Arc::new(RwLock::new(Tree::default())),
             context_entities,
             layout_cache,
-            index: Arc::new(RwLock::new(HashMap::default())),
+            index,
             widget_state,
+            order_tree,
         }
     }
 
@@ -121,9 +125,9 @@ impl KayakWidgetContext {
         children
     }
 
-    fn get_children_old(&self, entity: Entity) -> Vec<Entity> {
+    fn get_children_ordered(&self, entity: Entity) -> Vec<Entity> {
         let mut children = vec![];
-        if let Ok(tree) = self.old_tree.read() {
+        if let Ok(tree) = self.order_tree.read() {
             let iterator = tree.child_iter(WrappedIndex(entity));
 
             children = iterator.map(|index| index.0).collect::<Vec<_>>();
@@ -164,15 +168,42 @@ impl KayakWidgetContext {
         self.widget_state.get(widget_entity)
     }
 
-    /// Returns a child entity or none if it does not exist.
+    /// Returns a new/existing widget entity.
     /// Because a re-render can potentially spawn new entities it's advised to use this
     /// to avoid creating a new entity.
-    pub fn get_child_at(&self, entity: Option<Entity>) -> Option<Entity> {
-        if let Some(entity) = entity {
-            let children = self.get_children_old(entity);
-            return children.get(self.get_and_add_index(entity)).cloned();
+    pub fn spawn_widget(&self, commands: &mut Commands, parent_id: Option<Entity>) -> Entity {
+        let mut entity = None;
+        if let Some(parent_entity) = parent_id {
+            let children = self.get_children_ordered(parent_entity);
+            let index = self.get_and_add_index(parent_entity);
+            let child = children.get(index).cloned();
+            if let Some(child) = child {
+                log::trace!(
+                    "Reusing widget entity {:?} with parent: {:?}!",
+                    child.id(),
+                    parent_id.unwrap().id()
+                );
+                entity = Some(commands.get_or_spawn(child).id());
+            }
         }
-        None
+
+        // If we have no entity spawn it!
+        if entity.is_none() {
+            entity = Some(commands.spawn_empty().id());
+            log::trace!(
+                "Spawning new widget with entity {:?}!",
+                entity.unwrap().id()
+            );
+
+            // We need to add it to the ordered tree
+            if let Ok(mut tree) = self.order_tree.try_write() {
+                tree.add(
+                    WrappedIndex(entity.unwrap()),
+                    parent_id.and_then(|parent| Some(WrappedIndex(parent))),
+                )
+            }
+        }
+        entity.unwrap()
     }
 
     /// Removes all matching children from the tree.
@@ -186,6 +217,9 @@ impl KayakWidgetContext {
 
     /// Adds a new widget to the tree with a given parent.
     pub fn add_widget(&self, parent: Option<Entity>, entity: Entity) {
+        if let Some(parent) = parent {
+            assert!(parent != entity, "Parent cannot equal entity!");
+        }
         if let Ok(mut tree) = self.new_tree.write() {
             tree.add(
                 WrappedIndex(entity),
diff --git a/src/widgets/app.rs b/src/widgets/app.rs
index 8aa40a1..5d80ad7 100644
--- a/src/widgets/app.rs
+++ b/src/widgets/app.rs
@@ -1,4 +1,5 @@
 use bevy::prelude::*;
+use kayak_ui_macros::rsx;
 use morphorm::Units;
 
 use crate::{
@@ -10,6 +11,8 @@ use crate::{
     CameraUIKayak,
 };
 
+use super::ClipBundle;
+
 #[derive(Component, Default, Clone, PartialEq)]
 pub struct KayakApp;
 
@@ -60,7 +63,7 @@ pub fn app_update(
 /// TODO: USE CAMERA INSTEAD OF WINDOW!!
 pub fn app_render(
     In((widget_context, entity)): In<(KayakWidgetContext, Entity)>,
-    _: Commands,
+    mut commands: Commands,
     windows: Res<Windows>,
     mut query: Query<(&mut KStyle, &KChildren)>,
     camera: Query<&Camera, With<CameraUIKayak>>,
@@ -88,7 +91,13 @@ pub fn app_render(
             app_style.height = StyleProp::Value(Units::Pixels(height));
         }
         app_style.render_command = StyleProp::Value(RenderCommand::Layout);
-        children.process(&widget_context, Some(entity));
+        // children.process(&widget_context, Some(entity));
+        let parent_id = Some(entity);
+        rsx! {
+            <ClipBundle
+                children={children.clone()}
+            />
+        }
     }
 
     true
diff --git a/src/widgets/button.rs b/src/widgets/button.rs
index 3091064..419a5a7 100644
--- a/src/widgets/button.rs
+++ b/src/widgets/button.rs
@@ -2,17 +2,27 @@ use bevy::{
     prelude::{Bundle, Color, Commands, Component, Entity, In, Query},
     window::CursorIcon,
 };
+use kayak_font::Alignment;
+use kayak_ui_macros::rsx;
 
 use crate::{
     context::WidgetName,
+    event::{Event, EventType},
+    event_dispatcher::EventDispatcherContext,
     on_event::OnEvent,
     prelude::{KChildren, KayakWidgetContext, Units},
-    styles::{Corner, KCursorIcon, KStyle, RenderCommand, StyleProp},
+    styles::{Corner, Edge, KCursorIcon, KStyle, RenderCommand, StyleProp},
     widget::Widget,
+    widget_state::WidgetState,
 };
 
+use super::{ElementBundle, TextProps, TextWidgetBundle};
+
 #[derive(Component, PartialEq, Clone, Default)]
-pub struct KButton;
+pub struct KButton {
+    pub text: String,
+    pub user_styles: KStyle,
+}
 
 /// Default button widget
 /// Accepts an OnEvent component
@@ -21,7 +31,6 @@ pub struct KButtonBundle {
     pub button: KButton,
     pub styles: KStyle,
     pub on_event: OnEvent,
-    pub children: KChildren,
     pub widget_name: WidgetName,
 }
 
@@ -31,7 +40,6 @@ impl Default for KButtonBundle {
             button: Default::default(),
             styles: Default::default(),
             on_event: Default::default(),
-            children: KChildren::default(),
             widget_name: KButton::default().get_name(),
         }
     }
@@ -39,32 +47,95 @@ impl Default for KButtonBundle {
 
 impl Widget for KButton {}
 
+#[derive(Component, Default, Debug, Clone, PartialEq)]
+pub struct ButtonState {
+    hovering: bool,
+}
+
 pub fn button_render(
     In((widget_context, entity)): In<(KayakWidgetContext, Entity)>,
-    _: Commands,
-    mut query: Query<(&mut KStyle, &KChildren)>,
+    mut commands: Commands,
+    mut query: Query<(&KButton, &mut KStyle)>,
+    state_query: Query<&ButtonState>,
 ) -> bool {
-    if let Ok((mut style, children)) = query.get_mut(entity) {
-        *style = KStyle::default()
-            .with_style(KStyle {
-                render_command: StyleProp::Value(RenderCommand::Quad),
-                ..Default::default()
-            })
-            .with_style(style.clone())
-            .with_style(KStyle {
-                render_command: StyleProp::Value(RenderCommand::Quad),
-                background_color: StyleProp::Value(Color::rgba(0.0781, 0.0898, 0.101, 1.0)),
-                border_radius: StyleProp::Value(Corner::all(5.0)),
-                height: StyleProp::Value(Units::Pixels(45.0)),
-                padding_left: StyleProp::Value(Units::Stretch(1.0)),
-                padding_right: StyleProp::Value(Units::Stretch(1.0)),
-                padding_bottom: StyleProp::Value(Units::Stretch(1.0)),
-                padding_top: StyleProp::Value(Units::Stretch(1.0)),
-                cursor: StyleProp::Value(KCursorIcon(CursorIcon::Hand)),
-                ..Default::default()
-            });
+    if let Ok((button, mut style)) = query.get_mut(entity) {
+        let hover_color = Color::rgba(0.592, 0.627, 0.749, 1.0); //Color::rgba(0.549, 0.666, 0.933, 1.0);
+                                                                 // let color = Color::rgba(0.254, 0.270, 0.349, 1.0);
+        let state_entity =
+            widget_context.use_state(&mut commands, entity, ButtonState { hovering: false });
 
-        children.process(&widget_context, Some(entity));
+        if let Ok(state) = state_query.get(state_entity) {
+            *style = KStyle::default()
+                .with_style(KStyle {
+                    render_command: StyleProp::Value(RenderCommand::Quad),
+                    ..Default::default()
+                })
+                .with_style(button.user_styles.clone())
+                .with_style(KStyle {
+                    background_color: Color::rgba(0.254, 0.270, 0.349, 1.0).into(),
+                    border_color: if state.hovering {
+                        hover_color.into()
+                    } else {
+                        Color::rgba(0.254, 0.270, 0.349, 1.0).into()
+                    },
+                    border: Edge::all(2.0).into(),
+                    border_radius: StyleProp::Value(Corner::all(10.0)),
+                    height: StyleProp::Value(Units::Pixels(28.0)),
+                    width: Units::Stretch(1.0).into(),
+                    cursor: StyleProp::Value(KCursorIcon(CursorIcon::Hand)),
+                    ..Default::default()
+                });
+
+            let on_event = OnEvent::new(
+                move |In((event_dispatcher_context, _, mut event, _entity)): In<(
+                    EventDispatcherContext,
+                    WidgetState,
+                    Event,
+                    Entity,
+                )>,
+                      mut query: Query<&mut ButtonState>| {
+                    if let Ok(mut button) = query.get_mut(state_entity) {
+                        match event.event_type {
+                            EventType::MouseIn(..) => {
+                                event.stop_propagation();
+                                button.hovering = true;
+                            }
+                            EventType::MouseOut(..) => {
+                                button.hovering = false;
+                            }
+                            _ => {}
+                        }
+                    }
+                    (event_dispatcher_context, event)
+                },
+            );
+
+            let parent_id = Some(entity);
+            rsx! {
+                <ElementBundle
+                    styles={KStyle {
+                        width: Units::Stretch(1.0).into(),
+                        height: Units::Stretch(1.0).into(),
+                        ..Default::default()
+                    }}
+                    on_event={on_event}
+                >
+                    <TextWidgetBundle
+                        text={TextProps {
+                            alignment: Alignment::Middle,
+                            content: button.text.clone(),
+                            size: 16.0,
+                            user_styles: KStyle {
+                                top: Units::Stretch(1.0).into(),
+                                bottom: Units::Stretch(1.0).into(),
+                                ..Default::default()
+                            },
+                            ..Default::default()
+                        }}
+                    />
+                </ElementBundle>
+            }
+        }
     }
 
     true
diff --git a/src/widgets/clip.rs b/src/widgets/clip.rs
index 8f81862..386bae9 100644
--- a/src/widgets/clip.rs
+++ b/src/widgets/clip.rs
@@ -45,9 +45,10 @@ impl Default for ClipBundle {
 pub fn clip_render(
     In((widget_context, entity)): In<(KayakWidgetContext, Entity)>,
     _: Commands,
-    mut query: Query<(&KStyle, &KChildren)>,
+    mut query: Query<(&mut KStyle, &KChildren)>,
 ) -> bool {
-    if let Ok((_, children)) = query.get_mut(entity) {
+    if let Ok((mut styles, children)) = query.get_mut(entity) {
+        styles.render_command = StyleProp::Value(RenderCommand::Clip);
         children.process(&widget_context, Some(entity));
     }
     true
diff --git a/src/widgets/mod.rs b/src/widgets/mod.rs
index 586c634..a11e2cb 100644
--- a/src/widgets/mod.rs
+++ b/src/widgets/mod.rs
@@ -34,10 +34,11 @@ mod text;
 mod text_box;
 mod texture_atlas;
 mod window;
+mod window_context_provider;
 
 pub use app::{KayakApp, KayakAppBundle};
 pub use background::{Background, BackgroundBundle};
-pub use button::{KButton, KButtonBundle};
+pub use button::{ButtonState, KButton, KButtonBundle};
 pub use clip::{Clip, ClipBundle};
 pub use element::{Element, ElementBundle};
 pub use image::{KImage, KImageBundle};
@@ -53,7 +54,10 @@ pub use scroll::{
 pub use text::{TextProps, TextWidgetBundle};
 pub use text_box::{TextBoxBundle, TextBoxProps, TextBoxState};
 pub use texture_atlas::{TextureAtlasBundle, TextureAtlasProps};
-pub use window::{KWindow, WindowBundle};
+pub use window::{KWindow, KWindowState, WindowBundle};
+pub use window_context_provider::{
+    WindowContext, WindowContextProvider, WindowContextProviderBundle,
+};
 
 use app::{app_render, app_update};
 use background::background_render;
@@ -76,7 +80,7 @@ use crate::{
     widget::{widget_update, widget_update_with_context, EmptyState, Widget},
 };
 
-use self::window::KWindowState;
+use self::window_context_provider::window_context_render;
 
 pub struct KayakWidgets;
 
@@ -88,9 +92,10 @@ impl Plugin for KayakWidgets {
 
 fn add_widget_systems(mut context: ResMut<KayakRootContext>) {
     context.add_widget_data::<KayakApp, EmptyState>();
-    context.add_widget_data::<KButton, EmptyState>();
+    context.add_widget_data::<KButton, ButtonState>();
     context.add_widget_data::<TextProps, EmptyState>();
     context.add_widget_data::<KWindow, KWindowState>();
+    context.add_widget_data::<WindowContextProvider, EmptyState>();
     context.add_widget_data::<Background, EmptyState>();
     context.add_widget_data::<Clip, EmptyState>();
     context.add_widget_data::<KImage, EmptyState>();
@@ -106,7 +111,7 @@ fn add_widget_systems(mut context: ResMut<KayakRootContext>) {
     context.add_widget_system(KayakApp::default().get_name(), app_update, app_render);
     context.add_widget_system(
         KButton::default().get_name(),
-        widget_update::<KButton, EmptyState>,
+        widget_update::<KButton, ButtonState>,
         button_render,
     );
     context.add_widget_system(
@@ -114,9 +119,14 @@ fn add_widget_systems(mut context: ResMut<KayakRootContext>) {
         widget_update::<TextProps, EmptyState>,
         text_render,
     );
+    context.add_widget_system(
+        WindowContextProvider::default().get_name(),
+        widget_update::<WindowContextProvider, EmptyState>,
+        window_context_render,
+    );
     context.add_widget_system(
         KWindow::default().get_name(),
-        widget_update::<KWindow, KWindowState>,
+        widget_update_with_context::<KWindow, KWindowState, WindowContext>,
         window_render,
     );
     context.add_widget_system(
diff --git a/src/widgets/scroll/scroll_bar.rs b/src/widgets/scroll/scroll_bar.rs
index f56c754..5d63688 100644
--- a/src/widgets/scroll/scroll_bar.rs
+++ b/src/widgets/scroll/scroll_bar.rs
@@ -78,7 +78,7 @@ pub fn scroll_bar_render(
                 let thickness = scrollbar.thickness;
                 let thumb_color = scrollbar
                     .thumb_color
-                    .unwrap_or_else(|| Color::rgba(0.2981, 0.3098, 0.321, 0.95));
+                    .unwrap_or_else(|| Color::rgba(0.239, 0.258, 0.337, 1.0));
                 let thumb_styles = scrollbar.thumb_styles.clone();
                 let track_color = scrollbar
                     .track_color
diff --git a/src/widgets/scroll/scroll_box.rs b/src/widgets/scroll/scroll_box.rs
index b294e4a..60eb4df 100644
--- a/src/widgets/scroll/scroll_box.rs
+++ b/src/widgets/scroll/scroll_box.rs
@@ -85,7 +85,7 @@ pub fn scroll_box_render(
     if let Ok((scroll_box, mut styles, scroll_box_children, mut on_layout)) = query.get_mut(entity)
     {
         if let Some(context_entity) = widget_context.get_context_entity::<ScrollContext>(entity) {
-            if let Ok(scroll_context) = context_query.p1().get(context_entity).cloned() {
+            if let Ok(scroll_context) = context_query.p0().get(context_entity).cloned() {
                 // === Configuration === //
                 let always_show_scrollbar = scroll_box.always_show_scrollbar;
                 let disable_horizontal = scroll_box.disable_horizontal;
diff --git a/src/widgets/scroll/scroll_content.rs b/src/widgets/scroll/scroll_content.rs
index e3af6da..4f2a2fe 100644
--- a/src/widgets/scroll/scroll_content.rs
+++ b/src/widgets/scroll/scroll_content.rs
@@ -70,7 +70,7 @@ pub fn scroll_content_render(
                         render_command: RenderCommand::Layout.into(),
                         layout_type: LayoutType::Column.into(),
                         min_width: Units::Pixels(
-                            scroll_context.scrollbox_width - scroll_context.pad_x,
+                            scroll_context.scrollbox_width - scroll_context.pad_x - 10.0,
                         )
                         .into(),
                         min_height: Units::Stretch(
diff --git a/src/widgets/text.rs b/src/widgets/text.rs
index 467628e..790272d 100644
--- a/src/widgets/text.rs
+++ b/src/widgets/text.rs
@@ -1,5 +1,6 @@
 use bevy::prelude::*;
 use kayak_font::Alignment;
+use kayak_ui_macros::rsx;
 
 use crate::{
     context::WidgetName,
@@ -8,6 +9,8 @@ use crate::{
     widget::Widget,
 };
 
+use super::ElementBundle;
+
 #[derive(Component, Debug, PartialEq, Clone)]
 pub struct TextProps {
     /// The string to display
@@ -28,6 +31,8 @@ pub struct TextProps {
     pub size: f32,
     /// Text alignment.
     pub alignment: Alignment,
+    /// Custom styles to pass in.
+    pub user_styles: KStyle,
 }
 
 impl Default for TextProps {
@@ -39,6 +44,7 @@ impl Default for TextProps {
             show_cursor: false,
             size: -1.0,
             alignment: Alignment::Start,
+            user_styles: Default::default(),
         }
     }
 }
@@ -58,36 +64,60 @@ impl Default for TextWidgetBundle {
     fn default() -> Self {
         Self {
             text: Default::default(),
-            styles: Default::default(),
+            styles: KStyle {
+                ..Default::default()
+            },
             widget_name: TextProps::default().get_name(),
         }
     }
 }
 
 pub fn text_render(
-    In((_, entity)): In<(KayakWidgetContext, Entity)>,
-    mut query: Query<(&mut KStyle, &TextProps)>,
+    In((widget_context, entity)): In<(KayakWidgetContext, Entity)>,
+    mut commands: Commands,
+    mut query: Query<&TextProps>,
 ) -> bool {
-    if let Ok((mut style, text)) = query.get_mut(entity) {
-        style.render_command = StyleProp::Value(RenderCommand::Text {
-            content: text.content.clone(),
-            alignment: text.alignment,
-        });
+    if let Ok(text) = query.get_mut(entity) {
+        let mut style = KStyle::default();
 
-        if let Some(ref font) = text.font {
-            style.font = StyleProp::Value(font.clone());
-        }
-        if text.show_cursor {
-            style.cursor = StyleProp::Value(KCursorIcon(CursorIcon::Text));
-        }
-        if text.size >= 0.0 {
-            style.font_size = StyleProp::Value(text.size);
-        }
-        if let Some(line_height) = text.line_height {
-            style.line_height = StyleProp::Value(line_height);
-        }
+        style = style.with_style(&text.user_styles).with_style(KStyle {
+            render_command: StyleProp::Value(RenderCommand::Text {
+                content: text.content.clone(),
+                alignment: text.alignment,
+            }),
+            font: if let Some(ref font) = text.font {
+                StyleProp::Value(font.clone())
+            } else {
+                StyleProp::default()
+            },
+            cursor: if text.show_cursor {
+                StyleProp::Value(KCursorIcon(CursorIcon::Text))
+            } else {
+                StyleProp::default()
+            },
+            font_size: if text.size >= 0.0 {
+                StyleProp::Value(text.size)
+            } else {
+                StyleProp::default()
+            },
+            line_height: if let Some(line_height) = text.line_height {
+                StyleProp::Value(line_height)
+            } else {
+                StyleProp::default()
+            },
+            // bottom: Units::Stretch(1.0).into(),
+            // top: Units::Stretch(1.0).into(),
+            // left: Units::Stretch(0.0).into(),
+            // right: Units::Stretch(0.0).into(),
+            ..Default::default()
+        });
 
         // style.cursor = StyleProp::Value(KCursorIcon(CursorIcon::Hand));
+
+        let parent_id = Some(entity);
+        rsx! {
+            <ElementBundle styles={style} />
+        }
     }
 
     true
diff --git a/src/widgets/text_box.rs b/src/widgets/text_box.rs
index b66738c..5c92aa9 100644
--- a/src/widgets/text_box.rs
+++ b/src/widgets/text_box.rs
@@ -8,7 +8,7 @@ use crate::{
     on_event::OnEvent,
     on_layout::OnLayout,
     prelude::{KChildren, KayakWidgetContext, OnChange},
-    styles::{Corner, KStyle, RenderCommand, StyleProp, Units},
+    styles::{Edge, KStyle, RenderCommand, StyleProp, Units},
     widget::Widget,
     widget_state::WidgetState,
     widgets::{
@@ -74,6 +74,7 @@ pub fn text_box_render(
     In((widget_context, entity)): In<(KayakWidgetContext, Entity)>,
     mut commands: Commands,
     mut query: Query<(&mut KStyle, &TextBoxProps, &mut OnEvent, &OnChange)>,
+    state_query: Query<&TextBoxState>,
 ) -> bool {
     if let Ok((mut styles, text_box, mut on_event, on_change)) = query.get_mut(entity) {
         let state_entity = widget_context.use_state::<TextBoxState>(
@@ -82,102 +83,114 @@ pub fn text_box_render(
             TextBoxState::default(),
         );
 
-        *styles = KStyle::default()
-            // Required styles
-            .with_style(KStyle {
-                render_command: RenderCommand::Layout.into(),
-                ..Default::default()
-            })
-            // Apply any prop-given styles
-            .with_style(&*styles)
-            // If not set by props, apply these styles
-            .with_style(KStyle {
-                top: Units::Pixels(0.0).into(),
-                bottom: Units::Pixels(0.0).into(),
+        if let Ok(state) = state_query.get(state_entity) {
+            *styles = KStyle::default()
+                // Required styles
+                .with_style(KStyle {
+                    render_command: RenderCommand::Layout.into(),
+                    ..Default::default()
+                })
+                // Apply any prop-given styles
+                .with_style(&*styles)
+                // If not set by props, apply these styles
+                .with_style(KStyle {
+                    top: Units::Pixels(0.0).into(),
+                    bottom: Units::Pixels(0.0).into(),
+                    height: Units::Pixels(26.0).into(),
+                    // cursor: CursorIcon::Text.into(),
+                    ..Default::default()
+                });
+
+            let background_styles = KStyle {
+                render_command: StyleProp::Value(RenderCommand::Quad),
+                background_color: Color::rgba(0.160, 0.172, 0.235, 1.0).into(),
+                border_color: if state.focused {
+                    Color::rgba(0.933, 0.745, 0.745, 1.0).into()
+                } else {
+                    Color::rgba(0.360, 0.380, 0.474, 1.0).into()
+                },
+                border: Edge::new(0.0, 0.0, 0.0, 2.0).into(),
                 height: Units::Pixels(26.0).into(),
-                // cursor: CursorIcon::Text.into(),
+                padding_left: Units::Pixels(5.0).into(),
+                padding_right: Units::Pixels(5.0).into(),
                 ..Default::default()
-            });
-
-        let background_styles = KStyle {
-            render_command: StyleProp::Value(RenderCommand::Quad),
-            background_color: StyleProp::Value(Color::rgba(0.176, 0.196, 0.215, 1.0)),
-            border_radius: Corner::all(5.0).into(),
-            height: Units::Pixels(26.0).into(),
-            padding_left: Units::Pixels(5.0).into(),
-            padding_right: Units::Pixels(5.0).into(),
-            ..Default::default()
-        };
+            };
 
-        let current_value = text_box.value.clone();
-        let cloned_on_change = on_change.clone();
+            let current_value = text_box.value.clone();
+            let cloned_on_change = on_change.clone();
 
-        *on_event = OnEvent::new(
-            move |In((event_dispatcher_context, _, mut event, _entity)): In<(
-                EventDispatcherContext,
-                WidgetState,
-                Event,
-                Entity,
-            )>,
-                  mut state_query: Query<&mut TextBoxState>| {
-                match event.event_type {
-                    EventType::CharInput { c } => {
-                        let mut current_value = current_value.clone();
-                        let cloned_on_change = cloned_on_change.clone();
-                        if let Ok(state) = state_query.get(state_entity) {
-                            if !state.focused {
+            *on_event = OnEvent::new(
+                move |In((event_dispatcher_context, _, mut event, _entity)): In<(
+                    EventDispatcherContext,
+                    WidgetState,
+                    Event,
+                    Entity,
+                )>,
+                      mut state_query: Query<&mut TextBoxState>| {
+                    match event.event_type {
+                        EventType::CharInput { c } => {
+                            let mut current_value = current_value.clone();
+                            let cloned_on_change = cloned_on_change.clone();
+                            if let Ok(state) = state_query.get(state_entity) {
+                                if !state.focused {
+                                    return (event_dispatcher_context, event);
+                                }
+                            } else {
                                 return (event_dispatcher_context, event);
                             }
-                        } else {
-                            return (event_dispatcher_context, event);
-                        }
-                        if is_backspace(c) {
-                            if !current_value.is_empty() {
-                                current_value.truncate(current_value.len() - 1);
+                            if is_backspace(c) {
+                                if !current_value.is_empty() {
+                                    current_value.truncate(current_value.len() - 1);
+                                }
+                            } else if !c.is_control() {
+                                current_value.push(c);
                             }
-                        } else if !c.is_control() {
-                            current_value.push(c);
+                            cloned_on_change.set_value(current_value);
+                            event.add_system(cloned_on_change);
                         }
-                        cloned_on_change.set_value(current_value);
-                        event.add_system(cloned_on_change);
-                    }
-                    EventType::Focus => {
-                        if let Ok(mut state) = state_query.get_mut(state_entity) {
-                            state.focused = true;
+                        EventType::Focus => {
+                            if let Ok(mut state) = state_query.get_mut(state_entity) {
+                                state.focused = true;
+                            }
                         }
-                    }
-                    EventType::Blur => {
-                        if let Ok(mut state) = state_query.get_mut(state_entity) {
-                            state.focused = false;
+                        EventType::Blur => {
+                            if let Ok(mut state) = state_query.get_mut(state_entity) {
+                                state.focused = false;
+                            }
                         }
+                        _ => {}
                     }
-                    _ => {}
-                }
-                (event_dispatcher_context, event)
-            },
-        );
+                    (event_dispatcher_context, event)
+                },
+            );
 
-        let parent_id = Some(entity);
-        rsx! {
-            <BackgroundBundle styles={background_styles}>
-                <ClipBundle styles={KStyle {
-                    height: Units::Pixels(26.0).into(),
-                    padding_left: StyleProp::Value(Units::Stretch(0.0)),
-                    padding_right: StyleProp::Value(Units::Stretch(0.0)),
-                    padding_bottom: StyleProp::Value(Units::Stretch(1.0)),
-                    padding_top: StyleProp::Value(Units::Stretch(1.0)),
-                    ..Default::default()
-                }}>
-                    <TextWidgetBundle
-                        text={TextProps {
-                            content: text_box.value.clone(),
-                            size: 14.0,
-                            line_height: Some(18.0),
-                            ..Default::default()
-                        }}
-                    />
-                </ClipBundle>
-            </BackgroundBundle>
+            let parent_id = Some(entity);
+            rsx! {
+                <BackgroundBundle styles={background_styles}>
+                    <ClipBundle styles={KStyle {
+                        height: Units::Pixels(26.0).into(),
+                        padding_left: StyleProp::Value(Units::Stretch(0.0)),
+                        padding_right: StyleProp::Value(Units::Stretch(0.0)),
+                        padding_bottom: StyleProp::Value(Units::Stretch(1.0)),
+                        padding_top: StyleProp::Value(Units::Stretch(1.0)),
+                        ..Default::default()
+                    }}>
+                        <TextWidgetBundle
+                            text={TextProps {
+                                content: text_box.value.clone(),
+                                size: 14.0,
+                                line_height: Some(18.0),
+                                user_styles: KStyle {
+                                    top: Units::Stretch(1.0).into(),
+                                    bottom: Units::Stretch(1.0).into(),
+                                    ..Default::default()
+                                },
+                                ..Default::default()
+                            }}
+                        />
+                    </ClipBundle>
+                </BackgroundBundle>
+            }
         }
     }
 
diff --git a/src/widgets/window.rs b/src/widgets/window.rs
index d51c0f5..6ccf5ba 100644
--- a/src/widgets/window.rs
+++ b/src/widgets/window.rs
@@ -14,12 +14,14 @@ use crate::{
     styles::{Corner, Edge, KCursorIcon, KPositionType, KStyle, RenderCommand, StyleProp, Units},
     widget::Widget,
     widget_state::WidgetState,
+    Focusable,
 };
 
 use super::{
     background::BackgroundBundle,
     clip::ClipBundle,
     text::{TextProps, TextWidgetBundle},
+    window_context_provider::WindowContext,
     ElementBundle,
 };
 
@@ -33,6 +35,10 @@ pub struct KWindow {
     pub size: Vec2,
     /// The text to display in the window's title bar
     pub title: String,
+    /// Styles for the main window quad.
+    pub window_styles: KStyle,
+    /// A set of styles to apply to the children element wrapper.
+    pub children_styles: KStyle,
 }
 
 #[derive(Component, PartialEq, Clone, Debug, Default)]
@@ -40,6 +46,7 @@ pub struct KWindowState {
     pub is_dragging: bool,
     pub offset: Vec2,
     pub position: Vec2,
+    pub focused: bool,
 }
 
 impl Widget for KWindow {}
@@ -69,10 +76,29 @@ impl Default for WindowBundle {
 pub fn window_render(
     In((widget_context, window_entity)): In<(KayakWidgetContext, Entity)>,
     mut commands: Commands,
-    mut query: Query<(&KStyle, &KChildren, &KWindow)>,
+    mut query: Query<(&mut KStyle, &KChildren, &KWindow)>,
     state_query: Query<&KWindowState>,
+    mut context_query: Query<&mut WindowContext>,
 ) -> bool {
-    if let Ok((window_style, window_children, window)) = query.get_mut(window_entity) {
+    if let Ok((mut window_style, window_children, window)) = query.get_mut(window_entity) {
+        let possible_context_entity =
+            widget_context.get_context_entity::<WindowContext>(window_entity);
+        let z_index = if let Some(window_context_entity) = possible_context_entity {
+            if let Ok(mut window_context) = context_query.get_mut(window_context_entity) {
+                Some(window_context.get_or_add(window_entity))
+            } else {
+                None
+            }
+        } else {
+            None
+        };
+
+        window_style.z_index = if z_index.is_some() {
+            StyleProp::Value(z_index.unwrap() as i32 * 1000)
+        } else {
+            StyleProp::Default
+        };
+
         let title = window.title.clone();
 
         let state_entity = widget_context.use_state(
@@ -82,18 +108,55 @@ pub fn window_render(
                 position: window.initial_position,
                 offset: Vec2::ZERO,
                 is_dragging: false,
+                focused: false,
             },
         );
 
         if let Ok(state) = state_query.get(state_entity) {
             let parent_id = Some(window_entity);
+
+            let focus_event = OnEvent::new(
+                move |In((event_dispatcher_context, _, mut event, _entity)): In<(
+                    EventDispatcherContext,
+                    WidgetState,
+                    Event,
+                    Entity,
+                )>,
+                      mut query: Query<&mut KWindowState>,
+                      mut context_query: Query<&mut WindowContext>| {
+                    if let Ok(mut window) = query.get_mut(state_entity) {
+                        event.stop_propagation();
+                        event.prevent_default();
+                        match event.event_type {
+                            EventType::Focus => {
+                                window.focused = true;
+                                if let Some(window_context_entity) = possible_context_entity {
+                                    if let Ok(mut context) =
+                                        context_query.get_mut(window_context_entity)
+                                    {
+                                        context.shift_to_top(window_entity);
+                                    }
+                                }
+                            }
+                            EventType::Blur => {
+                                window.focused = false;
+                                window.is_dragging = false;
+                            }
+                            _ => {}
+                        }
+                    }
+                    (event_dispatcher_context, event)
+                },
+            );
+
             rsx! {
                 <ElementBundle
-                    styles={KStyle {
-                        background_color: StyleProp::Value(Color::rgba(0.125, 0.125, 0.125, 1.0)),
-                        border_color: StyleProp::Value(Color::rgba(0.0781, 0.0898, 0.101, 1.0)),
-                        border: StyleProp::Value(Edge::all(4.0)),
-                        border_radius: StyleProp::Value(Corner::all(5.0)),
+                    id={"window_entity"}
+                    styles={window.window_styles.clone().with_style(KStyle {
+                        background_color: StyleProp::Value(Color::rgba(0.188, 0.203, 0.274, 1.0)),
+                        border_color: StyleProp::Value(if state.focused { Color::rgba(0.933, 0.745, 0.745, 1.0) } else { Color::rgba(0.239, 0.258, 0.337, 1.0) }),
+                        border: StyleProp::Value(Edge::all(2.0)),
+                        border_radius: StyleProp::Value(Corner::all(10.0)),
                         render_command: StyleProp::Value(RenderCommand::Quad),
                         position_type: StyleProp::Value(KPositionType::SelfDirected),
                         left: StyleProp::Value(Units::Pixels(state.position.x)),
@@ -102,16 +165,18 @@ pub fn window_render(
                         height: StyleProp::Value(Units::Pixels(window.size.y)),
                         min_width: StyleProp::Value(Units::Pixels(window.size.x)),
                         min_height: StyleProp::Value(Units::Pixels(window.size.y)),
-                        ..window_style.clone()
-                    }}
+                        ..Default::default()
+                    })}
+                    on_event={focus_event}
                 >
+                    {commands.entity(window_entity).insert(Focusable)}
                     <BackgroundBundle
                         id={"title_bar_entity"}
                         styles={KStyle {
                             cursor: StyleProp::Value(KCursorIcon(CursorIcon::Hand)),
                             render_command: StyleProp::Value(RenderCommand::Quad),
-                            background_color: StyleProp::Value(Color::rgba(0.0781, 0.0898, 0.101, 1.0)),
-                            border_radius: StyleProp::Value(Corner::all(5.0)),
+                            background_color: StyleProp::Value(Color::rgba(0.188, 0.203, 0.274, 1.0)),
+                            border_radius: Corner::all(10.0).into(),
                             height: StyleProp::Value(Units::Pixels(24.0)),
                             width: StyleProp::Value(Units::Stretch(1.0)),
                             left: StyleProp::Value(Units::Pixels(0.0)),
@@ -119,6 +184,8 @@ pub fn window_render(
                             top: StyleProp::Value(Units::Pixels(0.0)),
                             bottom: StyleProp::Value(Units::Pixels(0.0)),
                             padding_left: StyleProp::Value(Units::Pixels(5.0)),
+                            padding_top: Units::Stretch(1.0).into(),
+                            padding_bottom: Units::Stretch(1.0).into(),
                             ..KStyle::default()
                         }}
                     >
@@ -126,21 +193,24 @@ pub fn window_render(
                             text={TextProps {
                                 content: title.clone(),
                                 size: 14.0,
-                                line_height: Some(25.0),
+                                user_styles: KStyle {
+                                    top: Units::Stretch(1.0).into(),
+                                    bottom: Units::Stretch(1.0).into(),
+                                    ..Default::default()
+                                },
                                 ..Default::default()
                             }}
-                            styles={KStyle {
-                                height: StyleProp::Value(Units::Pixels(25.0)),
-                                ..KStyle::default()
-                            }}
                         />
                     </BackgroundBundle>
                     {
+                        // This code needs to go after the closing tag for the background bundle as that is when the
+                        // widget is "spawned". Adding this code after just the starting tag will cause this OnEvent
+                        // to be wiped out with a default version.
                         if window.draggable {
                             commands
                                 .entity(title_bar_entity)
                                 .insert(OnEvent::new(
-                                    move |In((mut event_dispatcher_context, _, event, entity)): In<(
+                                    move |In((mut event_dispatcher_context, _, mut event, entity)): In<(
                                         EventDispatcherContext,
                                         WidgetState,
                                         Event,
@@ -148,6 +218,8 @@ pub fn window_render(
                                     )>,
                                         mut query: Query<&mut KWindowState>| {
                                         if let Ok(mut window) = query.get_mut(state_entity) {
+                                            event.prevent_default();
+                                            event.stop_propagation();
                                             match event.event_type {
                                                 EventType::MouseDown(data) => {
                                                     event_dispatcher_context.capture_cursor(entity);
@@ -177,14 +249,22 @@ pub fn window_render(
                                 ));
                         }
                     }
-                    <ClipBundle
+                    <BackgroundBundle
                         styles={KStyle {
+                            background_color: StyleProp::Value(Color::rgba(0.239, 0.258, 0.337, 1.0)),
+                            width: Units::Stretch(1.0).into(),
+                            height: Units::Pixels(2.0).into(),
+                            ..Default::default()
+                        }}
+                    />
+                    <ClipBundle
+                        styles={window.children_styles.clone().with_style(KStyle {
                             top: Units::Pixels(10.0).into(),
                             left: Units::Pixels(10.0).into(),
                             right: Units::Pixels(10.0).into(),
                             bottom: Units::Pixels(10.0).into(),
                             ..Default::default()
-                        }}
+                        })}
                         children={window_children.clone()}
                     />
                 </ElementBundle>
diff --git a/src/widgets/window_context_provider.rs b/src/widgets/window_context_provider.rs
new file mode 100644
index 0000000..6e424c5
--- /dev/null
+++ b/src/widgets/window_context_provider.rs
@@ -0,0 +1,81 @@
+use bevy::{prelude::*, utils::HashMap};
+
+use crate::{
+    children::KChildren, context::WidgetName, prelude::KayakWidgetContext, widget::Widget,
+};
+
+#[derive(Component, Default, Debug, Clone, PartialEq)]
+pub struct WindowContext {
+    order: Vec<Entity>,
+    z_indices: HashMap<Entity, usize>,
+}
+
+impl WindowContext {
+    pub fn add(&mut self, entity: Entity, index: usize) {
+        self.order.push(entity);
+        self.z_indices.insert(entity, index);
+    }
+
+    pub fn shift_to_top(&mut self, entity: Entity) {
+        if let Some(index) = self.order.iter().position(|e| e.id() == entity.id()) {
+            self.order.remove(index);
+            self.order.push(entity);
+        }
+
+        self.z_indices.clear();
+        for (index, entity) in self.order.iter().enumerate() {
+            self.z_indices.insert(*entity, index);
+        }
+    }
+
+    pub fn get(&self, entity: Entity) -> usize {
+        *self.z_indices.get(&entity).unwrap()
+    }
+
+    pub fn get_or_add(&mut self, entity: Entity) -> usize {
+        if self.order.iter().any(|e| e.id() == entity.id()) {
+            self.get(entity)
+        } else {
+            self.add(entity, 0);
+            self.shift_to_top(entity);
+            self.get(entity)
+        }
+    }
+}
+
+#[derive(Component, Default, Debug, Clone, PartialEq)]
+pub struct WindowContextProvider;
+
+impl Widget for WindowContextProvider {}
+
+#[derive(Bundle, Debug, Clone, PartialEq)]
+pub struct WindowContextProviderBundle {
+    pub context_provider: WindowContextProvider,
+    pub children: KChildren,
+    pub widget_name: WidgetName,
+}
+
+impl Default for WindowContextProviderBundle {
+    fn default() -> Self {
+        Self {
+            context_provider: Default::default(),
+            children: Default::default(),
+            widget_name: WindowContextProvider::default().get_name(),
+        }
+    }
+}
+
+pub fn window_context_render(
+    In((widget_context, window_context_entity)): In<(KayakWidgetContext, Entity)>,
+    mut commands: Commands,
+    children_query: Query<&KChildren>,
+) -> bool {
+    if let Ok(children) = children_query.get(window_context_entity) {
+        let context_entity = commands.spawn(WindowContext::default()).id();
+        widget_context
+            .set_context_entity::<WindowContext>(Some(window_context_entity), context_entity);
+        children.process(&widget_context, Some(window_context_entity));
+    }
+
+    true
+}
-- 
GitLab