diff --git a/ChangeLog.md b/ChangeLog.md
--- a/ChangeLog.md
+++ b/ChangeLog.md
@@ -1,5 +1,10 @@
 # Revision history for reflex-vty
 
+## 0.6.2.0
+
+* Relax bounds for GHC 9.12.2 by @plt-amy in https://github.com/reflex-frp/reflex-vty/pull/97
+* scrollable: promptly use `displayHight` on scroll by @Rosuavio in https://github.com/reflex-frp/reflex-vty/pull/94
+
 ## 0.6.1.1
 
 * Extend version bounds
diff --git a/reflex-vty.cabal b/reflex-vty.cabal
--- a/reflex-vty.cabal
+++ b/reflex-vty.cabal
@@ -1,5 +1,5 @@
 name: reflex-vty
-version: 0.6.1.1
+version: 0.6.2.0
 synopsis: Reflex FRP host and widgets for VTY applications
 description:
   Build terminal applications using functional reactive programming (FRP) with Reflex FRP (<https://reflex-frp.org>).
@@ -18,7 +18,7 @@
   ChangeLog.md
 extra-doc-files: doc/tasks.png
 tested-with:
-  GHC ==8.10.7 || ==9.4.5 || ==9.6.1 || ==9.8.4
+  GHC ==8.10.7 || ==9.4.5 || ==9.6.1 || ==9.8.4 || ==9.10.1 || == 9.12.2
 
 source-repository head
   type: git
@@ -40,9 +40,9 @@
                  , Reflex.Spider.Orphans
                  , Control.Monad.NodeId
   build-depends:
-    base >= 4.10.0 && < 4.20,
+    base >= 4.10.0 && < 4.22,
     bimap >= 0.3.3 && < 0.6,
-    containers >= 0.5.0 && < 0.7,
+    containers >= 0.5.0 && < 0.8,
     mtl >= 2.2.2 && < 2.4,
     transformers >= 0.5.5 && < 0.7,
     stm >= 2.4 && < 2.6,
@@ -57,7 +57,7 @@
     primitive >= 0.6.3 && < 0.10,
     ref-tf >= 0.4.0 && < 0.6,
     reflex >= 0.9.2 && < 1,
-    time >= 1.8.0 && < 1.13,
+    time >= 1.8.0 && < 1.15,
     vty >= 6.0 && < 6.3,
     vty-crossplatform >= 0.1 && < 0.5
   hs-source-dirs: src
diff --git a/src/Reflex/Vty/Widget/Scroll.hs b/src/Reflex/Vty/Widget/Scroll.hs
--- a/src/Reflex/Vty/Widget/Scroll.hs
+++ b/src/Reflex/Vty/Widget/Scroll.hs
@@ -72,12 +72,12 @@
     ((update, a), imgs) <- captureImages $ localInput (translateMouseEvents translation) $ mkImg
     let sz = foldl' max 0 . fmap V.imageHeight <$> imgs
     lineIndex <- foldDynMaybe ($) startingPos $ leftmost
-      [ (\((totalLines, h), d) sp -> Just $ scrollByLines sp totalLines h d) <$> attach ((,) <$> sz <*> current dh) requestedScroll
-      , (\((totalLines, h), newScrollPosition) _ -> Just $ case newScrollPosition of
+      [ (\(totalLines, (h, d)) sp -> Just $ scrollByLines sp totalLines h d) <$> attach sz (attachPromptlyDyn dh requestedScroll)
+      , (\(totalLines, (h, newScrollPosition)) _ -> Just $ case newScrollPosition of
           ScrollPos_Line n -> scrollToLine totalLines h n
           ScrollPos_Top -> ScrollPos_Top
           ScrollPos_Bottom -> ScrollPos_Bottom
-        ) <$> attach ((,) <$> sz <*> current dh) scrollTo
+        ) <$> attach sz (attachPromptlyDyn dh scrollTo)
       , (\cfg sp -> case cfg of
           Just ScrollToBottom_Always -> case sp of
             ScrollPos_Bottom -> Nothing
