1
0
Fork 0

For issue #8520: Polish Add-on manager UIs

master
Arturo Mejia 2020-03-26 13:16:42 -04:00
parent 1a2b65d854
commit 804eb0f5ba
7 changed files with 55 additions and 34 deletions

View File

@ -70,7 +70,7 @@ class AddonDetailsFragment : Fragment(R.layout.fragment_add_on_details) {
} }
private fun bindWebsite(addon: Addon, view: View) { private fun bindWebsite(addon: Addon, view: View) {
view.home_page_text.setOnClickListener { view.home_page_label.setOnClickListener {
val intent = val intent =
Intent(Intent.ACTION_VIEW).setData(Uri.parse(addon.siteUrl)) Intent(Intent.ACTION_VIEW).setData(Uri.parse(addon.siteUrl))
startActivity(intent) startActivity(intent)

View File

@ -18,6 +18,7 @@ import mozilla.components.feature.addons.ui.AddonPermissionsAdapter
import mozilla.components.feature.addons.ui.translate import mozilla.components.feature.addons.ui.translate
import org.mozilla.fenix.R import org.mozilla.fenix.R
import org.mozilla.fenix.ext.showToolbar import org.mozilla.fenix.ext.showToolbar
import org.mozilla.fenix.theme.ThemeManager
private const val LEARN_MORE_URL = private const val LEARN_MORE_URL =
"https://support.mozilla.org/kb/permission-request-messages-firefox-extensions" "https://support.mozilla.org/kb/permission-request-messages-firefox-extensions"
@ -44,7 +45,12 @@ class AddonPermissionsDetailsFragment : Fragment(R.layout.fragment_add_on_permis
@StringRes val stringId = it @StringRes val stringId = it
getString(stringId) getString(stringId)
}.sorted() }.sorted()
adapter = AddonPermissionsAdapter(sortedPermissions) adapter = AddonPermissionsAdapter(
sortedPermissions,
style = AddonPermissionsAdapter.Style(
ThemeManager.resolveAttribute(R.attr.primaryText, requireContext())
)
)
} }
} }

View File

@ -104,7 +104,15 @@ class AddonsManagementFragment : Fragment(R.layout.fragment_add_ons_management),
val adapter = AddonsManagerAdapter( val adapter = AddonsManagerAdapter(
requireContext().components.addonCollectionProvider, requireContext().components.addonCollectionProvider,
this@AddonsManagementFragment, this@AddonsManagementFragment,
addons addons,
style = AddonsManagerAdapter.Style(
ThemeManager.resolveAttribute(R.attr.primaryText, requireContext()),
ThemeManager.resolveAttribute(R.attr.primaryText, requireContext()),
ThemeManager.resolveAttribute(
R.attr.secondaryText,
requireContext()
)
)
) )
isInstallationInProgress = false isInstallationInProgress = false
view.add_ons_progress_bar.isVisible = false view.add_ons_progress_bar.isVisible = false

View File

