* Fix ClassBindingManager property dictionary insert
* Prepend ClassPropertyPrefix to key when inserting into registered properties dictionary to be consistent with lookup.
* Added ClassBindingManager unit tests
* remove margin deflation in BringDescendantIntoView and update related test to test cases with margin and no margin
* create transform relative to presenter, instead of child.
* update tests
* fix tests
* Add unit test for all color format Brush parsing
* Support parsing all known color formats in Brush.Parse()
* Update property syntax
* Remove unnecessary usings
* Use an actual hex color
* Fix new brush test
* Switch order of brush parsing so known color optimizations are used
* Add more documentation comments to KnownColors
* Fix displayed text in BorderPage
InnerBorderEdge not InnerBorder
* Do not treat spacing combining marks as whitespace
* Do not treat combining marks as whitespace
Try to find a matching typeface on a grapheme boundary
* Add embedded font for testing
* Remove using
* Fix naming and remove redundant code
* Apply default until we reach the next base character
* Feat: Add unit test for RelativePanel.
The ScrollViewer's scrollbar does not display correctly.
* Fix: RelativePanel calculation error
The ScrollViewer's scrollbar does not display correctly.
* - Adjusts the overhang calculation so it matches what WPF produces
- Fixes baseline alignment for inline controls
* Adjust OverhangTrailing
Add unit test
* Only run overhang unit test on Windows
* Added failing test for OSXThickTitleBar single title area click produce double click #19320
* Fixed OSXThickTitleBar title area click duplication and event delays until the event-tracking-loop is completed
* IntegrationTestApp. Move event counter controls to a separate column. Fixes Changing_Size_Should_Not_Change_Position test
* Move pointer tests to Default group to avoid interference
* Try to fix CI crash
* Try disabling test
* Fix CI test. Collection back to Default
* CI fix. Return back empty test.
* CI fix. Minimal bug test
* CI test. Add double click test
* CI fix. Remove double click test.
---------
Co-authored-by: Julien Lebosquain <julien@lebosquain.net>
* Capture ExecutionContext for Dispatcher.InvokeAsync
(cherry picked from commit e41c9272ac45afc31007a8fe26f9f56291b063ef)
* Implement CulturePreservingExecutionContext
* Add IsFlowSuppressed checking
* Add NET6_0_OR_GREATER because only the Restore need it.
* Use `ExecutionContext.Run` instead of `ExecutionContext.Restore`.
* Pass this to avoid lambda capture.
* Use ExecutionContext directly on NET6_0_OR_GREATER
* on NET6_0_OR_GREATER, use Restore so we can get a simple stack trace.
* Add unit tests.
* All test code must run inside Task.Run to avoid interfering with the test
* First, test Task.Run to ensure that the preceding validation always passes, serving as a baseline for the subsequent Invoke/InvokeAsync tests.
This way, if a later test fails, we have the .NET framework's baseline behavior for reference.
* Add AnalyzerProject.targets targets
* PrivateAssets on Workspaces.Common
* Migrate AvaloniaNameSourceGenerator to IIncrementalGenerator
* Remove outdated lins in the generator readme
* Add GlobPattern.ToString
* Fix tests
* Formatting
* Redo pipeline, make steps more independent from each other, compilation should be reused between dependency changes
* Split XAML parsing and type resolution into separated steps
* Restore CompilationReferencesComparer usage
* Revert "Restore CompilationReferencesComparer usage"
This reverts commit c51341990b.
* Split ResolvedNamesProvider pipeline step, process files in parallel
* Add comment
* Switch back to EquatableList
* Add cancellation to the incremenetal source gen
* Rethrow cancellation exception
* xml documentatation for paragraph properties
* TextTestApp
* text test files renamed parameter
* glyph ink bounds
* shaped buffer make selected row visible
* text test app force light theme
* text test app distinguish start and end distance marks
---------
Co-authored-by: Jan Kučera <miloush@users.noreply.github.com>
Co-authored-by: Benedikt Stebner <Gillibald@users.noreply.github.com>
Co-authored-by: Julien Lebosquain <julien@lebosquain.net>
* add a failing unit test for issue #19457
* fix#19457 by invalidating the pointerReleased subscription when DisplayMode changes.
* [SplitView] ensure we always set _pointerDisposable to null when disposing.
* Add CanMinimize and CanMaximize to Window
* Win32 impl for CanMinimize/CanMaximize
* Add CanResize/CanMinimize/CanMaximize samples to control catalog
* X11 impl for CanMinimize/CanMaximize
* macOS impl for CanMinimize/CanMaximize
* Win32: don't allow restore when the window isn't resizable
* Additional documentation for CanMinimize/CanMaximize
* Add CanMinimize/CanMaximize logic to CaptionButtons
* Use START_COM_ARP_CALL
* Added CanMinimize/CanMaximize integration tests
* Fixed CanMaximize tests on macOS
* Added NuGet package creation docs.
Moved the information about creating local NuGet packages from the general build instructions into its own document, and tried to flesh out the information in there.
* Restore the link.
As suggested in PR review.
---------
Co-authored-by: Julien Lebosquain <julien@lebosquain.net>
* Get parent Grid when its used in ItemsControl as ItemsPanel
* Get properties values from ContentPresenter if its used in ItemsControl
* Add unit tests
* Move test types
* Adjust GetParentGrid switch and expose helper methods for override
Fixed obscure cases where NullReferenceException could be thrown if a template hasn't been applied yet, or where it provides only some optional items
Replaced repeated string literals with shared const values
Relaxed template part requirements: RepeatButton to Button, Rectancle to Control