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

Commit 93eaf1da authored by Robert Burns's avatar Robert Burns
Browse files

Rotary lockscreen

Tested on HDPI device, would like someone to test on MDPI/LDPI device

* Cleaned up formatting
Change-Id: Iadc444dea62c1b11d207efb255234c36e15054a6
parent 696a061e
Loading
Loading
Loading
Loading
+10 −0
Original line number Diff line number Diff line
@@ -450,4 +450,14 @@
        <item>12</item>
    </string-array>

    <string-array name="pref_lockscreen_style_entries">
        <item>Sliding Tab</item>
        <item>Rotary</item>
    </string-array>

    <string-array name="pref_lockscreen_style_values">
        <item>1</item>
        <item>2</item>
    </string-array>

</resources>
+2 −1
Original line number Diff line number Diff line
@@ -205,7 +205,8 @@
    <string name="pref_lockscreen_phone_messaging_control_title">Phone and Messaging</string>
    <string name="pref_lockscreen_phone_messaging_control_summary">Phone and Messaging accessible from Lockscreen.</string>
    <string name="pref_messaging_tab_app_title">Messaging tab application</string>

    <string name="pref_lockscreen_style_title">Lockscreen style</string>
    <string name="pref_lockscreen_style_summary">Choose the style of the lockscreen</string>

    <!-- Long Press Home -->
    <string name="long_press_home_title">Long-press home settings</string>
+6 −2
Original line number Diff line number Diff line
@@ -26,11 +26,15 @@
            android:summary="@string/pref_lockscreen_always_music_controls_summary" />
        <CheckBoxPreference android:key="lockscreen_quick_unlock_control"
            android:title="@string/pref_lockscreen_quick_unlock_control_title" android:summary="@string/pref_lockscreen_quick_unlock_control_summary" />
        <ListPreference android:key="pref_lockscreen_style"
            android:dialogTitle="@string/pref_lockscreen_style_title"
            android:title="@string/pref_lockscreen_style_title" android:summary="@string/pref_lockscreen_style_summary"
            android:entries="@array/pref_lockscreen_style_entries" android:entryValues="@array/pref_lockscreen_style_values" />
        <CheckBoxPreference android:key="lockscreen_phone_messaging_tab"
            android:title="@string/pref_lockscreen_phone_messaging_control_title"
            android:summary="@string/pref_lockscreen_phone_messaging_control_summary" />
        <Preference android:key="pref_messaging_tab_app"
            android:title="@string/pref_messaging_tab_app_title" />
            android:dependency="lockscreen_phone_messaging_tab" android:title="@string/pref_messaging_tab_app_title" />
        <PreferenceScreen android:key="lockscreen_gestures"
            android:title="@string/pref_lockscreen_title">
                <intent android:action="android.intent.action.MAIN"
+59 −5
Original line number Diff line number Diff line
@@ -13,14 +13,16 @@ import android.os.Build;
import android.os.Bundle;
import android.os.Environment;
import android.preference.CheckBoxPreference;
import android.preference.ListPreference;
import android.preference.Preference;
import android.preference.Preference.OnPreferenceChangeListener;
import android.preference.PreferenceActivity;
import android.preference.PreferenceCategory;
import android.preference.PreferenceScreen;
import android.provider.Settings;
import android.util.Log;

public class InputActivity extends PreferenceActivity {
public class InputActivity extends PreferenceActivity implements OnPreferenceChangeListener {

