From 3946ec11de16034c4f3df09a7714a44a19c99dd0 Mon Sep 17 00:00:00 2001 From: Jeff Boek Date: Fri, 29 May 2020 15:09:12 -0700 Subject: [PATCH] Polish homescreen (#11065) * For #10505 - Adjusts wordmark margins * For #10505 - Removes topsite header, fixes collections header size and removes divider * For #10505 - Restyle the top site items on the homescreen --- .../sessioncontrol/SessionControlAdapter.kt | 3 -- .../home/sessioncontrol/SessionControlView.kt | 1 - .../viewholders/TopSiteHeaderViewHolder.kt | 15 ------- .../res/drawable/top_sites_background.xml | 10 +++++ app/src/main/res/layout/collection_header.xml | 38 ++++-------------- .../main/res/layout/component_top_sites.xml | 2 + app/src/main/res/layout/fragment_home.xml | 6 +-- app/src/main/res/layout/top_site_item.xml | 40 +++++++++++-------- 8 files changed, 46 insertions(+), 69 deletions(-) delete mode 100644 app/src/main/java/org/mozilla/fenix/home/sessioncontrol/viewholders/TopSiteHeaderViewHolder.kt create mode 100644 app/src/main/res/drawable/top_sites_background.xml diff --git a/app/src/main/java/org/mozilla/fenix/home/sessioncontrol/SessionControlAdapter.kt b/app/src/main/java/org/mozilla/fenix/home/sessioncontrol/SessionControlAdapter.kt index cfaf01225..40c34a4fa 100644 --- a/app/src/main/java/org/mozilla/fenix/home/sessioncontrol/SessionControlAdapter.kt +++ b/app/src/main/java/org/mozilla/fenix/home/sessioncontrol/SessionControlAdapter.kt @@ -30,7 +30,6 @@ import org.mozilla.fenix.home.sessioncontrol.viewholders.SaveTabGroupViewHolder import org.mozilla.fenix.home.sessioncontrol.viewholders.TabHeaderViewHolder import org.mozilla.fenix.home.sessioncontrol.viewholders.TabInCollectionViewHolder import org.mozilla.fenix.home.sessioncontrol.viewholders.TabViewHolder -import org.mozilla.fenix.home.sessioncontrol.viewholders.TopSiteHeaderViewHolder import org.mozilla.fenix.home.sessioncontrol.viewholders.TopSiteViewHolder import org.mozilla.fenix.home.sessioncontrol.viewholders.onboarding.OnboardingAutomaticSignInViewHolder import org.mozilla.fenix.home.sessioncontrol.viewholders.onboarding.OnboardingFinishViewHolder @@ -75,7 +74,6 @@ sealed class AdapterItem(@LayoutRes val viewType: Int) { } } - object TopSiteHeader : AdapterItem(TopSiteHeaderViewHolder.LAYOUT_ID) data class TopSiteList(val topSites: List) : AdapterItem(TopSiteViewHolder.LAYOUT_ID) object SaveTabGroup : AdapterItem(SaveTabGroupViewHolder.LAYOUT_ID) @@ -170,7 +168,6 @@ class SessionControlAdapter( return when (viewType) { ButtonTipViewHolder.LAYOUT_ID -> ButtonTipViewHolder(view, interactor) TabHeaderViewHolder.LAYOUT_ID -> TabHeaderViewHolder(view, interactor) - TopSiteHeaderViewHolder.LAYOUT_ID -> TopSiteHeaderViewHolder(view) TabViewHolder.LAYOUT_ID -> TabViewHolder(view, interactor) TopSiteViewHolder.LAYOUT_ID -> TopSiteViewHolder(view, interactor) SaveTabGroupViewHolder.LAYOUT_ID -> SaveTabGroupViewHolder(view, interactor) diff --git a/app/src/main/java/org/mozilla/fenix/home/sessioncontrol/SessionControlView.kt b/app/src/main/java/org/mozilla/fenix/home/sessioncontrol/SessionControlView.kt index f876fe2a3..7abb9dc97 100644 --- a/app/src/main/java/org/mozilla/fenix/home/sessioncontrol/SessionControlView.kt +++ b/app/src/main/java/org/mozilla/fenix/home/sessioncontrol/SessionControlView.kt @@ -51,7 +51,6 @@ private fun normalModeAdapterItems( tip?.let { items.add(AdapterItem.TipItem(it)) } if (topSites.isNotEmpty()) { - items.add(AdapterItem.TopSiteHeader) items.add(AdapterItem.TopSiteList(topSites)) } diff --git a/app/src/main/java/org/mozilla/fenix/home/sessioncontrol/viewholders/TopSiteHeaderViewHolder.kt b/app/src/main/java/org/mozilla/fenix/home/sessioncontrol/viewholders/TopSiteHeaderViewHolder.kt deleted file mode 100644 index 973e8f15e..000000000 --- a/app/src/main/java/org/mozilla/fenix/home/sessioncontrol/viewholders/TopSiteHeaderViewHolder.kt +++ /dev/null @@ -1,15 +0,0 @@ -/* This Source Code Form is subject to the terms of the Mozilla Public - * License, v. 2.0. If a copy of the MPL was not distributed with this - * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ - -package org.mozilla.fenix.home.sessioncontrol.viewholders - -import android.view.View -import androidx.recyclerview.widget.RecyclerView -import org.mozilla.fenix.R - -class TopSiteHeaderViewHolder(private val view: View) : RecyclerView.ViewHolder(view) { - companion object { - const val LAYOUT_ID = R.layout.top_sites_header - } -} diff --git a/app/src/main/res/drawable/top_sites_background.xml b/app/src/main/res/drawable/top_sites_background.xml new file mode 100644 index 000000000..6e697e5dc --- /dev/null +++ b/app/src/main/res/drawable/top_sites_background.xml @@ -0,0 +1,10 @@ + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/collection_header.xml b/app/src/main/res/layout/collection_header.xml index 37080d47a..f78455a0e 100644 --- a/app/src/main/res/layout/collection_header.xml +++ b/app/src/main/res/layout/collection_header.xml @@ -2,33 +2,11 @@ - - - - - - \ No newline at end of file + \ No newline at end of file diff --git a/app/src/main/res/layout/component_top_sites.xml b/app/src/main/res/layout/component_top_sites.xml index 459b89db1..fb5de8b42 100644 --- a/app/src/main/res/layout/component_top_sites.xml +++ b/app/src/main/res/layout/component_top_sites.xml @@ -7,4 +7,6 @@ android:id="@+id/top_sites_list" android:layout_width="wrap_content" android:layout_height="wrap_content" + android:paddingStart="12dp" + android:paddingEnd="12dp" tools:listitem="@layout/top_site_item" /> diff --git a/app/src/main/res/layout/fragment_home.xml b/app/src/main/res/layout/fragment_home.xml index 9fdcc6454..a8f6e3126 100644 --- a/app/src/main/res/layout/fragment_home.xml +++ b/app/src/main/res/layout/fragment_home.xml @@ -46,9 +46,9 @@ android:id="@+id/wordmark" android:layout_width="wrap_content" android:layout_height="40dp" - android:layout_marginStart="16dp" - android:layout_marginTop="16dp" - android:layout_marginBottom="16dp" + android:layout_marginStart="28dp" + android:layout_marginTop="56dp" + android:layout_marginBottom="40dp" android:adjustViewBounds="true" android:clickable="false" android:contentDescription="@string/app_name" diff --git a/app/src/main/res/layout/top_site_item.xml b/app/src/main/res/layout/top_site_item.xml index 8dbdbc80f..eb9bb871d 100644 --- a/app/src/main/res/layout/top_site_item.xml +++ b/app/src/main/res/layout/top_site_item.xml @@ -2,41 +2,47 @@ - + android:layout_marginEnd="16dp" + android:layout_marginBottom="16dp"> - + app:layout_constraintTop_toTopOf="parent"> + + + app:layout_constraintTop_toBottomOf="@id/favicon_wrapper" />