Skip to content

Commit eb0e85d

Browse files
authored
Expose private nested types that are exposed in public API. (#316)
In Xamarin.Android we fixed an issue where private nested classes were getting unintentionally bound. However, thanks to Java's lax rules regarding visibility, you can reference those classes in public API. C# does not allow you to do this, so you need to expose the class as public so it will be bound and thus usable. This updates 2 samples that were relying on exposing private nested classes to explicitly mark then as public via metadata.
1 parent 7bad1e2 commit eb0e85d

File tree

2 files changed

+3
-0
lines changed
  • OsmDroidBindingExample/OsmDroidBinding/Transforms
  • android5.0/GoogleIO2014Master/AndroidSvg/Transforms

2 files changed

+3
-0
lines changed

OsmDroidBindingExample/OsmDroidBinding/Transforms/Metadata.xml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,8 @@
2323
<attr path="/api/package[@name='org.osmdroid.tileprovider']/class[@name='MapTileProviderBase.ScaleTileLooper']/method[@name='handleTile']" name="visibility">public</attr>
2424
<attr path="/api/package[@name='org.osmdroid.tileprovider']/class[@name='MapTileProviderBase.ZoomInTileLooper']/method[@name='handleTile']" name="visibility">public</attr>
2525
<attr path="/api/package[@name='org.osmdroid.tileprovider']/class[@name='MapTileProviderBase.ZoomOutTileLooper']/method[@name='handleTile']" name="visibility">public</attr>
26+
<attr path="/api/package[@name='org.osmdroid.views']/class[@name='MapControllerOld.CosinusalBasedAnimationRunner']" name="visibility">public</attr>
27+
<attr path="/api/package[@name='org.osmdroid.events']/class[@name='DelayedMapListener.CallbackTask']" name="visibility">public</attr>
2628
<!-- Draw() seems to be public for android so we need to be consistent about it. C# doesn't like to mix visibility during inheritance. -->
2729
<attr path="/api/package[@name='org.osmdroid.views.overlay']/class[@name='Overlay']/method[@name='draw']" name="visibility">public</attr>
2830
<attr path="/api/package[@name='org.osmdroid.views.overlay']/class[@name='TilesOverlay']/method[@name='draw']" name="visibility">public</attr>

android5.0/GoogleIO2014Master/AndroidSvg/Transforms/Metadata.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,5 +27,6 @@
2727
<attr path="/api/package[@name='com.caverock.androidsvg']/class[@name='SVG.TextContainer']" name="visibility">public</attr>
2828
<attr path="/api/package[@name='com.caverock.androidsvg']/class[@name='SVG.SvgConditionalContainer']" name="visibility">public</attr>
2929
<attr path="/api/package[@name='com.caverock.androidsvg']/class[@name='SVG.SvgElement']" name="visibility">public</attr>
30+
<attr path="/api/package[@name='com.caverock.androidsvg']/class[@name='CSSParser.AttribOp']" name="visibility">public</attr>
3031

3132
</metadata>

0 commit comments

Comments
 (0)