diff options
-rw-r--r-- | res/values/strings.xml | 5 | ||||
-rw-r--r-- | res/xml/preferences.xml | 11 | ||||
-rw-r--r-- | src/com/cyanogenmod/trebuchet/AppsCustomizePagedView.java | 22 | ||||
-rw-r--r-- | src/com/cyanogenmod/trebuchet/AppsCustomizeTabHost.java | 6 | ||||
-rw-r--r-- | src/com/cyanogenmod/trebuchet/preference/PreferencesProvider.java | 8 |
5 files changed, 50 insertions, 2 deletions
diff --git a/res/values/strings.xml b/res/values/strings.xml index 14b1ae7..f4e1b8c 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -318,6 +318,11 @@ s --> <string name="preferences_interface_drawer_widgets_category">Widgets</string> <string name="preferences_interface_drawer_widgets_join_apps_title">Join with Apps</string> <string name="preferences_interface_drawer_widgets_join_apps_summary">Swipe from apps drawer to widgets drawer without changing tabs</string> + <string name="preferences_interface_drawer_indicator_category">Indicator</string> + <string name="preferences_interface_drawer_indicator_enable_title">Show Page Indicator</string> + <string name="preferences_interface_drawer_indicator_enable_summary">Show current page indicator at the bottom of the screen</string> + <string name="preferences_interface_drawer_indicator_fade_title">Fade Indicator</string> + <string name="preferences_interface_drawer_indicator_fade_summary">Fade the indicator after the page has changed</string> <!-- Dock --> <string name="preferences_interface_dock_title">Dock</string> diff --git a/res/xml/preferences.xml b/res/xml/preferences.xml index d1585e2..a39c434 100644 --- a/res/xml/preferences.xml +++ b/res/xml/preferences.xml @@ -77,6 +77,17 @@ android:summary="@string/preferences_interface_drawer_widgets_join_apps_summary" android:defaultValue="true" /> </PreferenceCategory> + <PreferenceCategory android:title="@string/preferences_interface_drawer_indicator_category"> + <CheckBoxPreference android:key="ui_drawer_indicator_enable" + android:title="@string/preferences_interface_drawer_indicator_enable_title" + android:summary="@string/preferences_interface_drawer_indicator_enable_summary" + android:defaultValue="true" /> + <CheckBoxPreference android:key="ui_drawer_indicator_fade" + android:title="@string/preferences_interface_drawer_indicator_fade_title" + android:summary="@string/preferences_interface_drawer_indicator_fade_summary" + android:defaultValue="true" + android:dependency="ui_drawer_indicator_enable" /> + </PreferenceCategory> </PreferenceScreen> <!-- Dock --> diff --git a/src/com/cyanogenmod/trebuchet/AppsCustomizePagedView.java b/src/com/cyanogenmod/trebuchet/AppsCustomizePagedView.java index 851ded8..a798d79 100644 --- a/src/com/cyanogenmod/trebuchet/AppsCustomizePagedView.java +++ b/src/com/cyanogenmod/trebuchet/AppsCustomizePagedView.java @@ -332,6 +332,8 @@ public class AppsCustomizePagedView extends PagedViewWithDraggableItems implemen // Preferences private boolean mJoinWidgetsApps; + private boolean mShowScrollingIndicator; + private boolean mFadeScrollingIndicator; public AppsCustomizePagedView(Context context, AttributeSet attrs) { super(context, attrs); @@ -346,6 +348,12 @@ public class AppsCustomizePagedView extends PagedViewWithDraggableItems implemen // Preferences mJoinWidgetsApps = PreferencesProvider.Interface.Drawer.getJoinWidgetsApps(context); + mShowScrollingIndicator = PreferencesProvider.Interface.Drawer.getShowScrollingIndicator(context); + mFadeScrollingIndicator = PreferencesProvider.Interface.Drawer.getFadeScrollingIndicator(context); + + if (!mShowScrollingIndicator) { + disableScrollingIndicator(); + } // Save the default widget preview background Resources resources = context.getResources(); @@ -1817,13 +1825,25 @@ public class AppsCustomizePagedView extends PagedViewWithDraggableItems implemen @Override protected void onPageEndMoving() { - super.onPageEndMoving(); + if (mFadeScrollingIndicator) { + hideScrollingIndicator(false); + } mForceDrawAllChildrenNextFrame = true; + // We reset the save index when we change pages so that it will be recalculated on next // rotation mSaveInstanceStateItemIndex = -1; } + @Override + protected void flashScrollingIndicator(boolean animated) { + if (mFadeScrollingIndicator) { + super.flashScrollingIndicator(animated); + } else { + showScrollingIndicator(false); + } + } + /* * AllAppsView implementation */ diff --git a/src/com/cyanogenmod/trebuchet/AppsCustomizeTabHost.java b/src/com/cyanogenmod/trebuchet/AppsCustomizeTabHost.java index acc7a0e..cad6fe9 100644 --- a/src/com/cyanogenmod/trebuchet/AppsCustomizeTabHost.java +++ b/src/com/cyanogenmod/trebuchet/AppsCustomizeTabHost.java @@ -57,7 +57,9 @@ public class AppsCustomizeTabHost extends TabHost implements LauncherTransitiona private boolean mResetAfterTransition; private Runnable mRelayoutAndMakeVisible; + // Preferences private boolean mJoinWidgetsApps; + private boolean mFadeScrollingIndicator; public AppsCustomizeTabHost(Context context, AttributeSet attrs) { super(context, attrs); @@ -68,7 +70,9 @@ public class AppsCustomizeTabHost extends TabHost implements LauncherTransitiona mTabsContainer.setAlpha(1f); } }; + // Preferences mJoinWidgetsApps = PreferencesProvider.Interface.Drawer.getJoinWidgetsApps(context); + mFadeScrollingIndicator = PreferencesProvider.Interface.Drawer.getFadeScrollingIndicator(context); } /** @@ -428,7 +432,7 @@ public class AppsCustomizeTabHost extends TabHost implements LauncherTransitiona // prevent slowing down the animation) mAppsCustomizePane.loadAssociatedPages(mAppsCustomizePane.getCurrentPage()); - if (!LauncherApplication.isScreenLarge()) { + if (!LauncherApplication.isScreenLarge() && mFadeScrollingIndicator) { mAppsCustomizePane.hideScrollingIndicator(false); } } diff --git a/src/com/cyanogenmod/trebuchet/preference/PreferencesProvider.java b/src/com/cyanogenmod/trebuchet/preference/PreferencesProvider.java index f08929f..ff7b29d 100644 --- a/src/com/cyanogenmod/trebuchet/preference/PreferencesProvider.java +++ b/src/com/cyanogenmod/trebuchet/preference/PreferencesProvider.java @@ -74,6 +74,14 @@ public final class PreferencesProvider { final SharedPreferences preferences = context.getSharedPreferences(PREFERENCES_KEY, 0); return preferences.getBoolean("ui_drawer_widgets_join_apps", true); } + public static boolean getShowScrollingIndicator(Context context) { + final SharedPreferences preferences = context.getSharedPreferences(PREFERENCES_KEY, 0); + return preferences.getBoolean("ui_drawer_indicator_enable", true); + } + public static boolean getFadeScrollingIndicator(Context context) { + final SharedPreferences preferences = context.getSharedPreferences(PREFERENCES_KEY, 0); + return preferences.getBoolean("ui_drawer_indicator_fade", true); + } } public static class Dock { |