From 6b3bf39c74b99074df03206c1e32e61302ec2f42 Mon Sep 17 00:00:00 2001 From: Dan Mason Date: Wed, 9 Feb 2022 19:01:19 +0000 Subject: [PATCH] Only handle state of `loop` within Java --- java-src/cljukebox/AudioTrackScheduler.java | 4 ++-- src/cljukebox/handlers/loop.clj | 7 ++----- 2 files changed, 4 insertions(+), 7 deletions(-) diff --git a/java-src/cljukebox/AudioTrackScheduler.java b/java-src/cljukebox/AudioTrackScheduler.java index b2ac1e0..1dc6aa4 100644 --- a/java-src/cljukebox/AudioTrackScheduler.java +++ b/java-src/cljukebox/AudioTrackScheduler.java @@ -51,8 +51,8 @@ public boolean skip() { } } - public boolean setLoop(boolean shouldLoop) { - this.loop = shouldLoop; + public boolean switchLoop() { + loop = !loop; return loop; } diff --git a/src/cljukebox/handlers/loop.clj b/src/cljukebox/handlers/loop.clj index 05fb889..22d3fd6 100644 --- a/src/cljukebox/handlers/loop.clj +++ b/src/cljukebox/handlers/loop.clj @@ -2,12 +2,9 @@ (:require [cljukebox.player :as player] [cljukebox.util :as util])) -(def !loop (atom false)) - (defn loop-scheduler [{:keys [message-channel]} {:keys [scheduler]}] - (let [should-loop (swap! !loop not)] - (.setLoop scheduler should-loop) - (if should-loop + (let [loop-active? (.switchLoop scheduler)] + (if loop-active? (util/send-message message-channel ":repeat: **Loop enabled!**") (util/send-message message-channel ":repeat: **Loop disabled!**"))))