[xmonad] darcs patch: Replace custom forever_ with library equivalent

Don Stewart dons at galois.com
Fri Jan 16 16:38:32 EST 2009

Only risk is on say, Debian, where they've an older GHC.

Anyone know the status of GHC on those systems?

> Replaced a custom forever implementation in Main.hsc by the equivalent
> from the standard libraries. I guess it was legacy code, since forever
> wasn't in Control.Monad in ghc 6.6 as far as I know.

> Wed Jan 14 22:55:56 CET 2009  Daniel Schoepe <asgaroth_ at gmx.de>
>   * Replaced custom forever_ by library function
> New patches:
> [Replaced custom forever_ by library function
> Daniel Schoepe <asgaroth_ at gmx.de>**20090114215556] {
> hunk ./XMonad/Main.hsc 146
>              userCode $ startupHook initxmc
>              -- main loop, for all you HOF/recursion fans out there.
> -            forever_ $ prehandle =<< io (nextEvent dpy e >> getEvent e)
> +            forever $ prehandle =<< io (nextEvent dpy e >> getEvent e)
>      return ()
>        where
> hunk ./XMonad/Main.hsc 150
> -        forever_ a = a >> forever_ a
> -
>          -- if the event gives us the position of the pointer, set mousePosition
>          prehandle e = let mouse = do guard (ev_event_type e `elem` evs)
>                                       return (fromIntegral (ev_x_root e)
> }
> Context:
> [Call logHook as the very last action in windows
> Spencer Janssen <spencerjanssen at gmail.com>**20081209233700
>  Ignore-this: 4396ad891b607780f8e4b3b6bbce87e
> ] 
> [Accept inferior crossing events.  This patch enables fmouse-focus-follows-screen
> Spencer Janssen <spencerjanssen at gmail.com>**20081205045130
>  Ignore-this: 3ac329fb92839827aed0a4370784cabd
> ] 
> [Tile all windows at once
> Spencer Janssen <spencerjanssen at gmail.com>**20081118074447] 
> [Factor rational rect scaling into a separate function
> Spencer Janssen <spencerjanssen at gmail.com>**20081118072849] 
> [Change screen focus by clicking on the root window.
> Spencer Janssen <spencerjanssen at gmail.com>**20081106224031
>  This is a modification of a patch from Joachim Breitner.
> ] 
> [Fix #192.
> Spencer Janssen <spencerjanssen at gmail.com>**20081021220059] 
> [select base < 4 for building on ghc 6.10
> Adam Vogt <vogt.adam at gmail.com>**20081013214509] 
> [add killWindow function
> Joachim Breitner <mail at joachim-breitner.de>**20081005001804
>  This is required to kill anything that is not focused, without
>  having to focus it first.
> ] 
> [add'l documentation
> Devin Mullins <me at twifkak.com>**20080927234639] 
> [Regression: ungrab buttons on *non* root windows
> Spencer Janssen <spencerjanssen at gmail.com>**20081007214351] 
> [Partial fix for #40
> Spencer Janssen <spencerjanssen at gmail.com>**20081007212053
>  Improvements:
>   - clicking on the root will change focus to that screen
>   - moving the mouse from a window on a screen to an empty screen changes focus
>     to that screen
>  The only remaining issue is that moving the mouse between two empty screens
>  does not change focus.  In order to solve this, we'd have to select motion events
>  on the root window, which is potentially expensive.
> ] 
> [Track mouse position via events received
> Spencer Janssen <spencerjanssen at gmail.com>**20081007203953] 
> [Fix haddock
> Spencer Janssen <spencerjanssen at gmail.com>**20081007094641] 
> [Move screen locating code into pointScreen
> Spencer Janssen <spencerjanssen at gmail.com>**20081007094207] 
> [Make pointWithin a top-level binding
> Spencer Janssen <spencerjanssen at gmail.com>**20081007090229] 
> gwern0 at gmail.com**20080913024457] 
> [Use the same X11 dependency as xmonad-contrib
> Spencer Janssen <spencerjanssen at gmail.com>**20080921061508] 
> [Export focusUp' and focusDown' -- work entirely on stacks
> Spencer Janssen <spencerjanssen at gmail.com>**20080911214803] 
> [add W.shiftMaster, fix float/tile-reordering bug
> Devin Mullins <me at twifkak.com>**20080911053909] 
> [TAG 0.8
> Spencer Janssen <spencerjanssen at gmail.com>**20080905195412] 
> [Spelling.  Any bets on how long this has been there?
> Spencer Janssen <spencerjanssen at gmail.com>**20080905195211] 
> [Bump version to 0.8
> Spencer Janssen <spencerjanssen at gmail.com>**20080905194225] 
> [Remove obsolete comments about darcs X11
> Spencer Janssen <spencerjanssen at gmail.com>**20080905194915] 
> [Recommend latest packages rather than specific versions
> Spencer Janssen <spencerjanssen at gmail.com>**20080905194837] 
> [Also remove -optl from the executable section
> Spencer Janssen <spencerjanssen at gmail.com>**20080820210023] 
> [-optl-Wl,-s is not needed with recent Cabal versions
> Spencer Janssen <spencerjanssen at gmail.com>**20080820204102] 
> [Haddock links
> Malebria <malebria at riseup.net>**20080601212515] 
> [Haddock syntax for enumeration
> Malebria <malebria at riseup.net>**20080601204951] 
> [I prefer the spencerjanssen at gmail.com address now
> Spencer Janssen <spencerjanssen at gmail.com>**20080714202650] 
> [Raise windows in the floating layer when moving or resizing
> Trevor Elliott <trevor at galois.com>**20080521215057] 
> [add currentTag convenience function
> Devin Mullins <me at twifkak.com>**20080511224258] 
> [Make Mirror a newtype
> Spencer Janssen <sjanssen at cse.unl.edu>**20080508104640] 
> [Comments
> Spencer Janssen <sjanssen at cse.unl.edu>**20080507013122] 
> [Break long line
> Spencer Janssen <sjanssen at cse.unl.edu>**20080507012608] 
> [Style
> Spencer Janssen <sjanssen at cse.unl.edu>**20080507012519] 
> [Simplify
> Spencer Janssen <sjanssen at cse.unl.edu>**20080507011309] 
> [Overhaul Choose, fixes issue 183
> Spencer Janssen <sjanssen at cse.unl.edu>**20080506220809] 
> [Remember if focus changes were caused by mouse actions or by key commands
> Klaus Weidner <kweidner at pobox.com>**20080502175603
>  If the user used the mouse to change window focus (moving into or clicking on a
>  window), this should be handled differently than focus changes due to keyboard
>  commands. Specifically, it's inappropriate to discard window enter/leave events
>  while the mouse is moving. This fixes the bug where a fast mouse motion across
>  multiple windows resulted in the wrong window keeping focus.
>  It's also helpful information for contrib modules such as UpdatePointer - it's
>  supposed to move the mouse pointer only in response to keyboard actions, not if
>  the user was moving the mouse.
> ] 
> [Wibble
> Spencer Janssen <sjanssen at cse.unl.edu>**20080506203840] 
> [Added doShift function for more user-friendly hooks
> Ivan N. Veselov <veselov at gmail.com>**20080506185757] 
> [use named colours. fixes startup failure on the XO
> Don Stewart <dons at galois.com>**20080502210149] 
> [Set focus *after* revealing windows
> Spencer Janssen <sjanssen at cse.unl.edu>**20080407222559] 
> [Reveal windows after moving/resizing them.
> Spencer Janssen <sjanssen at cse.unl.edu>**20080407220756
>  This should reduce the number of repaints for newly visible windows.
> ] 
> [Hide newly created but non-visible windows (fixes bug #172)
> Spencer Janssen <sjanssen at cse.unl.edu>**20080430014012] 
> [formatting, eta expansion
> Don Stewart <dons at galois.com>**20080418184337] 
> [XMonad.ManageHook: add 'appName', another name for 'resource'
> Lukas Mai <l.mai at web.de>**20080406012006] 
> [XMonad.ManageHook: make 'title' locale-aware; haddock cleanup
> Lukas Mai <l.mai at web.de>**20080406011338
>  The code for 'title' was stolen from getname.patch (bug #44).
> ] 
> [XMonad.Main: call setlocale on startup
> Lukas Mai <l.mai at web.de>**20080406011234] 
> [floats always use current screen (with less bugs)
> robreim at bobturf.org**20080405135009] 
> [XMonad.Operations: applySizeHint reshuffle
> Lukas Mai <l.mai at web.de>**20080404215615
>  Make applySizeHints take window borders into account. Move old functionality
>  to applySizeHintsContents. Add new mkAdjust function that generates a custom
>  autohinter for a window.
> ] 
> [XMonad.Layout: documentation cleanup
> Lukas Mai <l.mai at web.de>**20080404215444] 
> [Remove gaps from the example config
> Spencer Janssen <sjanssen at cse.unl.edu>**20080329232959] 
> [Remove gaps
> Spencer Janssen <sjanssen at cse.unl.edu>**20080325091526] 
> [TAG 0.7
> Spencer Janssen <sjanssen at cse.unl.edu>**20080329210249] 
> Patch bundle hash:
> ef4a14f0e22b06712aac9975c8df956a9b2846ba

> _______________________________________________
> xmonad mailing list
> xmonad at haskell.org
> http://www.haskell.org/mailman/listinfo/xmonad

More information about the xmonad mailing list