diff --git a/Graphics/Gloss/Raster/Field.hs b/Graphics/Gloss/Raster/Field.hs
--- a/Graphics/Gloss/Raster/Field.hs
+++ b/Graphics/Gloss/Raster/Field.hs
@@ -153,12 +153,17 @@
      else  do (winSizeX, winSizeY) <- sizeOfDisplay display
               winSizeX `seq` winSizeY `seq`
                 play display black stepRate
-                   initWorld
-                   (\world ->
-                      world `seq`
-                      makePicture winSizeX winSizeY zoomX zoomY (makePixel world))
-                   handleEvent
-                   stepWorld
+                   ((winSizeX, winSizeY), initWorld)
+                   (\((winSizeX', winSizeY'), world) ->
+                      winSizeX' `seq` winSizeY' `seq` world `seq`
+                      makePicture winSizeX' winSizeY' zoomX zoomY (makePixel world))
+                   (\event (winSize, world) ->
+                      let winSize' =
+                            case event of
+                              EventResize dims -> dims
+                              _                -> winSize
+                      in (winSize', handleEvent event world))
+                   (fmap . stepWorld)
 {-# INLINE playField #-}
 
 
diff --git a/gloss-raster.cabal b/gloss-raster.cabal
--- a/gloss-raster.cabal
+++ b/gloss-raster.cabal
@@ -1,5 +1,5 @@
 Name:                gloss-raster
-Version:             1.12.0.0
+Version:             1.13.0.1
 License:             MIT
 License-file:        LICENSE
 Author:              Ben Lippmeier
@@ -36,8 +36,8 @@
           base                          >= 4.8 && < 4.12
         , containers                    == 0.5.*
         , ghc-prim
-        , gloss                         == 1.12.*
-        , gloss-rendering               == 1.12.*
+        , gloss                         == 1.13.*
+        , gloss-rendering               == 1.13.*
         , repa                          == 3.4.*
 
   ghc-options:
