[6.7.0][运营面板] 移除欢迎语配置入口; 融合模式为单选框不是复选

This commit is contained in:
renwj
2024-10-09 15:51:09 +08:00
parent d415eea5f3
commit 70e0d7e298
2 changed files with 102 additions and 35 deletions

View File

@@ -960,6 +960,8 @@ class OperatePanelLayout : LinearLayout {
private const val KEY_OVERTAKE_SPEED_THRESHOLDSS = "overtake_speed_thresholds"
}
private var prevCheckedKeyForFusionMode: String? = null
override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View {
CallerAutopilotCarConfigListenerManager.addListener(TAG, this)
CallerSopSettingManager.addListener(TAG, this)
@@ -1038,19 +1040,39 @@ class OperatePanelLayout : LinearLayout {
return FunctionBuildConfig.isFaultSlowDown
}
KEY_ALL_MERGE_MODE -> {
return FunctionBuildConfig.fusionMode == 1
val checked = FunctionBuildConfig.fusionMode == 1
if (checked) {
prevCheckedKeyForFusionMode = KEY_ALL_MERGE_MODE
}
return checked
}
KEY_BLIND_AREA_MODE -> {
return FunctionBuildConfig.fusionMode == 2
val checked = FunctionBuildConfig.fusionMode == 2
if (checked) {
prevCheckedKeyForFusionMode = KEY_BLIND_AREA_MODE
}
return checked
}
KEY_BEYOND_VISUAL_RANGE_MODE -> {
return FunctionBuildConfig.fusionMode == 3
val checked = FunctionBuildConfig.fusionMode == 3
if (checked) {
prevCheckedKeyForFusionMode = KEY_BEYOND_VISUAL_RANGE_MODE
}
return checked
}
KEY_TRANSPARENT_TRANSFER_MODE -> {
return FunctionBuildConfig.fusionMode == 4
val checked = FunctionBuildConfig.fusionMode == 4
if (checked) {
prevCheckedKeyForFusionMode = KEY_TRANSPARENT_TRANSFER_MODE
}
return checked
}
KEY_PURE_OBU_MODE -> {
return FunctionBuildConfig.fusionMode == 5
val checked = FunctionBuildConfig.fusionMode == 5
if (checked) {
prevCheckedKeyForFusionMode = KEY_PURE_OBU_MODE
}
return checked
}
KEY_AUTO_PILOT_SPEED_THRESHOLDS -> {
return listOf("0.0", "60.0", "${FunctionBuildConfig.maxSpeedLimit}", "5.0")
@@ -1180,39 +1202,84 @@ class OperatePanelLayout : LinearLayout {
return true
}
KEY_ALL_MERGE_MODE -> {
FunctionBuildConfig.fusionMode = 1
hmiAction("SOP 融合模式, ", FunctionBuildConfig.fusionMode)
clickEventAnalytics("融合模式", true)
CallerAutoPilotControlManager.sendFusionMode(FunctionBuildConfig.fusionMode)
return true
val isChecked = newValue as? Boolean ?: false
if (isChecked) {
FunctionBuildConfig.fusionMode = 1
prevCheckedKeyForFusionMode?.takeIf { it != KEY_ALL_MERGE_MODE }?.let {
preferenceScreen.findPreferenceReal<TwoStatePreference>(it)
}?.also {
prevCheckedKeyForFusionMode = KEY_ALL_MERGE_MODE
changeValue(it, false)
}
hmiAction("SOP 融合模式, ", FunctionBuildConfig.fusionMode)
clickEventAnalytics("融合模式", true)
CallerAutoPilotControlManager.sendFusionMode(FunctionBuildConfig.fusionMode)
}
return isChecked
}
KEY_BLIND_AREA_MODE -> {
FunctionBuildConfig.fusionMode = 2
hmiAction("SOP 融合模式, ", FunctionBuildConfig.fusionMode)
clickEventAnalytics("融合模式", true)
CallerAutoPilotControlManager.sendFusionMode(FunctionBuildConfig.fusionMode)
return true
val isChecked = newValue as? Boolean ?: false
if (isChecked) {
FunctionBuildConfig.fusionMode = 2
prevCheckedKeyForFusionMode?.takeIf { it != KEY_BLIND_AREA_MODE }?.let {
preferenceScreen.findPreferenceReal<TwoStatePreference>(it)
}?.also {
prevCheckedKeyForFusionMode = KEY_BLIND_AREA_MODE
changeValue(it, false)
}
hmiAction("SOP 融合模式, ", FunctionBuildConfig.fusionMode)
clickEventAnalytics("融合模式", true)
CallerAutoPilotControlManager.sendFusionMode(FunctionBuildConfig.fusionMode)
}
return isChecked
}
KEY_BEYOND_VISUAL_RANGE_MODE -> {
FunctionBuildConfig.fusionMode = 3
hmiAction("SOP 融合模式, ", FunctionBuildConfig.fusionMode)
clickEventAnalytics("融合模式", true)
CallerAutoPilotControlManager.sendFusionMode(FunctionBuildConfig.fusionMode)
return true
val isChecked = newValue as? Boolean ?: false
if (isChecked) {
FunctionBuildConfig.fusionMode = 3
prevCheckedKeyForFusionMode?.takeIf { it != KEY_BEYOND_VISUAL_RANGE_MODE }?.let {
preferenceScreen.findPreferenceReal<TwoStatePreference>(it)
}?.also {
prevCheckedKeyForFusionMode = KEY_BEYOND_VISUAL_RANGE_MODE
changeValue(it, false)
}
hmiAction("SOP 融合模式, ", FunctionBuildConfig.fusionMode)
clickEventAnalytics("融合模式", true)
CallerAutoPilotControlManager.sendFusionMode(FunctionBuildConfig.fusionMode)
}
return isChecked
}
KEY_TRANSPARENT_TRANSFER_MODE -> {
FunctionBuildConfig.fusionMode = 4
hmiAction("SOP 融合模式, ", FunctionBuildConfig.fusionMode)
clickEventAnalytics("融合模式", true)
CallerAutoPilotControlManager.sendFusionMode(FunctionBuildConfig.fusionMode)
return true
val isChecked = newValue as? Boolean ?: false
if (isChecked) {
FunctionBuildConfig.fusionMode = 4
prevCheckedKeyForFusionMode?.takeIf { it != KEY_TRANSPARENT_TRANSFER_MODE }?.let {
preferenceScreen.findPreferenceReal<TwoStatePreference>(it)
}?.also {
prevCheckedKeyForFusionMode = KEY_TRANSPARENT_TRANSFER_MODE
changeValue(it, false)
}
hmiAction("SOP 融合模式, ", FunctionBuildConfig.fusionMode)
clickEventAnalytics("融合模式", true)
CallerAutoPilotControlManager.sendFusionMode(FunctionBuildConfig.fusionMode)
}
return isChecked
}
KEY_PURE_OBU_MODE -> {
FunctionBuildConfig.fusionMode = 5
hmiAction("SOP 融合模式, ", FunctionBuildConfig.fusionMode)
clickEventAnalytics("融合模式", true)
CallerAutoPilotControlManager.sendFusionMode(FunctionBuildConfig.fusionMode)
return true
val isChecked = newValue as? Boolean ?: false
if (isChecked) {
FunctionBuildConfig.fusionMode = 5
prevCheckedKeyForFusionMode?.takeIf { it != KEY_PURE_OBU_MODE }?.let {
preferenceScreen.findPreferenceReal<TwoStatePreference>(it)
}?.also {
prevCheckedKeyForFusionMode = KEY_PURE_OBU_MODE
changeValue(it, false)
}
hmiAction("SOP 融合模式, ", FunctionBuildConfig.fusionMode)
clickEventAnalytics("融合模式", true)
CallerAutoPilotControlManager.sendFusionMode(FunctionBuildConfig.fusionMode)
}
return isChecked
}
}
return super.onPreferenceChange(preference, newValue)

View File

@@ -31,10 +31,10 @@
android:key="mofang"
android:layout="@layout/layout_operate_panel_preference_header"
android:title="蘑方" />
<Preference
android:fragment="com.mogo.eagle.core.function.hmi.ui.operate.OperatePanelLayout$WelcomeWordsPreferenceCompat"
android:key="welcome_words"
android:layout="@layout/layout_operate_panel_preference_header"
android:title="欢迎语"/>
<!-- <Preference-->
<!-- android:fragment="com.mogo.eagle.core.function.hmi.ui.operate.OperatePanelLayout$WelcomeWordsPreferenceCompat"-->
<!-- android:key="welcome_words"-->
<!-- android:layout="@layout/layout_operate_panel_preference_header"-->
<!-- android:title="欢迎语"/>-->
</androidx.preference.PreferenceScreen>