package com.naman14.timber.nowplaying;
import android.graphics.Color;
import android.graphics.PorterDuff;
import android.graphics.PorterDuffColorFilter;
import android.os.Bundle;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.SeekBar;
import android.widget.TextView;
import com.naman14.timber.MusicPlayer;
import com.naman14.timber.R;
import com.naman14.timber.dataloaders.SongLoader;
import com.naman14.timber.models.Song;
import com.naman14.timber.utils.TimberUtils;
import com.naman14.timber.widgets.CircleImageView;
import net.steamcrafted.materialiconlib.MaterialDrawableBuilder;
/**
* Created by naman on 22/02/17.
*/
public class Timber6 extends BaseNowplayingFragment {
TextView nextSong;
CircleImageView nextArt;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
View rootView = inflater.inflate(
R.layout.fragment_timber6, container, false);
setMusicStateListener();
setSongDetails(rootView);
initGestures(rootView.findViewById(R.id.album_art));
((SeekBar) rootView.findViewById(R.id.song_progress)).getProgressDrawable().setColorFilter(new PorterDuffColorFilter(Color.WHITE, PorterDuff.Mode.MULTIPLY));
((SeekBar) rootView.findViewById(R.id.song_progress)).getThumb().setColorFilter(new PorterDuffColorFilter(Color.WHITE, PorterDuff.Mode.SRC_ATOP));
nextSong = (TextView) rootView.findViewById(R.id.title_next);
nextArt = (CircleImageView) rootView.findViewById(R.id.album_art_next);
rootView.findViewById(R.id.nextView).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
MusicPlayer.setQueuePosition(MusicPlayer.getQueuePosition() + 1);
}
});
return rootView;
}
@Override
public void updateShuffleState() {
if (shuffle != null && getActivity() != null) {
MaterialDrawableBuilder builder = MaterialDrawableBuilder.with(getActivity())
.setIcon(MaterialDrawableBuilder.IconValue.SHUFFLE)
.setSizeDp(30);
if (MusicPlayer.getShuffleMode() == 0) {
builder.setColor(Color.WHITE);
} else builder.setColor(accentColor);
shuffle.setImageDrawable(builder.build());
shuffle.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
MusicPlayer.cycleShuffle();
updateShuffleState();
updateRepeatState();
}
});
}
}
@Override
public void updateRepeatState() {
if (repeat != null && getActivity() != null) {
MaterialDrawableBuilder builder = MaterialDrawableBuilder.with(getActivity())
.setIcon(MaterialDrawableBuilder.IconValue.REPEAT)
.setSizeDp(30);
if (MusicPlayer.getRepeatMode() == 0) {
builder.setColor(Color.WHITE);
} else builder.setColor(accentColor);
repeat.setImageDrawable(builder.build());
repeat.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
MusicPlayer.cycleRepeat();
updateRepeatState();
updateShuffleState();
}
});
}
}
@Override
public void onMetaChanged() {
super.onMetaChanged();
if (getActivity() != null) {
long nextId = MusicPlayer.getNextAudioId();
Song next = SongLoader.getSongForID(getActivity(), nextId);
nextSong.setText(next.title);
nextArt.setImageURI(TimberUtils.getAlbumArtUri(next.albumId));
}
}
}