diff options
author | Matt Garnes <matt@cyngn.com> | 2014-06-20 13:39:50 -0700 |
---|---|---|
committer | Matt Garnes <matt@cyngn.com> | 2014-07-15 12:02:49 -0700 |
commit | 4a65b0c3022357d2b14db196224931cc35f14417 (patch) | |
tree | a7cf6c311589d8430f0a50627d894815380ad7da /src/com/android/launcher3/list/SettingsPinnedHeaderAdapter.java | |
parent | 7a1a596b98941f7bda517e5c401086e57c9dff61 (diff) | |
download | android_packages_apps_Trebuchet-4a65b0c3022357d2b14db196224931cc35f14417.tar.gz android_packages_apps_Trebuchet-4a65b0c3022357d2b14db196224931cc35f14417.tar.bz2 android_packages_apps_Trebuchet-4a65b0c3022357d2b14db196224931cc35f14417.zip |
Add support for CMHome (1/2)
Add permission for DashClock extensions.
Change Trebuchet to allow viewing additional screen.
Add setting that to configure Google Now / CMHome.
Change-Id: I63286a2cce87455ed411bd4c77680200eec89be7
Diffstat (limited to 'src/com/android/launcher3/list/SettingsPinnedHeaderAdapter.java')
-rw-r--r-- | src/com/android/launcher3/list/SettingsPinnedHeaderAdapter.java | 74 |
1 files changed, 46 insertions, 28 deletions
diff --git a/src/com/android/launcher3/list/SettingsPinnedHeaderAdapter.java b/src/com/android/launcher3/list/SettingsPinnedHeaderAdapter.java index 7fb15fc12..a4a68fb85 100644 --- a/src/com/android/launcher3/list/SettingsPinnedHeaderAdapter.java +++ b/src/com/android/launcher3/list/SettingsPinnedHeaderAdapter.java @@ -124,15 +124,7 @@ public class SettingsPinnedHeaderAdapter extends PinnedHeaderListAdapter { ((TextView) v.findViewById(R.id.item_state)).setText(state); } else if (title.equals(res .getString(R.string.search_screen_left_text))) { - boolean current = SettingsProvider - .getBoolean( - mContext, - SettingsProvider.SETTINGS_UI_HOMESCREEN_SEARCH_SCREEN_LEFT, - R.bool.preferences_interface_homescreen_search_screen_left_default); - String state = current ? res.getString( - R.string.setting_state_on) : res.getString( - R.string.setting_state_off); - ((TextView) v.findViewById(R.id.item_state)).setText(state); + updateSearchPanelItem(v); } else if (title.equals(res.getString(R.string.scrolling_wallpaper))) { boolean current = SettingsProvider .getBoolean( @@ -186,6 +178,24 @@ public class SettingsPinnedHeaderAdapter extends PinnedHeaderListAdapter { ((TextView) v.findViewById(R.id.item_state)).setText(state); } + public void updateSearchPanelItem(View v) { + String state = ""; + switch (mLauncher.getCustomContentMode()) { + case DISABLED: + state = mLauncher.getResources().getString( + R.string.setting_state_off); + break; + case GEL: + state = mLauncher.getResources().getString(R.string.search_panel_gel); + break; + default: + state = mLauncher.getResources().getString( + R.string.search_panel_custom_home); + break; + } + ((TextView) v.findViewById(R.id.item_state)).setText(state); + } + public void updateDynamicGridSizeSettingsItem(View v) { DeviceProfile.GridSize gridSize = DeviceProfile.GridSize.getModeForValue( SettingsProvider.getIntCustomDefault(mLauncher, @@ -293,25 +303,11 @@ public class SettingsPinnedHeaderAdapter extends PinnedHeaderListAdapter { } else if (value.equals(res .getString(R.string.search_screen_left_text)) && ((Integer)v.getTag() == OverviewSettingsPanel.HOME_SETTINGS_POSITION)) { - - boolean current = SettingsProvider.getBoolean(mContext, - SettingsProvider.SETTINGS_UI_HOMESCREEN_SEARCH_SCREEN_LEFT, - R.bool.preferences_interface_homescreen_search_screen_left_default); - - // If GEL integration is not supported, do not allow the user to turn it on. - if(!current && !mLauncher.isGelIntegrationSupported()) { - Toast.makeText(mLauncher.getApplicationContext(), - res.getString(R.string.search_screen_left_unsupported_toast), - Toast.LENGTH_SHORT).show(); - } else { - onSettingsBooleanChanged( - v, - SettingsProvider.SETTINGS_UI_HOMESCREEN_SEARCH_SCREEN_LEFT, - R.bool.preferences_interface_homescreen_search_screen_left_default); - mLauncher.restoreGelSetting(); - mLauncher.getWorkspace().updatePageScrollForCustomPage(!current); - mLauncher.setUpdateDynamicGrid(); - } + onClickSearchPanelButton(); + boolean customContentEnabled = + mLauncher.getCustomContentMode() != Launcher.CustomContentMode.DISABLED; + mLauncher.getWorkspace().updatePageScrollForCustomPage(customContentEnabled); + mLauncher.setUpdateDynamicGrid(); } else if (value.equals(res .getString(R.string.grid_size_text))) { mLauncher.onClickDynamicGridSizeButton(); @@ -370,4 +366,26 @@ public class SettingsPinnedHeaderAdapter extends PinnedHeaderListAdapter { notifyDataSetChanged(); } + + private void onClickSearchPanelButton() { + int searchPanelVal = SettingsProvider.getIntCustomDefault(mLauncher, + SettingsProvider.SETTINGS_UI_HOMESCREEN_SEARCH_PANEL_LEFT, + Launcher.CustomContentMode.DISABLED.getValue()); + + Launcher.CustomContentMode nextCCMode = + Launcher.CustomContentMode.getModeForValue(searchPanelVal + 1); + if(nextCCMode == Launcher.CustomContentMode.GEL && !mLauncher.isGelIntegrationSupported()) { + // GEL is not supported, skip that option + searchPanelVal++; + } + + searchPanelVal = (searchPanelVal + 1) % Launcher.CustomContentMode.values().length; + mLauncher.setCustomContentMode(Launcher.CustomContentMode.getModeForValue(searchPanelVal)); + + SettingsProvider.putInt(mLauncher, + SettingsProvider.SETTINGS_UI_HOMESCREEN_SEARCH_PANEL_LEFT, + searchPanelVal); + + notifyDataSetChanged(); + } } |