summaryrefslogtreecommitdiff
path: root/app/src/main/java/de/danoeh/antennapod/dialog
diff options
context:
space:
mode:
authorByteHamster <info@bytehamster.com>2021-10-14 21:40:12 +0200
committerByteHamster <info@bytehamster.com>2021-10-14 21:40:12 +0200
commite734d43e7287a0f0f3f678c5875a34bf6bc75716 (patch)
tree7feb076b68c10f804c4784c10c498d750d72f0b9 /app/src/main/java/de/danoeh/antennapod/dialog
parent66250bebea5e2bef515651d310811ea7682a3c13 (diff)
parentf4d3ebb22de54985466c5776e22ca4da8b3c7acc (diff)
downloadAntennaPod-e734d43e7287a0f0f3f678c5875a34bf6bc75716.zip
Merge branch 'master' into develop
Diffstat (limited to 'app/src/main/java/de/danoeh/antennapod/dialog')
-rw-r--r--app/src/main/java/de/danoeh/antennapod/dialog/RemoveFeedDialog.java2
-rw-r--r--app/src/main/java/de/danoeh/antennapod/dialog/VariableSpeedDialog.java40
2 files changed, 22 insertions, 20 deletions
diff --git a/app/src/main/java/de/danoeh/antennapod/dialog/RemoveFeedDialog.java b/app/src/main/java/de/danoeh/antennapod/dialog/RemoveFeedDialog.java
index c4ae5e058..9fcf8be69 100644
--- a/app/src/main/java/de/danoeh/antennapod/dialog/RemoveFeedDialog.java
+++ b/app/src/main/java/de/danoeh/antennapod/dialog/RemoveFeedDialog.java
@@ -69,7 +69,7 @@ public class RemoveFeedDialog {
private static String getMessageId(Context context, List<Feed> feeds) {
if (feeds.size() == 1) {
if (feeds.get(0).isLocalFeed()) {
- return context.getString(R.string.feed_delete_confirmation_local_msg);
+ return context.getString(R.string.feed_delete_confirmation_local_msg, feeds.get(0).getTitle());
} else {
return context.getString(R.string.feed_delete_confirmation_msg, feeds.get(0).getTitle());
}
diff --git a/app/src/main/java/de/danoeh/antennapod/dialog/VariableSpeedDialog.java b/app/src/main/java/de/danoeh/antennapod/dialog/VariableSpeedDialog.java
index dffd49c45..5d13f6f00 100644
--- a/app/src/main/java/de/danoeh/antennapod/dialog/VariableSpeedDialog.java
+++ b/app/src/main/java/de/danoeh/antennapod/dialog/VariableSpeedDialog.java
@@ -1,15 +1,17 @@
package de.danoeh.antennapod.dialog;
-import android.app.Dialog;
+import android.os.Build;
import android.os.Bundle;
+import android.os.Handler;
+import android.os.Looper;
+import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
-import androidx.appcompat.app.AlertDialog;
-import androidx.fragment.app.DialogFragment;
import androidx.recyclerview.widget.GridLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
+import com.google.android.material.bottomsheet.BottomSheetDialogFragment;
import com.google.android.material.chip.Chip;
import com.google.android.material.snackbar.Snackbar;
import de.danoeh.antennapod.R;
@@ -25,7 +27,7 @@ import java.util.Collections;
import java.util.List;
import java.util.Locale;
-public class VariableSpeedDialog extends DialogFragment {
+public class VariableSpeedDialog extends BottomSheetDialogFragment {
private SpeedSelectionAdapter adapter;
private final DecimalFormat speedFormat;
private PlaybackController controller;
@@ -70,12 +72,10 @@ public class VariableSpeedDialog extends DialogFragment {
controller = null;
}
- @NonNull
+ @Nullable
@Override
- public Dialog onCreateDialog(@Nullable Bundle savedInstanceState) {
- AlertDialog.Builder builder = new AlertDialog.Builder(getContext());
- builder.setPositiveButton(R.string.close_label, null);
-
+ public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container,
+ @Nullable Bundle savedInstanceState) {
View root = View.inflate(getContext(), R.layout.speed_select_dialog, null);
speedSeekBar = root.findViewById(R.id.speed_seek_bar);
speedSeekBar.setProgressChangedListener(multiplier -> {
@@ -95,9 +95,7 @@ public class VariableSpeedDialog extends DialogFragment {
addCurrentSpeedChip.setCloseIconResource(R.drawable.ic_add);
addCurrentSpeedChip.setOnCloseIconClickListener(v -> addCurrentSpeed());
addCurrentSpeedChip.setOnClickListener(v -> addCurrentSpeed());
-
- builder.setView(root);
- return builder.create();
+ return root;
}
private void addCurrentSpeed() {
@@ -119,8 +117,9 @@ public class VariableSpeedDialog extends DialogFragment {
@NonNull
public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
Chip chip = new Chip(getContext());
- chip.setCloseIconVisible(true);
- chip.setCloseIconResource(R.drawable.ic_delete);
+ if (Build.VERSION.SDK_INT >= 17) {
+ chip.setTextAlignment(View.TEXT_ALIGNMENT_CENTER);
+ }
return new ViewHolder(chip);
}
@@ -129,16 +128,19 @@ public class VariableSpeedDialog extends DialogFragment {
float speed = selectedSpeeds.get(position);
holder.chip.setText(speedFormat.format(speed));
- holder.chip.setOnCloseIconClickListener(v -> {
+ holder.chip.setOnLongClickListener(v -> {
selectedSpeeds.remove(speed);
UserPreferences.setPlaybackSpeedArray(selectedSpeeds);
notifyDataSetChanged();
+ return true;
});
holder.chip.setOnClickListener(v -> {
- if (controller != null) {
- dismiss();
- controller.setPlaybackSpeed(speed);
- }
+ new Handler(Looper.getMainLooper()).postDelayed(() -> {
+ if (controller != null) {
+ dismiss();
+ controller.setPlaybackSpeed(speed);
+ }
+ }, 200);
});
}