Steve Sanderson
ce10e6fa19
In preparation for DI, give every Renderer an IServiceProvider
2018-02-23 09:32:26 +00:00
Steve Sanderson
25b76bc6dc
Skip rerendering child components if their params are definitely unchanged
2018-02-22 13:23:52 +00:00
Steve Sanderson
df825de86d
Reorganise some test helpers in shared locations
2018-02-16 17:23:04 +00:00
Steve Sanderson
f91d1d4803
Better handling of render-after-disposed scenarios
2018-02-16 12:10:44 +00:00
Steve Sanderson
29a6175ac1
Define RenderFragment concept
2018-02-16 10:10:10 +00:00
Steve Sanderson
1ac5ee25c1
Rename RenderTreeBuilder's AddText to AddContent, since it will be used for other types too
2018-02-16 10:10:08 +00:00
Steve Sanderson
0eb0555303
Eliminate IComponent.BuildRenderTree to guarantee that components are only rendered by themselves
2018-02-13 19:47:37 +00:00
Steve Sanderson
70a3ee3d98
Remove externally-callable Renderer.RenderInNewBatch() now that rendering is triggered by components themselves
2018-02-13 17:06:00 +00:00
Steve Sanderson
804ab2d89f
Add IHandleEvent concept so components can define their own lifecycle around events
2018-02-13 16:42:21 +00:00
Steve Sanderson
861154764c
Introduce IComponent.SetParameters, moving parameter-setting and rerendering logic into component base class
2018-02-13 15:00:53 +00:00
Steve Sanderson
695ddc0fd6
Add Init/RenderHandle concepts so components can rerender themselves arbitrarily (e.g., after internal state change)
2018-02-13 11:49:33 +00:00
Steve Sanderson
e37e22aa27
Further renderer refactoring
2018-02-10 10:55:44 +00:00
Steve Sanderson
15ddcd03b0
Major refactor of responsibilities in rendering code. Not quite done
...
with this yet either.
2018-02-09 14:50:07 +00:00
Steve Sanderson
b8ed7bc2c5
Track event handlers via explicit IDs rather than by index into frames
...
array
2018-02-08 15:31:45 +00:00
Steve Sanderson
83fa72bc7e
Have RenderTreeDiff build its own array of referenced frames rather than pointing to the latest render tree
...
This is in preparation for supporting multiple diffs for the same
component in a single batch (which means we can't rely on there being at
most only new render tree per component)
2018-02-07 10:27:32 +00:00
Steve Sanderson
33932f41fc
Replace "DescendantsEndIndex" concept with "SubtreeLength"
...
In other words, use relative addressing so that frame data is
independent of its position in the array
2018-02-07 10:27:32 +00:00
Steve Sanderson
93f17219ea
Rename OpenComponentElement -> OpenComponent for consistency
2018-02-05 00:19:44 +00:00
Steve Sanderson
1fda744770
Make RenderTreeFrame properly readonly to allow more pass-by-ref cases
2018-02-05 00:16:08 +00:00
Steve Sanderson
f1332919bc
Rename RenderTreeNode -> RenderTreeFrame (and correspondingly, "node" ->
...
"frame" everywhere)
2018-02-04 22:21:29 +00:00
Steve Sanderson
50a5baa872
Dispose components on removal
2018-01-30 10:00:30 +00:00
Steve Sanderson
55592f583b
Update RendererTests to be more explicit about batch expectations
2018-01-29 20:28:38 +00:00
Steve Sanderson
080e6395cb
Move to batched rendering
2018-01-29 20:16:42 +00:00
Steve Sanderson
27d0ce4da9
Begin differentiating between rendering as a new batch on in an existing batch (even though batches don't exist yet)
2018-01-29 16:47:52 +00:00
Steve Sanderson
882096755b
Rerender child components when their parameters change
2018-01-26 14:25:26 -08:00
Steve Sanderson
94ad26a479
Update properties on retained child components
2018-01-26 11:58:43 -08:00
Steve Sanderson
1b4fa4781a
Give attribute nodes a single object-valued value so they can be used for component properties too.
2018-01-26 09:40:48 -08:00
Steve Sanderson
0aa164073d
Rename Microsoft.Blazor.* -> Microsoft.AspNetCore.Blazor.* everywhere
2018-01-24 15:48:38 -08:00