Saturday, April 23, 2011

Keyboard layouts: switch notification

So there's this (pretty old) feature request to show notification when keyboard layout is switched ( It's not too hard to implement that (although the KStatusNotifierItem is a bit limited in how the notifications can be set). But there's couple of questions I have and although it has 45 votes nobody replied in the bug so far so I'll post them here:

1) when keyboard switcher is in "by application" or "by window" mode and active window changes also switching current layout, would you want to see
notification as well? Or shall the notification be shown only for "manual" layout change? I would think you don't want that popup show every time you
switch the window, but then if you don't see the tray you would not know if layout changed...
of course we can add new UI option but there's quite a bit of them already so I would rather not unless I have to

2) would you care to set the notification timeout? or shall it just use some "system default" one? again the less new UI options the better, unless it's
really needed


  1. In my opinion, the manual switching usecase doesn't require a notification, as is the user himself who changes the layout so there is no need to make him aware of this change.

    It's only when talking about automatic changes made by the "per application" and "per window" settings that the notification appearing might make sense.

    Thanks for your time!

  2. @Luis Well, the original bug was actually requesting the notification for cases where the taskbar panel is hidden so even if user switches manually he can't see which layout become active.
    While having notification every time window changes may be a bit noisy.

  3. Well, I propose an option to show it every time the layout changes, or not showing it at all. It will seem confusing or even random otherwise.
    It is common to change the layout rapidly when writing multilingual text, And I'm afraid the notification area might get ugly. I propose them to go away quickly (2sec) and not to be remembered by the notification area.

  4. If you are using 3+ layouts (In my case EN/LT/RU), notification on manual change would be great.

    But the problem can be solved by loping layouts from the beginning. If e.g. 5mins passes since last change, first time user hits layout switching shortcut it sets layout to 1st layout (in my case EN), second time within 5mins to LT, third time - RU, fourth - EN again.

    The key point is that currently user DON'T know current layout when switching. If we start looping from the fist layout in the list - it wont be a problem.

    Yes, notification helps, but if you are not that good at blind typing, notification still can be left unseen.

  5. @Lukas The problem is that timing introduces another volatile aspect - how would a user know if 5 min has elapsed? And if layouts are set by windows/apps does 5 min count from when layout was set or when the window was last open?
    I think timing produces more problems than solves.

  6. I hope it is going to be optional. It will never work good with current KDE notifications, too annoying, too slow to change, etc....
    If you really want to satisfy that request, which does seem to have some grounds, you most probably have to code some floating notification by yourself. Otherwise it will be "works on my computer". I have 3 layouts, will you dispatch three notifications into the tray if I cycle over? Broken.

  7. @Michael It's going to be optional and off by default. And yes to make it functional but not too noisy is not simple that's why I posted this in the blog.