berict/Tapad

View on GitHub
app/src/main/res/layout/activity_settings.xml

Summary

Maintainability
Test Coverage
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout
    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"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:fitsSystemWindows="true"
    tools:context="com.bedrock.padder.activity.SettingsActivity">

    <RelativeLayout
        android:id="@+id/layout_settings"
        android:layout_width="match_parent"
        android:layout_height="match_parent">

        <ScrollView
            android:id="@+id/layout_settings_scrollview"
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_below="@+id/actionbar"
            android:background="@color/white">

            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:orientation="vertical">

                <LinearLayout
                    android:id="@+id/layout_settings_group_play"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:orientation="vertical">

                    <TextView
                        android:id="@+id/layout_settings_play"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_marginBottom="10dp"
                        android:layout_marginLeft="20dp"
                        android:layout_marginTop="15dp"
                        android:text="@string/settings_group_play"
                        android:textColor="@color/colorAccentDark"
                        android:textSize="14sp"
                        android:textStyle="bold"/>

                    <RelativeLayout
                        android:id="@+id/layout_settings_preset"
                        android:layout_width="match_parent"
                        android:layout_height="64dp"
                        android:background="?selectableItemBackground"
                        android:clickable="true">

                        <LinearLayout
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:layout_centerVertical="true"
                            android:layout_marginLeft="20dp"
                            android:orientation="vertical">

                            <TextView
                                android:id="@+id/layout_settings_preset_text"
                                android:layout_width="wrap_content"
                                android:layout_height="wrap_content"
                                android:layout_marginBottom="4dp"
                                android:text="@string/settings_preset"
                                android:textColor="@color/dark_primary"
                                android:textSize="16sp"/>

                            <TextView
                                android:id="@+id/layout_settings_preset_hint"
                                android:layout_width="wrap_content"
                                android:layout_height="wrap_content"
                                android:text="@string/settings_preset_hint"
                                android:textColor="@color/dark_secondary"
                                android:textSize="14sp"/>
                        </LinearLayout>

                    </RelativeLayout>

                    <View
                        android:layout_width="match_parent"
                        android:layout_height="1dp"
                        android:background="@color/dark_divider"/>

                    <RelativeLayout
                        android:id="@+id/layout_settings_focus_loss"
                        android:layout_width="match_parent"
                        android:layout_height="48dp"
                        android:background="?selectableItemBackground"
                        android:clickable="true">

                        <TextView
                            android:id="@+id/layout_settings_focus_loss_text"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:layout_centerVertical="true"
                            android:layout_marginLeft="20dp"
                            android:text="@string/settings_focus_loss"
                            android:textColor="@color/dark_primary"
                            android:textSize="16sp"/>

                        <android.support.v7.widget.SwitchCompat
                            android:id="@+id/layout_settings_focus_loss_switch"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:layout_centerVertical="true"
                            android:layout_marginRight="16dp"
                            android:layout_alignParentRight="true"/>

                    </RelativeLayout>

                    <View
                        android:layout_width="match_parent"
                        android:layout_height="1dp"
                        android:background="@color/dark_divider"/>

                    <RelativeLayout
                        android:id="@+id/layout_settings_stop_loop"
                        android:layout_width="match_parent"
                        android:layout_height="48dp"
                        android:background="?selectableItemBackground"
                        android:clickable="true">

                        <TextView
                            android:id="@+id/layout_settings_stop_loop_text"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:layout_centerVertical="true"
                            android:layout_marginLeft="20dp"
                            android:text="@string/settings_stop_loop"
                            android:textColor="@color/dark_primary"
                            android:textSize="16sp"/>

                        <android.support.v7.widget.SwitchCompat
                            android:id="@+id/layout_settings_stop_loop_switch"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:layout_centerVertical="true"
                            android:layout_marginRight="16dp"
                            android:layout_alignParentRight="true"/>

                    </RelativeLayout>

                    <View
                        android:layout_width="match_parent"
                        android:layout_height="1dp"
                        android:background="@color/dark_divider"
                        android:visibility="gone"/>

                </LinearLayout>

                <LinearLayout
                    android:id="@+id/layout_settings_group_interface"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:orientation="vertical">

                    <TextView
                        android:id="@+id/layout_settings_interface"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_marginBottom="10dp"
                        android:layout_marginLeft="20dp"
                        android:layout_marginTop="15dp"
                        android:text="@string/settings_group_interface"
                        android:textColor="@color/colorAccentDark"
                        android:textSize="14sp"
                        android:textStyle="bold"/>

                    <RelativeLayout
                        android:id="@+id/layout_settings_start_page"
                        android:layout_width="match_parent"
                        android:layout_height="64dp"
                        android:background="?selectableItemBackground"
                        android:clickable="true">

                        <LinearLayout
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:layout_centerVertical="true"
                            android:layout_marginLeft="20dp"
                            android:orientation="vertical">

                            <TextView
                                android:id="@+id/layout_settings_start_page_text"
                                android:layout_width="wrap_content"
                                android:layout_height="wrap_content"
                                android:layout_marginBottom="4dp"
                                android:text="@string/settings_start_page"
                                android:textColor="@color/dark_primary"
                                android:textSize="16sp"/>

                            <TextView
                                android:id="@+id/layout_settings_start_page_hint"
                                android:layout_width="wrap_content"
                                android:layout_height="wrap_content"
                                android:text="@string/settings_start_page_recent"
                                android:textColor="@color/dark_secondary"
                                android:textSize="14sp"/>
                        </LinearLayout>

                    </RelativeLayout>

                    <View
                        android:layout_width="match_parent"
                        android:layout_height="1dp"
                        android:background="@color/dark_divider"
                        android:visibility="visible"/>

                    <RelativeLayout
                        android:id="@+id/layout_settings_color"
                        android:layout_width="match_parent"
                        android:layout_height="48dp"
                        android:background="?selectableItemBackground"
                        android:clickable="true">

                        <TextView
                            android:id="@+id/layout_settings_color_text"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:layout_centerVertical="true"
                            android:layout_marginLeft="20dp"
                            android:text="@string/settings_color"
                            android:textColor="@color/dark_primary"
                            android:textSize="16sp"/>

                    </RelativeLayout>

                    <View
                        android:layout_width="match_parent"
                        android:layout_height="1dp"
                        android:background="@color/dark_divider"
                        android:visibility="visible"/>

                    <RelativeLayout
                        android:id="@+id/layout_settings_deck_margin"
                        android:layout_width="match_parent"
                        android:layout_height="wrap_content"
                        android:background="?selectableItemBackground"
                        android:clickable="true"
                        android:minHeight="64dp">

                        <ImageView
                            android:id="@+id/layout_settings_deck_margin_icon"
                            android:layout_width="48dp"
                            android:layout_height="48dp"
                            android:layout_marginLeft="8dp"
                            android:layout_marginRight="8dp"
                            android:layout_marginTop="8dp"
                            android:padding="10dp"
                            app:srcCompat="@drawable/ic_relative_scale_black"/>

                        <LinearLayout
                            android:layout_width="match_parent"
                            android:layout_height="wrap_content"
                            android:layout_toRightOf="@+id/layout_settings_deck_margin_icon"
                            android:orientation="vertical"
                            android:paddingRight="12dp">

                            <RelativeLayout
                                android:layout_width="match_parent"
                                android:layout_height="wrap_content"
                                android:layout_marginTop="8dp">

                                <LinearLayout
                                    android:id="@+id/layout_settings_deck_margin_slider_layout"
                                    android:layout_width="match_parent"
                                    android:layout_height="wrap_content"
                                    android:layout_alignParentLeft="true"
                                    android:layout_centerVertical="true"
                                    android:layout_toLeftOf="@+id/layout_settings_deck_margin_input"
                                    android:orientation="vertical">

                                    <TextView
                                        android:id="@+id/layout_settings_deck_margin_text"
                                        android:layout_width="wrap_content"
                                        android:layout_height="wrap_content"
                                        android:layout_marginBottom="6dp"
                                        android:layout_marginLeft="16dp"
                                        android:layout_marginTop="4dp"
                                        android:text="@string/settings_deck_margin"
                                        android:textColor="@color/dark_secondary"
                                        android:textSize="14sp"/>

                                    <android.support.v7.widget.AppCompatSeekBar
                                        android:id="@+id/layout_settings_deck_margin_slider"
                                        android:layout_width="match_parent"
                                        android:layout_height="wrap_content"
                                        android:max="100"
                                        android:min="0"
                                        android:progress="80"/>
                                </LinearLayout>

                                <!-- Dummy item to prevent TextInputEditText from receiving focus -->
                                <LinearLayout
                                    android:id="@+id/layout_settings_deck_margin_input_dummy"
                                    android:layout_width="0px"
                                    android:layout_height="0px"
                                    android:focusable="true"
                                    android:focusableInTouchMode="true"
                                    android:orientation="horizontal"/>

                                <android.support.design.widget.TextInputEditText
                                    android:id="@+id/layout_settings_deck_margin_input"
                                    android:layout_width="42dp"
                                    android:layout_height="wrap_content"
                                    android:layout_alignParentRight="true"
                                    android:layout_centerVertical="true"
                                    android:gravity="center"
                                    android:imeOptions="actionDone"
                                    android:inputType="numberDecimal"
                                    android:lines="1"
                                    android:nextFocusForward="@id/layout_settings_deck_margin_input_dummy"
                                    android:nextFocusUp="@id/layout_settings_deck_margin_input_dummy"
                                    android:paddingTop="16dp"
                                    android:text="0.80"
                                    android:textSize="16dp"/>
                            </RelativeLayout>

                            <TextView
                                android:id="@+id/layout_settings_deck_margin_input_error_bound"
                                android:layout_width="wrap_content"
                                android:layout_height="wrap_content"
                                android:layout_marginBottom="8dp"
                                android:layout_marginLeft="16dp"
                                android:layout_marginTop="2dp"
                                android:text="@string/settings_deck_margin_error_bound"
                                android:textColor="@color/red_500"
                                android:textSize="13sp"
                                android:visibility="gone"/>

                            <TextView
                                android:id="@+id/layout_settings_deck_margin_input_error_empty"
                                android:layout_width="wrap_content"
                                android:layout_height="wrap_content"
                                android:layout_marginBottom="8dp"
                                android:layout_marginLeft="16dp"
                                android:layout_marginTop="2dp"
                                android:text="@string/settings_deck_margin_error_empty"
                                android:textColor="@color/red_500"
                                android:textSize="13sp"
                                android:visibility="gone"/>

                            <TextView
                                android:id="@+id/layout_settings_deck_margin_input_warning"
                                android:layout_width="wrap_content"
                                android:layout_height="wrap_content"
                                android:layout_marginBottom="8dp"
                                android:layout_marginLeft="16dp"
                                android:layout_marginTop="2dp"
                                android:text="@string/settings_deck_margin_warning_visibility"
                                android:textColor="@color/orange_700"
                                android:textSize="13sp"
                                android:textStyle="italic"
                                android:visibility="gone"/>

                        </LinearLayout>

                    </RelativeLayout>

                    <View
                        android:layout_width="match_parent"
                        android:layout_height="1dp"
                        android:background="@color/dark_divider"
                        android:visibility="gone"/>

                    <RelativeLayout
                        android:id="@+id/layout_settings_custom_touch"
                        android:layout_width="match_parent"
                        android:layout_height="52dp"
                        android:alpha="0.3"
                        android:background="?selectableItemBackground"
                        android:clickable="true"
                        android:visibility="gone">

                        <ImageView
                            android:id="@+id/layout_settings_custom_touch_icon"
                            android:layout_width="48dp"
                            android:layout_height="48dp"
                            android:layout_centerVertical="true"
                            android:layout_marginLeft="8dp"
                            android:layout_marginRight="8dp"
                            android:padding="10dp"
                            app:srcCompat="@drawable/ic_custom_touch_black"/>

                        <TextView
                            android:id="@+id/layout_settings_custom_touch_text"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:layout_centerVertical="true"
                            android:layout_toRightOf="@+id/layout_settings_custom_touch_icon"
                            android:paddingLeft="14dp"
                            android:text="@string/settings_custom_touch"
                            android:textColor="@color/dark_primary"
                            android:textSize="16sp"/>

                    </RelativeLayout>

                    <View
                        android:layout_width="match_parent"
                        android:layout_height="1dp"
                        android:background="@color/dark_divider"
                        android:visibility="gone"/>

                    <RelativeLayout
                        android:id="@+id/layout_settings_layout"
                        android:layout_width="match_parent"
                        android:layout_height="52dp"
                        android:alpha="0.3"
                        android:background="?selectableItemBackground"
                        android:clickable="true"
                        android:visibility="gone">

                        <ImageView
                            android:id="@+id/layout_settings_layout_icon"
                            android:layout_width="48dp"
                            android:layout_height="48dp"
                            android:layout_centerVertical="true"
                            android:layout_marginLeft="8dp"
                            android:layout_marginRight="8dp"
                            android:padding="10dp"
                            app:srcCompat="@drawable/ic_custom_layout_black"/>

                        <TextView
                            android:id="@+id/layout_settings_layout_text"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:layout_centerVertical="true"
                            android:layout_toRightOf="@+id/layout_settings_layout_icon"
                            android:paddingLeft="14dp"
                            android:text="@string/settings_layout"
                            android:textColor="@color/dark_primary"
                            android:textSize="16sp"/>

                    </RelativeLayout>

                    <View
                        android:layout_width="match_parent"
                        android:layout_height="1dp"
                        android:background="@color/dark_divider"
                        android:visibility="gone"/>

                </LinearLayout>

                <LinearLayout
                    android:id="@+id/layout_settings_group_about"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:orientation="vertical">

                    <TextView
                        android:id="@+id/layout_settings_about"
                        android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_marginBottom="10dp"
                        android:layout_marginLeft="20dp"
                        android:layout_marginTop="15dp"
                        android:text="@string/settings_group_about"
                        android:textColor="@color/colorAccentDark"
                        android:textSize="14sp"
                        android:textStyle="bold"/>

                    <RelativeLayout
                        android:id="@+id/layout_settings_about_tapad"
                        android:layout_width="match_parent"
                        android:layout_height="48dp"
                        android:background="?selectableItemBackground"
                        android:clickable="true">

                        <TextView
                            android:id="@+id/layout_settings_about_tapad_text"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:layout_centerVertical="true"
                            android:layout_marginLeft="20dp"
                            android:text="@string/settings_about_tapad"
                            android:textColor="@color/dark_primary"
                            android:textSize="16sp"/>

                    </RelativeLayout>

                    <View
                        android:layout_width="match_parent"
                        android:layout_height="1dp"
                        android:background="@color/dark_divider"/>

                    <RelativeLayout
                        android:id="@+id/layout_settings_about_dev"
                        android:layout_width="match_parent"
                        android:layout_height="48dp"
                        android:background="?selectableItemBackground"
                        android:clickable="true">

                        <TextView
                            android:id="@+id/layout_settings_about_dev_text"
                            android:layout_width="wrap_content"
                            android:layout_height="wrap_content"
                            android:layout_centerVertical="true"
                            android:layout_marginLeft="20dp"
                            android:text="@string/settings_about_dev"
                            android:textColor="@color/dark_primary"
                            android:textSize="16sp"/>

                    </RelativeLayout>

                </LinearLayout>
            </LinearLayout>
        </ScrollView>

        <include layout="@layout/fragment_actionbar"/>

    </RelativeLayout>

</android.support.constraint.ConstraintLayout>