diff --git a/Graphics/UI/Gtk/WebKit/Types.chs b/Graphics/UI/Gtk/WebKit/Types.chs
--- a/Graphics/UI/Gtk/WebKit/Types.chs
+++ b/Graphics/UI/Gtk/WebKit/Types.chs
@@ -129,6 +129,10 @@
   toFile, 
   mkFile, unFile,
   castToFile, gTypeFile,
+  CSS(CSS), CSSClass,
+  toCSS, 
+  mkCSS, unCSS,
+  castToCSS, gTypeCSS,
   CSSRule(CSSRule), CSSRuleClass,
   toCSSRule, 
   mkCSSRule, unCSSRule,
@@ -149,34 +153,10 @@
   toDOMImplementation, 
   mkDOMImplementation, unDOMImplementation,
   castToDOMImplementation, gTypeDOMImplementation,
-  DOMMimeType(DOMMimeType), DOMMimeTypeClass,
-  toDOMMimeType, 
-  mkDOMMimeType, unDOMMimeType,
-  castToDOMMimeType, gTypeDOMMimeType,
-  DOMMimeTypeArray(DOMMimeTypeArray), DOMMimeTypeArrayClass,
-  toDOMMimeTypeArray, 
-  mkDOMMimeTypeArray, unDOMMimeTypeArray,
-  castToDOMMimeTypeArray, gTypeDOMMimeTypeArray,
   DOMNamedFlowCollection(DOMNamedFlowCollection), DOMNamedFlowCollectionClass,
   toDOMNamedFlowCollection, 
   mkDOMNamedFlowCollection, unDOMNamedFlowCollection,
   castToDOMNamedFlowCollection, gTypeDOMNamedFlowCollection,
-  DOMPlugin(DOMPlugin), DOMPluginClass,
-  toDOMPlugin, 
-  mkDOMPlugin, unDOMPlugin,
-  castToDOMPlugin, gTypeDOMPlugin,
-  DOMPluginArray(DOMPluginArray), DOMPluginArrayClass,
-  toDOMPluginArray, 
-  mkDOMPluginArray, unDOMPluginArray,
-  castToDOMPluginArray, gTypeDOMPluginArray,
-  DOMSecurityPolicy(DOMSecurityPolicy), DOMSecurityPolicyClass,
-  toDOMSecurityPolicy, 
-  mkDOMSecurityPolicy, unDOMSecurityPolicy,
-  castToDOMSecurityPolicy, gTypeDOMSecurityPolicy,
-  DOMSelection(DOMSelection), DOMSelectionClass,
-  toDOMSelection, 
-  mkDOMSelection, unDOMSelection,
-  castToDOMSelection, gTypeDOMSelection,
   DOMStringList(DOMStringList), DOMStringListClass,
   toDOMStringList, 
   mkDOMStringList, unDOMStringList,
@@ -189,10 +169,6 @@
   toDOMSettableTokenList, 
   mkDOMSettableTokenList, unDOMSettableTokenList,
   castToDOMSettableTokenList, gTypeDOMSettableTokenList,
-  DOMWindowCSS(DOMWindowCSS), DOMWindowCSSClass,
-  toDOMWindowCSS, 
-  mkDOMWindowCSS, unDOMWindowCSS,
-  castToDOMWindowCSS, gTypeDOMWindowCSS,
   Event(Event), EventClass,
   toEvent, 
   mkEvent, unEvent,
@@ -217,6 +193,10 @@
   toEventTarget, 
   mkEventTarget, unEventTarget,
   castToEventTarget, gTypeEventTarget,
+  ApplicationCache(ApplicationCache), ApplicationCacheClass,
+  toApplicationCache, 
+  mkApplicationCache, unApplicationCache,
+  castToApplicationCache, gTypeApplicationCache,
   AudioTrackList(AudioTrackList), AudioTrackListClass,
   toAudioTrackList, 
   mkAudioTrackList, unAudioTrackList,
@@ -225,14 +205,6 @@
   toBatteryManager, 
   mkBatteryManager, unBatteryManager,
   castToBatteryManager, gTypeBatteryManager,
-  DOMApplicationCache(DOMApplicationCache), DOMApplicationCacheClass,
-  toDOMApplicationCache, 
-  mkDOMApplicationCache, unDOMApplicationCache,
-  castToDOMApplicationCache, gTypeDOMApplicationCache,
-  DOMWindow(DOMWindow), DOMWindowClass,
-  toDOMWindow, 
-  mkDOMWindow, unDOMWindow,
-  castToDOMWindow, gTypeDOMWindow,
   MessagePort(MessagePort), MessagePortClass,
   toMessagePort, 
   mkMessagePort, unMessagePort,
@@ -241,10 +213,10 @@
   toNode, 
   mkNode, unNode,
   castToNode, gTypeNode,
