nx: devicesettings: Guard display settings for vali

vali does not have display out, and we will not support hw hacks
at the moment. This could change, in which case we will add env
in bootloader and set prop from cmdline for hdmi display.

Change-Id: I769b8ed1d1efcc4e4aae57697c632352c98eb55a
This commit is contained in:
tmakin authored and Nolen Johnson committed 2024-01-25 15:54:02 -05:00
1 parent 8a7d0fb861
commit c48f464980
3 files changed
+32 -23

No files matched your search

@@ -25,7 +25,7 @@ import android.os.SystemProperties;
public class BootCompletedReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
if (SystemProperties.get("ro.product.device", "").equals("nx")) {
if (SystemProperties.get("ro.product.device", "").equals("nx") && !SystemProperties.get("ro.boot.hardware.sku", "").equals("vali")) {
context.startService(new Intent(context, DockService.class));
}
@@ -21,14 +21,15 @@ import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.os.Bundle;
import android.os.SystemProperties;
import android.preference.PreferenceActivity;
import android.view.WindowManagerPolicyConstants;
public class DisplaySettingsActivity extends PreferenceActivity {
public final Receiver mReceiver = new Receiver();
public boolean mExternalDisplayConnected;
private DisplaySettingsFragment mFragment;
private String sku = SystemProperties.get("ro.product.name", "");
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
@@ -41,12 +42,14 @@ public class DisplaySettingsActivity extends PreferenceActivity {
@Override
protected void onPause() {
super.onPause();
unregisterReceiver(mReceiver);
if(!sku.equals("vali"))
unregisterReceiver(mReceiver);
}
protected void onResume() {
super.onResume();
mReceiver.init(this);
if(!sku.equals("vali"))
mReceiver.init(this);
}
final class Receiver extends BroadcastReceiver {
@@ -81,13 +81,16 @@ public class DisplaySettingsFragment extends PreferenceFragment
public boolean mInModeChange = false;
private INvDisplay mDisplayService;
private NvAppProfiles mAppProfiles = null;
private String sku = SystemProperties.get("ro.product.name", "");
@Override
public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
try {
mDisplayService = INvDisplay.getService(true /* retry */);
} catch (RemoteException e) {
throw new RuntimeException(e);
if(!sku.equals("vali")) {
try {
mDisplayService = INvDisplay.getService(true /* retry */);
} catch (RemoteException e) {
throw new RuntimeException(e);
}
}
mAppProfiles = new NvAppProfiles(getActivity());
@@ -96,7 +99,9 @@ public class DisplaySettingsFragment extends PreferenceFragment
PreferenceScreen preferenceScreen = this.getPreferenceScreen();
createPerfSettings(preferenceScreen);
createDisplaySettings(preferenceScreen);
if(!sku.equals("vali"))
createDisplaySettings(preferenceScreen);
final ActionBar actionBar = getActivity().getActionBar();
actionBar.setDisplayHomeAsUpEnabled(true);
@@ -127,17 +132,19 @@ public class DisplaySettingsFragment extends PreferenceFragment
@Override
public void onSharedPreferenceChanged(SharedPreferences sharedPrefs, String key) {
HashMap<String, Integer> uidMap = DisplayUtils.makeUidMap(mDisplayService);
if (key.startsWith("mode_")) {
String hash = key.substring(5);
int display = uidMap.getOrDefault(hash, -1);
if(!sku.equals("vali")) {
HashMap<String, Integer> uidMap = DisplayUtils.makeUidMap(mDisplayService);
if (key.startsWith("mode_")) {
String hash = key.substring(5);
int display = uidMap.getOrDefault(hash, -1);
if (display >= 0) {
int modeIndex = Integer.valueOf(sharedPrefs.getString(key, ""));
((DisplaySettingsActivity) getActivity()).mReceiver.mBlocked = true;
performModeChange(sharedPrefs, key, modeIndex, display);
}
if (display >= 0) {
int modeIndex = Integer.valueOf(sharedPrefs.getString(key, ""));
((DisplaySettingsActivity) getActivity()).mReceiver.mBlocked = true;
performModeChange(sharedPrefs, key, modeIndex, display);
}
}
}
@@ -269,10 +276,9 @@ public class DisplaySettingsFragment extends PreferenceFragment
preferenceScreen.addPreference(perfCategory);
perfCategory.addPreference(perfPreference);
if(SystemProperties.get("ro.product.name", "").equals("frig")) {
ListPreference panelColorPref = new ListPreference(perfCategory.getContext());
String current = DisplayUtils.getPanelColorMode();
int index;
if(sku.equals("frig")) {
createPanelModeSettings(perfCategory);
}
for(index = 0; index < modes.length; index++) {
if(current.equals(modes[index]))
@@ -284,7 +290,7 @@ public class DisplaySettingsFragment extends PreferenceFragment
} else {
Log.w(TAG, "OLED Panel Mode Index: " + String.valueOf(index));
panelColorPref.setKey("panel_color_mode"); // matches sysfs node for consistency
panelColorPref.setTitle(R.string.panel_color_setting_title);
panelColorPref.setSummary(String.format(getString(R.string.panel_color_setting_summary), modeMap[index]));