Merge pull request #6434 from litetex/playerSeekbarPreview

Player seekbar thumbnail preview
This commit is contained in:
Stypox 2021-07-19 11:42:10 +02:00 committed by GitHub
commit d57bfde604
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
12 changed files with 663 additions and 58 deletions

View file

@ -103,8 +103,8 @@
android:padding="@dimen/player_main_buttons_padding"
android:scaleType="fitXY"
android:visibility="gone"
app:tint="@color/white"
app:srcCompat="@drawable/ic_close"
app:tint="@color/white"
tools:ignore="ContentDescription,RtlHardcoded" />
<LinearLayout
@ -189,8 +189,8 @@
android:paddingBottom="3dp"
android:scaleType="fitCenter"
android:visibility="gone"
app:tint="@color/white"
app:srcCompat="@drawable/ic_list"
app:tint="@color/white"
tools:ignore="ContentDescription,RtlHardcoded"
tools:visibility="visible" />
@ -208,8 +208,8 @@
android:paddingBottom="3dp"
android:scaleType="fitCenter"
android:visibility="gone"
app:tint="@color/white"
app:srcCompat="@drawable/ic_format_list_numbered"
app:tint="@color/white"
tools:ignore="ContentDescription,RtlHardcoded"
tools:visibility="visible" />
@ -222,8 +222,8 @@
android:focusable="true"
android:padding="@dimen/player_main_buttons_padding"
android:scaleType="fitXY"
app:tint="@color/white"
app:srcCompat="@drawable/ic_expand_more"
app:tint="@color/white"
tools:ignore="ContentDescription,RtlHardcoded" />
</LinearLayout>
@ -287,8 +287,8 @@
android:focusable="true"
android:padding="@dimen/player_main_buttons_padding"
android:scaleType="fitXY"
app:tint="@color/white"
app:srcCompat="@drawable/ic_cast"
app:tint="@color/white"
tools:ignore="RtlHardcoded" />
<androidx.appcompat.widget.AppCompatImageButton
@ -302,8 +302,8 @@
android:focusable="true"
android:padding="@dimen/player_main_buttons_padding"
android:scaleType="fitXY"
app:tint="@color/white"
app:srcCompat="@drawable/ic_language"
app:tint="@color/white"
tools:ignore="RtlHardcoded" />
<androidx.appcompat.widget.AppCompatImageButton
@ -317,8 +317,8 @@
android:focusable="true"
android:padding="@dimen/player_main_buttons_padding"
android:scaleType="fitXY"
app:tint="@color/white"
app:srcCompat="@drawable/ic_share"
app:tint="@color/white"
tools:ignore="RtlHardcoded" />
<androidx.appcompat.widget.AppCompatImageButton
@ -331,8 +331,8 @@
android:focusable="true"
android:padding="@dimen/player_main_buttons_padding"
android:scaleType="fitXY"
app:tint="@color/white"
app:srcCompat="@drawable/ic_volume_off"
app:tint="@color/white"
tools:ignore="RtlHardcoded" />
<androidx.appcompat.widget.AppCompatImageButton
@ -345,8 +345,8 @@
android:padding="@dimen/player_main_buttons_padding"
android:scaleType="fitCenter"
android:visibility="gone"
app:tint="@color/white"
app:srcCompat="@drawable/ic_fullscreen"
app:tint="@color/white"
tools:ignore="ContentDescription,RtlHardcoded"
tools:visibility="visible" />
@ -354,6 +354,50 @@
</LinearLayout>
<LinearLayout
android:id="@+id/bottomSeekbarPreviewLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_above="@id/bottomControls"
android:orientation="horizontal">
<LinearLayout
android:id="@+id/seekbarPreviewContainer"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:orientation="vertical"
android:paddingBottom="12dp">
<TextView
android:id="@+id/currentDisplaySeek"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#60000000"
android:paddingLeft="5dp"
android:paddingRight="5dp"
android:paddingBottom="2dp"
android:textColor="@android:color/white"
android:textSize="18sp"
android:textStyle="bold"
android:visibility="gone"
tools:ignore="RtlHardcoded"
tools:text="1:06:29"
tools:visibility="visible" />
<ImageView
android:id="@+id/currentSeekbarPreviewThumbnail"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingTop="2dp"
android:visibility="gone"
app:srcCompat="@drawable/dummy_thumbnail"
tools:visibility="visible" />
</LinearLayout>
</LinearLayout>
<LinearLayout
android:id="@+id/bottomControls"
android:layout_width="match_parent"
@ -685,24 +729,6 @@
tools:src="@drawable/ic_brightness_high" />
</RelativeLayout>
<TextView
android:id="@+id/currentDisplaySeek"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:layout_marginBottom="58dp"
android:background="#64000000"
android:paddingLeft="30dp"
android:paddingTop="10dp"
android:paddingRight="30dp"
android:paddingBottom="10dp"
android:textColor="@android:color/white"
android:textSize="26sp"
android:textStyle="bold"
android:visibility="gone"
tools:ignore="RtlHardcoded"
tools:text="1:06:29"
tools:visibility="visible" />
</RelativeLayout>
</RelativeLayout>

