Max Katz
5f7818fa08
Fix DirectBindingSubscription NRE
4 years ago
Steven Kirk
f9dbbb3da1
Make UpdateDataValidation non-generic.
4 years ago
Steven Kirk
d42a936478
Remove virtual generic methods from ValueStore.
4 years ago
Steven Kirk
f8706278a8
Make OnPropertyChanged non-generic.
4 years ago
Steven Kirk
5763a914fe
Remove generics from IAvaloniaObject.
4 years ago
Steven Kirk
76667dbd0d
Finished adding nullable annotations to Avalonia.Base.
4 years ago
Steven Kirk
0bda763518
Added nullable annotations to Avalonia.Data. ( #7105 )
* Added nullable annotations to Avalonia.Data.
* ExpressionObserver root can be null.
4 years ago
Steven Kirk
dc3415c090
Nullable annotations for AvaloniaObject/AvaloniaProperty etc. ( #7078 )
* Add nullable annotations...
...to `AvaloniaObject`/`AvaloniaProperty`-related classes and a few other uncontroversial files.
* Check for null before first use.
* Don't need this check as base class does it.
4 years ago
Miha Markič
97c33f432a
Applies spell checking on mostly comments, but also non public members and arguments
5 years ago
Max Katz
4f82d510c5
Enable AvaloniaObject nullablity
5 years ago
Steven Kirk
0f238113f5
Implement batching for AvaloniaObject property values.
Cuts down the amount of notifications raised when controls' stying is attached/detached.
Part of fixing #5027 .
6 years ago
Yoh Deadfall
146bb635da
Removed redundant cast
6 years ago
Steven Kirk
37bd384794
Use EnabledDataValidation from metadata.
`DirectProperty` stored a `EnabledDataValidation` flag in its metadata but also had an `IsDataValidationEnabled` property in `DirectPropertyBase` which was the one used by `AvaloniaObject`. Use the version from metadata so that it can be overridden and remove the flag from `DirectPropertyBase`.
6 years ago
Steven Kirk
036a00f53d
Use correctly log area.
6 years ago
Steven Kirk
479d480ad9
Parameterize logger on area as well as level.
So we can filter our more logging calls early.
6 years ago
Steven Kirk
c872cc005d
Only call property notify on effective value change.
6 years ago
Steven Kirk
4a752c3f48
Get non-animated change information.
- Pass information for all property changes to `OnPropertyChangedCore`; whether they result in an effective value change or not
- Added `GetBaseValue` to get a value with a specified priority
- Change the signature of `OnPropertyChanged` again to take an `AvaloniaPropertyChangedEventArgs<T>`
6 years ago
Steven Kirk
4d01dacd77
Remove copyright headers.
Some of our files had them, some didn't. They serve no purpose legally so best to remove the ceremony.
6 years ago
Dariusz Komosinski
dc93d14a1b
Return IReadOnlyList from most of the AvaloniaPropertyRegistry calls so users are not forced into allocating enumerators.
6 years ago
Steven Kirk
2e99fa9a91
Make setting styled values disposable.
6 years ago
Steven Kirk
edc8bece4e
Raised property changed when binding completes.
Fixes #3545
6 years ago
Steven Kirk
00c1c35125
Go direct to property store.
To avoid a call to `VerifyAccess` (which shows up when profiling).
6 years ago
Steven Kirk
685f3f7b6e
Fix typos.
6 years ago
Steven Kirk
47368017a7
Remove unused methods.
6 years ago
Steven Kirk
42bbb5e518
Removed unused methods.
6 years ago
Steven Kirk
35bd69f23c
Remove AvaloniaProperty.Initialized.
It was only needed for pseudoclasses. Move pseudoclass registration to an engine that doesn't require `AvaloniaProperty.Initialized`, implemented in `PseudoclassEngine`.
7 years ago
Steven Kirk
0f04f4d01a
Add WPF-style property coercion.
7 years ago
Steven Kirk
6ddc953103
Implement diagnostic API.
Doesn't actually fill in the "details" property for styled properties because this API is going to change shortly with the new devtools.
7 years ago
Steven Kirk
b8717bf6dc
Tidy up API.
7 years ago
Steven Kirk
6be3acb46c
Make ValueStore typed.
Major refactor of the Avalonia core to make the styled property store typed.
7 years ago
Dariusz Komosinski
d0d4bec96b
Remove expensive Contract calls from the hot path.
7 years ago
Dariusz Komosinski
d2dbc12ee8
Final review fixes.
7 years ago
Dariusz Komosinski
5814bd7163
Remove direct logging functions.
7 years ago
Dariusz Komosinski
1f69340452
Cleanup.
7 years ago
Dariusz Komosinski
068b73750b
Cleanup conditional logging API.
7 years ago
Dariusz Komosinski
01a404836e
Reduce allocations caused by logging.
7 years ago
ahopper
3dddb56982
add space after while
7 years ago
ahopper
112484d7e4
reduce allocation, cache Inherited props,remove duplicate events
7 years ago
ahopper
26b1320971
reduce repeated field access
7 years ago
ahopper
4d8973226d
unbreak lazy initialization of Values
7 years ago
ahopper
77d9ae1cac
change UnChecked suffix to Unchecked
7 years ago
ahopper
e8ba46160d
UnChecked suffix fixed
7 years ago
ahopper
ebccccb8e4
add UnChecked suffix
7 years ago
ahopper
b376313acf
speed up GetValue and GetDefaultValue
7 years ago
Steven Kirk
4f40082fad
Disallow overriding Equals and GetHashCode.
On `AvaloniaObject`s.
7 years ago
Dariusz Komosinski
ad994a685c
Fix PriorityValue usage of DeferredSetter. Implement slower path in DeferredSetter that deals with callbacks.
7 years ago
Dariusz Komosinski
48be9dc260
Remove old DeferredSetter implementation. Cleanup code, add license info.
7 years ago
Dariusz Komosinski
812c5f30c9
Remove SetAndRaise callback handling. Move event raising to setter.
7 years ago
Dariusz Komosinski
24f208bab1
!R Rework deferred setter for better performance.
7 years ago
Steven Kirk
6961d55e7a
Only log binding errors when attached to a tree.
7 years ago