       (if @(:shift-mode controller)
         ;; Trying to scroll back to older effects
         (let [[offset max-offset room] (find-effect-offset-range controller)
-              new-offset (+ offset room)]
-          (reset! (:effect-offset controller) (min max-offset new-offset)))
+              new-offset (min max-offset (+ offset room))]
+          (when (not= offset new-offset)
+            (reset! (:effect-offset controller) new-offset)
+            (add-button-held-feedback-overlay controller (:left-arrow control-buttons))))
 
         ;; Trying to scroll left in cue grid
         (let [[x y] @(:origin controller)]

    (when (pos? (:velocity message))
      (if @(:shift-mode controller)
        ;; Jump forward to newest effect
        (reset! (:effect-offset controller) 0)

        ;; Trying to scroll down in cue grid
        (let [[x y] @(:origin controller)]

      (if @(:shift-mode controller)
        ;; Trying to scroll forward to newer effects
        (let [[offset max-offset room] (find-effect-offset-range controller)
              new-offset (max 0 (- offset room))]
          (when (not= offset new-offset)
            (reset! (:effect-offset controller) new-offset)
            (add-button-held-feedback-overlay controller (:right-arrow control-buttons))))

        ;; Trying to scroll right in cue grid
        (let [[x y] @(:origin controller)]
