reflex-dom-fragment-shader-canvas 0.1.0.2 → 0.2
raw patch · 3 files changed
+22/−4 lines, 3 files
Files
- ChangeLog.md +4/−0
- Reflex/Dom/FragmentShaderCanvas.hs +17/−3
- reflex-dom-fragment-shader-canvas.cabal +1/−1
ChangeLog.md view
@@ -1,5 +1,9 @@ # Revision history for reflex-dom-fragment-shader-canvas +## 0.2 -- 2018-10-12++* Provide fragmentShaderCanvas'+ ## 0.1.0.2 -- 2018-10-12 * Silently ignore if the webgl context cannot be enabled
Reflex/Dom/FragmentShaderCanvas.hs view
@@ -3,7 +3,11 @@ {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE LambdaCase #-} {-# OPTIONS_GHC -Wno-unused-do-bind #-}-module Reflex.Dom.FragmentShaderCanvas (fragmentShaderCanvas, trivialFragmentShader) where+module Reflex.Dom.FragmentShaderCanvas+ ( fragmentShaderCanvas+ , fragmentShaderCanvas'+ , trivialFragmentShader+ ) where import Data.Map (Map) import Data.Text as Text (Text, unlines)@@ -133,7 +137,15 @@ (Map Text Text) -> Dynamic t Text -> m (Dynamic t (Maybe Text))-fragmentShaderCanvas attrs fragmentShaderSource = do+fragmentShaderCanvas attrs fragmentShaderCanvas+ = snd <$> fragmentShaderCanvas' attrs fragmentShaderCanvas++fragmentShaderCanvas' ::+ (MonadWidget t m) =>+ (Map Text Text) ->+ Dynamic t Text ->+ m (El t, Dynamic t (Maybe Text))+fragmentShaderCanvas' attrs fragmentShaderSource = do (canvasEl, _) <- elAttr' "canvas" attrs $ blank (eError, reportError) <- newTriggerEvent pb <- getPostBuild@@ -162,4 +174,6 @@ performEvent $ (<$> eDraw) $ \src -> do onOffScreenCanvas domEl $ paintGL (liftIO . reportError) src - holdDyn Nothing eError+ dErr <- holdDyn Nothing eError+ return (canvasEl, dErr)+
reflex-dom-fragment-shader-canvas.cabal view
@@ -1,5 +1,5 @@ name: reflex-dom-fragment-shader-canvas-version: 0.1.0.2+version: 0.2 synopsis: A reflex-dom widget to draw on a canvas with a fragment shader program description: This simple reflex-dom widget takes a @Dynamic t Text@ value representing