summaryrefslogtreecommitdiff
path: root/app/src
diff options
context:
space:
mode:
Diffstat (limited to 'app/src')
-rw-r--r--app/src/androidTest/java/de/test/antennapod/storage/DBWriterTest.java3
-rw-r--r--app/src/androidTest/java/de/test/antennapod/ui/UITestUtils.java5
-rw-r--r--app/src/androidTest/java/de/test/antennapod/util/service/download/HTTPBin.java4
-rw-r--r--app/src/main/AndroidManifest.xml1
-rw-r--r--app/src/main/java/de/danoeh/antennapod/CrashReportWriter.java20
-rw-r--r--app/src/main/java/de/danoeh/antennapod/activity/MainActivity.java1
-rw-r--r--app/src/main/java/de/danoeh/antennapod/activity/OnlineFeedViewActivity.java6
-rw-r--r--app/src/main/java/de/danoeh/antennapod/adapter/NavListAdapter.java9
-rw-r--r--app/src/main/java/de/danoeh/antennapod/adapter/SubscriptionsAdapter.java4
-rw-r--r--app/src/main/java/de/danoeh/antennapod/dialog/PlaybackControlsDialog.java5
-rw-r--r--app/src/main/java/de/danoeh/antennapod/dialog/SkipPreferenceDialog.java5
-rw-r--r--app/src/main/java/de/danoeh/antennapod/fragment/ItemFragment.java4
-rw-r--r--app/src/main/java/de/danoeh/antennapod/fragment/QueueFragment.java4
-rw-r--r--app/src/main/java/de/danoeh/antennapod/fragment/preferences/ImportExportPreferencesFragment.java34
-rw-r--r--app/src/main/java/de/danoeh/antennapod/fragment/preferences/NetworkPreferencesFragment.java4
-rw-r--r--app/src/main/res/layout/audioplayer_fragment.xml1
-rw-r--r--app/src/main/res/layout/feeditemlist_item.xml11
-rw-r--r--app/src/main/res/layout/statistics_listitem_total.xml68
-rw-r--r--app/src/main/res/menu/queue.xml20
19 files changed, 124 insertions, 85 deletions
diff --git a/app/src/androidTest/java/de/test/antennapod/storage/DBWriterTest.java b/app/src/androidTest/java/de/test/antennapod/storage/DBWriterTest.java
index 4910882e3..d82e366da 100644
--- a/app/src/androidTest/java/de/test/antennapod/storage/DBWriterTest.java
+++ b/app/src/androidTest/java/de/test/antennapod/storage/DBWriterTest.java
@@ -20,6 +20,7 @@ import java.io.IOException;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
+import java.util.Locale;
import java.util.concurrent.ExecutionException;
import java.util.concurrent.Future;
import java.util.concurrent.TimeUnit;
@@ -685,7 +686,7 @@ public class DBWriterTest {
if (from == to) {
continue;
}
- Log.d(TAG, String.format("testMoveQueueItem: From=%d, To=%d", from, to));
+ Log.d(TAG, String.format(Locale.US, "testMoveQueueItem: From=%d, To=%d", from, to));
final long fromID = feed.getItems().get(from).getId();
adapter = PodDBAdapter.getInstance();
diff --git a/app/src/androidTest/java/de/test/antennapod/ui/UITestUtils.java b/app/src/androidTest/java/de/test/antennapod/ui/UITestUtils.java
index 4365fa0ae..4294349fc 100644
--- a/app/src/androidTest/java/de/test/antennapod/ui/UITestUtils.java
+++ b/app/src/androidTest/java/de/test/antennapod/ui/UITestUtils.java
@@ -17,6 +17,7 @@ import java.io.InputStream;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
+import java.util.Locale;
import de.danoeh.antennapod.activity.MainActivity;
import de.danoeh.antennapod.core.event.QueueEvent;
@@ -89,13 +90,13 @@ public class UITestUtils {
out.close();
int id = server.serveFile(feedFile);
Assert.assertTrue(id != -1);
- return String.format("%s/files/%d", server.getBaseUrl(), id);
+ return String.format(Locale.US, "%s/files/%d", server.getBaseUrl(), id);
}
private String hostFile(File file) {
int id = server.serveFile(file);
Assert.assertTrue(id != -1);
- return String.format("%s/files/%d", server.getBaseUrl(), id);
+ return String.format(Locale.US, "%s/files/%d", server.getBaseUrl(), id);
}
private File newMediaFile(String name) throws IOException {
diff --git a/app/src/androidTest/java/de/test/antennapod/util/service/download/HTTPBin.java b/app/src/androidTest/java/de/test/antennapod/util/service/download/HTTPBin.java
index c588cdbc2..f99a7f9dc 100644
--- a/app/src/androidTest/java/de/test/antennapod/util/service/download/HTTPBin.java
+++ b/app/src/androidTest/java/de/test/antennapod/util/service/download/HTTPBin.java
@@ -19,6 +19,7 @@ import java.net.URLConnection;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
+import java.util.Locale;
import java.util.Map;
import java.util.Random;
import java.util.zip.GZIPOutputStream;
@@ -88,7 +89,8 @@ public class HTTPBin extends NanoHTTPD {
String[] segments = session.getUri().split("/");
if (segments.length < 3) {
- Log.w(TAG, String.format("Invalid number of URI segments: %d %s", segments.length, Arrays.toString(segments)));
+ Log.w(TAG, String.format(Locale.US, "Invalid number of URI segments: %d %s",
+ segments.length, Arrays.toString(segments)));
get404Error();
}
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 31b832b26..bd539c70f 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -73,6 +73,7 @@
<activity
android:name=".activity.MainActivity"
android:configChanges="keyboardHidden|orientation|screenSize"
+ android:windowSoftInputMode="stateHidden"
android:launchMode="singleTask"
android:label="@string/app_name">
</activity>
diff --git a/app/src/main/java/de/danoeh/antennapod/CrashReportWriter.java b/app/src/main/java/de/danoeh/antennapod/CrashReportWriter.java
index ab4d564df..b5d0f6945 100644
--- a/app/src/main/java/de/danoeh/antennapod/CrashReportWriter.java
+++ b/app/src/main/java/de/danoeh/antennapod/CrashReportWriter.java
@@ -35,12 +35,14 @@ public class CrashReportWriter implements Thread.UncaughtExceptionHandler {
PrintWriter out = null;
try {
out = new PrintWriter(new FileWriter(path));
- out.println("[ Crash info ]");
+ out.println("## Crash info");
out.println("Time: " + new SimpleDateFormat("dd-MM-yyyy HH:mm:ss", Locale.getDefault()).format(new Date()));
out.println("AntennaPod version: " + BuildConfig.VERSION_NAME);
out.println();
- out.println("[ StackTrace ]");
+ out.println("## StackTrace");
+ out.println("```");
ex.printStackTrace(out);
+ out.println("```");
} catch (IOException e) {
Log.e(TAG, Log.getStackTraceString(e));
} finally {
@@ -50,12 +52,12 @@ public class CrashReportWriter implements Thread.UncaughtExceptionHandler {
}
public static String getSystemInfo() {
- return "[ Environment ]" +
- "\nAndroid version: " + Build.VERSION.RELEASE +
- "\nOS version: " + System.getProperty("os.version") +
- "\nAntennaPod version: " + BuildConfig.VERSION_NAME +
- "\nModel: " + Build.MODEL +
- "\nDevice: " + Build.DEVICE +
- "\nProduct: " + Build.PRODUCT;
+ return "## Environment"
+ + "\nAndroid version: " + Build.VERSION.RELEASE
+ + "\nOS version: " + System.getProperty("os.version")
+ + "\nAntennaPod version: " + BuildConfig.VERSION_NAME
+ + "\nModel: " + Build.MODEL
+ + "\nDevice: " + Build.DEVICE
+ + "\nProduct: " + Build.PRODUCT;
}
}
diff --git a/app/src/main/java/de/danoeh/antennapod/activity/MainActivity.java b/app/src/main/java/de/danoeh/antennapod/activity/MainActivity.java
index a24ec5626..fe07dda95 100644
--- a/app/src/main/java/de/danoeh/antennapod/activity/MainActivity.java
+++ b/app/src/main/java/de/danoeh/antennapod/activity/MainActivity.java
@@ -440,6 +440,7 @@ public class MainActivity extends CastEnabledActivity {
} else if (feedId > 0) {
loadFeedFragmentById(feedId, args);
}
+ sheetBehavior.setState(BottomSheetBehavior.STATE_COLLAPSED);
} else if (intent.getBooleanExtra(EXTRA_OPEN_PLAYER, false)) {
sheetBehavior.setState(BottomSheetBehavior.STATE_EXPANDED);
bottomSheetCallback.onSlide(null, 1.0f);
diff --git a/app/src/main/java/de/danoeh/antennapod/activity/OnlineFeedViewActivity.java b/app/src/main/java/de/danoeh/antennapod/activity/OnlineFeedViewActivity.java
index 821defd86..fd4e31074 100644
--- a/app/src/main/java/de/danoeh/antennapod/activity/OnlineFeedViewActivity.java
+++ b/app/src/main/java/de/danoeh/antennapod/activity/OnlineFeedViewActivity.java
@@ -535,14 +535,14 @@ public class OnlineFeedViewActivity extends AppCompatActivity {
} else {
builder.setMessage(R.string.error_msg_prefix);
}
- builder.setNeutralButton(android.R.string.ok,
+ builder.setPositiveButton(android.R.string.ok,
(dialog, which) -> dialog.cancel()
);
- builder.setOnCancelListener(dialog -> {
+ builder.setOnDismissListener(dialog -> {
setResult(RESULT_ERROR);
finish();
});
- if(dialog != null && dialog.isShowing()) {
+ if (dialog != null && dialog.isShowing()) {
dialog.dismiss();
}
dialog = builder.show();
diff --git a/app/src/main/java/de/danoeh/antennapod/adapter/NavListAdapter.java b/app/src/main/java/de/danoeh/antennapod/adapter/NavListAdapter.java
index 3c45829ef..6a16949cc 100644
--- a/app/src/main/java/de/danoeh/antennapod/adapter/NavListAdapter.java
+++ b/app/src/main/java/de/danoeh/antennapod/adapter/NavListAdapter.java
@@ -37,6 +37,7 @@ import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
+import java.util.Locale;
/**
* BaseAdapter for the navigation drawer
@@ -246,19 +247,19 @@ public class NavListAdapter extends BaseAdapter
if (tag.equals(QueueFragment.TAG)) {
int queueSize = itemAccess.getQueueSize();
if (queueSize > 0) {
- holder.count.setText(String.valueOf(queueSize));
+ holder.count.setText(String.format(Locale.getDefault(), "%d", queueSize));
holder.count.setVisibility(View.VISIBLE);
}
} else if (tag.equals(EpisodesFragment.TAG)) {
int unreadItems = itemAccess.getNumberOfNewItems();
if (unreadItems > 0) {
- holder.count.setText(String.valueOf(unreadItems));
+ holder.count.setText(String.format(Locale.getDefault(), "%d", unreadItems));
holder.count.setVisibility(View.VISIBLE);
}
} else if (tag.equals(SubscriptionFragment.TAG)) {
int sum = itemAccess.getFeedCounterSum();
if (sum > 0) {
- holder.count.setText(String.valueOf(sum));
+ holder.count.setText(String.format(Locale.getDefault(), "%d", sum));
holder.count.setVisibility(View.VISIBLE);
}
} else if(tag.equals(DownloadsFragment.TAG) && UserPreferences.isEnableAutodownload()) {
@@ -351,7 +352,7 @@ public class NavListAdapter extends BaseAdapter
int counter = itemAccess.getFeedCounter(feed.getId());
if(counter > 0) {
holder.count.setVisibility(View.VISIBLE);
- holder.count.setText(String.valueOf(counter));
+ holder.count.setText(String.format(Locale.getDefault(), "%d", counter));
} else {
holder.count.setVisibility(View.GONE);
}
diff --git a/app/src/main/java/de/danoeh/antennapod/adapter/SubscriptionsAdapter.java b/app/src/main/java/de/danoeh/antennapod/adapter/SubscriptionsAdapter.java
index a012211a5..f799a880e 100644
--- a/app/src/main/java/de/danoeh/antennapod/adapter/SubscriptionsAdapter.java
+++ b/app/src/main/java/de/danoeh/antennapod/adapter/SubscriptionsAdapter.java
@@ -13,6 +13,7 @@ import android.widget.TextView;
import com.bumptech.glide.Glide;
import java.lang.ref.WeakReference;
+import java.util.Locale;
import de.danoeh.antennapod.R;
import de.danoeh.antennapod.activity.MainActivity;
@@ -88,7 +89,8 @@ public class SubscriptionsAdapter extends BaseAdapter implements AdapterView.OnI
holder.feedTitle.setVisibility(View.VISIBLE);
int count = itemAccess.getFeedCounter(feed.getId());
if(count > 0) {
- holder.count.setPrimaryText(String.valueOf(itemAccess.getFeedCounter(feed.getId())));
+ holder.count.setPrimaryText(String.format(Locale.getDefault(), "%d",
+ itemAccess.getFeedCounter(feed.getId())));
holder.count.setVisibility(View.VISIBLE);
} else {
holder.count.setVisibility(View.GONE);
diff --git a/app/src/main/java/de/danoeh/antennapod/dialog/PlaybackControlsDialog.java b/app/src/main/java/de/danoeh/antennapod/dialog/PlaybackControlsDialog.java
index c435bcdc3..83debaecb 100644
--- a/app/src/main/java/de/danoeh/antennapod/dialog/PlaybackControlsDialog.java
+++ b/app/src/main/java/de/danoeh/antennapod/dialog/PlaybackControlsDialog.java
@@ -20,6 +20,7 @@ import de.danoeh.antennapod.core.util.playback.Playable;
import de.danoeh.antennapod.core.util.playback.PlaybackController;
import java.util.List;
+import java.util.Locale;
public class PlaybackControlsDialog extends DialogFragment {
private static final String ARGUMENT_IS_PLAYING_VIDEO = "isPlayingVideo";
@@ -99,7 +100,7 @@ public class PlaybackControlsDialog extends DialogFragment {
final TextView txtvPlaybackSpeed = dialog.findViewById(R.id.txtvPlaybackSpeed);
float currentSpeed = getCurrentSpeed();
- txtvPlaybackSpeed.setText(String.format("%.2fx", currentSpeed));
+ txtvPlaybackSpeed.setText(String.format(Locale.getDefault(), "%.2fx", currentSpeed));
barPlaybackSpeed.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() {
@Override
public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) {
@@ -114,7 +115,7 @@ public class PlaybackControlsDialog extends DialogFragment {
UserPreferences.setPlaybackSpeed(playbackSpeed);
}
- String speedStr = String.format("%.2fx", playbackSpeed);
+ String speedStr = String.format(Locale.getDefault(), "%.2fx", playbackSpeed);
txtvPlaybackSpeed.setText(speedStr);
} else if (fromUser) {
float speed = getCurrentSpeed();
diff --git a/app/src/main/java/de/danoeh/antennapod/dialog/SkipPreferenceDialog.java b/app/src/main/java/de/danoeh/antennapod/dialog/SkipPreferenceDialog.java
index 7bb8f5ad6..b2774292f 100644
--- a/app/src/main/java/de/danoeh/antennapod/dialog/SkipPreferenceDialog.java
+++ b/app/src/main/java/de/danoeh/antennapod/dialog/SkipPreferenceDialog.java
@@ -3,6 +3,9 @@ package de.danoeh.antennapod.dialog;
import android.content.Context;
import android.widget.TextView;
import androidx.appcompat.app.AlertDialog;
+
+import java.util.Locale;
+
import de.danoeh.antennapod.R;
import de.danoeh.antennapod.core.preferences.UserPreferences;
@@ -45,7 +48,7 @@ public class SkipPreferenceDialog {
UserPreferences.setRewindSecs(seconds);
}
if (textView != null) {
- textView.setText(String.valueOf(seconds));
+ textView.setText(String.format(Locale.getDefault(), "%d", seconds));
}
}
});
diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/ItemFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/ItemFragment.java
index f20b7f555..84a303b3d 100644
--- a/app/src/main/java/de/danoeh/antennapod/fragment/ItemFragment.java
+++ b/app/src/main/java/de/danoeh/antennapod/fragment/ItemFragment.java
@@ -16,6 +16,7 @@ import android.widget.ProgressBar;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
+import androidx.core.util.ObjectsCompat;
import androidx.fragment.app.Fragment;
import com.bumptech.glide.Glide;
import com.bumptech.glide.load.resource.bitmap.FitCenter;
@@ -137,7 +138,8 @@ public class ItemFragment extends Fragment {
}
webvDescription = layout.findViewById(R.id.webvDescription);
webvDescription.setTimecodeSelectedListener(time -> {
- if (controller != null && item.getMedia().getIdentifier().equals(controller.getMedia().getIdentifier())) {
+ if (controller != null && item.getMedia() != null && controller.getMedia() != null
+ && ObjectsCompat.equals(item.getMedia().getIdentifier(), controller.getMedia().getIdentifier())) {
controller.seekTo(time);
} else {
Snackbar.make(getView(), R.string.play_this_to_seek_position, Snackbar.LENGTH_LONG).show();
diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/QueueFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/QueueFragment.java
index 6a2b1abef..390e1facd 100644
--- a/app/src/main/java/de/danoeh/antennapod/fragment/QueueFragment.java
+++ b/app/src/main/java/de/danoeh/antennapod/fragment/QueueFragment.java
@@ -58,6 +58,7 @@ import org.greenrobot.eventbus.Subscribe;
import org.greenrobot.eventbus.ThreadMode;
import java.util.List;
+import java.util.Locale;
import static de.danoeh.antennapod.dialog.EpisodesApplyActionFragment.ACTION_DELETE;
import static de.danoeh.antennapod.dialog.EpisodesApplyActionFragment.ACTION_DOWNLOAD;
@@ -578,7 +579,8 @@ public class QueueFragment extends Fragment {
}
private void refreshInfoBar() {
- String info = queue.size() + getString(R.string.episodes_suffix);
+ String info = String.format(Locale.getDefault(), "%d%s",
+ queue.size(), getString(R.string.episodes_suffix));
if (queue.size() > 0) {
long timeLeft = 0;
for (FeedItem item : queue) {
diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/preferences/ImportExportPreferencesFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/preferences/ImportExportPreferencesFragment.java
index c8abe0dc5..5275f5f7e 100644
--- a/app/src/main/java/de/danoeh/antennapod/fragment/preferences/ImportExportPreferencesFragment.java
+++ b/app/src/main/java/de/danoeh/antennapod/fragment/preferences/ImportExportPreferencesFragment.java
@@ -5,6 +5,7 @@ import android.app.ProgressDialog;
import android.content.ActivityNotFoundException;
import android.content.ComponentName;
import android.content.Context;
+import android.content.DialogInterface;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.content.pm.ResolveInfo;
@@ -173,16 +174,29 @@ public class ImportExportPreferencesFragment extends PreferenceFragmentCompat {
}
private void importDatabase() {
- if (Build.VERSION.SDK_INT >= 19) {
- Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT);
- intent.setType("*/*");
- startActivityForResult(intent, REQUEST_CODE_RESTORE_DATABASE);
- } else {
- Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
- intent.setType("*/*");
- startActivityForResult(Intent.createChooser(intent,
- getString(R.string.import_select_file)), REQUEST_CODE_RESTORE_DATABASE);
- }
+ // setup the alert builder
+ AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
+ builder.setTitle(R.string.database_import_label);
+ builder.setMessage(R.string.database_import_warning);
+
+ // add a button
+ builder.setNegativeButton(R.string.no, null);
+ builder.setPositiveButton(R.string.confirm_label, (dialog, which) -> {
+ if (Build.VERSION.SDK_INT >= 19) {
+ Intent intent = new Intent(Intent.ACTION_OPEN_DOCUMENT);
+ intent.setType("*/*");
+ startActivityForResult(intent, REQUEST_CODE_RESTORE_DATABASE);
+ } else {
+ Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
+ intent.setType("*/*");
+ startActivityForResult(Intent.createChooser(intent,
+ getString(R.string.import_select_file)), REQUEST_CODE_RESTORE_DATABASE);
+ }
+ }
+ );
+
+ // create and show the alert dialog
+ builder.show();
}
private void showDatabaseImportSuccessDialog() {
diff --git a/app/src/main/java/de/danoeh/antennapod/fragment/preferences/NetworkPreferencesFragment.java b/app/src/main/java/de/danoeh/antennapod/fragment/preferences/NetworkPreferencesFragment.java
index f9015c006..ff5326bfb 100644
--- a/app/src/main/java/de/danoeh/antennapod/fragment/preferences/NetworkPreferencesFragment.java
+++ b/app/src/main/java/de/danoeh/antennapod/fragment/preferences/NetworkPreferencesFragment.java
@@ -15,6 +15,7 @@ import org.apache.commons.lang3.ArrayUtils;
import java.util.Calendar;
import java.util.GregorianCalendar;
+import java.util.Locale;
import java.util.concurrent.TimeUnit;
public class NetworkPreferencesFragment extends PreferenceFragmentCompat {
@@ -96,7 +97,8 @@ public class NetworkPreferencesFragment extends PreferenceFragmentCompat {
private void setParallelDownloadsText(int downloads) {
final Resources res = getActivity().getResources();
- String s = downloads + res.getString(R.string.parallel_downloads_suffix);
+ String s = String.format(Locale.getDefault(), "%d%s",
+ downloads, res.getString(R.string.parallel_downloads_suffix));
findPreference(UserPreferences.PREF_PARALLEL_DOWNLOADS).setSummary(s);
}
diff --git a/app/src/main/res/layout/audioplayer_fragment.xml b/app/src/main/res/layout/audioplayer_fragment.xml
index 537e63ad0..d01228d27 100644
--- a/app/src/main/res/layout/audioplayer_fragment.xml
+++ b/app/src/main/res/layout/audioplayer_fragment.xml
@@ -61,6 +61,7 @@
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
+ android:clickable="true"
android:layoutDirection="ltr"
android:orientation="vertical">
diff --git a/app/src/main/res/layout/feeditemlist_item.xml b/app/src/main/res/layout/feeditemlist_item.xml
index 66febc1d0..e68232663 100644
--- a/app/src/main/res/layout/feeditemlist_item.xml
+++ b/app/src/main/res/layout/feeditemlist_item.xml
@@ -18,15 +18,14 @@
android:minWidth="4dp">
<ImageView
android:id="@+id/drag_handle"
- android:layout_width="24dp"
+ android:layout_width="16dp"
android:layout_height="match_parent"
android:contentDescription="@string/drag_handle_content_description"
- android:scaleType="center"
+ android:scaleType="fitCenter"
android:src="?attr/dragview_background"
- android:paddingEnd="8dp"
- android:paddingRight="8dp"
- android:visibility="gone"
- tools:src="@drawable/ic_drag_vertical_grey600_48dp"
+ android:paddingEnd="4dp"
+ android:paddingRight="4dp"
+ tools:src="@drawable/ic_drag_darktheme"
tools:background="@android:color/holo_green_dark"/>
</LinearLayout>
diff --git a/app/src/main/res/layout/statistics_listitem_total.xml b/app/src/main/res/layout/statistics_listitem_total.xml
index 2efe37bfe..628e26c1f 100644
--- a/app/src/main/res/layout/statistics_listitem_total.xml
+++ b/app/src/main/res/layout/statistics_listitem_total.xml
@@ -1,44 +1,48 @@
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
- xmlns:tools="http://schemas.android.com/tools"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:padding="16dp">
+ xmlns:tools="http://schemas.android.com/tools"
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:padding="16dp">
<de.danoeh.antennapod.view.PieChartView
- android:id="@+id/pie_chart"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:layout_centerInParent="true"
- android:layout_marginLeft="8dp"
- android:layout_marginRight="8dp"
- android:maxWidth="800dp"
- android:minWidth="460dp" />
+ android:id="@+id/pie_chart"
+ android:layout_width="wrap_content"
+ android:layout_height="wrap_content"
+ android:layout_centerInParent="true"
+ android:layout_marginRight="8dp"
+ android:maxWidth="800dp"
+ android:minWidth="460dp"
+ android:layout_marginLeft="8dp" />
<TextView
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:id="@+id/total_description"
- android:textSize="14sp"
- android:gravity="center_horizontal"
- android:layout_above="@+id/total_time"/>
+ android:id="@+id/total_description"
+ android:layout_height="wrap_content"
+ android:layout_width="wrap_content"
+ android:layout_centerHorizontal="true"
+ android:textAlignment="center"
+ android:layout_marginLeft="56dp"
+ android:layout_marginRight="56dp"
+ android:maxLines="3"
+ android:layout_above="@id/total_time"
+ android:textSize="14sp" />
<TextView
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:id="@+id/total_time"
- android:textColor="?android:attr/textColorPrimary"
- android:gravity="center_horizontal"
- android:textSize="28sp"
- android:layout_marginBottom="16dp"
- android:layout_alignBottom="@id/pie_chart"
- tools:text="10.0 hours"/>
+ android:layout_width="match_parent"
+ android:layout_height="wrap_content"
+ android:id="@+id/total_time"
+ android:textColor="?android:attr/textColorPrimary"
+ android:gravity="center_horizontal"
+ android:textSize="28sp"
+ android:layout_marginBottom="16dp"
+ android:layout_alignBottom="@id/pie_chart"
+ tools:text="10.0 hours"/>
<View
- android:layout_width="match_parent"
- android:layout_height="1dp"
- android:layout_marginTop="16dp"
- android:background="?android:attr/dividerVertical"
- android:layout_below="@+id/pie_chart"/>
+ android:layout_width="match_parent"
+ android:layout_height="1dp"
+ android:layout_marginTop="16dp"
+ android:background="?android:attr/dividerVertical"
+ android:layout_below="@+id/pie_chart"/>
</RelativeLayout> \ No newline at end of file
diff --git a/app/src/main/res/menu/queue.xml b/app/src/main/res/menu/queue.xml
index f9aae20f7..43702e07f 100644
--- a/app/src/main/res/menu/queue.xml
+++ b/app/src/main/res/menu/queue.xml
@@ -35,10 +35,10 @@
<menu>
<item
android:id="@+id/queue_sort_date_asc"
- android:title="@string/sort_old_to_new"/>
+ android:title="@string/sort_old_new"/>
<item
android:id="@+id/queue_sort_date_desc"
- android:title="@string/sort_new_to_old"/>
+ android:title="@string/sort_new_old"/>
</menu>
</item>
@@ -49,10 +49,10 @@
<menu>
<item
android:id="@+id/queue_sort_duration_asc"
- android:title="@string/ascending"/>
+ android:title="@string/sort_short_long"/>
<item
android:id="@+id/queue_sort_duration_desc"
- android:title="@string/descending"/>
+ android:title="@string/sort_long_short"/>
</menu>
</item>
@@ -63,10 +63,10 @@
<menu>
<item
android:id="@+id/queue_sort_episode_title_asc"
- android:title="@string/ascending"/>
+ android:title="@string/sort_a_z"/>
<item
android:id="@+id/queue_sort_episode_title_desc"
- android:title="@string/descending"/>
+ android:title="@string/sort_z_a"/>
</menu>
</item>
@@ -77,10 +77,10 @@
<menu>
<item
android:id="@+id/queue_sort_feed_title_asc"
- android:title="@string/ascending"/>
+ android:title="@string/sort_a_z"/>
<item
android:id="@+id/queue_sort_feed_title_desc"
- android:title="@string/descending"/>
+ android:title="@string/sort_z_a"/>
</menu>
</item>
@@ -96,10 +96,10 @@
<menu>
<item
android:id="@+id/queue_sort_smart_shuffle_asc"
- android:title="@string/sort_old_to_new"/>
+ android:title="@string/sort_old_new"/>
<item
android:id="@+id/queue_sort_smart_shuffle_desc"
- android:title="@string/sort_new_to_old"/>
+ android:title="@string/sort_new_old"/>
</menu>
</item>