summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--res/values/strings.xml5
-rw-r--r--res/xml/preferences.xml11
-rw-r--r--src/com/cyanogenmod/trebuchet/AppsCustomizePagedView.java22
-rw-r--r--src/com/cyanogenmod/trebuchet/AppsCustomizeTabHost.java6
-rw-r--r--src/com/cyanogenmod/trebuchet/preference/PreferencesProvider.java8
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 {