summaryrefslogtreecommitdiffstats
path: root/AriesParts/src/com/cyanogenmod/settings/device/DeviceSettings.java
diff options
context:
space:
mode:
authorShawn Alty <shawn.alty@gmail.com>2011-12-27 21:58:43 -0600
committerShawn Alty <shawn.alty@gmail.com>2011-12-27 21:58:43 -0600
commit55a827b2707a18727d57e403c86bc06e768d8803 (patch)
tree85f6e902cadc99cbb2a55acca3095b8edd518d50 /AriesParts/src/com/cyanogenmod/settings/device/DeviceSettings.java
parentc5a2454a28e87a779873c369053078e7cc81c663 (diff)
downloaddevice_samsung_aries-common-55a827b2707a18727d57e403c86bc06e768d8803.zip
device_samsung_aries-common-55a827b2707a18727d57e403c86bc06e768d8803.tar.gz
device_samsung_aries-common-55a827b2707a18727d57e403c86bc06e768d8803.tar.bz2
more renaming for device settings compatibility
Diffstat (limited to 'AriesParts/src/com/cyanogenmod/settings/device/DeviceSettings.java')
-rw-r--r--AriesParts/src/com/cyanogenmod/settings/device/DeviceSettings.java118
1 files changed, 118 insertions, 0 deletions
diff --git a/AriesParts/src/com/cyanogenmod/settings/device/DeviceSettings.java b/AriesParts/src/com/cyanogenmod/settings/device/DeviceSettings.java
new file mode 100644
index 0000000..8cb2555
--- /dev/null
+++ b/AriesParts/src/com/cyanogenmod/settings/device/DeviceSettings.java
@@ -0,0 +1,118 @@
+package com.cyanogenmod.settings.device;
+
+import android.content.BroadcastReceiver;
+import android.content.Context;
+import android.content.Intent;
+import android.content.IntentFilter;
+import android.hardware.TvOut;
+import android.os.Bundle;
+import android.preference.CheckBoxPreference;
+import android.preference.ListPreference;
+import android.preference.Preference;
+import android.preference.PreferenceActivity;
+
+public class DeviceSettings extends PreferenceActivity {
+
+ public static final String KEY_COLOR_TUNING = "color_tuning";
+ public static final String KEY_BACKLIGHT_TIMEOUT = "backlight_timeout";
+ public static final String KEY_HSPA = "hspa";
+ public static final String KEY_TVOUT_ENABLE = "tvout_enable";
+ public static final String KEY_TVOUT_SYSTEM = "tvout_system";
+
+ private ColorTuningPreference mColorTuning;
+ private ListPreference mBacklightTimeout;
+ private ListPreference mHspa;
+ private CheckBoxPreference mTvOutEnable;
+ private ListPreference mTvOutSystem;
+ private TvOut mTvOut;
+
+ private BroadcastReceiver mHeadsetReceiver = new BroadcastReceiver() {
+
+ @Override
+ public void onReceive(Context context, Intent intent) {
+ int state = intent.getIntExtra("state", 0);
+ updateTvOutEnable(state != 0);
+ }
+
+ };
+
+ @Override
+ public void onCreate(Bundle savedInstanceState) {
+ super.onCreate(savedInstanceState);
+ addPreferencesFromResource(R.xml.main);
+
+ mColorTuning = (ColorTuningPreference) findPreference(KEY_COLOR_TUNING);
+ mColorTuning.setEnabled(ColorTuningPreference.isSupported());
+
+ mBacklightTimeout = (ListPreference) findPreference(KEY_BACKLIGHT_TIMEOUT);
+ mBacklightTimeout.setEnabled(TouchKeyBacklightTimeout.isSupported());
+ mBacklightTimeout.setOnPreferenceChangeListener(new TouchKeyBacklightTimeout());
+
+ mHspa = (ListPreference) findPreference(KEY_HSPA);
+ mHspa.setEnabled(Hspa.isSupported());
+ mHspa.setOnPreferenceChangeListener(new Hspa(this));
+
+ mTvOut = new TvOut();
+ mTvOutEnable = (CheckBoxPreference) findPreference(KEY_TVOUT_ENABLE);
+ mTvOutEnable.setChecked(mTvOut._isEnabled());
+
+ mTvOutEnable.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() {
+
+ @Override
+ public boolean onPreferenceChange(Preference preference, Object newValue) {
+ boolean enable = (Boolean) newValue;
+ Intent i = new Intent(DeviceSettings.this, TvOutService.class);
+ i.putExtra(TvOutService.EXTRA_COMMAND, enable ? TvOutService.COMMAND_ENABLE : TvOutService.COMMAND_DISABLE);
+ startService(i);
+ return true;
+ }
+
+ });
+
+ mTvOutSystem = (ListPreference) findPreference(KEY_TVOUT_SYSTEM);
+ mTvOutSystem.setOnPreferenceChangeListener(new Preference.OnPreferenceChangeListener() {
+
+ @Override
+ public boolean onPreferenceChange(Preference preference, Object newValue) {
+ if (mTvOut._isEnabled()) {
+ int newSystem = Integer.valueOf((String) newValue);
+ Intent i = new Intent(DeviceSettings.this, TvOutService.class);
+ i.putExtra(TvOutService.EXTRA_COMMAND, TvOutService.COMMAND_CHANGE_SYSTEM);
+ i.putExtra(TvOutService.EXTRA_SYSTEM, newSystem);
+ startService(i);
+ }
+ return true;
+ }
+
+ });
+ }
+
+ @Override
+ protected void onResume() {
+ super.onResume();
+ registerReceiver(mHeadsetReceiver, new IntentFilter(Intent.ACTION_HEADSET_PLUG));
+ }
+
+ @Override
+ protected void onPause() {
+ super.onPause();
+ unregisterReceiver(mHeadsetReceiver);
+ }
+
+ private void updateTvOutEnable(boolean connected) {
+ mTvOutEnable.setEnabled(connected);
+ mTvOutEnable.setSummaryOff(connected ? R.string.tvout_enable_summary : R.string.tvout_enable_summary_nocable);
+
+ if (!connected && mTvOutEnable.isChecked()) {
+ // Disable on unplug (UI)
+ mTvOutEnable.setChecked(false);
+ }
+ }
+
+ @Override
+ protected void onDestroy() {
+ mTvOut.finalize();
+ super.onDestroy();
+ }
+
+}