05.10.2010, в 02:29, Ryosuke Niwa написал(а):
> I highly doubt that people will misuse ime-mode because whether or not IME
> should be active is usually obvious from the context (e.g. username &
> password, telephone number, etc...).
1. I sometimes use Cyrillic characters in user names, and I'm pretty sure that
some people use CJK. There is no inherent problem with non-ASCII user names.
2. Safari forces input method to an ASCII compatible one in password fields to
match Mac OS X behavior, and people complained about that in the past. The Mac
OS X behavior is reasonable in that there is a clear benefit in not letting
hidden state affect invisible typing, but it's a pain when you can't log in
because of that!
3. A phone number can contain letters, too ('P' for pause, or part of the
number encoded as numbers, e.g. 1-800-COMCAST). In any case, there is <input
type=tel> for us to implement the best platform specific behavior.
Even these examples aren't obvious at all.
Another example that might seem obvious to a Web designer is numeric input.
People who only use English and Chinese or Japanese usually aren't aware of the
fact that punctuation characters can be at different locations on a non-U.S.
keyboard layout. These layouts are also often different between Mac and PC. So,
if you force a particular keyboard layout in some input fields, users will be
inconvenienced by switching to a different location for '.' and ',' at your
whim.
Another example was given in bug 21279, and that was URL fields. Whatever the
best input method behavior for these could be (one can argue that we should
switch to an ASCII capable input source by default, but let the user change it
later), we should deduce it from input type=url, not from a CSS property.
So far, the only accurate use case that I've seen was developing a UI for a
back-end that doesn't support non-ASCII characters in some fields. I don't
think we should extend the Web platform just to support apps that aren't
i18n-aware. And anyway, you can always paste into any field, so css-mode
doesn't protect you from getting non-ASCII characters in these fields.
> And I've never felt that there was platform-specific difference in whether or
> not IME should be enabled / disabled (I actively use Chinese & Japanese IMEs
> on Mac & Windows).
I wasn't even talking about Mac vs. Windows. When you specify "ime-mode:
disabled", do you also want to disable T9 on phones? Or to somehow affect what
iPhone does?
But there are indeed dramatic differences in actual behavior between Mac and
Windows. In IE, "ime-mode: disabled" disables input methods, while in Firefox
on Mac, it disables non-ASCII capable input sources. The patch proposed for
WebKit implements the latter. You can't meaningfully use that in a
cross-platform manner.
Please also consider that there are 3rd party input methods for English,
Russian and other languages on Mac, even if there aren't on Windows. Why would
you ever want to disable an English input method, and force the user to use a
plain keyboard?
- WBR, Alexey Proskuryakov
_______________________________________________
webkit-dev mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-dev