Steven Kirk
a967c9bf82
Make DPI scaling work again.
10 years ago
Steven Kirk
932f489faa
Use the Direct2D 1.1 render target initialization.
To prevent D2D from auto-stretching our render target to the window size
(which causes problems now we're multi-threaded) we have to move to the
D2D1.1 render target initialization. I used the info here to work out
how to do this:
https://katyscode.wordpress.com/2013/01/23/migrating-existing-direct2d-applications-to-use-direct2d-1-1-functionality-in-windows-7/
- it's not exactly simple!
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
349ba78931
Fixed pointerover state.
And added a test for it.
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
458007a106
Updated libs with API changes.
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
Jeremy Koritzinsky
26e60f9935
Moved failing test into LeakTests because it depends on runtime implementation details to pass.
10 years ago
Jeremy Koritzinsky
428229e9b0
Optimized the "zero wait time" path in the scheduler and updated the code to always use a scheduler, either the ImmediateScheduler (same as the old default behavior) or the registered scheduler.
10 years ago
Jeremy Koritzinsky
6da1d620c9
Added test to ensure that the IObservable subscription is on the AvaloniaScheduler when the AvaloniaScheduler is bound in the AvaloniaLocator.
10 years ago
Steven Kirk
b28fffc3f8
Coerce TextBox.CaretIndex when setting Text.
Fixes #728 .
10 years ago
Steven Kirk
59c49d259d
Renamed assembly SceneGraph -> Visuals.
To make way for low-level scene graph library.
10 years ago
Steven Kirk
e54ac6b5bf
Fixed name of method.
It's creating a render target, not a renderer.
10 years ago
Steven Kirk
00f3ca78ba
FIx control leak tests.
10 years ago
Wiesław Šoltés
1992c518b1
Remove SkiaSharp package from test project
10 years ago
Wiesław Šoltés
1291ffff83
Set ShouldIncludeNativeSkiaSharp flag
10 years ago
Wiesław Šoltés
e21e15a036
Added SkiaSharp package to test project
10 years ago
Dan Walmsley
ce0d936cd2
Copy skiasharp native dlls to allow unit tests to run.
10 years ago
Steven Kirk
85f07274d4
Fixed failing test.
10 years ago
Steven Kirk
1b4ebf5b1d
Renamed AsBinding -> ToBinding.
10 years ago
Steven Kirk
715149b1f5
Improve stream operator error message.
When a stream operator is applied to an unsupported type.
10 years ago
Steven Kirk
0ddf4caa95
Added a "stream" binding expression operator.
Which is now required when wanting to get the value produced by a
Task/IObservable rather than the Task/IObservable itself. Fixes #711 .
10 years ago
Steven Kirk
7067fa0146
Cross-axis scrolling for virtualized lists.
There are still a few bugs around scrollbar behavior, and maybe Grid. To
see them, add a long item in the middle of VirtualizationTest's items,
resize the window to require a scrollbar and scroll up and down.
10 years ago
AndrewSt
7872b6e2bf
Fix typo in TextBoxTest.cs
10 years ago
AndrewSt
fc6115735e
Add unit test check Ctrl+A, Ctrl+Z
10 years ago
Steven Kirk
b2141da430
Forgot to save .csproj.
10 years ago
Steven Kirk
f15a136e00
Throw an exception if FontWeight <= 0
In FormattedText. Fixes #700 .
10 years ago
Steven Kirk
dd29966f20
Run certain tests in invariant culture.
Fixes #718 .
10 years ago
Steven Kirk
61393d8b22
Removed some more unused variables.
10 years ago
Steven Kirk
1b32a6aac3
Fixed unused member warnings.
That only show up on mono: seems the standard C# compiler silently
ignores most of these.
10 years ago
Steven Kirk
7eb939dbce
Don't run interactivity tests in paralell.
10 years ago
Steven Kirk
ca17c50bf4
Treat warnings as errors.
In Release build in main Avalonia assemblies (couldn't do it in
Avalonia.Markup.Xaml due to warnings in OmniXaml). To do this, fixed a
number of warnings.
10 years ago
Steven Kirk
6afa000c42
Added a render loop.
Rather than repainting whenever, this adds a render loop which is called
N times per second. IRenderQueueManager and ITopLevelRenderer have been
removed, replaced by IRenderer.
10 years ago