Settings: Fix gpu renderer options unsetting hwui renderer

Change-Id: Idbc64373aa45061a474cb3b250e8ff7291d0a0b4
Signed-off-by: rmp22 <195054967+rmp22@users.noreply.github.com>
Signed-off-by: Ghosuto <clash.raja10@gmail.com>
This commit is contained in:
rmp22
2025-10-03 20:58:38 +08:00
committed by Joey
parent b9a820d5bf
commit 4950816c14

View File

@@ -81,17 +81,15 @@ public class SetGpuRendererPreferenceController extends
}
private void writeDebugHwRendererOptions(Object newValue) {
SystemProperties.set(ThreadedRenderer.DEBUG_RENDERER_PROPERTY,
newValue == null ? "" : newValue.toString());
SystemProperties.set("persist.sys.ax_hwui_renderer",
newValue == null ? getDefaultRenderer() : newValue.toString());
SystemPropPoker.getInstance().poke();
}
private void updateDebugHwRendererOptions() {
final String value = SystemProperties.get(
ThreadedRenderer.DEBUG_RENDERER_PROPERTY, "" /* default */);
int index = 0; // default
for (int i = 0; i < mListValues.length; i++) {
if (TextUtils.equals(value, mListValues[i])) {
if (TextUtils.equals(getDefaultRenderer(), mListValues[i])) {
index = i;
break;
}
@@ -99,4 +97,11 @@ public class SetGpuRendererPreferenceController extends
mPreference.setValue(mListValues[index]);
mPreference.setSummary(mListSummaries[index]);
}
private String getDefaultRenderer() {
boolean useVulkan = SystemProperties.getBoolean("ro.hwui.use_vulkan", false);
final String value = SystemProperties.get(
"persist.sys.ax_hwui_renderer", useVulkan ? "skiavk" : "skiagl"); //matches hwui peekRenderPipelineType
return value;
}
}