Merge "Make SeekBar 1dp tall when disabled" into rvc-dev am: 6a75f1332f am: 32026857ab
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/11936020 Change-Id: Id0569aba95aea3e853f8e13b1c97ae2026f7c38a
This commit is contained in:
@@ -146,7 +146,7 @@
|
|||||||
android:layout_width="0dp"
|
android:layout_width="0dp"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:clickable="true"
|
android:clickable="true"
|
||||||
android:maxHeight="3dp"
|
android:maxHeight="@dimen/qs_media_enabled_seekbar_height"
|
||||||
android:paddingTop="16dp"
|
android:paddingTop="16dp"
|
||||||
android:paddingBottom="16dp"
|
android:paddingBottom="16dp"
|
||||||
android:thumbTint="@color/media_primary_text"
|
android:thumbTint="@color/media_primary_text"
|
||||||
|
|||||||
@@ -1274,6 +1274,8 @@
|
|||||||
<dimen name="qs_seamless_fallback_end_margin">16dp</dimen>
|
<dimen name="qs_seamless_fallback_end_margin">16dp</dimen>
|
||||||
<dimen name="qqs_media_spacing">16dp</dimen>
|
<dimen name="qqs_media_spacing">16dp</dimen>
|
||||||
<dimen name="qs_footer_horizontal_margin">22dp</dimen>
|
<dimen name="qs_footer_horizontal_margin">22dp</dimen>
|
||||||
|
<dimen name="qs_media_disabled_seekbar_height">1dp</dimen>
|
||||||
|
<dimen name="qs_media_enabled_seekbar_height">3dp</dimen>
|
||||||
|
|
||||||
<dimen name="magnification_border_size">5dp</dimen>
|
<dimen name="magnification_border_size">5dp</dimen>
|
||||||
<dimen name="magnification_frame_move_short">5dp</dimen>
|
<dimen name="magnification_frame_move_short">5dp</dimen>
|
||||||
|
|||||||
@@ -19,6 +19,7 @@ package com.android.systemui.media
|
|||||||
import android.text.format.DateUtils
|
import android.text.format.DateUtils
|
||||||
import androidx.annotation.UiThread
|
import androidx.annotation.UiThread
|
||||||
import androidx.lifecycle.Observer
|
import androidx.lifecycle.Observer
|
||||||
|
import com.android.systemui.R
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Observer for changes from SeekBarViewModel.
|
* Observer for changes from SeekBarViewModel.
|
||||||
@@ -27,11 +28,20 @@ import androidx.lifecycle.Observer
|
|||||||
*/
|
*/
|
||||||
class SeekBarObserver(private val holder: PlayerViewHolder) : Observer<SeekBarViewModel.Progress> {
|
class SeekBarObserver(private val holder: PlayerViewHolder) : Observer<SeekBarViewModel.Progress> {
|
||||||
|
|
||||||
|
val seekBarDefaultMaxHeight = holder.seekBar.context.resources
|
||||||
|
.getDimensionPixelSize(R.dimen.qs_media_enabled_seekbar_height)
|
||||||
|
val seekBarDisabledHeight = holder.seekBar.context.resources
|
||||||
|
.getDimensionPixelSize(R.dimen.qs_media_disabled_seekbar_height)
|
||||||
|
|
||||||
/** Updates seek bar views when the data model changes. */
|
/** Updates seek bar views when the data model changes. */
|
||||||
@UiThread
|
@UiThread
|
||||||
override fun onChanged(data: SeekBarViewModel.Progress) {
|
override fun onChanged(data: SeekBarViewModel.Progress) {
|
||||||
|
val previouslyEnabled = holder.seekBar.isEnabled
|
||||||
if (!data.enabled) {
|
if (!data.enabled) {
|
||||||
holder.seekBar.setEnabled(false)
|
holder.seekBar.setEnabled(false)
|
||||||
|
if (previouslyEnabled) {
|
||||||
|
holder.seekBar.maxHeight = seekBarDisabledHeight
|
||||||
|
}
|
||||||
holder.seekBar.getThumb().setAlpha(0)
|
holder.seekBar.getThumb().setAlpha(0)
|
||||||
holder.seekBar.setProgress(0)
|
holder.seekBar.setProgress(0)
|
||||||
holder.elapsedTimeView.setText("")
|
holder.elapsedTimeView.setText("")
|
||||||
@@ -42,6 +52,14 @@ class SeekBarObserver(private val holder: PlayerViewHolder) : Observer<SeekBarVi
|
|||||||
holder.seekBar.getThumb().setAlpha(if (data.seekAvailable) 255 else 0)
|
holder.seekBar.getThumb().setAlpha(if (data.seekAvailable) 255 else 0)
|
||||||
holder.seekBar.setEnabled(data.seekAvailable)
|
holder.seekBar.setEnabled(data.seekAvailable)
|
||||||
|
|
||||||
|
if (previouslyEnabled != holder.seekBar.isEnabled) {
|
||||||
|
holder.seekBar.maxHeight = if (holder.seekBar.isEnabled) {
|
||||||
|
seekBarDefaultMaxHeight
|
||||||
|
} else {
|
||||||
|
seekBarDisabledHeight
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
data.elapsedTime?.let {
|
data.elapsedTime?.let {
|
||||||
holder.seekBar.setProgress(it)
|
holder.seekBar.setProgress(it)
|
||||||
holder.elapsedTimeView.setText(DateUtils.formatElapsedTime(
|
holder.elapsedTimeView.setText(DateUtils.formatElapsedTime(
|
||||||
|
|||||||
Reference in New Issue
Block a user