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

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

Vis fixes to Privacy chip

Test: manual
Fixes: 124467719
Change-Id: Iaba017cee0992cbebe153d70c0bddbee44b553ec
parent 78e3b2da
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -16,7 +16,7 @@
-->

<shape xmlns:android="http://schemas.android.com/apk/res/android">
    <solid android:color="#4a4a4a" />
    <solid android:color="#242424" /> <!-- 14% of white -->
    <padding android:paddingTop="@dimen/ongoing_appops_chip_bg_padding"
        android:paddingBottom="@dimen/ongoing_appops_chip_bg_padding" />
    <corners android:radius="@dimen/ongoing_appops_chip_bg_corner_radius" />
+29 −36
Original line number Diff line number Diff line
@@ -15,6 +15,7 @@
     limitations under the License.
-->


<com.android.systemui.privacy.OngoingPrivacyChip
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/privacy_chip"
@@ -22,31 +23,21 @@
    android:layout_width="wrap_content"
    android:layout_marginLeft="@dimen/ongoing_appops_chip_margin"
    android:layout_marginRight="@dimen/ongoing_appops_chip_margin"
    android:layout_marginTop="@dimen/ongoing_appops_top_chip_margin"
    android:layout_marginBottom="@dimen/ongoing_appops_top_chip_margin"
    android:gravity="center_vertical|center_horizontal"
    android:layout_gravity="center_vertical|start"
    android:gravity="center_vertical"
    android:orientation="horizontal"
    android:paddingStart="@dimen/ongoing_appops_chip_side_padding"
    android:paddingEnd="@dimen/ongoing_appops_chip_side_padding"
    android:focusable="true">

        <TextView
            android:id="@+id/in_use_text"
            android:layout_height="match_parent"
        <LinearLayout
            android:id="@+id/background"
            android:layout_height="@dimen/ongoing_appops_chip_height"
            android:layout_width="wrap_content"
            android:layout_gravity="center_vertical|start"
            android:layout_marginEnd="@dimen/ongoing_appops_chip_icon_margin_collapsed"
            android:gravity="center_vertical"
            android:textAppearance="@style/TextAppearance.StatusBar.Clock"
            android:textColor="@color/status_bar_clock_color"
            android:text="@string/ongoing_privacy_chip_in_use"
            />

        >
                <LinearLayout
                    android:id="@+id/icons_container"
                    android:layout_height="match_parent"
                    android:layout_width="wrap_content"
                    android:layout_marginStart="@dimen/ongoing_appops_chip_items_margin"
                    android:layout_gravity="center_vertical"
                    android:gravity="center_vertical"
                    />
@@ -55,14 +46,16 @@
                    android:id="@+id/text_container"
                    android:layout_height="match_parent"
                    android:layout_width="wrap_content"
                    android:layout_gravity="center_vertical|end"
                    android:paddingStart="@dimen/ongoing_appops_chip_text_padding"
                    android:paddingEnd="@dimen/ongoing_appops_chip_text_padding"
                    android:gravity="center_vertical"
                    android:singleLine="true"
                    android:ellipsize="end"
                    android:lines="1"
            android:layout_gravity="center_vertical|end"
            android:gravity="center_vertical"
                    android:textAppearance="@style/TextAppearance.StatusBar.Clock"
                    android:textSize="@dimen/ongoing_appops_chip_text_size"
                    android:textColor="@color/status_bar_clock_color"
            android:layout_marginStart="@dimen/ongoing_appops_chip_icon_margin_collapsed"
            android:layout_marginEnd="@dimen/ongoing_appops_chip_icon_margin_collapsed"
                />
          </LinearLayout>
</com.android.systemui.privacy.OngoingPrivacyChip>
 No newline at end of file
+0 −1
Original line number Diff line number Diff line
@@ -34,5 +34,4 @@
    <bool name="quick_settings_wide">true</bool>
    <dimen name="qs_detail_margin_top">0dp</dimen>
    <dimen name="qs_paged_tile_layout_padding_bottom">0dp</dimen>
    <dimen name="ongoing_appops_top_chip_margin">2dp</dimen>
