Skip to content
This repository was archived by the owner on Jun 20, 2023. It is now read-only.

Commit 8525b6d

Browse files
authored
Some fixups for Android X (#177)
1 parent c25e624 commit 8525b6d

File tree

39 files changed

+662
-1542
lines changed

39 files changed

+662
-1542
lines changed

source/AndroidXProject.cshtml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,16 @@
1616
<RootNamespace>@(Model.NuGetPackageId.Replace("Xamarin.", ""))</RootNamespace>
1717
<AndroidDexTool>d8</AndroidDexTool>
1818
<AndroidEnableDesugar>true</AndroidEnableDesugar>
19+
<!--
20+
No warnings for:
21+
- CS0618: 'member' is obsolete: 'text'
22+
- CS0109: The member 'member' does not hide an inherited member. The new keyword is not required
23+
- CS0114: 'function1' hides inherited member 'function2'. To make the current method override that implementation, add the override keyword. Otherwise add the new keyword.
24+
- CS0628: 'member' : new protected member declared in sealed class
25+
- CS0108: 'member1' hides inherited member 'member2'. Use the new keyword if hiding was intended.
26+
- CS0809: Obsolete member 'member' overrides non-obsolete member 'member'
27+
-->
28+
<NoWarn>0618;0109;0114;0628;0108;0809</NoWarn>
1929
</PropertyGroup>
2030

2131
<PropertyGroup>

source/Metadata.common.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
<metadata>
2-
<remove-node path="/api/package/class[contains(@name, 'IcsImpl') or contains(@name, 'JellyBeanImpl') or contains(@name, 'JellyBeanMr2Impl') or contains(@name, 'Api16') or contains(@name, 'Api17') or contains(@name, 'Api18') or contains(@name, 'Api19') or contains(@name, 'Api20') or contains(@name, 'Api21') or contains(@name, 'Api22') or contains(@name, 'Api23') or contains(@name, 'Api24') or contains(@name, 'Api25') or contains(@name, 'Api26') or contains(@name, 'Api27') or contains(@name, 'Api28') or contains(@name, 'Api29') or contains(@name, 'Api30') or contains(@name, 'Honeycomb') or contains(@name, 'IceCreamSandwich') or contains(@name, 'Jellybean') or contains(@name, 'KitKat') or contains(@name, 'Lollipop') or contains(@name, 'Marshmallow') or contains(@name, 'Nougat') or contains(@name, 'Oreo') or contains(@name, 'ImplJB') or contains(@name, 'ImplICS') or contains(@name, 'ImplIcs') or contains(@name, 'ImplHC') or contains(@name, 'HcMr1') or contains(@name, 'HcMr2') or contains(@name, 'HcMr3') or contains(@name, 'JbMr2') or contains(@name, 'JbMr2') or contains(@name, 'JbMr1') or contains(@name, 'ICSMr1') or contains(@name, 'ICSMr2') or contains(@name, 'ImplV11') or contains(@name, 'ImplV21')]" />
2+
<remove-node path="/api/package/*[contains(@name, 'IcsImpl') or contains(@name, 'JellyBeanImpl') or contains(@name, 'JellyBeanMr2Impl') or contains(@name, 'Api16') or contains(@name, 'Api17') or contains(@name, 'Api18') or contains(@name, 'Api19') or contains(@name, 'Api20') or contains(@name, 'Api21') or contains(@name, 'Api22') or contains(@name, 'Api23') or contains(@name, 'Api24') or contains(@name, 'Api25') or contains(@name, 'Api26') or contains(@name, 'Api27') or contains(@name, 'Api28') or contains(@name, 'Api29') or contains(@name, 'Api30') or contains(@name, 'Honeycomb') or contains(@name, 'IceCreamSandwich') or contains(@name, 'Jellybean') or contains(@name, 'KitKat') or contains(@name, 'Lollipop') or contains(@name, 'Marshmallow') or contains(@name, 'Nougat') or contains(@name, 'Oreo') or contains(@name, 'ImplJB') or contains(@name, 'ImplICS') or contains(@name, 'ImplIcs') or contains(@name, 'ImplHC') or contains(@name, 'HcMr1') or contains(@name, 'HcMr2') or contains(@name, 'HcMr3') or contains(@name, 'JbMr2') or contains(@name, 'JbMr2') or contains(@name, 'JbMr1') or contains(@name, 'ICSMr1') or contains(@name, 'ICSMr2') or contains(@name, 'ImplV11') or contains(@name, 'ImplV21')]" />
33
</metadata>

source/androidx.appcompat/appcompat/transforms/Metadata.xml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -105,12 +105,12 @@
105105
<attr path="/api/package[@name='androidx.appcompat.app']/interface[@name='ActionBar.OnMenuVisibilityListener']/method[@name='onMenuVisibilityChanged' and count(parameter)=1 and parameter[1][@type='boolean']]/parameter[1]" name="managedName">isVisible</attr>
106106
<attr path="/api/package[@name='androidx.appcompat.app']/interface[@name='ActionBar.OnNavigationListener']/method[@name='onNavigationItemSelected' and count(parameter)=2 and parameter[1][@type='int'] and parameter[2][@type='long']]/parameter[1]" name="managedName">itemPosition</attr>
107107
<attr path="/api/package[@name='androidx.appcompat.app']/interface[@name='ActionBar.OnNavigationListener']/method[@name='onNavigationItemSelected' and count(parameter)=2 and parameter[1][@type='int'] and parameter[2][@type='long']]/parameter[1]" name="managedName">itemId</attr>
108-
<attr path="/api/package[@name='androidx.appcompat.app']/interface[@name='ActionBar.TabListener']/method[@name='onTabReselected' and count(parameter)=2 and parameter[1][@type='androidx.appcompat.app.ActionBar.Tab'] and parameter[2][@type='androidx.core.app.FragmentTransaction']]/parameter[1]" name="managedName">tab</attr>
109-
<attr path="/api/package[@name='androidx.appcompat.app']/interface[@name='ActionBar.TabListener']/method[@name='onTabReselected' and count(parameter)=2 and parameter[1][@type='androidx.appcompat.app.ActionBar.Tab'] and parameter[2][@type='androidx.core.app.FragmentTransaction']]/parameter[2]" name="managedName">ft</attr>
110-
<attr path="/api/package[@name='androidx.appcompat.app']/interface[@name='ActionBar.TabListener']/method[@name='onTabSelected' and count(parameter)=2 and parameter[1][@type='androidx.appcompat.app.ActionBar.Tab'] and parameter[2][@type='androidx.core.app.FragmentTransaction']]/parameter[1]" name="managedName">tab</attr>
111-
<attr path="/api/package[@name='androidx.appcompat.app']/interface[@name='ActionBar.TabListener']/method[@name='onTabSelected' and count(parameter)=2 and parameter[1][@type='androidx.appcompat.app.ActionBar.Tab'] and parameter[2][@type='androidx.core.app.FragmentTransaction']]/parameter[2]" name="managedName">ft</attr>
112-
<attr path="/api/package[@name='androidx.appcompat.app']/interface[@name='ActionBar.TabListener']/method[@name='onTabUnselected' and count(parameter)=2 and parameter[1][@type='androidx.appcompat.app.ActionBar.Tab'] and parameter[2][@type='androidx.core.app.FragmentTransaction']]/parameter[1]" name="managedName">tab</attr>
113-
<attr path="/api/package[@name='androidx.appcompat.app']/interface[@name='ActionBar.TabListener']/method[@name='onTabUnselected' and count(parameter)=2 and parameter[1][@type='androidx.appcompat.app.ActionBar.Tab'] and parameter[2][@type='androidx.core.app.FragmentTransaction']]/parameter[2]" name="managedName">ft</attr>
108+
<attr path="/api/package[@name='androidx.appcompat.app']/interface[@name='ActionBar.TabListener']/method[@name='onTabReselected' and count(parameter)=2 and parameter[1][@type='androidx.appcompat.app.ActionBar.Tab'] and parameter[2][@type='androidx.fragment.app.FragmentTransaction']]/parameter[1]" name="managedName">tab</attr>
109+
<attr path="/api/package[@name='androidx.appcompat.app']/interface[@name='ActionBar.TabListener']/method[@name='onTabReselected' and count(parameter)=2 and parameter[1][@type='androidx.appcompat.app.ActionBar.Tab'] and parameter[2][@type='androidx.fragment.app.FragmentTransaction']]/parameter[2]" name="managedName">ft</attr>
110+
<attr path="/api/package[@name='androidx.appcompat.app']/interface[@name='ActionBar.TabListener']/method[@name='onTabSelected' and count(parameter)=2 and parameter[1][@type='androidx.appcompat.app.ActionBar.Tab'] and parameter[2][@type='androidx.fragment.app.FragmentTransaction']]/parameter[1]" name="managedName">tab</attr>
111+
<attr path="/api/package[@name='androidx.appcompat.app']/interface[@name='ActionBar.TabListener']/method[@name='onTabSelected' and count(parameter)=2 and parameter[1][@type='androidx.appcompat.app.ActionBar.Tab'] and parameter[2][@type='androidx.fragment.app.FragmentTransaction']]/parameter[2]" name="managedName">ft</attr>
112+
<attr path="/api/package[@name='androidx.appcompat.app']/interface[@name='ActionBar.TabListener']/method[@name='onTabUnselected' and count(parameter)=2 and parameter[1][@type='androidx.appcompat.app.ActionBar.Tab'] and parameter[2][@type='androidx.fragment.app.FragmentTransaction']]/parameter[1]" name="managedName">tab</attr>
113+
<attr path="/api/package[@name='androidx.appcompat.app']/interface[@name='ActionBar.TabListener']/method[@name='onTabUnselected' and count(parameter)=2 and parameter[1][@type='androidx.appcompat.app.ActionBar.Tab'] and parameter[2][@type='androidx.fragment.app.FragmentTransaction']]/parameter[2]" name="managedName">ft</attr>
114114
<attr path="/api/package[@name='androidx.appcompat.widget']/interface[@name='ActionMenuView.OnMenuItemClickListener']/method[@name='onMenuItemClick' and count(parameter)=1 and parameter[1][@type='android.view.MenuItem']]/parameter[1]" name="managedName">item</attr>
115115
<attr path="/api/package[@name='androidx.appcompat.widget']/interface[@name='PopupMenu.OnDismissListener']/method[@name='onDismiss' and count(parameter)=1 and parameter[1][@type='androidx.appcompat.widget.PopupMenu']]/parameter[1]" name="managedName">menu</attr>
116116
<attr path="/api/package[@name='androidx.appcompat.widget']/interface[@name='PopupMenu.OnMenuItemClickListener']/method[@name='onMenuItemClick' and count(parameter)=1 and parameter[1][@type='android.view.MenuItem']]/parameter[1]" name="managedName">item</attr>
Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1,5 @@
1-
<metadata></metadata>
1+
<metadata>
2+
<attr path="/api/package[@name='androidx.asynclayoutinflater.view']/interface[@name='AsyncLayoutInflater.OnInflateFinishedListener']/method[@name='onInflateFinished' and count(parameter)=3 and parameter[1][@type='android.view.View'] and parameter[2][@type='int'] and parameter[3][@type='android.view.ViewGroup']]/parameter[1]" name="managedName">view</attr>
3+
<attr path="/api/package[@name='androidx.asynclayoutinflater.view']/interface[@name='AsyncLayoutInflater.OnInflateFinishedListener']/method[@name='onInflateFinished' and count(parameter)=3 and parameter[1][@type='android.view.View'] and parameter[2][@type='int'] and parameter[3][@type='android.view.ViewGroup']]/parameter[2]" name="managedName">resid</attr>
4+
<attr path="/api/package[@name='androidx.asynclayoutinflater.view']/interface[@name='AsyncLayoutInflater.OnInflateFinishedListener']/method[@name='onInflateFinished' and count(parameter)=3 and parameter[1][@type='android.view.View'] and parameter[2][@type='int'] and parameter[3][@type='android.view.ViewGroup']]/parameter[3]" name="managedName">parent</attr>
5+
</metadata>
Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1 @@
1-
<metadata>
2-
<attr path="/api/package[@name='androidx.customview.view']/interface[@name='AsyncLayoutInflater.OnInflateFinishedListener']/method[@name='onInflateFinished' and count(parameter)=3 and parameter[1][@type='android.view.View'] and parameter[2][@type='int'] and parameter[3][@type='android.view.ViewGroup']]/parameter[1]" name="managedName">view</attr>
3-
<attr path="/api/package[@name='androidx.customview.view']/interface[@name='AsyncLayoutInflater.OnInflateFinishedListener']/method[@name='onInflateFinished' and count(parameter)=3 and parameter[1][@type='android.view.View'] and parameter[2][@type='int'] and parameter[3][@type='android.view.ViewGroup']]/parameter[2]" name="managedName">resid</attr>
4-
<attr path="/api/package[@name='androidx.customview.view']/interface[@name='AsyncLayoutInflater.OnInflateFinishedListener']/method[@name='onInflateFinished' and count(parameter)=3 and parameter[1][@type='android.view.View'] and parameter[2][@type='int'] and parameter[3][@type='android.view.ViewGroup']]/parameter[3]" name="managedName">parent</attr>
5-
</metadata>
1+
<metadata></metadata>

source/androidx.constraintlayout/constraintlayout-solver/Transforms/Metadata.Namespaces.xml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@
77
Package
88
</attr>
99
-->
10-
<attr path="/api/package[@name='androidx.constraintlayout.widget']" name="managedName">AndroidX.ConstraintLayout.Widget</attr>
1110
<attr path="/api/package[@name='androidx.constraintlayout.solver']" name="managedName">AndroidX.ConstraintLayout.Solver</attr>
1211
<attr path="/api/package[@name='androidx.constraintlayout.solver.widgets']" name="managedName">AndroidX.ConstraintLayout.Solver.Widgets</attr>
1312
</metadata>
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
<metadata>
2+
<attr path="/api/package[@name='androidx.constraintlayout.solver.widgets']/class[@name='ConstraintAnchor']/method[@name='getType' and count(parameter)=0]" name="managedName">GetAnchorType</attr>
3+
4+
<attr path="/api/package[@name='androidx.constraintlayout.solver.widgets']/class[@name='Guideline']/field[@name='RELATIVE_END']" name="managedName">RELATIVE_END</attr>
5+
<attr path="/api/package[@name='androidx.constraintlayout.solver.widgets']/class[@name='Guideline']/field[@name='RELATIVE_BEGIN']" name="managedName">RELATIVE_BEGIN</attr>
6+
<attr path="/api/package[@name='androidx.constraintlayout.solver.widgets']/class[@name='Guideline']/field[@name='RELATIVE_PERCENT']" name="managedName">RELATIVE_PERCENT</attr>
7+
<!-- Yes, google typo'd this, we'll fix it, and eventually they probably will too -->
8+
<attr path="/api/package[@name='androidx.constraintlayout.solver.widgets']/class[@name='Guideline']/field[@name='RELATIVE_UNKNWON']" name="managedName">RELATIVE_UNKNOWN</attr>
9+
<attr path="/api/package[@name='androidx.constraintlayout.solver.widgets']/class[@name='Guideline']/field[@name='VERTICAL']" name="managedName">VERTICAL</attr>
10+
<attr path="/api/package[@name='androidx.constraintlayout.solver.widgets']/class[@name='Guideline']/field[@name='HORIZONTAL']" name="managedName">HORIZONTAL</attr>
11+
</metadata>
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
using System;
2+
using System.Collections.Generic;
3+
using Android.Runtime;
4+
5+
namespace AndroidX.ConstraintLayout.Solver.Widgets
6+
{
7+
public partial class ConstraintWidget
8+
{
9+
[Obsolete("Use MNextChainWidget instead.")]
10+
protected IList<ConstraintWidget> MListNextVisibleWidget
11+
{
12+
get => MNextChainWidget;
13+
set => MNextChainWidget = value;
14+
}
15+
}
16+
}
Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1 @@
1-
<enum-method-mappings>
2-
<mapping jni-class="androidx/coordinatorlayout/widget/CoordinatorLayout">
3-
<method jni-name="setVisibility" parameter="visibility" clr-enum-type="Android.Views.ViewStates" />
4-
</mapping>
5-
</enum-method-mappings>
1+
<enum-method-mappings></enum-method-mappings>
Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,11 @@
11
<metadata>
2+
<!--
3+
Sad, but for backwards compatibility, we need to use Object
4+
We could create a generic (like java) and then derive from the Object one, but for now just use Object
5+
<attr path="//parameter[@type='V']" name="type">android.view.View</attr>
6+
-->
27
<attr path="/api/package[@name='androidx.coordinatorlayout.widget']/class[@name='CoordinatorLayout.ViewElevationComparator']/method[@name='compare' and count(parameter)=2 and parameter[1][@type='android.view.View'] and parameter[2][@type='android.view.View']]/parameter[1]" name="managedType">Java.Lang.Object</attr>
38
<attr path="/api/package[@name='androidx.coordinatorlayout.widget']/class[@name='CoordinatorLayout.ViewElevationComparator']/method[@name='compare' and count(parameter)=2 and parameter[1][@type='android.view.View'] and parameter[2][@type='android.view.View']]/parameter[2]" name="managedType">Java.Lang.Object</attr>
9+
410
<attr path="/api/package[@name='androidx.coordinatorlayout.widget']/interface[@name='CoordinatorLayout.AttachedBehavior']/method[@name='getBehavior']" name="propertyName"></attr>
5-
<attr path="//parameter[@type='V']" name="type">android.view.View</attr>
611
</metadata>

0 commit comments

Comments
 (0)