AndroidX lib refactor

This commit is contained in:
h4h13 2018-08-30 14:59:30 +05:30
parent b3eb12aebd
commit 08f0b5e76e
581 changed files with 5470 additions and 6070 deletions

View file

@ -5,8 +5,8 @@ import android.content.pm.PackageInfo;
import android.content.pm.PackageManager;
import android.net.Uri;
import android.os.Bundle;
import android.support.v4.app.ShareCompat;
import android.support.v7.widget.Toolbar;
import androidx.core.app.ShareCompat;
import androidx.appcompat.widget.Toolbar;
import android.view.MenuItem;
import android.view.View;
import android.widget.TextView;

View file

@ -2,19 +2,19 @@ package code.name.monkey.retromusic.ui.activities;
import android.content.Intent;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.design.widget.AppBarLayout;
import android.support.design.widget.CollapsingToolbarLayout;
import android.support.design.widget.FloatingActionButton;
import android.support.v4.content.ContextCompat;
import android.support.v4.util.Pair;
import android.support.v7.widget.AppCompatTextView;
import android.support.v7.widget.DefaultItemAnimator;
import android.support.v7.widget.GridLayoutManager;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.support.v7.widget.Toolbar;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import com.google.android.material.appbar.AppBarLayout;
import com.google.android.material.appbar.CollapsingToolbarLayout;
import com.google.android.material.floatingactionbutton.FloatingActionButton;
import androidx.core.content.ContextCompat;
import androidx.core.util.Pair;
import androidx.appcompat.widget.AppCompatTextView;
import androidx.recyclerview.widget.DefaultItemAnimator;
import androidx.recyclerview.widget.GridLayoutManager;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import androidx.appcompat.widget.Toolbar;
import android.view.Menu;
import android.view.MenuItem;
import android.view.SubMenu;
@ -144,13 +144,13 @@ public class AlbumDetailsActivity extends AbsSlidingMusicPanelActivity implement
}
toolbar.setNavigationIcon(R.drawable.ic_keyboard_backspace_black_24dp);
setSupportActionBar(toolbar);
//noinspection ConstantConditions
getSupportActionBar().setTitle(null);
setSupportActionBar(toolbar);
if (toolbar != null && !PreferenceUtil.getInstance(this).getFullScreenMode()) {
ViewGroup.MarginLayoutParams params = (ViewGroup.MarginLayoutParams) toolbar
.getLayoutParams();
ViewGroup.MarginLayoutParams params = (ViewGroup.MarginLayoutParams) toolbar.getLayoutParams();
params.topMargin = RetroUtil.getStatusBarHeight(this);
toolbar.setLayoutParams(params);
}
@ -321,7 +321,7 @@ public class AlbumDetailsActivity extends AbsSlidingMusicPanelActivity implement
moreTitle.setTextColor(themeColor);
TintHelper.setTintAuto(shuffleButton, themeColor, true);
findViewById(R.id.root).setBackgroundColor(ThemeStore.primaryColor(this));
//findViewById(R.id.root).setBackgroundColor(ThemeStore.primaryColor(this));
}
@Override

View file

@ -3,18 +3,18 @@ package code.name.monkey.retromusic.ui.activities;
import android.content.Intent;
import android.content.res.ColorStateList;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.design.widget.AppBarLayout;
import android.support.design.widget.CollapsingToolbarLayout;
import android.support.design.widget.FloatingActionButton;
import android.support.v4.content.ContextCompat;
import android.support.v7.widget.AppCompatTextView;
import android.support.v7.widget.DefaultItemAnimator;
import android.support.v7.widget.GridLayoutManager;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.support.v7.widget.Toolbar;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import com.google.android.material.appbar.AppBarLayout;
import com.google.android.material.appbar.CollapsingToolbarLayout;
import com.google.android.material.floatingactionbutton.FloatingActionButton;
import androidx.core.content.ContextCompat;
import androidx.appcompat.widget.AppCompatTextView;
import androidx.recyclerview.widget.DefaultItemAnimator;
import androidx.recyclerview.widget.GridLayoutManager;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import androidx.appcompat.widget.Toolbar;
import android.text.Html;
import android.text.Spanned;
import android.view.Menu;

View file

@ -1,9 +1,9 @@
package code.name.monkey.retromusic.ui.activities;
import android.os.Bundle;
import android.support.design.widget.AppBarLayout;
import android.support.v7.widget.SwitchCompat;
import android.support.v7.widget.Toolbar;
import com.google.android.material.appbar.AppBarLayout;
import androidx.appcompat.widget.SwitchCompat;
import androidx.appcompat.widget.Toolbar;
import android.transition.TransitionManager;
import android.view.LayoutInflater;
import android.view.MenuItem;

View file

@ -1 +1 @@
package code.name.monkey.retromusic.ui.activities; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.view.View; import butterknife.OnClick; import code.name.monkey.retromusic.R; import code.name.monkey.retromusic.RetroApplication; public class ErrorHandlerActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_error_handler); } @OnClick(R.id.clear_app_data) void clearAppDate(View view) { RetroApplication.deleteAppData(); } }
package code.name.monkey.retromusic.ui.activities; import android.os.Bundle; import androidx.appcompat.app.AppCompatActivity; import android.view.View; import butterknife.OnClick; import code.name.monkey.retromusic.R; import code.name.monkey.retromusic.RetroApplication; public class ErrorHandlerActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_error_handler); } @OnClick(R.id.clear_app_data) void clearAppDate(View view) { RetroApplication.deleteAppData(); } }

View file

@ -1,13 +1,13 @@
package code.name.monkey.retromusic.ui.activities;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.design.widget.AppBarLayout;
import android.support.design.widget.FloatingActionButton;
import android.support.v7.widget.DefaultItemAnimator;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.support.v7.widget.Toolbar;
import androidx.annotation.NonNull;
import com.google.android.material.appbar.AppBarLayout;
import com.google.android.material.floatingactionbutton.FloatingActionButton;
import androidx.recyclerview.widget.DefaultItemAnimator;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import androidx.appcompat.widget.Toolbar;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
@ -40,16 +40,15 @@ import code.name.monkey.retromusic.mvp.presenter.GenreDetailsPresenter;
import code.name.monkey.retromusic.ui.activities.base.AbsSlidingMusicPanelActivity;
import code.name.monkey.retromusic.ui.adapter.song.SongAdapter;
import code.name.monkey.retromusic.util.RetroColorUtil;
import code.name.monkey.retromusic.util.RetroUtil;
import code.name.monkey.retromusic.util.ViewUtil;
/**
* @author Hemanth S (h4h13).
*/
public class GenreDetailsActivity extends AbsSlidingMusicPanelActivity implements
GenreDetailsContract.GenreDetailsView, CabHolder {
public class GenreDetailsActivity extends AbsSlidingMusicPanelActivity implements GenreDetailsContract.GenreDetailsView, CabHolder {
public static final String EXTRA_GENRE_ID = "extra_genre_id";
@BindView(R.id.recycler_view)
RecyclerView recyclerView;
@ -59,9 +58,6 @@ public class GenreDetailsActivity extends AbsSlidingMusicPanelActivity implement
@BindView(android.R.id.empty)
TextView empty;
@BindView(R.id.status_bar)
View statusBar;
@BindView(R.id.action_shuffle)
FloatingActionButton shuffleButton;
@ -96,7 +92,6 @@ public class GenreDetailsActivity extends AbsSlidingMusicPanelActivity implement
setTaskDescriptionColorAuto();
setLightNavigationBar(true);
RetroUtil.statusBarHeight(statusBar);
genre = getIntent().getParcelableExtra(EXTRA_GENRE_ID);
presenter = new GenreDetailsPresenter(this, genre.id);

View file

@ -1,9 +1,9 @@
package code.name.monkey.retromusic.ui.activities;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.design.widget.AppBarLayout;
import android.support.v7.widget.Toolbar;
import androidx.annotation.NonNull;
import com.google.android.material.appbar.AppBarLayout;
import androidx.appcompat.widget.Toolbar;
import android.view.MenuItem;
import android.webkit.WebView;
import android.widget.TextView;

View file

@ -1,7 +1,7 @@
package code.name.monkey.retromusic.ui.activities;
import android.os.Bundle;
import android.support.v4.view.ViewCompat;
import androidx.core.view.ViewCompat;
import android.view.WindowManager;
import com.bumptech.glide.Glide;

View file

@ -5,8 +5,8 @@ import android.content.res.ColorStateList;
import android.graphics.Color;
import android.os.AsyncTask;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.v4.content.ContextCompat;
import androidx.annotation.NonNull;
import androidx.core.content.ContextCompat;
import android.text.InputType;
import android.text.TextUtils;
import android.view.MenuItem;

View file

@ -12,13 +12,6 @@ import android.net.Uri;
import android.os.Bundle;
import android.preference.PreferenceManager;
import android.provider.MediaStore;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.design.widget.BottomNavigationView;
import android.support.v4.app.ActivityCompat;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentTransaction;
import android.util.Log;
import android.view.MenuItem;
import android.view.View;
@ -28,8 +21,13 @@ import android.widget.FrameLayout;
import com.afollestad.materialdialogs.MaterialDialog;
import java.util.ArrayList;
import java.util.concurrent.TimeUnit;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.core.app.ActivityCompat;
import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentManager;
import androidx.fragment.app.FragmentTransaction;
import butterknife.BindView;
import butterknife.ButterKnife;
import code.name.monkey.retromusic.R;
@ -48,22 +46,18 @@ import code.name.monkey.retromusic.ui.fragments.mainactivity.folders.FoldersFrag
import code.name.monkey.retromusic.ui.fragments.mainactivity.home.BannerHomeFragment;
import code.name.monkey.retromusic.ui.fragments.mainactivity.home.HomeFragment;
import code.name.monkey.retromusic.util.PreferenceUtil;
import io.reactivex.Observable;
import io.reactivex.disposables.CompositeDisposable;
public class MainActivity extends AbsSlidingMusicPanelActivity implements
SharedPreferences.OnSharedPreferenceChangeListener,
BottomNavigationView.OnNavigationItemSelectedListener {
SharedPreferences.OnSharedPreferenceChangeListener {
public static final int APP_INTRO_REQUEST = 2323;
private static final String TAG = "MainActivity";
private static final int APP_USER_INFO_REQUEST = 9003;
private static final int REQUEST_CODE_THEME = 9002;
public static final int LIBRARY = 1;
public static final int FOLDERS = 3;
public static final int HOME = 0;
private static final String TAG = "MainActivity";
private static final int APP_USER_INFO_REQUEST = 9003;
private static final int REQUEST_CODE_THEME = 9002;
@Nullable
MainActivityFragmentCallbacks currentFragment;
@ -112,10 +106,7 @@ public class MainActivity extends AbsSlidingMusicPanelActivity implements
} else {
restoreCurrentFragment();
}
//getBottomNavigationView().setOnNavigationItemSelectedListener(this);
checkShowChangelog();
}
@ -178,19 +169,9 @@ public class MainActivity extends AbsSlidingMusicPanelActivity implements
.findFragmentById(R.id.fragment_container);
}
@Override
public boolean onNavigationItemSelected(@NonNull MenuItem item) {
PreferenceUtil.getInstance(this).setLastPage(item.getItemId());
disposable.add(Observable.just(item.getItemId())
.throttleFirst(3, TimeUnit.SECONDS)
.subscribe(this::setCurrentFragment));
return true;
}
public void setCurrentFragment(int menuItem) {
PreferenceUtil.getInstance(this).setLastMusicChooser(menuItem);
switch (menuItem) {
default:
public void setCurrentFragment(int key) {
PreferenceUtil.getInstance(this).setLastMusicChooser(key);
switch (key) {
case LIBRARY:
setCurrentFragment(LibraryFragment.newInstance(), false, LibraryFragment.TAG);
break;
@ -198,7 +179,7 @@ public class MainActivity extends AbsSlidingMusicPanelActivity implements
setCurrentFragment(FoldersFragment.newInstance(this), false, FoldersFragment.TAG);
break;
case HOME:
setCurrentFragment(PreferenceUtil.getInstance(this).toggleHomeBanner() ? HomeFragment.newInstance() : BannerHomeFragment.newInstance(), false, HomeFragment.TAG);
setCurrentFragment(BannerHomeFragment.newInstance(), false, HomeFragment.TAG);
break;
}
}
@ -336,7 +317,9 @@ public class MainActivity extends AbsSlidingMusicPanelActivity implements
key.equals(PreferenceUtil.TOGGLE_SEPARATE_LINE) ||
key.equals(PreferenceUtil.ALBUM_GRID_STYLE) ||
key.equals(PreferenceUtil.ARTIST_GRID_STYLE) ||
key.equals(PreferenceUtil.TOGGLE_HOME_BANNER)) postRecreate();
key.equals(PreferenceUtil.TOGGLE_HOME_BANNER) ||
key.equals(PreferenceUtil.TOGGLE_ADD_CONTROLS) ||
key.equals(PreferenceUtil.ALBUM_COVER_STYLE)) postRecreate();
}
private void showPromotionalOffer() {

View file

@ -2,8 +2,8 @@ package code.name.monkey.retromusic.ui.activities;
import android.graphics.drawable.Drawable;
import android.os.Bundle;
import android.support.design.widget.AppBarLayout;
import android.support.v7.widget.Toolbar;
import com.google.android.material.appbar.AppBarLayout;
import androidx.appcompat.widget.Toolbar;
import android.widget.TextView;
import butterknife.BindDrawable;

View file

@ -1,12 +1,6 @@
package code.name.monkey.retromusic.ui.activities;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.design.widget.AppBarLayout;
import android.support.design.widget.FloatingActionButton;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.support.v7.widget.Toolbar;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
@ -15,6 +9,8 @@ import android.view.animation.DecelerateInterpolator;
import android.widget.TextView;
import com.afollestad.materialcab.MaterialCab;
import com.google.android.material.appbar.AppBarLayout;
import com.google.android.material.floatingactionbutton.FloatingActionButton;
import com.h6ah4i.android.widget.advrecyclerview.animator.GeneralItemAnimator;
import com.h6ah4i.android.widget.advrecyclerview.animator.RefactoredDefaultItemAnimator;
import com.h6ah4i.android.widget.advrecyclerview.draggable.RecyclerViewDragDropManager;
@ -23,6 +19,10 @@ import com.simplecityapps.recyclerview_fastscroll.views.FastScrollRecyclerView;
import java.util.ArrayList;
import androidx.annotation.NonNull;
import androidx.appcompat.widget.Toolbar;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import butterknife.BindView;
import butterknife.ButterKnife;
import butterknife.OnClick;
@ -45,7 +45,6 @@ import code.name.monkey.retromusic.ui.adapter.song.PlaylistSongAdapter;
import code.name.monkey.retromusic.ui.adapter.song.SongAdapter;
import code.name.monkey.retromusic.util.PlaylistsUtil;
import code.name.monkey.retromusic.util.RetroColorUtil;
import code.name.monkey.retromusic.util.RetroUtil;
import code.name.monkey.retromusic.util.ViewUtil;
public class PlaylistDetailActivity extends AbsSlidingMusicPanelActivity implements CabHolder,
@ -72,9 +71,6 @@ public class PlaylistDetailActivity extends AbsSlidingMusicPanelActivity impleme
@BindView(R.id.title)
TextView title;
@BindView(R.id.status_bar)
View statusBar;
private Playlist playlist;
private MaterialCab cab;
private SongAdapter adapter;
@ -88,7 +84,6 @@ public class PlaylistDetailActivity extends AbsSlidingMusicPanelActivity impleme
super.onCreate(savedInstanceState);
ButterKnife.bind(this);
RetroUtil.statusBarHeight(statusBar);
setStatusbarColorAuto();
setNavigationbarColorAuto();
setTaskDescriptionColorAuto();
@ -178,24 +173,22 @@ public class PlaylistDetailActivity extends AbsSlidingMusicPanelActivity impleme
}
private void setUpToolBar() {
title.setText(playlist.name);
title.setTextColor(ThemeStore.textColorPrimary(this));
TintHelper.setTintAuto(shuffleButton, ThemeStore.accentColor(this), true);
int primaryColor = ThemeStore.primaryColor(this);
toolbar.setBackgroundColor(primaryColor);
appBarLayout.setBackgroundColor(primaryColor);
toolbar.setNavigationIcon(R.drawable.ic_keyboard_backspace_black_24dp);
title.setText(playlist.name);
setTitle(null);
setSupportActionBar(toolbar);
toolbar.setNavigationIcon(R.drawable.ic_keyboard_backspace_black_24dp);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(
playlist instanceof AbsCustomPlaylist ? R.menu.menu_smart_playlist_detail
: R.menu.menu_playlist_detail, menu);
getMenuInflater().inflate(playlist instanceof AbsCustomPlaylist ? R.menu.menu_smart_playlist_detail : R.menu.menu_playlist_detail, menu);
return super.onCreateOptionsMenu(menu);
}

