summaryrefslogtreecommitdiffstats
path: root/src/com/android/launcher3/list/SettingsPinnedHeaderAdapter.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/com/android/launcher3/list/SettingsPinnedHeaderAdapter.java')
-rw-r--r--src/com/android/launcher3/list/SettingsPinnedHeaderAdapter.java46
1 files changed, 42 insertions, 4 deletions
diff --git a/src/com/android/launcher3/list/SettingsPinnedHeaderAdapter.java b/src/com/android/launcher3/list/SettingsPinnedHeaderAdapter.java
index 8a77502e8..fdb38312c 100644
--- a/src/com/android/launcher3/list/SettingsPinnedHeaderAdapter.java
+++ b/src/com/android/launcher3/list/SettingsPinnedHeaderAdapter.java
@@ -14,6 +14,7 @@ import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.TextView;
+import com.android.launcher3.AppDrawerListAdapter;
import com.android.launcher3.AppsCustomizePagedView;
import com.android.launcher3.DeviceProfile;
import com.android.launcher3.Launcher;
@@ -131,14 +132,17 @@ public class SettingsPinnedHeaderAdapter extends PinnedHeaderListAdapter {
case OverviewSettingsPanel.DRAWER_SETTINGS_POSITION:
switch (position) {
case 0:
+ updateDrawerTypeSettingsItem(v);
+ break;
+ case 1:
state = mLauncher.getAppsCustomizeTransitionEffect();
state = mapEffectToValue(state);
((TextView) v.findViewById(R.id.item_state)).setText(state);
break;
- case 1:
+ case 2:
updateDrawerSortSettingsItem(v);
break;
- case 2:
+ case 3:
current = SettingsProvider.getBoolean(mContext,
SettingsProvider.SETTINGS_UI_DRAWER_HIDE_ICON_LABELS,
R.bool.preferences_interface_drawer_hide_icon_labels_default);
@@ -201,6 +205,24 @@ public class SettingsPinnedHeaderAdapter extends PinnedHeaderListAdapter {
((TextView) v.findViewById(R.id.item_state)).setText(state);
}
+ public void updateDrawerTypeSettingsItem(View v) {
+ String state = "";
+ AppDrawerListAdapter.DrawerType type =
+ AppDrawerListAdapter.DrawerType.getModeForValue(
+ SettingsProvider.getInt(mLauncher,
+ SettingsProvider.SETTINGS_UI_DRAWER_TYPE,
+ R.integer.preferences_interface_drawer_type_default));
+ switch (type) {
+ case Drawer:
+ state = mLauncher.getResources().getString(R.string.drawer_type_drawer);
+ break;
+ case Pager:
+ state = mLauncher.getResources().getString(R.string.drawer_type_pager);
+ break;
+ }
+ ((TextView) v.findViewById(R.id.item_state)).setText(state);
+ }
+
public void updateDynamicGridSizeSettingsItem(View v) {
DeviceProfile.GridSize gridSize = DeviceProfile.GridSize.getModeForValue(
SettingsProvider.getIntCustomDefault(mLauncher,
@@ -287,12 +309,15 @@ public class SettingsPinnedHeaderAdapter extends PinnedHeaderListAdapter {
case OverviewSettingsPanel.DRAWER_SETTINGS_POSITION:
switch (position) {
case 0:
- mLauncher.onClickTransitionEffectButton(v, true);
+ onClickDrawerTypeButton();
break;
case 1:
- onClickSortButton();
+ mLauncher.onClickTransitionEffectButton(v, true);
break;
case 2:
+ onClickSortButton();
+ break;
+ case 3:
onIconLabelsBooleanChanged(v,
SettingsProvider.SETTINGS_UI_DRAWER_HIDE_ICON_LABELS,
R.bool.preferences_interface_drawer_hide_icon_labels_default);
@@ -370,4 +395,17 @@ public class SettingsPinnedHeaderAdapter extends PinnedHeaderListAdapter {
notifyDataSetChanged();
}
+
+ private void onClickDrawerTypeButton() {
+ int type = SettingsProvider.getInt(mLauncher,
+ SettingsProvider.SETTINGS_UI_DRAWER_TYPE,
+ R.integer.preferences_interface_drawer_type_default);
+
+ type = (type + 1) % AppDrawerListAdapter.DrawerType.values().length;
+ SettingsProvider.putInt(mLauncher, SettingsProvider.SETTINGS_UI_DRAWER_TYPE, type);
+
+ mLauncher.updateDrawerType();
+
+ notifyDataSetChanged();
+ }
}