diff options
-rw-r--r-- | GNexusParts/res/layout/preference_dialog_gamma_tuning.xml | 26 | ||||
-rw-r--r-- | GNexusParts/res/values/strings.xml | 1 | ||||
-rw-r--r-- | GNexusParts/src/com/cyanogenmod/settings/device/GammaTuningPreference.java | 40 | ||||
-rwxr-xr-x | init.tuna.rc | 3 |
4 files changed, 56 insertions, 14 deletions
diff --git a/GNexusParts/res/layout/preference_dialog_gamma_tuning.xml b/GNexusParts/res/layout/preference_dialog_gamma_tuning.xml index 110dc32..8df2204 100644 --- a/GNexusParts/res/layout/preference_dialog_gamma_tuning.xml +++ b/GNexusParts/res/layout/preference_dialog_gamma_tuning.xml @@ -80,11 +80,35 @@ android:paddingLeft="20dip" android:paddingRight="20dip" /> + <TextView android:id="@+id/gamma_dss_text" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:layout_below="@id/gamma_blue_seekbar" + android:text="@string/gamma_dss_title" + android:paddingTop="10dip" + android:paddingLeft="20dip" + android:paddingRight="20dip" /> + <TextView android:id="@+id/gamma_dss_value" + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:layout_below="@id/gamma_blue_seekbar" + android:layout_alignParentRight="true" + android:paddingTop="10dip" + android:paddingLeft="20dip" + android:paddingRight="20dip" /> + <SeekBar android:id="@+id/gamma_dss_seekbar" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:layout_below="@id/gamma_dss_text" + android:paddingTop="2dip" + android:paddingLeft="20dip" + android:paddingRight="20dip" /> + <ImageView android:id="@+id/black_scale_picture" android:src="@drawable/color_tuning_preview" android:layout_width="match_parent" android:layout_height="40dip" - android:layout_below="@id/gamma_blue_seekbar" + android:layout_below="@id/gamma_dss_seekbar" android:paddingTop="20dip" android:paddingLeft="20dip" android:paddingRight="20dip" /> diff --git a/GNexusParts/res/values/strings.xml b/GNexusParts/res/values/strings.xml index 43f27a5..37264c0 100644 --- a/GNexusParts/res/values/strings.xml +++ b/GNexusParts/res/values/strings.xml @@ -23,6 +23,7 @@ <string name="color_default_title">Default</string> <string name="color_CM_title">CM Sett.</string> <string name="color_dark_title">Dark Sett.</string> + <string name="gamma_dss_title">DSS Gamma Set.</string> <string name="preset1_default_title">Default.</string> <string name="preset2_default_title">Natural</string> diff --git a/GNexusParts/src/com/cyanogenmod/settings/device/GammaTuningPreference.java b/GNexusParts/src/com/cyanogenmod/settings/device/GammaTuningPreference.java index 839a02b..749398b 100644 --- a/GNexusParts/src/com/cyanogenmod/settings/device/GammaTuningPreference.java +++ b/GNexusParts/src/com/cyanogenmod/settings/device/GammaTuningPreference.java @@ -42,20 +42,21 @@ public class GammaTuningPreference extends DialogPreference implements OnClickLi }; private static final int[] SEEKBAR_ID = new int[] { - R.id.gamma_red_seekbar, R.id.gamma_green_seekbar, R.id.gamma_blue_seekbar + R.id.gamma_red_seekbar, R.id.gamma_green_seekbar, R.id.gamma_blue_seekbar, R.id.gamma_dss_seekbar }; private static final int[] VALUE_DISPLAY_ID = new int[] { - R.id.gamma_red_value, R.id.gamma_green_value, R.id.gamma_blue_value + R.id.gamma_red_value, R.id.gamma_green_value, R.id.gamma_blue_value, R.id.gamma_dss_value }; private static final String[] FILE_PATH = new String[] { "/sys/class/misc/samoled_color/red_v1_offset", "/sys/class/misc/samoled_color/green_v1_offset", - "/sys/class/misc/samoled_color/blue_v1_offset" + "/sys/class/misc/samoled_color/blue_v1_offset", + "/sys/devices/platform/omapdss/manager0/gamma" }; - private GammaSeekBar mSeekBars[] = new GammaSeekBar[3]; + private GammaSeekBar mSeekBars[] = new GammaSeekBar[4]; private static final int MAX_VALUE = 200; @@ -81,7 +82,10 @@ public class GammaTuningPreference extends DialogPreference implements OnClickLi for (int i = 0; i < SEEKBAR_ID.length; i++) { SeekBar seekBar = (SeekBar) view.findViewById(SEEKBAR_ID[i]); TextView valueDisplay = (TextView) view.findViewById(VALUE_DISPLAY_ID[i]); - mSeekBars[i] = new GammaSeekBar(seekBar, valueDisplay, FILE_PATH[i]); + if (i < 3) + mSeekBars[i] = new GammaSeekBar(seekBar, valueDisplay, FILE_PATH[i], OFFSET_VALUE, MAX_VALUE); + else + mSeekBars[i] = new GammaSeekBar(seekBar, valueDisplay, FILE_PATH[i], 0, 10); } SetupButtonClickListeners(view); } @@ -167,12 +171,18 @@ public class GammaTuningPreference extends DialogPreference implements OnClickLi private TextView mValueDisplay; - public GammaSeekBar(SeekBar seekBar, TextView valueDisplay, String filePath) { + private int iOffset; + + private int iMax; + + public GammaSeekBar(SeekBar seekBar, TextView valueDisplay, String filePath, Integer offsetValue, Integer maxValue) { int iValue; mSeekBar = seekBar; mValueDisplay = valueDisplay; mFilePath = filePath; + iOffset = offsetValue; + iMax = maxValue; SharedPreferences sharedPreferences = getSharedPreferences(); @@ -181,11 +191,12 @@ public class GammaTuningPreference extends DialogPreference implements OnClickLi String sDefaultValue = Utils.readOneLine(mFilePath); iValue = Integer.valueOf(sDefaultValue); } else { - iValue = MAX_VALUE - OFFSET_VALUE; + iValue = iMax - iOffset; } mOriginal = iValue; - mSeekBar.setMax(MAX_VALUE); + mSeekBar.setMax(iMax); + reset(); mSeekBar.setOnSeekBarChangeListener(this); } @@ -193,7 +204,7 @@ public class GammaTuningPreference extends DialogPreference implements OnClickLi public void reset() { int iValue; - iValue = mOriginal + OFFSET_VALUE; + iValue = mOriginal + iOffset; mSeekBar.setProgress(iValue); updateValue(mOriginal); } @@ -201,7 +212,7 @@ public class GammaTuningPreference extends DialogPreference implements OnClickLi public void save() { int iValue; - iValue = mSeekBar.getProgress() - OFFSET_VALUE; + iValue = mSeekBar.getProgress() - iOffset; Editor editor = getEditor(); editor.putInt(mFilePath, iValue); editor.commit(); @@ -211,7 +222,7 @@ public class GammaTuningPreference extends DialogPreference implements OnClickLi public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { int iValue; - iValue = progress - OFFSET_VALUE; + iValue = progress - iOffset; Utils.writeValue(mFilePath, String.valueOf((long) iValue)); updateValue(iValue); } @@ -252,21 +263,24 @@ public class GammaTuningPreference extends DialogPreference implements OnClickLi } private void SetCMSettings() { - mSeekBars[0].SetNewValue(-15); + mSeekBars[0].SetNewValue(2); mSeekBars[1].SetNewValue(15); - mSeekBars[2].SetNewValue(-10); + mSeekBars[2].SetNewValue(5); + mSeekBars[3].SetNewValue(8); } private void SetSBrightSettings() { mSeekBars[0].SetNewValue(6); mSeekBars[1].SetNewValue(25); mSeekBars[2].SetNewValue(7); + mSeekBars[3].SetNewValue(4); } private void SetDefaultSettings() { mSeekBars[0].SetNewValue(0); mSeekBars[1].SetNewValue(0); mSeekBars[2].SetNewValue(0); + mSeekBars[3].SetNewValue(0); } } diff --git a/init.tuna.rc b/init.tuna.rc index 8b5eb41..4823599 100755 --- a/init.tuna.rc +++ b/init.tuna.rc @@ -63,6 +63,9 @@ on fs chmod 0777 /dev/tiler chmod 0777 /dev/dmm +# change permissions for gamma settings + chmod 0666 /sys/devices/platform/omapdss/manager0/gamma + # change permissions for ION driver chmod 0777 /dev/ion |