mirror of
https://github.com/xmonad/xmonad-contrib.git
synced 2025-05-19 03:20:21 -07:00
Typeable has been automatically derived for every type since GHC 7.10, so remove these obsolete derivations. This also allows us to get rid of the `DeriveDataTypeable` pragma quite naturally. Related: https://github.com/xmonad/xmonad/pull/299 (xmonad/xmonad@9e5b16ed8a) Related: bd5b969d9ba24236c0d5ef521c0397390dbc4b37 Fixes: https://github.com/xmonad/xmonad-contrib/issues/548
48 lines
1.6 KiB
Haskell
48 lines
1.6 KiB
Haskell
{-# LANGUAGE TypeSynonymInstances, MultiParamTypeClasses #-}
|
|
|
|
-----------------------------------------------------------------------------
|
|
-- |
|
|
-- Module : XMonad.Layout.MultiToggle.TabBarDecoration
|
|
-- Copyright : (c) 2018 Lucian Poston
|
|
-- License : BSD-style (see LICENSE)
|
|
--
|
|
-- Maintainer : <lucianposton@pm.me>
|
|
-- Stability : unstable
|
|
-- Portability : unportable
|
|
--
|
|
-- Provides a simple transformer for use with "XMonad.Layout.MultiToggle" to
|
|
-- dynamically toggle "XMonad.Layout.TabBarDecoration".
|
|
-----------------------------------------------------------------------------
|
|
|
|
module XMonad.Layout.MultiToggle.TabBarDecoration (
|
|
SimpleTabBar(..)
|
|
) where
|
|
|
|
import XMonad.Layout.MultiToggle
|
|
|
|
import XMonad
|
|
import XMonad.Layout.LayoutModifier
|
|
import XMonad.Layout.TabBarDecoration
|
|
|
|
-- $usage
|
|
-- To use this module with "XMonad.Layout.MultiToggle", add the @SIMPLETABBAR@
|
|
-- to your layout For example, from a basic layout like
|
|
--
|
|
-- > layout = tiled ||| Full
|
|
--
|
|
-- Add @SIMPLETABBAR@ by changing it this to
|
|
--
|
|
-- > layout = mkToggle (single SIMPLETABBAR) (tiled ||| Full)
|
|
--
|
|
-- You can now dynamically toggle the 'XMonad.Layout.TabBarDecoration'
|
|
-- transformation by adding a key binding such as @mod-x@ as follows.
|
|
--
|
|
-- > ...
|
|
-- > , ((modm, xK_x ), sendMessage $ Toggle SIMPLETABBAR)
|
|
-- > ...
|
|
|
|
-- | Transformer for "XMonad.Layout.TabBarDecoration".
|
|
data SimpleTabBar = SIMPLETABBAR deriving (Read, Show, Eq)
|
|
instance Transformer SimpleTabBar Window where
|
|
transform _ x k = k (simpleTabBar x) (\(ModifiedLayout _ (ModifiedLayout _ x')) -> x')
|