mirror of
https://github.com/moparisthebest/android_external_GmsApi
synced 2024-11-23 17:22:19 -05:00
Full Tile support in Api
This commit is contained in:
parent
c7e910af4b
commit
8ab6a25cfd
@ -37,11 +37,8 @@ public class MarkerOptions implements SafeParcelable {
|
|||||||
* This is a IBinder to the remote BitmapDescriptor created using BitmapDescriptorFactory
|
* This is a IBinder to the remote BitmapDescriptor created using BitmapDescriptorFactory
|
||||||
*/
|
*/
|
||||||
@SafeParceled(5)
|
@SafeParceled(5)
|
||||||
private IBinder icon;
|
private IBinder iconBinder;
|
||||||
/**
|
private BitmapDescriptor icon;
|
||||||
* The real BitmapDescriptor. Not transferred through Parcel.
|
|
||||||
*/
|
|
||||||
private BitmapDescriptor iconDescriptor;
|
|
||||||
@SafeParceled(6)
|
@SafeParceled(6)
|
||||||
private float anchorU = 0.5F;
|
private float anchorU = 0.5F;
|
||||||
@SafeParceled(7)
|
@SafeParceled(7)
|
||||||
@ -167,10 +164,10 @@ public class MarkerOptions implements SafeParcelable {
|
|||||||
* custom icon is set.
|
* custom icon is set.
|
||||||
*/
|
*/
|
||||||
public BitmapDescriptor getIcon() {
|
public BitmapDescriptor getIcon() {
|
||||||
if (iconDescriptor == null && icon != null) {
|
if (icon == null && iconBinder != null) {
|
||||||
iconDescriptor = new BitmapDescriptor(ObjectWrapper.asInterface(icon));
|
icon = new BitmapDescriptor(ObjectWrapper.asInterface(iconBinder));
|
||||||
}
|
}
|
||||||
return iconDescriptor;
|
return icon;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -234,8 +231,8 @@ public class MarkerOptions implements SafeParcelable {
|
|||||||
* @return the object for which the method was called, with the new icon set.
|
* @return the object for which the method was called, with the new icon set.
|
||||||
*/
|
*/
|
||||||
public MarkerOptions icon(BitmapDescriptor icon) {
|
public MarkerOptions icon(BitmapDescriptor icon) {
|
||||||
this.iconDescriptor = icon;
|
this.icon = icon;
|
||||||
this.icon = icon == null ? null : icon.getRemoteObject().asBinder();
|
this.iconBinder = icon == null ? null : icon.getRemoteObject().asBinder();
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
3
src/com/google/android/gms/maps/model/Tile.aidl
Normal file
3
src/com/google/android/gms/maps/model/Tile.aidl
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
package com.google.android.gms.maps.model;
|
||||||
|
|
||||||
|
parcelable Tile;
|
@ -16,19 +16,33 @@
|
|||||||
|
|
||||||
package com.google.android.gms.maps.model;
|
package com.google.android.gms.maps.model;
|
||||||
|
|
||||||
|
import android.os.IBinder;
|
||||||
import android.os.Parcel;
|
import android.os.Parcel;
|
||||||
|
import android.os.RemoteException;
|
||||||
|
import com.google.android.gms.maps.model.internal.ITileProviderDelegate;
|
||||||
import org.microg.safeparcel.SafeParcelUtil;
|
import org.microg.safeparcel.SafeParcelUtil;
|
||||||
import org.microg.safeparcel.SafeParcelable;
|
import org.microg.safeparcel.SafeParcelable;
|
||||||
|
import org.microg.safeparcel.SafeParceled;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Defines options for a TileOverlay.
|
* Defines options for a TileOverlay.
|
||||||
*/
|
*/
|
||||||
public class TileOverlayOptions implements SafeParcelable {
|
public class TileOverlayOptions implements SafeParcelable {
|
||||||
|
|
||||||
|
@SafeParceled(1)
|
||||||
|
private final int versionCode = 1;
|
||||||
|
/**
|
||||||
|
* This is a IBinder to the {@link #tileProvider}, built using {@link ITileProviderDelegate}.
|
||||||
|
*/
|
||||||
|
@SafeParceled(2)
|
||||||
|
private IBinder tileProviderBinder;
|
||||||
private TileProvider tileProvider;
|
private TileProvider tileProvider;
|
||||||
|
@SafeParceled(3)
|
||||||
private boolean visible = true;
|
private boolean visible = true;
|
||||||
private boolean fadeIn = true;
|
@SafeParceled(4)
|
||||||
private float zIndex;
|
private float zIndex;
|
||||||
|
@SafeParceled(5)
|
||||||
|
private boolean fadeIn = true;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Creates a new set of tile overlay options.
|
* Creates a new set of tile overlay options.
|
||||||
@ -97,8 +111,14 @@ public class TileOverlayOptions implements SafeParcelable {
|
|||||||
* @param tileProvider the {@link TileProvider} to use for this tile overlay.
|
* @param tileProvider the {@link TileProvider} to use for this tile overlay.
|
||||||
* @return the object for which the method was called, with the new tile provider set.
|
* @return the object for which the method was called, with the new tile provider set.
|
||||||
*/
|
*/
|
||||||
public TileOverlayOptions tileProvider(TileProvider tileProvider) {
|
public TileOverlayOptions tileProvider(final TileProvider tileProvider) {
|
||||||
this.tileProvider = tileProvider;
|
this.tileProvider = tileProvider;
|
||||||
|
this.tileProviderBinder = new ITileProviderDelegate.Stub() {
|
||||||
|
@Override
|
||||||
|
public Tile getTile(int x, int y, int zoom) throws RemoteException {
|
||||||
|
return tileProvider.getTile(x, y, zoom);
|
||||||
|
}
|
||||||
|
};
|
||||||
return this;
|
return this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -0,0 +1,7 @@
|
|||||||
|
package com.google.android.gms.maps.model.internal;
|
||||||
|
|
||||||
|
import com.google.android.gms.maps.model.Tile;
|
||||||
|
|
||||||
|
interface ITileProviderDelegate {
|
||||||
|
Tile getTile(int x, int y, int zoom);
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user