OSDN Git Service

Revert "Add lock-to-app to settings"
authorJason Monk <jmonk@google.com>
Mon, 14 Jul 2014 16:44:40 +0000 (16:44 +0000)
committerJason Monk <jmonk@google.com>
Mon, 14 Jul 2014 16:44:56 +0000 (16:44 +0000)
This reverts commit 315070d58b1d18fe1f5dae73e2ee09fd3ee5b13f.

Change-Id: Id78311a4e0f371a87c975cc97587a404e0dfdb7f

res/layout/lock_to_app_instructions.xml [deleted file]
res/values/dimens.xml
res/values/strings.xml
res/xml/lock_to_app_settings.xml [deleted file]
res/xml/security_settings_misc.xml
src/com/android/settings/LockToAppSettings.java [deleted file]
src/com/android/settings/search/Ranking.java
src/com/android/settings/search/SearchIndexableResources.java

diff --git a/res/layout/lock_to_app_instructions.xml b/res/layout/lock_to_app_instructions.xml
deleted file mode 100644 (file)
index dfe0970..0000000
+++ /dev/null
@@ -1,74 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-/*
-** Copyright 2014, The Android Open Source Project
-**
-** Licensed under the Apache License, Version 2.0 (the "License");
-** you may not use this file except in compliance with the License.
-** You may obtain a copy of the License at
-**
-**     http://www.apache.org/licenses/LICENSE-2.0
-**
-** Unless required by applicable law or agreed to in writing, software
-** distributed under the License is distributed on an "AS IS" BASIS,
-** WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-** See the License for the specific language governing permissions and
-** limitations under the License.
-*/
--->
-
-<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
-    android:layout_width="match_parent"
-    android:layout_height="match_parent">
-
-    <LinearLayout
-        android:id="@+id/instructions_area"
-        android:layout_width="match_parent"
-        android:layout_height="match_parent"
-        android:orientation="vertical"
-        android:paddingLeft="@dimen/switchbar_subsettings_margin_start"
-        android:paddingRight="@dimen/screen_margin_sides">
-
-        <TextView
-            android:layout_width="match_parent"
-            android:layout_height="wrap_content"
-            android:layout_alignParentTop="true"
-            android:paddingTop="@dimen/lock_to_app_textview_padding"
-            android:text="@string/lock_to_app_description"
-            android:textAppearance="@style/TextAppearance.Medium"
-            />
-
-        <TextView
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:paddingTop="@dimen/lock_to_app_textview_padding"
-            android:text="@string/lock_to_app_start_step1"
-            android:textAppearance="@style/TextAppearance.Medium"
-            />
-
-        <TextView
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:paddingTop="@dimen/lock_to_app_textview_padding"
-            android:text="@string/lock_to_app_start_step2"
-            android:textAppearance="@style/TextAppearance.Medium"
-            />
-
-        <TextView
-            android:id="@+id/lock_to_app_start_step3"
-            android:layout_width="wrap_content"
-            android:layout_height="wrap_content"
-            android:paddingBottom="@dimen/lock_to_app_textview_padding"
-            android:paddingTop="@dimen/lock_to_app_textview_padding"
-            android:text="@string/lock_to_app_start_step3"
-            android:textAppearance="@style/TextAppearance.Medium"
-            />
-
-    </LinearLayout>
-
-    <ListView
-        android:id="@android:id/list"
-        android:layout_width="match_parent"
-        android:layout_height="match_parent"/>
-
-</FrameLayout>
\ No newline at end of file
index 969f575..32a2fff 100755 (executable)
     <dimen name="search_suggestion_item_image_margin_start">32dp</dimen>
     <dimen name="search_suggestion_item_image_margin_end">16dp</dimen>
 
-    <!-- Lock-to-app textview paddings -->
-    <dimen name="lock_to_app_textview_padding">16dp</dimen>
-
 </resources>
index afceaf2..69eec26 100644 (file)
     <!-- Switch On/Off  -->
     <string name="switch_on_text">On</string>
     <string name="switch_off_text">Off</string>
