| Copyright | Devin Mullins <devin.mullins@gmail.com> |
|---|---|
| License | BSD-style (see LICENSE) |
| Maintainer | Devin Mullins <devin.mullins@gmail.com> |
| Stability | unstable |
| Portability | unportable |
| Safe Haskell | None |
| Language | Haskell98 |
XMonad.Config.Prime
Contents
Description
This is a draft of a brand new config syntax for xmonad. It aims to be:
- easier to copy/paste snippets from the docs
- easier to get the gist for what's going on, for you imperative programmers
It's brand new, so it's pretty much guaranteed to break or change syntax. But what's the worst that could happen? Xmonad crashes and logs you out? It probably won't do that. Give it a try.
Synopsis
- xmonad :: (Default a, Read (l Window), LayoutClass l Window) => (a -> IO (XConfig l)) -> IO ()
- nothing :: Prime l l
- normalBorderColor :: Settable String (XConfig l)
- focusedBorderColor :: Settable String (XConfig l)
- terminal :: Settable String (XConfig l)
- modMask :: Settable KeyMask (XConfig l)
- borderWidth :: Settable Dimension (XConfig l)
- focusFollowsMouse :: Settable Bool (XConfig l)
- clickJustFocuses :: Settable Bool (XConfig l)
- class SettableClass s x y | s -> x y where
- class UpdateableClass s x y | s -> x y where
- manageHook :: Summable ManageHook ManageHook (XConfig l)
- handleEventHook :: Summable (Event -> X All) (Event -> X All) (XConfig l)
- workspaces :: Summable [String] [String] (XConfig l)
- logHook :: Summable (X ()) (X ()) (XConfig l)
- startupHook :: Summable (X ()) (X ()) (XConfig l)
- clientMask :: Summable EventMask EventMask (XConfig l)
- rootMask :: Summable EventMask EventMask (XConfig l)
- class SummableClass s y | s -> y where
- keys :: Keys (XConfig l)
- mouseBindings :: MouseBindings (XConfig l)
- class RemovableClass r y | r -> y where
- withWorkspaces :: Arr WorkspaceConfig WorkspaceConfig -> Prime l l
- wsNames :: Settable [String] WorkspaceConfig
- wsKeys :: Summable [String] [String] WorkspaceConfig
- wsActions :: Summable [(String, String -> X ())] [(String, String -> X ())] WorkspaceConfig
- wsSetName :: Int -> String -> Arr WorkspaceConfig WorkspaceConfig
- withScreens :: Arr ScreenConfig ScreenConfig -> Prime l l
- sKeys :: Summable [String] [String] ScreenConfig
- sActions :: Summable [(String, ScreenId -> X ())] [(String, ScreenId -> X ())] ScreenConfig
- onScreens :: Eq s => (i -> StackSet i l a s sd -> StackSet i l a s sd) -> s -> StackSet i l a s sd -> StackSet i l a s sd
- addLayout :: (LayoutClass l Window, LayoutClass r Window) => r Window -> Prime l (Choose l r)
- resetLayout :: LayoutClass r Window => r Window -> Prime l r
- modifyLayout :: LayoutClass r Window => (l Window -> r Window) -> Prime l r
- startWith :: XConfig l' -> Prime l l'
- apply :: (XConfig l -> XConfig l') -> Prime l l'
- applyIO :: (XConfig l -> IO (XConfig l')) -> Prime l l'
- class Typeable (a :: k)
- getModifierMapping :: Display -> IO [(Modifier, [KeyCode])]
- getCommand :: Display -> Window -> IO [String]
- getErrorEvent :: XErrorEventPtr -> IO ErrorEvent
- setErrorHandler :: XErrorHandler -> IO ()
- setWMHints :: Display -> Window -> WMHints -> IO Status
- getWMHints :: Display -> Window -> IO WMHints
- allHintsBitmask :: CLong
- urgencyHintBit :: Int
- windowGroupHintBit :: Int
- iconMaskHintBit :: Int
- iconPositionHintBit :: Int
- iconWindowHintBit :: Int
- iconPixmapHintBit :: Int
- stateHintBit :: Int
- inputHintBit :: Int
- iconicState :: Int
- normalState :: Int
- withdrawnState :: Int
- getClassHint :: Display -> Window -> IO ClassHint
- getWMNormalHints :: Display -> Window -> IO SizeHints
- pWinGravityBit :: Int
- pBaseSizeBit :: Int
- pAspectBit :: Int
- pResizeIncBit :: Int
- pMaxSizeBit :: Int
- pMinSizeBit :: Int
- unmapWindow :: Display -> Window -> IO ()
- deleteProperty :: Display -> Window -> Atom -> IO ()
- propModeAppend :: CInt
- propModePrepend :: CInt
- propModeReplace :: CInt
- changeProperty32 :: Display -> Window -> Atom -> Atom -> CInt -> [CLong] -> IO ()
- changeProperty16 :: Display -> Window -> Atom -> Atom -> CInt -> [CShort] -> IO ()
- changeProperty8 :: Display -> Window -> Atom -> Atom -> CInt -> [CChar] -> IO ()
- getWindowProperty32 :: Display -> Atom -> Window -> IO (Maybe [CLong])
- getWindowProperty16 :: Display -> Atom -> Window -> IO (Maybe [CShort])
- getWindowProperty8 :: Display -> Atom -> Window -> IO (Maybe [CChar])
- rawGetWindowProperty :: Storable a => Int -> Display -> Atom -> Window -> IO (Maybe [a])
- anyPropertyType :: Atom
- refreshKeyboardMapping :: Event -> IO ()
- setKeyEvent :: XEventPtr -> Window -> Window -> Window -> KeyMask -> KeyCode -> Bool -> IO ()
- setConfigureEvent :: XEventPtr -> Window -> Window -> CInt -> CInt -> CInt -> CInt -> CInt -> Window -> Bool -> IO ()
- setClientMessageEvent :: XEventPtr -> Window -> Atom -> CInt -> Atom -> Time -> IO ()
- setSelectionNotify :: XEventPtr -> Window -> Atom -> Atom -> Atom -> Time -> IO ()
- setEventType :: XEventPtr -> EventType -> IO ()
- getWMProtocols :: Display -> Window -> IO [Atom]
- getTransientForHint :: Display -> Window -> IO (Maybe Window)
- fetchName :: Display -> Window -> IO (Maybe String)
- wcTextEscapement :: FontSet -> String -> Int32
- wcDrawImageString :: Display -> Drawable -> FontSet -> GC -> Position -> Position -> String -> IO ()
- wcDrawString :: Display -> Drawable -> FontSet -> GC -> Position -> Position -> String -> IO ()
- wcTextExtents :: FontSet -> String -> (Rectangle, Rectangle)
- createFontSet :: Display -> String -> IO ([String], String, FontSet)
- wcTextPropertyToTextList :: Display -> TextProperty -> IO [String]
- getTextProperty :: Display -> Window -> Atom -> IO TextProperty
- withServer :: Display -> IO () -> IO ()
- getWindowAttributes :: Display -> Window -> IO WindowAttributes
- waIsViewable :: CInt
- waIsUnviewable :: CInt
- waIsUnmapped :: CInt
- queryTree :: Display -> Window -> IO (Window, Window, [Window])
- configureWindow :: Display -> Window -> CULong -> WindowChanges -> IO ()
- currentTime :: Time
- anyKey :: KeyCode
- anyButton :: Button
- none :: XID
- getEvent :: XEventPtr -> IO Event
- eventName :: Event -> String
- eventTable :: [(EventType, String)]
- xConfigureWindow :: Display -> Window -> CULong -> Ptr WindowChanges -> IO CInt
- killClient :: Display -> Window -> IO CInt
- xQueryTree :: Display -> Window -> Ptr Window -> Ptr Window -> Ptr (Ptr Window) -> Ptr CInt -> IO Status
- xGetWindowAttributes :: Display -> Window -> Ptr WindowAttributes -> IO Status
- changeWindowAttributes :: Display -> Window -> AttributeMask -> Ptr SetWindowAttributes -> IO ()
- xGetTextProperty :: Display -> Window -> Ptr TextProperty -> Atom -> IO Status
- xwcTextPropertyToTextList :: Display -> Ptr TextProperty -> Ptr (Ptr CWString) -> Ptr CInt -> IO CInt
- wcFreeStringList :: Ptr CWString -> IO ()
- xCreateFontSet :: Display -> CString -> Ptr (Ptr CString) -> Ptr CInt -> Ptr CString -> IO (Ptr FontSet)
- freeStringList :: Ptr CString -> IO ()
- freeFontSet :: Display -> FontSet -> IO ()
- xwcTextExtents :: FontSet -> CWString -> CInt -> Ptr Rectangle -> Ptr Rectangle -> IO CInt
- xwcDrawString :: Display -> Drawable -> FontSet -> GC -> Position -> Position -> CWString -> CInt -> IO ()
- xwcDrawImageString :: Display -> Drawable -> FontSet -> GC -> Position -> Position -> CWString -> CInt -> IO ()
- xwcTextEscapement :: FontSet -> CWString -> CInt -> IO Int32
- xFetchName :: Display -> Window -> Ptr CString -> IO Status
- xGetTransientForHint :: Display -> Window -> Ptr Window -> IO Status
- xGetWMProtocols :: Display -> Window -> Ptr (Ptr Atom) -> Ptr CInt -> IO Status
- xSetErrorHandler :: IO ()
- xRefreshKeyboardMapping :: Ptr () -> IO CInt
- xChangeProperty :: Display -> Window -> Atom -> Atom -> CInt -> CInt -> Ptr CUChar -> CInt -> IO Status
- xDeleteProperty :: Display -> Window -> Atom -> IO Status
- xGetWindowProperty :: Display -> Window -> Atom -> CLong -> CLong -> Bool -> Atom -> Ptr Atom -> Ptr CInt -> Ptr CULong -> Ptr CULong -> Ptr (Ptr CUChar) -> IO Status
- xUnmapWindow :: Display -> Window -> IO CInt
- xGetWMNormalHints :: Display -> Window -> Ptr SizeHints -> Ptr CLong -> IO Status
- xGetClassHint :: Display -> Window -> Ptr ClassHint -> IO Status
- xGetWMHints :: Display -> Window -> IO (Ptr WMHints)
- xAllocWMHints :: IO (Ptr WMHints)
- xSetWMHints :: Display -> Window -> Ptr WMHints -> IO Status
- isCursorKey :: KeySym -> Bool
- isFunctionKey :: KeySym -> Bool
- isKeypadKey :: KeySym -> Bool
- isMiscFunctionKey :: KeySym -> Bool
- isModifierKey :: KeySym -> Bool
- isPFKey :: KeySym -> Bool
- isPrivateKeypadKey :: KeySym -> Bool
- xSetSelectionOwner :: Display -> Atom -> Window -> Time -> IO ()
- xGetSelectionOwner :: Display -> Atom -> IO Window
- xConvertSelection :: Display -> Atom -> Atom -> Atom -> Window -> Time -> IO ()
- mkXErrorHandler :: CXErrorHandler -> IO (FunPtr CXErrorHandler)
- getXErrorHandler :: FunPtr CXErrorHandler -> CXErrorHandler
- _xSetErrorHandler :: FunPtr CXErrorHandler -> IO (FunPtr CXErrorHandler)
- mapRaised :: Display -> Window -> IO CInt
- xGetCommand :: Display -> Window -> Ptr (Ptr CWString) -> Ptr CInt -> IO Status
- xGetModifierMapping :: Display -> IO (Ptr ())
- xFreeModifiermap :: Ptr () -> IO (Ptr CInt)
- data Event
- = AnyEvent {
- ev_event_type :: !EventType
- ev_serial :: !CULong
- ev_send_event :: !Bool
- ev_event_display :: Display
- ev_window :: !Window
- | ConfigureRequestEvent {
- ev_event_type :: !EventType
- ev_serial :: !CULong
- ev_send_event :: !Bool
- ev_event_display :: Display
- ev_parent :: !Window
- ev_window :: !Window
- ev_x :: !CInt
- ev_y :: !CInt
- ev_width :: !CInt
- ev_height :: !CInt
- ev_border_width :: !CInt
- ev_above :: !Window
- ev_detail :: !NotifyDetail
- ev_value_mask :: !CULong
- | ConfigureEvent { }
- | MapRequestEvent {
- ev_event_type :: !EventType
- ev_serial :: !CULong
- ev_send_event :: !Bool
- ev_event_display :: Display
- ev_parent :: !Window
- ev_window :: !Window
- | KeyEvent {
- ev_event_type :: !EventType
- ev_serial :: !CULong
- ev_send_event :: !Bool
- ev_event_display :: Display
- ev_window :: !Window
- ev_root :: !Window
- ev_subwindow :: !Window
- ev_time :: !Time
- ev_x :: !CInt
- ev_y :: !CInt
- ev_x_root :: !CInt
- ev_y_root :: !CInt
- ev_state :: !KeyMask
- ev_keycode :: !KeyCode
- ev_same_screen :: !Bool
- | ButtonEvent { }
- | MotionEvent {
- ev_event_type :: !EventType
- ev_serial :: !CULong
- ev_send_event :: !Bool
- ev_event_display :: Display
- ev_x :: !CInt
- ev_y :: !CInt
- ev_window :: !Window
- | DestroyWindowEvent {
- ev_event_type :: !EventType
- ev_serial :: !CULong
- ev_send_event :: !Bool
- ev_event_display :: Display
- ev_event :: !Window
- ev_window :: !Window
- | UnmapEvent {
- ev_event_type :: !EventType
- ev_serial :: !CULong
- ev_send_event :: !Bool
- ev_event_display :: Display
- ev_event :: !Window
- ev_window :: !Window
- ev_from_configure :: !Bool
- | MapNotifyEvent {
- ev_event_type :: !EventType
- ev_serial :: !CULong
- ev_send_event :: !Bool
- ev_event_display :: Display
- ev_event :: !Window
- ev_window :: !Window
- ev_override_redirect :: !Bool
- | MappingNotifyEvent {
- ev_event_type :: !EventType
- ev_serial :: !CULong
- ev_send_event :: !Bool
- ev_event_display :: Display
- ev_window :: !Window
- ev_request :: !MappingRequest
- ev_first_keycode :: !KeyCode
- ev_count :: !CInt
- | CrossingEvent {
- ev_event_type :: !EventType
- ev_serial :: !CULong
- ev_send_event :: !Bool
- ev_event_display :: Display
- ev_window :: !Window
- ev_root :: !Window
- ev_subwindow :: !Window
- ev_time :: !Time
- ev_x :: !CInt
- ev_y :: !CInt
- ev_x_root :: !CInt
- ev_y_root :: !CInt
- ev_mode :: !NotifyMode
- ev_detail :: !NotifyDetail
- ev_same_screen :: !Bool
- ev_focus :: !Bool
- ev_state :: !Modifier
- | SelectionRequest {
- ev_event_type :: !EventType
- ev_serial :: !CULong
- ev_send_event :: !Bool
- ev_event_display :: Display
- ev_owner :: !Window
- ev_requestor :: !Window
- ev_selection :: !Atom
- ev_target :: !Atom
- ev_property :: !Atom
- ev_time :: !Time
- | SelectionClear {
- ev_event_type :: !EventType
- ev_serial :: !CULong
- ev_send_event :: !Bool
- ev_event_display :: Display
- ev_window :: !Window
- ev_selection :: !Atom
- ev_time :: !Time
- | PropertyEvent {
- ev_event_type :: !EventType
- ev_serial :: !CULong
- ev_send_event :: !Bool
- ev_event_display :: Display
- ev_window :: !Window
- ev_atom :: !Atom
- ev_time :: !Time
- ev_propstate :: !CInt
- | ExposeEvent { }
- | ClientMessageEvent {
- ev_event_type :: !EventType
- ev_serial :: !CULong
- ev_send_event :: !Bool
- ev_event_display :: Display
- ev_window :: !Window
- ev_message_type :: !Atom
- ev_data :: ![CInt]
- | RRScreenChangeNotifyEvent {
- ev_event_type :: !EventType
- ev_serial :: !CULong
- ev_send_event :: !Bool
- ev_event_display :: Display
- ev_window :: !Window
- ev_root :: !Window
- ev_timestamp :: !Time
- ev_config_timestamp :: !Time
- ev_size_index :: !SizeID
- ev_subpixel_order :: !SubpixelOrder
- ev_rotation :: !Rotation
- ev_width :: !CInt
- ev_height :: !CInt
- ev_mwidth :: !CInt
- ev_mheight :: !CInt
- | RRNotifyEvent {
- ev_event_type :: !EventType
- ev_serial :: !CULong
- ev_send_event :: !Bool
- ev_event_display :: Display
- ev_window :: !Window
- ev_subtype :: !CInt
- | RRCrtcChangeNotifyEvent {
- ev_event_type :: !EventType
- ev_serial :: !CULong
- ev_send_event :: !Bool
- ev_event_display :: Display
- ev_window :: !Window
- ev_subtype :: !CInt
- ev_crtc :: !RRCrtc
- ev_rr_mode :: !RRMode
- ev_rotation :: !Rotation
- ev_x :: !CInt
- ev_y :: !CInt
- ev_rr_width :: !CUInt
- ev_rr_height :: !CUInt
- | RROutputChangeNotifyEvent {
- ev_event_type :: !EventType
- ev_serial :: !CULong
- ev_send_event :: !Bool
- ev_event_display :: Display
- ev_window :: !Window
- ev_subtype :: !CInt
- ev_output :: !RROutput
- ev_crtc :: !RRCrtc
- ev_rr_mode :: !RRMode
- ev_rotation :: !Rotation
- ev_connection :: !Connection
- ev_subpixel_order :: !SubpixelOrder
- | RROutputPropertyNotifyEvent {
- ev_event_type :: !EventType
- ev_serial :: !CULong
- ev_send_event :: !Bool
- ev_event_display :: Display
- ev_window :: !Window
- ev_subtype :: !CInt
- ev_output :: !RROutput
- ev_property :: !Atom
- ev_timestamp :: !Time
- ev_rr_state :: !CInt
- | ScreenSaverNotifyEvent {
- ev_event_type :: !EventType
- ev_serial :: !CULong
- ev_send_event :: !Bool
- ev_event_display :: Display
- ev_window :: !Window
- ev_root :: !Window
- ev_ss_state :: !XScreenSaverState
- ev_ss_kind :: !XScreenSaverKind
- ev_forced :: !Bool
- ev_time :: !Time
- = AnyEvent {
- data WindowChanges = WindowChanges {
- wc_x :: CInt
- wc_y :: CInt
- wc_width :: CInt
- wc_height :: CInt
- wc_border_width :: CInt
- wc_sibling :: Window
- wc_stack_mode :: CInt
- data WindowAttributes = WindowAttributes {
- wa_x :: CInt
- wa_y :: CInt
- wa_width :: CInt
- wa_height :: CInt
- wa_border_width :: CInt
- wa_colormap :: Colormap
- wa_map_installed :: Bool
- wa_map_state :: CInt
- wa_override_redirect :: Bool
- data TextProperty = TextProperty {}
- newtype FontSet = FontSet (Ptr FontSet)
- data SizeHints = SizeHints {
- sh_min_size :: Maybe (Dimension, Dimension)
- sh_max_size :: Maybe (Dimension, Dimension)
- sh_resize_inc :: Maybe (Dimension, Dimension)
- sh_aspect :: Maybe ((Dimension, Dimension), (Dimension, Dimension))
- sh_base_size :: Maybe (Dimension, Dimension)
- sh_win_gravity :: Maybe BitGravity
- data ClassHint = ClassHint {}
- data WMHints = WMHints {}
- type XErrorEventPtr = Ptr ()
- type CXErrorHandler = Display -> XErrorEventPtr -> IO CInt
- type XErrorHandler = Display -> XErrorEventPtr -> IO ()
- data ErrorEvent = ErrorEvent {
- ev_type :: !CInt
- ev_display :: Display
- ev_serialnum :: !CULong
- ev_error_code :: !CUChar
- ev_request_code :: !CUChar
- ev_minor_code :: !CUChar
- ev_resourceid :: !XID
- restackWindows :: Display -> [Window] -> IO ()
- withdrawWindow :: Display -> Window -> ScreenNumber -> IO ()
- iconifyWindow :: Display -> Window -> ScreenNumber -> IO ()
- translateCoordinates :: Display -> Window -> Window -> Position -> Position -> IO (Bool, Position, Position, Window)
- storeName :: Display -> Window -> String -> IO ()
- createSimpleWindow :: Display -> Window -> Position -> Position -> Dimension -> Dimension -> CInt -> Pixel -> Pixel -> IO Window
- createWindow :: Display -> Window -> Position -> Position -> Dimension -> Dimension -> CInt -> CInt -> WindowClass -> Visual -> AttributeMask -> Ptr SetWindowAttributes -> IO Window
- moveResizeWindow :: Display -> Window -> Position -> Position -> Dimension -> Dimension -> IO ()
- resizeWindow :: Display -> Window -> Dimension -> Dimension -> IO ()
- moveWindow :: Display -> Window -> Position -> Position -> IO ()
- reparentWindow :: Display -> Window -> Window -> Position -> Position -> IO ()
- mapSubwindows :: Display -> Window -> IO ()
- unmapSubwindows :: Display -> Window -> IO ()
- mapWindow :: Display -> Window -> IO ()
- lowerWindow :: Display -> Window -> IO ()
- raiseWindow :: Display -> Window -> IO ()
- circulateSubwindowsDown :: Display -> Window -> IO ()
- circulateSubwindowsUp :: Display -> Window -> IO ()
- circulateSubwindows :: Display -> Window -> CirculationDirection -> IO ()
- destroyWindow :: Display -> Window -> IO ()
- destroySubwindows :: Display -> Window -> IO ()
- setWindowBorder :: Display -> Window -> Pixel -> IO ()
- setWindowBorderPixmap :: Display -> Window -> Pixmap -> IO ()
- setWindowBorderWidth :: Display -> Window -> Dimension -> IO ()
- setWindowBackground :: Display -> Window -> Pixel -> IO ()
- setWindowBackgroundPixmap :: Display -> Window -> Pixmap -> IO ()
- setWindowColormap :: Display -> Window -> Colormap -> IO ()
- addToSaveSet :: Display -> Window -> IO ()
- removeFromSaveSet :: Display -> Window -> IO ()
- changeSaveSet :: Display -> Window -> ChangeSaveSetMode -> IO ()
- clearWindow :: Display -> Window -> IO ()
- clearArea :: Display -> Window -> Position -> Position -> Dimension -> Dimension -> Bool -> IO ()
- setTextProperty :: Display -> Window -> String -> Atom -> IO ()
- rotateBuffers :: Display -> CInt -> IO ()
- fetchBytes :: Display -> IO String
- fetchBuffer :: Display -> CInt -> IO String
- storeBytes :: Display -> String -> IO ()
- storeBuffer :: Display -> String -> CInt -> IO ()
- drawImageString :: Display -> Drawable -> GC -> Position -> Position -> String -> IO ()
- drawString :: Display -> Drawable -> GC -> Position -> Position -> String -> IO ()
- fillArcs :: Display -> Drawable -> GC -> [Arc] -> IO ()
- fillPolygon :: Display -> Drawable -> GC -> [Point] -> PolygonShape -> CoordinateMode -> IO ()
- fillRectangles :: Display -> Drawable -> GC -> [Rectangle] -> IO ()
- drawArcs :: Display -> Drawable -> GC -> [Arc] -> IO ()
- drawRectangles :: Display -> Drawable -> GC -> [Rectangle] -> IO ()
- drawSegments :: Display -> Drawable -> GC -> [Segment] -> IO ()
- drawLines :: Display -> Drawable -> GC -> [Point] -> CoordinateMode -> IO ()
- drawPoints :: Display -> Drawable -> GC -> [Point] -> CoordinateMode -> IO ()
- set_cursor :: Ptr SetWindowAttributes -> Cursor -> IO ()
- set_colormap :: Ptr SetWindowAttributes -> Colormap -> IO ()
- set_override_redirect :: Ptr SetWindowAttributes -> Bool -> IO ()
- set_do_not_propagate_mask :: Ptr SetWindowAttributes -> EventMask -> IO ()
- set_event_mask :: Ptr SetWindowAttributes -> EventMask -> IO ()
- set_save_under :: Ptr SetWindowAttributes -> Bool -> IO ()
- set_backing_pixel :: Ptr SetWindowAttributes -> Pixel -> IO ()
- set_backing_planes :: Ptr SetWindowAttributes -> Pixel -> IO ()
- set_backing_store :: Ptr SetWindowAttributes -> BackingStore -> IO ()
- set_win_gravity :: Ptr SetWindowAttributes -> WindowGravity -> IO ()
- set_bit_gravity :: Ptr SetWindowAttributes -> BitGravity -> IO ()
- set_border_pixel :: Ptr SetWindowAttributes -> Pixel -> IO ()
- set_border_pixmap :: Ptr SetWindowAttributes -> Pixmap -> IO ()
- set_background_pixel :: Ptr SetWindowAttributes -> Pixel -> IO ()
- set_background_pixmap :: Ptr SetWindowAttributes -> Pixmap -> IO ()
- allocaSetWindowAttributes :: (Ptr SetWindowAttributes -> IO a) -> IO a
- setWMProtocols :: Display -> Window -> [Atom] -> IO ()
- recolorCursor :: Display -> Cursor -> Color -> Color -> IO ()
- createGlyphCursor :: Display -> Font -> Font -> Glyph -> Glyph -> Color -> Color -> IO Cursor
- createPixmapCursor :: Display -> Pixmap -> Pixmap -> Color -> Color -> Dimension -> Dimension -> IO Cursor
- setIconName :: Display -> Window -> String -> IO ()
- getIconName :: Display -> Window -> IO String
- lookupString :: XKeyEventPtr -> IO (Maybe KeySym, String)
- noSymbol :: KeySym
- stringToKeysym :: String -> KeySym
- keysymToString :: KeySym -> String
- displayKeycodes :: Display -> (CInt, CInt)
- readBitmapFile :: Display -> Drawable -> String -> IO (Either String (Dimension, Dimension, Pixmap, Maybe CInt, Maybe CInt))
- matchVisualInfo :: Display -> ScreenNumber -> CInt -> CInt -> IO (Maybe VisualInfo)
- getVisualInfo :: Display -> VisualInfoMask -> VisualInfo -> IO [VisualInfo]
- visualAllMask :: VisualInfoMask
- visualBitsPerRGBMask :: VisualInfoMask
- visualColormapSizeMask :: VisualInfoMask
- visualBlueMaskMask :: VisualInfoMask
- visualGreenMaskMask :: VisualInfoMask
- visualRedMaskMask :: VisualInfoMask
- visualClassMask :: VisualInfoMask
- visualDepthMask :: VisualInfoMask
- visualScreenMask :: VisualInfoMask
- visualIDMask :: VisualInfoMask
- visualNoMask :: VisualInfoMask
- getPointerControl :: Display -> IO (CInt, CInt, CInt)
- getScreenSaver :: Display -> IO (CInt, CInt, PreferBlankingMode, AllowExposuresMode)
- screenSaverReset :: ScreenSaverMode
- screenSaverActive :: ScreenSaverMode
- defaultBlanking :: PreferBlankingMode
- preferBlanking :: PreferBlankingMode
- dontPreferBlanking :: PreferBlankingMode
- defaultExposures :: AllowExposuresMode
- allowExposures :: AllowExposuresMode
- dontAllowExposures :: AllowExposuresMode
- setLocaleModifiers :: String -> IO String
- getGeometry :: Display -> Drawable -> IO (Window, Position, Position, Dimension, Dimension, Dimension, CInt)
- geometry :: Display -> CInt -> String -> String -> Dimension -> Dimension -> Dimension -> CInt -> CInt -> IO (CInt, Position, Position, Dimension, Dimension)
- setDefaultErrorHandler :: IO ()
- displayName :: String -> String
- queryPointer :: Display -> Window -> IO (Bool, Window, Window, CInt, CInt, CInt, CInt, Modifier)
- queryBestSize :: Display -> QueryBestSizeClass -> Drawable -> Dimension -> Dimension -> IO (Dimension, Dimension)
- queryBestCursor :: Display -> Drawable -> Dimension -> Dimension -> IO (Dimension, Dimension)
- queryBestStipple :: Display -> Drawable -> Dimension -> Dimension -> IO (Dimension, Dimension)
- queryBestTile :: Display -> Drawable -> Dimension -> Dimension -> IO (Dimension, Dimension)
- getInputFocus :: Display -> IO (Window, FocusMode)
- rmInitialize :: IO ()
- autoRepeatOff :: Display -> IO ()
- autoRepeatOn :: Display -> IO ()
- bell :: Display -> CInt -> IO ()
- setCloseDownMode :: Display -> CloseDownMode -> IO ()
- lastKnownRequestProcessed :: Display -> IO CInt
- setInputFocus :: Display -> Window -> FocusMode -> Time -> IO ()
- grabButton :: Display -> Button -> ButtonMask -> Window -> Bool -> EventMask -> GrabMode -> GrabMode -> Window -> Cursor -> IO ()
- ungrabButton :: Display -> Button -> ButtonMask -> Window -> IO ()
- grabPointer :: Display -> Window -> Bool -> EventMask -> GrabMode -> GrabMode -> Window -> Cursor -> Time -> IO GrabStatus
- ungrabPointer :: Display -> Time -> IO ()
- grabKey :: Display -> KeyCode -> KeyMask -> Window -> Bool -> GrabMode -> GrabMode -> IO ()
- ungrabKey :: Display -> KeyCode -> KeyMask -> Window -> IO ()
- grabKeyboard :: Display -> Window -> Bool -> GrabMode -> GrabMode -> Time -> IO GrabStatus
- ungrabKeyboard :: Display -> Time -> IO ()
- grabServer :: Display -> IO ()
- ungrabServer :: Display -> IO ()
- supportsLocale :: IO Bool
- setScreenSaver :: Display -> CInt -> CInt -> PreferBlankingMode -> AllowExposuresMode -> IO ()
- activateScreenSaver :: Display -> IO ()
- resetScreenSaver :: Display -> IO ()
- forceScreenSaver :: Display -> ScreenSaverMode -> IO ()
- warpPointer :: Display -> Window -> Window -> Position -> Position -> Dimension -> Dimension -> Position -> Position -> IO ()
- visualIDFromVisual :: Visual -> IO VisualID
- initThreads :: IO Status
- lockDisplay :: Display -> IO ()
- unlockDisplay :: Display -> IO ()
- createPixmap :: Display -> Drawable -> Dimension -> Dimension -> CInt -> IO Pixmap
- freePixmap :: Display -> Pixmap -> IO ()
- bitmapBitOrder :: Display -> ByteOrder
- bitmapUnit :: Display -> CInt
- bitmapPad :: Display -> CInt
- lookupKeysym :: XKeyEventPtr -> CInt -> IO KeySym
- keycodeToKeysym :: Display -> KeyCode -> CInt -> IO KeySym
- keysymToKeycode :: Display -> KeySym -> IO KeyCode
- defineCursor :: Display -> Window -> Cursor -> IO ()
- undefineCursor :: Display -> Window -> IO ()
- createFontCursor :: Display -> Glyph -> IO Cursor
- freeCursor :: Display -> Font -> IO ()
- drawPoint :: Display -> Drawable -> GC -> Position -> Position -> IO ()
- drawLine :: Display -> Drawable -> GC -> Position -> Position -> Position -> Position -> IO ()
- drawRectangle :: Display -> Drawable -> GC -> Position -> Position -> Dimension -> Dimension -> IO ()
- drawArc :: Display -> Drawable -> GC -> Position -> Position -> Dimension -> Dimension -> Angle -> Angle -> IO ()
- fillRectangle :: Display -> Drawable -> GC -> Position -> Position -> Dimension -> Dimension -> IO ()
- fillArc :: Display -> Drawable -> GC -> Position -> Position -> Dimension -> Dimension -> Angle -> Angle -> IO ()
- copyArea :: Display -> Drawable -> Drawable -> GC -> Position -> Position -> Dimension -> Dimension -> Position -> Position -> IO ()
- copyPlane :: Display -> Drawable -> Drawable -> GC -> Position -> Position -> Dimension -> Dimension -> Position -> Position -> Pixel -> IO ()
- type AllowExposuresMode = CInt
- type PreferBlankingMode = CInt
- type ScreenSaverMode = CInt
- type VisualInfoMask = CLong
- lAST_PREDEFINED :: Atom
- wM_TRANSIENT_FOR :: Atom
- wM_CLASS :: Atom
- cAP_HEIGHT :: Atom
- fULL_NAME :: Atom
- fAMILY_NAME :: Atom
- fONT_NAME :: Atom
- nOTICE :: Atom
- cOPYRIGHT :: Atom
- rESOLUTION :: Atom
- pOINT_SIZE :: Atom
- wEIGHT :: Atom
- qUAD_WIDTH :: Atom
- x_HEIGHT :: Atom
- iTALIC_ANGLE :: Atom
- sTRIKEOUT_DESCENT :: Atom
- sTRIKEOUT_ASCENT :: Atom
- uNDERLINE_THICKNESS :: Atom
- uNDERLINE_POSITION :: Atom
- sUBSCRIPT_Y :: Atom
- sUBSCRIPT_X :: Atom
- sUPERSCRIPT_Y :: Atom
- sUPERSCRIPT_X :: Atom
- eND_SPACE :: Atom
- mAX_SPACE :: Atom
- nORM_SPACE :: Atom
- mIN_SPACE :: Atom
- wM_ZOOM_HINTS :: Atom
- wM_SIZE_HINTS :: Atom
- wM_NORMAL_HINTS :: Atom
- wM_NAME :: Atom
- wM_ICON_SIZE :: Atom
- wM_ICON_NAME :: Atom
- wM_CLIENT_MACHINE :: Atom
- wM_HINTS :: Atom
- wM_COMMAND :: Atom
- wINDOW :: Atom
- vISUALID :: Atom
- sTRING :: Atom
- rGB_RED_MAP :: Atom
- rGB_GREEN_MAP :: Atom
- rGB_GRAY_MAP :: Atom
- rGB_DEFAULT_MAP :: Atom
- rGB_BLUE_MAP :: Atom
- rGB_BEST_MAP :: Atom
- rGB_COLOR_MAP :: Atom
- rESOURCE_MANAGER :: Atom
- rECTANGLE :: Atom
- pOINT :: Atom
- pIXMAP :: Atom
- iNTEGER :: Atom
- fONT :: Atom
- dRAWABLE :: Atom
- cUT_BUFFER7 :: Atom
- cUT_BUFFER6 :: Atom
- cUT_BUFFER5 :: Atom
- cUT_BUFFER4 :: Atom
- cUT_BUFFER3 :: Atom
- cUT_BUFFER2 :: Atom
- cUT_BUFFER1 :: Atom
- cUT_BUFFER0 :: Atom
- cURSOR :: Atom
- cOLORMAP :: Atom
- cARDINAL :: Atom
- bITMAP :: Atom
- aTOM :: Atom
- aRC :: Atom
- sECONDARY :: Atom
- pRIMARY :: Atom
- getAtomNames :: Display -> [Atom] -> IO [String]
- getAtomName :: Display -> Atom -> IO (Maybe String)
- internAtom :: Display -> String -> Bool -> IO Atom
- queryColors :: Display -> Colormap -> [Color] -> IO [Color]
- queryColor :: Display -> Colormap -> Color -> IO Color
- storeColor :: Display -> Colormap -> Color -> IO ()
- freeColors :: Display -> Colormap -> [Pixel] -> Pixel -> IO ()
- parseColor :: Display -> Colormap -> String -> IO Color
- allocColor :: Display -> Colormap -> Color -> IO Color
- allocNamedColor :: Display -> Colormap -> String -> IO (Color, Color)
- lookupColor :: Display -> Colormap -> String -> IO (Color, Color)
- installColormap :: Display -> Colormap -> IO ()
- uninstallColormap :: Display -> Colormap -> IO ()
- copyColormapAndFree :: Display -> Colormap -> IO Colormap
- createColormap :: Display -> Window -> Visual -> ColormapAlloc -> IO Colormap
- freeColormap :: Display -> Colormap -> IO ()
- createGC :: Display -> Drawable -> IO GC
- setDashes :: Display -> GC -> CInt -> String -> CInt -> IO ()
- setArcMode :: Display -> GC -> ArcMode -> IO ()
- setBackground :: Display -> GC -> Pixel -> IO ()
- setForeground :: Display -> GC -> Pixel -> IO ()
- setFunction :: Display -> GC -> GXFunction -> IO ()
- setGraphicsExposures :: Display -> GC -> Bool -> IO ()
- setClipMask :: Display -> GC -> Pixmap -> IO ()
- setClipOrigin :: Display -> GC -> Position -> Position -> IO ()
- setFillRule :: Display -> GC -> FillRule -> IO ()
- setFillStyle :: Display -> GC -> FillStyle -> IO ()
- setFont :: Display -> GC -> Font -> IO ()
- setLineAttributes :: Display -> GC -> CInt -> LineStyle -> CapStyle -> JoinStyle -> IO ()
- setPlaneMask :: Display -> GC -> Pixel -> IO ()
- setState :: Display -> GC -> Pixel -> Pixel -> GXFunction -> Pixel -> IO ()
- setStipple :: Display -> GC -> Pixmap -> IO ()
- setSubwindowMode :: Display -> GC -> SubWindowMode -> IO ()
- setTSOrigin :: Display -> GC -> Position -> Position -> IO ()
- setTile :: Display -> GC -> Pixmap -> IO ()
- gContextFromGC :: GC -> GContext
- freeGC :: Display -> GC -> IO ()
- flushGC :: Display -> GC -> IO ()
- copyGC :: Display -> GC -> Mask -> GC -> IO ()
- sendEvent :: Display -> Window -> Bool -> EventMask -> XEventPtr -> IO ()
- gettimeofday_in_milliseconds :: IO Integer
- waitForEvent :: Display -> Word32 -> IO Bool
- get_ConfigureEvent :: XEventPtr -> IO XConfigureEvent
- get_ExposeEvent :: XEventPtr -> IO XExposeEvent
- get_MotionEvent :: XEventPtr -> IO XMotionEvent
- get_ButtonEvent :: XEventPtr -> IO XButtonEvent
- asKeyEvent :: XEventPtr -> XKeyEventPtr
- get_KeyEvent :: XEventPtr -> IO XKeyEvent
- get_Window :: XEventPtr -> IO Window
- get_EventType :: XEventPtr -> IO EventType
- allocaXEvent :: (XEventPtr -> IO a) -> IO a
- queuedAfterReading :: QueuedMode
- queuedAfterFlush :: QueuedMode
- queuedAlready :: QueuedMode
- flush :: Display -> IO ()
- sync :: Display -> Bool -> IO ()
- pending :: Display -> IO CInt
- eventsQueued :: Display -> QueuedMode -> IO CInt
- nextEvent :: Display -> XEventPtr -> IO ()
- allowEvents :: Display -> AllowEvents -> Time -> IO ()
- selectInput :: Display -> Window -> EventMask -> IO ()
- windowEvent :: Display -> Window -> EventMask -> XEventPtr -> IO ()
- checkWindowEvent :: Display -> Window -> EventMask -> XEventPtr -> IO Bool
- maskEvent :: Display -> EventMask -> XEventPtr -> IO ()
- checkMaskEvent :: Display -> EventMask -> XEventPtr -> IO Bool
- checkTypedEvent :: Display -> EventType -> XEventPtr -> IO Bool
- checkTypedWindowEvent :: Display -> Window -> EventType -> XEventPtr -> IO Bool
- putBackEvent :: Display -> XEventPtr -> IO ()
- peekEvent :: Display -> XEventPtr -> IO ()
- type QueuedMode = CInt
- newtype XEvent = XEvent XEventPtr
- type XEventPtr = Ptr XEvent
- type XKeyEvent = (Window, Window, Time, CInt, CInt, CInt, CInt, Modifier, KeyCode, Bool)
- type XKeyEventPtr = Ptr XKeyEvent
- type XButtonEvent = (Window, Window, Time, CInt, CInt, CInt, CInt, Modifier, Button, Bool)
- type XMotionEvent = (Window, Window, Time, CInt, CInt, CInt, CInt, Modifier, NotifyMode, Bool)
- type XExposeEvent = (Position, Position, Dimension, Dimension, CInt)
- type XMappingEvent = (MappingRequest, KeyCode, CInt)
- type XConfigureEvent = (Position, Position, Dimension, Dimension)
- openDisplay :: String -> IO Display
- serverVendor :: Display -> String
- displayString :: Display -> String
- screenResourceString :: Screen -> String
- resourceManagerString :: Display -> String
- allPlanes_aux :: Pixel
- blackPixel :: Display -> ScreenNumber -> Pixel
- whitePixel :: Display -> ScreenNumber -> Pixel
- connectionNumber :: Display -> CInt
- defaultColormap :: Display -> ScreenNumber -> Colormap
- defaultGC :: Display -> ScreenNumber -> GC
- defaultDepth :: Display -> ScreenNumber -> CInt
- defaultScreen :: Display -> ScreenNumber
- defaultScreenOfDisplay :: Display -> Screen
- displayHeight :: Display -> ScreenNumber -> CInt
- displayHeightMM :: Display -> ScreenNumber -> CInt
- displayWidth :: Display -> ScreenNumber -> CInt
- displayWidthMM :: Display -> ScreenNumber -> CInt
- maxRequestSize :: Display -> CInt
- displayMotionBufferSize :: Display -> CInt
- imageByteOrder :: Display -> CInt
- protocolRevision :: Display -> CInt
- protocolVersion :: Display -> CInt
- screenCount :: Display -> CInt
- defaultVisual :: Display -> ScreenNumber -> Visual
- displayCells :: Display -> ScreenNumber -> CInt
- displayPlanes :: Display -> ScreenNumber -> CInt
- screenOfDisplay :: Display -> ScreenNumber -> Screen
- defaultRootWindow :: Display -> Window
- rootWindow :: Display -> ScreenNumber -> IO Window
- qLength :: Display -> IO CInt
- noOp :: Display -> IO ()
- closeDisplay :: Display -> IO ()
- xC_xterm :: Glyph
- xC_watch :: Glyph
- xC_ur_angle :: Glyph
- xC_umbrella :: Glyph
- xC_ul_angle :: Glyph
- xC_trek :: Glyph
- xC_top_tee :: Glyph
- xC_top_side :: Glyph
- xC_top_right_corner :: Glyph
- xC_top_left_corner :: Glyph
- xC_top_left_arrow :: Glyph
- xC_tcross :: Glyph
- xC_target :: Glyph
- xC_star :: Glyph
- xC_spraycan :: Glyph
- xC_spider :: Glyph
- xC_sizing :: Glyph
- xC_shuttle :: Glyph
- xC_sb_v_double_arrow :: Glyph
- xC_sb_up_arrow :: Glyph
- xC_sb_right_arrow :: Glyph
- xC_sb_left_arrow :: Glyph
- xC_sb_h_double_arrow :: Glyph
- xC_sb_down_arrow :: Glyph
- xC_sailboat :: Glyph
- xC_rtl_logo :: Glyph
- xC_rightbutton :: Glyph
- xC_right_tee :: Glyph
- xC_right_side :: Glyph
- xC_right_ptr :: Glyph
- xC_question_arrow :: Glyph
- xC_plus :: Glyph
- xC_pirate :: Glyph
- xC_pencil :: Glyph
- xC_mouse :: Glyph
- xC_man :: Glyph
- xC_lr_angle :: Glyph
- xC_ll_angle :: Glyph
- xC_leftbutton :: Glyph
- xC_left_tee :: Glyph
- xC_left_side :: Glyph
- xC_left_ptr :: Glyph
- xC_iron_cross :: Glyph
- xC_icon :: Glyph
- xC_heart :: Glyph
- xC_hand2 :: Glyph
- xC_hand1 :: Glyph
- xC_gumby :: Glyph
- xC_gobbler :: Glyph
- xC_fleur :: Glyph
- xC_exchange :: Glyph
- xC_draped_box :: Glyph
- xC_draft_small :: Glyph
- xC_draft_large :: Glyph
- xC_double_arrow :: Glyph
- xC_dotbox :: Glyph
- xC_dot :: Glyph
- xC_diamond_cross :: Glyph
- xC_crosshair :: Glyph
- xC_cross_reverse :: Glyph
- xC_cross :: Glyph
- xC_coffee_mug :: Glyph
- xC_clock :: Glyph
- xC_circle :: Glyph
- xC_center_ptr :: Glyph
- xC_box_spiral :: Glyph
- xC_bottom_tee :: Glyph
- xC_bottom_side :: Glyph
- xC_bottom_right_corner :: Glyph
- xC_bottom_left_corner :: Glyph
- xC_bogosity :: Glyph
- xC_boat :: Glyph
- xC_based_arrow_up :: Glyph
- xC_based_arrow_down :: Glyph
- xC_arrow :: Glyph
- xC_X_cursor :: Glyph
- textWidth :: FontStruct -> String -> Int32
- textExtents :: FontStruct -> String -> (FontDirection, Int32, Int32, CharStruct)
- descentFromFontStruct :: FontStruct -> Int32
- ascentFromFontStruct :: FontStruct -> Int32
- fontFromFontStruct :: FontStruct -> Font
- loadQueryFont :: Display -> String -> IO FontStruct
- fontFromGC :: Display -> GC -> IO Font
- queryFont :: Display -> Font -> IO FontStruct
- freeFont :: Display -> FontStruct -> IO ()
- type Glyph = Word16
- data FontStruct
- type CharStruct = (CInt, CInt, CInt, CInt, CInt)
- getPixel :: Image -> CInt -> CInt -> CULong
- getImage :: Display -> Drawable -> CInt -> CInt -> CUInt -> CUInt -> CULong -> ImageFormat -> IO Image
- createImage :: Display -> Visual -> CInt -> ImageFormat -> CInt -> Ptr CChar -> Dimension -> Dimension -> CInt -> CInt -> IO Image
- putImage :: Display -> Drawable -> GC -> Image -> Position -> Position -> Position -> Position -> Dimension -> Dimension -> IO ()
- destroyImage :: Image -> IO ()
- xGetPixel :: Image -> CInt -> CInt -> IO CULong
- setRegion :: Display -> GC -> Region -> IO CInt
- shrinkRegion :: Region -> Point -> IO CInt
- offsetRegion :: Region -> Point -> IO CInt
- clipBox :: Region -> IO (Rectangle, CInt)
- rectInRegion :: Region -> Rectangle -> IO RectInRegionResult
- pointInRegion :: Region -> Point -> IO Bool
- equalRegion :: Region -> Region -> IO Bool
- emptyRegion :: Region -> IO Bool
- xorRegion :: Region -> Region -> Region -> IO CInt
- unionRegion :: Region -> Region -> Region -> IO CInt
- unionRectWithRegion :: Rectangle -> Region -> Region -> IO CInt
- subtractRegion :: Region -> Region -> Region -> IO CInt
- intersectRegion :: Region -> Region -> Region -> IO CInt
- polygonRegion :: [Point] -> FillRule -> IO Region
- createRegion :: IO Region
- rectanglePart :: RectInRegionResult
- rectangleIn :: RectInRegionResult
- rectangleOut :: RectInRegionResult
- data Region
- type RectInRegionResult = CInt
- blackPixelOfScreen :: Screen -> Pixel
- whitePixelOfScreen :: Screen -> Pixel
- cellsOfScreen :: Screen -> CInt
- defaultColormapOfScreen :: Screen -> Colormap
- defaultDepthOfScreen :: Screen -> CInt
- defaultGCOfScreen :: Screen -> GC
- defaultVisualOfScreen :: Screen -> Visual
- doesBackingStore :: Screen -> Bool
- doesSaveUnders :: Screen -> Bool
- displayOfScreen :: Screen -> Display
- eventMaskOfScreen :: Screen -> EventMask
- minCmapsOfScreen :: Screen -> CInt
- maxCmapsOfScreen :: Screen -> CInt
- rootWindowOfScreen :: Screen -> Window
- widthOfScreen :: Screen -> Dimension
- widthMMOfScreen :: Screen -> Dimension
- heightOfScreen :: Screen -> Dimension
- heightMMOfScreen :: Screen -> Dimension
- planesOfScreen :: Screen -> CInt
- screenNumberOfScreen :: Screen -> ScreenNumber
- newtype Display = Display (Ptr Display)
- data Screen
- data Visual
- data GC
- data SetWindowAttributes
- data VisualInfo = VisualInfo {}
- data Image
- type Pixel = Word64
- type Position = Int32
- type Dimension = Word32
- type Angle = CInt
- type ScreenNumber = Word32
- type Buffer = CInt
- data Point = Point {}
- data Rectangle = Rectangle {
- rect_x :: !Position
- rect_y :: !Position
- rect_width :: !Dimension
- rect_height :: !Dimension
- data Arc = Arc {
- arc_x :: Position
- arc_y :: Position
- arc_width :: Dimension
- arc_height :: Dimension
- arc_angle1 :: Angle
- arc_angle2 :: Angle
- data Segment = Segment {}
- data Color = Color {
- color_pixel :: Pixel
- color_red :: Word16
- color_green :: Word16
- color_blue :: Word16
- color_flags :: Word8
- xFree :: Ptr a -> IO CInt
- xRR_UnknownConnection :: Connection
- xRR_Disconnected :: Connection
- xRR_Connected :: Connection
- xRR_Reflect_Y :: Reflection
- xRR_Reflect_X :: Reflection
- xRR_Rotate_270 :: Rotation
- xRR_Rotate_180 :: Rotation
- xRR_Rotate_90 :: Rotation
- xRR_Rotate_0 :: Rotation
- zPixmap :: ImageFormat
- xyPixmap :: ImageFormat
- xyBitmap :: ImageFormat
- fontRightToLeft :: FontDirection
- fontLeftToRight :: FontDirection
- doBlue :: Word8
- doGreen :: Word8
- doRed :: Word8
- always :: BackingStore
- whenMapped :: BackingStore
- notUseful :: BackingStore
- unmapGravity :: WindowGravity
- staticGravity :: BitGravity
- southEastGravity :: BitGravity
- southGravity :: BitGravity
- southWestGravity :: BitGravity
- eastGravity :: BitGravity
- centerGravity :: BitGravity
- westGravity :: BitGravity
- northEastGravity :: BitGravity
- northGravity :: BitGravity
- northWestGravity :: BitGravity
- forgetGravity :: BitGravity
- setModeDelete :: ChangeSaveSetMode
- setModeInsert :: ChangeSaveSetMode
- mappingPointer :: MappingRequest
- mappingKeyboard :: MappingRequest
- mappingModifier :: MappingRequest
- allocAll :: ColormapAlloc
- allocNone :: ColormapAlloc
- mSBFirst :: ByteOrder
- lSBFirst :: ByteOrder
- lowerHighest :: CirculationDirection
- raiseLowest :: CirculationDirection
- gCLastBit :: GCMask
- gCArcMode :: GCMask
- gCDashList :: GCMask
- gCDashOffset :: GCMask
- gCClipMask :: GCMask
- gCClipYOrigin :: GCMask
- gCClipXOrigin :: GCMask
- gCGraphicsExposures :: GCMask
- gCSubwindowMode :: GCMask
- gCFont :: GCMask
- gCTileStipYOrigin :: GCMask
- gCTileStipXOrigin :: GCMask
- gCStipple :: GCMask
- gCTile :: GCMask
- gCFillRule :: GCMask
- gCFillStyle :: GCMask
- gCJoinStyle :: GCMask
- gCCapStyle :: GCMask
- gCLineStyle :: GCMask
- gCLineWidth :: GCMask
- gCBackground :: GCMask
- gCForeground :: GCMask
- gCPlaneMask :: GCMask
- gCFunction :: GCMask
- arcPieSlice :: ArcMode
- arcChord :: ArcMode
- convex :: PolygonShape
- nonconvex :: PolygonShape
- complex :: PolygonShape
- coordModePrevious :: CoordinateMode
- coordModeOrigin :: CoordinateMode
- includeInferiors :: SubWindowMode
- clipByChildren :: SubWindowMode
- windingRule :: FillRule
- evenOddRule :: FillRule
- fillOpaqueStippled :: FillStyle
- fillStippled :: FillStyle
- fillTiled :: FillStyle
- fillSolid :: FillStyle
- joinBevel :: JoinStyle
- joinRound :: JoinStyle
- joinMiter :: JoinStyle
- capProjecting :: CapStyle
- capRound :: CapStyle
- capButt :: CapStyle
- capNotLast :: CapStyle
- lineDoubleDash :: LineStyle
- lineOnOffDash :: LineStyle
- lineSolid :: LineStyle
- gXset :: GXFunction
- gXnand :: GXFunction
- gXorInverted :: GXFunction
- gXcopyInverted :: GXFunction
- gXorReverse :: GXFunction
- gXinvert :: GXFunction
- gXequiv :: GXFunction
- gXnor :: GXFunction
- gXor :: GXFunction
- gXxor :: GXFunction
- gXnoop :: GXFunction
- gXandInverted :: GXFunction
- gXcopy :: GXFunction
- gXandReverse :: GXFunction
- gXand :: GXFunction
- gXclear :: GXFunction
- stippleShape :: QueryBestSizeClass
- tileShape :: QueryBestSizeClass
- cursorShape :: QueryBestSizeClass
- retainTemporary :: CloseDownMode
- retainPermanent :: CloseDownMode
- destroyAll :: CloseDownMode
- cWCursor :: AttributeMask
- cWColormap :: AttributeMask
- cWDontPropagate :: AttributeMask
- cWEventMask :: AttributeMask
- cWSaveUnder :: AttributeMask
- cWOverrideRedirect :: AttributeMask
- cWBackingPixel :: AttributeMask
- cWBackingPlanes :: AttributeMask
- cWBackingStore :: AttributeMask
- cWWinGravity :: AttributeMask
- cWBitGravity :: AttributeMask
- cWBorderPixel :: AttributeMask
- cWBorderPixmap :: AttributeMask
- cWBackPixel :: AttributeMask
- cWBackPixmap :: AttributeMask
- inputOnly :: WindowClass
- inputOutput :: WindowClass
- copyFromParent :: WindowClass
- throwIfZero :: String -> IO Status -> IO ()
- lastExtensionError :: ErrorCode
- firstExtensionError :: ErrorCode
- badImplementation :: ErrorCode
- badLength :: ErrorCode
- badName :: ErrorCode
- badIDChoice :: ErrorCode
- badGC :: ErrorCode
- badColor :: ErrorCode
- badAlloc :: ErrorCode
- badAccess :: ErrorCode
- badDrawable :: ErrorCode
- badMatch :: ErrorCode
- badFont :: ErrorCode
- badCursor :: ErrorCode
- badAtom :: ErrorCode
- badPixmap :: ErrorCode
- badWindow :: ErrorCode
- badValue :: ErrorCode
- badRequest :: ErrorCode
- success :: ErrorCode
- revertToParent :: FocusMode
- revertToPointerRoot :: FocusMode
- revertToNone :: FocusMode
- syncBoth :: AllowEvents
- asyncBoth :: AllowEvents
- replayKeyboard :: AllowEvents
- syncKeyboard :: AllowEvents
- asyncKeyboard :: AllowEvents
- replayPointer :: AllowEvents
- syncPointer :: AllowEvents
- asyncPointer :: AllowEvents
- grabFrozen :: GrabStatus
- grabNotViewable :: GrabStatus
- grabInvalidTime :: GrabStatus
- alreadyGrabbed :: GrabStatus
- grabSuccess :: GrabStatus
- grabModeAsync :: GrabMode
- grabModeSync :: GrabMode
- colormapInstalled :: ColormapNotification
- colormapUninstalled :: ColormapNotification
- propertyDelete :: PropertyNotification
- propertyNewValue :: PropertyNotification
- familyChaos :: Protocol
- familyDECnet :: Protocol
- familyInternet :: Protocol
- placeOnBottom :: Place
- placeOnTop :: Place
- visibilityFullyObscured :: Visibility
- visibilityPartiallyObscured :: Visibility
- visibilityUnobscured :: Visibility
- notifyDetailNone :: NotifyDetail
- notifyPointerRoot :: NotifyDetail
- notifyPointer :: NotifyDetail
- notifyNonlinearVirtual :: NotifyDetail
- notifyNonlinear :: NotifyDetail
- notifyInferior :: NotifyDetail
- notifyVirtual :: NotifyDetail
- notifyAncestor :: NotifyDetail
- notifyHint :: NotifyMode
- notifyWhileGrabbed :: NotifyMode
- notifyUngrab :: NotifyMode
- notifyGrab :: NotifyMode
- notifyNormal :: NotifyMode
- button5 :: Button
- button4 :: Button
- button3 :: Button
- button2 :: Button
- button1 :: Button
- button5Mask :: ButtonMask
- button4Mask :: ButtonMask
- button3Mask :: ButtonMask
- button2Mask :: ButtonMask
- button1Mask :: ButtonMask
- mod5Mask :: KeyMask
- mod4Mask :: KeyMask
- mod3Mask :: KeyMask
- mod2Mask :: KeyMask
- mod1Mask :: KeyMask
- controlMask :: KeyMask
- lockMask :: KeyMask
- shiftMask :: KeyMask
- noModMask :: KeyMask
- anyModifier :: Modifier
- mod5MapIndex :: Modifier
- mod4MapIndex :: Modifier
- mod3MapIndex :: Modifier
- mod2MapIndex :: Modifier
- mod1MapIndex :: Modifier
- controlMapIndex :: Modifier
- lockMapIndex :: Modifier
- shiftMapIndex :: Modifier
- screenSaverNotify :: EventType
- lASTEvent :: EventType
- rrNotifyOutputProperty :: EventType
- rrNotifyOutputChange :: EventType
- rrNotifyCrtcChange :: EventType
- rrNotify :: EventType
- rrScreenChangeNotify :: EventType
- mappingNotify :: EventType
- clientMessage :: EventType
- colormapNotify :: EventType
- selectionNotify :: EventType
- selectionRequest :: EventType
- selectionClear :: EventType
- propertyNotify :: EventType
- circulateRequest :: EventType
- circulateNotify :: EventType
- resizeRequest :: EventType
- gravityNotify :: EventType
- configureRequest :: EventType
- configureNotify :: EventType
- reparentNotify :: EventType
- mapRequest :: EventType
- mapNotify :: EventType
- unmapNotify :: EventType
- destroyNotify :: EventType
- createNotify :: EventType
- visibilityNotify :: EventType
- noExpose :: EventType
- graphicsExpose :: EventType
- expose :: EventType
- keymapNotify :: EventType
- focusOut :: EventType
- focusIn :: EventType
- leaveNotify :: EventType
- enterNotify :: EventType
- motionNotify :: EventType
- buttonRelease :: EventType
- buttonPress :: EventType
- keyRelease :: EventType
- keyPress :: EventType
- screenSaverNotifyMask :: EventMask
- screenSaverCycleMask :: EventMask
- rrOutputPropertyNotifyMask :: EventMask
- rrOutputChangeNotifyMask :: EventMask
- rrCrtcChangeNotifyMask :: EventMask
- rrScreenChangeNotifyMask :: EventMask
- ownerGrabButtonMask :: EventMask
- colormapChangeMask :: EventMask
- propertyChangeMask :: EventMask
- focusChangeMask :: EventMask
- substructureRedirectMask :: EventMask
- substructureNotifyMask :: EventMask
- resizeRedirectMask :: EventMask
- structureNotifyMask :: EventMask
- visibilityChangeMask :: EventMask
- exposureMask :: EventMask
- keymapStateMask :: EventMask
- buttonMotionMask :: EventMask
- button5MotionMask :: EventMask
- button4MotionMask :: EventMask
- button3MotionMask :: EventMask
- button2MotionMask :: EventMask
- button1MotionMask :: EventMask
- pointerMotionHintMask :: EventMask
- pointerMotionMask :: EventMask
- leaveWindowMask :: EventMask
- enterWindowMask :: EventMask
- buttonReleaseMask :: EventMask
- buttonPressMask :: EventMask
- keyReleaseMask :: EventMask
- keyPressMask :: EventMask
- noEventMask :: EventMask
- xK_ydiaeresis :: KeySym
- xK_thorn :: KeySym
- xK_yacute :: KeySym
- xK_udiaeresis :: KeySym
- xK_ucircumflex :: KeySym
- xK_uacute :: KeySym
- xK_ugrave :: KeySym
- xK_oslash :: KeySym
- xK_division :: KeySym
- xK_odiaeresis :: KeySym
- xK_otilde :: KeySym
- xK_ocircumflex :: KeySym
- xK_oacute :: KeySym
- xK_ograve :: KeySym
- xK_ntilde :: KeySym
- xK_eth :: KeySym
- xK_idiaeresis :: KeySym
- xK_icircumflex :: KeySym
- xK_iacute :: KeySym
- xK_igrave :: KeySym
- xK_ediaeresis :: KeySym
- xK_ecircumflex :: KeySym
- xK_eacute :: KeySym
- xK_egrave :: KeySym
- xK_ccedilla :: KeySym
- xK_ae :: KeySym
- xK_aring :: KeySym
- xK_adiaeresis :: KeySym
- xK_atilde :: KeySym
- xK_acircumflex :: KeySym
- xK_aacute :: KeySym
- xK_agrave :: KeySym
- xK_ssharp :: KeySym
- xK_Thorn :: KeySym
- xK_THORN :: KeySym
- xK_Yacute :: KeySym
- xK_Udiaeresis :: KeySym
- xK_Ucircumflex :: KeySym
- xK_Uacute :: KeySym
- xK_Ugrave :: KeySym
- xK_Ooblique :: KeySym
- xK_multiply :: KeySym
- xK_Odiaeresis :: KeySym
- xK_Otilde :: KeySym
- xK_Ocircumflex :: KeySym
- xK_Oacute :: KeySym
- xK_Ograve :: KeySym
- xK_Ntilde :: KeySym
- xK_Eth :: KeySym
- xK_ETH :: KeySym
- xK_Idiaeresis :: KeySym
- xK_Icircumflex :: KeySym
- xK_Iacute :: KeySym
- xK_Igrave :: KeySym
- xK_Ediaeresis :: KeySym
- xK_Ecircumflex :: KeySym
- xK_Eacute :: KeySym
- xK_Egrave :: KeySym
- xK_Ccedilla :: KeySym
- xK_AE :: KeySym
- xK_Aring :: KeySym
- xK_Adiaeresis :: KeySym
- xK_Atilde :: KeySym
- xK_Acircumflex :: KeySym
- xK_Aacute :: KeySym
- xK_Agrave :: KeySym
- xK_questiondown :: KeySym
- xK_threequarters :: KeySym
- xK_onehalf :: KeySym
- xK_onequarter :: KeySym
- xK_guillemotright :: KeySym
- xK_masculine :: KeySym
- xK_onesuperior :: KeySym
- xK_cedilla :: KeySym
- xK_periodcentered :: KeySym
- xK_paragraph :: KeySym
- xK_mu :: KeySym
- xK_acute :: KeySym
- xK_threesuperior :: KeySym
- xK_twosuperior :: KeySym
- xK_plusminus :: KeySym
- xK_degree :: KeySym
- xK_macron :: KeySym
- xK_registered :: KeySym
- xK_hyphen :: KeySym
- xK_notsign :: KeySym
- xK_guillemotleft :: KeySym
- xK_ordfeminine :: KeySym
- xK_copyright :: KeySym
- xK_diaeresis :: KeySym
- xK_section :: KeySym
- xK_brokenbar :: KeySym
- xK_yen :: KeySym
- xK_currency :: KeySym
- xK_sterling :: KeySym
- xK_cent :: KeySym
- xK_exclamdown :: KeySym
- xK_nobreakspace :: KeySym
- xK_asciitilde :: KeySym
- xK_braceright :: KeySym
- xK_bar :: KeySym
- xK_braceleft :: KeySym
- xK_z :: KeySym
- xK_y :: KeySym
- xK_x :: KeySym
- xK_w :: KeySym
- xK_v :: KeySym
- xK_u :: KeySym
- xK_t :: KeySym
- xK_s :: KeySym
- xK_r :: KeySym
- xK_q :: KeySym
- xK_p :: KeySym
- xK_o :: KeySym
- xK_n :: KeySym
- xK_m :: KeySym
- xK_l :: KeySym
- xK_k :: KeySym
- xK_j :: KeySym
- xK_i :: KeySym
- xK_h :: KeySym
- xK_g :: KeySym
- xK_f :: KeySym
- xK_e :: KeySym
- xK_d :: KeySym
- xK_c :: KeySym
- xK_b :: KeySym
- xK_a :: KeySym
- xK_quoteleft :: KeySym
- xK_grave :: KeySym
- xK_underscore :: KeySym
- xK_asciicircum :: KeySym
- xK_bracketright :: KeySym
- xK_backslash :: KeySym
- xK_bracketleft :: KeySym
- xK_Z :: KeySym
- xK_Y :: KeySym
- xK_X :: KeySym
- xK_W :: KeySym
- xK_V :: KeySym
- xK_U :: KeySym
- xK_T :: KeySym
- xK_S :: KeySym
- xK_R :: KeySym
- xK_Q :: KeySym
- xK_P :: KeySym
- xK_O :: KeySym
- xK_N :: KeySym
- xK_M :: KeySym
- xK_L :: KeySym
- xK_K :: KeySym
- xK_J :: KeySym
- xK_I :: KeySym
- xK_H :: KeySym
- xK_G :: KeySym
- xK_F :: KeySym
- xK_E :: KeySym
- xK_D :: KeySym
- xK_C :: KeySym
- xK_B :: KeySym
- xK_A :: KeySym
- xK_at :: KeySym
- xK_question :: KeySym
- xK_greater :: KeySym
- xK_equal :: KeySym
- xK_less :: KeySym
- xK_semicolon :: KeySym
- xK_colon :: KeySym
- xK_9 :: KeySym
- xK_8 :: KeySym
- xK_7 :: KeySym
- xK_6 :: KeySym
- xK_5 :: KeySym
- xK_4 :: KeySym
- xK_3 :: KeySym
- xK_2 :: KeySym
- xK_1 :: KeySym
- xK_0 :: KeySym
- xK_slash :: KeySym
- xK_period :: KeySym
- xK_minus :: KeySym
- xK_comma :: KeySym
- xK_plus :: KeySym
- xK_asterisk :: KeySym
- xK_parenright :: KeySym
- xK_parenleft :: KeySym
- xK_quoteright :: KeySym
- xK_apostrophe :: KeySym
- xK_ampersand :: KeySym
- xK_percent :: KeySym
- xK_dollar :: KeySym
- xK_numbersign :: KeySym
- xK_quotedbl :: KeySym
- xK_exclam :: KeySym
- xK_space :: KeySym
- xK_Hyper_R :: KeySym
- xK_Hyper_L :: KeySym
- xK_Super_R :: KeySym
- xK_Super_L :: KeySym
- xK_Alt_R :: KeySym
- xK_Alt_L :: KeySym
- xK_Meta_R :: KeySym
- xK_Meta_L :: KeySym
- xK_Shift_Lock :: KeySym
- xK_Caps_Lock :: KeySym
- xK_Control_R :: KeySym
- xK_Control_L :: KeySym
- xK_Shift_R :: KeySym
- xK_Shift_L :: KeySym
- xK_R15 :: KeySym
- xK_F35 :: KeySym
- xK_R14 :: KeySym
- xK_F34 :: KeySym
- xK_R13 :: KeySym
- xK_F33 :: KeySym
- xK_R12 :: KeySym
- xK_F32 :: KeySym
- xK_R11 :: KeySym
- xK_F31 :: KeySym
- xK_R10 :: KeySym
- xK_F30 :: KeySym
- xK_R9 :: KeySym
- xK_F29 :: KeySym
- xK_R8 :: KeySym
- xK_F28 :: KeySym
- xK_R7 :: KeySym
- xK_F27 :: KeySym
- xK_R6 :: KeySym
- xK_F26 :: KeySym
- xK_R5 :: KeySym
- xK_F25 :: KeySym
- xK_R4 :: KeySym
- xK_F24 :: KeySym
- xK_R3 :: KeySym
- xK_F23 :: KeySym
- xK_R2 :: KeySym
- xK_F22 :: KeySym
- xK_R1 :: KeySym
- xK_F21 :: KeySym
- xK_L10 :: KeySym
- xK_F20 :: KeySym
- xK_L9 :: KeySym
- xK_F19 :: KeySym
- xK_L8 :: KeySym
- xK_F18 :: KeySym
- xK_L7 :: KeySym
- xK_F17 :: KeySym
- xK_L6 :: KeySym
- xK_F16 :: KeySym
- xK_L5 :: KeySym
- xK_F15 :: KeySym
- xK_L4 :: KeySym
- xK_F14 :: KeySym
- xK_L3 :: KeySym
- xK_F13 :: KeySym
- xK_L2 :: KeySym
- xK_F12 :: KeySym
- xK_L1 :: KeySym
- xK_F11 :: KeySym
- xK_F10 :: KeySym
- xK_F9 :: KeySym
- xK_F8 :: KeySym
- xK_F7 :: KeySym
- xK_F6 :: KeySym
- xK_F5 :: KeySym
- xK_F4 :: KeySym
- xK_F3 :: KeySym
- xK_F2 :: KeySym
- xK_F1 :: KeySym
- xK_KP_9 :: KeySym
- xK_KP_8 :: KeySym
- xK_KP_7 :: KeySym
- xK_KP_6 :: KeySym
- xK_KP_5 :: KeySym
- xK_KP_4 :: KeySym
- xK_KP_3 :: KeySym
- xK_KP_2 :: KeySym
- xK_KP_1 :: KeySym
- xK_KP_0 :: KeySym
- xK_KP_Divide :: KeySym
- xK_KP_Decimal :: KeySym
- xK_KP_Subtract :: KeySym
- xK_KP_Separator :: KeySym
- xK_KP_Add :: KeySym
- xK_KP_Multiply :: KeySym
- xK_KP_Equal :: KeySym
- xK_KP_Delete :: KeySym
- xK_KP_Insert :: KeySym
- xK_KP_Begin :: KeySym
- xK_KP_End :: KeySym
- xK_KP_Page_Down :: KeySym
- xK_KP_Next :: KeySym
- xK_KP_Page_Up :: KeySym
- xK_KP_Prior :: KeySym
- xK_KP_Down :: KeySym
- xK_KP_Right :: KeySym
- xK_KP_Up :: KeySym
- xK_KP_Left :: KeySym
- xK_KP_Home :: KeySym
- xK_KP_F4 :: KeySym
- xK_KP_F3 :: KeySym
- xK_KP_F2 :: KeySym
- xK_KP_F1 :: KeySym
- xK_KP_Enter :: KeySym
- xK_KP_Tab :: KeySym
- xK_KP_Space :: KeySym
- xK_Num_Lock :: KeySym
- xK_script_switch :: KeySym
- xK_Mode_switch :: KeySym
- xK_Break :: KeySym
- xK_Help :: KeySym
- xK_Cancel :: KeySym
- xK_Find :: KeySym
- xK_Menu :: KeySym
- xK_Redo :: KeySym
- xK_Undo :: KeySym
- xK_Insert :: KeySym
- xK_Execute :: KeySym
- xK_Print :: KeySym
- xK_Select :: KeySym
- xK_Begin :: KeySym
- xK_End :: KeySym
- xK_Page_Down :: KeySym
- xK_Next :: KeySym
- xK_Page_Up :: KeySym
- xK_Prior :: KeySym
- xK_Down :: KeySym
- xK_Right :: KeySym
- xK_Up :: KeySym
- xK_Left :: KeySym
- xK_Home :: KeySym
- xK_PreviousCandidate :: KeySym
- xK_MultipleCandidate :: KeySym
- xK_SingleCandidate :: KeySym
- xK_Codeinput :: KeySym
- xK_Multi_key :: KeySym
- xK_Delete :: KeySym
- xK_Escape :: KeySym
- xK_Sys_Req :: KeySym
- xK_Scroll_Lock :: KeySym
- xK_Pause :: KeySym
- xK_Return :: KeySym
- xK_Clear :: KeySym
- xK_Linefeed :: KeySym
- xK_Tab :: KeySym
- xK_BackSpace :: KeySym
- xK_VoidSymbol :: KeySym
- type XID = Word64
- type Mask = Word64
- type Atom = Word64
- type VisualID = Word64
- type Time = Word64
- type Window = XID
- type Drawable = XID
- type Font = XID
- type Pixmap = XID
- type Cursor = XID
- type Colormap = XID
- type GContext = XID
- type KeyCode = Word8
- type KeySym = XID
- type EventMask = Mask
- type EventType = Word32
- type Modifier = CUInt
- type KeyMask = Modifier
- type ButtonMask = Modifier
- type Button = Word32
- type NotifyMode = CInt
- type NotifyDetail = CInt
- type Visibility = CInt
- type Place = CInt
- type Protocol = CInt
- type PropertyNotification = CInt
- type ColormapNotification = CInt
- type GrabMode = CInt
- type GrabStatus = CInt
- type AllowEvents = CInt
- type FocusMode = CInt
- type ErrorCode = CInt
- type Status = CInt
- type WindowClass = CInt
- type AttributeMask = Mask
- type CloseDownMode = CInt
- type QueryBestSizeClass = CInt
- type GXFunction = CInt
- type LineStyle = CInt
- type CapStyle = CInt
- type JoinStyle = CInt
- type FillStyle = CInt
- type FillRule = CInt
- type SubWindowMode = CInt
- type CoordinateMode = CInt
- type PolygonShape = CInt
- type ArcMode = CInt
- type GCMask = CInt
- type CirculationDirection = CInt
- type ByteOrder = CInt
- type ColormapAlloc = CInt
- type MappingRequest = CInt
- type ChangeSaveSetMode = CInt
- type BitGravity = CInt
- type WindowGravity = CInt
- type BackingStore = CInt
- type FontDirection = CInt
- type ImageFormat = CInt
- type Rotation = Word16
- type Reflection = Word16
- type SizeID = Word16
- type SubpixelOrder = Word16
- type Connection = Word16
- type RROutput = Word64
- type RRCrtc = Word64
- type RRMode = Word64
- type XRRModeFlags = Word64
- class Monad m => MonadIO (m :: * -> *) where
- (.|.) :: Bits a => a -> a -> a
- gets :: MonadState s m => (s -> a) -> m a
- modify :: MonadState s m => (s -> s) -> m ()
- class Monad m => MonadState s (m :: * -> *) | m -> s where
- asks :: MonadReader r m => (r -> a) -> m a
- class Monad m => MonadReader r (m :: * -> *) | m -> r where
- launch :: (LayoutClass l Window, Read (l Window)) => XConfig l -> IO ()
- defaultConfig :: XConfig (Choose Tall (Choose (Mirror Tall) Full))
- doShift :: WorkspaceId -> ManageHook
- doIgnore :: ManageHook
- doFloat :: ManageHook
- doF :: (s -> s) -> Query (Endo s)
- getStringProperty :: Display -> Window -> String -> X (Maybe String)
- stringProperty :: String -> Query String
- className :: Query String
- resource :: Query String
- appName :: Query String
- title :: Query String
- (<||>) :: Monad m => m Bool -> m Bool -> m Bool
- (<&&>) :: Monad m => m Bool -> m Bool -> m Bool
- (=?) :: Eq a => Query a -> a -> Query Bool
- (-->) :: (Monad m, Monoid a) => m Bool -> m a -> m a
- composeAll :: Monoid m => [m] -> m
- (<+>) :: Monoid m => m -> m -> m
- idHook :: Monoid m => m
- liftX :: X a -> Query a
- applyMaxSizeHint :: D -> D -> D
- applyResizeIncHint :: D -> D -> D
- applyAspectHint :: (D, D) -> D -> D
- applySizeHints' :: SizeHints -> D -> D
- applySizeHintsContents :: Integral a => SizeHints -> (a, a) -> D
- applySizeHints :: Integral a => Dimension -> SizeHints -> (a, a) -> D
- mkAdjust :: Window -> X (D -> D)
- mouseResizeWindow :: Window -> X ()
- mouseMoveWindow :: Window -> X ()
- mouseDrag :: (Position -> Position -> X ()) -> X () -> X ()
- float :: Window -> X ()
- pointWithin :: Position -> Position -> Rectangle -> Bool
- pointScreen :: Position -> Position -> X (Maybe (Screen WorkspaceId (Layout Window) Window ScreenId ScreenDetail))
- floatLocation :: Window -> X (ScreenId, RationalRect)
- restart :: String -> Bool -> X ()
- migrateState :: (Functor m, MonadIO m) => String -> String -> m ()
- readStateFile :: (LayoutClass l Window, Read (l Window)) => XConfig l -> X (Maybe XState)
- writeStateToFile :: X ()
- initColor :: Display -> String -> IO (Maybe Pixel)
- cleanMask :: KeyMask -> X KeyMask
- extraModifiers :: X [KeyMask]
- isClient :: Window -> X Bool
- withFocused :: (Window -> X ()) -> X ()
- screenWorkspace :: ScreenId -> X (Maybe WorkspaceId)
- setLayout :: Layout Window -> X ()
- updateLayout :: WorkspaceId -> Maybe (Layout Window) -> X ()
- sendMessageWithNoRefresh :: Message a => a -> Workspace WorkspaceId (Layout Window) Window -> X ()
- broadcastMessage :: Message a => a -> X ()
- sendMessage :: Message a => a -> X ()
- setFocusX :: Window -> X ()
- focus :: Window -> X ()
- setTopFocus :: X ()
- setButtonGrab :: Bool -> Window -> X ()
- rescreen :: X ()
- getCleanedScreenInfo :: MonadIO m => Display -> m [Rectangle]
- nubScreens :: [Rectangle] -> [Rectangle]
- containedIn :: Rectangle -> Rectangle -> Bool
- tileWindow :: Window -> Rectangle -> X ()
- clearEvents :: EventMask -> X ()
- refresh :: X ()
- setInitialProperties :: Window -> X ()
- reveal :: Window -> X ()
- hide :: Window -> X ()
- setWindowBorderWithFallback :: Display -> Window -> String -> Pixel -> X ()
- setWMState :: Window -> Int -> X ()
- scaleRationalRect :: Rectangle -> RationalRect -> Rectangle
- windows :: (WindowSet -> WindowSet) -> X ()
- kill :: X ()
- killWindow :: Window -> X ()
- unmanage :: Window -> X ()
- manage :: Window -> X ()
- data StateFile = StateFile {
- sfWins :: StackSet WorkspaceId String Window ScreenId ScreenDetail
- sfExt :: [(String, String)]
- type D = (Dimension, Dimension)
- (|||) :: l a -> r a -> Choose l r a
- mirrorRect :: Rectangle -> Rectangle
- splitVerticallyBy :: RealFrac r => r -> Rectangle -> (Rectangle, Rectangle)
- splitHorizontallyBy :: RealFrac r => r -> Rectangle -> (Rectangle, Rectangle)
- splitHorizontally :: Int -> Rectangle -> [Rectangle]
- splitVertically :: Int -> Rectangle -> [Rectangle]
- tile :: Rational -> Rectangle -> Int -> Int -> [Rectangle]
- data Resize
- data IncMasterN = IncMasterN !Int
- data Full a = Full
- data Tall a = Tall {
- tallNMaster :: !Int
- tallRatioIncrement :: !Rational
- tallRatio :: !Rational
- newtype Mirror (l :: * -> *) a = Mirror (l a)
- data ChangeLayout
- data Choose (l :: * -> *) (r :: * -> *) a
- uninstallSignalHandlers :: MonadIO m => m ()
- installSignalHandlers :: MonadIO m => m ()
- trace :: MonadIO m => String -> m ()
- whenX :: X Bool -> X () -> X ()
- whenJust :: Monad m => Maybe a -> (a -> m ()) -> m ()
- recompile :: MonadIO m => Bool -> m Bool
- stateFileName :: (Functor m, MonadIO m) => m FilePath
- getXMonadDataDir :: MonadIO m => m String
- getXMonadCacheDir :: MonadIO m => m String
- getXMonadDir :: MonadIO m => m String
- runOnWorkspaces :: (WindowSpace -> X WindowSpace) -> X ()
- xfork :: MonadIO m => IO () -> m ProcessID
- spawnPID :: MonadIO m => String -> m ProcessID
- spawn :: MonadIO m => String -> m ()
- catchIO :: MonadIO m => IO () -> m ()
- io :: MonadIO m => IO a -> m a
- fromMessage :: Message m => SomeMessage -> Maybe m
- readsLayout :: Layout a -> String -> [(Layout a, String)]
- atom_WM_TAKE_FOCUS :: X Atom
- atom_WM_STATE :: X Atom
- atom_WM_DELETE_WINDOW :: X Atom
- atom_WM_PROTOCOLS :: X Atom
- getAtom :: String -> X Atom
- isRoot :: Window -> X Bool
- withWindowAttributes :: Display -> Window -> (WindowAttributes -> X ()) -> X ()
- withWindowSet :: (WindowSet -> X a) -> X a
- withDisplay :: (Display -> X a) -> X a
- userCodeDef :: a -> X a -> X a
- userCode :: X a -> X (Maybe a)
- catchX :: X a -> X a -> X a
- runX :: XConf -> XState -> X a -> IO (a, XState)
- runQuery :: Query a -> Window -> X a
- data XState = XState {}
- data XConf = XConf {
- display :: Display
- config :: !(XConfig Layout)
- theRoot :: !Window
- normalBorder :: !Pixel
- focusedBorder :: !Pixel
- keyActions :: !(Map (KeyMask, KeySym) (X ()))
- buttonActions :: !(Map (KeyMask, Button) (Window -> X ()))
- mouseFocused :: !Bool
- mousePosition :: !(Maybe (Position, Position))
- currentEvent :: !(Maybe Event)
- data XConfig (l :: * -> *) = XConfig !String !String !String !(l Window) !ManageHook !(Event -> X All) ![String] !KeyMask !(XConfig Layout -> Map (ButtonMask, KeySym) (X ())) !(XConfig Layout -> Map (ButtonMask, Button) (Window -> X ())) !Dimension !(X ()) !(X ()) !Bool !Bool !EventMask !EventMask !([String] -> XConfig Layout -> IO (XConfig Layout))
- type WindowSet = StackSet WorkspaceId (Layout Window) Window ScreenId ScreenDetail
- type WindowSpace = Workspace WorkspaceId (Layout Window) Window
- type WorkspaceId = String
- newtype ScreenId = S Int
- data ScreenDetail = SD {
- screenRect :: !Rectangle
- data X a
- type ManageHook = Query (Endo WindowSet)
- newtype Query a = Query (ReaderT Window X a)
- data Layout a where
- class Show (layout a) => LayoutClass (layout :: * -> *) a where
- class Typeable a => Message a
- data SomeMessage where
- data LayoutMessages
- class Typeable a => ExtensionClass a where
- data StateExtension where
- class Default a where
- (++) :: [a] -> [a] -> [a]
- seq :: a -> b -> b
- filter :: (a -> Bool) -> [a] -> [a]
- zip :: [a] -> [b] -> [(a, b)]
- print :: Show a => a -> IO ()
- fst :: (a, b) -> a
- snd :: (a, b) -> b
- otherwise :: Bool
- map :: (a -> b) -> [a] -> [b]
- ($) :: (a -> b) -> a -> b
- fromIntegral :: (Integral a, Num b) => a -> b
- realToFrac :: (Real a, Fractional b) => a -> b
- class Bounded a where
- class Enum a where
- class Eq a where
- class Fractional a => Floating a where
- class Num a => Fractional a where
- class (Real a, Enum a) => Integral a where
- class Applicative m => Monad (m :: * -> *) where
- class Functor (f :: * -> *) where
- class Num a where
- class Eq a => Ord a where
- class Read a where
- class (Num a, Ord a) => Real a where
- class (RealFrac a, Floating a) => RealFloat a where
- class (Real a, Fractional a) => RealFrac a where
- class Show a where
- class Functor f => Applicative (f :: * -> *) where
- class Foldable (t :: * -> *) where
- class (Functor t, Foldable t) => Traversable (t :: * -> *) where
- class Semigroup a where
- class Semigroup a => Monoid a where
- data Bool
- data Char
- data Double
- data Float
- data Int
- data Integer
- data Maybe a
- data Ordering
- type Rational = Ratio Integer
- data IO a
- data Word
- data Either a b
- readIO :: Read a => String -> IO a
- readLn :: Read a => IO a
- appendFile :: FilePath -> String -> IO ()
- writeFile :: FilePath -> String -> IO ()
- readFile :: FilePath -> IO String
- interact :: (String -> String) -> IO ()
- getContents :: IO String
- getLine :: IO String
- getChar :: IO Char
- putStrLn :: String -> IO ()
- putStr :: String -> IO ()
- putChar :: Char -> IO ()
- ioError :: IOError -> IO a
- type FilePath = String
- userError :: String -> IOError
- type IOError = IOException
- notElem :: (Foldable t, Eq a) => a -> t a -> Bool
- all :: Foldable t => (a -> Bool) -> t a -> Bool
- any :: Foldable t => (a -> Bool) -> t a -> Bool
- or :: Foldable t => t Bool -> Bool
- and :: Foldable t => t Bool -> Bool
- concatMap :: Foldable t => (a -> [b]) -> t a -> [b]
- concat :: Foldable t => t [a] -> [a]
- sequence_ :: (Foldable t, Monad m) => t (m a) -> m ()
- mapM_ :: (Foldable t, Monad m) => (a -> m b) -> t a -> m ()
- unwords :: [String] -> String
- words :: String -> [String]
- unlines :: [String] -> String
- lines :: String -> [String]
- read :: Read a => String -> a
- reads :: Read a => ReadS a
- either :: (a -> c) -> (b -> c) -> Either a b -> c
- lex :: ReadS String
- readParen :: Bool -> ReadS a -> ReadS a
- type ReadS a = String -> [(a, String)]
- (<$>) :: Functor f => (a -> b) -> f a -> f b
- lcm :: Integral a => a -> a -> a
- gcd :: Integral a => a -> a -> a
- (^^) :: (Fractional a, Integral b) => a -> b -> a
- (^) :: (Num a, Integral b) => a -> b -> a
- odd :: Integral a => a -> Bool
- even :: Integral a => a -> Bool
- showParen :: Bool -> ShowS -> ShowS
- showString :: String -> ShowS
- showChar :: Char -> ShowS
- shows :: Show a => a -> ShowS
- type ShowS = String -> String
- unzip3 :: [(a, b, c)] -> ([a], [b], [c])
- unzip :: [(a, b)] -> ([a], [b])
- zipWith3 :: (a -> b -> c -> d) -> [a] -> [b] -> [c] -> [d]
- zipWith :: (a -> b -> c) -> [a] -> [b] -> [c]
- zip3 :: [a] -> [b] -> [c] -> [(a, b, c)]
- (!!) :: [a] -> Int -> a
- lookup :: Eq a => a -> [(a, b)] -> Maybe b
- reverse :: [a] -> [a]
- break :: (a -> Bool) -> [a] -> ([a], [a])
- span :: (a -> Bool) -> [a] -> ([a], [a])
- splitAt :: Int -> [a] -> ([a], [a])
- drop :: Int -> [a] -> [a]
- take :: Int -> [a] -> [a]
- dropWhile :: (a -> Bool) -> [a] -> [a]
- takeWhile :: (a -> Bool) -> [a] -> [a]
- cycle :: [a] -> [a]
- replicate :: Int -> a -> [a]
- repeat :: a -> [a]
- iterate :: (a -> a) -> a -> [a]
- scanr1 :: (a -> a -> a) -> [a] -> [a]
- scanr :: (a -> b -> b) -> b -> [a] -> [b]
- scanl1 :: (a -> a -> a) -> [a] -> [a]
- scanl :: (b -> a -> b) -> b -> [a] -> [b]
- init :: [a] -> [a]
- last :: [a] -> a
- tail :: [a] -> [a]
- head :: [a] -> a
- maybe :: b -> (a -> b) -> Maybe a -> b
- uncurry :: (a -> b -> c) -> (a, b) -> c
- curry :: ((a, b) -> c) -> a -> b -> c
- subtract :: Num a => a -> a -> a
- asTypeOf :: a -> a -> a
- until :: (a -> Bool) -> (a -> a) -> a -> a
- ($!) :: (a -> b) -> a -> b
- flip :: (a -> b -> c) -> b -> a -> c
- (.) :: (b -> c) -> (a -> b) -> a -> c
- const :: a -> b -> a
- id :: a -> a
- (=<<) :: Monad m => (a -> m b) -> m a -> m b
- type String = [Char]
- undefined :: HasCallStack => a
- errorWithoutStackTrace :: [Char] -> a
- error :: HasCallStack => [Char] -> a
- (&&) :: Bool -> Bool -> Bool
- (||) :: Bool -> Bool -> Bool
- not :: Bool -> Bool
- type Prime l l' = Arr (XConfig l) (XConfig l')
- type Arr x y = x -> IO y
- (>>) :: Arr x y -> Arr y z -> Arr x z
- ifThenElse :: Bool -> a -> a -> a
Start here
To start with, create a ~/.xmonad/xmonad.hs that looks like this:
{-# LANGUAGE RebindableSyntax #-}
import XMonad.Config.Prime
-- Imports go here.
main = xmonad $ do
nothing
-- Configs go here.This will give you a default xmonad install, with room to grow. The lines starting with double dashes are comments. You may delete them. Note that Haskell is a bit precise about indentation. Make sure all the statements in your do-block start at the same column, and make sure that any multi-line statements are formatted with a hanging indent. (For an example, see the 'keys =+' statement in the Example config section, below.)
After changing your config file, restart xmonad with mod-q (where, by default, "mod" == "alt").
xmonad :: (Default a, Read (l Window), LayoutClass l Window) => (a -> IO (XConfig l)) -> IO () Source #
This doesn't modify the config in any way. It's just here for your initial config because Haskell doesn't allow empty do-blocks. Feel free to delete it once you've added other stuff.
Attributes you can set
These are a bunch of attributes that you can set. Syntax looks like this:
terminal =: "urxvt"
Strings are double quoted, Dimensions are unquoted integers, booleans are
True or False (case-sensitive), and modMask is usually mod1Mask or
mod4Mask.
normalBorderColor :: Settable String (XConfig l) Source #
Non-focused windows border color. Default: "#dddddd"
focusedBorderColor :: Settable String (XConfig l) Source #
Focused windows border color. Default: "#ff0000"
terminal :: Settable String (XConfig l) Source #
The preferred terminal application. Default: "xterm"
modMask :: Settable KeyMask (XConfig l) Source #
The mod modifier, as used by key bindings. Default: mod1Mask (which is
probably alt on your computer).
borderWidth :: Settable Dimension (XConfig l) Source #
The border width (in pixels). Default: 1
focusFollowsMouse :: Settable Bool (XConfig l) Source #
Whether window focus follows the mouse cursor on move, or requires a mouse
click. (Mouse? What's that?) Default: True
clickJustFocuses :: Settable Bool (XConfig l) Source #
If True, a mouse click on an inactive window focuses it, but the click is
not passed to the window. If False, the click is also passed to the window.
Default True
class SettableClass s x y | s -> x y where Source #
Minimal complete definition
Instances
| UpdateableClass s x y => SettableClass s x y Source # | |
Defined in XMonad.Config.Prime | |
class UpdateableClass s x y | s -> x y where Source #
Minimal complete definition
Attributes you can add to
In addition to being able to set these attributes, they have a special
syntax for being able to add to them. The operator is =+ (the plus comes
after the equals), but each attribute has a different syntax for what
comes after the operator.
manageHook :: Summable ManageHook ManageHook (XConfig l) Source #
The action to run when a new window is opened. Default:
manageHook =: composeAll [className =? "MPlayer" --> doFloat, className =? "Gimp" --> doFloat]
To add more rules to this list, you can say, for instance:
import XMonad.StackSet ... manageHook =+ (className =? "Emacs" --> doF kill) manageHook =+ (className =? "Vim" --> doF shiftMaster)
Note that operator precedence mandates the parentheses here.
handleEventHook :: Summable (Event -> X All) (Event -> X All) (XConfig l) Source #
Custom X event handler. Return All True if the default handler should
also be run afterwards. Default does nothing. To add an event handler:
import XMonad.Hooks.ServerMode ... handleEventHook =+ serverModeEventHook
workspaces :: Summable [String] [String] (XConfig l) Source #
List of workspaces' names. Default: map show [1 .. 9 :: Int]. Adding
appends to the end:
workspaces =+ ["0"]
This is useless unless you also create keybindings for this.
logHook :: Summable (X ()) (X ()) (XConfig l) Source #
The action to perform when the windows set is changed. This happens
whenever focus change, a window is moved, etc. logHook =+ takes an X ()
and appends it via '(>>)'. For instance:
import XMonad.Hooks.ICCCMFocus ... logHook =+ takeTopFocus
Note that if your expression is parametrically typed (e.g. of type
MonadIO m => m ()), you'll need to explicitly annotate it, like so:
logHook =+ (io $ putStrLn "Hello, world!" :: X ())
startupHook :: Summable (X ()) (X ()) (XConfig l) Source #
The action to perform on startup. startupHook =+ takes an X () and
appends it via '(>>)'. For instance:
import XMonad.Hooks.SetWMName ... startupHook =+ setWMName "LG3D"
Note that if your expression is parametrically typed (e.g. of type
MonadIO m => m ()), you'll need to explicitly annotate it, as documented
in logHook.
clientMask :: Summable EventMask EventMask (XConfig l) Source #
The client events that xmonad is interested in. This is useful in
combination with handleEventHook. Default: structureNotifyMask .|.
enterWindowMask .|. propertyChangeMask
clientMask =+ keyPressMask .|. keyReleaseMask
rootMask :: Summable EventMask EventMask (XConfig l) Source #
The root events that xmonad is interested in. This is useful in
combination with handleEventHook. Default: substructureRedirectMask .|.
substructureNotifyMask .|. enterWindowMask .|. leaveWindowMask .|.
structureNotifyMask .|. buttonPressMask
class SummableClass s y | s -> y where Source #
Minimal complete definition
Attributes you can add to or remove from
The following support the the =+ for adding items and the =- operator
for removing items.
mouseBindings :: MouseBindings (XConfig l) Source #
Mouse button bindings to an X actions on a window. Default: see `man
xmonad`. To make mod-scrollwheel switch workspaces:
import XMonad.Actions.CycleWS (nextWS, prevWS)
...
mouseBindings =+ [((mod4Mask, button4), const prevWS),
((mod4Mask, button5), const nextWS)]Note that you need to specify the numbered mod-mask e.g. mod4Mask instead
of just modMask.
class RemovableClass r y | r -> y where Source #
Minimal complete definition
Modifying the list of workspaces
Workspaces can be configured through workspaces, but then the keys need
to be set, and this can be a bit laborious. withWorkspaces provides a
convenient mechanism for common workspace updates.
withWorkspaces :: Arr WorkspaceConfig WorkspaceConfig -> Prime l l Source #
Configure workspaces through a Prime-like interface. Example:
withWorkspaces $ do
wsKeys =+ ["0"]
wsActions =+ [("M-M1-", windows . swapWithCurrent)]
wsSetName 1 "mail"This will set workspaces and add the necessary keybindings to keys. Note
that it won't remove old keybindings; it's just not that clever.
wsNames :: Settable [String] WorkspaceConfig Source #
The list of workspace names, like workspaces but with two differences:
- If any entry is the empty string, it'll be replaced with the
corresponding entry in
wsKeys. - The list is truncated to the size of
wsKeys.
The default value is .repeat ""
If you'd like to create workspaces without associated keyspecs, you can do
that afterwards, outside the withWorkspaces block, with .workspaces =+
wsKeys :: Summable [String] [String] WorkspaceConfig Source #
The list of workspace keys. These are combined with the modifiers in
wsActions to form the keybindings for navigating to workspaces. Default:
["1","2",...,"9"].
wsActions :: Summable [(String, String -> X ())] [(String, String -> X ())] WorkspaceConfig Source #
Mapping from key prefix to command. Its type is [(String, String ->
X())]. The key prefix may be a modifier such as "M-", or a submap
prefix such as "M-a ", or both, as in "M-a M-". The command is a
function that takes a workspace name and returns an X (). withWorkspaces
creates keybindings for the cartesian product of wsKeys and wsActions.
Default:
[("M-", windows . W.greedyView),
("M-S-", windows . W.shift)]wsSetName :: Int -> String -> Arr WorkspaceConfig WorkspaceConfig Source #
A convenience for just modifying one entry in wsNames, in case you only
want a few named workspaces. Example:
wsSetName 1 "mail"
wsSetName 2 "web"Modifying the screen keybindings
withScreens provides a convenient mechanism to set keybindings for moving
between screens, much like withWorkspaces.
withScreens :: Arr ScreenConfig ScreenConfig -> Prime l l Source #
Configure screen keys through a Prime-like interface:
withScreens $ do
sKeys =: ["e", "r"]This will add the necessary keybindings to keys. Note that it won't remove
old keybindings; it's just not that clever.
sKeys :: Summable [String] [String] ScreenConfig Source #
The list of screen keys. These are combined with the modifiers in
sActions to form the keybindings for navigating to workspaces. Default:
["w","e","r"].
sActions :: Summable [(String, ScreenId -> X ())] [(String, ScreenId -> X ())] ScreenConfig Source #
Mapping from key prefix to command. Its type is [(String, ScreenId ->
X())]. Works the same as wsActions except for a different function type.
Default:
[("M-", windows . onScreens W.view),
("M-S-", windows . onScreens W.shift)]onScreens :: Eq s => (i -> StackSet i l a s sd -> StackSet i l a s sd) -> s -> StackSet i l a s sd -> StackSet i l a s sd Source #
Converts a stackset transformer parameterized on the workspace type into one
parameterized on the screen type. For example, you can use onScreens W.view
0 to navigate to the workspace on the 0th screen. If the screen id is not
recognized, the returned transformer acts as an identity function.
Modifying the layoutHook
Layouts are special. You can't modify them using the =: or =. operator.
You need to use the following functions.
addLayout :: (LayoutClass l Window, LayoutClass r Window) => r Window -> Prime l (Choose l r) Source #
Add a layout to the list of layouts choosable with mod-space. For instance:
import XMonad.Layout.Tabbed ... addLayout simpleTabbed
resetLayout :: LayoutClass r Window => r Window -> Prime l r Source #
Reset the layoutHook from scratch. For instance, to get rid of the wide layout:
resetLayout $ Tall 1 (3/100) (1/2) ||| Full
(The dollar is like an auto-closing parenthesis, so all the stuff to the right of it is treated like an argument to resetLayout.)
modifyLayout :: LayoutClass r Window => (l Window -> r Window) -> Prime l r Source #
Modify your layoutHook with some wrapper function. You probably want to call
this after you're done calling addLayout. Example:
import XMonad.Layout.NoBorders ... modifyLayout smartBorders
Updating the XConfig en masse
Finally, there are a few contrib modules that bundle multiple attribute updates together. There are three types: 1) wholesale replacements for the default config, 2) pure functions on the config, and 3) IO actions on the config. The syntax for each is different. Examples:
1) To start with a gnomeConfig instead of the default,
we use startWith:
import XMonad.Config.Gnome ... startWith gnomeConfig
2) withUrgencyHook is a pure function, so we need
to use apply:
import XMonad.Hooks.UrgencyHook ... apply $ withUrgencyHook dzenUrgencyHook
3) xmobar returns an IO (XConfig l), so we need
to use applyIO:
import XMonad.Hooks.DynamicLog ... applyIO xmobar
startWith :: XConfig l' -> Prime l l' Source #
Replace the current XConfig with the given one. If you use this, you
probably want it to be the first line of your config.
The rest of the world
Everything you know and love from the core XMonad module is available for use in your config file, too.
The class Typeable allows a concrete representation of a type to
be calculated.
Minimal complete definition
typeRep#
getErrorEvent :: XErrorEventPtr -> IO ErrorEvent #
Retrieves error event data from a pointer to an XErrorEvent and puts it into an ErrorEvent.
setErrorHandler :: XErrorHandler -> IO () #
A binding to XSetErrorHandler. NOTE: This is pretty experimental because of safe vs. unsafe calls. I changed sync to a safe call, but there *might* be other calls that cause a problem
urgencyHintBit :: Int #
iconMaskHintBit :: Int #
stateHintBit :: Int #
inputHintBit :: Int #
iconicState :: Int #
normalState :: Int #
withdrawnState :: Int #
pWinGravityBit :: Int #
pBaseSizeBit :: Int #
pAspectBit :: Int #
pResizeIncBit :: Int #
pMaxSizeBit :: Int #
pMinSizeBit :: Int #
unmapWindow :: Display -> Window -> IO () #
propModeAppend :: CInt #
propModePrepend :: CInt #
propModeReplace :: CInt #
anyPropertyType :: Atom #
refreshKeyboardMapping :: Event -> IO () #
refreshKeyboardMapping. TODO Remove this binding when the fix has been commited to X11
setConfigureEvent :: XEventPtr -> Window -> Window -> CInt -> CInt -> CInt -> CInt -> CInt -> Window -> Bool -> IO () #
setEventType :: XEventPtr -> EventType -> IO () #
getWMProtocols :: Display -> Window -> IO [Atom] #
The XGetWMProtocols function returns the list of atoms stored in the WM_PROTOCOLS property on the specified window. These atoms describe window manager protocols in which the owner of this window is willing to participate. If the property exists, is of type ATOM, is of format 32, and the atom WM_PROTOCOLS can be interned, XGetWMProtocols sets the protocols_return argument to a list of atoms, sets the count_return argument to the number of elements in the list, and returns a nonzero status. Otherwise, it sets neither of the return arguments and returns a zero status. To release the list of atoms, use XFree.
wcTextEscapement :: FontSet -> String -> Int32 #
wcDrawImageString :: Display -> Drawable -> FontSet -> GC -> Position -> Position -> String -> IO () #
wcTextPropertyToTextList :: Display -> TextProperty -> IO [String] #
getTextProperty :: Display -> Window -> Atom -> IO TextProperty #
withServer :: Display -> IO () -> IO () #
Run an action with the server
getWindowAttributes :: Display -> Window -> IO WindowAttributes #
waIsViewable :: CInt #
waIsUnviewable :: CInt #
waIsUnmapped :: CInt #
configureWindow :: Display -> Window -> CULong -> WindowChanges -> IO () #
currentTime :: Time #
eventTable :: [(EventType, String)] #
xConfigureWindow :: Display -> Window -> CULong -> Ptr WindowChanges -> IO CInt #
xQueryTree :: Display -> Window -> Ptr Window -> Ptr Window -> Ptr (Ptr Window) -> Ptr CInt -> IO Status #
xGetWindowAttributes :: Display -> Window -> Ptr WindowAttributes -> IO Status #
changeWindowAttributes :: Display -> Window -> AttributeMask -> Ptr SetWindowAttributes -> IO () #
interface to the X11 library function XChangeWindowAttributes().
xGetTextProperty :: Display -> Window -> Ptr TextProperty -> Atom -> IO Status #
xwcTextPropertyToTextList :: Display -> Ptr TextProperty -> Ptr (Ptr CWString) -> Ptr CInt -> IO CInt #
wcFreeStringList :: Ptr CWString -> IO () #
xCreateFontSet :: Display -> CString -> Ptr (Ptr CString) -> Ptr CInt -> Ptr CString -> IO (Ptr FontSet) #
freeStringList :: Ptr CString -> IO () #
freeFontSet :: Display -> FontSet -> IO () #
xwcDrawString :: Display -> Drawable -> FontSet -> GC -> Position -> Position -> CWString -> CInt -> IO () #
xwcDrawImageString :: Display -> Drawable -> FontSet -> GC -> Position -> Position -> CWString -> CInt -> IO () #
xSetErrorHandler :: IO () #
xRefreshKeyboardMapping :: Ptr () -> IO CInt #
xChangeProperty :: Display -> Window -> Atom -> Atom -> CInt -> CInt -> Ptr CUChar -> CInt -> IO Status #
xGetWindowProperty :: Display -> Window -> Atom -> CLong -> CLong -> Bool -> Atom -> Ptr Atom -> Ptr CInt -> Ptr CULong -> Ptr CULong -> Ptr (Ptr CUChar) -> IO Status #
xAllocWMHints :: IO (Ptr WMHints) #
isCursorKey :: KeySym -> Bool #
isFunctionKey :: KeySym -> Bool #
isKeypadKey :: KeySym -> Bool #
isMiscFunctionKey :: KeySym -> Bool #
isModifierKey :: KeySym -> Bool #
isPrivateKeypadKey :: KeySym -> Bool #
mkXErrorHandler :: CXErrorHandler -> IO (FunPtr CXErrorHandler) #
xGetModifierMapping :: Display -> IO (Ptr ()) #
Constructors
data WindowChanges #
Constructors
| WindowChanges | |
Fields
| |
Instances
| Storable WindowChanges | |
Defined in Graphics.X11.Xlib.Extras Methods sizeOf :: WindowChanges -> Int # alignment :: WindowChanges -> Int # peekElemOff :: Ptr WindowChanges -> Int -> IO WindowChanges # pokeElemOff :: Ptr WindowChanges -> Int -> WindowChanges -> IO () # peekByteOff :: Ptr b -> Int -> IO WindowChanges # pokeByteOff :: Ptr b -> Int -> WindowChanges -> IO () # peek :: Ptr WindowChanges -> IO WindowChanges # poke :: Ptr WindowChanges -> WindowChanges -> IO () # | |
data WindowAttributes #
Constructors
| WindowAttributes | |
Fields
| |
Instances
| Storable WindowAttributes | |
Defined in Graphics.X11.Xlib.Extras Methods sizeOf :: WindowAttributes -> Int # alignment :: WindowAttributes -> Int # peekElemOff :: Ptr WindowAttributes -> Int -> IO WindowAttributes # pokeElemOff :: Ptr WindowAttributes -> Int -> WindowAttributes -> IO () # peekByteOff :: Ptr b -> Int -> IO WindowAttributes # pokeByteOff :: Ptr b -> Int -> WindowAttributes -> IO () # peek :: Ptr WindowAttributes -> IO WindowAttributes # poke :: Ptr WindowAttributes -> WindowAttributes -> IO () # | |
data TextProperty #
Constructors
| TextProperty | |
Instances
| Storable TextProperty | |
Defined in Graphics.X11.Xlib.Extras | |