Sunday, May 6, 2007

Tab-way to Heaven

Yay! I finally solved the biggest small annoyance I currently had on my new openSUSE box. I'm using KDE, with dual monitors and two desktops, and Alt-Tab wasn't showing apps currently running on the "other" monitor. It was very weird. I did enable the setting to go through all the desktops, which is hard enough to find. KDE Control Center -> Desktop -> Window Behavior, and select the "Traverse windows on all desktops" option, which is the only right solution, as that is the easiest way to go from desktop to desktop. I'm not a huge fan of multiple desktops, but they work much better on KDE than they do using any of the various hacks to enable them on Windows.



But, oddly enough, ever since I began running openSUSE, Alt-Tab would only show me windows that were displayed on the current *monitor*. It would correctly show me ones on both desktops, but not both monitors, which drove me crazy. I asked a few different places for a solution, to no avail. But my latest plea on the opensuse-kde mailing list got me an answer!



It seems the latest version of KDE added a few Xinerama "improvements", as listed here. One of these "improvements" is that the Alt-tab list of windows can be restricted to a single screen (monitor), as someone even claimed that having alt-tab show all the windows was a bug, which is insane. And just about as crazy is that this new option was made the default! I could see that some deranged individuals might actually desire having alt-tab only show windows on the current monitor, but to make that the new default option is a mistake.



And, even better, another response showed me a quickie way to set this new, undocumented, no-UI option:



$ kwriteconfig --file kwinrc --group Windows --key SeparateScreenFocus --type bool true
$ dcop kwin default reconfigure


kwriteconfig is one of those well-nigh undocumented KDE helper apps, which abound, and include the vitally important dcop, which is a way of sending commands from the commandline to windows. So this makes the SeparateScreenFocus option true and tells KDE to re-read its configuration data. You can also edit ~/.kde/share/config/kwinrc by hand, setting the value to what you want:




  • true: show windows on all screens in alt+tab

  • false: only show windows on current screen in alt+tab


1

No comments:

Post a Comment