Merge "Make SeekBar 1dp tall when disabled" into rvc-dev

This commit is contained in:
Fabian Kozynski
2020-06-22 16:33:04 +00:00
committed by Android (Google) Code Review
3 changed files with 21 additions and 1 deletions

View File

@@ -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"

View File

@@ -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>

View File

@@ -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(