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

Commit 97ac5c77 authored by Daniel Nishi's avatar Daniel Nishi Committed by Android (Google) Code Review
Browse files

Merge "Update the storage manager settings to match the mocks." into nyc-mr1-dev

parents 076731b8 ba03d2ff
Loading
Loading
Loading
Loading
+14 −0
Original line number Diff line number Diff line
@@ -2458,6 +2458,8 @@
    <string name="storage_menu_explore">Explore</string>
    <!-- Storage setting. Menu option for using the deletion helper. [CHAR LIMIT=30] -->
    <string name="storage_menu_free">Free up space</string>
    <!-- Storage setting. Menu option for accessing the storage manager settings. [CHAR LIMIT=30] -->
    <string name="storage_menu_manage">Manage storage</string>
    <!-- Storage setting.  Title for USB transfer settings [CHAR LIMIT=30]-->
    <string name="storage_title_usb">USB computer connection</string>
@@ -7637,4 +7639,16 @@
    <!-- Summary for the apps category in the deletion helper, showing how many space to clear. [CHAR LIMIT=NONE]-->
    <string name="deletion_helper_apps_group_summary"><xliff:g id="used" example="1.2GB">%1$s</xliff:g></string>
    <!-- Category title for the automatic settings in the storage manager settings. [CHAR LIMIT=40] -->
    <string name="deletion_helper_automatic_title">Automatic</string>
    <!-- Category title for the manual settings in the storage manager settings. [CHAR LIMIT=40] -->
    <string name="deletion_helper_manual_title">Manual</string>
    <!-- Preference menu title for accessing the deletion helper from the storage manager settings. [CHAR LIMIT=30]-->
    <string name="deletion_helper_preference_title">Free space now</string>
    <!-- Preference title for the automatic storage manager toggle. [CHAR LIMIT=60]-->
    <string name="automatic_storage_manager_preference_title">Storage manager</string>
</resources>
+27 −13
Original line number Diff line number Diff line
@@ -18,6 +18,15 @@
        xmlns:settings="http://schemas.android.com/apk/res-auto"
        android:title="@string/automatic_storage_manager_settings" >

    <PreferenceCategory
        android:key="automatic"
        android:title="@string/deletion_helper_automatic_title">

        <SwitchPreference
            android:key="storage_manager_active"
            android:title="@string/automatic_storage_manager_preference_title"
            android:summary="@string/automatic_storage_manager_text"/>

        <DropDownPreference
            android:key="days"
            android:summary="%s"
@@ -25,11 +34,16 @@
            android:entries="@array/automatic_storage_management_days"
            android:entryValues="@array/automatic_storage_management_days_values"/>

    <com.android.settings.fuelgauge.WallOfTextPreference
        android:key="disclaimer"
        android:summary="@string/automatic_storage_manager_text"
        android:persistent="false"
        android:selectable="false"
        settings:allowDividerAbove="true" />
    </PreferenceCategory>

    <PreferenceCategory
        android:key="manual"
        android:title="@string/deletion_helper_manual_title">

        <Preference
            android:key="deletion_helper"
            android:title="@string/deletion_helper_preference_title"/>

    </PreferenceCategory>

</PreferenceScreen>
 No newline at end of file
+29 −24
Original line number Diff line number Diff line
@@ -21,6 +21,7 @@ import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Switch;
import android.support.v14.preference.SwitchPreference;
import android.support.v7.preference.DropDownPreference;
import android.support.v7.preference.Preference;
import android.support.v7.preference.Preference.OnPreferenceChangeListener;
@@ -38,11 +39,14 @@ import com.android.settings.widget.SwitchBar.OnSwitchChangeListener;
 * automatic storage manager.
 */
