Add experimental bottom sheet player

This commit is contained in:
Antonio Cappiello 2020-12-05 21:31:12 +01:00
parent 9af0afa441
commit f837bb14e2
65 changed files with 1570 additions and 547 deletions

View file

@ -0,0 +1,31 @@
package com.cappielloantonio.play.viewmodel;
import android.app.Application;
import androidx.annotation.NonNull;
import androidx.lifecycle.AndroidViewModel;
import com.cappielloantonio.play.repository.QueueRepository;
public class MainViewModel extends AndroidViewModel {
private static final String TAG = "SearchViewModel";
private QueueRepository queueRepository;
public MainViewModel(@NonNull Application application) {
super(application);
queueRepository = new QueueRepository(application);
}
public boolean isQueueLoaded() {
if(queueRepository.count() == 0)
return false;
return true;
}
public void deleteQueue(){
queueRepository.deleteAll();
}
}

View file

@ -0,0 +1,48 @@
package com.cappielloantonio.play.viewmodel;
import android.app.Application;
import androidx.annotation.NonNull;
import androidx.lifecycle.AndroidViewModel;
import androidx.lifecycle.LiveData;
import androidx.lifecycle.MutableLiveData;
import com.cappielloantonio.play.model.Song;
import com.cappielloantonio.play.repository.QueueRepository;
import java.util.List;
public class PlayerBottomSheetViewModel extends AndroidViewModel {
private static final String TAG = "HomeViewModel";
private QueueRepository queueRepository;
private LiveData<List<Song>> queueSong;
private LiveData<Song> nowPlayingSong = new MutableLiveData<>();
public PlayerBottomSheetViewModel(@NonNull Application application) {
super(application);
queueRepository = new QueueRepository(application);
queueSong = queueRepository.getLiveQueue();
}
public LiveData<List<Song>> getQueueSong() {
return queueSong;
}
public LiveData<Song> getNowPlayingSong() {
return nowPlayingSong;
}
public LiveData<Song> setNowPlayingSong(int position) {
Song song = queueRepository.getSongs().get(position);
if(song != null) {
nowPlayingSong = new MutableLiveData<>(song);
}
return nowPlayingSong;
}
}