Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[Mono.Android] AccessibilityNodeInfo.AddAction(AccessibilityAction) (#…
…5391) Fixes: #5368 Context: xamarin/monodroid@ccf348b The class [`AccessibilityNodeInfo`][0] has the following methods: /* partial */ class AccessibilityNodeInfo { // Added in API-14, deprecated in API-21 public void addAction (int action); // Added in API-21 public void addAction (AccessibilityNodeInfo.AccessibilityAction action) } We were converting the `int action` to an enum using `methodmap.csv`: 0, android.view.accessibility, AccessibilityNodeInfo, addAction, action, Android.Views.Accessibility.Action However this mechanism does not specify parameter types, so both `addAction()` methods were getting their parameter enum-ified: public void AddAction (Android.Views.Accessibility.Action action) public void AddAction (Android.Views.Accessibility.Action action) This isn't allowed, so we disabled binding the new overload to allow `Mono.Android` to build. In order to properly bind the new overload, *remove* the entry from `methodmap.csv` and add the specification directly to `metadata`, where the `path` can be made more specific to only affect a single method, allowing the new method to be bound with its original parameter type. This results in: public void AddAction (Android.Views.Accessibility.Action action) public void AddAction (AccessibilityNodeInfo.AccessibilityAction action) [0]: https://developer.android.com/reference/android/view/accessibility/AccessibilityNodeInfo
- Loading branch information