[Bug 26218] When .getModifierState("OS") should be true?

https://www.w3.org/Bugs/Public/show_bug.cgi?id=26218

--- Comment #7 from Masayuki Nakano <masayuki@d-toybox.com> ---
(In reply to Karl Tomlinson from comment #5)
> (In reply to Masayuki Nakano from comment #3)
> > SGTM. If D3E explains the use case, adding "This is useful for ignoring all
> > key events when a system level accelerator modifier key is down."
> 
> The system will usually prevent the key events from reaching the app if they
> form a system-wide shortcut, so I don't think the app need check whether the
> SystemAccel virtual modifier is set.  That may mean there is no need for
> a SystemAccel feature.

I don't think so. Such behavior isn't guaranteed on all Linux distributions.
And also web apps may want to ignore key events while system accel modifier is
active. For example, they may want to ignore such key events because of not
inputting character.

(In reply to Karl Tomlinson from comment #6)
> My original concern was as follows:  "Super" is a somewhat archaic name for a
> key deriving from lisp keyboards [1].  These days it is most similar in use
> to
> the Windows key, and probably would have been called "WIN" or "OS" or
> similar,
> except that there didn't seem to be any need to add yet another name when
> "Super" was already available.  See [2] for a bit of an overview.
> 
> [1] http://home.comcast.net/~mmcm/kbd/SpaceCadet.html
> [2]
> http://askubuntu.com/questions/19558/what-are-the-meta-super-and-hyper-keys
> 
> Similarly now, my feeling is that there is no need to add "Super" as there is
> already "OS" available.  (I don't really care about "Hyper".  It's use would
> be obscure.)

As far as I know, Hyper is also used by major distributions about a coupe of
years ago. And Linux can map "Super" and "Hyper" different physical keys and
different modifier flags.

I know it's not a usual settings but it's important to be possible. In such
case, the mapping rule becomes impossible to map them.

Additionally, it's also not guaranteed that "Super" is used as "OS" key.

The most important merit of defining "Super" and "Hyper" as modifier key and
defining "SystemAccel" is that this way never fails in any situations. This
means that browsers keep the compatibility with the others (including its
different OS version).

> This is similar to the issue raised bug 22073 comment 0, only that "Super" is
> more similar in functionality to "OS" than "Meta" is to "OS".

Yes, however, it means that we already have a problem, web apps need to check
the OS for distinguishing the ideal behavior of "OS" and "Meta". So, adding
"Super" and "Hyper" shouldn't cause new issue.

For web apps, "Accel" and "SystemAccel" are useful because they work
independently from OS.

-- 
You are receiving this mail because:
You are the QA Contact for the bug.

Received on Wednesday, 28 January 2015 01:30:28 UTC