Merge "Fix controls management activities details" into rvc-dev am: 2688e2237b

Change-Id: I18bebfd5b775a9054c0b6d48fa50dfc29ad83b5d
This commit is contained in:
Fabian Kozynski
2020-04-22 18:16:08 +00:00
committed by Automerger Merge Worker
3 changed files with 18 additions and 51 deletions

View File

@@ -26,41 +26,15 @@
android:paddingStart="@dimen/controls_management_side_padding" android:paddingStart="@dimen/controls_management_side_padding"
android:paddingEnd="@dimen/controls_management_side_padding" > android:paddingEnd="@dimen/controls_management_side_padding" >
<LinearLayout
android:orientation="horizontal" <TextView
android:id="@+id/title"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:focusable="false" android:textAppearance="?android:attr/textAppearanceLarge"
android:clickable="false" android:textSize="@dimen/controls_title_size"
android:gravity="center_vertical"> android:textAlignment="center" />
<FrameLayout
android:id="@+id/icon_frame"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="start|center_vertical"
android:minWidth="56dp"
android:visibility="gone"
android:paddingTop="@dimen/controls_app_icon_frame_top_padding"
android:paddingBottom="@dimen/controls_app_icon_frame_bottom_padding"
android:paddingEnd="@dimen/controls_app_icon_frame_side_padding"
android:paddingStart="@dimen/controls_app_icon_frame_side_padding" >
<ImageView
android:id="@android:id/icon"
android:layout_width="@dimen/controls_app_icon_size"
android:layout_height="@dimen/controls_app_icon_size" />
</FrameLayout>
<TextView
android:id="@+id/title"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textAppearance="?android:attr/textAppearanceLarge"
android:textSize="@dimen/controls_title_size"
android:textAlignment="center" />
</LinearLayout>
<TextView <TextView

View File

@@ -20,7 +20,6 @@ import android.app.ActivityOptions
import android.content.ComponentName import android.content.ComponentName
import android.content.Intent import android.content.Intent
import android.content.res.Configuration import android.content.res.Configuration
import android.graphics.drawable.Drawable
import android.os.Bundle import android.os.Bundle
import android.text.TextUtils import android.text.TextUtils
import android.view.Gravity import android.view.Gravity
@@ -29,7 +28,6 @@ import android.view.ViewGroup
import android.view.ViewStub import android.view.ViewStub
import android.widget.Button import android.widget.Button
import android.widget.FrameLayout import android.widget.FrameLayout
import android.widget.ImageView
import android.widget.TextView import android.widget.TextView
import androidx.viewpager2.widget.ViewPager2 import androidx.viewpager2.widget.ViewPager2
import com.android.systemui.Prefs import com.android.systemui.Prefs
@@ -76,11 +74,10 @@ class ControlsFavoritingActivity @Inject constructor(
private lateinit var structurePager: ViewPager2 private lateinit var structurePager: ViewPager2
private lateinit var statusText: TextView private lateinit var statusText: TextView
private lateinit var titleView: TextView private lateinit var titleView: TextView
private lateinit var iconView: ImageView
private lateinit var iconFrame: View
private lateinit var pageIndicator: ManagementPageIndicator private lateinit var pageIndicator: ManagementPageIndicator
private var mTooltipManager: TooltipManager? = null private var mTooltipManager: TooltipManager? = null
private lateinit var doneButton: View private lateinit var doneButton: View
private lateinit var otherAppsButton: View
private var listOfStructures = emptyList<StructureContainer>() private var listOfStructures = emptyList<StructureContainer>()
private lateinit var comparator: Comparator<StructureContainer> private lateinit var comparator: Comparator<StructureContainer>
@@ -99,17 +96,10 @@ class ControlsFavoritingActivity @Inject constructor(
} }
private val listingCallback = object : ControlsListingController.ControlsListingCallback { private val listingCallback = object : ControlsListingController.ControlsListingCallback {
private var icon: Drawable? = null
override fun onServicesUpdated(serviceInfos: List<ControlsServiceInfo>) { override fun onServicesUpdated(serviceInfos: List<ControlsServiceInfo>) {
val newIcon = serviceInfos.firstOrNull { it.componentName == component }?.loadIcon() if (serviceInfos.size > 1) {
if (icon == newIcon) return otherAppsButton.visibility = View.VISIBLE
icon = newIcon
executor.execute {
if (icon != null) {
iconView.setImageDrawable(icon)
}
iconFrame.visibility = if (icon != null) View.VISIBLE else View.GONE
} }
} }
} }
@@ -271,8 +261,6 @@ class ControlsFavoritingActivity @Inject constructor(
} }
requireViewById<TextView>(R.id.subtitle).text = requireViewById<TextView>(R.id.subtitle).text =
resources.getText(R.string.controls_favorite_subtitle) resources.getText(R.string.controls_favorite_subtitle)
iconView = requireViewById(com.android.internal.R.id.icon)
iconFrame = requireViewById(R.id.icon_frame)
structurePager = requireViewById<ViewPager2>(R.id.structure_pager) structurePager = requireViewById<ViewPager2>(R.id.structure_pager)
structurePager.registerOnPageChangeCallback(object : ViewPager2.OnPageChangeCallback() { structurePager.registerOnPageChangeCallback(object : ViewPager2.OnPageChangeCallback() {
override fun onPageSelected(position: Int) { override fun onPageSelected(position: Int) {
@@ -284,8 +272,7 @@ class ControlsFavoritingActivity @Inject constructor(
} }
private fun bindButtons() { private fun bindButtons() {
requireViewById<Button>(R.id.other_apps).apply { otherAppsButton = requireViewById<Button>(R.id.other_apps).apply {
visibility = View.VISIBLE
setOnClickListener { setOnClickListener {
val i = Intent() val i = Intent()
i.setComponent( i.setComponent(

View File

@@ -21,6 +21,7 @@ import android.content.ComponentName
import android.content.Intent import android.content.Intent
import android.os.Bundle import android.os.Bundle
import android.view.LayoutInflater import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup import android.view.ViewGroup
import android.view.ViewStub import android.view.ViewStub
import android.widget.Button import android.widget.Button
@@ -90,9 +91,14 @@ class ControlsProviderSelectorActivity @Inject constructor(
text = resources.getText(R.string.controls_providers_title) text = resources.getText(R.string.controls_providers_title)
} }
requireViewById<Button>(R.id.done).setOnClickListener { requireViewById<Button>(R.id.other_apps).apply {
this@ControlsProviderSelectorActivity.finishAffinity() visibility = View.VISIBLE
setText(com.android.internal.R.string.cancel)
setOnClickListener {
this@ControlsProviderSelectorActivity.finishAffinity()
}
} }
requireViewById<View>(R.id.done).visibility = View.GONE
} }
override fun onStart() { override fun onStart() {