</resources>
+17 −11
Original line number Diff line number Diff line
@@ -980,26 +980,32 @@
    <dimen name="ongoing_appops_dialog_items_bottom_margin">24dp</dimen>
    <!-- Top and bottom margin of title in Ongoing App Ops dialog -->
    <dimen name="ongoing_appops_dialog_title_margin_top_bottom">18dp</dimen>
    <!-- Text size for Ongoing App Ops dialog title -->
    <dimen name="ongoing_appops_dialog_title_size">20sp</dimen>
    <!-- Text size for Ongoing App Ops dialog items -->
    <dimen name="ongoing_appops_dialog_item_size">16sp</dimen>
    <!-- Side margins around the Ongoing App Ops chip-->
    <dimen name="ongoing_appops_chip_margin">12dp</dimen>
    <!-- Top and bottom margins around the Ongoing App Ops chip -->
    <dimen name="ongoing_appops_top_chip_margin">12dp</dimen>
    <dimen name="ongoing_appops_chip_margin">0dp</dimen>
    <!-- Height of the Ongoing App Ops chip -->
    <dimen name="ongoing_appops_chip_height">32dp</dimen>
    <!-- Start and End padding for Ongoing App Ops chip -->
    <dimen name="ongoing_appops_chip_side_padding">6dp</dimen>
    <dimen name="ongoing_appops_chip_text_padding">8dp</dimen>
    <!-- Padding between background of Ongoing App Ops chip and content -->
    <dimen name="ongoing_appops_chip_bg_padding">0dp</dimen>
    <!-- Side padding between background of Ongoing App Ops chip and content -->
    <dimen name="ongoing_appops_chip_side_padding">8dp</dimen>
    <!-- Margin between icons of Ongoing App Ops chip when QQS-->
    <dimen name="ongoing_appops_chip_icon_margin_collapsed">0dp</dimen>
    <!-- Margin between icons of Ongoing App Ops chip when QS-->
    <dimen name="ongoing_appops_chip_icon_margin_expanded">8dp</dimen>
    <dimen name="ongoing_appops_chip_icon_margin_expanded">2dp</dimen>
    <!-- Icon size of Ongoing App Ops chip -->
    <dimen name="ongoing_appops_chip_icon_size">18dp</dimen>
    <dimen name="ongoing_appops_chip_icon_size">@*android:dimen/status_bar_icon_size</dimen>
    <!-- Radius of Ongoing App Ops chip corners -->
    <dimen name="ongoing_appops_chip_bg_corner_radius">4dp</dimen>
    <!-- Text size for Ongoing App Ops dialog title -->
    <dimen name="ongoing_appops_dialog_title_size">20sp</dimen>
    <!-- Text size for Ongoing App Ops dialog items -->
    <dimen name="ongoing_appops_dialog_item_size">16sp</dimen>
    <dimen name="ongoing_appops_chip_bg_corner_radius">16dp</dimen>
    <!-- Size of text of Ongoing App Ops chip -->
    <dimen name="ongoing_appops_chip_text_size">12sp</dimen>
    <!-- Margin between items in Ongoing App Ops chip -->
    <dimen name="ongoing_appops_chip_items_margin">8dp</dimen>

    <!-- How much a bubble is elevated -->
    <dimen name="bubble_elevation">8dp</dimen>
+6 −5
Original line number Diff line number Diff line
@@ -16,7 +16,6 @@ package com.android.systemui.privacy

import android.content.Context
import android.util.AttributeSet
import android.view.View
import android.view.ViewGroup
import android.widget.ImageView
import android.widget.LinearLayout
@@ -40,10 +39,12 @@ class OngoingPrivacyChip @JvmOverloads constructor(
            context.resources.getDimensionPixelSize(R.dimen.ongoing_appops_chip_icon_size)
    private val iconColor = context.resources.getColor(
            R.color.status_bar_clock_color, context.theme)
    private val sidePadding =
            context.resources.getDimensionPixelSize(R.dimen.ongoing_appops_chip_side_padding)
    private val backgroundDrawable = context.getDrawable(R.drawable.privacy_chip_bg)
    private lateinit var text: TextView
    private lateinit var iconsContainer: LinearLayout
    private lateinit var inUseText: TextView
    private lateinit var back: LinearLayout
    var expanded = false
        set(value) {
            if (value != field) {
@@ -64,15 +65,15 @@ class OngoingPrivacyChip @JvmOverloads constructor(
    override fun onFinishInflate() {
        super.onFinishInflate()

        inUseText = findViewById(R.id.in_use_text)
        back = findViewById(R.id.background)
        text = findViewById(R.id.text_container)
        iconsContainer = findViewById(R.id.icons_container)
    }

    // Should only be called if the builder icons or app changed
    private fun updateView() {
        inUseText.visibility = if (expanded) View.GONE else View.VISIBLE
        background = if (expanded) backgroundDrawable else null
        back.background = if (expanded) backgroundDrawable else null
        back.setPaddingRelative(0, 0, if (expanded) sidePadding else 0, 0)
        fun setIcons(dialogBuilder: PrivacyDialogBuilder, iconsContainer: ViewGroup) {
            iconsContainer.removeAllViews()
            dialogBuilder.generateIcons().forEachIndexed { i, it ->
Loading