
Rework the smallest widgets to have no textual metadata, alongside adding a new widget size class. Turns out the last tiny widget redesign made the controls far too small. Instead, remove the textual metadata and make these widgets more akin to the small and wide widgets. This also introduces a new side class alongside that with more controls, again to make it similar to the other size classes.
99 lines
3.8 KiB
XML
99 lines
3.8 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
|
xmlns:tools="http://schemas.android.com/tools"
|
|
android:id="@android:id/background"
|
|
android:layout_width="match_parent"
|
|
android:layout_height="match_parent"
|
|
android:background="?attr/colorSurface"
|
|
android:theme="@style/Theme.Widget"
|
|
android:orientation="horizontal"
|
|
android:baselineAligned="false">
|
|
|
|
<!--
|
|
Wrapping the 1:1 ImageView hack in a LinearLayout allows the view to measure greedily
|
|
without squishing the controls.
|
|
-->
|
|
|
|
<RelativeLayout
|
|
android:layout_width="0dp"
|
|
android:layout_height="match_parent"
|
|
android:layout_weight="1">
|
|
|
|
<!--
|
|
See widget_small.xml for an explanation for the ImageView setup
|
|
-->
|
|
|
|
<android.widget.ImageView
|
|
android:id="@+id/widget_aspect_ratio"
|
|
android:layout_width="wrap_content"
|
|
android:layout_height="wrap_content"
|
|
android:layout_alignParentStart="true"
|
|
android:layout_alignParentTop="true"
|
|
android:layout_alignParentEnd="true"
|
|
android:layout_alignParentBottom="true"
|
|
android:layout_marginStart="@dimen/spacing_medium"
|
|
android:layout_marginTop="@dimen/spacing_medium"
|
|
android:layout_marginEnd="@dimen/spacing_medium"
|
|
android:layout_marginBottom="@dimen/spacing_medium"
|
|
android:adjustViewBounds="true"
|
|
android:scaleType="fitCenter"
|
|
android:src="@drawable/ui_remote_aspect_ratio"
|
|
android:visibility="invisible"
|
|
tools:ignore="ContentDescription" />
|
|
|
|
<android.widget.ImageView
|
|
android:id="@+id/widget_cover"
|
|
android:layout_width="0dp"
|
|
android:layout_height="0dp"
|
|
android:layout_alignStart="@id/widget_aspect_ratio"
|
|
android:layout_alignTop="@id/widget_aspect_ratio"
|
|
android:layout_alignEnd="@id/widget_aspect_ratio"
|
|
android:layout_alignBottom="@id/widget_aspect_ratio"
|
|
android:src="@drawable/ic_remote_default_cover"
|
|
tools:ignore="ContentDescription" />
|
|
|
|
</RelativeLayout>
|
|
|
|
<android.widget.LinearLayout
|
|
android:id="@+id/widget_panel"
|
|
android:layout_width="0dp"
|
|
android:layout_height="wrap_content"
|
|
android:layout_weight="2"
|
|
android:layout_gravity="center"
|
|
android:orientation="horizontal"
|
|
android:layout_marginTop="@dimen/spacing_medium"
|
|
android:layout_marginBottom="@dimen/spacing_medium"
|
|
android:layout_marginEnd="@dimen/spacing_medium">
|
|
|
|
|
|
<android.widget.ImageButton
|
|
android:id="@+id/widget_skip_prev"
|
|
style="@style/Widget.Auxio.PlaybackButton.AppWidget"
|
|
android:layout_width="wrap_content"
|
|
android:layout_height="wrap_content"
|
|
android:layout_weight="1"
|
|
android:contentDescription="@string/desc_skip_prev"
|
|
android:src="@drawable/ic_skip_prev" />
|
|
|
|
<android.widget.ImageButton
|
|
android:id="@+id/widget_play_pause"
|
|
style="@style/Widget.Auxio.PlaybackButton.AppWidget"
|
|
android:layout_width="wrap_content"
|
|
android:layout_height="wrap_content"
|
|
android:layout_weight="1"
|
|
android:contentDescription="@string/desc_play_pause"
|
|
android:src="@drawable/sel_playing_state" />
|
|
|
|
<android.widget.ImageButton
|
|
android:id="@+id/widget_skip_next"
|
|
style="@style/Widget.Auxio.PlaybackButton.AppWidget"
|
|
android:layout_width="wrap_content"
|
|
android:layout_height="wrap_content"
|
|
android:layout_weight="1"
|
|
android:contentDescription="@string/desc_skip_next"
|
|
android:src="@drawable/ic_skip_next" />
|
|
|
|
</android.widget.LinearLayout>
|
|
</LinearLayout>
|
|
|
|
|