View file

@ -101,8 +101,8 @@
android:padding="@dimen/player_main_buttons_padding"
android:scaleType="fitXY"
android:visibility="gone"
app:tint="@color/white"
app:srcCompat="@drawable/ic_close"
app:tint="@color/white"
tools:ignore="ContentDescription,RtlHardcoded" />
<LinearLayout
@ -191,8 +191,8 @@
android:paddingBottom="3dp"
android:scaleType="fitCenter"
android:visibility="gone"
app:tint="@color/white"
app:srcCompat="@drawable/ic_list"
app:tint="@color/white"
tools:ignore="ContentDescription,RtlHardcoded" />
<androidx.appcompat.widget.AppCompatImageButton
@ -209,8 +209,8 @@
android:paddingBottom="3dp"
android:scaleType="fitCenter"
android:visibility="gone"
app:tint="@color/white"
app:srcCompat="@drawable/ic_format_list_numbered"
app:tint="@color/white"
tools:ignore="ContentDescription,RtlHardcoded" />
<androidx.appcompat.widget.AppCompatImageButton
@ -222,8 +222,8 @@
android:focusable="true"
android:padding="@dimen/player_main_buttons_padding"
android:scaleType="fitXY"
app:tint="@color/white"
app:srcCompat="@drawable/ic_expand_more"
app:tint="@color/white"
tools:ignore="ContentDescription,RtlHardcoded" />
</LinearLayout>
@ -286,8 +286,8 @@
android:focusable="true"
android:padding="@dimen/player_main_buttons_padding"
android:scaleType="fitXY"
app:tint="@color/white"
app:srcCompat="@drawable/ic_cast"
app:tint="@color/white"
tools:ignore="RtlHardcoded" />
<androidx.appcompat.widget.AppCompatImageButton
@ -301,8 +301,8 @@
android:focusable="true"
android:padding="@dimen/player_main_buttons_padding"
android:scaleType="fitXY"
app:tint="@color/white"
app:srcCompat="@drawable/ic_language"
app:tint="@color/white"
tools:ignore="RtlHardcoded" />
<androidx.appcompat.widget.AppCompatImageButton
@ -316,8 +316,8 @@
android:focusable="true"
android:padding="@dimen/player_main_buttons_padding"
android:scaleType="fitXY"
app:tint="@color/white"
app:srcCompat="@drawable/ic_share"
app:tint="@color/white"
tools:ignore="RtlHardcoded" />
<androidx.appcompat.widget.AppCompatImageButton
@ -330,8 +330,8 @@
android:focusable="true"
android:padding="@dimen/player_main_buttons_padding"
android:scaleType="fitXY"
app:tint="@color/white"
app:srcCompat="@drawable/ic_volume_off"
app:tint="@color/white"
tools:ignore="RtlHardcoded" />
<androidx.appcompat.widget.AppCompatImageButton
@ -344,8 +344,8 @@
android:padding="@dimen/player_main_buttons_padding"
android:scaleType="fitCenter"
android:visibility="gone"
app:tint="@color/white"
app:srcCompat="@drawable/ic_fullscreen"
app:tint="@color/white"
tools:ignore="ContentDescription,RtlHardcoded"
tools:visibility="visible" />
@ -353,6 +353,50 @@
</LinearLayout>
<LinearLayout
android:id="@+id/bottomSeekbarPreviewLayout"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_above="@id/bottomControls"
android:orientation="horizontal">
<LinearLayout
android:id="@+id/seekbarPreviewContainer"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:orientation="vertical"
android:paddingBottom="12dp">
<TextView
android:id="@+id/currentDisplaySeek"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="#60000000"
android:paddingLeft="5dp"
android:paddingRight="5dp"
android:paddingBottom="2dp"
android:textColor="@android:color/white"
android:textSize="18sp"
android:textStyle="bold"
android:visibility="gone"
tools:ignore="RtlHardcoded"
tools:text="1:06:29"
tools:visibility="visible" />
<ImageView
android:id="@+id/currentSeekbarPreviewThumbnail"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:paddingTop="2dp"
android:visibility="gone"
app:srcCompat="@drawable/dummy_thumbnail"
tools:visibility="visible" />
</LinearLayout>
</LinearLayout>
<LinearLayout
android:id="@+id/bottomControls"
android:layout_width="match_parent"
@ -681,24 +725,6 @@
tools:src="@drawable/ic_brightness" />
</RelativeLayout>
<TextView
android:id="@+id/currentDisplaySeek"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_centerInParent="true"
android:layout_marginBottom="58dp"
android:background="#64000000"
android:paddingLeft="30dp"
android:paddingTop="10dp"
android:paddingRight="30dp"
android:paddingBottom="10dp"
android:textColor="@android:color/white"
android:textSize="26sp"
android:textStyle="bold"
android:visibility="gone"
tools:ignore="RtlHardcoded"
tools:text="1:06:29"
tools:visibility="visible" />
</RelativeLayout>
</RelativeLayout>

