2012-08-24 5 views
6

xmonad를 KDE와 함께 사용하며 팝업 알림을 사용하려고합니다. 기본적으로 첫 번째 팝업이 올바르게 표시되지만 사라진 후에는 다음 팝업이 표시되지 않습니다. 새 '알림'위젯을 추가하면 팝업이 하나 더 표시 될 수 있지만 이후에는 동일한 상황이됩니다. (나는 아주 작동합니까 어떻게 이해하지 못하는) 설정을 xmonad하는 등의 줄을 추가 경우 예상대로 팝업 작업을 시작합니다xmonad의 KDE 팝업 알림

, manageHook = ((className =? "krunner" <||> className =? "Plasma-desktop") >>= return . 
    not --> manageHook kde4Config) <+> 
    (kdeOverride --> doFloat) <+> myManageHook 
일반 부분

및 myManageHook에서

[ className =? "Plasma-desktop"  --> doFloat <+> doF W.focusDown ] 

합니다.

하지만 'className =? "Plasma-desktop"은 너무 일반적인 상태이며 시작시 매우 이상한 일이 발생합니다. KDE 로딩 후 config에이 줄을 추가하면 모든 것이 잘 동작합니다. 정확한 알림 창을 찾거나, 전체 KDE를 로딩 한 후에 만이 줄을 사용하거나 알림을 보내는 더 좋은 방법은 없나요?

감사합니다. 나쁜 영어로 유감스럽게 생각합니다.

답변

2

나는 또한 xmonad와 kde를 사용하며 다음과 같이 작동한다.

import XMonad 
import XMonad.Config.Desktop 
import XMonad.Hooks.EwmhDesktops 
import XMonad.Hooks.ManageDocks -- dock/tray mgmt 
import XMonad.Hooks.DynamicLog -- statusbar 
import XMonad.Actions.CycleWS -- workspace-switching 
import XMonad.Util.EZConfig -- append key/mouse bindings 
import XMonad.Util.Run(spawnPipe) 
import XMonad.Config.Kde 
import XMonad.Layout 
import XMonad.Layout.NoBorders (noBorders, smartBorders) 
import XMonad.Layout.Spacing 
import System.IO 

myManageHook = composeAll 
    [ className =? "yakuake" --> doFloat 
    , className =? "Yakuake" --> doFloat 
    , className =? "Kmix" --> doFloat 
    , className =? "kmix" --> doFloat 
    , className =? "plasma" --> doFloat 
    , className =? "Plasma" --> doFloat 
    , className =? "plasma-desktop" --> doFloat 
    , className =? "Plasma-desktop" --> doFloat 
    , className =? "krunner" --> doFloat 
    , className =? "ksplashsimple" --> doFloat 
    , className =? "ksplashqml" --> doFloat 
    , className =? "ksplashx" --> doFloat 
    ] 

... 
... 

main = do 
    xmonad $ ewmh desktopConfig 
    { modMask = mod4Mask 
    , terminal = "konsole" 
    , manageHook = manageDocks <+> myManageHook <+> manageHook desktopConfig 
    , borderWidth = 1 
    , normalBorderColor = "#abc123" 
    , focusedBorderColor = "#456def" 
    , layoutHook = avoidStruts myLayout 
    , workspaces = myWorkspaces 
    , startupHook = startupHook desktopConfig 
    , logHook = logHook' xmproc 
    } 
    `additionalKeysP` myKeys 

...