[6.2.6][V2N] 优化taxi乘客屏事件触发时视角切换逻辑
This commit is contained in:
@@ -224,7 +224,7 @@ class MoGoVisualAngleChangeProvider: IMoGoVisualAngleChangeProvider {
|
||||
Log.d(TAG, "--- doRealVisualAngleChange --- 2 ---")
|
||||
delay(delay)
|
||||
Log.d(TAG, "--- doRealVisualAngleChange --- 3 ---")
|
||||
doChangeAngle(Record(target, triggerTime = triggerTime))
|
||||
doChangeAngle(Record(target, triggerTime = triggerTime), displayed)
|
||||
}.also { itx ->
|
||||
itx.invokeOnCompletion {
|
||||
if (it is CancellationException) {
|
||||
@@ -249,35 +249,42 @@ class MoGoVisualAngleChangeProvider: IMoGoVisualAngleChangeProvider {
|
||||
}
|
||||
}
|
||||
Log.d(TAG, "--- doRealVisualAngleChange --- 10 ---")
|
||||
doChangeAngle(Record(target, triggerTime = triggerTime))
|
||||
doChangeAngle(Record(target, triggerTime = triggerTime), displayed)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private fun doChangeAngle(record: Record) {
|
||||
val angle = record.target.angle
|
||||
private fun doChangeAngle(target: Record, previous: Record? = null) {
|
||||
val angle = target.target.angle
|
||||
CallerMapUIServiceManager.getMapUIController()?.also {
|
||||
Log.d(TAG, "--- doChangeAngle ---: ${record.target}")
|
||||
if (record.target !is Default) {
|
||||
record.isDisplay = true
|
||||
Log.d(TAG, "--- doChangeAngle ---: ${target.target}")
|
||||
if (target.target !is Default) {
|
||||
target.isDisplay = true
|
||||
synchronized(queue) {
|
||||
queue += record
|
||||
queue += target
|
||||
}
|
||||
}
|
||||
if (record.target is Default && roadEventFlag) {
|
||||
if (target.target is Default && roadEventFlag) {
|
||||
roadEventFlag = false
|
||||
it.setLockMode(true)
|
||||
}
|
||||
if (record.target is RoadEvent) {
|
||||
it.setLockMode(false)
|
||||
roadEventFlag = true
|
||||
if (target.target is RoadEvent) {
|
||||
//taxi乘客屏,使用的新地图效果,切了视角也看不到
|
||||
if (!AppIdentityModeUtils.isTaxiPassenger(FunctionBuildConfig.appIdentityMode)) {
|
||||
roadEventFlag = true
|
||||
it.setLockMode(false)
|
||||
scope.launch {
|
||||
it.animateTo(0.0 ,0.0,1f, - record.target.poi_angle.toFloat(),11.5f,28f,3000,record.target.isGps)
|
||||
it.animateTo(0.0 ,0.0,1f, - target.target.poi_angle.toFloat(),11.5f,28f,3000,target.target.isGps)
|
||||
}
|
||||
}
|
||||
} else {
|
||||
if (target.target is Default && previous != null && (previous.target is RoadEvent)) {
|
||||
Log.d(TAG, "==== doChangeAngle === 1 ===")
|
||||
if (AppIdentityModeUtils.isTaxiPassenger(FunctionBuildConfig.appIdentityMode)) {
|
||||
Log.d(TAG, "==== doChangeAngle === 2 ===")
|
||||
return
|
||||
}
|
||||
}
|
||||
it.changeMapVisualAngle(angle, null)
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user