Bug 1293790 - Add indicator to topsites pager r?sebastian
MozReview-Commit-ID: 4jhRga5FWLi
--- a/mobile/android/base/java/org/mozilla/gecko/home/activitystream/StreamItem.java
+++ b/mobile/android/base/java/org/mozilla/gecko/home/activitystream/StreamItem.java
@@ -10,16 +10,17 @@ import android.support.v7.widget.Recycle
import android.text.format.DateUtils;
import android.view.View;
import android.widget.ImageView;
import android.widget.TextView;
import org.mozilla.gecko.R;
import org.mozilla.gecko.db.BrowserContract;
import org.mozilla.gecko.home.HomePager;
+import org.mozilla.gecko.home.activitystream.topsites.CirclePageIndicator;
import org.mozilla.gecko.home.activitystream.topsites.TopSitesPagerAdapter;
public abstract class StreamItem extends RecyclerView.ViewHolder {
public StreamItem(View itemView) {
super(itemView);
}
public void bind(Cursor cursor) {
@@ -30,16 +31,19 @@ public abstract class StreamItem extends
public static final int LAYOUT_ID = R.layout.activity_stream_main_toppanel;
private final ViewPager topSitesPager;
public TopPanel(View itemView, HomePager.OnUrlOpenListener onUrlOpenListener) {
super(itemView);
topSitesPager = (ViewPager) itemView.findViewById(R.id.topsites_pager);
topSitesPager.setAdapter(new TopSitesPagerAdapter(itemView.getContext(), onUrlOpenListener));
+
+ CirclePageIndicator indicator = (CirclePageIndicator) itemView.findViewById(R.id.topsites_indicator);
+ indicator.setViewPager(topSitesPager);
}
@Override
public void bind(Cursor cursor) {
((TopSitesPagerAdapter) topSitesPager.getAdapter()).swapCursor(cursor);
}
}
--- a/mobile/android/base/resources/layout/activity_stream_main_toppanel.xml
+++ b/mobile/android/base/resources/layout/activity_stream_main_toppanel.xml
@@ -1,13 +1,14 @@
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="wrap_content"
+ xmlns:app="http://schemas.android.com/apk/res-auto"
android:orientation="vertical"
android:padding="4dp">
<TextView
android:id="@+id/title_topsites"
android:text="@string/activity_stream_topsites"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
@@ -34,23 +35,36 @@
<android.support.v4.view.ViewPager
android:layout_width="match_parent"
android:layout_height="115dp"
android:id="@+id/topsites_pager"
android:layout_below="@+id/title_topsites"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"/>
+ <org.mozilla.gecko.home.activitystream.topsites.CirclePageIndicator
+ android:id="@+id/topsites_indicator"
+ android:padding="10dip"
+ app:fillColor="#444444"
+ app:pageColor="#FFFFFF"
+ app:strokeWidth="1dp"
+ app:radius="2dp"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:layout_below="@+id/topsites_pager"
+ android:layout_alignParentRight="true"
+ android:layout_alignParentEnd="true"/>
+
<TextView
android:id="@+id/title_highlights"
android:text="@string/activity_stream_highlights"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textStyle="bold"
- android:layout_below="@+id/topsites_pager"
+ android:layout_below="@+id/topsites_indicator"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_toLeftOf="@+id/more_highlights"
android:layout_toStartOf="@+id/more_highlights"/>
<TextView
android:id="@+id/more_highlights"
android:layout_width="wrap_content"
@@ -58,10 +72,9 @@
android:textAllCaps="true"
android:textColor="@android:color/holo_orange_dark"
android:textSize="14sp"
android:text="@string/activity_stream_more"
android:layout_alignTop="@+id/title_highlights"
android:layout_alignLeft="@+id/more_topsites"
android:layout_alignStart="@+id/more_topsites"/>
-
</RelativeLayout>
\ No newline at end of file