-
-    <!-- Lock-to-app title [CHAR LIMIT=24] -->
-    <string name="lock_to_app_title">Lock-to-app</string>
-    <!-- Description of lock-to-app feature [CHAR LIMIT=105] -->
-    <string name="lock_to_app_description">Lock-to-app locks the display in a single app.\n\n\nTo start Lock-to-app</string>
-    <!-- Lock-to-app starting instruction 1. [CHAR LIMIT=45] -->
-    <string name="lock_to_app_start_step1">1\t\tTurn the setting on</string>
-    <!-- Lock-to-app starting instruction 2. [CHAR LIMIT=55] -->
-    <string name="lock_to_app_start_step2">2\t\tStart an app you want</string>
-    <!-- Lock-to-app starting instruction 3. The $ is not actually shown or
-         translated, it is a marker of where the recents icon shows up. [CHAR LIMIT=60] -->
-    <string name="lock_to_app_start_step3">3\t\tPress and hold the recent apps button $</string>
-    <!-- Label for whether should use screen lock or not. [CHAR LIMIT=30]-->
-    <string name="lock_to_app_screen_lock">Use screen lock</string>
 </resources>
diff --git a/res/xml/lock_to_app_settings.xml b/res/xml/lock_to_app_settings.xml
deleted file mode 100644 (file)
index f9a0b6c..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2014 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
--->
-
-<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
-        android:title="@string/lock_to_app_title"
-        xmlns:settings="http://schemas.android.com/apk/res/com.android.settings">
-
-        <SwitchPreference
-                android:key="use_screen_lock"
-                android:title="@string/lock_to_app_screen_lock"
-                android:persistent="false" />
-
-</PreferenceScreen>
index 0dbddea..c8f3e02 100644 (file)
                 android:persistent="false"
                 android:fragment="com.android.settings.AdvancedSecuritySettings"/>
     </PreferenceCategory>
-
-    <PreferenceScreen
-        android:key="lock_to_app_settings"
-        android:fragment="com.android.settings.LockToAppSettings"
-        android:title="@string/lock_to_app_title"/>
-
 </PreferenceScreen>