public class AutomaticStorageManagerSettings extends SettingsPreferenceFragment implements
        OnSwitchChangeListener, OnPreferenceChangeListener {
        OnPreferenceChangeListener, Preference.OnPreferenceClickListener {
    private static final String KEY_DAYS = "days";
    private static final String KEY_DELETION_HELPER = "deletion_helper";
    private static final String KEY_STORAGE_MANAGER_SWITCH = "storage_manager_active";

    private SwitchBar mSwitchBar;
    private DropDownPreference mDaysToRetain;
    private Preference mDeletionHelper;
    private SwitchPreference mStorageManagerSwitch;

    @Override
    public void onCreate(Bundle savedInstanceState) {
@@ -53,33 +57,34 @@ public class AutomaticStorageManagerSettings extends SettingsPreferenceFragment
    @Override
    public void onActivityCreated(Bundle savedInstanceState) {
        super.onActivityCreated(savedInstanceState);
        Activity activity = getActivity();
        mSwitchBar = ((SettingsActivity) activity).getSwitchBar();
        mSwitchBar.show();
        mSwitchBar.addOnSwitchChangeListener(this);
        // TODO: Initialize the switch bar position based on if the storage manager is active.

        mDaysToRetain = (DropDownPreference) findPreference(KEY_DAYS);
        mDaysToRetain.setOnPreferenceChangeListener(this);

        mDeletionHelper = findPreference(KEY_DELETION_HELPER);
        mDeletionHelper.setOnPreferenceClickListener(this);

        mStorageManagerSwitch = (SwitchPreference) findPreference(KEY_STORAGE_MANAGER_SWITCH);
        mStorageManagerSwitch.setOnPreferenceChangeListener(this);
    }

    @Override
    public void onResume() {
        super.onResume();
        // TODO: Initialize the switch bar position based on if the storage manager is active.
        maybeShowDayDropdown(mSwitchBar.isChecked());
    }

    @Override
    public void onSwitchChanged(Switch switchView, boolean isChecked) {
        // TODO: Flip a setting which controls if the storage manager should run.
        maybeShowDayDropdown(isChecked);
        mDaysToRetain.setEnabled(mStorageManagerSwitch.isChecked());
    }

    @Override
    public boolean onPreferenceChange(Preference preference, Object newValue) {
        switch (preference.getKey()) {
            case KEY_STORAGE_MANAGER_SWITCH:
                boolean checked = (boolean) newValue;
                mDaysToRetain.setEnabled(checked);
                break;
            case KEY_DAYS:
                // TODO: Configure a setting which controls how many days of data the storage manager
                // should retain.
                break;
        }
        return true;
    }

@@ -88,12 +93,12 @@ public class AutomaticStorageManagerSettings extends SettingsPreferenceFragment
        return MetricsEvent.STORAGE_MANAGER_SETTINGS;
    }

    private void maybeShowDayDropdown(boolean shouldShow) {
        PreferenceScreen screen = getPreferenceScreen();
        if (shouldShow) {
            screen.addPreference(mDaysToRetain);
        } else {
            screen.removePreference(mDaysToRetain);
    @Override
    public boolean onPreferenceClick(Preference preference) {
        if (KEY_DELETION_HELPER.equals(preference.getKey())) {
            startFragment(this, DeletionHelperFragment.class.getCanonicalName(),
                    R.string.deletion_helper_title, 0, null);
        }
        return true;
    }
}
+2 −2
Original line number Diff line number Diff line
@@ -170,7 +170,7 @@ public class PrivateVolumeSettings extends SettingsPreferenceFragment {
        mCurrentUser = mUserManager.getUserInfo(UserHandle.myUserId());

        mExplore = buildAction(R.string.storage_menu_explore);
        mAutomaticStorageManagement = buildAction(R.string.storage_settings);
        mAutomaticStorageManagement = buildAction(R.string.storage_menu_manage);

        mNeedsUpdate = true;

@@ -485,7 +485,7 @@ public class PrivateVolumeSettings extends SettingsPreferenceFragment {
            case R.string.storage_menu_explore: {
                intent = mSharedVolume.buildBrowseIntent();
            } break;
            case R.string.storage_settings: {
            case R.string.storage_menu_manage: {
                startFragment(this, AutomaticStorageManagerSettings.class.getCanonicalName(),
                        R.string.automatic_storage_manager_settings, 0, null);
                return true;