Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ba219728 authored by Fabian Kozynski's avatar Fabian Kozynski
Browse files

Fixes styles of App Ops dialog

* Changes color and size of "+" sign.
* Adds shadow to icons

Test: manual, layout inspector & HotDog overlay
Bug: 122472385
Change-Id: I116f5a62d7f182717b5d850e338f1fbe27c4feaa
parent b0e7c48c
Loading
Loading
Loading
Loading
+10 −4
Original line number Diff line number Diff line
@@ -25,12 +25,18 @@
    android:focusable="true"
    android:layout_gravity="center_vertical">

    <FrameLayout
        android:layout_height="@dimen/ongoing_appops_dialog_app_icon_size"
        android:layout_width="@dimen/ongoing_appops_dialog_app_icon_size"
        android:layout_gravity="start|center_vertical">

        <ImageView
            android:id="@+id/app_icon"
            android:layout_height="@dimen/ongoing_appops_dialog_app_icon_size"
            android:layout_width="@dimen/ongoing_appops_dialog_app_icon_size"
        android:layout_gravity="start|center_vertical"
            android:layout_gravity="center"
            />
    </FrameLayout>

    <TextView
        android:id="@+id/app_name"
+2 −0
Original line number Diff line number Diff line
@@ -952,6 +952,8 @@
    <dimen name="ongoing_appops_dialog_icon_margin">8dp</dimen>
    <!-- Height and width of Application icons in Ongoing App Ops dialog -->
    <dimen name="ongoing_appops_dialog_app_icon_size">32dp</dimen>
    <!-- Height and width of Plus sign in Ongoing App Ops dialog -->
    <dimen name="ongoing_appops_dialog_app_plus_size">24dp</dimen>
    <!-- Height of line in Ongoing App Ops dialog-->
    <dimen name="ongoing_appops_dialog_line_height">48dp</dimen>
    <!-- Side margin of title in Ongoing App Ops dialog -->
+21 −3
Original line number Diff line number Diff line
@@ -20,6 +20,7 @@ import android.content.Context
import android.content.DialogInterface
import android.content.Intent
import android.content.res.ColorStateList
import android.util.IconDrawableFactory
import android.view.Gravity
import android.view.LayoutInflater
import android.view.View
@@ -37,11 +38,22 @@ class OngoingPrivacyDialog constructor(

    private val iconSize = context.resources.getDimensionPixelSize(
            R.dimen.ongoing_appops_dialog_icon_size)
    private val plusSize = context.resources.getDimensionPixelSize(
            R.dimen.ongoing_appops_dialog_app_plus_size)
    private val iconColor = context.resources.getColor(
            com.android.internal.R.color.text_color_primary, context.theme)
    private val plusColor: Int
    private val iconMargin = context.resources.getDimensionPixelSize(
            R.dimen.ongoing_appops_dialog_icon_margin)
    private val MAX_ITEMS = context.resources.getInteger(R.integer.ongoing_appops_dialog_max_apps)
    private val iconFactory = IconDrawableFactory.newInstance(context, true)

    init {
        val a = context.theme.obtainStyledAttributes(
                intArrayOf(com.android.internal.R.attr.colorAccent))
        plusColor = a.getColor(0, 0)
        a.recycle()
    }

    fun createDialog(): Dialog {
        val builder = AlertDialog.Builder(context).apply {
@@ -87,9 +99,15 @@ class OngoingPrivacyDialog constructor(
                    numItems - MAX_ITEMS
            )
            val overflowPlus = overflow.findViewById(R.id.app_icon) as ImageView
            val lp = overflowPlus.layoutParams.apply {
                height = plusSize
                width = plusSize
            }
            overflowPlus.layoutParams = lp
            overflowPlus.apply {
                imageTintList = ColorStateList.valueOf(iconColor)
                setImageDrawable(context.getDrawable(R.drawable.plus))
                val plus = context.getDrawable(R.drawable.plus)
                imageTintList = ColorStateList.valueOf(plusColor)
                setImageDrawable(plus)
            }
        }

@@ -114,7 +132,7 @@ class OngoingPrivacyDialog constructor(
        }

        app.icon.let {
            appIcon.setImageDrawable(it)
            appIcon.setImageDrawable(iconFactory.getShadowedIcon(it))
        }

        appName.text = app.applicationName