* Skia - Only reverse radial gradient stops if we cover the whole content bounds
* Skia - Only reverse radial gradient stops if we reach cover the whole content bounds
* Add some new lines
* Start working on Android explore by touch
* Start working on a more serious solution
* Reflectionless approach
* Allow multiple providers to be defined for the same AutomationPeer instance
* Implement EmbeddableControlRootAutomationPeer
* Garbage collection
* It's working!!
* Get better readouts
* Implement rest of providers and improve performance
* Some cleanup for the PR!
* Whoopsie!
* Better text readouts for more descriptive elements
* Fix bug with previous approach
* Some final tweaks
* Last tweak!
* Slight improvements
* Undo last change
* Fix bug where custom provider types would not be registered
* Better TextBox compatibility with screen readers & TalkBack
* Fix regression for LabeledBy tests
* Clean up provider code
* Final batch of fixes for TextBox behavior
* Append text instead of replacing it to fix buggy screen readers
* Even more fixes for buggy screen readers
* Remove english-specific state descriptions
* Code review improvements
---------
Co-authored-by: Jumar Macato <16554748+jmacato@users.noreply.github.com>
* Add failing tests for OneTime and null data context bindings
* Made OneTime bindings update on DataContext changes
Also allows null as a valid value for bindings without path
* Remove now obsolete test
* Ignore key modifiers on text editing if field is a password field.
It's not secure to rely on password field content when moving. It's should
give no information what so ever.
* Required changes
The modality of a window is decided at the time it is shown, and indicated by the `isDialog` parameter to `WindowImpl::Show`.
The code was also rather confusing in that `_isModal` was defined in `WindowBaseImpl` but `WindowBaseImpl.IsModal` always returned false. `WindowImpl.IsModal` then overrode `IsModal` to return WindowBaseImpl._isModal. That's messed up. Just define `_isModal` in `WindowImpl` not `WindowBaseImpl`.
* Fix BiDi algorithm and tests
* More adjustments
* Add EastAsianWidth trie and class
* Start implementing Unicode v15.1 Standard Annex #14
* Update Unicode data to V15.1 and initial Unicode® Standard Annex #14 implementation
* Some adjustments
* More fixes
* 543 to go
* 273 to go
* Almost done
* Finish up line breaker
* Some adjustments
* Tokenizer returns a ReadOnly Span instead of a string.
* Returning the old property for no API break changes
---------
Co-authored-by: Meloman19 <23280622+Meloman19@users.noreply.github.com>
* fix: add missing ref keyword to CombinedSpan3.CopyFromSpan
* fix: fix incorrect indent in IUITextInput.TextInRange and boundary condition for surroundingText
---------
Co-authored-by: Max Katz <maxkatz6@outlook.com>
* Add failing test for TextBlock
* Fix TextBlock re-measure in infinite container
* Fix outdated test
---------
Co-authored-by: Max Katz <maxkatz6@outlook.com>
* Added BuildTests projects
* Added VerifyXamlCompilation build target
* Use TargetsTriggerByCompilation for XAML compilation
* Add *.binlog to gitignore
* VerifyXamlCompilation target: set NuGetPackageRoot
* Ensure WpfHybrid build test uses two markup compilation passes
* Fail build tests restore immediately if AvaloniaVersion isn't set
* Fix "could not extract MVID" for up-to-date builds
* Run VerifyXamlCompilation on CI
* Add FSharp build test