From b318c3c18d3c2d4866c3f325f8ec6f00a42876fb Mon Sep 17 00:00:00 2001
From: Jochen Keil <jochen.keil@gmail.com>
Date: Fri, 10 Aug 2012 11:38:52 +0200
Subject: Move the IsVariant SignalType instance to Signal module

This belongs here, otherwise ghc will complain about orphaned instances
---
 src/IPC/DBus.hs |  9 +--------
 src/Signal.hs   | 18 +++++++++++++++++-
 2 files changed, 18 insertions(+), 9 deletions(-)

diff --git a/src/IPC/DBus.hs b/src/IPC/DBus.hs
index 4357c48..b0597a4 100644
--- a/src/IPC/DBus.hs
+++ b/src/IPC/DBus.hs
@@ -16,19 +16,12 @@ module IPC.DBus ( runIPC ) where
 
 import DBus
 import DBus.Client
-import Control.Monad ((>=>), join, when)
+import Control.Monad (join, when)
 import Control.Concurrent
 
 import Signal
 import Plugins.Utils (safeHead)
 
-instance IsVariant SignalType where
-    toVariant   = toVariant . show
-    fromVariant = fromVariant >=> parseSignalType
-
-parseSignalType :: String -> Maybe SignalType
-parseSignalType = fmap fst . safeHead . reads
-
 busName :: BusName
 busName = busName_ "org.Xmobar.Control"
 
diff --git a/src/Signal.hs b/src/Signal.hs
index ad19fdd..f634c16 100644
--- a/src/Signal.hs
+++ b/src/Signal.hs
@@ -1,4 +1,4 @@
-{-# LANGUAGE DeriveDataTypeable #-}
+{-# LANGUAGE DeriveDataTypeable, CPP #-}
 
 module Signal where
 
@@ -7,6 +7,13 @@ import Control.Concurrent
 import Control.Exception hiding (handle)
 import System.Posix.Signals
 
+#ifdef DBUS
+import DBus (IsVariant(..))
+import Control.Monad ((>=>))
+
+import Plugins.Utils (safeHead)
+#endif
+
 data WakeUp = WakeUp deriving (Show,Typeable)
 instance Exception WakeUp
 
@@ -19,6 +26,15 @@ data SignalType = Wakeup
                 | TogglePersistent
     deriving (Read, Show)
 
+#ifdef DBUS
+instance IsVariant SignalType where
+    toVariant   = toVariant . show
+    fromVariant = fromVariant >=> parseSignalType
+#endif
+
+parseSignalType :: String -> Maybe SignalType
+parseSignalType = fmap fst . safeHead . reads
+
 -- | Signal handling
 setupSignalHandler :: IO (MVar SignalType)
 setupSignalHandler = do
-- 
cgit v1.2.3