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:
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]));
|
||||
|
||||
Reference in new issue
Block a user