98 lines
No EOL
4.4 KiB
XML
98 lines
No EOL
4.4 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<layout xmlns:tools="http://schemas.android.com/tools"
|
|
xmlns:app="http://schemas.android.com/apk/res-auto"
|
|
xmlns:android="http://schemas.android.com/apk/res/android">
|
|
|
|
<data>
|
|
|
|
<variable
|
|
name="musicModel"
|
|
type="org.oxycblt.auxio.music.MusicViewModel" />
|
|
</data>
|
|
|
|
<androidx.constraintlayout.widget.ConstraintLayout
|
|
android:layout_width="match_parent"
|
|
android:layout_height="match_parent"
|
|
android:animateLayoutChanges="true">
|
|
|
|
<ProgressBar
|
|
android:id="@+id/loading_bar"
|
|
android:layout_width="wrap_content"
|
|
android:layout_height="wrap_content"
|
|
android:indeterminateTint="?attr/colorPrimary"
|
|
android:indeterminateTintMode="src_in"
|
|
android:paddingBottom="@dimen/padding_tiny"
|
|
app:layout_constraintBottom_toTopOf="@+id/status_icon"
|
|
app:layout_constraintEnd_toEndOf="parent"
|
|
app:layout_constraintHorizontal_bias="0.5"
|
|
app:layout_constraintStart_toStartOf="parent"
|
|
app:layout_constraintTop_toTopOf="parent"
|
|
app:layout_constraintVertical_chainStyle="packed" />
|
|
|
|
<ImageView
|
|
android:id="@+id/status_icon"
|
|
android:layout_width="@dimen/status_icon_size"
|
|
android:layout_height="@dimen/status_icon_size"
|
|
android:indeterminateTint="?attr/colorPrimary"
|
|
android:indeterminateTintMode="src_in"
|
|
android:src="@drawable/ic_error"
|
|
android:visibility="gone"
|
|
android:contentDescription="@string/description_error"
|
|
app:layout_constraintBottom_toTopOf="@+id/error_text"
|
|
app:layout_constraintEnd_toEndOf="parent"
|
|
app:layout_constraintStart_toStartOf="parent"
|
|
app:layout_constraintTop_toBottomOf="@+id/loading_bar"
|
|
app:srcCompat="@drawable/ic_error" />
|
|
|
|
<TextView
|
|
android:id="@+id/error_text"
|
|
android:layout_width="wrap_content"
|
|
android:layout_height="wrap_content"
|
|
android:fontFamily="@font/inter"
|
|
android:textAppearance="?android:attr/textAppearanceMedium"
|
|
android:textColor="?android:attr/textColorPrimary"
|
|
android:layout_marginTop="@dimen/margin_small"
|
|
app:layout_constraintBottom_toTopOf="@+id/retry_button"
|
|
app:layout_constraintEnd_toEndOf="parent"
|
|
app:layout_constraintHorizontal_bias="0.5"
|
|
app:layout_constraintStart_toStartOf="parent"
|
|
app:layout_constraintTop_toBottomOf="@+id/status_icon"
|
|
tools:text="Some kind of error." />
|
|
|
|
<Button
|
|
android:id="@+id/retry_button"
|
|
style="@style/Widget.AppCompat.Button.Borderless.Colored"
|
|
android:layout_width="wrap_content"
|
|
android:layout_height="wrap_content"
|
|
android:fontFamily="@font/inter_semibold"
|
|
android:onClick="@{() -> musicModel.reload()}"
|
|
android:text="@string/label_retry"
|
|
android:textColor="?attr/colorPrimary"
|
|
android:visibility="gone"
|
|
app:layout_constraintBottom_toBottomOf="parent"
|
|
app:layout_constraintEnd_toEndOf="parent"
|
|
app:layout_constraintHorizontal_bias="0.5"
|
|
app:layout_constraintStart_toStartOf="parent"
|
|
app:layout_constraintTop_toBottomOf="@+id/error_text"
|
|
app:layout_constraintBottom_toTopOf="@+id/grant_button"
|
|
app:layout_constraintVertical_bias="0.673"
|
|
tools:visibility="visible" />
|
|
|
|
<Button
|
|
android:id="@+id/grant_button"
|
|
style="@style/Widget.AppCompat.Button.Borderless.Colored"
|
|
android:layout_width="wrap_content"
|
|
android:layout_height="wrap_content"
|
|
android:fontFamily="@font/inter_semibold"
|
|
android:onClick="@{() -> musicModel.grant()}"
|
|
android:text="@string/label_grant"
|
|
android:textColor="?attr/colorPrimary"
|
|
android:visibility="gone"
|
|
app:layout_constraintBottom_toBottomOf="parent"
|
|
app:layout_constraintEnd_toEndOf="parent"
|
|
app:layout_constraintStart_toStartOf="parent"
|
|
app:layout_constraintTop_toBottomOf="@+id/retry_button"
|
|
tools:visibility="visible" />
|
|
|
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
|
</layout> |