Turn "initialization" into a first-class citizen in the mapper.
Nobody has claimed this yet.
- Dominant language
- C#
- Stars
- 23.3k
- Forks
- 2k
- Avg merge
- 1d 14h
- Merged PRs (30d)
- 296
Description
### Description
This [PR](https://github.com/dotnet/maui/pull/3372) introduced the idea of batching changes to reduce JNI calls. One of the current issues with this mechanism is that the initialization step of these Mapper properties is no longer replaceable. If a users replaces a mapper delegate for any of these properties then it will still propagate our logic through the custom JNI method and only update calls will call the user delegate. For the properties that are part of the initial PR we feel like this is going to cause minimal to no headaches but the problem will become more apparent once we start applying this strategy to more specific APIs (i.e. Label.Text, Label.TextColor, etc..)
### (Public) API Changes
### Proposed Ideas
#### Completely replace the SkipList with a mask
https://github.com/dotnet/maui/compare/main...jonathanpeppers:tests-androidbatchpropertymapper
### Usage Scenarios
TBD
### Backward Compatibility
N/A
### Difficulty
Medium
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.