    private static final String LOCKSCREEN_MUSIC_CONTROLS = "lockscreen_music_controls";
    private static final String LOCKSCREEN_ALWAYS_MUSIC_CONTROLS = "lockscreen_always_music_controls";
@@ -28,6 +30,7 @@ public class InputActivity extends PreferenceActivity {
    private static final String TRACKBALL_UNLOCK_PREF = "pref_trackball_unlock";
    private static final String MENU_UNLOCK_PREF = "pref_menu_unlock";
    private static final String BUTTON_CATEGORY = "pref_category_button_settings";
    private static final String LOCKSCREEN_STYLE_PREF = "pref_lockscreen_style";
    private static final String LOCKSCREEN_QUICK_UNLOCK_CONTROL = "lockscreen_quick_unlock_control";
    private static final String LOCKSCREEN_PHONE_MESSAGING_TAB = "lockscreen_phone_messaging_tab";
    private static final String LOCKSCREEN_DISABLE_UNLOCK_TAB = "lockscreen_disable_unlock_tab";
@@ -45,6 +48,8 @@ public class InputActivity extends PreferenceActivity {
    private CheckBoxPreference mPhoneMessagingTabPref;
    private CheckBoxPreference mDisableUnlockTab;

    private ListPreference mLockscreenStylePref;

    private Preference mUserDefinedKey1Pref;
    private Preference mUserDefinedKey2Pref;
    private Preference mUserDefinedKey3Pref;
@@ -85,6 +90,19 @@ public class InputActivity extends PreferenceActivity {
        mPhoneMessagingTabPref.setChecked(Settings.System.getInt(getContentResolver(),
                Settings.System.LOCKSCREEN_PHONE_MESSAGING_TAB, 0) == 1);

        /* Lockscreen Style */
        mLockscreenStylePref = (ListPreference) prefSet.findPreference(LOCKSCREEN_STYLE_PREF);
        int lockscreenStyle = Settings.System.getInt(getContentResolver(),
                Settings.System.LOCKSCREEN_STYLE_PREF, 1);
        mLockscreenStylePref.setValue(String.valueOf(lockscreenStyle));
        mLockscreenStylePref.setOnPreferenceChangeListener(this);
        if (!isDefaultLockscreenStyle()) {
            mPhoneMessagingTabPref.setEnabled(false);
            mPhoneMessagingTabPref.setChecked(false);
        } else {
            mPhoneMessagingTabPref.setEnabled(true);
        }

        /* Trackball Wake */
        mTrackballWakePref = (CheckBoxPreference) prefSet.findPreference(TRACKBALL_WAKE_PREF);
        mTrackballWakePref.setChecked(Settings.System.getInt(getContentResolver(), 
@@ -132,10 +150,14 @@ public class InputActivity extends PreferenceActivity {
    @Override
    public void onResume() {
        super.onResume();
        mUserDefinedKey1Pref.setSummary(Settings.System.getString(getContentResolver(), Settings.System.USER_DEFINED_KEY1_APP));
        mUserDefinedKey2Pref.setSummary(Settings.System.getString(getContentResolver(), Settings.System.USER_DEFINED_KEY2_APP));
        mUserDefinedKey3Pref.setSummary(Settings.System.getString(getContentResolver(), Settings.System.USER_DEFINED_KEY3_APP));
        mMessagingTabApp.setSummary(Settings.System.getString(getContentResolver(), Settings.System.LOCKSCREEN_MESSAGING_TAB_APP));
        mUserDefinedKey1Pref.setSummary(Settings.System.getString(getContentResolver(),
                Settings.System.USER_DEFINED_KEY1_APP));
        mUserDefinedKey2Pref.setSummary(Settings.System.getString(getContentResolver(),
                Settings.System.USER_DEFINED_KEY2_APP));
        mUserDefinedKey3Pref.setSummary(Settings.System.getString(getContentResolver(),
                Settings.System.USER_DEFINED_KEY3_APP));
        mMessagingTabApp.setSummary(Settings.System.getString(getContentResolver(),
                Settings.System.LOCKSCREEN_MESSAGING_TAB_APP));
        if (!doesUnlockAbilityExist()) {
            mDisableUnlockTab.setEnabled(false);
            mDisableUnlockTab.setChecked(false);
@@ -144,6 +166,12 @@ public class InputActivity extends PreferenceActivity {
        } else {
            mDisableUnlockTab.setEnabled(true);
        }
        if (!isDefaultLockscreenStyle()) {
            mPhoneMessagingTabPref.setEnabled(false);
            mPhoneMessagingTabPref.setChecked(false);
        } else {
            mPhoneMessagingTabPref.setEnabled(true);
        }
    }

    public boolean onPreferenceTreeClick(PreferenceScreen preferenceScreen, Preference preference) {
@@ -202,6 +230,22 @@ public class InputActivity extends PreferenceActivity {
        return false;
    }

    public boolean onPreferenceChange(Preference preference, Object newValue) {
        if (preference == mLockscreenStylePref) {
            int lockscreenStyle = Integer.valueOf((String) newValue);
            Settings.System.putInt(getContentResolver(), Settings.System.LOCKSCREEN_STYLE_PREF,
                    lockscreenStyle);
            if (!isDefaultLockscreenStyle()) {
                mPhoneMessagingTabPref.setEnabled(false);
                mPhoneMessagingTabPref.setChecked(false);
            } else {
                mPhoneMessagingTabPref.setEnabled(true);
            }
            return true;
        }
        return false;
    }

    private void pickShortcut(int keyNumber) {
        mKeyNumber = keyNumber;
        Bundle bundle = new Bundle();
@@ -315,4 +359,14 @@ public class InputActivity extends PreferenceActivity {
            return false;
        }
    }

    private boolean isDefaultLockscreenStyle() {
        int lockscreenStyle = Settings.System.getInt(getContentResolver(),
                Settings.System.LOCKSCREEN_STYLE_PREF, 1);
        if (lockscreenStyle == 1) {
            return true;
        } else {
            return false;
        }
    }
}