View file

@ -3,10 +3,10 @@ package code.name.monkey.retromusic.ui.activities;
import android.content.Intent;
import android.os.AsyncTask;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.design.widget.AppBarLayout;
import android.support.v7.widget.Toolbar;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import com.google.android.material.appbar.AppBarLayout;
import androidx.appcompat.widget.Toolbar;
import android.util.Log;
import android.view.MenuItem;
import android.view.View;
@ -26,7 +26,6 @@ import code.name.monkey.retromusic.BuildConfig;
import code.name.monkey.retromusic.R;
import code.name.monkey.retromusic.RetroApplication;
import code.name.monkey.retromusic.ui.activities.base.AbsBaseActivity;
import code.name.monkey.retromusic.util.RetroUtil;
/**
* @author Hemanth S (h4h13).
@ -48,9 +47,6 @@ public class ProVersionActivity extends AbsBaseActivity implements
@BindView(R.id.app_bar)
AppBarLayout appBar;
@BindView(R.id.status_bar)
View statusBar;
@BindView(R.id.title)
TextView title;
@ -63,7 +59,7 @@ public class ProVersionActivity extends AbsBaseActivity implements
setContentView(R.layout.activity_pro_version);
setDrawUnderStatusBar(true);
ButterKnife.bind(this);
RetroUtil.statusBarHeight(statusBar);
setStatusbarColorAuto();
setNavigationbarColorAuto();
setTaskDescriptionColorAuto();
@ -75,9 +71,10 @@ public class ProVersionActivity extends AbsBaseActivity implements
toolbar.setNavigationIcon(R.drawable.ic_keyboard_backspace_black_24dp);
toolbar.setNavigationOnClickListener(v -> onBackPressed());
title.setTextColor(ThemeStore.textColorPrimary(this));
setSupportActionBar(toolbar);
//noinspection ConstantConditions
getSupportActionBar().setTitle("RetroMusic Pro");
getSupportActionBar().setTitle(null);
restoreButton.setEnabled(false);
purchaseButton.setEnabled(false);

View file

@ -5,10 +5,10 @@ import android.content.ActivityNotFoundException;
import android.content.Intent;
import android.os.Bundle;
import android.speech.RecognizerIntent;
import android.support.annotation.NonNull;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.support.v7.widget.SearchView.OnQueryTextListener;
import androidx.annotation.NonNull;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import androidx.appcompat.widget.SearchView.OnQueryTextListener;
import android.text.Editable;
import android.text.TextWatcher;
import android.view.View;

View file

@ -2,16 +2,16 @@ package code.name.monkey.retromusic.ui.activities;
import android.os.Build;
import android.os.Bundle;
import android.support.annotation.ColorInt;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.annotation.StringRes;
import android.support.design.widget.AppBarLayout;
import android.support.transition.TransitionManager;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentTransaction;
import android.support.v7.widget.Toolbar;
import androidx.annotation.ColorInt;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.annotation.StringRes;
import com.google.android.material.appbar.AppBarLayout;
import androidx.transition.TransitionManager;
import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentManager;
import androidx.fragment.app.FragmentTransaction;
import androidx.appcompat.widget.Toolbar;
import android.view.MenuItem;
import android.widget.FrameLayout;
import android.widget.TextView;

View file

@ -4,14 +4,6 @@ import android.content.Intent;
import android.graphics.Paint;
import android.os.AsyncTask;
import android.os.Bundle;
import android.support.annotation.LayoutRes;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.design.widget.AppBarLayout;
import android.support.v7.widget.DefaultItemAnimator;
import android.support.v7.widget.GridLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.support.v7.widget.Toolbar;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.MenuItem;
@ -25,6 +17,7 @@ import com.afollestad.materialdialogs.internal.MDTintHelper;
import com.anjlab.android.iab.v3.BillingProcessor;
import com.anjlab.android.iab.v3.SkuDetails;
import com.anjlab.android.iab.v3.TransactionDetails;
import com.google.android.material.appbar.AppBarLayout;
import org.json.JSONException;
import org.json.JSONObject;
@ -34,6 +27,13 @@ import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import androidx.annotation.LayoutRes;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.widget.Toolbar;
import androidx.recyclerview.widget.DefaultItemAnimator;
import androidx.recyclerview.widget.GridLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import butterknife.BindView;
import butterknife.ButterKnife;
import butterknife.OnClick;

View file

@ -9,10 +9,10 @@ import android.net.Uri;
import android.os.Build;
import android.os.Bundle;
import android.provider.Settings;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.design.widget.Snackbar;
import android.support.v4.app.ActivityCompat;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import com.google.android.material.snackbar.Snackbar;
import androidx.core.app.ActivityCompat;
import android.view.KeyEvent;
import android.view.View;

View file

@ -9,8 +9,8 @@ import android.content.IntentFilter;
import android.content.ServiceConnection;
import android.os.Bundle;
import android.os.IBinder;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import java.lang.ref.WeakReference;
import java.util.ArrayList;

View file

@ -4,10 +4,6 @@ import android.animation.ValueAnimator;
import android.annotation.SuppressLint;
import android.content.Intent;
import android.os.Bundle;
import android.support.annotation.ColorInt;
import android.support.annotation.FloatRange;
import android.support.annotation.LayoutRes;
import android.support.v4.app.Fragment;
import android.view.View;
import android.view.ViewGroup;
import android.view.ViewTreeObserver;
@ -18,11 +14,16 @@ import com.google.android.gms.cast.framework.media.widget.ExpandedControllerActi
import com.sothree.slidinguppanel.SlidingUpPanelLayout;
import com.sothree.slidinguppanel.SlidingUpPanelLayout.PanelState;
import androidx.annotation.ColorInt;
import androidx.annotation.FloatRange;
import androidx.annotation.LayoutRes;
import androidx.fragment.app.Fragment;
import butterknife.BindView;
import butterknife.ButterKnife;
import code.name.monkey.appthemehelper.ThemeStore;
import code.name.monkey.appthemehelper.util.ColorUtil;
import code.name.monkey.retromusic.R;
import code.name.monkey.retromusic.cast.CastHelper;
import code.name.monkey.retromusic.helper.MusicPlayerRemote;
import code.name.monkey.retromusic.ui.fragments.MiniPlayerFragment;
import code.name.monkey.retromusic.ui.fragments.NowPlayingScreen;
@ -42,9 +43,7 @@ import code.name.monkey.retromusic.ui.fragments.player.simple.SimplePlayerFragme
import code.name.monkey.retromusic.util.PreferenceUtil;
import code.name.monkey.retromusic.util.ViewUtil;
public abstract class AbsSlidingMusicPanelActivity extends AbsMusicServiceActivity implements
SlidingUpPanelLayout.PanelSlideListener,
PlayerFragment.Callbacks {
public abstract class AbsSlidingMusicPanelActivity extends AbsMusicServiceActivity implements SlidingUpPanelLayout.PanelSlideListener, PlayerFragment.Callbacks {
public static final String TAG = AbsSlidingMusicPanelActivity.class.getSimpleName();
@ -68,7 +67,7 @@ public abstract class AbsSlidingMusicPanelActivity extends AbsMusicServiceActivi
return;
}
//MusicPlayerRemote.pauseSong();
//CastHelper.startCasting(castSession, MusicPlayerRemote.getCurrentSong());
CastHelper.startCasting(castSession, MusicPlayerRemote.getCurrentSong());
}
@Override
@ -104,7 +103,6 @@ public abstract class AbsSlidingMusicPanelActivity extends AbsMusicServiceActivi
}
});
//setupBottomView();
slidingUpPanelLayout.addPanelSlideListener(this);
}
@ -163,16 +161,6 @@ public abstract class AbsSlidingMusicPanelActivity extends AbsMusicServiceActivi
.findFragmentById(R.id.mini_player_fragment);
}
/* private void setupBottomView() {
bottomNavigationView.setSelectedItemId(PreferenceUtil.getInstance(this).getLastPage());
bottomNavigationView.setBackgroundColor(ThemeStore.primaryColor(this));
bottomNavigationView.enableAnimation(false);
bottomNavigationView.enableItemShiftingMode(false);
bottomNavigationView.enableShiftingMode(false);
bottomNavigationView.setTextSize(10f);
bottomNavigationView.setTextVisibility(PreferenceUtil.getInstance(this).tabTitles());
}
*/
@Override
protected void onResume() {
super.onResume();
@ -215,9 +203,7 @@ public abstract class AbsSlidingMusicPanelActivity extends AbsMusicServiceActivi
@Override
public void onPanelSlide(View panel, @FloatRange(from = 0, to = 1) float slideOffset) {
//bottomNavigationView.setTranslationY(slideOffset * 400);
setMiniPlayerAlphaProgress(slideOffset);
//findViewById(R.id.player_fragment_container).setAlpha(slideOffset);
}
@Override
@ -266,9 +252,9 @@ public abstract class AbsSlidingMusicPanelActivity extends AbsMusicServiceActivi
}
private void setLightStatusBar() {
super.setLightStatusbar(!PreferenceUtil.getInstance(this).getAdaptiveColor() &&
ColorUtil.isColorLight(ThemeStore.primaryColor(this)) && (
currentNowPlayingScreen == NowPlayingScreen.FLAT
super.setLightStatusbar(PreferenceUtil.getInstance(this).getAdaptiveColor() &&
ColorUtil.isColorLight(ThemeStore.primaryColor(this)) &&
(currentNowPlayingScreen == NowPlayingScreen.FLAT
|| currentNowPlayingScreen == NowPlayingScreen.PLAIN
|| currentNowPlayingScreen == NowPlayingScreen.SIMPLE
|| currentNowPlayingScreen == NowPlayingScreen.NORMAL
@ -340,6 +326,7 @@ public abstract class AbsSlidingMusicPanelActivity extends AbsMusicServiceActivi
slidingUpPanelLayout.setPanelHeight(0);
collapsePanel();
} else {
//slidingUpPanelLayout.setPanelHeight(getCastSession() != null ? getResources().getDimensionPixelSize(R.dimen.mini_player_height_expanded) : getResources().getDimensionPixelSize(R.dimen.mini_player_height));
slidingUpPanelLayout.setPanelHeight(getResources().getDimensionPixelSize(R.dimen.mini_player_height));
}
}
@ -443,5 +430,6 @@ public abstract class AbsSlidingMusicPanelActivity extends AbsMusicServiceActivi
super.showCastMiniController();
hideBottomBar(true);
findViewById(R.id.castMiniController).setVisibility(View.VISIBLE);
MusicPlayerRemote.pauseSong();
}
}

View file

@ -5,8 +5,8 @@ import android.graphics.drawable.Drawable;
import android.os.Build;
import android.os.Bundle;
import android.os.Handler;
import android.support.annotation.ColorInt;
import android.support.v4.content.ContextCompat;
import androidx.annotation.ColorInt;
import androidx.core.content.ContextCompat;
import android.view.KeyEvent;
import android.view.View;
import android.view.WindowManager;

View file

@ -6,9 +6,9 @@ import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.net.Uri;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.design.widget.FloatingActionButton;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import com.google.android.material.floatingactionbutton.FloatingActionButton;
import android.util.Log;
import android.view.MenuItem;
import android.view.View;

View file

@ -6,10 +6,10 @@ import android.graphics.Color;
import android.graphics.drawable.Drawable;
import android.net.Uri;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.design.widget.AppBarLayout;
import android.support.v4.content.ContextCompat;
import android.support.v7.widget.Toolbar;
import androidx.annotation.NonNull;
import com.google.android.material.appbar.AppBarLayout;
import androidx.core.content.ContextCompat;
import androidx.appcompat.widget.Toolbar;
import android.text.Editable;
import android.text.TextUtils;
import android.text.TextWatcher;

View file

@ -2,9 +2,9 @@ package code.name.monkey.retromusic.ui.activities.tageditor;
import android.net.Uri;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.design.widget.AppBarLayout;
import android.support.v7.widget.Toolbar;
import androidx.annotation.NonNull;
import com.google.android.material.appbar.AppBarLayout;
import androidx.appcompat.widget.Toolbar;
import android.text.Editable;
import android.text.TextWatcher;
import android.widget.EditText;

View file

@ -5,8 +5,8 @@ import android.app.Dialog;
import android.content.Context;
import android.graphics.Bitmap;
import android.media.MediaScannerConnection;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import com.afollestad.materialdialogs.MaterialDialog;

View file

@ -1,9 +1,9 @@
package code.name.monkey.retromusic.ui.adapter;
import android.app.Activity;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v7.widget.RecyclerView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.recyclerview.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;

View file

@ -2,8 +2,8 @@ package code.name.monkey.retromusic.ui.adapter;
import android.app.Activity;
import android.graphics.PorterDuff;
import android.support.annotation.NonNull;
import android.support.v7.widget.RecyclerView;
import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;

View file

@ -1,9 +1,9 @@
package code.name.monkey.retromusic.ui.adapter;
import android.support.annotation.NonNull;
import android.support.v4.util.Pair;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.RecyclerView;
import androidx.annotation.NonNull;
import androidx.core.util.Pair;
import androidx.appcompat.app.AppCompatActivity;
import androidx.recyclerview.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;

View file

@ -2,10 +2,10 @@ package code.name.monkey.retromusic.ui.adapter;
import android.graphics.PorterDuff;
import android.graphics.drawable.Drawable;
import android.support.annotation.LayoutRes;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v7.app.AppCompatActivity;
import androidx.annotation.LayoutRes;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity;
import android.view.LayoutInflater;
import android.view.MenuItem;
import android.view.View;

View file

@ -1,11 +1,6 @@
package code.name.monkey.retromusic.ui.adapter.album;
import android.graphics.drawable.Drawable;
import android.support.annotation.LayoutRes;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v4.util.Pair;
import android.support.v7.app.AppCompatActivity;
import android.view.LayoutInflater;
import android.view.MenuItem;
import android.view.View;
@ -17,7 +12,11 @@ import com.simplecityapps.recyclerview_fastscroll.views.FastScrollRecyclerView;
import java.util.ArrayList;
import java.util.List;
import code.name.monkey.appthemehelper.ThemeStore;
import androidx.annotation.LayoutRes;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity;
import androidx.core.util.Pair;
import code.name.monkey.appthemehelper.util.ColorUtil;
import code.name.monkey.appthemehelper.util.MaterialValueHelper;
import code.name.monkey.retromusic.R;
@ -47,7 +46,7 @@ public class AlbumAdapter extends AbsMultiSelectAdapter<AlbumAdapter.ViewHolder,
protected int itemLayoutRes;
protected boolean usePalette = false;
private int textColor;
public AlbumAdapter(@NonNull AppCompatActivity activity, ArrayList<Album> dataSet,
@LayoutRes int itemLayoutRes, boolean usePalette,
@ -58,7 +57,7 @@ public class AlbumAdapter extends AbsMultiSelectAdapter<AlbumAdapter.ViewHolder,
this.itemLayoutRes = itemLayoutRes;
this.usePalette = usePalette;
setHasStableIds(true);
this.textColor = ThemeStore.textColorPrimary(activity);
}
public AlbumAdapter(@NonNull AppCompatActivity activity, ArrayList<Album> dataSet,
@ -123,7 +122,6 @@ public class AlbumAdapter extends AbsMultiSelectAdapter<AlbumAdapter.ViewHolder,
if (holder.title != null) {
holder.title.setText(getAlbumTitle(album));
holder.title.setTextColor(textColor);
}
if (holder.text != null) {
holder.text.setText(getAlbumText(album));
@ -138,12 +136,10 @@ public class AlbumAdapter extends AbsMultiSelectAdapter<AlbumAdapter.ViewHolder,
if (holder.paletteColorContainer != null) {
holder.paletteColorContainer.setBackgroundColor(color);
if (holder.title != null) {
holder.title.setTextColor(
MaterialValueHelper.getPrimaryTextColor(activity, ColorUtil.isColorLight(color)));
holder.title.setTextColor(MaterialValueHelper.getPrimaryTextColor(activity, ColorUtil.isColorLight(color)));
}
if (holder.text != null) {
holder.text.setTextColor(
MaterialValueHelper.getSecondaryTextColor(activity, ColorUtil.isColorLight(color)));
holder.text.setTextColor(MaterialValueHelper.getSecondaryTextColor(activity, ColorUtil.isColorLight(color)));
}
}
}
@ -224,12 +220,6 @@ public class AlbumAdapter extends AbsMultiSelectAdapter<AlbumAdapter.ViewHolder,
return MusicUtil.getSectionName(sectionName);
}
public void setTextColor(int textColor) {
this.textColor = textColor;
notifyDataSetChanged();
}
public class ViewHolder extends MediaEntryViewHolder {
public ViewHolder(@NonNull final View itemView) {

View file

@ -2,9 +2,6 @@ package code.name.monkey.retromusic.ui.adapter.album;
import android.content.Intent;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
@ -14,6 +11,9 @@ import com.bumptech.glide.Glide;
import java.util.ArrayList;
import androidx.annotation.NonNull;
import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentManager;
import butterknife.BindView;
import butterknife.ButterKnife;
import butterknife.OnClick;
@ -117,36 +117,29 @@ public class AlbumCoverPagerAdapter extends CustomFragmentStatePagerAdapter {
private int getLayout() {
int layout;
//noinspection ConstantConditions
switch (PreferenceUtil.getInstance(getContext()).getNowPlayingScreen()) {
case BLUR_CARD:
switch (PreferenceUtil.getInstance(getContext()).getAlbumCoverStyle()) {
default:
case NORMAL:
layout = R.layout.fragment_album_cover;
break;
case FLAT:
layout = R.layout.fragment_album_flat_cover;
break;
case CIRCLE:
layout = R.layout.fragment_album_circle_cover;
break;
case CARD:
layout = R.layout.fragment_album_card_cover;
break;
case MATERIAL:
layout = R.layout.fragment_album_material_cover;
break;
case PLAIN:
case FLAT:
layout = R.layout.fragment_album_flat_cover;
case CAROUSAL:
layout = R.layout.fragment_album_carousal_cover;
break;
case CARD:
case FULL:
case ADAPTIVE:
layout = R.layout.fragment_album_full_cover;
break;
default:
case NORMAL:
layout = R.layout.fragment_album_cover;
break;
}
if (PreferenceUtil.getInstance(getContext()).carouselEffect() &&
!(PreferenceUtil.getInstance(getContext()).getNowPlayingScreen()
== NowPlayingScreen.FULL)) {
layout = R.layout.fragment_carousal_album_cover;
}
if (PreferenceUtil.getInstance(getContext()).circularAlbumArt()) {
layout = R.layout.fragment_album_circle_cover;
}
return layout;
}

View file

@ -18,8 +18,8 @@ package code.name.monkey.retromusic.ui.adapter.album;
import android.app.Activity;
import android.graphics.Bitmap;
import android.graphics.Canvas;
import android.support.annotation.NonNull;
import android.support.v4.util.Pair;
import androidx.annotation.NonNull;
import androidx.core.util.Pair;
import android.util.DisplayMetrics;
import android.util.Log;
import android.view.LayoutInflater;

View file

@ -1,9 +1,9 @@
package code.name.monkey.retromusic.ui.adapter.album;
import android.graphics.drawable.Drawable;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v7.app.AppCompatActivity;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity;
import android.view.View;
import android.view.ViewGroup;

View file

@ -1,10 +1,10 @@
package code.name.monkey.retromusic.ui.adapter.artist;
import android.support.annotation.LayoutRes;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v4.util.Pair;
import android.support.v7.app.AppCompatActivity;
import androidx.annotation.LayoutRes;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.core.util.Pair;
import androidx.appcompat.app.AppCompatActivity;
import android.view.LayoutInflater;
import android.view.MenuItem;
import android.view.View;

View file

@ -1,9 +1,9 @@
package code.name.monkey.retromusic.ui.adapter.base;
import android.content.Context;
import android.support.annotation.MenuRes;
import android.support.annotation.Nullable;
import android.support.v7.widget.RecyclerView;
import androidx.annotation.MenuRes;
import androidx.annotation.Nullable;
import androidx.recyclerview.widget.RecyclerView;
import android.view.Menu;
import android.view.MenuItem;

View file

@ -1,10 +1,10 @@
package code.name.monkey.retromusic.ui.adapter.base;
import android.os.Build;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v7.widget.CardView;
import android.support.v7.widget.RecyclerView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.cardview.widget.CardView;
import androidx.recyclerview.widget.RecyclerView;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ImageButton;
@ -17,8 +17,7 @@ import code.name.monkey.appthemehelper.ThemeStore;
import code.name.monkey.retromusic.R;
public class MediaEntryViewHolder extends RecyclerView.ViewHolder
implements View.OnClickListener, View.OnLongClickListener {
public class MediaEntryViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener, View.OnLongClickListener {
@Nullable
@BindView(R.id.image)

View file

@ -1,128 +0,0 @@
package code.name.monkey.retromusic.ui.adapter.home;
import android.app.Activity;
import android.content.Context;
import android.support.annotation.NonNull;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.GridLayoutManager;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.util.DisplayMetrics;
import android.view.Display;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import java.util.ArrayList;
import code.name.monkey.retromusic.R;
import code.name.monkey.retromusic.model.Album;
import code.name.monkey.retromusic.model.Artist;
import code.name.monkey.retromusic.model.Genre;
import code.name.monkey.retromusic.model.Home;
import code.name.monkey.retromusic.model.Song;
import code.name.monkey.retromusic.ui.adapter.CollageSongAdapter;
import code.name.monkey.retromusic.ui.adapter.GenreAdapter;
import code.name.monkey.retromusic.ui.adapter.album.AlbumAdapter;
import code.name.monkey.retromusic.ui.adapter.artist.ArtistAdapter;
import code.name.monkey.retromusic.ui.adapter.base.MediaEntryViewHolder;
public class HomeAdapter extends RecyclerView.Adapter<HomeAdapter.ViewHolder> {
private static final int ALBUMS = 0;
private static final int ARTISTS = 1;
private static final int GENERS = 2;
private static final int SUGGESTIONS = 3;
private Activity activity;
private ArrayList<Home> sections = new ArrayList<>();
public HomeAdapter(Activity activity) {
this.activity = activity;
}
@NonNull
@Override
public ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
Context context = parent.getContext();
return new ViewHolder(LayoutInflater.from(context).inflate(R.layout.home_section_recycler_view,
parent, false));
}
@Override
public int getItemViewType(int position) {
Home home = sections.get(position);
ArrayList arrayList = home.getList();
if (arrayList.get(0) instanceof Album) {
return ALBUMS;
} else if (arrayList.get(0) instanceof Artist) {
return ARTISTS;
} else if (arrayList.get(0) instanceof Genre) {
return GENERS;
} else {
return SUGGESTIONS;
}
}
private DisplayMetrics getDisplayMetrics() {
Display display = activity.getWindowManager().getDefaultDisplay();
DisplayMetrics metrics = new DisplayMetrics();
display.getMetrics(metrics);
return metrics;
}
@Override
public void onBindViewHolder(@NonNull ViewHolder holder, int position) {
Home home = sections.get(position);
if (holder.title != null) {
holder.title.setText(home.getSectionTitle());
}
ArrayList arrayList = home.getList();
if (arrayList.get(0) instanceof Album) {
AlbumAdapter albumAdapter = new AlbumAdapter((AppCompatActivity) activity,
(ArrayList<Album>) arrayList, R.layout.item_image);
if (holder.recyclerView != null) {
holder.recyclerView.setLayoutManager(new GridLayoutManager(activity, 1, GridLayoutManager.HORIZONTAL, false));
holder.recyclerView.setAdapter(albumAdapter);
}
} else if (arrayList.get(0) instanceof Artist) {
ArtistAdapter artistAdapter = new ArtistAdapter((AppCompatActivity) activity, (ArrayList<Artist>) arrayList, R.layout.item_artist);
GridLayoutManager layoutManager = new GridLayoutManager(activity, 1, GridLayoutManager.HORIZONTAL, false);
if (holder.recyclerView != null) {
holder.recyclerView.setLayoutManager(layoutManager);
holder.recyclerView.setAdapter(artistAdapter);
}
} else if (arrayList.get(0) instanceof Genre) {
GenreAdapter genreAdapter = new GenreAdapter(activity, (ArrayList<Genre>) arrayList, R.layout.item_list);
if (holder.recyclerView != null) {
holder.recyclerView.setLayoutManager(new LinearLayoutManager(activity));
holder.recyclerView.setAdapter(genreAdapter);
}
} else if (arrayList.get(0) instanceof Song) {
CollageSongAdapter collageSongAdapter = new CollageSongAdapter(activity, (ArrayList<Song>) arrayList);
if (holder.recyclerView != null) {
holder.recyclerView.setLayoutManager(new LinearLayoutManager(activity));
holder.recyclerView.setAdapter(collageSongAdapter);
}
}
}
@Override
public int getItemCount() {
return sections.size();
}
public void swapData(ArrayList<Home> sections) {
this.sections = sections;
notifyDataSetChanged();
}
public class ViewHolder extends MediaEntryViewHolder {
public ViewHolder(View itemView) {
super(itemView);
}
}
}

View file

@ -2,8 +2,8 @@ package code.name.monkey.retromusic.ui.adapter.playlist;
import android.app.Activity;
import android.app.Dialog;
import android.support.annotation.NonNull;
import android.support.v7.widget.RecyclerView;
import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;

View file

@ -2,11 +2,11 @@ package code.name.monkey.retromusic.ui.adapter.playlist;
import android.graphics.Bitmap;
import android.graphics.PorterDuff;
import android.support.annotation.LayoutRes;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.PopupMenu;
import androidx.annotation.LayoutRes;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity;
import androidx.appcompat.widget.PopupMenu;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.MenuItem;

View file

@ -1,9 +1,9 @@
package code.name.monkey.retromusic.ui.adapter.song;
import android.support.annotation.LayoutRes;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v7.app.AppCompatActivity;
import androidx.annotation.LayoutRes;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;

View file

@ -1,9 +1,9 @@
package code.name.monkey.retromusic.ui.adapter.song;
import android.support.annotation.LayoutRes;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v7.app.AppCompatActivity;
import androidx.annotation.LayoutRes;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity;
import android.view.MenuItem;
import android.view.View;

View file

@ -2,10 +2,6 @@ package code.name.monkey.retromusic.ui.adapter.song;
import android.graphics.Color;
import android.graphics.PorterDuff;
import android.support.annotation.LayoutRes;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v7.app.AppCompatActivity;
import android.view.MenuItem;
import android.view.View;
import android.widget.ImageView;
@ -17,6 +13,10 @@ import com.h6ah4i.android.widget.advrecyclerview.draggable.annotation.DraggableI
import java.util.ArrayList;
import androidx.annotation.LayoutRes;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity;
import code.name.monkey.retromusic.R;
import code.name.monkey.retromusic.helper.MusicPlayerRemote;
import code.name.monkey.retromusic.interfaces.CabHolder;
@ -25,8 +25,7 @@ import code.name.monkey.retromusic.util.MusicUtil;
import code.name.monkey.retromusic.util.ViewUtil;
public class PlayingQueueAdapter extends SongAdapter implements
DraggableItemAdapter<PlayingQueueAdapter.ViewHolder> {
public class PlayingQueueAdapter extends SongAdapter implements DraggableItemAdapter<PlayingQueueAdapter.ViewHolder> {
private static final int HISTORY = 0;
private static final int CURRENT = 1;

View file

@ -1,10 +1,10 @@
package code.name.monkey.retromusic.ui.adapter.song;
import android.support.annotation.LayoutRes;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v4.util.Pair;
import android.support.v7.app.AppCompatActivity;
import androidx.annotation.LayoutRes;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.core.util.Pair;
import androidx.appcompat.app.AppCompatActivity;
import android.view.MenuItem;
import android.view.View;

View file

@ -1,9 +1,9 @@
package code.name.monkey.retromusic.ui.adapter.song;
import android.support.annotation.LayoutRes;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v7.app.AppCompatActivity;
import androidx.annotation.LayoutRes;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity;
import android.view.View;
import java.util.ArrayList;

View file

@ -1,8 +1,8 @@
package code.name.monkey.retromusic.ui.adapter.song;
import android.support.annotation.LayoutRes;
import android.support.annotation.NonNull;
import android.support.v7.app.AppCompatActivity;
import androidx.annotation.LayoutRes;
import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;
import android.view.LayoutInflater;
import android.view.ViewGroup;

View file

@ -1,11 +1,6 @@
package code.name.monkey.retromusic.ui.adapter.song;
import android.graphics.drawable.Drawable;
import android.support.annotation.LayoutRes;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v4.util.Pair;
import android.support.v7.app.AppCompatActivity;
import android.view.LayoutInflater;
import android.view.MenuItem;
import android.view.View;
@ -17,6 +12,11 @@ import com.simplecityapps.recyclerview_fastscroll.views.FastScrollRecyclerView;
import java.util.ArrayList;
import androidx.annotation.LayoutRes;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity;
import androidx.core.util.Pair;
import code.name.monkey.appthemehelper.util.ColorUtil;
import code.name.monkey.appthemehelper.util.MaterialValueHelper;
import code.name.monkey.retromusic.R;

View file

@ -0,0 +1,28 @@
package code.name.monkey.retromusic.ui.fragments;
import androidx.annotation.DrawableRes;
import androidx.annotation.StringRes;
import code.name.monkey.retromusic.R;
public enum AlbumCoverStyle {
NORMAL(R.string.normal, R.drawable.album_cover_card, 0),
FLAT(R.string.flat, R.drawable.album_cover_square, 1),
CIRCLE(R.string.circular, R.drawable.album_cover_circle, 2),
MATERIAL(R.string.material, R.drawable.album_cover_card, 3),
CARD(R.string.card, R.drawable.album_cover_card, 4),
CAROUSAL(R.string.carousal, R.drawable.album_cover_carousal, 5),
FULL(R.string.full, R.drawable.album_cover_full, 6);
@StringRes
public final int titleRes;
@DrawableRes
public final int drawableResId;
public final int id;
AlbumCoverStyle(@StringRes int titleRes, @DrawableRes int drawableResId, int id) {
this.titleRes = titleRes;
this.drawableResId = drawableResId;
this.id = id;
}
}

View file

@ -6,8 +6,6 @@ import android.content.Context;
import android.content.res.ColorStateList;
import android.graphics.PorterDuff;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.view.GestureDetector;
import android.view.LayoutInflater;
import android.view.MotionEvent;
@ -17,8 +15,11 @@ import android.view.animation.DecelerateInterpolator;
import android.widget.ImageView;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import butterknife.BindView;
import butterknife.ButterKnife;
import butterknife.OnClick;
import butterknife.Unbinder;
import code.name.monkey.appthemehelper.ThemeStore;
import code.name.monkey.appthemehelper.util.ATHUtil;
@ -28,6 +29,7 @@ import code.name.monkey.retromusic.helper.MusicProgressViewUpdateHelper;
import code.name.monkey.retromusic.helper.PlayPauseButtonOnClickHandler;
import code.name.monkey.retromusic.ui.fragments.base.AbsMusicServiceFragment;
import code.name.monkey.retromusic.util.PreferenceUtil;
import code.name.monkey.retromusic.util.RetroUtil;
import code.name.monkey.retromusic.views.PlayPauseDrawable;
import me.zhanghai.android.materialprogressbar.MaterialProgressBar;
@ -74,9 +76,13 @@ public class MiniPlayerFragment extends AbsMusicServiceFragment implements Music
view.setBackgroundColor(ThemeStore.primaryColor(getContext()));
view.setOnTouchListener(new FlingPlayBackController(getActivity()));
setUpMiniPlayer();
next.setVisibility(PreferenceUtil.getInstance(getContext()).isExtraMiniExtraControls() ? View.VISIBLE : View.GONE);
previous.setVisibility(PreferenceUtil.getInstance(getContext()).isExtraMiniExtraControls() ? View.VISIBLE : View.GONE);
if (RetroUtil.isTablet(getResources())) {
next.setVisibility(View.VISIBLE);
previous.setVisibility(View.VISIBLE);
} else {
next.setVisibility(PreferenceUtil.getInstance(getContext()).isExtraMiniExtraControls() ? View.VISIBLE : View.GONE);
previous.setVisibility(PreferenceUtil.getInstance(getContext()).isExtraMiniExtraControls() ? View.VISIBLE : View.GONE);
}
}
@Override
@ -155,6 +161,18 @@ public class MiniPlayerFragment extends AbsMusicServiceFragment implements Music
getView().setBackgroundColor(playerFragmentColor);
}
@OnClick({R.id.action_prev, R.id.action_next})
void onClicks(View view) {
switch (view.getId()) {
case R.id.action_next:
MusicPlayerRemote.playNextSong();
break;
case R.id.action_prev:
MusicPlayerRemote.back();
break;
}
}
public static class FlingPlayBackController implements View.OnTouchListener {
GestureDetector flingPlayBackController;

View file

@ -1,7 +1,7 @@
package code.name.monkey.retromusic.ui.fragments;
import android.support.annotation.DrawableRes;
import android.support.annotation.StringRes;
import androidx.annotation.DrawableRes;
import androidx.annotation.StringRes;
import code.name.monkey.retromusic.R;

View file

@ -1,11 +1,6 @@
package code.name.monkey.retromusic.ui.fragments;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
@ -15,6 +10,11 @@ import com.h6ah4i.android.widget.advrecyclerview.animator.RefactoredDefaultItemA
import com.h6ah4i.android.widget.advrecyclerview.draggable.RecyclerViewDragDropManager;
import com.h6ah4i.android.widget.advrecyclerview.utils.WrapperAdapterUtils;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import butterknife.BindView;
import butterknife.ButterKnife;
import butterknife.Unbinder;

View file

@ -6,9 +6,9 @@ import android.graphics.Color;
import android.graphics.PorterDuff;
import android.media.AudioManager;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.fragment.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
@ -57,7 +57,7 @@ public class VolumeFragment extends Fragment implements SeekBar.OnSeekBarChangeL
public void onViewCreated(@NonNull View view, Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
//noinspection ConstantConditions
setColor(ThemeStore.textColorSecondary(getContext()));
setTintable(ThemeStore.textColorSecondary(getContext()));
}
@Override
@ -146,7 +146,7 @@ public class VolumeFragment extends Fragment implements SeekBar.OnSeekBarChangeL
setProgressBarColor(Color.WHITE);
}
public void setProgressBarColor(int newColor) {
private void setProgressBarColor(int newColor) {
TintHelper.setTintAuto(volumeSeekbar, newColor, false);
volumeDown.setColorFilter(newColor, PorterDuff.Mode.SRC_IN);
volumeUp.setColorFilter(newColor, PorterDuff.Mode.SRC_IN);

View file

@ -1,9 +1,9 @@
package code.name.monkey.retromusic.ui.fragments.base;
import android.os.Bundle;
import android.support.annotation.LayoutRes;
import android.support.annotation.NonNull;
import android.support.v7.widget.RecyclerView;
import androidx.annotation.LayoutRes;
import androidx.annotation.NonNull;
import androidx.recyclerview.widget.RecyclerView;
import android.view.View;
import code.name.monkey.retromusic.R;

View file

@ -1,13 +1,13 @@
package code.name.monkey.retromusic.ui.fragments.base;
import android.os.Bundle;
import android.support.annotation.LayoutRes;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.annotation.StringRes;
import android.support.design.widget.AppBarLayout;
import android.support.design.widget.AppBarLayout.OnOffsetChangedListener;
import android.support.v7.widget.RecyclerView;
import androidx.annotation.LayoutRes;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.annotation.StringRes;
import com.google.android.material.appbar.AppBarLayout;
import com.google.android.material.appbar.AppBarLayout.OnOffsetChangedListener;
import androidx.recyclerview.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
@ -64,13 +64,6 @@ public abstract class AbsLibraryPagerRecyclerViewFragment<A extends RecyclerView
}
recyclerView.setLayoutManager(layoutManager);
recyclerView.setAdapter(adapter);
recyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() {
@Override
public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
super.onScrolled(recyclerView, dx, dy);
getLibraryFragment().addAppbarLayoutElevation(recyclerView.canScrollVertically(RecyclerView.NO_POSITION) ? 6f : 0f);
}
});
}
@Override

View file

@ -21,6 +21,7 @@ public abstract class AbsMainActivityFragment extends AbsMusicServiceFragment {
public void onActivityCreated(Bundle savedInstanceState) {
super.onActivityCreated(savedInstanceState);
setHasOptionsMenu(true);
getMainActivity().setStatusbarColorAuto();
getMainActivity().setNavigationbarColorAuto();
getMainActivity().setLightNavigationBar(true);
getMainActivity().setTaskDescriptionColorAuto();
@ -29,17 +30,14 @@ public abstract class AbsMainActivityFragment extends AbsMusicServiceFragment {
// WORKAROUND
public void setStatusbarColor(View view, int color) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) {
final View statusBar = view.findViewById(R.id.status_bar);
if (statusBar != null) {
RetroUtil.statusBarHeight(statusBar);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
statusBar.setBackgroundColor(color);
getMainActivity().setLightStatusbarAuto(color);
} else {
statusBar.setBackgroundColor(color);
}
private void setStatusbarColor(View view, int color) {
final View statusBar = view.findViewById(R.id.status_bar);
if (statusBar != null) {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
statusBar.setBackgroundColor(color);
getMainActivity().setLightStatusbarAuto(color);
} else {
statusBar.setBackgroundColor(color);
}
}
}

View file

@ -2,8 +2,8 @@ package code.name.monkey.retromusic.ui.fragments.base;
import android.content.Context;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.v4.app.Fragment;
import androidx.annotation.NonNull;
import androidx.fragment.app.Fragment;
import android.view.View;
import code.name.monkey.retromusic.interfaces.MusicServiceEventListener;

View file

@ -2,19 +2,21 @@ package code.name.monkey.retromusic.ui.fragments.base;
import android.annotation.SuppressLint;
import android.app.Activity;
import android.content.ContentUris;
import android.content.Context;
import android.content.Intent;
import android.graphics.drawable.Drawable;
import android.media.MediaMetadataRetriever;
import android.net.Uri;
import android.os.AsyncTask;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v7.widget.Toolbar;
import android.provider.MediaStore;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Toast;
import androidx.annotation.NonNull;
import androidx.appcompat.widget.Toolbar;
import code.name.monkey.appthemehelper.ThemeStore;
import code.name.monkey.retromusic.R;
import code.name.monkey.retromusic.dialogs.AddToPlaylistDialog;
@ -28,7 +30,6 @@ import code.name.monkey.retromusic.interfaces.PaletteColorHolder;
import code.name.monkey.retromusic.model.Song;
import code.name.monkey.retromusic.ui.activities.tageditor.AbsTagEditorActivity;
import code.name.monkey.retromusic.ui.activities.tageditor.SongTagEditorActivity;
import code.name.monkey.retromusic.ui.fragments.player.PlayerAlbumCoverFragment;
import code.name.monkey.retromusic.util.MusicUtil;
import code.name.monkey.retromusic.util.NavigationUtil;
import code.name.monkey.retromusic.util.PreferenceUtil;
@ -36,7 +37,6 @@ import code.name.monkey.retromusic.util.RetroUtil;
public abstract class AbsPlayerFragment extends AbsMusicServiceFragment implements Toolbar.OnMenuItemClickListener, PaletteColorHolder {
public static final String TAG = AbsPlayerFragment.class.getSimpleName();
private boolean isToolbarShown = true;
private Callbacks callbacks;
private AsyncTask updateIsFavoriteTask;
@ -118,15 +118,14 @@ public abstract class AbsPlayerFragment extends AbsMusicServiceFragment implemen
MusicUtil.setRingtone(getActivity(), song.id);
return true;
case R.id.action_go_to_genre:
/*MediaMetadataRetriever retriever = new MediaMetadataRetriever();
Uri trackUri = ContentUris
.withAppendedId(MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, song.id);
retriever.setDataSource(getActivity(), trackUri);
String genre = retriever.extractMetadata(MediaMetadataRetriever.METADATA_KEY_GENRE);
if (genre == null) {
genre = "Not Specified";
}*/
Toast.makeText(getContext(), "Soon", Toast.LENGTH_SHORT).show();
MediaMetadataRetriever retriever = new MediaMetadataRetriever();
Uri trackUri = ContentUris.withAppendedId(MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, song.id);
retriever.setDataSource(getActivity(), trackUri);
String genre = retriever.extractMetadata(MediaMetadataRetriever.METADATA_KEY_GENRE);
if (genre == null) {
genre = "Not Specified";
}
Toast.makeText(getContext(), genre, Toast.LENGTH_SHORT).show();
return true;
}
return false;
@ -136,55 +135,6 @@ public abstract class AbsPlayerFragment extends AbsMusicServiceFragment implemen
MusicUtil.toggleFavorite(getActivity(), song);
}
protected boolean isToolbarShown() {
return isToolbarShown;
}
protected void setToolbarShown(boolean toolbarShown) {
isToolbarShown = toolbarShown;
}
protected void showToolbar(@Nullable final View toolbar) {
if (toolbar == null) {
return;
}
setToolbarShown(true);
toolbar.setVisibility(View.VISIBLE);
toolbar.animate().alpha(1f).setDuration(PlayerAlbumCoverFragment.VISIBILITY_ANIM_DURATION);
}
protected void hideToolbar(@Nullable final View toolbar) {
if (toolbar == null) {
return;
}
setToolbarShown(false);
toolbar.animate().alpha(0f).setDuration(PlayerAlbumCoverFragment.VISIBILITY_ANIM_DURATION)
.withEndAction(new Runnable() {
@Override
public void run() {
toolbar.setVisibility(View.GONE);
}
});
}
protected void toggleToolbar(@Nullable final View toolbar) {
if (isToolbarShown()) {
hideToolbar(toolbar);
} else {
showToolbar(toolbar);
}
}
protected void checkToggleToolbar(@Nullable final View toolbar) {
if (toolbar != null && !isToolbarShown() && toolbar.getVisibility() != View.GONE) {
hideToolbar(toolbar);
} else if (toolbar != null && isToolbarShown() && toolbar.getVisibility() != View.VISIBLE) {
showToolbar(toolbar);
}
}
public abstract void onShow();
public abstract void onHide();
@ -243,8 +193,7 @@ public abstract class AbsPlayerFragment extends AbsMusicServiceFragment implemen
Drawable drawable = RetroUtil.getTintedVectorDrawable(activity, res, toolbarIconColor());
getToolbar().getMenu().findItem(R.id.action_toggle_favorite)
.setIcon(drawable)
.setTitle(isFavorite ? getString(R.string.action_remove_from_favorites)
: getString(R.string.action_add_to_favorites));
.setTitle(isFavorite ? getString(R.string.action_remove_from_favorites) : getString(R.string.action_add_to_favorites));
}
}
}.execute(MusicPlayerRemote.getCurrentSong());
@ -254,22 +203,15 @@ public abstract class AbsPlayerFragment extends AbsMusicServiceFragment implemen
return callbacks;
}
protected void toggleStatusBar(ViewGroup viewGroup) {
if (!PreferenceUtil.getInstance(getContext()).getFullScreenMode()) {
RetroUtil.statusBarHeight(viewGroup);
}
}
protected void toggleStatusBar(View viewGroup) {
if (!PreferenceUtil.getInstance(getContext()).getFullScreenMode()) {
RetroUtil.statusBarHeight(viewGroup);
}
}
@SuppressWarnings("ConstantConditions")
@Override
public void onViewCreated(@NonNull View view, Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
view.setBackgroundColor(ThemeStore.primaryColor(getActivity()));
if (PreferenceUtil.getInstance(getContext()).getFullScreenMode()) {
view.findViewById(R.id.status_bar).setVisibility(View.GONE);
}
}
public interface Callbacks {

View file

@ -7,9 +7,9 @@ import android.graphics.Bitmap;
import android.net.Uri;
import android.os.Bundle;
import android.provider.MediaStore.Images.Media;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.fragment.app.Fragment;
import android.text.TextUtils;
import android.view.LayoutInflater;
import android.view.View;

View file

@ -1,12 +1,12 @@
package code.name.monkey.retromusic.ui.fragments.mainactivity;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v7.widget.GridLayoutManager;
import java.util.ArrayList;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.recyclerview.widget.GridLayoutManager;
import code.name.monkey.retromusic.R;
import code.name.monkey.retromusic.model.Album;
import code.name.monkey.retromusic.mvp.contract.AlbumContract;
@ -15,9 +15,7 @@ import code.name.monkey.retromusic.ui.adapter.album.AlbumAdapter;
import code.name.monkey.retromusic.ui.fragments.base.AbsLibraryPagerRecyclerViewCustomGridSizeFragment;
import code.name.monkey.retromusic.util.PreferenceUtil;
public class AlbumsFragment extends
AbsLibraryPagerRecyclerViewCustomGridSizeFragment<AlbumAdapter, GridLayoutManager> implements
AlbumContract.AlbumView {
public class AlbumsFragment extends AbsLibraryPagerRecyclerViewCustomGridSizeFragment<AlbumAdapter, GridLayoutManager> implements AlbumContract.AlbumView {
public static final String TAG = AlbumsFragment.class.getSimpleName();
@ -44,10 +42,8 @@ public class AlbumsFragment extends
//noinspection ConstantConditions
itemLayoutRes = PreferenceUtil.getInstance(getContext()).getAlbumGridStyle(getContext());
}
ArrayList<Album> dataSet =
getAdapter() == null ? new ArrayList<>() : getAdapter().getDataSet();
return new AlbumAdapter(getLibraryFragment().getMainActivity(), dataSet, itemLayoutRes,
loadUsePalette(), getLibraryFragment());
ArrayList<Album> dataSet = getAdapter() == null ? new ArrayList<>() : getAdapter().getDataSet();
return new AlbumAdapter(getLibraryFragment().getMainActivity(), dataSet, itemLayoutRes, loadUsePalette(), getLibraryFragment());
}
@Override

View file

@ -1,9 +1,9 @@
package code.name.monkey.retromusic.ui.fragments.mainactivity;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v7.widget.GridLayoutManager;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.recyclerview.widget.GridLayoutManager;
import java.util.ArrayList;

View file

@ -1,9 +1,9 @@
package code.name.monkey.retromusic.ui.fragments.mainactivity;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v7.widget.LinearLayoutManager;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.recyclerview.widget.LinearLayoutManager;
import android.view.Menu;
import android.view.MenuInflater;

View file

@ -5,15 +5,16 @@ import android.content.Context;
import android.content.Intent;
import android.graphics.drawable.Drawable;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.annotation.StringRes;
import android.support.design.widget.AppBarLayout;
import android.support.design.widget.BottomNavigationView;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentTransaction;
import android.support.v7.widget.Toolbar;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.annotation.StringRes;
import com.google.android.material.bottomnavigation.LabelVisibilityMode;
import com.google.android.material.appbar.AppBarLayout;
import com.google.android.material.bottomnavigation.BottomNavigationView;
import androidx.fragment.app.Fragment;
import androidx.fragment.app.FragmentManager;
import androidx.fragment.app.FragmentTransaction;
import androidx.appcompat.widget.Toolbar;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuInflater;
@ -81,15 +82,15 @@ public class LibraryFragment extends AbsMainActivityFragment implements CabHolde
@BindView(R.id.fragment_container)
View contentContainer;
@BindView(R.id.coordinator_layout)
View coordinatorLayout;
@BindView(R.id.menu_container)
View menuContainer;
@BindDrawable(R.drawable.ic_menu_white_24dp)
Drawable menu;
@BindDrawable(R.drawable.ic_close_white_24dp)
Drawable close;
private Unbinder unBinder;
private MaterialCab cab;
private FragmentManager fragmentManager;
@ -114,12 +115,11 @@ public class LibraryFragment extends AbsMainActivityFragment implements CabHolde
bottomNavigationView.setOnNavigationItemSelectedListener(this::onOptionsItemSelected);
int iconColor = ATHUtil.resolveColor(context, R.attr.iconColor);
int accentColor = ThemeStore.accentColor(context);
NavigationViewUtil.setItemIconColors(bottomNavigationView, iconColor, accentColor);
NavigationViewUtil.setItemTextColors(bottomNavigationView, iconColor, accentColor);
NavigationViewUtil.setItemIconColors(bottomNavigationView, ColorUtil.withAlpha(iconColor, 0.5f), accentColor);
NavigationViewUtil.setItemTextColors(bottomNavigationView, ColorUtil.withAlpha(iconColor, 0.5f), accentColor);
if (PreferenceUtil.getInstance(getContext()).tabTitles()) {
bottomNavigationView.setItemTextAppearanceActive(R.style.HideTabTitleTextAppearance);
bottomNavigationView.setItemTextAppearanceInactive(R.style.HideTabTitleTextAppearance);
if (!PreferenceUtil.getInstance(getContext()).tabTitles()) {
bottomNavigationView.setLabelVisibilityMode(LabelVisibilityMode.LABEL_VISIBILITY_UNLABELED);
}
}
}
@ -154,7 +154,6 @@ public class LibraryFragment extends AbsMainActivityFragment implements CabHolde
@Override
public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
setStatusbarColorAuto(view);
setupBottomView();
setupToolbar();
@ -172,13 +171,13 @@ public class LibraryFragment extends AbsMainActivityFragment implements CabHolde
TintHelper.setTintAuto(actionLibrary, ThemeStore.accentColor(getContext()), true);
int primaryColor = ThemeStore.primaryColor(getContext());
int darkPrimaryColor = ColorUtil.darkenColor(primaryColor);
TintHelper.setTintAuto(contentContainer, primaryColor, true);
toolbar.setBackgroundColor(darkPrimaryColor);
toolbar.setBackgroundColor(primaryColor);
toolbar.setNavigationIcon(R.drawable.ic_menu_white_24dp);
appbar.setBackgroundColor(darkPrimaryColor);
appbar.setBackgroundColor(primaryColor);
appbar.addOnOffsetChangedListener((appBarLayout, verticalOffset) ->
getMainActivity().setLightStatusbar(!ATHUtil.isWindowBackgroundDark(getContext())));
getMainActivity().setTitle(null);
@ -191,7 +190,6 @@ public class LibraryFragment extends AbsMainActivityFragment implements CabHolde
menu,
close
));
coordinatorLayout.setBackgroundColor(ColorUtil.darkenColor(primaryColor));
}
public Fragment getCurrentFragment() {
@ -544,9 +542,4 @@ public class LibraryFragment extends AbsMainActivityFragment implements CabHolde
}
}
}
public void addAppbarLayoutElevation(float v) {
//TransitionManager.beginDelayedTransition(appbar);
//appbar.setElevation(v);
}
}

