aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author3gg <3gg@shellblade.net>2023-10-04 09:19:29 -0700
committer3gg <3gg@shellblade.net>2023-10-04 09:19:29 -0700
commitb4321a949f473a5877e0084c6845704a924f07a4 (patch)
tree51aa051f208dd3664255690aab9a4d59011aaa31
parenta812e572bb8951bd5b9ebc575b2805925823c7ea (diff)
Fix resize hang.
-rw-r--r--Demos/Pong/Main.hs1
-rw-r--r--Spear/Window.hs2
2 files changed, 1 insertions, 2 deletions
diff --git a/Demos/Pong/Main.hs b/Demos/Pong/Main.hs
index 0237a26..26ceefa 100644
--- a/Demos/Pong/Main.hs
+++ b/Demos/Pong/Main.hs
@@ -98,7 +98,6 @@ renderGO go = do
98 ,vec2 xmax ymax 98 ,vec2 xmax ymax
99 ,vec2 xmin ymax)] 99 ,vec2 xmin ymax)]
100 100
101-- TODO: Fix the resize hang.
102resize :: WindowEvent -> Game GameState () 101resize :: WindowEvent -> Game GameState ()
103resize (ResizeEvent w h) = 102resize (ResizeEvent w h) =
104 let r = fromIntegral w / fromIntegral h 103 let r = fromIntegral w / fromIntegral h
diff --git a/Spear/Window.hs b/Spear/Window.hs
index 3cdc5f5..aafcb59 100644
--- a/Spear/Window.hs
+++ b/Spear/Window.hs
@@ -178,7 +178,7 @@ onWindowClose closeRequest window = putMVar closeRequest True
178-- the last in a poll can be ignored, we just replace the contents of the mvar 178-- the last in a poll can be ignored, we just replace the contents of the mvar
179-- here instead of adding the event to the list. 179-- here instead of adding the event to the list.
180onResize :: MVar [WindowEvent] -> GLFW.WindowSizeCallback 180onResize :: MVar [WindowEvent] -> GLFW.WindowSizeCallback
181onResize windowEvents window w h = putMVar windowEvents [ResizeEvent w h] 181onResize windowEvents window w h = modifyMVar_ windowEvents (return <$> const [ResizeEvent w h])
182 182
183onKey :: MVar [InputEvent] -> GLFW.KeyCallback 183onKey :: MVar [InputEvent] -> GLFW.KeyCallback
184onKey events window key _ GLFW.KeyState'Pressed _ = addEvent events $ KeyDown (fromGLFWkey key) 184onKey events window key _ GLFW.KeyState'Pressed _ = addEvent events $ KeyDown (fromGLFWkey key)