-  DOMAttr(DOMAttr), DOMAttrClass,
-  toDOMAttr, 
-  mkDOMAttr, unDOMAttr,
-  castToDOMAttr, gTypeDOMAttr,
+  Attr(Attr), AttrClass,
+  toAttr, 
+  mkAttr, unAttr,
+  castToAttr, gTypeAttr,
   CharacterData(CharacterData), CharacterDataClass,
   toCharacterData, 
   mkCharacterData, unCharacterData,
@@ -541,6 +513,10 @@
   toWebKitNamedFlow, 
   mkWebKitNamedFlow, unWebKitNamedFlow,
   castToWebKitNamedFlow, gTypeWebKitNamedFlow,
+  Window(Window), WindowClass,
+  toWindow, 
+  mkWindow, unWindow,
+  castToWindow, gTypeWindow,
   FileList(FileList), FileListClass,
   toFileList, 
   mkFileList, unFileList,
@@ -589,6 +565,14 @@
   toMediaQueryList, 
   mkMediaQueryList, unMediaQueryList,
   castToMediaQueryList, gTypeMediaQueryList,
+  MimeType(MimeType), MimeTypeClass,
+  toMimeType, 
+  mkMimeType, unMimeType,
+  castToMimeType, gTypeMimeType,
+  MimeTypeArray(MimeTypeArray), MimeTypeArrayClass,
+  toMimeTypeArray, 
+  mkMimeTypeArray, unMimeTypeArray,
+  castToMimeTypeArray, gTypeMimeTypeArray,
   NamedNodeMap(NamedNodeMap), NamedNodeMapClass,
   toNamedNodeMap, 
   mkNamedNodeMap, unNamedNodeMap,
@@ -617,14 +601,30 @@
   toPerformanceTiming, 
   mkPerformanceTiming, unPerformanceTiming,
   castToPerformanceTiming, gTypePerformanceTiming,
-  DOMRange(DOMRange), DOMRangeClass,
-  toDOMRange, 
-  mkDOMRange, unDOMRange,
-  castToDOMRange, gTypeDOMRange,
-  DOMScreen(DOMScreen), DOMScreenClass,
-  toDOMScreen, 
-  mkDOMScreen, unDOMScreen,
-  castToDOMScreen, gTypeDOMScreen,
+  Plugin(Plugin), PluginClass,
+  toPlugin, 
+  mkPlugin, unPlugin,
+  castToPlugin, gTypePlugin,
+  PluginArray(PluginArray), PluginArrayClass,
+  toPluginArray, 
+  mkPluginArray, unPluginArray,
+  castToPluginArray, gTypePluginArray,
+  Range(Range), RangeClass,
+  toRange, 
+  mkRange, unRange,
+  castToRange, gTypeRange,
+  Screen(Screen), ScreenClass,
+  toScreen, 
+  mkScreen, unScreen,
+  castToScreen, gTypeScreen,
+  SecurityPolicy(SecurityPolicy), SecurityPolicyClass,
+  toSecurityPolicy, 
+  mkSecurityPolicy, unSecurityPolicy,
+  castToSecurityPolicy, gTypeSecurityPolicy,
+  Selection(Selection), SelectionClass,
+  toSelection, 
+  mkSelection, unSelection,
+  castToSelection, gTypeSelection,
   Storage(Storage), StorageClass,
   toStorage, 
   mkStorage, unStorage,
