marbu / xmonad

my xmonad configuration
12 stars 7 forks source link

Krunner and KDE Panel in KDE5 #1

Open CMCDragonkai opened 8 years ago

CMCDragonkai commented 8 years ago

I've having problems trying to make XMonad work in KDE5, especially involving the krunner, kde panel, systray popups and fn + f* popups.

Doea your configuration handle krunner not getting focus, krunner moving across the screen as I type, kde panel not showing up as the windows go over it and cover it, kde panel popups not showing up or showing up, systray popups not showing up, or showing on the wrong monitor, and things like brightness controls not floating properly.

It really seems xmonad doesn't like kde5

marbu commented 8 years ago

First of all I have to admit that I no longer use xmonad with KDE 5. I was playing with this setup for some time when new plasma shell arrived in Fedora, updating my xmonad.hs file to work with new KDE, but new issues related to desktop pager and multi monitor setup (see README file for details) made me change my mind and now I'm using plain xmonad without KDE (my config file is still designed to work in both enviroments though).

That said, here are my comments of the issues you mentioned:

Krunner not getting focus: I have noticed this issue with KDE 4 already and solved it by reconfiguring it to use floating mode (on the KDE side). Unfortunatelly I no longer remember how well it worked with KDE 5 though.

Popup floating issues: in my xmonad.hs file I enforce floating mode for plasma popup windows, which solved most issues with those windows for me.

KDE panel not showing up as the windows go over it and cover it: yeah, I noticed this few times, but didn't try to solve it.

sugry commented 4 years ago

These problems are resolved by adding the following lines to the ManageHook:

...
, [className  =? "krunner" --> doIgnore >> doFloat]
, [className  =? "plasmashell" --> doIgnore >> doFloat]
...

I took your configuration as a basis, supplemented it with my ideas, and this works great in Plasma 5.

sugry commented 4 years ago

Another trifle. Krunner sometimes starts not from the first, but from the second time after loading the system. To fix this, you need to add a daemon to the startup, for example:

...
myStartupHook = do
    spawnOnce "krunner -d"
...
sugry commented 4 years ago

p.s. Now I have found a more correct design, when the plasmashell windows look natural, without frames. In addition, with this option, the windows do not fall on the panel when the "xmonad --restart" is performed.

...
, [className  =? "plasmashell" --> doIgnore <+> hasBorder False >> doFloat]
...

or

...
, [className  =? "plasmashell" --> doIgnore <+> doFloat >> hasBorder False]
...

depending on what works best.

dalvescb commented 2 years ago

has anyone had any luck with this? the problem seems to be related to xinerama with me (when i'm switching between monitors plasmashell and krunner seem to have trouble keeping focus). Is there maybe a way to fix to a particular monitor?