View file

@ -1,9 +1,9 @@
package code.name.monkey.retromusic.ui.fragments.mainactivity;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v7.widget.LinearLayoutManager;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.recyclerview.widget.LinearLayoutManager;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.View;

View file

@ -1,9 +1,9 @@
package code.name.monkey.retromusic.ui.fragments.mainactivity;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v7.widget.GridLayoutManager;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.recyclerview.widget.GridLayoutManager;
import java.util.ArrayList;

View file

@ -7,15 +7,15 @@ import android.graphics.drawable.Drawable;
import android.media.MediaScannerConnection;
import android.os.Bundle;
import android.os.Environment;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.design.widget.AppBarLayout;
import android.support.design.widget.Snackbar;
import android.support.v4.app.LoaderManager;
import android.support.v4.content.Loader;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.support.v7.widget.Toolbar;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import com.google.android.material.appbar.AppBarLayout;
import com.google.android.material.snackbar.Snackbar;
import androidx.loader.app.LoaderManager;
import androidx.loader.content.Loader;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import androidx.appcompat.widget.Toolbar;
import android.text.Html;
import android.view.LayoutInflater;
import android.view.Menu;
@ -89,8 +89,8 @@ public class FoldersFragment extends AbsMainActivityFragment implements
FileUtil.fileIsMimeType(file, "application/opus", MimeTypeMap.getSingleton()) ||
FileUtil.fileIsMimeType(file, "application/ogg", MimeTypeMap.getSingleton()));
protected static final String PATH = "path";
protected static final String CRUMBS = "crumbs";
private static final String PATH = "path";
private static final String CRUMBS = "crumbs";
private static final int LOADER_ID = LoaderIds.FOLDERS_FRAGMENT;
@BindView(R.id.coordinator_layout)
View coordinatorLayout;
@ -182,7 +182,7 @@ public class FoldersFragment extends AbsMainActivityFragment implements
}
}
public void setCrumb(BreadCrumbLayout.Crumb crumb, boolean addToHistory) {
private void setCrumb(BreadCrumbLayout.Crumb crumb, boolean addToHistory) {
if (crumb == null) {
return;
}
@ -197,8 +197,7 @@ public class FoldersFragment extends AbsMainActivityFragment implements
private void saveScrollPosition() {
BreadCrumbLayout.Crumb crumb = getActiveCrumb();
if (crumb != null) {
crumb.setScrollPosition(
((LinearLayoutManager) recyclerView.getLayoutManager()).findFirstVisibleItemPosition());
crumb.setScrollPosition(((LinearLayoutManager) recyclerView.getLayoutManager()).findFirstVisibleItemPosition());
}
}
@ -256,7 +255,7 @@ public class FoldersFragment extends AbsMainActivityFragment implements
@Override
public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) {
setStatusbarColorAuto(view);
getMainActivity().getSlidingUpPanelLayout().setShadowHeight(0);
setUpAppbarColor();
@ -276,7 +275,7 @@ public class FoldersFragment extends AbsMainActivityFragment implements
//noinspection ConstantConditions
int primaryColor = ThemeStore.primaryColor(getContext());
int darkPrimaryColor = ColorUtil.darkenColor(primaryColor);
toolbar.setNavigationIcon(R.drawable.ic_menu_white_24dp);
//noinspection ConstantConditions
@ -291,9 +290,8 @@ public class FoldersFragment extends AbsMainActivityFragment implements
close
));
TintHelper.setTintAuto(container, primaryColor, true);
appbar.setBackgroundColor(darkPrimaryColor);
toolbar.setBackgroundColor(darkPrimaryColor);
coordinatorLayout.setBackgroundColor(darkPrimaryColor);
appbar.setBackgroundColor(primaryColor);
toolbar.setBackgroundColor(primaryColor);
breadCrumbs.setActivatedContentColor(ToolbarContentTintHelper.toolbarTitleColor(getActivity(), ColorUtil.darkenColor(primaryColor)));
breadCrumbs.setDeactivatedContentColor(ToolbarContentTintHelper.toolbarSubtitleColor(getActivity(), ColorUtil.darkenColor(primaryColor)));

