Notification Improvements
- add MediaStyle notifications for Background and Popup playback - reduce excessive notification updating ( / recreating of Notification.Builder object) when playing background / popup media - add new buffering state indicator (can be disabled) - upscale close icon / downscale replay icon - add notification slot settings - move notification settings to appearance - fix Metadata (song title, artist and album art) sometimes not being set correctly - other misc notification fixes Co-authored-by: wb9688 <wb9688@users.noreply.github.com>
BIN
app/src/main/res/drawable-hdpi/ic_close_white_32dp.png
Normal file
|
After Width: | Height: | Size: 257 B |
BIN
app/src/main/res/drawable-hdpi/ic_replay_white_32dp.png
Normal file
|
After Width: | Height: | Size: 804 B |
BIN
app/src/main/res/drawable-mdpi/ic_close_white_32dp.png
Normal file
|
After Width: | Height: | Size: 542 B |
BIN
app/src/main/res/drawable-mdpi/ic_replay_white_32dp.png
Normal file
|
After Width: | Height: | Size: 583 B |
BIN
app/src/main/res/drawable-xhdpi/ic_close_white_32dp.png
Normal file
|
After Width: | Height: | Size: 666 B |
BIN
app/src/main/res/drawable-xhdpi/ic_replay_white_32dp.png
Normal file
|
After Width: | Height: | Size: 1.1 KiB |
BIN
app/src/main/res/drawable-xxhdpi/ic_close_white_32dp.png
Normal file
|
After Width: | Height: | Size: 436 B |
BIN
app/src/main/res/drawable-xxhdpi/ic_replay_white_32dp.png
Normal file
|
After Width: | Height: | Size: 908 B |
BIN
app/src/main/res/drawable-xxxhdpi/ic_close_white_32dp.png
Normal file
|
After Width: | Height: | Size: 1.8 KiB |
BIN
app/src/main/res/drawable-xxxhdpi/ic_replay_white_32dp.png
Normal file
|
After Width: | Height: | Size: 2.5 KiB |
|
|
@ -96,6 +96,113 @@
|
|||
<item>144p</item>
|
||||
</string-array>
|
||||
|
||||
<string name="enable_old_notifications_key" translatable="false">enable_old_notifications</string>
|
||||
<string name="settings_notifications_compact_view_key" translatable="false">notifications_compact_view</string>
|
||||
<string name="settings_notifications_compact_view_default_value" translatable="false">0,1,2</string>
|
||||
<string name="scale_to_square_image_in_notifications_key" translatable="false">scale_to_square_image_in_notifications</string>
|
||||
|
||||
<string name="notification_slot_prev_key" translatable="false">prev</string>
|
||||
<string name="notification_slot_next_key" translatable="false">next</string>
|
||||
<string name="notification_slot_rewind_key" translatable="false">rewind</string>
|
||||
<string name="notification_slot_forward_key" translatable="false">forward</string>
|
||||
<string name="notification_slot_smart_rewind_prev_key" translatable="false">smart_rewind_prev</string>
|
||||
<string name="notification_slot_smart_forward_next_key" translatable="false">smart_forward_next</string>
|
||||
<string name="notification_slot_play_pause_buffering_key" translatable="false">play_pause_buffering</string>
|
||||
<string name="notification_slot_play_pause_key" translatable="false">play_pause</string>
|
||||
<string name="notification_slot_repeat_key" translatable="false">repeat</string>
|
||||
<string name="notification_slot_shuffle_key" translatable="false">shuffle</string>
|
||||
<string name="notification_slot_close_key" translatable="false">close</string>
|
||||
<string name="notification_slot_n_a_key" translatable="false">n/a</string>
|
||||
|
||||
<string name="notification_slot_0_key" translatable="false">notification_slot_0_key</string>
|
||||
<string name="notification_slot_0_value" translatable="false">@string/notification_slot_smart_rewind_prev_key</string>
|
||||
<string-array name="notification_slot_0_description_list" translatable="false">
|
||||
<item>Rewind / Previous</item>
|
||||
<item>Previous</item>
|
||||
<item>Rewind</item>
|
||||
</string-array>
|
||||
<string-array name="notification_slot_0_values_list" translatable="false">
|
||||
<item>@string/notification_slot_smart_rewind_prev_key</item>
|
||||
<item>@string/notification_slot_prev_key</item>
|
||||
<item>@string/notification_slot_rewind_key</item>
|
||||
</string-array>
|
||||
|
||||
<string name="notification_slot_1_key" translatable="false">notification_slot_1_key</string>
|
||||
<string name="notification_slot_1_value" translatable="false">@string/notification_slot_play_pause_buffering_key</string>
|
||||
<string-array name="notification_slot_1_description_list" translatable="false">
|
||||
<item>Play / Pause / Buffering</item>
|
||||
<item>Play / Pause</item>
|
||||
<item>Rewind</item>
|
||||
</string-array>
|
||||
<string-array name="notification_slot_1_values_list" translatable="false">
|
||||
<item>@string/notification_slot_play_pause_buffering_key</item>
|
||||
<item>@string/notification_slot_play_pause_key</item>
|
||||
<item>@string/notification_slot_rewind_key</item>
|
||||
</string-array>
|
||||
|
||||
|
||||
<string name="notification_slot_2_key" translatable="false">notification_slot_2_key</string>
|
||||
<string name="notification_slot_2_value" translatable="false">@string/notification_slot_smart_forward_next_key</string>
|
||||
<string-array name="notification_slot_2_description_list" translatable="false">
|
||||
<item>Forward / Next</item>
|
||||
<item>Forward</item>
|
||||
<item>Next</item>
|
||||
<item>Play / Pause / Buffering</item>
|
||||
<item>Play / Pause</item>
|
||||
</string-array>
|
||||
<string-array name="notification_slot_2_values_list" translatable="false">
|
||||
<item>@string/notification_slot_smart_forward_next_key</item>
|
||||
<item>@string/notification_slot_forward_key</item>
|
||||
<item>@string/notification_slot_next_key</item>
|
||||
<item>@string/notification_slot_play_pause_buffering_key</item>
|
||||
<item>@string/notification_slot_play_pause_key</item>
|
||||
</string-array>
|
||||
|
||||
<string name="notification_slot_3_key" translatable="false">notification_slot_3_key</string>
|
||||
<string name="notification_slot_3_value" translatable="false">@string/notification_slot_repeat_key</string>
|
||||
<string-array name="notification_slot_3_description_list" translatable="false">
|
||||
<item>Repeat</item>
|
||||
<item>Shuffle</item>
|
||||
<item>Previous</item>
|
||||
<item>Forward</item>
|
||||
<item>Forward / Next</item>
|
||||
<item>Rewind</item>
|
||||
<item>Rewind / Previous</item>
|
||||
<item>Close</item>
|
||||
<item>N/A</item>
|
||||
</string-array>
|
||||
<string-array name="notification_slot_3_values_list" translatable="false">
|
||||
<item>@string/notification_slot_repeat_key</item>
|
||||
<item>@string/notification_slot_shuffle_key</item>
|
||||
<item>@string/notification_slot_prev_key</item>
|
||||
<item>@string/notification_slot_forward_key</item>
|
||||
<item>@string/notification_slot_smart_forward_next_key</item>
|
||||
<item>@string/notification_slot_rewind_key</item>
|
||||
<item>@string/notification_slot_smart_rewind_prev_key</item>
|
||||
<item>@string/notification_slot_close_key</item>
|
||||
<item>@string/notification_slot_n_a_key</item>
|
||||
</string-array>
|
||||
|
||||
<string name="notification_slot_4_key" translatable="false">notification_slot_4_key</string>
|
||||
<string name="notification_slot_4_value" translatable="false">@string/notification_slot_close_key</string>
|
||||
<string-array name="notification_slot_4_description_list" translatable="false">
|
||||
<item>Close</item>
|
||||
<item>Repeat</item>
|
||||
<item>Shuffle</item>
|
||||
<item>Next</item>
|
||||
<item>Forward</item>
|
||||
<item>Forward / Next</item>
|
||||
<item>N/A</item>
|
||||
</string-array>
|
||||
<string-array name="notification_slot_4_values_list" translatable="false">
|
||||
<item>@string/notification_slot_close_key</item>
|
||||
<item>@string/notification_slot_repeat_key</item>
|
||||
<item>@string/notification_slot_shuffle_key</item>
|
||||
<item>@string/notification_slot_next_key</item>
|
||||
<item>@string/notification_slot_forward_key</item>
|
||||
<item>@string/notification_slot_smart_forward_next_key</item>
|
||||
<item>@string/notification_slot_n_a_key</item>
|
||||
</string-array>
|
||||
|
||||
<string name="video_mp4_key" translatable="false">video_mp4</string>
|
||||
<string name="video_webm_key" translatable="false">video_webm</string>
|
||||
|
|
|
|||
|
|
@ -57,9 +57,18 @@
|
|||
<string name="kore_not_found">Install missing Kore app?</string>
|
||||
<string name="kore_package" translatable="false">org.xbmc.kore</string>
|
||||
<string name="show_play_with_kodi_title">Show \"Play with Kodi\" option</string>
|
||||
<string name="enable_lock_screen_video_thumbnail_title">Lock screen video thumbnail</string>
|
||||
<string name="show_play_with_kodi_summary">Display an option to play a video via Kodi media center</string>
|
||||
<string name="enable_lock_screen_video_thumbnail_summary">A video thumbnail is shown on the lock screen when using the background player</string>
|
||||
<string name="enable_old_notifications_title">Enable old notifications</string>
|
||||
<string name="enable_old_notifications_summary">This enables the old \"Custom RemoteViews\" notifications. If disabled modern MediaStyle notifications will be used.</string>
|
||||
<string name="scale_to_square_image_in_notifications_title">Scale image to 1:1 aspect ratio</string>
|
||||
<string name="scale_to_square_image_in_notifications_summary">This will scale the notification image from 16:9 to 1:1 aspect ratio</string>
|
||||
<string name="default_notification_slot_0_title">Notification slot 0</string>
|
||||
<string name="default_notification_slot_1_title">Notification slot 1</string>
|
||||
<string name="default_notification_slot_2_title">Notification slot 2</string>
|
||||
<string name="default_notification_slot_3_title">Notification slot 3</string>
|
||||
<string name="default_notification_slot_4_title">Notification slot 4</string>
|
||||
<string name="settings_notifications_compact_view_title">Notification compact view</string>
|
||||
<string name="settings_notifications_compact_view_summary">Notification slots to show in compact view</string>
|
||||
<string name="play_audio">Audio</string>
|
||||
<string name="default_audio_format_title">Default audio format</string>
|
||||
<string name="default_video_format_title">Default video format</string>
|
||||
|
|
@ -129,6 +138,7 @@
|
|||
<string name="settings_category_other_title">Other</string>
|
||||
<string name="settings_category_debug_title">Debug</string>
|
||||
<string name="settings_category_updates_title">Updates</string>
|
||||
<string name="settings_category_notifications_title">Notifications</string>
|
||||
<string name="background_player_playing_toast">Playing in background</string>
|
||||
<string name="popup_playing_toast">Playing in popup mode</string>
|
||||
<string name="background_player_append">Queued on background player</string>
|
||||
|
|
|
|||
|
|
@ -1,38 +1,110 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<PreferenceScreen
|
||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
android:title="@string/settings_category_appearance_title">
|
||||
|
||||
<ListPreference
|
||||
app:iconSpaceReserved="false"
|
||||
android:defaultValue="@string/default_theme_value"
|
||||
android:entries="@array/theme_description_list"
|
||||
android:entryValues="@array/theme_values_list"
|
||||
android:key="@string/theme_key"
|
||||
android:summary="%s"
|
||||
android:title="@string/theme_title"/>
|
||||
android:title="@string/theme_title"
|
||||
app:iconSpaceReserved="false" />
|
||||
|
||||
<SwitchPreference
|
||||
app:iconSpaceReserved="false"
|
||||
android:defaultValue="true"
|
||||
android:key="@string/show_hold_to_append_key"
|
||||
android:summary="@string/show_hold_to_append_summary"
|
||||
android:title="@string/show_hold_to_append_title"
|
||||
android:summary="@string/show_hold_to_append_summary"/>
|
||||
app:iconSpaceReserved="false" />
|
||||
|
||||
<ListPreference
|
||||
app:iconSpaceReserved="false"
|
||||
android:defaultValue="@string/list_view_mode_value"
|
||||
android:entries="@array/list_view_mode_description"
|
||||
android:entryValues="@array/list_view_mode_values"
|
||||
android:key="@string/list_view_mode_key"
|
||||
android:summary="%s"
|
||||
android:title="@string/list_view_mode"/>
|
||||
android:title="@string/list_view_mode"
|
||||
app:iconSpaceReserved="false" />
|
||||
|
||||
<Preference
|
||||
app:iconSpaceReserved="false"
|
||||
android:key="@string/caption_settings_key"
|
||||
android:summary="@string/caption_setting_description"
|
||||
android:title="@string/caption_setting_title"
|
||||
android:summary="@string/caption_setting_description"/>
|
||||
app:iconSpaceReserved="false" />
|
||||
|
||||
<PreferenceCategory
|
||||
android:layout="@layout/settings_category_header_layout"
|
||||
android:title="@string/settings_category_notifications_title"
|
||||
app:iconSpaceReserved="false">
|
||||
|
||||
<SwitchPreference
|
||||
android:defaultValue="false"
|
||||
android:key="@string/enable_old_notifications_key"
|
||||
android:summary="@string/enable_old_notifications_summary"
|
||||
android:title="@string/enable_old_notifications_title"
|
||||
app:iconSpaceReserved="false" />
|
||||
|
||||
<SwitchPreference
|
||||
android:defaultValue="false"
|
||||
android:key="@string/scale_to_square_image_in_notifications_key"
|
||||
android:summary="@string/scale_to_square_image_in_notifications_summary"
|
||||
android:title="@string/scale_to_square_image_in_notifications_title"
|
||||
app:iconSpaceReserved="false" />
|
||||
|
||||
<ListPreference
|
||||
android:defaultValue="@string/notification_slot_0_value"
|
||||
android:entries="@array/notification_slot_0_description_list"
|
||||
android:entryValues="@array/notification_slot_0_values_list"
|
||||
android:key="@string/notification_slot_0_key"
|
||||
android:summary="%s"
|
||||
android:title="@string/default_notification_slot_0_title"
|
||||
app:iconSpaceReserved="false" />
|
||||
|
||||
<ListPreference
|
||||
android:defaultValue="@string/notification_slot_1_value"
|
||||
android:entries="@array/notification_slot_1_description_list"
|
||||
android:entryValues="@array/notification_slot_1_values_list"
|
||||
android:key="@string/notification_slot_1_key"
|
||||
android:summary="%s"
|
||||
android:title="@string/default_notification_slot_1_title"
|
||||
app:iconSpaceReserved="false" />
|
||||
|
||||
<ListPreference
|
||||
android:defaultValue="@string/notification_slot_2_value"
|
||||
android:entries="@array/notification_slot_2_description_list"
|
||||
android:entryValues="@array/notification_slot_2_values_list"
|
||||
android:key="@string/notification_slot_2_key"
|
||||
android:summary="%s"
|
||||
android:title="@string/default_notification_slot_2_title"
|
||||
app:iconSpaceReserved="false" />
|
||||
|
||||
<ListPreference
|
||||
android:defaultValue="@string/notification_slot_3_value"
|
||||
android:entries="@array/notification_slot_3_description_list"
|
||||
android:entryValues="@array/notification_slot_3_values_list"
|
||||
android:key="@string/notification_slot_3_key"
|
||||
android:summary="%s"
|
||||
android:title="@string/default_notification_slot_3_title"
|
||||
app:iconSpaceReserved="false" />
|
||||
|
||||
<ListPreference
|
||||
android:defaultValue="@string/notification_slot_4_value"
|
||||
android:entries="@array/notification_slot_4_description_list"
|
||||
android:entryValues="@array/notification_slot_4_values_list"
|
||||
android:key="@string/notification_slot_4_key"
|
||||
android:summary="%s"
|
||||
android:title="@string/default_notification_slot_4_title"
|
||||
app:iconSpaceReserved="false" />
|
||||
|
||||
<EditTextPreference
|
||||
android:defaultValue="@string/settings_notifications_compact_view_default_value"
|
||||
android:key="@string/settings_notifications_compact_view_key"
|
||||
android:summary="@string/settings_notifications_compact_view_summary"
|
||||
android:title="@string/settings_notifications_compact_view_title"
|
||||
app:iconSpaceReserved="false" />
|
||||
|
||||
</PreferenceCategory>
|
||||
|
||||
</PreferenceScreen>
|
||||
|
|
|
|||
|
|
@ -81,13 +81,6 @@
|
|||
android:summary="@string/show_play_with_kodi_summary"
|
||||
android:title="@string/show_play_with_kodi_title"/>
|
||||
|
||||
<SwitchPreference
|
||||
app:iconSpaceReserved="false"
|
||||
android:defaultValue="true"
|
||||
android:key="@string/enable_lock_screen_video_thumbnail_key"
|
||||
android:summary="@string/enable_lock_screen_video_thumbnail_summary"
|
||||
android:title="@string/enable_lock_screen_video_thumbnail_title"/>
|
||||
|
||||
</PreferenceCategory>
|
||||
|
||||
<PreferenceCategory
|
||||
|
|
|
|||