View file

@ -422,6 +422,10 @@
<string name="grid">Raster</string>
<string name="auto">Automatisch</string>
<string name="switch_view">Ansicht wechseln</string>
<string name="seekbar_preview_thumbnail_title">Vorschaubild der Suchleiste</string>
<string name="high_quality_larger">Hohe Qualität (größer)</string>
<string name="low_quality_smaller">Niedrige Qualität (kleiner)</string>
<string name="dont_show">Nicht anzeigen</string>
<string name="app_update_notification_content_title">Eine NewPipe-Aktualisierung ist verfügbar!</string>
<string name="app_update_notification_content_text">Zum Herunterladen antippen</string>
<string name="missions_header_finished">Fertig</string>

View file

@ -89,6 +89,21 @@
<item>@string/never</item>
</string-array>
<string name="seekbar_preview_thumbnail_key" translatable="false">seekbar_preview_thumbnail_key</string>
<string name="seekbar_preview_thumbnail_high_quality" translatable="false">seekbar_preview_thumbnail_high_quality</string>
<string name="seekbar_preview_thumbnail_low_quality" translatable="false">seekbar_preview_thumbnail_low_quality</string>
<string name="seekbar_preview_thumbnail_none" translatable="false">seekbar_preview_thumbnail_none</string>
<string-array name="seekbar_preview_thumbnail_type_key" translatable="false">
<item>@string/seekbar_preview_thumbnail_high_quality</item>
<item>@string/seekbar_preview_thumbnail_low_quality</item>
<item>@string/seekbar_preview_thumbnail_none</item>
</string-array>
<string-array name="seekbar_preview_thumbnail_type_description" translatable="false">
<item>@string/high_quality_larger</item>
<item>@string/low_quality_smaller</item>
<item>@string/dont_show</item>
</string-array>
<string name="default_resolution_key" translatable="false">default_resolution</string>
<string name="default_resolution_value" translatable="false">720p60</string>
<string name="show_higher_resolutions_key" translatable="false">show_higher_resolutions</string>

View file

@ -587,6 +587,11 @@
<string name="grid">Grid</string>
<string name="auto">Auto</string>
<string name="switch_view">Switch View</string>
<!-- Seekbar Preview Thumbnail-->
<string name="seekbar_preview_thumbnail_title">Seekbar thumbnail preview</string>
<string name="high_quality_larger">High quality (larger)</string>
<string name="low_quality_smaller">Low quality (smaller)</string>
<string name="dont_show">Don\'t show</string>
<!-- App update notification -->
<string name="app_update_notification_content_title">NewPipe update is available!</string>
<string name="app_update_notification_content_text">Tap to download</string>

View file

@ -79,6 +79,16 @@
android:summary="@string/show_play_with_kodi_summary"
android:title="@string/show_play_with_kodi_title"
app:iconSpaceReserved="false" />
<ListPreference
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:defaultValue="seekbar_preview_thumbnail_high_quality"
android:entries="@array/seekbar_preview_thumbnail_type_description"
android:entryValues="@array/seekbar_preview_thumbnail_type_key"
android:key="@string/seekbar_preview_thumbnail_key"
android:summary="%s"
android:title="@string/seekbar_preview_thumbnail_title"
app:iconSpaceReserved="false" />
</PreferenceCategory>