Previously, `CompiledBindingPathBuilder` didn't have a `TemplatedParent` method and instead the XAML compiler rewrite templated parent bindings to be a `$self.TemplateParent` property binding. resulting in extraneous logs.
Add a constructor with an `apiVersion` to `CompiledBindingPathBuilder` which will be used by newer versions of the XAML compiler, and if a usage is detected using an `apiVersion` of 0, then upgrade `$self.TemplatedParent` to use a `TemplatedParentPathElement`.
- `ExpressionObserver` has been removed and its functionality merged with `BindingExpression`
- `BindingExpression` handles all types of `BindingMode` itself; doesn't require `BindingOperations.Apply` to set up a separate observable for `TwoWay/`OneWayToSource` bindings
- This allows us to fix some long-standing issues with `OneWayToSource` bindings
- Expression nodes have been refactored
- No longer split between `Avalonia.Base` and `Avalonia.Markup`
- Categorize them according to whether they use reflection or not
A few tests are failing around binding warnings: this is because the next step here is to fix binding warnings.
* implement tizen platform, resolve#6110
* Fix enum types of touch event
* Fix issue of touch tracking.
* #6110 fix ui thread lock
* #6110 send keypad from tizen window
* #6110 fix touch update
* #6110 add text editor for input fields
* #6110 Hide text field
* #6110 Fix issue of text selection and backspace
* #6110 support multi and single line for input
* #6110 temporary set multiline true by default.
* #6110 fix issue of build with latest version and make it compatible
* #6110 by pass double input when softkeyboard showing.
* #6110 adding support for clipboard.
* #6110 add permission helper to tizen platform
* #6110 Implementation of storage provider for tizen
* #6110 send text for key character from hard keyboard
* #6110 Complete the input implementation. soft and hard keyboard
* #6110 remove ElmSharp
* Update Permissions.cs
* #6110 remove open folder for tizen
* #6110 fix the issue of keyboard frezee for tizen
* #6110 add workload to build tizen
* #6110 try to setup tizen workloads for windows
* #6110 change tizen workload install to powershell
* #6110 skip api diff check when package not exists
* #6110 try to fix linux pipeline
* #6110 implement tizen native view
* #6110 add dev analyzer and trimming
* #6110 Migrate to GLES and remove framebuffer
* #6110 Temporary solution to make GL work
* #6110 WIP and add comments
* #6110 optimise gles rendering and timing.
* #6110 fix dependency issue of tizen HarfBuzzSharp
* #6110 patch a fix for clipboard issue
* #6110 Support tizen sdk for old proj type, WIP
* #6110 wip setup app
* #6110 support only net6 for tizen
* #6110 resolve comments
---------
Co-authored-by: Kangho Hur <rookiejava+github@gmail.com>
Co-authored-by: Max Katz <maxkatz6@outlook.com>
* Added guards for compositor reentrancy and exposed batch lifetime events
* Use manual continue with since our tests are using some borked sync context
* fix: Avalonia.Generators not found
if you put SourceGenerators.props in a project with path are like this:"C:\GitHub\Avalonia\sample\mobile\android\ANoteSample\ANoteSample.csproj", the Compiler is not able to found `Avalonia.Generators`
* test: Add test #10046 Xaml Compiler error when code-behind class contains a DllImport method
* fix: Xaml Compiler error when code-behind class contains a DllImport method
* fix: Address Review
* fix: ValidateApiDiff has thrown an exception
* Introduce IGlyphTypeface2 and expose TryGetStream
* Move IGlyphTypeface to its own file
* Always copy the font data to a MemoryStream
* Update IGlyphTypeface.cs