packages feed

tianbar 0.3.1.0 → 0.3.2.0

raw patch · 2 files changed

+31/−1 lines, 2 files

Files

+ src/System/Tianbar/UriOverride.hs view
@@ -0,0 +1,29 @@+module System.Tianbar.UriOverride where++import Control.Monad++import Data.List.Split+import qualified Data.Map as M++import Network.URI++type UriOverride = String -> Maybe (IO String)++withScheme :: String -> (URI -> IO String) -> UriOverride+withScheme schemeMatch func uriStr+    | uriScheme uri == schemeMatch = Just $ func uri+    | otherwise = Nothing+    where (Just uri) = parseURI uriStr++mergeOverrides :: [UriOverride] -> UriOverride+mergeOverrides overrides = foldr mplus Nothing . flip map overrides . flip ($)++parseQuery :: URI -> M.Map String String+parseQuery = M.fromList+           . map ((\[a, b] -> (a, unEscapeString b)) . splitOn "=")+           . splitOn "&"+           . tail+           . uriQuery++returnContent :: String -> IO String+returnContent content = return $ "data:text/plain," ++ content
tianbar.cabal view
@@ -1,5 +1,5 @@ name:                tianbar-version:             0.3.1.0+version:             0.3.2.0 synopsis:            A desktop bar based on WebKit description:   A desktop bar using WebKit for rendering as much as possible.@@ -41,6 +41,7 @@                      , System.Tianbar.Configuration                      , System.Tianbar.StrutProperties                      , System.Tianbar.Systray+                     , System.Tianbar.UriOverride                      , System.Tianbar.WebKit   c-sources:           src/gdk_property_change_wrapper.c   ghc-options:         -Wall -rtsopts -threaded