summaryrefslogtreecommitdiff
path: root/app/src/main/java/de/danoeh/antennapod/activity
diff options
context:
space:
mode:
authorByteHamster <info@bytehamster.com>2020-05-03 13:23:02 +0200
committerByteHamster <info@bytehamster.com>2020-05-03 13:29:47 +0200
commit6edc2417a4ba0f40108ba41ccc0ac735a0b0ed58 (patch)
treefc3d0e8421bdd76588bafdc739604b459f517e31 /app/src/main/java/de/danoeh/antennapod/activity
parent2386684b7f19908aaf896104dc460e39dbf18107 (diff)
downloadAntennaPod-6edc2417a4ba0f40108ba41ccc0ac735a0b0ed58.zip
Fixed Snackbars being covered by audio player
Diffstat (limited to 'app/src/main/java/de/danoeh/antennapod/activity')
-rw-r--r--app/src/main/java/de/danoeh/antennapod/activity/MainActivity.java29
1 files changed, 26 insertions, 3 deletions
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 fe07dda95..38b032272 100644
--- a/app/src/main/java/de/danoeh/antennapod/activity/MainActivity.java
+++ b/app/src/main/java/de/danoeh/antennapod/activity/MainActivity.java
@@ -415,12 +415,17 @@ public class MainActivity extends CastEnabledActivity {
@Subscribe(threadMode = ThreadMode.MAIN)
public void onEventMainThread(MessageEvent event) {
Log.d(TAG, "onEvent(" + event + ")");
- View parentLayout = findViewById(R.id.drawer_layout);
- Snackbar snackbar = Snackbar.make(parentLayout, event.message, Snackbar.LENGTH_SHORT);
+
+ Snackbar snackbar;
+ if (getBottomSheet().getState() == BottomSheetBehavior.STATE_COLLAPSED) {
+ snackbar = showSnackbarAbovePlayer(event.message, Snackbar.LENGTH_SHORT);
+ } else {
+ snackbar = Snackbar.make(findViewById(android.R.id.content), event.message, Snackbar.LENGTH_SHORT);
+ snackbar.show();
+ }
if (event.action != null) {
snackbar.setAction(getString(R.string.undo), v -> event.action.run());
}
- snackbar.show();
}
private void handleNavIntent() {
@@ -454,4 +459,22 @@ public class MainActivity extends CastEnabledActivity {
super.onNewIntent(intent);
setIntent(intent);
}
+
+ public Snackbar showSnackbarAbovePlayer(int text, int duration) {
+ Snackbar s = Snackbar.make(findViewById(R.id.main_view), text, duration);
+ if (findViewById(R.id.audioplayerFragment).getVisibility() == View.VISIBLE) {
+ s.setAnchorView(findViewById(R.id.audioplayerFragment));
+ }
+ s.show();
+ return s;
+ }
+
+ public Snackbar showSnackbarAbovePlayer(String text, int duration) {
+ Snackbar s = Snackbar.make(findViewById(R.id.main_view), text, duration);
+ if (findViewById(R.id.audioplayerFragment).getVisibility() == View.VISIBLE) {
+ s.setAnchorView(findViewById(R.id.audioplayerFragment));
+ }
+ s.show();
+ return s;
+ }
}