summaryrefslogtreecommitdiffstats
path: root/packages/SystemUI/src/com/android/systemui
diff options
context:
space:
mode:
Diffstat (limited to 'packages/SystemUI/src/com/android/systemui')
-rw-r--r--packages/SystemUI/src/com/android/systemui/qs/QSDragPanel.java47
1 files changed, 27 insertions, 20 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/qs/QSDragPanel.java b/packages/SystemUI/src/com/android/systemui/qs/QSDragPanel.java
index 7301525..26b6daa 100644
--- a/packages/SystemUI/src/com/android/systemui/qs/QSDragPanel.java
+++ b/packages/SystemUI/src/com/android/systemui/qs/QSDragPanel.java
@@ -18,21 +18,17 @@ package com.android.systemui.qs;
import android.animation.Animator;
import android.animation.AnimatorListenerAdapter;
-import android.app.ActivityManager;
import android.app.AlertDialog;
-import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.DialogInterface;
-import android.content.Intent;
-import android.content.IntentFilter;
import android.graphics.Canvas;
import android.graphics.PointF;
import android.graphics.drawable.Drawable;
-import android.provider.Settings;
import android.support.v4.view.PagerAdapter;
import android.support.v4.view.ViewPager;
import android.util.AttributeSet;
import android.util.Log;
+import android.util.TypedValue;
import android.view.DragEvent;
import android.view.LayoutInflater;
import android.view.View;
@@ -40,7 +36,6 @@ import android.view.ViewGroup;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.TextView;
-import android.widget.Toast;
import com.android.internal.logging.MetricsLogger;
import com.android.systemui.R;
import com.android.systemui.qs.tiles.EditTile;
@@ -50,7 +45,7 @@ import com.android.systemui.settings.ToggleSlider;
import com.android.systemui.statusbar.phone.QSTileHost;
import com.android.systemui.statusbar.phone.SystemUIDialog;
import com.android.systemui.tuner.QsTuner;
-import cyanogenmod.providers.CMSettings;
+import com.viewpagerindicator.CirclePageIndicator;
import java.util.ArrayList;
import java.util.Arrays;
@@ -70,6 +65,7 @@ public class QSDragPanel extends QSPanel implements View.OnDragListener, View.On
protected QSViewPager mViewPager;
protected PagerAdapter mPagerAdapter;
QSPanelTopView mQsPanelTop;
+ CirclePageIndicator mPageIndicator;
private DragTileRecord mDraggingRecord;
private boolean mEditing;
@@ -120,8 +116,10 @@ public class QSDragPanel extends QSPanel implements View.OnDragListener, View.On
});
mViewPager = new QSViewPager(getContext());
+ mPageIndicator = new CirclePageIndicator(getContext());
addView(mDetail);
addView(mViewPager);
+ addView(mPageIndicator);
addView(mFooter.getView());
mClipper = new QSDetailClipper(mDetail);
@@ -178,7 +176,11 @@ public class QSDragPanel extends QSPanel implements View.OnDragListener, View.On
return view == object;
}
};
- mViewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {
+ mViewPager.setAdapter(mPagerAdapter);
+ mViewPager.setCurrentItem(0);
+
+ mPageIndicator.setViewPager(mViewPager);
+ mPageIndicator.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {
@Override
public void onPageScrolled(int position, float positionOffset,
int positionOffsetPixels) {
@@ -210,8 +212,6 @@ public class QSDragPanel extends QSPanel implements View.OnDragListener, View.On
}
});
- mViewPager.setAdapter(mPagerAdapter);
- mViewPager.setCurrentItem(0);
setClipChildren(false);
updateResources();
@@ -470,14 +470,13 @@ public class QSDragPanel extends QSPanel implements View.OnDragListener, View.On
final int width = MeasureSpec.getSize(widthMeasureSpec);
mQsPanelTop.measure(exactly(width), MeasureSpec.UNSPECIFIED);
-
- final int brightnessHeight = mQsPanelTop.getMeasuredHeight();
-
- mFooter.getView().measure(exactly(width), MeasureSpec.UNSPECIFIED);
-
mViewPager.measure(exactly(width), MeasureSpec.UNSPECIFIED);
+ mPageIndicator.measure(exactly(width), MeasureSpec.UNSPECIFIED);
+ mFooter.getView().measure(exactly(width), MeasureSpec.UNSPECIFIED);
- int h = brightnessHeight + mViewPager.getMeasuredHeight();
+ int h = mQsPanelTop.getMeasuredHeight()
+ + mViewPager.getMeasuredHeight()
+ + mPageIndicator.getMeasuredHeight();
if (mFooter.hasFooter()) {
h += mFooter.getView().getMeasuredHeight();
}
@@ -507,12 +506,20 @@ public class QSDragPanel extends QSPanel implements View.OnDragListener, View.On
if (DEBUG_DRAG) Log.d(TAG, "onLayout()");
final int w = getWidth();
- mQsPanelTop.layout(0, t, mQsPanelTop.getMeasuredWidth(),
- t + mQsPanelTop.getMeasuredHeight());
+ int top = 0;
+ mQsPanelTop.layout(0, top, w, top + mQsPanelTop.getMeasuredHeight());
+ top += mQsPanelTop.getMeasuredHeight();
+ mViewPager.layout(0, top, w, top + mViewPager.getMeasuredHeight());
+ top += mViewPager.getMeasuredHeight();
+
+ // layout page indicator below view pager
+ mPageIndicator.layout(0, top, w, top + mPageIndicator.getMeasuredHeight());
+
+ // detail takes up whole height
final int dh = Math.max(mDetail.getMeasuredHeight(), mViewPager.getMeasuredHeight());
- mViewPager.layout(0, t + mQsPanelTop.getMeasuredHeight(), w, t + dh);
- mDetail.layout(0, t, mDetail.getMeasuredWidth(), t + dh);
+ mDetail.layout(0, 0, mDetail.getMeasuredWidth(), getMeasuredHeight());
+
if (mFooter.hasFooter()) {
View footer = mFooter.getView();
footer.layout(0, getMeasuredHeight() - footer.getMeasuredHeight(),