diff --git a/app/build.gradle b/app/build.gradle index ad79842d8..0aab34e4e 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -470,6 +470,7 @@ dependencies { implementation Deps.mozilla_ui_colors implementation Deps.mozilla_ui_icons implementation Deps.mozilla_ui_publicsuffixlist + implementation Deps.mozilla_ui_widgets implementation Deps.mozilla_lib_crash implementation Deps.mozilla_lib_push_firebase diff --git a/app/src/main/java/org/mozilla/fenix/home/sessioncontrol/viewholders/topsites/TopSiteItemViewHolder.kt b/app/src/main/java/org/mozilla/fenix/home/sessioncontrol/viewholders/topsites/TopSiteItemViewHolder.kt index 4812197db..4f5ee6e1e 100644 --- a/app/src/main/java/org/mozilla/fenix/home/sessioncontrol/viewholders/topsites/TopSiteItemViewHolder.kt +++ b/app/src/main/java/org/mozilla/fenix/home/sessioncontrol/viewholders/topsites/TopSiteItemViewHolder.kt @@ -11,7 +11,6 @@ import android.view.View import android.widget.PopupWindow import androidx.appcompat.content.res.AppCompatResources.getDrawable import kotlinx.android.synthetic.main.top_site_item.* -import kotlinx.android.synthetic.main.top_site_item.view.* import mozilla.components.browser.menu.BrowserMenuBuilder import mozilla.components.browser.menu.item.SimpleBrowserMenuItem import mozilla.components.feature.top.sites.TopSite @@ -44,7 +43,7 @@ class TopSiteItemViewHolder( } top_site_item.setOnLongClickListener { - val menu = topSiteMenu.menuBuilder.build(view.context).show(anchor = it.top_site_title) + val menu = topSiteMenu.menuBuilder.build(view.context).show(anchor = it) it.setOnTouchListener @SuppressLint("ClickableViewAccessibility") { v, event -> onTouchEvent(v, event, menu) } diff --git a/app/src/main/java/org/mozilla/fenix/settings/logins/view/LoginsListViewHolder.kt b/app/src/main/java/org/mozilla/fenix/settings/logins/view/LoginsListViewHolder.kt index b5cd79943..223139995 100644 --- a/app/src/main/java/org/mozilla/fenix/settings/logins/view/LoginsListViewHolder.kt +++ b/app/src/main/java/org/mozilla/fenix/settings/logins/view/LoginsListViewHolder.kt @@ -5,21 +5,18 @@ package org.mozilla.fenix.settings.logins.view import android.view.View -import androidx.recyclerview.widget.RecyclerView -import kotlinx.android.synthetic.main.logins_item.view.* +import kotlinx.android.synthetic.main.logins_item.* import org.mozilla.fenix.ext.components import org.mozilla.fenix.ext.loadIntoView import org.mozilla.fenix.settings.logins.SavedLogin import org.mozilla.fenix.settings.logins.interactor.SavedLoginsInteractor +import org.mozilla.fenix.utils.view.ViewHolder class LoginsListViewHolder( - private val view: View, + view: View, private val interactor: SavedLoginsInteractor -) : RecyclerView.ViewHolder(view) { +) : ViewHolder(view) { - private val favicon = view.favicon_image - private val url = view.webAddressView - private val username = view.usernameView private var loginItem: SavedLogin? = null fun bind(item: SavedLogin) { @@ -30,17 +27,17 @@ class LoginsListViewHolder( username = item.username, timeLastUsed = item.timeLastUsed ) - url.text = item.origin - username.text = item.username + webAddressView.text = item.origin + usernameView.text = item.username updateFavIcon(item.origin) - view.setOnClickListener { + itemView.setOnClickListener { interactor.onItemClicked(item) } } private fun updateFavIcon(url: String) { - favicon.context.components.core.icons.loadIntoView(favicon, url) + itemView.context.components.core.icons.loadIntoView(favicon_image, url) } } diff --git a/app/src/main/res/drawable/notification_indicator.xml b/app/src/main/res/drawable/notification_indicator.xml index 8090acf6d..e0641aac3 100644 --- a/app/src/main/res/drawable/notification_indicator.xml +++ b/app/src/main/res/drawable/notification_indicator.xml @@ -9,5 +9,5 @@ android:width="14dp" android:height="14dp" /> - + diff --git a/app/src/main/res/drawable/quick_action_icon_close.xml b/app/src/main/res/drawable/quick_action_icon_close.xml deleted file mode 100644 index 6ac688814..000000000 --- a/app/src/main/res/drawable/quick_action_icon_close.xml +++ /dev/null @@ -1,29 +0,0 @@ - - - - - - - - - - - - - - - diff --git a/app/src/main/res/drawable/quick_action_icon_read_with_notification.xml b/app/src/main/res/drawable/quick_action_icon_read_with_notification.xml deleted file mode 100644 index 09560761b..000000000 --- a/app/src/main/res/drawable/quick_action_icon_read_with_notification.xml +++ /dev/null @@ -1,21 +0,0 @@ - - - - - - - - - - - - diff --git a/app/src/main/res/drawable/reader_two_state.xml b/app/src/main/res/drawable/reader_two_state.xml deleted file mode 100644 index 046ac7c9a..000000000 --- a/app/src/main/res/drawable/reader_two_state.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - diff --git a/app/src/main/res/drawable/reader_two_state_with_notification.xml b/app/src/main/res/drawable/reader_two_state_with_notification.xml deleted file mode 100644 index c25045f32..000000000 --- a/app/src/main/res/drawable/reader_two_state_with_notification.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - diff --git a/app/src/main/res/drawable/top_sites_background.xml b/app/src/main/res/drawable/top_sites_background.xml deleted file mode 100644 index 018b61714..000000000 --- a/app/src/main/res/drawable/top_sites_background.xml +++ /dev/null @@ -1,10 +0,0 @@ - - - - - - - - \ No newline at end of file diff --git a/app/src/main/res/layout/logins_item.xml b/app/src/main/res/layout/logins_item.xml index 08ed87f9f..cd64c9efe 100644 --- a/app/src/main/res/layout/logins_item.xml +++ b/app/src/main/res/layout/logins_item.xml @@ -12,27 +12,14 @@ android:focusable="true" android:minHeight="?android:attr/listPreferredItemHeight"> - - - + app:layout_constraintBottom_toBottomOf="parent" /> @@ -62,7 +49,7 @@ android:textColor="?secondaryText" app:layout_constraintBottom_toBottomOf="parent" app:layout_constraintEnd_toEndOf="parent" - app:layout_constraintStart_toEndOf="@id/favicon_wrapper" + app:layout_constraintStart_toEndOf="@+id/favicon_image" app:layout_constraintTop_toBottomOf="@id/webAddressView" app:layout_constraintVertical_chainStyle="packed" tools:text="mozilla.org" /> diff --git a/app/src/main/res/layout/top_site_item.xml b/app/src/main/res/layout/top_site_item.xml index 2267ce9d1..80303aa69 100644 --- a/app/src/main/res/layout/top_site_item.xml +++ b/app/src/main/res/layout/top_site_item.xml @@ -4,30 +4,17 @@ - file, You can obtain one at http://mozilla.org/MPL/2.0/. --> - - - + android:importantForAccessibility="no" /> @color/search_suggestion_indicator_icon_color_dark_theme @color/search_suggestion_indicator_icon_bookmark_color_dark_theme + @color/mozac_widget_favicon_background_dark_theme + @color/mozac_widget_favicon_border_dark_theme + @color/tab_tray_item_text_dark_theme @color/tab_tray_item_url_dark_theme @@ -65,8 +68,6 @@ @color/tab_tray_selected_mask_dark_theme - @color/top_site_background_dark_theme - @color/top_site_border_dark_theme @color/top_site_title_text_dark_theme diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml index 9a22639e5..4e7101f93 100644 --- a/app/src/main/res/values/colors.xml +++ b/app/src/main/res/values/colors.xml @@ -4,21 +4,8 @@ - file, You can obtain one at http://mozilla.org/MPL/2.0/. --> - #5B5B66 - #52525E - #32313C - #1C1B22 #312A65 #7A312A65 - #291D4F - #20123A - #1D1133 - #FBFBFE - #F9F9FB - #E0E0E6 - #AFAFBB - #8F8F9D - #80808E #9059FF #529059FF #7A9059FF @@ -45,10 +32,8 @@ #F542414D #FF15141A #0015141A - @android:color/white - @color/light_grey_30 - @color/light_grey_30 - @color/light_grey_80 + @color/photonLightGrey30 + @color/photonLightGrey80 #7542E5 #0250BB #E31587 @@ -74,19 +59,22 @@ #008787 #0060df + @color/photonWhite + @color/photonLightGrey30 + - @color/ink_80 - @color/dark_grey_05 - @color/light_grey_10 + @color/photonInk80 + @color/photonDarkGrey05 + @color/photonLightGrey10 #E5DFF4 - @color/light_grey_10 - @color/light_grey_30 + @color/photonLightGrey10 + @color/photonLightGrey30 #ffffff #312A65 @color/ink_20 @color/ink_20_48a - @color/light_grey_10 - @color/light_grey_60 + @color/photonLightGrey10 + @color/photonLightGrey60 @color/violet_70_12a @@ -108,10 +96,8 @@ #66FBFBFE #F520123A #F515141A - @color/dark_grey_50 - @color/dark_grey_10 - @color/dark_grey_10 - @color/light_grey_90 + @color/photonDarkGrey10 + @color/photonLightGrey90 #AB71FF #00B3F4 #FF6BBA @@ -137,18 +123,21 @@ #2ac3a2 #0090ed + @color/photonDarkGrey50 + @color/photonDarkGrey10 + - @color/light_grey_05 - @color/light_grey_60 - @color/dark_grey_80 + @color/photonLightGrey05 + @color/photonLightGrey60 + @color/photonDarkGrey80 #412E69 - @color/dark_grey_50 - @color/dark_grey_10 + @color/photonDarkGrey50 + @color/photonDarkGrey10 #9059FF @color/violet_50 @color/violet_50_48a - @color/dark_grey_50 - @color/dark_grey_05 + @color/photonDarkGrey50 + @color/photonDarkGrey05 @color/violet_50_32a @@ -156,8 +145,8 @@ #A7A2B7 @color/primary_text_private_theme #261E4B - #291D4F - #291D4F + @color/photonInk50 + @color/photonInk50 #9059FF #592ACB #AB71FF @@ -192,13 +181,16 @@ #FFFFFF #9059ff + @color/photonInk50 + @color/photonInk50 + - @color/light_grey_05 - @color/light_grey_60 - @color/ink_90 + @color/photonLightGrey05 + @color/photonLightGrey60 + @color/photonInk90 #422875 - @color/ink_50 - @color/dark_grey_10 + @color/photonInk50 + @color/photonDarkGrey10 #9059FF @color/violet_50 @color/violet_50_48a @@ -245,6 +237,9 @@ @color/search_suggestion_indicator_icon_color_light_theme @color/search_suggestion_indicator_icon_bookmark_color_light_theme + @color/mozac_widget_favicon_background_light_theme + @color/mozac_widget_favicon_border_light_theme + @color/tab_tray_item_text_light_theme @color/tab_tray_item_url_light_theme @@ -263,8 +258,6 @@ #DFDFE3 - @color/top_site_background_light_theme - @color/top_site_border_light_theme @color/top_site_title_text_light_theme @@ -330,8 +323,8 @@ @color/photonGrey10 @color/dark_grey_90 - @color/light_grey_05 - @color/light_grey_05 + @color/photonLightGrey05 + @color/photonLightGrey05 @color/toggle_off_knob_light_theme @color/toggle_off_track_light_theme diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml index a11de8c72..b67e9349e 100644 --- a/app/src/main/res/values/styles.xml +++ b/app/src/main/res/values/styles.xml @@ -80,6 +80,10 @@ @color/search_suggestion_indicator_icon_color_normal_theme @color/search_suggestion_indicator_icon_bookmark_color_normal_theme + + @color/mozac_widget_favicon_background_normal_theme + @color/mozac_widget_favicon_border_normal_theme + @color/tab_tray_item_background_normal_theme @color/tab_tray_item_selected_background_normal_theme @color/tab_tray_toolbar_background_normal_theme @@ -213,6 +217,10 @@ @color/search_suggestion_indicator_icon_color_dark_theme @color/search_suggestion_indicator_icon_bookmark_color_dark_theme + + @color/mozac_widget_favicon_background_private_theme + @color/mozac_widget_favicon_border_private_theme + @color/tab_tray_item_background_normal_theme @color/tab_tray_item_selected_background_private_theme diff --git a/buildSrc/src/main/java/Dependencies.kt b/buildSrc/src/main/java/Dependencies.kt index 043375927..b6540a220 100644 --- a/buildSrc/src/main/java/Dependencies.kt +++ b/buildSrc/src/main/java/Dependencies.kt @@ -132,6 +132,7 @@ object Deps { const val mozilla_ui_colors = "org.mozilla.components:ui-colors:${Versions.mozilla_android_components}" const val mozilla_ui_icons = "org.mozilla.components:ui-icons:${Versions.mozilla_android_components}" + const val mozilla_ui_widgets = "org.mozilla.components:ui-widgets:${Versions.mozilla_android_components}" const val mozilla_lib_crash = "org.mozilla.components:lib-crash:${Versions.mozilla_android_components}" const val mozilla_lib_push_firebase = "org.mozilla.components:lib-push-firebase:${Versions.mozilla_android_components}"