Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 26889462 authored by Danny Baumann's avatar Danny Baumann Committed by Gerrit Code Review
Browse files

Merge "Fix list settings initialization." into gingerbread

parents fd9ccff5 1b433862
Loading
Loading
Loading
Loading
+9 −5
Original line number Diff line number Diff line
@@ -10,11 +10,13 @@

        <ListPreference android:key="pref_network_mode" android:dialogTitle="@string/pref_network_mode_title"
            android:title="@string/pref_network_mode_title" android:summary="@string/pref_network_mode_summary"
            android:entries="@array/entries_network_widget" android:entryValues="@array/values_network_widget" />
            android:entries="@array/entries_network_widget" android:entryValues="@array/values_network_widget"
            android:persistent="false" />

        <ListPreference android:key="pref_screentimeout_mode" android:dialogTitle="@string/pref_screentimeout_mode_title"
            android:title="@string/pref_screentimeout_mode_title" android:summary="@string/pref_screentimeout_mode_summary"
            android:entries="@array/entries_screentimeout_widget" android:entryValues="@array/values_screentimeout_widget" />
            android:entries="@array/entries_screentimeout_widget" android:entryValues="@array/values_screentimeout_widget"
            android:persistent="false" />

        <MultiSelectListPreference android:key="pref_ring_mode" android:dialogTitle="@string/pref_ring_mode_title"
            android:title="@string/pref_ring_mode_title" android:summary="@string/pref_ring_mode_summary"
@@ -23,10 +25,12 @@

        <ListPreference android:key="pref_flash_mode" android:dialogTitle="@string/pref_flash_mode_title"
            android:title="@string/pref_flash_mode_title" android:summary="@string/pref_flash_mode_summary"
            android:entries="@array/entries_flash_widget" android:entryValues="@array/values_flash_widget" />
            android:entries="@array/entries_flash_widget" android:entryValues="@array/values_flash_widget"
            android:persistent="false" />

        <ListPreference android:key="pref_mobiledatanetwork_mode" android:dialogTitle="@string/pref_mobiledatanetwork_mode_title"
            android:title="@string/pref_mobiledatanetwork_mode_title" android:summary="@string/pref_mobiledatanetwork_mode_summary"
            android:entries="@array/entries_mobiledatanetwork_widget" android:entryValues="@array/values_mobiledatanetwork_widget" />
            android:entries="@array/entries_mobiledatanetwork_widget" android:entryValues="@array/values_mobiledatanetwork_widget"
            android:persistent="false" />
    </PreferenceCategory>
</PreferenceScreen>
+41 −21
Original line number Diff line number Diff line
@@ -18,6 +18,7 @@ package com.cyanogenmod.cmparts.activities;

import com.android.internal.telephony.Phone;

import android.content.ContentResolver;
import android.net.wimax.WimaxHelper;
import android.os.Bundle;
import android.preference.CheckBoxPreference;
@@ -56,7 +57,7 @@ public class PowerWidgetActivity extends PreferenceActivity implements OnPrefere

    MultiSelectListPreference mBrightnessMode;
    ListPreference mNetworkMode;
    ListPreference mScreentimeoutMode;
    ListPreference mScreenTimeoutMode;
    MultiSelectListPreference mRingMode;
    ListPreference mFlashMode;
    ListPreference mMobileDataNetworkMode;
@@ -74,8 +75,8 @@ public class PowerWidgetActivity extends PreferenceActivity implements OnPrefere
        mBrightnessMode.setOnPreferenceChangeListener(this);
        mNetworkMode = (ListPreference) prefSet.findPreference(EXP_NETWORK_MODE);
        mNetworkMode.setOnPreferenceChangeListener(this);
        mScreentimeoutMode = (ListPreference) prefSet.findPreference(EXP_SCREENTIMEOUT_MODE);
        mScreentimeoutMode.setOnPreferenceChangeListener(this);
        mScreenTimeoutMode = (ListPreference) prefSet.findPreference(EXP_SCREENTIMEOUT_MODE);
        mScreenTimeoutMode.setOnPreferenceChangeListener(this);
        mRingMode = (MultiSelectListPreference) prefSet.findPreference(EXP_RING_MODE);
        mRingMode.setValue(Settings.System.getString(getContentResolver(), Settings.System.EXPANDED_RING_MODE));
        mRingMode.setOnPreferenceChangeListener(this);
