Steven Kirk
5e4f5a6160
Handle geometry clips on child layers.
9 years ago
Steven Kirk
abe69ac320
Moved some mocks into Avalonia.UnitTests.
From Avalonia.Visuals.UnitTests as they're useful generally.
9 years ago
Steven Kirk
a849d7b116
Fixed geometry clip hit testing.
Updated unit test to test for previous problem.
9 years ago
Steven Kirk
bfd8c04149
Make geometry clips work.
Still problems with hit-testing and geometry clips aren't propogated to
new layers.
9 years ago
Steven Kirk
d1e322c94b
Added failing test.
RenderTransforms aren't being applied correctly after initial scene
build.
9 years ago
Steven Kirk
c23e104cf2
Added failing geometry clip hit-test.
9 years ago
Steven Kirk
c39fd38622
Make OpacityMask work in deferred renderer.
9 years ago
Steven Kirk
69bca2cf89
Got VisualBrushes working again.
9 years ago
Steven Kirk
ab9cf03eff
WIP: Delegate back to render for VisualBrushes.
`VisualBrush`es need to get delegated back to the renderer for
rendering, so added an `IVisualBrushRenderer` interface which is
implemented by the renderers, and pass this when creating drawing
contexts. Only currently implemented/tested for D2D and
`ImmediateRenderer`.
9 years ago
Steven Kirk
e79a144c14
WIP: Working on getting VisualBrush working
Don't try to render `VisualBrush`es in TileBrushImpl - visual brushes
need first to be transformed into images and then rendered as an
`ImageBrush`. To this end, renamed `TileBrushImpl` as `ImageBrushImpl`
(in D2D backend only for now as that's what I'll get working first).
Actual visual brush implementation not yet done.
9 years ago
Nikita Tsukanov
374d600275
Added support for multiple drawing methods for window implementations. Added framebuffer support
9 years ago
Steven Kirk
4ce2e09ef3
Use widened bounds for GeometryNode.Bounds.
9 years ago
Steven Kirk
0a36466021
Run render tests with deferred renderer.
Make render tests run all tests with both the deferred and immediate
renderer.
10 years ago
Steven Kirk
136f86fb42
Fix failing tests.
10 years ago
Steven Kirk
14805322ca
Removed RendererMixin.
Moved immediate rendering logic into `Renderer`.
10 years ago
Steven Kirk
a967c9bf82
Make DPI scaling work again.
10 years ago
Steven Kirk
bae15f3ec4
Update dirty controls in order.
10 years ago
Steven Kirk
6d3ca92a4c
WIP: Getting resizing working.
10 years ago
Steven Kirk
ec2998728e
Store layers in Scene.
Layers are now calculated by SceneBuilder and stored in Scene. This
means we are no longer accessing `visual.Opacity` from the render thread
(and `VerifyAccess` calls have been placed in AvaloniaObject.GetValue
and friends to ensure this cannot happen). ControlCatalog is now
rendering mostly fine.
10 years ago
Steven Kirk
97ea14d58c
More work on deferred renderer.
Getting opacity layers working.
10 years ago
Steven Kirk
d34c279ba1
WIP: Adding render layers.
10 years ago
Steven Kirk
1f985abaa6
Refactored VisualNode.
It now has two collections: Children and DrawOperations.
10 years ago
Steven Kirk
6b6474bc8d
Fix bounds clipping.
10 years ago
Steven Kirk
584cdbb133
Make FormattedTextImpl immutable.
Because it needs to be shared between the UI thread and the render
thread. This also required making it non-disposable like the other
graphics primitive impls.
10 years ago
Steven Kirk
c46ca88b97
Make IGeometryImpl immutable.
As it will be shared with the UI thread and the render thread.
10 years ago
Steven Kirk
43c95346b6
Fix non-compiling tests.
10 years ago
Steven Kirk
db26fe3626
Special case for hit testing in unit tests.
When not in a unit test, only update the scene from the render loop.
10 years ago
Steven Kirk
52c3daea11
Initial implementation of dirty rect drawing.
10 years ago
Steven Kirk
3c189cbe82
Make SceneBuilder update dirty rects.
10 years ago
Steven Kirk
da666b4463
Make Shape render properly again.
10 years ago
Steven Kirk
934e18c8ba
Initial impl of incremental update to SceneGraph.
10 years ago
Steven Kirk
98f551c533
Don't need the context.Render any more.
In hit testing unit tests.
10 years ago
Steven Kirk
86216d9420
Use scene geometry for hit-testing.
This means we now correctly hit test circles etc.
10 years ago
Steven Kirk
d91d1829ac
Initial implementation of scenegraph hit testing.
Based solely on control bounds as before.
10 years ago
Steven Kirk
8aae515130
Removed duplicate TestRoot.
Use the one in Avalonia.UnitTests.
10 years ago
Steven Kirk
ada15eba00
Initial implementation of low-level scene graph.
Whole tree is currently being updated and rendered still though and lots doesn't even build.
10 years ago
Steven Kirk
59c49d259d
Renamed assembly SceneGraph -> Visuals.
To make way for low-level scene graph library.
10 years ago