собсно рецепт:
в самом начале, где толпа импортов, добавить:
import XMonad.Hooks.ICCCMFocus
и дальше, где ставятся хуки:
logHook = takeTopFocus
все, теперь жабьи аппликухи не теряют фокус и курсор.
если же какой-то хук там уже есть и терять его сильно не хочется, а знания хаскеля не хватает, то выглядеть это может так:
logHook = takeTopFocus >> myLogHook
зы. собсно затевалось это дело ради idea и я не придумал куда это, в девелопмент или в генерал... решил уж сюда :)