[android-auto] Fix routing arrow offset

Signed-off-by: Andrei Shkrob <github@shkrob.dev>
This commit is contained in:
Andrei Shkrob
2025-09-26 22:22:39 +02:00
committed by x7z4w
parent 3fcf653deb
commit 034098f5ef
2 changed files with 16 additions and 11 deletions

View File

@@ -3,6 +3,7 @@ package app.organicmaps.car.renderer;
import android.app.Presentation;
import android.hardware.display.DisplayManager;
import android.hardware.display.VirtualDisplay;
import android.view.SurfaceHolder;
import android.view.View;
import android.view.ViewGroup;
import android.view.ViewParent;
@@ -33,6 +34,21 @@ class SurfaceCallback extends SurfaceCallbackBase
{
super(carContext);
mMapController = mapController;
mMapController.getView().getHolder().addCallback(new SurfaceHolder.Callback() {
@Override
public void surfaceChanged(@NonNull SurfaceHolder holder, int format, int width, int height)
{
mMapController.updateMyPositionRoutingOffset(0);
}
@Override
public void surfaceCreated(@NonNull SurfaceHolder holder)
{
mMapController.updateMyPositionRoutingOffset(0);
}
@Override
public void surfaceDestroyed(@NonNull SurfaceHolder holder)
{}
});
}
@Override

View File

@@ -9,13 +9,10 @@ import app.organicmaps.sdk.MapView;
import app.organicmaps.sdk.display.DisplayManager;
import app.organicmaps.sdk.display.DisplayType;
import app.organicmaps.sdk.location.LocationHelper;
import app.organicmaps.sdk.util.log.Logger;
@RequiresApi(23)
class SurfaceRenderer extends Renderer
{
private static final String TAG = SurfaceRenderer.class.getSimpleName();
@NonNull
private final MapController mMapController;
@@ -34,14 +31,6 @@ class SurfaceRenderer extends Renderer
setSurfaceCallback(mSurfaceCallback);
}
@Override
public void onResume(@NonNull LifecycleOwner owner)
{
Logger.d(TAG);
if (mDisplayManager.isCarDisplayUsed())
mMapController.updateMyPositionRoutingOffset(0);
}
@Override
public void enable()
{