diff --git a/app/src/main/java/com/github/libretube/util/PlayingQueue.kt b/app/src/main/java/com/github/libretube/util/PlayingQueue.kt index 836a2bb71..9bc407237 100644 --- a/app/src/main/java/com/github/libretube/util/PlayingQueue.kt +++ b/app/src/main/java/com/github/libretube/util/PlayingQueue.kt @@ -42,18 +42,17 @@ object PlayingQueue { ) } + // return the next item, or if repeating enabled, the first one of the queue fun getNext(): String? = queue.getOrNull(currentIndex() + 1)?.url?.toID() ?: queue.firstOrNull()?.url?.toID()?.takeIf { repeatQueue } + // return the previous item, or if repeating enabled, the last one of the queue fun getPrev(): String? = queue.getOrNull(currentIndex() - 1)?.url?.toID() + ?: queue.lastOrNull()?.url?.toID()?.takeIf { repeatQueue } - fun hasPrev(): Boolean { - return currentIndex() > 0 - } + fun hasPrev() = getPrev() != null - fun hasNext(): Boolean { - return currentIndex() + 1 < size() - } + fun hasNext() = getNext() != null fun updateCurrent(streamItem: StreamItem) { currentStream = streamItem