<?xml version="1.0" encoding="utf-8"?>
<layout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools">

    <data>

        <variable
            name="viewModel"
            type="com.topjohnwu.magisk.legacy.surequest.SuRequestViewModel" />

    </data>

    <com.google.android.material.card.MaterialCardView
        style="@style/WidgetFoundation.Card.Elevated"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center">

        <LinearLayout
            android:id="@+id/su_popup"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:minWidth="350dp"
            android:orientation="vertical">

            <androidx.appcompat.widget.AppCompatTextView
                android:id="@+id/request_title"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center_horizontal"
                android:layout_marginTop="@dimen/l1"
                android:layout_marginBottom="@dimen/l_50"
                android:gravity="center_horizontal"
                android:text="@string/su_request_title"
                android:textAppearance="@style/AppearanceFoundation.Title" />

            <LinearLayout
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center_horizontal"
                android:layout_marginTop="@dimen/l_50"
                android:layout_marginBottom="@dimen/l_50"
                android:orientation="horizontal"
                android:paddingStart="10dp"
                android:paddingEnd="10dp">

                <androidx.appcompat.widget.AppCompatImageView
                    android:id="@+id/app_icon"
                    style="@style/WidgetFoundation.Icon"
                    android:layout_gravity="center_vertical"
                    android:layout_marginStart="@dimen/l_50"
                    android:layout_marginEnd="@dimen/l1"
                    android:layout_weight="0"
                    android:padding="0dp"
                    android:src="@{viewModel.icon}"
                    app:tint="@null"
                    tools:src="@drawable/ic_delete_md2" />

                <LinearLayout
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:layout_gravity="center_vertical"
                    android:layout_weight="1"
                    android:gravity="center_vertical"
                    android:orientation="vertical">

                    <androidx.appcompat.widget.AppCompatTextView
                        android:id="@+id/app_name"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:ellipsize="end"
                        android:maxWidth="300dp"
                        android:maxLines="1"
                        android:minWidth="200dp"
                        android:text="@{viewModel.title}"
                        android:textAppearance="@style/AppearanceFoundation.Body"
                        android:textStyle="bold"
                        tools:text="Magisk" />

                    <androidx.appcompat.widget.AppCompatTextView
                        android:id="@+id/package_name"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:ellipsize="end"
                        android:maxWidth="300dp"
                        android:maxLines="1"
                        android:minWidth="200dp"
                        android:text="@{viewModel.packageName}"
                        android:textAppearance="@style/AppearanceFoundation.Caption.Variant"
                        tools:text="com.topjohnwu.magisk" />
                </LinearLayout>
            </LinearLayout>

            <androidx.appcompat.widget.AppCompatSpinner
                android:id="@+id/timeout"
                onTouch="@{() -> viewModel.spinnerTouched()}"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center_horizontal"
                android:adapter="@{viewModel.adapter}"
                android:selection="@={viewModel.selectedItemPosition}" />

            <androidx.appcompat.widget.AppCompatTextView
                android:id="@+id/warning"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:layout_gravity="center_horizontal"
                android:layout_margin="@dimen/l1"
                android:gravity="center"
                android:text="@{viewModel.warningText}"
                android:textAppearance="@style/AppearanceFoundation.Body"
                android:textColor="?colorError"
                android:textStyle="bold"
                tools:text="@string/su_warning" />

            <LinearLayout
                style="?android:buttonBarStyle"
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:gravity="bottom"
                android:orientation="horizontal"
                android:paddingStart="@dimen/l2"
                android:paddingEnd="@dimen/l2">

                <com.google.android.material.button.MaterialButton
                    android:id="@+id/deny_btn"
                    style="@style/WidgetFoundation.Button.Text"
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:layout_weight="1"
                    android:onClick="@{() -> viewModel.denyPressed()}"
                    android:text="@{viewModel.denyText}"
                    android:textColor="?colorOnSurfaceVariant"
                    tools:text="@string/deny" />

                <com.google.android.material.button.MaterialButton
                    android:id="@+id/grant_btn"
                    style="@style/WidgetFoundation.Button.Text"
                    android:layout_width="0dp"
                    android:layout_height="wrap_content"
                    android:layout_weight="1"
                    android:onClick="@{() -> viewModel.grantPressed()}"
                    android:enabled="@{viewModel.grantEnabled}"
                    android:text="@string/grant" />

            </LinearLayout>

        </LinearLayout>

    </com.google.android.material.card.MaterialCardView>

</layout>