View file

@ -4,31 +4,26 @@ import android.app.Activity;
import android.graphics.Bitmap;
import android.graphics.drawable.Drawable;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.design.widget.AppBarLayout;
import android.support.v4.content.ContextCompat;
import android.support.v7.widget.GridLayoutManager;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.support.v7.widget.Toolbar;
import android.util.DisplayMetrics;
import android.view.Display;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.view.animation.AccelerateDecelerateInterpolator;
import android.view.animation.AnticipateInterpolator;
import android.view.animation.AnticipateOvershootInterpolator;
import android.view.animation.BounceInterpolator;
import android.view.animation.LinearInterpolator;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.TextView;
import com.google.android.material.appbar.AppBarLayout;
import java.io.File;
import java.util.ArrayList;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.widget.Toolbar;
import androidx.core.content.ContextCompat;
import androidx.recyclerview.widget.GridLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import butterknife.BindDrawable;
import butterknife.BindView;
import butterknife.ButterKnife;
@ -54,11 +49,11 @@ import code.name.monkey.retromusic.model.smartplaylist.LastAddedPlaylist;
import code.name.monkey.retromusic.model.smartplaylist.MyTopTracksPlaylist;
import code.name.monkey.retromusic.mvp.contract.HomeContract;
import code.name.monkey.retromusic.mvp.presenter.HomePresenter;
import code.name.monkey.retromusic.ui.activities.MainActivity;
import code.name.monkey.retromusic.ui.adapter.GenreAdapter;
import code.name.monkey.retromusic.ui.adapter.album.AlbumFullWithAdapter;
import code.name.monkey.retromusic.ui.adapter.artist.ArtistAdapter;
import code.name.monkey.retromusic.ui.fragments.base.AbsMainActivityFragment;
import code.name.monkey.retromusic.ui.fragments.mainactivity.LibraryFragment;
import code.name.monkey.retromusic.ui.fragments.mainactivity.folders.FoldersFragment;
import code.name.monkey.retromusic.util.Compressor;
import code.name.monkey.retromusic.util.NavigationUtil;
import code.name.monkey.retromusic.util.PreferenceUtil;
@ -78,7 +73,7 @@ public class BannerHomeFragment extends AbsMainActivityFragment implements MainA
@BindView(R.id.toolbar)
Toolbar toolbar;
@BindView(R.id.appbar)
@BindView(R.id.app_bar)
AppBarLayout appbar;
@BindView(R.id.menu_container)
@ -111,18 +106,9 @@ public class BannerHomeFragment extends AbsMainActivityFragment implements MainA
@BindView(R.id.top_albums_container)
View topAlbumContainer;
@BindView(R.id.genres)
RecyclerView genresRecyclerView;
@BindView(R.id.genre_container)
LinearLayout genreContainer;
@BindView(R.id.content_container)
View contentContainer;
@BindView(R.id.coordinator_layout)
View coordinatorLayout;
@BindView(R.id.title)
TextView title;
@ -181,26 +167,25 @@ public class BannerHomeFragment extends AbsMainActivityFragment implements MainA
@Override
public void onViewCreated(@NonNull View view, Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
setStatusbarColorAuto(view);
setTextColor();
setupToolbar();
loadImageFromStorage(userImage);
homePresenter.subscribe();
checkPadding();
}
@SuppressWarnings("ConstantConditions")
private void setupToolbar() {
//noinspection ConstantConditions
int primaryColor = ThemeStore.primaryColor(getContext());
int darkPrimaryColor = ColorUtil.darkenColor(primaryColor);
TintHelper.setTintAuto(contentContainer, primaryColor, true);
toolbar.setBackgroundColor(darkPrimaryColor);
toolbar.setNavigationIcon(R.drawable.ic_menu_white_24dp);
appbar.setBackgroundColor(darkPrimaryColor);
toolbar.setBackgroundColor(primaryColor);
appbar.setBackgroundColor(primaryColor);
appbar.addOnOffsetChangedListener((appBarLayout, verticalOffset) ->
getMainActivity().setLightStatusbar(!ATHUtil.isWindowBackgroundDark(getContext())));
getMainActivity().setTitle(null);
getActivity().setTitle(null);
getMainActivity().setSupportActionBar(toolbar);
toolbar.setNavigationOnClickListener(new NavigationIconClickListener(
getContext(),
@ -210,16 +195,10 @@ public class BannerHomeFragment extends AbsMainActivityFragment implements MainA
menu,
close
));
coordinatorLayout.setBackgroundColor(ColorUtil.darkenColor(primaryColor));
TintHelper.setTintAuto(contentContainer, primaryColor, true);
}
private void setTextColor() {
int accentColor = ThemeStore.accentColor(getContext());
title.setTextColor(ThemeStore.textColorPrimary(getContext()));
actionHome.setTextColor(MaterialValueHelper.getPrimaryTextColor(getContext(), ColorUtil.isColorLight(accentColor)));
actionHome.setTextColor(MaterialValueHelper.getPrimaryTextColor(getContext(), ColorUtil.isColorLight(ThemeStore.accentColor(getContext()))));
actionHome.setBackgroundResource(R.drawable.et_bg_circular_top_corners);
TintHelper.setTintAuto(actionHome, accentColor, true);
TintHelper.setTintAuto(actionHome, ThemeStore.accentColor(getContext()), true);
}
@Override
@ -261,22 +240,6 @@ public class BannerHomeFragment extends AbsMainActivityFragment implements MainA
homePresenter.subscribe();
}
@Override
public void onServiceConnected() {
super.onServiceConnected();
checkPadding();
}
@Override
public void onQueueChanged() {
super.onQueueChanged();
checkPadding();
}
private void checkPadding() {
int height = getResources().getDimensionPixelSize(R.dimen.mini_player_height);
contentContainer.setPadding(0, 0, 0, MusicPlayerRemote.getPlayingQueue().isEmpty() ? height * 2 : 0);
}
@Override
public void recentArtist(ArrayList<Artist> artists) {
@ -333,22 +296,18 @@ public class BannerHomeFragment extends AbsMainActivityFragment implements MainA
@Override
public void geners(ArrayList<Genre> genres) {
genreContainer.setVisibility(View.VISIBLE);
genresRecyclerView.setLayoutManager(new LinearLayoutManager(getContext()));
//noinspection ConstantConditions
GenreAdapter genreAdapter = new GenreAdapter(getActivity(), genres, R.layout.item_list);
genresRecyclerView.setAdapter(genreAdapter);
}
@OnClick({R.id.last_added, R.id.top_played, R.id.search, R.id.action_shuffle, R.id.history,
R.id.user_image, R.id.action_library, R.id.action_settings, R.id.action_folders})
@OnClick({R.id.last_added, R.id.top_played, R.id.action_shuffle, R.id.history,
R.id.user_image, R.id.search, R.id.action_library, R.id.action_folders, R.id.action_settings})
void startUserInfo(View view) {
Activity activity = getActivity();
if (activity != null) {
switch (view.getId()) {
case R.id.action_shuffle:
MusicPlayerRemote.openAndShuffleQueue(SongLoader.getAllSongs(activity).blockingFirst(), true);
MusicPlayerRemote
.openAndShuffleQueue(SongLoader.getAllSongs(activity).blockingFirst(), true);
break;
case R.id.last_added:
NavigationUtil.goToPlaylistNew(activity, new LastAddedPlaylist(activity));
@ -363,10 +322,10 @@ public class BannerHomeFragment extends AbsMainActivityFragment implements MainA
new HomeOptionDialog().show(getFragmentManager(), TAG);
break;
case R.id.action_folders:
getMainActivity().setCurrentFragment(MainActivity.FOLDERS);
getMainActivity().setCurrentFragment(FoldersFragment.newInstance(getContext()), false, TAG);
break;
case R.id.action_library:
getMainActivity().setCurrentFragment(MainActivity.LIBRARY);
getMainActivity().setCurrentFragment(LibraryFragment.newInstance(), false, TAG);
break;
case R.id.action_settings:
NavigationUtil.goToSettings(activity);
@ -377,4 +336,11 @@ public class BannerHomeFragment extends AbsMainActivityFragment implements MainA
}
}
}
@Override
public void onPlayingMetaChanged() {
super.onPlayingMetaChanged();
homePresenter.loadRecentArtists();
homePresenter.loadRecentAlbums();
}
}

