android:persistent="false"
android:title="@string/system_ui_settings" />
+ <ListPreference
+ android:key="night_mode"
+ android:title="@string/night_mode_title"
+ android:summary="@string/night_mode_summary"
+ android:persistent="false"
+ android:entries="@array/night_mode_entries"
+ android:entryValues="@array/night_mode_values" />
+
<PreferenceCategory android:key="debug_debugging_category"
android:title="@string/debug_debugging_category">
android:summary="@string/auto_brightness_summary"
android:persistent="false" />
+ <!-- Hide night mode for now
<ListPreference
android:key="night_mode"
android:title="@string/night_mode_title"
android:summary="@string/night_mode_summary"
android:persistent="false"
android:entries="@array/night_mode_entries"
- android:entryValues="@array/night_mode_values" />
+ android:entryValues="@array/night_mode_values" /> -->
<PreferenceScreen
android:key="wallpaper"
import android.app.AppOpsManager;
import android.app.AppOpsManager.PackageOps;
import android.app.Dialog;
+import android.app.UiModeManager;
import android.app.admin.DevicePolicyManager;
import android.app.backup.IBackupManager;
import android.bluetooth.BluetoothAdapter;
import com.android.settings.fuelgauge.InactiveApps;
import com.android.settings.search.BaseSearchIndexProvider;
import com.android.settings.search.Indexable;
-import com.android.settings.users.UserDetailsSettings;
import com.android.settings.widget.SwitchBar;
-import java.lang.Process;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashSet;
private static final String TERMINAL_APP_PACKAGE = "com.android.terminal";
+ private static final String KEY_NIGHT_MODE = "night_mode";
+
private static final int RESULT_DEBUG_APP = 1000;
private static final int RESULT_MOCK_LOCATION_APP = 1001;
private SwitchPreference mShowAllANRs;
+ private ListPreference mNightModePreference;
+
private final ArrayList<Preference> mAllPrefs = new ArrayList<Preference>();
private final ArrayList<SwitchPreference> mResetSwitchPrefs
mAllPrefs.add(hdcpChecking);
removePreferenceForProduction(hdcpChecking);
}
+
+ mNightModePreference = (ListPreference) findPreference(KEY_NIGHT_MODE);
+ final UiModeManager uiManager = (UiModeManager) getSystemService(
+ Context.UI_MODE_SERVICE);
+ final int currentNightMode = uiManager.getNightMode();
+ mNightModePreference.setValue(String.valueOf(currentNightMode));
+ mNightModePreference.setOnPreferenceChangeListener(this);
}
private ListPreference addListPreference(String prefKey) {
} else if (preference == mTunerUiPref) {
writeTweakUi(newValue);
return true;
+ } else if (preference == mNightModePreference) {
+ try {
+ final int value = Integer.parseInt((String) newValue);
+ final UiModeManager uiManager = (UiModeManager) getSystemService(
+ Context.UI_MODE_SERVICE);
+ uiManager.setNightMode(value);
+ } catch (NumberFormatException e) {
+ Log.e(TAG, "could not persist night mode setting", e);
+ }
+ return true;
}
return false;
}
}
mNightModePreference = (ListPreference) findPreference(KEY_NIGHT_MODE);
- final UiModeManager uiManager = (UiModeManager) getSystemService(
- Context.UI_MODE_SERVICE);
- final int currentNightMode = uiManager.getNightMode();
- mNightModePreference.setValue(String.valueOf(currentNightMode));
- mNightModePreference.setOnPreferenceChangeListener(this);
+ if (mNightModePreference != null) {
+ final UiModeManager uiManager = (UiModeManager) getSystemService(
+ Context.UI_MODE_SERVICE);
+ final int currentNightMode = uiManager.getNightMode();
+ mNightModePreference.setValue(String.valueOf(currentNightMode));
+ mNightModePreference.setOnPreferenceChangeListener(this);
+ }
}
private static boolean allowAllRotations(Context context) {