Notifications xmonad中的KDE弹出通知

Notifications xmonad中的KDE弹出通知,notifications,kde,xmonad,Notifications,Kde,Xmonad,我在KDE中使用xmonad,并希望使用它的弹出通知。默认情况下,第一个弹出窗口显示正确,但在它消失后,下一个弹出窗口将不显示。如果我添加了一个新的“通知”小部件-它可以显示一个弹出窗口,但之后将是相同的情况。 如果将这些行添加到xmonad配置中(我不太明白它是如何工作的),弹出窗口将按预期工作: , manageHook = ((className =? "krunner" <||> className =? "Plasma-desktop") >>= return

我在KDE中使用xmonad,并希望使用它的弹出通知。默认情况下,第一个弹出窗口显示正确,但在它消失后,下一个弹出窗口将不显示。如果我添加了一个新的“通知”小部件-它可以显示一个弹出窗口,但之后将是相同的情况。 如果将这些行添加到xmonad配置中(我不太明白它是如何工作的),弹出窗口将按预期工作:

, manageHook = ((className =? "krunner" <||> className =? "Plasma-desktop") >>= return .
    not --> manageHook kde4Config) <+>
    (kdeOverride --> doFloat) <+> myManageHook
,manageHook=((className=?“krunner”className=?“Plasma desktop”)>>=返回。
非-->manageHook(kde4Config)
(kdeOverride-->doFloat)myManageHook
一般而言,以及

[ className =? "Plasma-desktop"      --> doFloat <+> doF W.focusDown ]
[className=?“Plasma desktop”->doFloat doF W.focusDown]
在myManageHook中

但是现在,因为'className=?“等离子桌面”太笼统了,一开始就发生很奇怪的事情。如果在KDE加载后将这些行添加到配置中,一切都会正常工作。 有没有什么方法可以准确地找到通知窗口,或者只有在完全加载KDE之后才使用这一行,或者,有没有更好的方法可以让通知工作


谢谢你,很抱歉我的英语不好。

我还使用了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

...
导入XMonad
导入XMonad.Config.Desktop
导入XMonad.Hooks.EwmhDesktops
导入XMonad.Hooks.ManageDocks--停靠/托盘管理
导入XMonad.Hooks.DynamicLog--statusbar
导入XMonad.Actions.CycleWS--工作区切换
导入XMonad.Util.EZConfig--追加键/鼠标绑定
导入XMonad.Util.Run(spawnPipe)
导入XMonad.Config.Kde
导入XMonad.Layout
导入XMonad.Layout.NoBorders(NoBorders、smartBorders)
导入XMonad.Layout.spating
导入系统.IO
myManageHook=composell
[className=?“yakuake”-->doFloat
,className=?“Yakuake”-->doFloat
,className=?“Kmix”-->doFloat
,className=?“kmix”-->doFloat
,className=?“plasma”-->doFloat
,className=?“Plasma”-->doFloat
,className=?“plasma桌面”-->doFloat
,className=?“Plasma桌面”-->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
,边框宽度=1
,normalBorderColor=“#abc123”
,focusedBorderColor=“#456def”
,layoutHook=avoidStruts myLayout
,workspaces=myWorkspaces
,startupHook=startupHook桌面配置
,logHook=logHook'xmproc
}
`additionalKeysP`myKeys
...