@@ -1252,6 +1252,29 @@
 gTypeFile =
   {# call fun unsafe webkit_dom_file_get_type #}
 
+-- ************************************************************************ CSS
+
+{#pointer *WebKitDOMDOMWindowCSS as CSS foreign newtype #} deriving (Eq,Ord)
+
+mkCSS = (CSS, objectUnrefFromMainloop)
+unCSS (CSS o) = o
+
+class GObjectClass o => CSSClass o
+toCSS :: CSSClass o => o -> CSS
+toCSS = unsafeCastGObject . toGObject
+
+instance CSSClass CSS
+instance GObjectClass CSS where
+  toGObject = GObject . castForeignPtr . unCSS
+  unsafeCastGObject = CSS . castForeignPtr . unGObject
+
+castToCSS :: GObjectClass obj => obj -> CSS
+castToCSS = castTo gTypeCSS "CSS"
+
+gTypeCSS :: GType
+gTypeCSS =
+  {# call fun unsafe webkit_dom_dom_window_css_get_type #}
+
 -- ******************************************************************** CSSRule
 
 {#pointer *WebKitDOMCSSRule as CSSRule foreign newtype #} deriving (Eq,Ord)
@@ -1367,52 +1390,6 @@
 gTypeDOMImplementation =
   {# call fun unsafe webkit_dom_dom_implementation_get_type #}
 
--- **************************************************************** DOMMimeType
-
-{#pointer *WebKitDOMDOMMimeType as DOMMimeType foreign newtype #} deriving (Eq,Ord)
-
-mkDOMMimeType = (DOMMimeType, objectUnrefFromMainloop)
-unDOMMimeType (DOMMimeType o) = o
-
-class GObjectClass o => DOMMimeTypeClass o
-toDOMMimeType :: DOMMimeTypeClass o => o -> DOMMimeType
-toDOMMimeType = unsafeCastGObject . toGObject
-
-instance DOMMimeTypeClass DOMMimeType
-instance GObjectClass DOMMimeType where
-  toGObject = GObject . castForeignPtr . unDOMMimeType
-  unsafeCastGObject = DOMMimeType . castForeignPtr . unGObject
-
-castToDOMMimeType :: GObjectClass obj => obj -> DOMMimeType
-castToDOMMimeType = castTo gTypeDOMMimeType "DOMMimeType"
-
-gTypeDOMMimeType :: GType
-gTypeDOMMimeType =
-  {# call fun unsafe webkit_dom_dom_mime_type_get_type #}
-
--- *********************************************************** DOMMimeTypeArray
-
-{#pointer *WebKitDOMDOMMimeTypeArray as DOMMimeTypeArray foreign newtype #} deriving (Eq,Ord)
-
-mkDOMMimeTypeArray = (DOMMimeTypeArray, objectUnrefFromMainloop)
-unDOMMimeTypeArray (DOMMimeTypeArray o) = o
-
-class GObjectClass o => DOMMimeTypeArrayClass o
-toDOMMimeTypeArray :: DOMMimeTypeArrayClass o => o -> DOMMimeTypeArray
-toDOMMimeTypeArray = unsafeCastGObject . toGObject
-
-instance DOMMimeTypeArrayClass DOMMimeTypeArray
-instance GObjectClass DOMMimeTypeArray where
-  toGObject = GObject . castForeignPtr . unDOMMimeTypeArray
-  unsafeCastGObject = DOMMimeTypeArray . castForeignPtr . unGObject
-
-castToDOMMimeTypeArray :: GObjectClass obj => obj -> DOMMimeTypeArray
-castToDOMMimeTypeArray = castTo gTypeDOMMimeTypeArray "DOMMimeTypeArray"
-
-gTypeDOMMimeTypeArray :: GType
-gTypeDOMMimeTypeArray =
-  {# call fun unsafe webkit_dom_dom_mime_type_array_get_type #}
-
 -- ***************************************************** DOMNamedFlowCollection
 
 {#pointer *WebKitDOMDOMNamedFlowCollection as DOMNamedFlowCollection foreign newtype #} deriving (Eq,Ord)
@@ -1436,98 +1413,6 @@
 gTypeDOMNamedFlowCollection =
   {# call fun unsafe webkit_dom_dom_named_flow_collection_get_type #}
 
--- ****************************************************************** DOMPlugin
-
-{#pointer *WebKitDOMDOMPlugin as DOMPlugin foreign newtype #} deriving (Eq,Ord)
-
-mkDOMPlugin = (DOMPlugin, objectUnrefFromMainloop)
-unDOMPlugin (DOMPlugin o) = o
-
-class GObjectClass o => DOMPluginClass o
-toDOMPlugin :: DOMPluginClass o => o -> DOMPlugin
-toDOMPlugin = unsafeCastGObject . toGObject
-
-instance DOMPluginClass DOMPlugin
-instance GObjectClass DOMPlugin where
-  toGObject = GObject . castForeignPtr . unDOMPlugin
-  unsafeCastGObject = DOMPlugin . castForeignPtr . unGObject
-
-castToDOMPlugin :: GObjectClass obj => obj -> DOMPlugin
-castToDOMPlugin = castTo gTypeDOMPlugin "DOMPlugin"
-
-gTypeDOMPlugin :: GType
-gTypeDOMPlugin =
-  {# call fun unsafe webkit_dom_dom_plugin_get_type #}
-
--- ************************************************************* DOMPluginArray
-
-{#pointer *WebKitDOMDOMPluginArray as DOMPluginArray foreign newtype #} deriving (Eq,Ord)
-
-mkDOMPluginArray = (DOMPluginArray, objectUnrefFromMainloop)
-unDOMPluginArray (DOMPluginArray o) = o
-
-class GObjectClass o => DOMPluginArrayClass o
-toDOMPluginArray :: DOMPluginArrayClass o => o -> DOMPluginArray
-toDOMPluginArray = unsafeCastGObject . toGObject
-
-instance DOMPluginArrayClass DOMPluginArray
-instance GObjectClass DOMPluginArray where
-  toGObject = GObject . castForeignPtr . unDOMPluginArray
-  unsafeCastGObject = DOMPluginArray . castForeignPtr . unGObject
-
-castToDOMPluginArray :: GObjectClass obj => obj -> DOMPluginArray
-castToDOMPluginArray = castTo gTypeDOMPluginArray "DOMPluginArray"
-
-gTypeDOMPluginArray :: GType
-gTypeDOMPluginArray =
-  {# call fun unsafe webkit_dom_dom_plugin_array_get_type #}
-
--- ********************************************************** DOMSecurityPolicy
-
-{#pointer *WebKitDOMDOMSecurityPolicy as DOMSecurityPolicy foreign newtype #} deriving (Eq,Ord)
-
-mkDOMSecurityPolicy = (DOMSecurityPolicy, objectUnrefFromMainloop)
-unDOMSecurityPolicy (DOMSecurityPolicy o) = o
-
-class GObjectClass o => DOMSecurityPolicyClass o
-toDOMSecurityPolicy :: DOMSecurityPolicyClass o => o -> DOMSecurityPolicy
-toDOMSecurityPolicy = unsafeCastGObject . toGObject
-
-instance DOMSecurityPolicyClass DOMSecurityPolicy
-instance GObjectClass DOMSecurityPolicy where
-  toGObject = GObject . castForeignPtr . unDOMSecurityPolicy
-  unsafeCastGObject = DOMSecurityPolicy . castForeignPtr . unGObject
-
-castToDOMSecurityPolicy :: GObjectClass obj => obj -> DOMSecurityPolicy
-castToDOMSecurityPolicy = castTo gTypeDOMSecurityPolicy "DOMSecurityPolicy"
-
-gTypeDOMSecurityPolicy :: GType
-gTypeDOMSecurityPolicy =
-  {# call fun unsafe webkit_dom_dom_security_policy_get_type #}
-
--- *************************************************************** DOMSelection
-
-{#pointer *WebKitDOMDOMSelection as DOMSelection foreign newtype #} deriving (Eq,Ord)
-
-mkDOMSelection = (DOMSelection, objectUnrefFromMainloop)
-unDOMSelection (DOMSelection o) = o
-
-class GObjectClass o => DOMSelectionClass o
-toDOMSelection :: DOMSelectionClass o => o -> DOMSelection
-toDOMSelection = unsafeCastGObject . toGObject
-
-instance DOMSelectionClass DOMSelection
-instance GObjectClass DOMSelection where
-  toGObject = GObject . castForeignPtr . unDOMSelection
-  unsafeCastGObject = DOMSelection . castForeignPtr . unGObject
-
-castToDOMSelection :: GObjectClass obj => obj -> DOMSelection
-castToDOMSelection = castTo gTypeDOMSelection "DOMSelection"
-
-gTypeDOMSelection :: GType
-gTypeDOMSelection =
-  {# call fun unsafe webkit_dom_dom_selection_get_type #}
-
 -- ************************************************************** DOMStringList
 
 {#pointer *WebKitDOMDOMStringList as DOMStringList foreign newtype #} deriving (Eq,Ord)
@@ -1598,29 +1483,6 @@
 gTypeDOMSettableTokenList =
   {# call fun unsafe webkit_dom_dom_settable_token_list_get_type #}
 
--- *************************************************************** DOMWindowCSS
-
-{#pointer *WebKitDOMDOMWindowCSS as DOMWindowCSS foreign newtype #} deriving (Eq,Ord)
-
-mkDOMWindowCSS = (DOMWindowCSS, objectUnrefFromMainloop)
-unDOMWindowCSS (DOMWindowCSS o) = o
-
-class GObjectClass o => DOMWindowCSSClass o
-toDOMWindowCSS :: DOMWindowCSSClass o => o -> DOMWindowCSS
-toDOMWindowCSS = unsafeCastGObject . toGObject
-
-instance DOMWindowCSSClass DOMWindowCSS
-instance GObjectClass DOMWindowCSS where
-  toGObject = GObject . castForeignPtr . unDOMWindowCSS
-  unsafeCastGObject = DOMWindowCSS . castForeignPtr . unGObject
-
-castToDOMWindowCSS :: GObjectClass obj => obj -> DOMWindowCSS
-castToDOMWindowCSS = castTo gTypeDOMWindowCSS "DOMWindowCSS"
-
-gTypeDOMWindowCSS :: GType
-gTypeDOMWindowCSS =
-  {# call fun unsafe webkit_dom_dom_window_css_get_type #}
-
 -- ********************************************************************** Event
 
 {#pointer *WebKitDOMEvent as Event foreign newtype #} deriving (Eq,Ord)
@@ -1767,6 +1629,30 @@
 gTypeEventTarget =
   {# call fun unsafe webkit_dom_event_target_get_type #}
 
+-- *********************************************************** ApplicationCache
+
+{#pointer *WebKitDOMDOMApplicationCache as ApplicationCache foreign newtype #} deriving (Eq,Ord)
+
+mkApplicationCache = (ApplicationCache, objectUnrefFromMainloop)
+unApplicationCache (ApplicationCache o) = o
+
+class EventTargetClass o => ApplicationCacheClass o
+toApplicationCache :: ApplicationCacheClass o => o -> ApplicationCache
+toApplicationCache = unsafeCastGObject . toGObject
+
+instance ApplicationCacheClass ApplicationCache
+instance EventTargetClass ApplicationCache
+instance GObjectClass ApplicationCache where
+  toGObject = GObject . castForeignPtr . unApplicationCache
+  unsafeCastGObject = ApplicationCache . castForeignPtr . unGObject
+
+castToApplicationCache :: GObjectClass obj => obj -> ApplicationCache
+castToApplicationCache = castTo gTypeApplicationCache "ApplicationCache"
+
+gTypeApplicationCache :: GType
+gTypeApplicationCache =
+  {# call fun unsafe webkit_dom_dom_application_cache_get_type #}
+
 -- ************************************************************* AudioTrackList
 
 {#pointer *WebKitDOMAudioTrackList as AudioTrackList foreign newtype #} deriving (Eq,Ord)
@@ -1815,54 +1701,6 @@
 gTypeBatteryManager =
   {# call fun unsafe webkit_dom_battery_manager_get_type #}
 
--- ******************************************************** DOMApplicationCache
-
-{#pointer *WebKitDOMDOMApplicationCache as DOMApplicationCache foreign newtype #} deriving (Eq,Ord)
-
-mkDOMApplicationCache = (DOMApplicationCache, objectUnrefFromMainloop)
-unDOMApplicationCache (DOMApplicationCache o) = o
-
-class EventTargetClass o => DOMApplicationCacheClass o
-toDOMApplicationCache :: DOMApplicationCacheClass o => o -> DOMApplicationCache
-toDOMApplicationCache = unsafeCastGObject . toGObject
-
-instance DOMApplicationCacheClass DOMApplicationCache
-instance EventTargetClass DOMApplicationCache
-instance GObjectClass DOMApplicationCache where
-  toGObject = GObject . castForeignPtr . unDOMApplicationCache
-  unsafeCastGObject = DOMApplicationCache . castForeignPtr . unGObject
-
-castToDOMApplicationCache :: GObjectClass obj => obj -> DOMApplicationCache
-castToDOMApplicationCache = castTo gTypeDOMApplicationCache "DOMApplicationCache"
-
-gTypeDOMApplicationCache :: GType
-gTypeDOMApplicationCache =
-  {# call fun unsafe webkit_dom_dom_application_cache_get_type #}
-
--- ****************************************************************** DOMWindow
-
-{#pointer *WebKitDOMDOMWindow as DOMWindow foreign newtype #} deriving (Eq,Ord)
-
-mkDOMWindow = (DOMWindow, objectUnrefFromMainloop)
-unDOMWindow (DOMWindow o) = o
-
-class EventTargetClass o => DOMWindowClass o
-toDOMWindow :: DOMWindowClass o => o -> DOMWindow
-toDOMWindow = unsafeCastGObject . toGObject
-
-instance DOMWindowClass DOMWindow
-instance EventTargetClass DOMWindow
-instance GObjectClass DOMWindow where
-  toGObject = GObject . castForeignPtr . unDOMWindow
-  unsafeCastGObject = DOMWindow . castForeignPtr . unGObject
-
-castToDOMWindow :: GObjectClass obj => obj -> DOMWindow
-castToDOMWindow = castTo gTypeDOMWindow "DOMWindow"
-
-gTypeDOMWindow :: GType
-gTypeDOMWindow =
-  {# call fun unsafe webkit_dom_dom_window_get_type #}
-
 -- **************************************************************** MessagePort
 
 {#pointer *WebKitDOMMessagePort as MessagePort foreign newtype #} deriving (Eq,Ord)
@@ -1911,29 +1749,29 @@
 gTypeNode =
   {# call fun unsafe webkit_dom_node_get_type #}
 
--- ******************************************************************** DOMAttr
+-- *********************************************************************** Attr
 
-{#pointer *WebKitDOMAttr as DOMAttr foreign newtype #} deriving (Eq,Ord)
+{#pointer *WebKitDOMAttr as Attr foreign newtype #} deriving (Eq,Ord)
 
-mkDOMAttr = (DOMAttr, objectUnrefFromMainloop)
-unDOMAttr (DOMAttr o) = o
+mkAttr = (Attr, objectUnrefFromMainloop)
+unAttr (Attr o) = o
 
-class NodeClass o => DOMAttrClass o
-toDOMAttr :: DOMAttrClass o => o -> DOMAttr
-toDOMAttr = unsafeCastGObject . toGObject
+class NodeClass o => AttrClass o
+toAttr :: AttrClass o => o -> Attr
+toAttr = unsafeCastGObject . toGObject
 
-instance DOMAttrClass DOMAttr
-instance NodeClass DOMAttr
-instance EventTargetClass DOMAttr
-instance GObjectClass DOMAttr where
-  toGObject = GObject . castForeignPtr . unDOMAttr
-  unsafeCastGObject = DOMAttr . castForeignPtr . unGObject
+instance AttrClass Attr
+instance NodeClass Attr
+instance EventTargetClass Attr
+instance GObjectClass Attr where
+  toGObject = GObject . castForeignPtr . unAttr
+  unsafeCastGObject = Attr . castForeignPtr . unGObject
 
-castToDOMAttr :: GObjectClass obj => obj -> DOMAttr
-castToDOMAttr = castTo gTypeDOMAttr "DOMAttr"
+castToAttr :: GObjectClass obj => obj -> Attr
+castToAttr = castTo gTypeAttr "Attr"
 
-gTypeDOMAttr :: GType
-gTypeDOMAttr =
+gTypeAttr :: GType
+gTypeAttr =
   {# call fun unsafe webkit_dom_attr_get_type #}
 
 -- ************************************************************** CharacterData
@@ -3899,6 +3737,30 @@
 gTypeWebKitNamedFlow =
   {# call fun unsafe webkit_dom_webkit_named_flow_get_type #}
 
+-- ********************************************************************* Window
+
+{#pointer *WebKitDOMDOMWindow as Window foreign newtype #} deriving (Eq,Ord)
+
+mkWindow = (Window, objectUnrefFromMainloop)
+unWindow (Window o) = o
+
+class EventTargetClass o => WindowClass o
+toWindow :: WindowClass o => o -> Window
+toWindow = unsafeCastGObject . toGObject
+
+instance WindowClass Window
+instance EventTargetClass Window
+instance GObjectClass Window where
+  toGObject = GObject . castForeignPtr . unWindow
+  unsafeCastGObject = Window . castForeignPtr . unGObject
+
+castToWindow :: GObjectClass obj => obj -> Window
+castToWindow = castTo gTypeWindow "Window"
+
+gTypeWindow :: GType
+gTypeWindow =
+  {# call fun unsafe webkit_dom_dom_window_get_type #}
+
 -- ******************************************************************* FileList
 
 {#pointer *WebKitDOMFileList as FileList foreign newtype #} deriving (Eq,Ord)
@@ -4178,6 +4040,52 @@
 gTypeMediaQueryList =
   {# call fun unsafe webkit_dom_media_query_list_get_type #}
 
+-- ******************************************************************* MimeType
+
+{#pointer *WebKitDOMDOMMimeType as MimeType foreign newtype #} deriving (Eq,Ord)
+
+mkMimeType = (MimeType, objectUnrefFromMainloop)
+unMimeType (MimeType o) = o
+
+class GObjectClass o => MimeTypeClass o
+toMimeType :: MimeTypeClass o => o -> MimeType
+toMimeType = unsafeCastGObject . toGObject
+
+instance MimeTypeClass MimeType
+instance GObjectClass MimeType where
+  toGObject = GObject . castForeignPtr . unMimeType
+  unsafeCastGObject = MimeType . castForeignPtr . unGObject
+
+castToMimeType :: GObjectClass obj => obj -> MimeType
+castToMimeType = castTo gTypeMimeType "MimeType"
+
+gTypeMimeType :: GType
+gTypeMimeType =
+  {# call fun unsafe webkit_dom_dom_mime_type_get_type #}
+
+-- ************************************************************** MimeTypeArray
+
+{#pointer *WebKitDOMDOMMimeTypeArray as MimeTypeArray foreign newtype #} deriving (Eq,Ord)
+
+mkMimeTypeArray = (MimeTypeArray, objectUnrefFromMainloop)
+unMimeTypeArray (MimeTypeArray o) = o
+
+class GObjectClass o => MimeTypeArrayClass o
+toMimeTypeArray :: MimeTypeArrayClass o => o -> MimeTypeArray
+toMimeTypeArray = unsafeCastGObject . toGObject
+
+instance MimeTypeArrayClass MimeTypeArray
+instance GObjectClass MimeTypeArray where
+  toGObject = GObject . castForeignPtr . unMimeTypeArray
+  unsafeCastGObject = MimeTypeArray . castForeignPtr . unGObject
+
+castToMimeTypeArray :: GObjectClass obj => obj -> MimeTypeArray
+castToMimeTypeArray = castTo gTypeMimeTypeArray "MimeTypeArray"
+
+gTypeMimeTypeArray :: GType
+gTypeMimeTypeArray =
+  {# call fun unsafe webkit_dom_dom_mime_type_array_get_type #}
+
 -- *************************************************************** NamedNodeMap
 
 {#pointer *WebKitDOMNamedNodeMap as NamedNodeMap foreign newtype #} deriving (Eq,Ord)
@@ -4339,51 +4247,143 @@
 gTypePerformanceTiming =
   {# call fun unsafe webkit_dom_performance_timing_get_type #}
 
--- ******************************************************************* DOMRange
+-- ********************************************************************* Plugin
 
-{#pointer *WebKitDOMRange as DOMRange foreign newtype #} deriving (Eq,Ord)
+{#pointer *WebKitDOMDOMPlugin as Plugin foreign newtype #} deriving (Eq,Ord)
 
-mkDOMRange = (DOMRange, objectUnrefFromMainloop)
-unDOMRange (DOMRange o) = o
+mkPlugin = (Plugin, objectUnrefFromMainloop)
+unPlugin (Plugin o) = o
 
-class GObjectClass o => DOMRangeClass o
-toDOMRange :: DOMRangeClass o => o -> DOMRange
-toDOMRange = unsafeCastGObject . toGObject
+class GObjectClass o => PluginClass o
+toPlugin :: PluginClass o => o -> Plugin
+toPlugin = unsafeCastGObject . toGObject
 
-instance DOMRangeClass DOMRange
-instance GObjectClass DOMRange where
-  toGObject = GObject . castForeignPtr . unDOMRange
-  unsafeCastGObject = DOMRange . castForeignPtr . unGObject
+instance PluginClass Plugin
+instance GObjectClass Plugin where
+  toGObject = GObject . castForeignPtr . unPlugin
+  unsafeCastGObject = Plugin . castForeignPtr . unGObject
 
-castToDOMRange :: GObjectClass obj => obj -> DOMRange
-castToDOMRange = castTo gTypeDOMRange "DOMRange"
+castToPlugin :: GObjectClass obj => obj -> Plugin
+castToPlugin = castTo gTypePlugin "Plugin"
 
-gTypeDOMRange :: GType
-gTypeDOMRange =
+gTypePlugin :: GType
+gTypePlugin =
+  {# call fun unsafe webkit_dom_dom_plugin_get_type #}
+
+-- **************************************************************** PluginArray
+
+{#pointer *WebKitDOMDOMPluginArray as PluginArray foreign newtype #} deriving (Eq,Ord)
+
+mkPluginArray = (PluginArray, objectUnrefFromMainloop)
+unPluginArray (PluginArray o) = o
+
+class GObjectClass o => PluginArrayClass o
+toPluginArray :: PluginArrayClass o => o -> PluginArray
+toPluginArray = unsafeCastGObject . toGObject
+
+instance PluginArrayClass PluginArray
+instance GObjectClass PluginArray where
+  toGObject = GObject . castForeignPtr . unPluginArray
+  unsafeCastGObject = PluginArray . castForeignPtr . unGObject
+
+castToPluginArray :: GObjectClass obj => obj -> PluginArray
+castToPluginArray = castTo gTypePluginArray "PluginArray"
+
+gTypePluginArray :: GType
+gTypePluginArray =
+  {# call fun unsafe webkit_dom_dom_plugin_array_get_type #}
+
+-- ********************************************************************** Range
+
+{#pointer *WebKitDOMRange as Range foreign newtype #} deriving (Eq,Ord)
+
+mkRange = (Range, objectUnrefFromMainloop)
+unRange (Range o) = o
+
+class GObjectClass o => RangeClass o
+toRange :: RangeClass o => o -> Range
+toRange = unsafeCastGObject . toGObject
+
+instance RangeClass Range
+instance GObjectClass Range where
+  toGObject = GObject . castForeignPtr . unRange
+  unsafeCastGObject = Range . castForeignPtr . unGObject
+
+castToRange :: GObjectClass obj => obj -> Range
+castToRange = castTo gTypeRange "Range"
+
+gTypeRange :: GType
+gTypeRange =
   {# call fun unsafe webkit_dom_range_get_type #}
 
--- ****************************************************************** DOMScreen
+-- ********************************************************************* Screen
 
-{#pointer *WebKitDOMScreen as DOMScreen foreign newtype #} deriving (Eq,Ord)
+{#pointer *WebKitDOMScreen as Screen foreign newtype #} deriving (Eq,Ord)
 
-mkDOMScreen = (DOMScreen, objectUnrefFromMainloop)
-unDOMScreen (DOMScreen o) = o
+mkScreen = (Screen, objectUnrefFromMainloop)
+unScreen (Screen o) = o
 
-class GObjectClass o => DOMScreenClass o
-toDOMScreen :: DOMScreenClass o => o -> DOMScreen
-toDOMScreen = unsafeCastGObject . toGObject
+class GObjectClass o => ScreenClass o
+toScreen :: ScreenClass o => o -> Screen
+toScreen = unsafeCastGObject . toGObject
 
-instance DOMScreenClass DOMScreen
-instance GObjectClass DOMScreen where
-  toGObject = GObject . castForeignPtr . unDOMScreen
-  unsafeCastGObject = DOMScreen . castForeignPtr . unGObject
+instance ScreenClass Screen
+instance GObjectClass Screen where
+  toGObject = GObject . castForeignPtr . unScreen
+  unsafeCastGObject = Screen . castForeignPtr . unGObject
 
-castToDOMScreen :: GObjectClass obj => obj -> DOMScreen
-castToDOMScreen = castTo gTypeDOMScreen "DOMScreen"
+castToScreen :: GObjectClass obj => obj -> Screen
+castToScreen = castTo gTypeScreen "Screen"
 
-gTypeDOMScreen :: GType
-gTypeDOMScreen =
+gTypeScreen :: GType
+gTypeScreen =
   {# call fun unsafe webkit_dom_screen_get_type #}
+
+-- ************************************************************* SecurityPolicy
+
+{#pointer *WebKitDOMDOMSecurityPolicy as SecurityPolicy foreign newtype #} deriving (Eq,Ord)
+
+mkSecurityPolicy = (SecurityPolicy, objectUnrefFromMainloop)
+unSecurityPolicy (SecurityPolicy o) = o
+
+class GObjectClass o => SecurityPolicyClass o
+toSecurityPolicy :: SecurityPolicyClass o => o -> SecurityPolicy
+toSecurityPolicy = unsafeCastGObject . toGObject
+
+instance SecurityPolicyClass SecurityPolicy
+instance GObjectClass SecurityPolicy where
+  toGObject = GObject . castForeignPtr . unSecurityPolicy
+  unsafeCastGObject = SecurityPolicy . castForeignPtr . unGObject
+
+castToSecurityPolicy :: GObjectClass obj => obj -> SecurityPolicy
+castToSecurityPolicy = castTo gTypeSecurityPolicy "SecurityPolicy"
+
+gTypeSecurityPolicy :: GType
+gTypeSecurityPolicy =
+  {# call fun unsafe webkit_dom_dom_security_policy_get_type #}
+
+-- ****************************************************************** Selection
+
+{#pointer *WebKitDOMDOMSelection as Selection foreign newtype #} deriving (Eq,Ord)
+
+mkSelection = (Selection, objectUnrefFromMainloop)
+unSelection (Selection o) = o
+
+class GObjectClass o => SelectionClass o
+toSelection :: SelectionClass o => o -> Selection
+toSelection = unsafeCastGObject . toGObject
+
+instance SelectionClass Selection
+instance GObjectClass Selection where
+  toGObject = GObject . castForeignPtr . unSelection
+  unsafeCastGObject = Selection . castForeignPtr . unGObject
+
+castToSelection :: GObjectClass obj => obj -> Selection
+castToSelection = castTo gTypeSelection "Selection"
+
+gTypeSelection :: GType
+gTypeSelection =
+  {# call fun unsafe webkit_dom_dom_selection_get_type #}
 
 -- ******************************************************************** Storage
 
diff --git a/hswebkit.h b/hswebkit.h
--- a/hswebkit.h
+++ b/hswebkit.h
@@ -35,3 +35,80 @@
 #endif
 
 #include "events.h"
+
+#undef Bool
+#undef True
+#undef False
+#undef true
+#undef false
+#undef Button1 
+#undef Button2
+#undef Button3
+#undef Button4
+#undef Button5
+#undef Button1Mask 
+#undef Button2Mask
+#undef Button3Mask
+#undef Button4Mask
+#undef Button5Mask
+
+#undef ShiftMask
+#undef LockMask
+#undef ControlMask
+#undef Mod1Mask
+#undef Mod2Mask
+#undef Mod3Mask
+#undef Mod4Mask
+#undef Mod5Mask
+
+#undef None
+#undef ParentRelative
+#undef CopyFromParent
+#undef PointerWindow
+#undef InputFocus
+#undef PointerRoot
+#undef AnyPropertyType
+#undef AnyKey
+#undef AnyButton
+#undef AllTemporary
+#undef CurrentTime
+#undef NoSymbol
+
+#undef NoEventMask
+#undef KeyPressMask
+#undef KeyReleaseMask
+#undef ButtonPressMask
+#undef ButtonReleaseMask
+#undef EnterWindowMask
+#undef LeaveWindowMask
+#undef PointerMotionMask
+#undef PointerMotionHintMask
+#undef Button1MotionMask
+#undef Button2MotionMask
+#undef Button3MotionMask
+#undef Button4MotionMask
+#undef Button5MotionMask
+#undef ButtonMotionMask
+#undef KeymapStateMask
+#undef ExposureMask
+#undef VisibilityChangeMask
+#undef StructureNotifyMask
+#undef ResizeRedirectMask
+#undef SubstructureNotifyMask
+#undef SubstructureRedirectMask
+#undef FocusChangeMask
+#undef PropertyChangeMask
+#undef ColormapChangeMask
+#undef OwnerGrabButtonMask
+#undef Status
+#undef Expose
+#undef Below
+#undef GrabSuccess
+#undef GrabAlreadyGrabbed
+#undef GrabInvalidTime
+#undef GrabNotViewable
+#undef GrabFrozen
+#undef OwnerChangeNewOwner
+#undef OwnerChangeDestroy
+#undef OwnerChangeClose
+#undef NULL
diff --git a/webkitgtk3.cabal b/webkitgtk3.cabal
--- a/webkitgtk3.cabal
+++ b/webkitgtk3.cabal
@@ -1,5 +1,5 @@
 Name:           webkitgtk3
-Version:        0.13.1.2
+Version:        0.13.1.3
 License:        LGPL-2.1
 License-file:   COPYING
 Copyright:      (c) 2001-2013 The Gtk2Hs Team
