summaryrefslogtreecommitdiff
path: root/ui
diff options
context:
space:
mode:
authorNicolas Araujo <63880378+nicoolasj@users.noreply.github.com>2022-04-24 17:36:37 -0300
committerGitHub <noreply@github.com>2022-04-24 22:36:37 +0200
commit9b78d4c3f39b085184ae54e88b22fb71f3fc13a3 (patch)
treebd1bdd4d03ed614dbae53801948364786c4344a4 /ui
parent1b2102d753820f2934a8463e767865212efe2831 (diff)
downloadAntennaPod-9b78d4c3f39b085184ae54e88b22fb71f3fc13a3.zip
Put playback speed in widget (#5774)
Diffstat (limited to 'ui')
-rw-r--r--ui/app-start-intent/src/main/java/de/danoeh/antennapod/ui/appstartintent/PlaybackSpeedActivityStarter.java40
-rw-r--r--ui/app-start-intent/src/main/res/values/pending_intent.xml1
-rw-r--r--ui/png-icons/src/main/res/drawable/ic_widget_playback_speed.xml16
3 files changed, 57 insertions, 0 deletions
diff --git a/ui/app-start-intent/src/main/java/de/danoeh/antennapod/ui/appstartintent/PlaybackSpeedActivityStarter.java b/ui/app-start-intent/src/main/java/de/danoeh/antennapod/ui/appstartintent/PlaybackSpeedActivityStarter.java
new file mode 100644
index 000000000..ac7e72a4e
--- /dev/null
+++ b/ui/app-start-intent/src/main/java/de/danoeh/antennapod/ui/appstartintent/PlaybackSpeedActivityStarter.java
@@ -0,0 +1,40 @@
+package de.danoeh.antennapod.ui.appstartintent;
+
+import android.app.PendingIntent;
+import android.content.Context;
+import android.content.Intent;
+import android.os.Build;
+
+/**
+ * Launches the playback speed dialog activity of the app with specific arguments.
+ * Does not require a dependency on the actual implementation of the activity.
+ */
+public class PlaybackSpeedActivityStarter {
+ public static final String INTENT = "de.danoeh.antennapod.intents.PLAYBACK_SPEED";
+ private final Intent intent;
+ private final Context context;
+
+ public PlaybackSpeedActivityStarter(Context context) {
+ this.context = context;
+ intent = new Intent(INTENT);
+ intent.setPackage(context.getPackageName());
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {
+ intent.addFlags(Intent.FLAG_ACTIVITY_NEW_DOCUMENT);
+ } else {
+ intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TASK);
+ }
+ }
+
+ public Intent getIntent() {
+ return intent;
+ }
+
+ public PendingIntent getPendingIntent() {
+ return PendingIntent.getActivity(context, R.id.pending_intent_playback_speed, getIntent(),
+ PendingIntent.FLAG_UPDATE_CURRENT | (Build.VERSION.SDK_INT >= 23 ? PendingIntent.FLAG_IMMUTABLE : 0));
+ }
+
+ public void start() {
+ context.startActivity(getIntent());
+ }
+}
diff --git a/ui/app-start-intent/src/main/res/values/pending_intent.xml b/ui/app-start-intent/src/main/res/values/pending_intent.xml
index 1e426e954..ed7e9b2cd 100644
--- a/ui/app-start-intent/src/main/res/values/pending_intent.xml
+++ b/ui/app-start-intent/src/main/res/values/pending_intent.xml
@@ -6,6 +6,7 @@
<item name="pending_intent_download_service_autodownload_report" type="id"/>
<item name="pending_intent_allow_stream_always" type="id"/>
<item name="pending_intent_allow_stream_this_time" type="id"/>
+ <item name="pending_intent_playback_speed" type="id"/>
<item name="pending_intent_player_activity" type="id"/>
<item name="pending_intent_video_player" type="id"/>
<item name="pending_intent_sync_error" type="id"/>
diff --git a/ui/png-icons/src/main/res/drawable/ic_widget_playback_speed.xml b/ui/png-icons/src/main/res/drawable/ic_widget_playback_speed.xml
new file mode 100644
index 000000000..482b6617e
--- /dev/null
+++ b/ui/png-icons/src/main/res/drawable/ic_widget_playback_speed.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="utf-8"?>
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+ android:height="48dp"
+ android:width="48dp"
+ android:viewportWidth="24"
+ android:viewportHeight="24">
+
+ <group
+ android:pivotX="12"
+ android:pivotY="12"
+ android:scaleX="0.8"
+ android:scaleY="0.8">
+
+ <path android:fillColor="#ffffff" android:pathData="M 12 15.98 A 2.98 2.98 0 0 1 9.02 12.99 c 0 -1.11 0.61 -2.09 1.49 -2.6 L 20.17 4.81 L 14.67 14.34 C 14.17 15.31 13.16 15.98 12 15.98 M 12 3.05 c 1.8 0 3.48 0.5 4.94 1.31 l -2.09 1.2 C 13.99 5.22 12.99 5.04 12 5.04 a 7.96 7.96 0 0 0 -7.96 7.96 c 0 2.2 0.89 4.19 2.33 5.62 h 0.01 c 0.39 0.39 0.39 1.01 0 1.4 c -0.39 0.39 -1.02 0.39 -1.41 0.01 v 0 C 3.17 18.22 2.05 15.74 2.05 12.99 A 9.95 9.95 0 0 1 12 3.05 m 9.95 9.95 c 0 2.75 -1.11 5.23 -2.91 7.03 v 0 c -0.39 0.38 -1.01 0.38 -1.4 -0.01 c -0.39 -0.39 -0.39 -1.01 0 -1.4 v 0 c 1.44 -1.44 2.33 -3.42 2.33 -5.62 c 0 -0.99 -0.19 -1.99 -0.54 -2.88 L 20.62 8.02 c 0.83 1.49 1.32 3.16 1.32 4.97 z" />
+ </group>
+</vector> \ No newline at end of file