View file

@ -4,34 +4,32 @@ import android.app.Activity;
import android.graphics.Bitmap;
import android.graphics.drawable.Drawable;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.design.widget.AppBarLayout;
import android.support.design.widget.CollapsingToolbarLayout;
import android.support.v4.content.ContextCompat;
import android.support.v7.widget.GridLayoutManager;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.support.v7.widget.Toolbar;
import android.util.DisplayMetrics;
import android.view.Display;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.view.animation.AccelerateDecelerateInterpolator;
import android.view.animation.AnticipateOvershootInterpolator;
import android.widget.ImageView;
import android.widget.LinearLayout;
import android.widget.TextView;
import com.bumptech.glide.Glide;
import com.bumptech.glide.load.engine.DiskCacheStrategy;
import com.google.android.material.appbar.AppBarLayout;
import com.google.android.material.appbar.CollapsingToolbarLayout;
import java.io.File;
import java.util.ArrayList;
import java.util.Calendar;
import java.util.Random;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.widget.Toolbar;
import androidx.core.content.ContextCompat;
import androidx.recyclerview.widget.GridLayoutManager;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import butterknife.BindDrawable;
import butterknife.BindView;
import butterknife.ButterKnife;
@ -63,7 +61,6 @@ import code.name.monkey.retromusic.ui.fragments.base.AbsMainActivityFragment;
import code.name.monkey.retromusic.util.Compressor;
import code.name.monkey.retromusic.util.NavigationUtil;
import code.name.monkey.retromusic.util.PreferenceUtil;
import code.name.monkey.retromusic.util.RetroUtil;
import code.name.monkey.retromusic.views.CircularImageView;
import code.name.monkey.retromusic.views.MetalRecyclerViewPager;
import io.reactivex.android.schedulers.AndroidSchedulers;
@ -78,6 +75,7 @@ public class HomeFragment extends AbsMainActivityFragment implements MainActivit
public static final String TAG = "HomeFragment";
Unbinder unbinder;
@BindView(R.id.home_toolbar)
Toolbar toolbar;
@ -123,15 +121,12 @@ public class HomeFragment extends AbsMainActivityFragment implements MainActivit
@BindView(R.id.top_albums_container)
View topAlbumContainer;
@BindView(R.id.genres)
RecyclerView genresRecyclerView;
@BindView(R.id.genre_container)
LinearLayout genreContainer;
@BindView(R.id.content_container)
View contentContainer;
@BindView(R.id.container)
View container;
@BindView(R.id.title)
TextView title;
@ -241,17 +236,16 @@ public class HomeFragment extends AbsMainActivityFragment implements MainActivit
loadImageFromStorage(userImage);
homePresenter.subscribe();
checkPadding();
getTimeOfTheDay();
}
@SuppressWarnings("ConstantConditions")
private void setupToolbar() {
if (!PreferenceUtil.getInstance(getContext()).getFullScreenMode()) {
/*if (!PreferenceUtil.getInstance(getContext()).getFullScreenMode()) {
ViewGroup.MarginLayoutParams params = (ViewGroup.MarginLayoutParams) toolbar.getLayoutParams();
params.topMargin = RetroUtil.getStatusBarHeight(getContext());
toolbar.setLayoutParams(params);
}
}*/
appbar.addOnOffsetChangedListener(new AppBarStateChangeListener() {
@Override
@ -275,7 +269,7 @@ public class HomeFragment extends AbsMainActivityFragment implements MainActivit
int primaryColor = ThemeStore.primaryColor(getContext());
TintHelper.setTintAuto(coordinatorLayout, primaryColor, true);
TintHelper.setTintAuto(container, primaryColor, true);
toolbarLayout.setStatusBarScrimColor(primaryColor);
toolbarLayout.setContentScrimColor(primaryColor);
@ -331,23 +325,6 @@ public class HomeFragment extends AbsMainActivityFragment implements MainActivit
homePresenter.subscribe();
}
@Override
public void onServiceConnected() {
super.onServiceConnected();
checkPadding();
}
@Override
public void onQueueChanged() {
super.onQueueChanged();
checkPadding();
}
private void checkPadding() {
int height = getResources().getDimensionPixelSize(R.dimen.mini_player_height);
contentContainer.setPadding(0, 0, 0, MusicPlayerRemote.getPlayingQueue().isEmpty() ? height * 2 : 0);
}
@Override
public void recentArtist(ArrayList<Artist> artists) {
recentArtistContainer.setVisibility(View.VISIBLE);
@ -403,11 +380,6 @@ public class HomeFragment extends AbsMainActivityFragment implements MainActivit
@Override
public void geners(ArrayList<Genre> genres) {
genreContainer.setVisibility(View.VISIBLE);
genresRecyclerView.setLayoutManager(new LinearLayoutManager(getContext()));
//noinspection ConstantConditions
GenreAdapter genreAdapter = new GenreAdapter(getActivity(), genres, R.layout.item_list);
genresRecyclerView.setAdapter(genreAdapter);
}

View file

@ -1,12 +1,12 @@
package code.name.monkey.retromusic.ui.fragments.player;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.v4.view.ViewPager;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import androidx.annotation.NonNull;
import androidx.viewpager.widget.ViewPager;
import butterknife.BindView;
import butterknife.ButterKnife;
import butterknife.Unbinder;
@ -62,14 +62,11 @@ public class PlayerAlbumCoverFragment extends AbsMusicServiceFragment implements
viewPager.addOnPageChangeListener(this);
//noinspection ConstantConditions
if (PreferenceUtil.getInstance(getContext()).carouselEffect() && !(
(PreferenceUtil.getInstance(getContext()).getNowPlayingScreen() == NowPlayingScreen.FULL) ||
(PreferenceUtil.getInstance(getContext()).getNowPlayingScreen()
== NowPlayingScreen.FLAT))) {
if (PreferenceUtil.getInstance(getContext()).carouselEffect() &&
!((PreferenceUtil.getInstance(getContext()).getNowPlayingScreen() == NowPlayingScreen.FULL))) {
viewPager.setClipToPadding(false);
viewPager.setPadding(96, 0, 96, 0);
viewPager.setPageMargin(18);
viewPager.setPageTransformer(false, new CustPagerTransformer(getContext()));
} else {
viewPager.setPageTransformer(true, new NormalPageTransformer());

View file

@ -1,14 +1,14 @@
package code.name.monkey.retromusic.ui.fragments.player.adaptive;
import android.os.Bundle;
import android.support.annotation.ColorInt;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v7.widget.Toolbar;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import androidx.annotation.ColorInt;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.widget.Toolbar;
import butterknife.BindView;
import butterknife.ButterKnife;
import butterknife.Unbinder;
@ -27,8 +27,6 @@ public class AdaptiveFragment extends AbsPlayerFragment implements Callbacks {
@BindView(R.id.player_toolbar)
Toolbar toolbar;
@BindView(R.id.status_bar)
View statusBar;
private int lastColor;
private AdaptivePlaybackControlsFragment playbackControlsFragment;
@ -115,8 +113,6 @@ public class AdaptiveFragment extends AbsPlayerFragment implements Callbacks {
@Override
public void onViewCreated(@NonNull View view, Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
toggleStatusBar(statusBar);
setUpSubFragments();
setUpPlayerToolbar();
}

View file

@ -3,9 +3,9 @@ package code.name.monkey.retromusic.ui.fragments.player.adaptive;
import android.animation.ObjectAnimator;
import android.graphics.PorterDuff;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v7.widget.AppCompatSeekBar;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.widget.AppCompatSeekBar;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;

View file

@ -4,11 +4,11 @@ import android.animation.ObjectAnimator;
import android.graphics.Color;
import android.graphics.PorterDuff;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v4.content.ContextCompat;
import android.support.v7.widget.AppCompatSeekBar;
import android.support.v7.widget.AppCompatTextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.core.content.ContextCompat;
import androidx.appcompat.widget.AppCompatSeekBar;
import androidx.appcompat.widget.AppCompatTextView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;

View file

@ -4,13 +4,13 @@ import android.app.Activity;
import android.graphics.Color;
import android.os.Bundle;
import android.preference.PreferenceManager;
import android.support.annotation.ColorInt;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.support.v7.widget.Toolbar;
import androidx.annotation.ColorInt;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import androidx.appcompat.widget.Toolbar;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
@ -48,15 +48,17 @@ public class BlurPlayerFragment extends AbsPlayerFragment implements
@BindView(R.id.player_toolbar)
Toolbar toolbar;
@BindView(R.id.toolbar_container)
View toolbarContainer;
@BindView(R.id.gradient_background)
ImageView colorBackground;
@BindView(R.id.status_bar)
View statusBar;
@Nullable
@BindView(R.id.recycler_view)
RecyclerView recyclerView;
@Nullable
@BindView(R.id.title)
TextView title;
@ -65,8 +67,6 @@ public class BlurPlayerFragment extends AbsPlayerFragment implements
private BlurPlaybackControlsFragment playbackControlsFragment;
private Unbinder unbinder;
private RecyclerView.Adapter wrappedAdapter;
private RecyclerViewDragDropManager recyclerViewDragDropManager;
private PlayingQueueAdapter playingQueueAdapter;
private LinearLayoutManager layoutManager;
@ -143,22 +143,11 @@ public class BlurPlayerFragment extends AbsPlayerFragment implements
@Override
public void onDestroyView() {
super.onDestroyView();
if (recyclerViewDragDropManager != null) {
recyclerViewDragDropManager.release();
recyclerViewDragDropManager = null;
}
if (recyclerView != null) {
recyclerView.setItemAnimator(null);
recyclerView.setAdapter(null);
recyclerView = null;
}
if (wrappedAdapter != null) {
WrapperAdapterUtils.releaseAll(wrappedAdapter);
wrappedAdapter = null;
}
playingQueueAdapter = null;
layoutManager = null;
super.onDestroyView();
@ -177,8 +166,6 @@ public class BlurPlayerFragment extends AbsPlayerFragment implements
@Override
public void onViewCreated(@NonNull View view, Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
toggleStatusBar(statusBar);
setUpSubFragments();
setUpPlayerToolbar();
}
@ -245,7 +232,6 @@ public class BlurPlayerFragment extends AbsPlayerFragment implements
private void setUpRecyclerView() {
if (recyclerView != null) {
recyclerViewDragDropManager = new RecyclerViewDragDropManager();
final GeneralItemAnimator animator = new RefactoredDefaultItemAnimator();
playingQueueAdapter = new PlayingQueueAdapter(
@ -255,14 +241,11 @@ public class BlurPlayerFragment extends AbsPlayerFragment implements
R.layout.item_song,
false,
null);
wrappedAdapter = recyclerViewDragDropManager.createWrappedAdapter(playingQueueAdapter);
layoutManager = new LinearLayoutManager(getContext());
recyclerView.setLayoutManager(layoutManager);
recyclerView.setAdapter(wrappedAdapter);
recyclerView.setAdapter(playingQueueAdapter);
recyclerView.setItemAnimator(animator);
recyclerViewDragDropManager.attachRecyclerView(recyclerView);
layoutManager.scrollToPositionWithOffset(MusicPlayerRemote.getPosition() + 1, 0);
}
}
@ -307,13 +290,4 @@ public class BlurPlayerFragment extends AbsPlayerFragment implements
}
}
@Override
public void onPause() {
if (recyclerViewDragDropManager != null) {
recyclerViewDragDropManager.cancelDrag();
}
super.onPause();
}
}

View file

@ -2,13 +2,13 @@ package code.name.monkey.retromusic.ui.fragments.player.card;
import android.graphics.Color;
import android.os.Bundle;
import android.support.annotation.ColorInt;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.LinearLayoutManager;
import android.support.v7.widget.RecyclerView;
import android.support.v7.widget.Toolbar;
import androidx.annotation.ColorInt;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.app.AppCompatActivity;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;
import androidx.appcompat.widget.Toolbar;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
@ -36,10 +36,10 @@ public class CardFragment extends AbsPlayerFragment implements PlayerAlbumCoverF
@BindView(R.id.player_toolbar)
Toolbar toolbar;
@BindView(R.id.status_bar)
View statusBar;
@Nullable
@BindView(R.id.recycler_view)
RecyclerView recyclerView;
@Nullable
@BindView(R.id.title)
@ -164,8 +164,6 @@ public class CardFragment extends AbsPlayerFragment implements PlayerAlbumCoverF
@Override
public void onViewCreated(@NonNull View view, Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
toggleStatusBar(statusBar);
setUpSubFragments();
setUpPlayerToolbar();
setUpRecyclerView();

View file

@ -3,11 +3,11 @@ package code.name.monkey.retromusic.ui.fragments.player.card;
import android.animation.ObjectAnimator;
import android.graphics.PorterDuff;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v7.widget.AppCompatSeekBar;
import android.support.v7.widget.AppCompatTextView;
import android.support.v7.widget.CardView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.widget.AppCompatSeekBar;
import androidx.appcompat.widget.AppCompatTextView;
import androidx.cardview.widget.CardView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;

View file

@ -4,10 +4,10 @@ import android.app.Activity;
import android.graphics.Color;
import android.os.Bundle;
import android.preference.PreferenceManager;
import android.support.annotation.ColorInt;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v7.widget.Toolbar;
import androidx.annotation.ColorInt;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.widget.Toolbar;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
@ -34,8 +34,7 @@ public class CardBlurFragment extends AbsPlayerFragment implements
@BindView(R.id.player_toolbar)
Toolbar toolbar;
@BindView(R.id.status_bar)
View statusBar;
@BindView(R.id.gradient_background)
ImageView colorBackground;
@ -126,8 +125,6 @@ public class CardBlurFragment extends AbsPlayerFragment implements
@Override
public void onViewCreated(@NonNull View view, Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
toggleStatusBar(statusBar);
setUpSubFragments();
setUpPlayerToolbar();
}
@ -137,8 +134,7 @@ public class CardBlurFragment extends AbsPlayerFragment implements
.findFragmentById(R.id.playback_controls_fragment);
PlayerAlbumCoverFragment playerAlbumCoverFragment =
(PlayerAlbumCoverFragment) getChildFragmentManager()
.findFragmentById(R.id.player_album_cover_fragment);
(PlayerAlbumCoverFragment) getChildFragmentManager().findFragmentById(R.id.player_album_cover_fragment);
playerAlbumCoverFragment.setCallbacks(this);
playerAlbumCoverFragment.removeEffect();
}

View file

@ -5,9 +5,9 @@ import android.content.res.ColorStateList;
import android.graphics.Color;
import android.graphics.PorterDuff;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v7.widget.AppCompatSeekBar;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.widget.AppCompatSeekBar;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;

View file

@ -9,11 +9,11 @@ import android.graphics.Color;
import android.graphics.drawable.Drawable;
import android.os.AsyncTask;
import android.os.Bundle;
import android.support.annotation.ColorInt;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v7.graphics.Palette;
import android.support.v7.widget.Toolbar;
import androidx.annotation.ColorInt;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.palette.graphics.Palette;
import androidx.appcompat.widget.Toolbar;
import android.text.TextUtils;
import android.view.LayoutInflater;
import android.view.View;
@ -49,16 +49,19 @@ public class ColorFragment extends AbsPlayerFragment {
@BindView(R.id.player_toolbar)
Toolbar toolbar;
@BindView(R.id.gradient_background)
View colorBackground;
@BindView(R.id.status_bar)
View statusBar;
@BindView(R.id.image)
ImageView imageView;
@BindView(R.id.lyrics)
TextView lyricsView;
@BindView(R.id.lyrics_container)
View lyricsViewContainer;
@BindView(R.id.album_cover_container)
View imageViewContainer;
@ -139,8 +142,6 @@ public class ColorFragment extends AbsPlayerFragment {
@Override
public void onViewCreated(@NonNull View view, Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
toggleStatusBar(statusBar);
setUpSubFragments();
setUpPlayerToolbar();
}

View file

@ -4,10 +4,10 @@ import android.animation.ObjectAnimator;
import android.graphics.Color;
import android.graphics.PorterDuff;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v7.widget.AppCompatSeekBar;
import android.support.v7.widget.AppCompatTextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.widget.AppCompatSeekBar;
import androidx.appcompat.widget.AppCompatTextView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;

View file

@ -3,8 +3,8 @@ package code.name.monkey.retromusic.ui.fragments.player.flat;
import android.animation.ObjectAnimator;
import android.graphics.PorterDuff;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;

View file

@ -4,9 +4,9 @@ import android.animation.ArgbEvaluator;
import android.animation.ValueAnimator;
import android.graphics.drawable.GradientDrawable;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v7.widget.Toolbar;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.widget.Toolbar;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
@ -33,12 +33,13 @@ public class FlatPlayerFragment extends AbsPlayerFragment implements
@BindView(R.id.player_toolbar)
Toolbar toolbar;
@BindView(R.id.gradient_background)
View colorBackground;
@BindView(R.id.toolbar_container)
FrameLayout toolbarContainer;
@BindView(R.id.status_bar)
View statusBar;
private Unbinder unbinder;
private ValueAnimator valueAnimator;
@ -91,8 +92,6 @@ public class FlatPlayerFragment extends AbsPlayerFragment implements
@Override
public void onViewCreated(@NonNull View view, Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
toggleStatusBar(statusBar);
setUpPlayerToolbar();
setUpSubFragments();

View file

@ -6,9 +6,9 @@ import android.graphics.PorterDuff;
import android.graphics.drawable.ClipDrawable;
import android.graphics.drawable.LayerDrawable;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v4.content.ContextCompat;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.core.content.ContextCompat;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;

View file

@ -2,14 +2,14 @@ package code.name.monkey.retromusic.ui.fragments.player.full;
import android.graphics.Color;
import android.os.Bundle;
import android.support.annotation.ColorInt;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v7.widget.Toolbar;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import androidx.annotation.ColorInt;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.widget.Toolbar;
import butterknife.BindView;
import butterknife.ButterKnife;
import butterknife.Unbinder;

View file

@ -2,8 +2,8 @@ package code.name.monkey.retromusic.ui.fragments.player.hmm;
import android.graphics.PorterDuff;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;

View file

@ -3,9 +3,9 @@ package code.name.monkey.retromusic.ui.fragments.player.hmm;
import android.animation.AnimatorSet;
import android.animation.ObjectAnimator;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v7.widget.Toolbar;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.widget.Toolbar;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
@ -42,16 +42,18 @@ public class HmmPlayerFragment extends AbsPlayerFragment implements
@BindView(R.id.title)
TextView title;
@BindView(R.id.text)
TextView text;
@BindView(R.id.player_song_total_time)
TextView totalTime;
@BindView(R.id.progress_bar)
ProgressBar progressBar;
@BindView(R.id.player_toolbar)
Toolbar toolbar;
@BindView(R.id.status_bar)
View statusBar;
private MusicProgressViewUpdateHelper progressViewUpdateHelper;
private Unbinder unBinder;
@ -102,8 +104,6 @@ public class HmmPlayerFragment extends AbsPlayerFragment implements
@Override
public void onViewCreated(@NonNull View view, Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
toggleStatusBar(statusBar);
progressBar.setOnClickListener(new PlayPauseButtonOnClickHandler());
progressBar.setOnTouchListener(new MiniPlayerFragment.FlingPlayBackController(getActivity()));

View file

@ -3,11 +3,11 @@ package code.name.monkey.retromusic.ui.fragments.player.lockscreen;
import android.animation.ObjectAnimator;
import android.graphics.PorterDuff;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v7.widget.AppCompatImageButton;
import android.support.v7.widget.AppCompatSeekBar;
import android.support.v7.widget.AppCompatTextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.widget.AppCompatImageButton;
import androidx.appcompat.widget.AppCompatSeekBar;
import androidx.appcompat.widget.AppCompatTextView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;

View file

@ -3,10 +3,10 @@ package code.name.monkey.retromusic.ui.fragments.player.material;
import android.animation.ObjectAnimator;
import android.graphics.PorterDuff;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v7.widget.AppCompatSeekBar;
import android.support.v7.widget.AppCompatTextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.widget.AppCompatSeekBar;
import androidx.appcompat.widget.AppCompatTextView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;

View file

@ -1,10 +1,10 @@
package code.name.monkey.retromusic.ui.fragments.player.material;
import android.os.Bundle;
import android.support.annotation.ColorInt;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v7.widget.Toolbar;
import androidx.annotation.ColorInt;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.widget.Toolbar;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
@ -28,8 +28,6 @@ public class MaterialFragment extends AbsPlayerFragment implements PlayerAlbumCo
@BindView(R.id.player_toolbar)
Toolbar toolbar;
@BindView(R.id.status_bar)
View statusBar;
private int lastColor;
private MaterialControlsFragment playbackControlsFragment;
@ -116,8 +114,6 @@ public class MaterialFragment extends AbsPlayerFragment implements PlayerAlbumCo
@Override
public void onViewCreated(@NonNull View view, Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
toggleStatusBar(statusBar);
setUpSubFragments();
setUpPlayerToolbar();
}

View file

@ -4,10 +4,10 @@ import android.animation.ArgbEvaluator;
import android.animation.ValueAnimator;
import android.graphics.drawable.GradientDrawable;
import android.os.Bundle;
import android.support.annotation.ColorInt;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v7.widget.Toolbar;
import androidx.annotation.ColorInt;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.widget.Toolbar;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
@ -31,10 +31,9 @@ public class PlayerFragment extends AbsPlayerFragment implements PlayerAlbumCove
@BindView(R.id.player_toolbar)
Toolbar toolbar;
@BindView(R.id.gradient_background)
View colorBackground;
@BindView(R.id.status_bar)
View statusBar;
private int lastColor;
private PlayerPlaybackControlsFragment playbackControlsFragment;
@ -143,8 +142,6 @@ public class PlayerFragment extends AbsPlayerFragment implements PlayerAlbumCove
@Override
public void onViewCreated(@NonNull View view, Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
toggleStatusBar(statusBar);
setUpSubFragments();
setUpPlayerToolbar();
}

View file

@ -5,10 +5,10 @@ import android.graphics.PorterDuff;
import android.graphics.drawable.ClipDrawable;
import android.graphics.drawable.LayerDrawable;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v7.widget.AppCompatSeekBar;
import android.support.v7.widget.AppCompatTextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.widget.AppCompatSeekBar;
import androidx.appcompat.widget.AppCompatTextView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
@ -43,26 +43,37 @@ public class PlayerPlaybackControlsFragment extends AbsPlayerControlsFragment {
@BindView(R.id.player_play_pause_button)
ImageButton playPauseFab;
@BindView(R.id.player_prev_button)
ImageButton prevButton;
@BindView(R.id.player_next_button)
ImageButton nextButton;
@BindView(R.id.player_repeat_button)
ImageButton repeatButton;
@BindView(R.id.player_shuffle_button)
ImageButton shuffleButton;
@BindView(R.id.player_progress_slider)
AppCompatSeekBar progressSlider;
@BindView(R.id.player_song_total_time)
TextView songTotalTime;
@BindView(R.id.player_song_current_progress)
TextView songCurrentProgress;
@BindView(R.id.title)
AppCompatTextView title;
@BindView(R.id.text)
TextView text;
@BindView(R.id.volume_fragment_container)
View mVolumeContainer;
private Unbinder unbinder;
private PlayPauseDrawable playerFabPlayPauseDrawable;
private int lastPlaybackControlsColor;

View file

@ -3,8 +3,6 @@ package code.name.monkey.retromusic.ui.fragments.player.plain;
import android.animation.ObjectAnimator;
import android.graphics.PorterDuff;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
@ -15,6 +13,8 @@ import android.widget.ImageButton;
import android.widget.SeekBar;
import android.widget.TextView;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import butterknife.BindView;
import butterknife.ButterKnife;
import butterknife.OnClick;
@ -42,20 +42,28 @@ public class PlainPlaybackControlsFragment extends AbsPlayerControlsFragment {
@BindView(R.id.player_play_pause_button)
ImageButton playPauseFab;
@BindView(R.id.player_prev_button)
ImageButton prevButton;
@BindView(R.id.player_next_button)
ImageButton nextButton;
@BindView(R.id.player_repeat_button)
ImageButton repeatButton;
@BindView(R.id.player_shuffle_button)
ImageButton shuffleButton;
@BindView(R.id.player_progress_slider)
SeekBar progressSlider;
@BindView(R.id.player_song_total_time)
TextView songTotalTime;
@BindView(R.id.player_song_current_progress)
TextView songCurrentProgress;
@BindView(R.id.volume_fragment_container)
View volumeContainer;
@ -285,11 +293,10 @@ public class PlainPlaybackControlsFragment extends AbsPlayerControlsFragment {
MaterialValueHelper.getPrimaryDisabledTextColor(getActivity(), false);
}
int finalColor = PreferenceUtil.getInstance(getContext()).getAdaptiveColor()
? dark : ThemeStore.accentColor(getContext());
int finalColor = PreferenceUtil.getInstance(getContext()).getAdaptiveColor() ? dark : ThemeStore.accentColor(getContext());
setProgressBarColor(dark);
setProgressBarColor(finalColor);
TintHelper.setTintAuto(playPauseFab, MaterialValueHelper.getPrimaryTextColor(getContext(), ColorUtil.isColorLight(finalColor)), false);
TintHelper.setTintAuto(playPauseFab, finalColor, true);
@ -298,15 +305,14 @@ public class PlainPlaybackControlsFragment extends AbsPlayerControlsFragment {
updatePrevNextColor();
}
public void setProgressBarColor(int newColor) {
private void setProgressBarColor(int newColor) {
TintHelper.setTintAuto(progressSlider, newColor, false);
}
private void setUpPlayPauseFab() {
playerFabPlayPauseDrawable = new PlayPauseDrawable(getActivity());
playPauseFab.setImageDrawable(
playerFabPlayPauseDrawable); // Note: set the drawable AFTER TintHelper.setTintAuto() was called
playPauseFab.setImageDrawable(playerFabPlayPauseDrawable); // Note: set the drawable AFTER TintHelper.setTintAuto() was called
//playPauseFab.setColorFilter(MaterialValueHelper.getPrimaryTextColor(getContext(), ColorUtil.isColorLight(fabColor)), PorterDuff.Mode.SRC_IN);
//playPauseFab.setOnClickListener(new PlayPauseButtonOnClickHandler());
playPauseFab.post(() -> {

View file

@ -1,9 +1,9 @@
package code.name.monkey.retromusic.ui.fragments.player.plain;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v7.widget.Toolbar;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.widget.Toolbar;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
@ -30,14 +30,15 @@ public class PlainPlayerFragment extends AbsPlayerFragment implements
@BindView(R.id.title)
TextView title;
@BindView(R.id.text)
TextView text;
@BindView(R.id.player_toolbar)
Toolbar toolbar;
@BindView(R.id.toolbar_container)
FrameLayout toolbarContainer;
@BindView(R.id.status_bar)
View statusBar;
private Unbinder unbinder;
private PlainPlaybackControlsFragment plainPlaybackControlsFragment;
@ -89,7 +90,7 @@ public class PlainPlayerFragment extends AbsPlayerFragment implements
@Override
public void onViewCreated(@NonNull View view, Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
toggleStatusBar(statusBar);
setUpSubFragments();
setUpPlayerToolbar();
title.setSelected(true);

View file

@ -2,8 +2,8 @@ package code.name.monkey.retromusic.ui.fragments.player.simple;
import android.graphics.PorterDuff;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;

View file

@ -1,9 +1,9 @@
package code.name.monkey.retromusic.ui.fragments.player.simple;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v7.widget.Toolbar;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.appcompat.widget.Toolbar;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
@ -28,8 +28,7 @@ public class SimplePlayerFragment extends AbsPlayerFragment implements
@BindView(R.id.player_toolbar)
Toolbar toolbar;
@BindView(R.id.status_bar)
View statusBar;
private Unbinder unbinder;
private SimplePlaybackControlsFragment simplePlaybackControlsFragment;
private int lastColor;
@ -53,7 +52,6 @@ public class SimplePlayerFragment extends AbsPlayerFragment implements
@Override
public void onViewCreated(@NonNull View view, Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
toggleStatusBar(statusBar);
setUpSubFragments();
setUpPlayerToolbar();
}

View file

@ -3,17 +3,19 @@ package code.name.monkey.retromusic.ui.fragments.settings;
import android.graphics.Color;
import android.graphics.drawable.ColorDrawable;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v4.app.DialogFragment;
import android.support.v7.preference.ListPreference;
import android.support.v7.preference.Preference;
import android.support.v7.preference.PreferenceManager;
import android.view.View;
import android.widget.Toast;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.fragment.app.DialogFragment;
import androidx.preference.ListPreference;
import androidx.preference.Preference;
import androidx.preference.PreferenceManager;
import code.name.monkey.appthemehelper.ThemeStore;
import code.name.monkey.appthemehelper.common.prefs.supportv7.ATEPreferenceFragmentCompat;
import code.name.monkey.retromusic.preferences.AlbumCoverStylePreference;
import code.name.monkey.retromusic.preferences.AlbumCoverStylePreferenceDialog;
import code.name.monkey.retromusic.preferences.BlacklistPreference;
import code.name.monkey.retromusic.preferences.BlacklistPreferenceDialog;
import code.name.monkey.retromusic.preferences.NowPlayingScreenPreference;
@ -25,7 +27,7 @@ import code.name.monkey.retromusic.util.NavigationUtil;
*/
public abstract class AbsSettingsFragment extends ATEPreferenceFragmentCompat {
protected void showProToastAndNavigate(String message) {
void showProToastAndNavigate(String message) {
Toast.makeText(getContext(), message + " is Pro version feature.", Toast.LENGTH_SHORT).show();
//noinspection ConstantConditions
NavigationUtil.goToProVersion(getActivity());
@ -37,7 +39,7 @@ public abstract class AbsSettingsFragment extends ATEPreferenceFragmentCompat {
.getString(preference.getKey(), ""));
}
protected void setSummary(Preference preference, @NonNull Object value) {
void setSummary(Preference preference, @NonNull Object value) {
String stringValue = value.toString();
if (preference instanceof ListPreference) {
ListPreference listPreference = (ListPreference) preference;
@ -68,6 +70,8 @@ public abstract class AbsSettingsFragment extends ATEPreferenceFragmentCompat {
return NowPlayingScreenPreferenceDialog.newInstance();
} else if (preference instanceof BlacklistPreference) {
return BlacklistPreferenceDialog.newInstance();
} else if (preference instanceof AlbumCoverStylePreference) {
return AlbumCoverStylePreferenceDialog.newInstance();
}
return super.onCreatePreferenceDialog(preference);
}

View file

@ -5,7 +5,7 @@ import android.content.pm.PackageManager;
import android.content.pm.ResolveInfo;
import android.media.audiofx.AudioEffect;
import android.os.Bundle;
import android.support.v7.preference.Preference;
import androidx.preference.Preference;
import code.name.monkey.retromusic.R;
import code.name.monkey.retromusic.util.NavigationUtil;

View file

@ -1,7 +1,7 @@
package code.name.monkey.retromusic.ui.fragments.settings;
import android.os.Bundle;
import android.support.v7.preference.Preference;
import androidx.preference.Preference;
import code.name.monkey.retromusic.R;

View file

@ -2,16 +2,16 @@ package code.name.monkey.retromusic.ui.fragments.settings;
import android.graphics.PorterDuff;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.annotation.StringRes;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import java.util.List;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.annotation.StringRes;
import androidx.fragment.app.Fragment;
import butterknife.BindView;
import butterknife.BindViews;
import butterknife.ButterKnife;
@ -24,17 +24,19 @@ import code.name.monkey.retromusic.views.IconImageView;
public class MainSettingsFragment extends Fragment {
Unbinder unbinder;
@BindViews({R.id.general_settings_icon, R.id.audio_settings_icon,
R.id.now_playing_settings_icon, R.id.image_settings_icon,
R.id.notification_settings_icon, R.id.other_settings_icon})
R.id.now_playing_settings_icon, R.id.personalize_settings_icon,
R.id.image_settings_icon, R.id.notification_settings_icon, R.id.other_settings_icon})
List<IconImageView> icons;
ButterKnife.Action<View> apply = (view, index) -> {
@BindView(R.id.container)
ViewGroup container;
private Unbinder unbinder;
private ButterKnife.Action<View> apply = (view, index) -> {
//noinspection ConstantConditions
((IconImageView) view).setColorFilter(ThemeStore.accentColor(getContext()), PorterDuff.Mode.SRC_IN);
};
@BindView(R.id.container)
ViewGroup container;
@Nullable
@Override
@ -54,7 +56,7 @@ public class MainSettingsFragment extends Fragment {
}
@OnClick({R.id.general_settings, R.id.audio_settings, R.id.now_playing_settings,
R.id.image_settings, R.id.notification_settings, R.id.other_settings})
R.id.image_settings, R.id.personalize_settings, R.id.notification_settings, R.id.other_settings})
public void onViewClicked(View view) {
switch (view.getId()) {
case R.id.general_settings:
@ -64,7 +66,10 @@ public class MainSettingsFragment extends Fragment {
inflateFragment(new AudioSettings(), R.string.pref_header_audio);
break;
case R.id.now_playing_settings:
inflateFragment(new NowPlayingSettingsFragment(), R.string.personalize);
inflateFragment(new NowPlayingSettingsFragment(), R.string.now_playing);
break;
case R.id.personalize_settings:
inflateFragment(new PersonaizeSettingsFragment(), R.string.personalize);
break;
case R.id.image_settings:
inflateFragment(new ImageSettingFragment(), R.string.pref_header_images);

View file

@ -2,7 +2,7 @@ package code.name.monkey.retromusic.ui.fragments.settings;
import android.os.Build;
import android.os.Bundle;
import android.support.v7.preference.TwoStatePreference;
import androidx.preference.TwoStatePreference;
import code.name.monkey.retromusic.R;
import code.name.monkey.retromusic.helper.MusicPlayerRemote;

View file

@ -2,10 +2,10 @@ package code.name.monkey.retromusic.ui.fragments.settings;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.support.v7.preference.TwoStatePreference;
import android.view.View;
import androidx.annotation.NonNull;
import androidx.preference.TwoStatePreference;
import code.name.monkey.retromusic.R;
import code.name.monkey.retromusic.RetroApplication;
import code.name.monkey.retromusic.util.PreferenceUtil;
@ -21,47 +21,27 @@ public class NowPlayingSettingsFragment extends AbsSettingsFragment implements
@Override
public void invalidateSettings() {
updateNowPlayingScreenSummary();
updateAlbumCoverStyleSummary();
final TwoStatePreference cornerWindow = (TwoStatePreference) findPreference("corner_window");
cornerWindow.setOnPreferenceChangeListener((preference, newValue) -> {
if ((Boolean) newValue && !RetroApplication.isProVersion()) {
showProToastAndNavigate(getActivity().getString(R.string.pref_title_round_corners));
return false;
}
getActivity().recreate();
return true;
});
final TwoStatePreference carouselEffect = (TwoStatePreference) findPreference(
"carousel_effect");
final TwoStatePreference carouselEffect = (TwoStatePreference) findPreference("carousel_effect");
carouselEffect.setOnPreferenceChangeListener((preference, newValue) -> {
if ((Boolean) newValue && !RetroApplication.isProVersion()) {
showProToastAndNavigate(
getActivity().getString(R.string.pref_title_toggle_carousel_effect));
showProToastAndNavigate(getActivity().getString(R.string.pref_title_toggle_carousel_effect));
return false;
}
return true;
});
final TwoStatePreference toggleFullScreen = (TwoStatePreference) findPreference(
"toggle_full_screen");
toggleFullScreen.setOnPreferenceChangeListener((preference, newValue) -> {
getActivity().recreate();
return true;
});
}
@Override
public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
addPreferencesFromResource(R.xml.pref_now_playing_screen);
addPreferencesFromResource(R.xml.pref_ui);
addPreferencesFromResource(R.xml.pref_window);
addPreferencesFromResource(R.xml.pref_lockscreen);
}
private void updateNowPlayingScreenSummary() {
//noinspection ConstantConditions
findPreference("now_playing_screen_id")
.setSummary(PreferenceUtil.getInstance(getActivity()).getNowPlayingScreen().titleRes);
findPreference("now_playing_screen_id").setSummary(PreferenceUtil.getInstance(getActivity()).getNowPlayingScreen().titleRes);
}
@Override
@ -84,10 +64,17 @@ public class NowPlayingSettingsFragment extends AbsSettingsFragment implements
case PreferenceUtil.NOW_PLAYING_SCREEN_ID:
updateNowPlayingScreenSummary();
break;
case PreferenceUtil.ALBUM_COVER_STYLE:
updateAlbumCoverStyleSummary();
break;
case PreferenceUtil.CIRCULAR_ALBUM_ART:
case PreferenceUtil.CAROUSEL_EFFECT:
invalidateSettings();
break;
}
}
private void updateAlbumCoverStyleSummary() {
findPreference("album_cover_style_id").setSummary(PreferenceUtil.getInstance(getActivity()).getAlbumCoverStyle().titleRes);
}
}

View file

@ -0,0 +1,65 @@
package code.name.monkey.retromusic.ui.fragments.settings;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.view.View;
import androidx.annotation.NonNull;
import androidx.preference.TwoStatePreference;
import code.name.monkey.retromusic.R;
import code.name.monkey.retromusic.RetroApplication;
import code.name.monkey.retromusic.util.PreferenceUtil;
public class PersonaizeSettingsFragment extends AbsSettingsFragment implements SharedPreferences.OnSharedPreferenceChangeListener {
@SuppressWarnings("ConstantConditions")
@Override
public void invalidateSettings() {
final TwoStatePreference cornerWindow = (TwoStatePreference) findPreference("corner_window");
cornerWindow.setOnPreferenceChangeListener((preference, newValue) -> {
if ((Boolean) newValue && !RetroApplication.isProVersion()) {
showProToastAndNavigate(getActivity().getString(R.string.pref_title_round_corners));
return false;
}
getActivity().recreate();
return true;
});
final TwoStatePreference toggleFullScreen = (TwoStatePreference) findPreference("toggle_full_screen");
toggleFullScreen.setOnPreferenceChangeListener((preference, newValue) -> {
getActivity().recreate();
return true;
});
}
@Override
public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
addPreferencesFromResource(R.xml.pref_ui);
addPreferencesFromResource(R.xml.pref_window);
addPreferencesFromResource(R.xml.pref_lockscreen);
}
@Override
public void onViewCreated(@NonNull View view, Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
//noinspection ConstantConditions
PreferenceUtil.getInstance(getContext()).registerOnSharedPreferenceChangedListener(this);
}
@Override
public void onDestroyView() {
super.onDestroyView();
//noinspection ConstantConditions
PreferenceUtil.getInstance(getContext()).unregisterOnSharedPreferenceChangedListener(this);
}
@Override
public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String key) {
switch (key) {
case PreferenceUtil.CAROUSEL_EFFECT:
invalidateSettings();
break;
}
}
}

View file

@ -3,9 +3,9 @@ package code.name.monkey.retromusic.ui.fragments.settings;
import android.graphics.Color;
import android.os.Build;
import android.os.Bundle;
import android.support.v4.content.ContextCompat;
import android.support.v7.preference.Preference;
import android.support.v7.preference.TwoStatePreference;
import androidx.core.content.ContextCompat;
import androidx.preference.Preference;
import androidx.preference.TwoStatePreference;
import com.afollestad.materialdialogs.color.ColorChooserDialog;