diff --git a/ghcjs-dom.cabal b/ghcjs-dom.cabal
--- a/ghcjs-dom.cabal
+++ b/ghcjs-dom.cabal
@@ -1,5 +1,5 @@
 name: ghcjs-dom
-version: 0.0.8
+version: 0.0.9
 cabal-version: >=1.10
 build-type: Simple
 license: MIT
diff --git a/src/GHCJS/DOM/EventTargetClosures.hs b/src/GHCJS/DOM/EventTargetClosures.hs
--- a/src/GHCJS/DOM/EventTargetClosures.hs
+++ b/src/GHCJS/DOM/EventTargetClosures.hs
@@ -7,7 +7,6 @@
 import GHCJS.Types
 import GHCJS.Foreign
 import GHCJS.DOM.Types
-import Control.Applicative ((<$>))
 
 #ifdef ghcjs_HOST_OS
 foreign import javascript unsafe
@@ -30,8 +29,8 @@
 #endif
 
 eventTargetAddEventListener ::
-                         (GObjectClass self, IsEvent event) =>
-                           self -> String -> Bool -> (self -> event -> IO ()) -> IO (IO ())
+                         (GObjectClass self, ToJSString eventName, IsEvent event) =>
+                           self -> eventName -> Bool -> (self -> event -> IO ()) -> IO (IO ())
 eventTargetAddEventListener self eventName bubble user = do
     callback <- syncCallback1 AlwaysRetain True $ \e -> user self (unsafeCastGObject $ GObject e)
     ghcjs_dom_event_target_add_event_listener
