diff --git a/Graphics/UI/Gtk/WebKit/Download.chs b/Graphics/UI/Gtk/WebKit/Download.chs
--- a/Graphics/UI/Gtk/WebKit/Download.chs
+++ b/Graphics/UI/Gtk/WebKit/Download.chs
@@ -25,6 +25,11 @@
 -----------------------------------------------------------------------------
 
 module Graphics.UI.Gtk.WebKit.Download (
+-- * Description
+-- | WebKitDownload carries information about a download request, including a WebKitNetworkRequest
+-- object. The application may use this object to control the download process, or to simply figure out
+-- what is to be downloaded, and do it itself.
+
 -- * Types
   Download,
   DownloadClass,
diff --git a/Graphics/UI/Gtk/WebKit/GeolocationPolicyDecision.chs b/Graphics/UI/Gtk/WebKit/GeolocationPolicyDecision.chs
--- a/Graphics/UI/Gtk/WebKit/GeolocationPolicyDecision.chs
+++ b/Graphics/UI/Gtk/WebKit/GeolocationPolicyDecision.chs
@@ -25,7 +25,7 @@
 
 module Graphics.UI.Gtk.WebKit.GeolocationPolicyDecision (
 #if WEBKIT_CHECK_VERSION (1,1,23)
--- * Details
+-- * Description
 -- | WebKitGeolocationPolicyDecision objects are given to the application when
 -- geolocation-policy-decision-requested signal is emitted. The application uses it to tell the engine
 -- whether it wants to allow or deny geolocation for a given frame.
diff --git a/Graphics/UI/Gtk/WebKit/HitTestResult.chs b/Graphics/UI/Gtk/WebKit/HitTestResult.chs
--- a/Graphics/UI/Gtk/WebKit/HitTestResult.chs
+++ b/Graphics/UI/Gtk/WebKit/HitTestResult.chs
@@ -24,6 +24,9 @@
 -----------------------------------------------------------------------------
 
 module Graphics.UI.Gtk.WebKit.HitTestResult (
+-- * Description
+-- | This class holds context information about the coordinates specified by a GDK event.
+
 -- * Types
   HitTestResult,
   HitTestResultClass,
diff --git a/Graphics/UI/Gtk/WebKit/NetworkRequest.chs b/Graphics/UI/Gtk/WebKit/NetworkRequest.chs
--- a/Graphics/UI/Gtk/WebKit/NetworkRequest.chs
+++ b/Graphics/UI/Gtk/WebKit/NetworkRequest.chs
@@ -24,6 +24,12 @@
 -----------------------------------------------------------------------------
 
 module Graphics.UI.Gtk.WebKit.NetworkRequest (
+-- * Description
+-- | This class represents the network related aspects of a navigation request. It is used whenever
+-- WebKit wants to provide information about a request that will be sent, or has been sent. Inside it
+-- you can find the URI of the request, and, for valid URIs, a SoupMessage object, which provides
+-- access to further information such as headers.
+
 -- * Types
   NetworkRequest,
   NetworkRequestClass,
diff --git a/Graphics/UI/Gtk/WebKit/NetworkResponse.chs b/Graphics/UI/Gtk/WebKit/NetworkResponse.chs
--- a/Graphics/UI/Gtk/WebKit/NetworkResponse.chs
+++ b/Graphics/UI/Gtk/WebKit/NetworkResponse.chs
@@ -24,6 +24,9 @@
 -----------------------------------------------------------------------------
 
 module Graphics.UI.Gtk.WebKit.NetworkResponse (
+-- * Description
+-- | This class represents the network related aspects of a navigation response.
+
 -- * Types
   NetworkResponse,
   NetworkResponseClass,
diff --git a/Graphics/UI/Gtk/WebKit/SecurityOrigin.chs b/Graphics/UI/Gtk/WebKit/SecurityOrigin.chs
--- a/Graphics/UI/Gtk/WebKit/SecurityOrigin.chs
+++ b/Graphics/UI/Gtk/WebKit/SecurityOrigin.chs
@@ -24,6 +24,17 @@
 -----------------------------------------------------------------------------
 
 module Graphics.UI.Gtk.WebKit.SecurityOrigin (
+-- * Desciption
+-- | WebKitSecurityOrigin is a representation of a security domain defined by web sites. An origin
+-- consists of a host name, a protocol, and a port number. Web sites with the same security origin can
+-- access each other's resources for client-side scripting or database access.
+-- 
+-- Use 'webFrameGetSecurityOrigin' to get the security origin of a WebKitWebFrame.
+-- 
+-- Database quotas and usages are also defined per security origin. The cumulative disk usage of an
+-- origin's databases may be retrieved with 'securityOriginGetWebDatabaseUsage'. An origin's
+-- quota can be adjusted with 'securityOriginSetWebDatabaseQuota'.
+
 -- * Types
   SecurityOrigin,
   SecurityOriginClass,
diff --git a/Graphics/UI/Gtk/WebKit/Signals.chs b/Graphics/UI/Gtk/WebKit/Signals.chs
--- a/Graphics/UI/Gtk/WebKit/Signals.chs
+++ b/Graphics/UI/Gtk/WebKit/Signals.chs
@@ -51,9 +51,11 @@
   connect_OBJECT_OBJECT_OBJECT_OBJECT__BOOL,
   connect_OBJECT_OBJECT_STRING_OBJECT__BOOL,
   connect_OBJECT_OBJECT_OBJECT_OBJECT__NONE,
+  connect_OBJECT_OBJECT_MOBJECT_MOBJECT__NONE,
   connect_ENUM_INT__BOOL,
   connect_NONE__BOOL,
   connect_NONE__NONE,
+  connect_MSTRING_MSTRING__NONE,
   connect_OBJECT_STRING__NONE,
   connect_OBJECT_OBJECT__NONE,
   connect_STRING_STRING__NONE,
@@ -66,7 +68,7 @@
 import Control.Monad	(liftM)
 
 import System.Glib.FFI
-import System.Glib.UTFString   (peekUTFString)
+import System.Glib.UTFString   (peekUTFString,maybePeekUTFString)
 import System.Glib.GError      (failOnGError)
 {#import System.Glib.Signals#}
 {#import System.Glib.GObject#} 
@@ -241,6 +243,22 @@
           makeNewGObject (GObject, objectUnrefFromMainloop) (return obj1) >>= \obj1' ->
           user (unsafeCastGObject obj1') (unsafeCastGObject obj2') (unsafeCastGObject obj3') (unsafeCastGObject obj4')
 
+connect_OBJECT_OBJECT_MOBJECT_MOBJECT__NONE :: 
+  (GObjectClass a', GObjectClass b', GObjectClass c', GObjectClass d', GObjectClass obj) => SignalName ->
+  ConnectAfter -> obj ->
+  (a' -> b' -> Maybe c' -> Maybe d' -> IO ()) ->
+  IO (ConnectId obj)
+connect_OBJECT_OBJECT_MOBJECT_MOBJECT__NONE signal after obj user =
+  connectGeneric signal after obj action
+  where action :: Ptr GObject -> Ptr GObject -> Ptr GObject -> Ptr GObject -> Ptr GObject -> IO ()
+        action _ obj1 obj2 obj3 obj4 =
+          failOnGError $
+          maybeNull (makeNewGObject (GObject, objectUnrefFromMainloop)) (return obj4) >>= \obj4' ->
+          maybeNull (makeNewGObject (GObject, objectUnrefFromMainloop)) (return obj3) >>= \obj3' ->
+          makeNewGObject (GObject, objectUnrefFromMainloop) (return obj2) >>= \obj2' ->
+          makeNewGObject (GObject, objectUnrefFromMainloop) (return obj1) >>= \obj1' ->
+          user (unsafeCastGObject obj1') (unsafeCastGObject obj2') (liftM unsafeCastGObject obj3') (liftM unsafeCastGObject obj4')
+
 connect_ENUM_INT__BOOL :: 
   (Enum a, GObjectClass obj) => SignalName ->
   ConnectAfter -> obj ->
@@ -276,6 +294,20 @@
         action _ =
           failOnGError $
           user
+
+connect_MSTRING_MSTRING__NONE :: 
+  GObjectClass obj => SignalName ->
+  ConnectAfter -> obj ->
+  (Maybe String -> Maybe String -> IO ()) ->
+  IO (ConnectId obj)
+connect_MSTRING_MSTRING__NONE signal after obj user =
+  connectGeneric signal after obj action
+  where action :: Ptr GObject -> CString -> CString -> IO ()
+        action _ str1 str2 =
+          failOnGError $
+          maybePeekUTFString str2 >>= \str2' ->
+          maybePeekUTFString str1 >>= \str1' ->
+          user str1' str2'
 
 connect_OBJECT_STRING__NONE :: 
   (GObjectClass a', GObjectClass obj) => SignalName ->
diff --git a/Graphics/UI/Gtk/WebKit/SoupAuthDialog.chs b/Graphics/UI/Gtk/WebKit/SoupAuthDialog.chs
--- a/Graphics/UI/Gtk/WebKit/SoupAuthDialog.chs
+++ b/Graphics/UI/Gtk/WebKit/SoupAuthDialog.chs
@@ -24,6 +24,11 @@
 -----------------------------------------------------------------------------
 
 module Graphics.UI.Gtk.WebKit.SoupAuthDialog (
+-- * Description
+-- | WebKitSoupAuthDialog is a SoupSessionFeature that you can attach to your SoupSession to provide a
+-- simple authentication dialog while handling HTTP basic auth. It is built as a simple C-only module
+-- to ease reuse.
+
 -- * Types
   SoupAuthDialog,
   SoupAuthDialogClass,
diff --git a/Graphics/UI/Gtk/WebKit/WebDataSource.chs b/Graphics/UI/Gtk/WebKit/WebDataSource.chs
--- a/Graphics/UI/Gtk/WebKit/WebDataSource.chs
+++ b/Graphics/UI/Gtk/WebKit/WebDataSource.chs
@@ -29,6 +29,18 @@
 -----------------------------------------------------------------------------
 
 module Graphics.UI.Gtk.WebKit.WebDataSource (
+-- * Description
+-- | Data source encapsulates the content of a WebKitWebFrame. A WebKitWebFrame has a main resource and
+-- subresources and the data source provides access to these resources. When a request gets loaded
+-- initially, it is set to a provisional state. The application can request for the request that
+-- initiated the load by asking for the provisional data source and invoking the
+-- 'webDataSourceGetInitialRequest' method of WebKitWebDataSource. This data source may not
+-- have enough data and some methods may return empty values. To get a "full" data source with the data
+-- and resources loaded, you need to get the non-provisional data source through WebKitWebFrame's
+-- 'webFrameGetDataSource' method. This data source will have the data after everything was
+-- loaded. Make sure that the data source was finished loading before using any of its methods. You can
+-- do this via 'webDataSourceIsLoading'.
+
 -- * Types
   WebDataSource,
   WebDataSourceClass,
@@ -37,6 +49,7 @@
   webDataSourceNew,
 
 -- * Methods  
+  -- webDataSourceGetData,
   webDataSourceGetEncoding,
   webDataSourceGetInitialRequest,
   webDataSourceGetMainResource,
@@ -66,6 +79,19 @@
 webDataSourceNew :: IO WebDataSource
 webDataSourceNew = 
     constructNewGObject mkWebDataSource $ {#call web_data_source_new#} 
+
+-- | Returns the raw data that represents the the frame's content.The data will be incomplete until the
+-- data has finished loading. Returns 'Nothing' if the web frame hasn't loaded any data. Use
+-- @webkitWebDataSourceIsLoading@ to test if data source is in the process of loading.
+-- 
+-- webDataSourceGetData :: WebDataSourceClass self => self
+--                      -> IO (Maybe String)
+-- webDataSourceGetData ds = do
+--   ptr <- {#call webkit_web_data_source_get_data #}
+--            (toWebDataSource ds)
+--   if strPtr == nullPtr
+--      then return Nothing
+--      else liftM Just $ peekCStringLen (strPtr, strLen)
 
 -- | Returns the text encoding name as set in the 'WebView', or if not, the text encoding of the response.
 webDataSourceGetEncoding ::
diff --git a/Graphics/UI/Gtk/WebKit/WebDatabase.chs b/Graphics/UI/Gtk/WebKit/WebDatabase.chs
--- a/Graphics/UI/Gtk/WebKit/WebDatabase.chs
+++ b/Graphics/UI/Gtk/WebKit/WebDatabase.chs
@@ -24,6 +24,26 @@
 -----------------------------------------------------------------------------
 
 module Graphics.UI.Gtk.WebKit.WebDatabase (
+-- * Description
+-- | WebKitWebDatabase is a representation of a Web Database database. The proposed Web Database standard
+-- introduces support for SQL databases that web sites can create and access on a local computer
+-- through JavaScript.
+-- 
+-- To get access to all databases defined by a security origin, use
+-- 'securityOriginGetDatabases' Each database has a canonical name, as well as a user-friendly
+-- display name.
+-- 
+-- WebKit uses SQLite to create and access the local SQL databases. The location of a WebKitWebDatabase
+-- can be accessed wth 'webDatabaseGetFilename' You can configure the location of all
+-- databases with 'setDatabaseDirectoryPath'.
+-- 
+-- For each database the web site can define an estimated size which can be accessed with
+-- 'webDatabaseGetExpectedSize' The current size of the database in bytes is returned by
+-- 'webDatabaseGetSize'.
+-- 
+-- For more information refer to the Web Database specification proposal at
+-- http://dev.w3.org/html5/webdatabase
+
 -- * Types
   WebDatabase,
   WebDatabaseClass,
diff --git a/Graphics/UI/Gtk/WebKit/WebFrame.chs b/Graphics/UI/Gtk/WebKit/WebFrame.chs
--- a/Graphics/UI/Gtk/WebKit/WebFrame.chs
+++ b/Graphics/UI/Gtk/WebKit/WebFrame.chs
@@ -33,6 +33,12 @@
 -----------------------------------------------------------------------------
 
 module Graphics.UI.Gtk.WebKit.WebFrame (
+-- * Description
+-- | A WebKitWebView contains a main WebKitWebFrame. A WebKitWebFrame contains the content of one
+-- URI. The URI and name of the frame can be retrieved, the load status and progress can be observed
+-- using the signals and can be controlled using the methods of the WebKitWebFrame. A WebKitWebFrame
+-- can have any number of children and one child can be found by using 'webFrameFindFrame'.
+
 -- * Types
   WebFrame,
   WebFrameClass,
diff --git a/Graphics/UI/Gtk/WebKit/WebHistoryItem.chs b/Graphics/UI/Gtk/WebKit/WebHistoryItem.chs
--- a/Graphics/UI/Gtk/WebKit/WebHistoryItem.chs
+++ b/Graphics/UI/Gtk/WebKit/WebHistoryItem.chs
@@ -24,6 +24,12 @@
 -----------------------------------------------------------------------------
 
 module Graphics.UI.Gtk.WebKit.WebHistoryItem (
+-- * Description
+-- | A history item consists out of a title and a uri. It can be part of the WebKitWebBackForwardList and
+-- the global history.  The global history is used for coloring the links of visited
+-- sites. WebKitWebHistoryItem's constructed with 'webHistoryItemNew' and
+-- 'webHistoryItemNewWithData' are automatically added to the global history.
+
 -- * Types
   WebHistoryItem,
   WebHistoryItemClass,
diff --git a/Graphics/UI/Gtk/WebKit/WebInspector.chs b/Graphics/UI/Gtk/WebKit/WebInspector.chs
--- a/Graphics/UI/Gtk/WebKit/WebInspector.chs
+++ b/Graphics/UI/Gtk/WebKit/WebInspector.chs
@@ -24,6 +24,14 @@
 -----------------------------------------------------------------------------
 
 module Graphics.UI.Gtk.WebKit.WebInspector (
+-- * Description
+-- | The WebKit Inspector is a graphical tool to inspect and change the content of a WebKitWebView. It
+-- also includes an interactive JavaScriptDebugger. Using this class one can get a 'Widget' which can
+-- be embedded into an application to show the inspector.
+-- 
+-- The inspector is available when the WebKitWebSettings of the WebKitWebView has set the
+-- 'enableDeveloperExtras' to true otherwise no inspector is available.
+
 -- * Types
   WebInspector,
   WebInspectorClass,
diff --git a/Graphics/UI/Gtk/WebKit/WebNavigationAction.chs b/Graphics/UI/Gtk/WebKit/WebNavigationAction.chs
--- a/Graphics/UI/Gtk/WebKit/WebNavigationAction.chs
+++ b/Graphics/UI/Gtk/WebKit/WebNavigationAction.chs
@@ -24,6 +24,11 @@
 -----------------------------------------------------------------------------
 
 module Graphics.UI.Gtk.WebKit.WebNavigationAction (
+-- * Description
+-- | 'WebNavigationAction' is used in signals to provide details about what led the navigation to
+-- happen. This includes, for instance, if the user clicked a link to start that navigation, and what
+-- mouse button was used.
+
 -- * Types
   WebNavigationAction,
   WebNavigationActionClass,
diff --git a/Graphics/UI/Gtk/WebKit/WebPolicyDecision.chs b/Graphics/UI/Gtk/WebKit/WebPolicyDecision.chs
--- a/Graphics/UI/Gtk/WebKit/WebPolicyDecision.chs
+++ b/Graphics/UI/Gtk/WebKit/WebPolicyDecision.chs
@@ -24,6 +24,11 @@
 -----------------------------------------------------------------------------
 
 module Graphics.UI.Gtk.WebKit.WebPolicyDecision (
+-- * Desciption
+-- | 'WebPolicyDecision' objects are given to the application on signal emissions that deal with
+-- policy decisions, such as if a new window should be opened, or if a given navigation should be
+-- allowed. The application uses it to tell the engine what to do.
+
 -- * Types
   WebPolicyDecision,
   WebPolicyDecisionClass,
diff --git a/Graphics/UI/Gtk/WebKit/WebResource.chs b/Graphics/UI/Gtk/WebKit/WebResource.chs
--- a/Graphics/UI/Gtk/WebKit/WebResource.chs
+++ b/Graphics/UI/Gtk/WebKit/WebResource.chs
@@ -29,6 +29,10 @@
 -----------------------------------------------------------------------------
 
 module Graphics.UI.Gtk.WebKit.WebResource (
+-- * Description
+-- | A web resource encapsulates the data of the download as well as the URI, MIME type and frame name of
+-- the resource.
+
 -- * Types
   WebResource,
   WebResourceClass,
diff --git a/Graphics/UI/Gtk/WebKit/WebSettings.chs b/Graphics/UI/Gtk/WebKit/WebSettings.chs
--- a/Graphics/UI/Gtk/WebKit/WebSettings.chs
+++ b/Graphics/UI/Gtk/WebKit/WebSettings.chs
@@ -24,6 +24,10 @@
 -----------------------------------------------------------------------------
 
 module Graphics.UI.Gtk.WebKit.WebSettings (
+-- * Desciption
+-- | WebKitWebSettings can be applied to a WebKitWebView to control the to be used text encoding, color,
+-- font sizes, printing mode, script support, loading of images and various other things.
+
 -- * Types
   WebSettings,
   WebSettingsClass,
diff --git a/Graphics/UI/Gtk/WebKit/WebView.chs b/Graphics/UI/Gtk/WebKit/WebView.chs
--- a/Graphics/UI/Gtk/WebKit/WebView.chs
+++ b/Graphics/UI/Gtk/WebKit/WebView.chs
@@ -38,6 +38,14 @@
 -----------------------------------------------------------------------------
 
 module Graphics.UI.Gtk.WebKit.WebView (
+-- * Description
+-- | WebKitWebView is the central class of the WebKitGTK+ API. It is a 'Widget' implementing the
+-- scrolling interface which means you can embed in a 'ScrolledWindow'. It is responsible for managing
+-- the drawing of the content, forwarding of events. You can load any URI into the WebKitWebView or any
+-- kind of data string. With WebKitWebSettings you can control various aspects of the rendering and
+-- loading of the content. Each WebKitWebView has exactly one WebKitWebFrame as main frame. A
+-- WebKitWebFrame can have n children.
+
 -- * Types
   WebView,
   WebViewClass,
@@ -967,9 +975,9 @@
 -- title - the link's title or @Nothing@ in case of failure.
 --
 -- uri - the URI the link points to or @Nothing@ in case of failure.
-hoveringOverLink :: WebViewClass self => Signal self (String -> String -> IO())
+hoveringOverLink :: WebViewClass self => Signal self (Maybe String -> Maybe String -> IO())
 hoveringOverLink =
-    Signal (connect_STRING_STRING__NONE "hovering-over-link")
+    Signal (connect_MSTRING_MSTRING__NONE "hovering-over-link")
 
 -- | When a 'WebFrame' begins to load, this signal is emitted
 loadStarted :: WebViewClass self => Signal self (WebFrame -> IO())
@@ -1119,9 +1127,9 @@
 
 #if WEBKIT_CHECK_VERSION (1,1,18)
 -- | Emitted after Icon loaded
-iconLoaded :: WebViewClass self => Signal self (IO ())
+iconLoaded :: WebViewClass self => Signal self (String -> IO ())
 iconLoaded =
-    Signal (connect_NONE__NONE "icon-loaded")
+    Signal (connect_STRING__NONE "icon-loaded")
 #endif
 
 -- | The "redo" signal is a keybinding signal which gets emitted to redo the last editing command.
@@ -1200,8 +1208,8 @@
 --
 -- The 'WebResource' object will be the same throughout all the lifetime of the resource, 
 -- but the contents may change from inbetween signal emissions.
-resourceRequestStarting :: WebViewClass self => Signal self (WebFrame -> WebResource -> NetworkRequest -> NetworkResponse -> IO ())
-resourceRequestStarting = Signal (connect_OBJECT_OBJECT_OBJECT_OBJECT__NONE "resource-request-starting")
+resourceRequestStarting :: WebViewClass self => Signal self (WebFrame -> WebResource -> Maybe NetworkRequest -> Maybe NetworkResponse -> IO ())
+resourceRequestStarting = Signal (connect_OBJECT_OBJECT_MOBJECT_MOBJECT__NONE "resource-request-starting")
 
 #if WEBKIT_CHECK_VERSION (1,1,23)
 -- | When a frame wants to cancel geolocation permission it had requested before.
diff --git a/Graphics/UI/Gtk/WebKit/WebWindowFeatures.chs b/Graphics/UI/Gtk/WebKit/WebWindowFeatures.chs
--- a/Graphics/UI/Gtk/WebKit/WebWindowFeatures.chs
+++ b/Graphics/UI/Gtk/WebKit/WebWindowFeatures.chs
@@ -24,6 +24,18 @@
 -----------------------------------------------------------------------------
 
 module Graphics.UI.Gtk.WebKit.WebWindowFeatures (
+-- * Description
+-- | The content of a WebKitWebView can request to change certain properties of a WebKitWebView. This can
+-- include the x, y position of the window, the width and height but also if a toolbar, scrollbar,
+-- statusbar, locationbar should be visible to the user, the request to show the WebKitWebView
+-- fullscreen.
+-- 
+-- In the normal case one will use 'webViewGetWindowFeatures' to get the
+-- WebKitWebWindowFeatures and then monitor the property changes. Be aware that the
+-- WebKitWebWindowFeatures might change change before 'webViewReady' signal is emitted. To be safe
+-- listen to the 'windowFeatures' signal of the WebKitWebView and reconnect the signals whenever
+-- the WebKitWebWindowFeatures of a WebKitWebView changes.
+
 -- * Types
   WebWindowFeatures,
   WebWindowFeaturesClass,
diff --git a/demo/Webkit.hs b/demo/Webkit.hs
--- a/demo/Webkit.hs
+++ b/demo/Webkit.hs
@@ -19,7 +19,7 @@
 import Graphics.UI.Gtk.WebKit.WebFrame
 
 import System.Process
-import System.Environment 
+import System.Environment
 
 -- | Main entry.
 main :: IO ()
@@ -28,8 +28,8 @@
   args <- getArgs
   case args of
     -- Display help
-    ["--help"] -> 
-       putStrLn $ "Welcome to Gtk2hs WebKit demo. :)\n\n" ++ 
+    ["--help"] ->
+       putStrLn $ "Welcome to Gtk2hs WebKit demo. :)\n\n" ++
                   "Usage: webkit [uri]\n\n" ++
                   "  -- Gtk2hs Team"
     -- Start program.
@@ -41,7 +41,7 @@
 browser url = do
   -- Init.
   initGUI
-  
+
   -- Create window.
   window <- windowNew
   windowSetDefaultSize window 900 600
@@ -50,10 +50,10 @@
 
   -- Create WebKit view.
   webView <- webViewNew
-  
+
   -- Create window box.
   winBox <- vBoxNew False 0
-  
+
   -- Create address bar.
   addressBar <- entryNew
 
diff --git a/marshal.list b/marshal.list
--- a/marshal.list
+++ b/marshal.list
@@ -15,6 +15,7 @@
 #   FLOAT       for single-precision float types (gfloat)
 #   DOUBLE      for double-precision float types (gdouble)
 #   STRING      for string types (gchar*)
+#   MSTRING     for string types (gchar*) that could be NUL
 #   BOXED       for boxed (anonymous but reference counted) types (GBoxed*)
 #   POINTER     for anonymous pointer types (gpointer)
 #   NONE        deprecated alias for VOID
@@ -53,9 +54,11 @@
 BOOLEAN:TOBJECT,TOBJECT,TOBJECT,TOBJECT
 BOOLEAN:TOBJECT,TOBJECT,STRING,TOBJECT
 NONE:TOBJECT,TOBJECT,TOBJECT,TOBJECT
+NONE:TOBJECT,TOBJECT,MTOBJECT,MTOBJECT
 BOOLEAN:ENUM,INT
 BOOLEAN:NONE
 NONE:NONE
+NONE:MSTRING,MSTRING
 NONE:TOBJECT,STRING
 NONE:TOBJECT,TOBJECT
 NONE:STRING,STRING
diff --git a/webkit.cabal b/webkit.cabal
--- a/webkit.cabal
+++ b/webkit.cabal
@@ -1,5 +1,5 @@
 Name:           webkit
-Version:        0.11.1
+Version:        0.11.2
 License:        LGPL-2.1
 License-file:   COPYING
 Copyright:      (c) 2001-2010 The Gtk2Hs Team
@@ -42,7 +42,7 @@
 
 Library
         build-depends:  base >= 4 && < 5, array, containers, haskell98, mtl,
-                        glib  >= 0.11 && < 0.12, 
+                        glib  >= 0.11.2 && < 0.12, 
                         pango >= 0.11 && < 0.12, 
                         cairo >= 0.11 && < 0.12,
                         gtk   >= 0.11 && < 0.12
