@@ -18,7 +18,7 @@ import Foreign.Ptr
1818import Foreign.C.Types
1919import Data.Hashable
2020#else
21−import System.Glib.FFI hiding (withForeignPtr)
21+import System.Glib.FFI
2222import Graphics.UI.Gtk.WebKit.WebView
2323import Graphics.UI.Gtk.WebKit.JavaScriptCore.JSBase
2424import Graphics.UI.Gtk.WebKit.JavaScriptCore.JSObjectRef
@@ -264,23 +264,7 @@ instance MonadJS (JSCtx_JavaScriptCore x) (WithWebView x IO) where
264264 withJSStringRaw propName $ \propNameRaw -> do
265265 jsContext <- askJSContext
266266 liftIO $ liftM JSRef_JavaScriptCore $ jsobjectgetproperty jsContext objRef propNameRaw nullPtr --TODO: property attribute, exceptions
267− withJSNode (Node n) f = do
268− jsContext <- askJSContext
269− withForeignPtr n $ \nPtr -> do
270− let acquire = liftIO $ do
271− jsNode <- webkit_dom_node_to_js jsContext nPtr
272− jsvalueprotect jsContext jsNode
273− return jsNode
274− release = liftIO . jsvalueunprotect jsContext
275− bracket acquire release $ f . JSRef_JavaScriptCore
276−
277−withForeignPtr :: MonadIO m => ForeignPtr a -> (Ptr a -> m b) -> m b
278−withForeignPtr fo io = do
279− r <- io $ unsafeForeignPtrToPtr fo
280− liftIO $ touchForeignPtr fo
281− return r
282−
283−foreign import ccall unsafe "webkit_dom_node_to_js" webkit_dom_node_to_js :: JSContextRef -> Ptr Node -> IO JSValueRef
267+ withJSNode = error "withJSNode is only supported in ghcjs"
284268
285269#endif
286270