Skip to content

The pollEvents function doesn't seem to work anymore! #263

@sdzx-1

Description

@sdzx-1
{-# LANGUAGE OverloadedStrings #-}
module Main where

import SDL
import Linear (V4(..))
import Control.Monad (unless)

main :: IO ()
main = do
  initializeAll
  window <- createWindow "My SDL Application" defaultWindow
  renderer <- createRenderer window (-1) defaultRenderer
  appLoop renderer
  destroyWindow window

appLoop :: Renderer -> IO ()
appLoop renderer = do
  events <- pollEvents
  print events  -- Here it keeps outputting [] even if I press the keyboard
  let eventIsQPress event =
        case eventPayload event of
          KeyboardEvent keyboardEvent ->
            keyboardEventKeyMotion keyboardEvent == Pressed &&
            keysymKeycode (keyboardEventKeysym keyboardEvent) == KeycodeQ
          _ -> False
      qPressed = any eventIsQPress events
  rendererDrawColor renderer $= V4 0 0 255 255
  clear renderer
  present renderer
  unless qPressed (appLoop renderer)

sdl2 version

Yampa-Front git:(master) ✗ cabal build -v3 | grep sdl2
  sdl2-2.5.3.2-9b099619e5c5c8370254862105ad69cf154d7cf6e4baeb0b9983c7c55ab3c623
  sdl2-gfx-0.3.0.0-11abeb949b1f11da668c5899e3366da31ba7ecdd0844cc1f9ea315feb160c91a
Installed sdl2-2.5.3.2 (sdl2-2.5.3.2-9b099619e5c5c8370254862105ad69cf154d7cf6e4baeb0b9983c7c55ab3c623)
Installed sdl2-gfx-0.3.0.0 (sdl2-gfx-0.3.0.0-11abeb949b1f11da668c5899e3366da31ba7ecdd0844cc1f9ea315feb160c91a)
  sdl2-2.5.3.2-9b099619e5c5c8370254862105ad69cf154d7cf6e4baeb0b9983c7c55ab3c623Yampa-Front git:(master) ✗ ghc --version
The Glorious Glasgow Haskell Compilation System, version 9.2.2

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions