@@ -47,7 +47,7 @@ import qualified GHCJS.DOM.HTMLInputElement as Input
47import qualified GHCJS.DOM.HTMLTextAreaElement as TextArea
47import qualified GHCJS.DOM.HTMLTextAreaElement as TextArea
48import GHCJS.DOM.MouseEvent
48import GHCJS.DOM.MouseEvent
49import GHCJS.DOM.Node (appendChild, getOwnerDocument, getParentNode, getPreviousSibling, insertBefore,
49import GHCJS.DOM.Node (appendChild, getOwnerDocument, getParentNode, getPreviousSibling, insertBefore,
50− removeChild, toNode)
50+ removeChild, toNode, setNodeValue)
51import GHCJS.DOM.Types (FocusEvent, IsElement, IsEvent, IsNode, KeyboardEvent, Node, ToDOMString, TouchEvent,
51import GHCJS.DOM.Types (FocusEvent, IsElement, IsEvent, IsNode, KeyboardEvent, Node, ToDOMString, TouchEvent,
52 WheelEvent, castToHTMLInputElement, castToHTMLTextAreaElement)
52 WheelEvent, castToHTMLInputElement, castToHTMLTextAreaElement)
53import qualified GHCJS.DOM.Types as DOM
53import qualified GHCJS.DOM.Types as DOM
@@ -202,8 +202,9 @@ instance DomSpace GhcjsDomSpace where
202instance SupportsImmediateDomBuilder t m => DomBuilder t (ImmediateDomBuilderT t m) where
202instance SupportsImmediateDomBuilder t m => DomBuilder t (ImmediateDomBuilderT t m) where
203 type DomBuilderSpace (ImmediateDomBuilderT t m) = GhcjsDomSpace
203 type DomBuilderSpace (ImmediateDomBuilderT t m) = GhcjsDomSpace
204 {-# INLINABLE textNode #-}
204 {-# INLINABLE textNode #-}
205− textNode (TextNodeConfig contents) = do
205+ textNode (TextNodeConfig initialContents eSetContents) = do
206− _ <- textNodeInternal contents
206+ n <- textNodeInternal initialContents
207+ lift $ performEvent_ $ ffor eSetContents $ \t -> setNodeValue n (Just t)
207 return TextNode
208 return TextNode
208 {-# INLINABLE element #-}
209 {-# INLINABLE element #-}
209 element elementTag cfg child = fst <$> makeElement elementTag cfg child
210 element elementTag cfg child = fst <$> makeElement elementTag cfg child