Added changelog. Auto hide bottom bar and fab if playing queue is empty

This commit is contained in:
Karim Abou Zeid 2015-08-15 03:09:47 +02:00
commit 73f3214b23
10 changed files with 211 additions and 4 deletions

View file

@ -3,6 +3,8 @@ package com.kabouzeid.gramophone.ui.activities;
import android.annotation.SuppressLint;
import android.content.ComponentName;
import android.content.Intent;
import android.content.pm.PackageInfo;
import android.content.pm.PackageManager;
import android.content.res.ColorStateList;
import android.graphics.Color;
import android.net.Uri;
@ -36,6 +38,7 @@ import com.afollestad.materialdialogs.ThemeSingleton;
import com.kabouzeid.gramophone.R;
import com.kabouzeid.gramophone.adapter.PagerAdapter;
import com.kabouzeid.gramophone.dialogs.AboutDialog;
import com.kabouzeid.gramophone.dialogs.ChangelogDialog;
import com.kabouzeid.gramophone.dialogs.CreatePlaylistDialog;
import com.kabouzeid.gramophone.dialogs.SleepTimerDialog;
import com.kabouzeid.gramophone.helper.MusicPlayerRemote;
@ -99,7 +102,6 @@ public class MainActivity extends AbsSlidingMusicPanelActivity
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
ButterKnife.bind(this);
if (Build.VERSION.SDK_INT == Build.VERSION_CODES.KITKAT) {
@ -116,6 +118,8 @@ public class MainActivity extends AbsSlidingMusicPanelActivity
if (shouldColorNavigationBar())
setNavigationBarThemeColor();
setStatusBarThemeColor();
checkChangelog();
}
@Override
@ -603,4 +607,16 @@ public class MainActivity extends AbsSlidingMusicPanelActivity
hideBottomBarListeners.remove(listener);
}
}
private void checkChangelog() {
try {
PackageInfo pInfo = getPackageManager().getPackageInfo(getPackageName(), 0);
int currentVersion = pInfo.versionCode;
if (currentVersion != PreferenceUtil.getInstance(this).getLastChangelogVersion()) {
ChangelogDialog.create().show(getSupportFragmentManager(), "CHANGE_LOG_DIALOG");
}
} catch (PackageManager.NameNotFoundException e) {
e.printStackTrace();
}
}
}

View file

@ -165,6 +165,8 @@ public abstract class AbsSlidingMusicPanelActivity extends AbsMusicServiceActivi
setUpPlayPauseButton();
setUpMiniPlayer();
setUpSlidingPanel();
// ensures that the fab and the mini player are hidden if the queue is empty
getCurrentSong();
initAppearanceVarsFromSharedPrefs();
PreferenceUtil.getInstance(this).registerOnSharedPreferenceChangedListener(this);
@ -710,10 +712,10 @@ public abstract class AbsSlidingMusicPanelActivity extends AbsMusicServiceActivi
song = MusicPlayerRemote.getCurrentSong();
if (song.id == -1) {
playPauseFab.setVisibility(View.GONE);
slidingUpPanelLayout.setVisibility(View.GONE);
hideBottomBar(true);
} else {
playPauseFab.setVisibility(View.VISIBLE);
slidingUpPanelLayout.setVisibility(View.VISIBLE);
hideBottomBar(PreferenceUtil.getInstance(this).hideBottomBar());
}
}