diff --git a/src/com/android/settings/LockToAppSettings.java b/src/com/android/settings/LockToAppSettings.java
deleted file mode 100644 (file)
index 2679728..0000000
+++ /dev/null
@@ -1,258 +0,0 @@
-/*
- * Copyright (C) 2014 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.settings;
-
-import android.app.admin.DevicePolicyManager;
-import android.content.Context;
-import android.content.Intent;
-import android.content.res.Resources;
-import android.graphics.BitmapFactory;
-import android.os.Bundle;
-import android.preference.Preference;
-import android.preference.Preference.OnPreferenceChangeListener;
-import android.preference.PreferenceScreen;
-import android.preference.SwitchPreference;
-import android.provider.Settings;
-import android.provider.Settings.SettingNotFoundException;
-import android.text.Spannable;
-import android.text.SpannableString;
-import android.text.style.DynamicDrawableSpan;
-import android.text.style.ImageSpan;
-import android.view.LayoutInflater;
-import android.view.View;
-import android.view.ViewGroup;
-import android.widget.Switch;
-import android.widget.TextView;
-
-import com.android.internal.widget.LockPatternUtils;
-import com.android.settings.search.BaseSearchIndexProvider;
-import com.android.settings.search.Indexable;
-import com.android.settings.search.SearchIndexableRaw;
-import com.android.settings.widget.SwitchBar;
-
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- * Location access settings.
- */
-public class LockToAppSettings extends SettingsPreferenceFragment
-        implements SwitchBar.OnSwitchChangeListener, Indexable {
-    private static final String TAG = "LockToAppSettings";
-
-    private static final CharSequence KEY_USE_SCREEN_LOCK = "use_screen_lock";
-    private static final int CHANGE_LOCK_METHOD_REQUEST = 123;
-
-    private SwitchBar mSwitchBar;
-    private SwitchPreference mUseScreenLock;
-
-    @Override
-    public void onActivityCreated(Bundle savedInstanceState) {
-        super.onActivityCreated(savedInstanceState);
-
-        final SettingsActivity activity = (SettingsActivity) getActivity();
-
-        mSwitchBar = activity.getSwitchBar();
-        mSwitchBar.addOnSwitchChangeListener(this);
-        mSwitchBar.show();
-    }
-
-    @Override
-    public void onDestroyView() {
-        super.onDestroyView();
-
-        mSwitchBar.removeOnSwitchChangeListener(this);
-        mSwitchBar.hide();
-    }
-
-    @Override
-    public void onStop() {
-        super.onStop();
-    }
-
-    @Override
-    public void onResume() {
-        super.onResume();
-        if (isLockToAppEnabled()) {
-            mSwitchBar.setChecked(true);
-            createPreferenceHierarchy();
-        } else {
-            mSwitchBar.setChecked(false);
-            createSetupInstructions();
-        }
-    }
-
-    @Override
-    public View onCreateView(LayoutInflater inflater, ViewGroup container,
-            Bundle savedInstanceState) {
-        return inflater.inflate(R.layout.lock_to_app_instructions, null);
-    }
-
-    private boolean isLockToAppEnabled() {
-        try {
-            return Settings.System.getInt(getContentResolver(), Settings.System.LOCK_TO_APP_ENABLED)
-                != 0;
-        } catch (SettingNotFoundException e) {
-            return false;
-        }
-    }
-
-    private boolean isLockScreenEnabled() {
-        try {
-            return Settings.System.getInt(getContentResolver(),
-                    Settings.System.LOCK_TO_APP_EXIT_LOCKED) != 0;
-        } catch (SettingNotFoundException e) {
-            return false;
-        }
-    }
-
-    private void setLockToAppEnabled(boolean isEnabled) {
-        Settings.System.putInt(getContentResolver(), Settings.System.LOCK_TO_APP_ENABLED,
-                isEnabled ? 1 : 0);
-    }
-
-    private void setUseLockScreen(boolean useLockScreen) {
-        if (useLockScreen) {
-            LockPatternUtils lockPatternUtils = new LockPatternUtils(getActivity());
-            if (lockPatternUtils.getKeyguardStoredPasswordQuality()
-                    == DevicePolicyManager.PASSWORD_QUALITY_UNSPECIFIED) {
-                Intent chooseLockIntent = new Intent(DevicePolicyManager.ACTION_SET_NEW_PASSWORD);
-                chooseLockIntent.putExtra(
-                        ChooseLockGeneric.ChooseLockGenericFragment.MINIMUM_QUALITY_KEY,
-                        DevicePolicyManager.PASSWORD_QUALITY_SOMETHING);
-                startActivityForResult(chooseLockIntent, CHANGE_LOCK_METHOD_REQUEST);
-                return;
-            }
-        }
-        setUseLockScreenSetting(useLockScreen);
-    }
-
-    private void setUseLockScreenSetting(boolean useLockScreen) {
-        mUseScreenLock.setChecked(useLockScreen);
-        Settings.System.putInt(getContentResolver(), Settings.System.LOCK_TO_APP_EXIT_LOCKED,
-                useLockScreen ? 1 : 0);
-    }
-
-    @Override
-    public void onActivityResult(int requestCode, int resultCode, Intent data) {
-        super.onActivityResult(requestCode, resultCode, data);
-        if (requestCode == CHANGE_LOCK_METHOD_REQUEST) {
-            LockPatternUtils lockPatternUtils = new LockPatternUtils(getActivity());
-            setUseLockScreenSetting(lockPatternUtils.getKeyguardStoredPasswordQuality()
-                    != DevicePolicyManager.PASSWORD_QUALITY_UNSPECIFIED);
-        }
-    }
-
-    private PreferenceScreen createPreferenceHierarchy() {
-        PreferenceScreen root = getPreferenceScreen();
-        if (root != null) {
-            root.removeAll();
-        }
-        getView().findViewById(R.id.instructions_area).setVisibility(View.INVISIBLE);
-        addPreferencesFromResource(R.xml.lock_to_app_settings);
-        root = getPreferenceScreen();
-
-        mUseScreenLock = (SwitchPreference) root.findPreference(KEY_USE_SCREEN_LOCK);
-        mUseScreenLock.setOnPreferenceChangeListener(new OnPreferenceChangeListener() {
-            @Override
-            public boolean onPreferenceChange(Preference preference, Object newValue) {
-                setUseLockScreen((boolean) newValue);
-                return true;
-            }
-        });
-        mUseScreenLock.setChecked(isLockScreenEnabled());
-
-        return root;
-    }
-
-    private void createSetupInstructions() {
-        PreferenceScreen root = getPreferenceScreen();
-        if (root != null) {
-            root.removeAll();
-        }
-        final View view = getView();
-        view.findViewById(R.id.instructions_area).setVisibility(View.VISIBLE);
-
-        final Resources r = Resources.getSystem();
-        TextView tv = (TextView) view.findViewById(R.id.lock_to_app_start_step3);
-        ImageSpan imageSpan = new ImageSpan(getActivity(),
-                BitmapFactory.decodeResource(r, com.android.internal.R.drawable.ic_recent),
-                DynamicDrawableSpan.ALIGN_BOTTOM);
-
-        String descriptionString = getResources().getString(R.string.lock_to_app_start_step3);
-        SpannableString description =
-                new SpannableString(descriptionString.replace('$', ' '));
-        int index = descriptionString.indexOf('$');
-        if (index >= 0) {
-            description.setSpan(imageSpan, index, index + 1, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
-        }
-
-        // Make icon fit.
-        float width = imageSpan.getDrawable().getIntrinsicWidth();
-        float height = imageSpan.getDrawable().getIntrinsicHeight();
-        int lineHeight = tv.getLineHeight();
-        imageSpan.getDrawable().setBounds(0, 0, (int) (lineHeight * width / height), lineHeight);
-
-        tv.setText(description);
-    }
-
-    /**
-     * Listens to the state change of the lock-to-app master switch.
-     */
-    @Override
-    public void onSwitchChanged(Switch switchView, boolean isChecked) {
-        setLockToAppEnabled(isChecked);
-        if (isChecked) {
-            createPreferenceHierarchy();
-        } else {
-            createSetupInstructions();
-        }
-    }
-
-    /**
-     * For search
-     */
-    public static final SearchIndexProvider SEARCH_INDEX_DATA_PROVIDER =
-        new BaseSearchIndexProvider() {
-            @Override
-            public List<SearchIndexableRaw> getRawDataToIndex(Context context, boolean enabled) {
-                final List<SearchIndexableRaw> result = new ArrayList<SearchIndexableRaw>();
-
-                final Resources res = context.getResources();
-
-                // Add fragment title
-                SearchIndexableRaw data = new SearchIndexableRaw(context);
-                data.title = res.getString(R.string.lock_to_app_title);
-                data.screenTitle = res.getString(R.string.lock_to_app_title);
-                result.add(data);
-
-                // Lock-to-app description.
-                data = new SearchIndexableRaw(context);
-                data.title = res.getString(R.string.lock_to_app_description);
-                data.screenTitle = res.getString(R.string.lock_to_app_title);
-                result.add(data);
-
-                // Lock-to-app use screen lock.
-                data = new SearchIndexableRaw(context);
-                data.title = res.getString(R.string.lock_to_app_screen_lock);
-                data.screenTitle = res.getString(R.string.lock_to_app_title);
-                result.add(data);
-
-                return result;
-            }
-        };
-}
index fbb6f99..ba38d53 100644 (file)
@@ -23,7 +23,6 @@ import com.android.settings.DevelopmentSettings;
 import com.android.settings.DeviceInfoSettings;
 import com.android.settings.DisplaySettings;
 import com.android.settings.HomeSettings;
-import com.android.settings.LockToAppSettings;
 import com.android.settings.PrivacySettings;
 import com.android.settings.SecuritySettings;
 import com.android.settings.WallpaperTypeSettings;
@@ -130,7 +129,6 @@ public final class Ranking {
         // Security
         sRankMap.put(SecuritySettings.class.getName(), RANK_SECURITY);
         sRankMap.put(ChooseLockGeneric.ChooseLockGenericFragment.class.getName(), RANK_SECURITY);
-        sRankMap.put(LockToAppSettings.class.getName(), RANK_SECURITY);
 
         // IMEs
         sRankMap.put(InputMethodAndLanguageSettings.class.getName(), RANK_IME);
index 0a3ec2a..e2b1d48 100644 (file)
@@ -25,7 +25,6 @@ import com.android.settings.DevelopmentSettings;
 import com.android.settings.DeviceInfoSettings;
 import com.android.settings.DisplaySettings;
 import com.android.settings.HomeSettings;
-import com.android.settings.LockToAppSettings;
 import com.android.settings.PrivacySettings;
 import com.android.settings.R;
 import com.android.settings.SecuritySettings;
@@ -208,13 +207,6 @@ public final class SearchIndexableResources {
                         ChooseLockGeneric.ChooseLockGenericFragment.class.getName(),
                         R.drawable.ic_settings_security));
 
-        sResMap.put(LockToAppSettings.class.getName(),
-                new SearchIndexableResource(
-                        Ranking.getRankForClassName(LockToAppSettings.class.getName()),
-                        NO_DATA_RES_ID,
-                        LockToAppSettings.class.getName(),
-                        R.drawable.ic_settings_security));
-
         sResMap.put(InputMethodAndLanguageSettings.class.getName(),
                 new SearchIndexableResource(
                         Ranking.getRankForClassName(InputMethodAndLanguageSettings.class.getName()),