@@ -114,11 +115,7 @@ public class PowerWidgetActivity extends PreferenceActivity implements OnPrefere
            cb.setTitle(button.getTitleResId());

            // set our checked state
            if(buttonList.contains(button.getId())) {
                cb.setChecked(true);
            } else {
                cb.setChecked(false);
            }
            cb.setChecked(buttonList.contains(button.getId()));

            // add to our prefs set
            mCheckBoxPrefs.put(cb, button.getId());
@@ -130,25 +127,28 @@ public class PowerWidgetActivity extends PreferenceActivity implements OnPrefere
                mFlashMode.setEnabled(false);
            } else if (PowerWidgetUtil.BUTTON_NETWORKMODE.equals(button.getId())) {
                // some phones run on networks not supported by this button, so disable it
                int network_state = -99;
                boolean knownState = false;

                try {
                    network_state = Settings.Secure.getInt(getContentResolver(),
                    int networkState = Settings.Secure.getInt(getContentResolver(),
                            Settings.Secure.PREFERRED_NETWORK_MODE);
                } catch(Settings.SettingNotFoundException e) {
                    Log.e(TAG, "Unable to retrieve PREFERRED_NETWORK_MODE", e);
                }

                switch(network_state) {
                    switch (networkState) {
                        // list of supported network modes
                        case Phone.NT_MODE_WCDMA_PREF:
                        case Phone.NT_MODE_WCDMA_ONLY:
                        case Phone.NT_MODE_GSM_UMTS:
                        case Phone.NT_MODE_GSM_ONLY:
                            knownState = true;
                            break;
                    default:
                    }
                } catch(Settings.SettingNotFoundException e) {
                    Log.e(TAG, "Unable to retrieve PREFERRED_NETWORK_MODE", e);
                }

                if (!knownState) {
                    cb.setEnabled(false);
                        break;
                    mNetworkMode.setEnabled(false);
                }
            } else if (PowerWidgetUtil.BUTTON_WIMAX.equals(button.getId())) {
                if (!isWimaxEnabled) {
@@ -159,6 +159,26 @@ public class PowerWidgetActivity extends PreferenceActivity implements OnPrefere
            // add to the category
            prefButtons.addPreference(cb);
        }

        ContentResolver cr = getContentResolver();
        String value;

        value = Settings.System.getString(cr, Settings.System.EXPANDED_BRIGHTNESS_MODE);
        if (value != null) {
            mBrightnessMode.setValue(value);
        }
        value = Settings.System.getString(cr, Settings.System.EXPANDED_RING_MODE);
        if (value != null) {
            mRingMode.setValue(value);
        }
        mNetworkMode.setValueIndex(Settings.System.getInt(
                cr, Settings.System.EXPANDED_NETWORK_MODE, 0));
        mScreenTimeoutMode.setValueIndex(Settings.System.getInt(
                cr, Settings.System.EXPANDED_SCREENTIMEOUT_MODE, 0));
        mFlashMode.setValueIndex(Settings.System.getInt(
                cr, Settings.System.EXPANDED_FLASH_MODE, 0));
        mMobileDataNetworkMode.setValueIndex(Settings.System.getInt(
                cr, Settings.System.EXPANDED_MOBILEDATANETWORK_MODE, 0));
    }

    public boolean onPreferenceTreeClick(PreferenceScreen preferenceScreen, Preference preference) {
@@ -191,7 +211,7 @@ public class PowerWidgetActivity extends PreferenceActivity implements OnPrefere
        } else if(preference == mNetworkMode) {
            int value = Integer.valueOf((String)newValue);
            Settings.System.putInt(getContentResolver(), Settings.System.EXPANDED_NETWORK_MODE, value);
        } else if(preference == mScreentimeoutMode) {
        } else if(preference == mScreenTimeoutMode) {
            int value = Integer.valueOf((String)newValue);
            Settings.System.putInt(getContentResolver(), Settings.System.EXPANDED_SCREENTIMEOUT_MODE, value);
        } else if(preference == mRingMode) {