@ -99,7 +99,7 @@ class InstalledAddonDetailsFragment : Fragment() {
onSuccess = { onSuccess = {
runIfFragmentIsAttached { runIfFragmentIsAttached {
switch.isClickable = true switch.isClickable = true
switch.setText(R.string.mozac_feature_addons_settings_on) switch.setText(R.string.mozac_feature_addons_enabled)
view.settings.isVisible = true view.settings.isVisible = true
view.remove_add_on.isEnabled = true view.remove_add_on.isEnabled = true
this.addon = it this.addon = it
@ -133,7 +133,7 @@ class InstalledAddonDetailsFragment : Fragment() {
onSuccess = { onSuccess = {
runIfFragmentIsAttached { runIfFragmentIsAttached {
switch.isClickable = true switch.isClickable = true
switch.setText(R.string.mozac_feature_addons_settings_off) switch.setText(R.string.mozac_feature_addons_disabled)
view.remove_add_on.isEnabled = true view.remove_add_on.isEnabled = true
this.addon = it this.addon = it
showSnackBar( showSnackBar(
@ -256,9 +256,9 @@ class InstalledAddonDetailsFragment : Fragment() {
private fun Switch.setState(checked: Boolean) { private fun Switch.setState(checked: Boolean) {
val text = if (checked) { val text = if (checked) {
R.string.mozac_feature_addons_settings_on R.string.mozac_feature_addons_enabled
} else { } else {
R.string.mozac_feature_addons_settings_off R.string.mozac_feature_addons_disabled
} }
setText(text) setText(text)
isChecked = checked isChecked = checked

View File

@ -22,6 +22,8 @@
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginBottom="20dp" android:layout_marginBottom="20dp"
android:textColor="?primaryText"
android:textColorLink="?aboutLink"
tools:text="@tools:sample/lorem/random" /> tools:text="@tools:sample/lorem/random" />
<TextView <TextView
@ -29,6 +31,7 @@
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_below="@+id/details" android:layout_below="@+id/details"
style="@style/AboutHeaderContentText"
android:text="@string/mozac_feature_addons_authors" /> android:text="@string/mozac_feature_addons_authors" />
<TextView <TextView
@ -37,6 +40,7 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_below="@+id/details" android:layout_below="@+id/details"
android:layout_alignParentEnd="true" android:layout_alignParentEnd="true"
style="@style/AboutHeaderContentText"
tools:text="@tools:sample/full_names" /> tools:text="@tools:sample/full_names" />
<View <View
@ -46,7 +50,7 @@
android:layout_below="@+id/author_label" android:layout_below="@+id/author_label"
android:layout_marginTop="10dp" android:layout_marginTop="10dp"
android:layout_marginBottom="10dp" android:layout_marginBottom="10dp"
android:background="@color/photonGrey40" android:background="?android:attr/listDivider"
android:importantForAccessibility="no" /> android:importantForAccessibility="no" />
<TextView <TextView
@ -54,6 +58,7 @@
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_below="@+id/author_divider" android:layout_below="@+id/author_divider"
style="@style/AboutHeaderContentText"
android:text="@string/mozac_feature_addons_version" /> android:text="@string/mozac_feature_addons_version" />
<TextView <TextView
@ -62,6 +67,7 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_below="@+id/author_divider" android:layout_below="@+id/author_divider"
android:layout_alignParentEnd="true" android:layout_alignParentEnd="true"
style="@style/AboutHeaderContentText"
tools:text="1.2.3" /> tools:text="1.2.3" />
<View <View
@ -71,7 +77,7 @@
android:layout_below="@+id/version_label" android:layout_below="@+id/version_label"
android:layout_marginTop="10dp" android:layout_marginTop="10dp"
android:layout_marginBottom="10dp" android:layout_marginBottom="10dp"
android:background="@color/photonGrey40" android:background="?android:attr/listDivider"
android:importantForAccessibility="no" /> android:importantForAccessibility="no" />
<TextView <TextView
@ -79,6 +85,7 @@
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_below="@+id/version_divider" android:layout_below="@+id/version_divider"
style="@style/AboutHeaderContentText"
android:text="@string/mozac_feature_addons_last_updated" /> android:text="@string/mozac_feature_addons_last_updated" />
<TextView <TextView
@ -87,6 +94,7 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_below="@+id/version_divider" android:layout_below="@+id/version_divider"
android:layout_alignParentEnd="true" android:layout_alignParentEnd="true"
style="@style/AboutHeaderContentText"
tools:text="Oct 16, 2019" /> tools:text="Oct 16, 2019" />
<View <View
@ -96,7 +104,7 @@
android:layout_below="@+id/last_updated_label" android:layout_below="@+id/last_updated_label"
android:layout_marginTop="10dp" android:layout_marginTop="10dp"
android:layout_marginBottom="10dp" android:layout_marginBottom="10dp"
android:background="@color/photonGrey40" android:background="?android:attr/listDivider"
android:importantForAccessibility="no" /> android:importantForAccessibility="no" />
<TextView <TextView
@ -104,18 +112,10 @@
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_below="@+id/last_updated_divider" android:layout_below="@+id/last_updated_divider"
style="@style/AboutHeaderContentText"
android:textColor="?aboutLink"
android:text="@string/mozac_feature_addons_home_page" /> android:text="@string/mozac_feature_addons_home_page" />
<ImageView
android:id="@+id/home_page_text"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/last_updated_divider"
android:layout_alignParentEnd="true"
android:contentDescription="@string/mozac_feature_addons_home_page"
app:srcCompat="@drawable/mozac_ic_link"
android:tint="?android:attr/textColorPrimary" />
<View <View
android:id="@+id/home_page_divider" android:id="@+id/home_page_divider"
android:layout_width="match_parent" android:layout_width="match_parent"
@ -123,7 +123,7 @@
android:layout_below="@+id/home_page_label" android:layout_below="@+id/home_page_label"
android:layout_marginTop="10dp" android:layout_marginTop="10dp"
android:layout_marginBottom="10dp" android:layout_marginBottom="10dp"
android:background="@color/photonGrey40" android:background="?android:attr/listDivider"
android:importantForAccessibility="no" /> android:importantForAccessibility="no" />
<TextView <TextView
@ -131,6 +131,7 @@
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_below="@+id/home_page_divider" android:layout_below="@+id/home_page_divider"
style="@style/AboutHeaderContentText"
android:text="@string/mozac_feature_addons_rating" /> android:text="@string/mozac_feature_addons_rating" />
<RatingBar <RatingBar
@ -150,6 +151,7 @@
android:layout_below="@+id/home_page_divider" android:layout_below="@+id/home_page_divider"
android:layout_alignParentEnd="true" android:layout_alignParentEnd="true"
android:layout_marginStart="6dp" android:layout_marginStart="6dp"
style="@style/AboutHeaderContentText"
tools:text="591,642" /> tools:text="591,642" />
</RelativeLayout> </RelativeLayout>
</ScrollView> </ScrollView>

View File

@ -27,7 +27,7 @@
android:paddingStart="16dp" android:paddingStart="16dp"
android:paddingEnd="16dp" android:paddingEnd="16dp"
android:text="@string/mozac_feature_addons_learn_more" android:text="@string/mozac_feature_addons_learn_more"
app:drawableEndCompat="@drawable/mozac_ic_link" style="@style/AboutHeaderContentText"
app:drawableTint="?android:attr/textColorPrimary" /> android:textColor="?aboutLink"/>
</RelativeLayout> </RelativeLayout>
</ScrollView> </ScrollView>

View File

@ -29,9 +29,11 @@
android:checked="true" android:checked="true"
android:clickable="true" android:clickable="true"
android:focusable="true" android:focusable="true"
android:layout_marginStart="54dp"
android:padding="16dp" android:padding="16dp"
android:text="@string/mozac_feature_addons_settings_on" android:text="@string/mozac_feature_addons_enabled"
android:textSize="18sp" /> android:textColor="?primaryText"
android:textSize="16sp" />
<TextView <TextView
android:id="@+id/settings" android:id="@+id/settings"
@ -39,11 +41,12 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_below="@+id/enable_switch" android:layout_below="@+id/enable_switch"
android:background="?android:attr/selectableItemBackground" android:background="?android:attr/selectableItemBackground"
android:drawablePadding="12dp" android:drawablePadding="32dp"
android:padding="16dp" android:padding="16dp"
android:text="@string/mozac_feature_addons_settings" android:text="@string/mozac_feature_addons_settings"
android:textSize="18sp" android:textSize="16sp"
app:drawableStartCompat="@drawable/mozac_ic_preferences" android:textColor="?primaryText"
app:drawableStartCompat="@drawable/ic_settings"
app:drawableTint="?primaryText" /> app:drawableTint="?primaryText" />
<TextView <TextView
@ -52,11 +55,12 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_below="@+id/settings" android:layout_below="@+id/settings"
android:background="?android:attr/selectableItemBackground" android:background="?android:attr/selectableItemBackground"
android:drawablePadding="12dp" android:drawablePadding="32dp"
android:padding="16dp" android:padding="16dp"
android:textColor="?primaryText"
android:text="@string/mozac_feature_addons_details" android:text="@string/mozac_feature_addons_details"
android:textSize="18sp" android:textSize="16sp"
app:drawableStartCompat="@drawable/mozac_ic_information" app:drawableStartCompat="@drawable/ic_info"
app:drawableTint="?primaryText" /> app:drawableTint="?primaryText" />
<TextView <TextView
@ -65,11 +69,12 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_below="@+id/details" android:layout_below="@+id/details"
android:background="?android:attr/selectableItemBackground" android:background="?android:attr/selectableItemBackground"
android:drawablePadding="12dp" android:drawablePadding="32dp"
android:padding="16dp" android:padding="16dp"
android:text="@string/mozac_feature_addons_permissions" android:text="@string/mozac_feature_addons_permissions"
android:textSize="18sp" android:textColor="?primaryText"
app:drawableStartCompat="@drawable/mozac_ic_permissions" /> android:textSize="16sp"
app:drawableStartCompat="@drawable/ic_permission" />
<Button <Button
android:id="@+id/remove_add_on" android:id="@+id/remove_add_on"