Bug 1293790 - Add indicator to topsites pager r?sebastian draft
authorAndrzej Hunt <ahunt@mozilla.com>
Wed, 24 Aug 2016 11:25:49 -0700
changeset 405109 a34d2078e891131078162ee4a8e16989acc7b3a4
parent 405108 4578ed96e309b4c01d4e4bd599fc452f49424c37
child 406904 cf64ee1b4e90d5f96cfb179d1cd9cdbfce422eaa
push id27385
push userahunt@mozilla.com
push dateWed, 24 Aug 2016 18:42:24 +0000
reviewerssebastian
bugs1293790
milestone51.0a1
Bug 1293790 - Add indicator to topsites pager r?sebastian MozReview-Commit-ID: 4jhRga5FWLi
mobile/android/base/java/org/mozilla/gecko/home/activitystream/StreamItem.java
mobile/android/base/resources/layout/activity_stream_main_toppanel.xml
--- 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