| Index: chrome/browser/chromeos/input_method/input_method_manager_impl.cc
|
| diff --git a/chrome/browser/chromeos/input_method/input_method_manager_impl.cc b/chrome/browser/chromeos/input_method/input_method_manager_impl.cc
|
| index 8fda319f81d34e72e41f833899cd88e2ca259a6f..d0a068d6afa573b60098ef439acebab3a8fcb522 100644
|
| --- a/chrome/browser/chromeos/input_method/input_method_manager_impl.cc
|
| +++ b/chrome/browser/chromeos/input_method/input_method_manager_impl.cc
|
| @@ -37,6 +37,53 @@ namespace {
|
| const char nacl_mozc_jp_id[] =
|
| "_comp_ime_fpfbhcjppmaeaijcidgiibchfbnhbeljnacl_mozc_jp";
|
|
|
| +const char *kMod3LayoutIds[] = {
|
| + "xkb:de:neo:ger",
|
| + "xkb:ca:multix:fra",
|
| +};
|
| +
|
| +const char *kAltGrLayoutIds[] = {
|
| + "xkb:be::fra",
|
| + "xkb:be::ger",
|
| + "xkb:be::nld",
|
| + "xkb:bg::bul",
|
| + "xkb:bg:phonetic:bul",
|
| + "xkb:br::por",
|
| + "xkb:ca::fra",
|
| + "xkb:ca:eng:eng",
|
| + "xkb:ca:multix:fra",
|
| + "xkb:ch::ger",
|
| + "xkb:ch:fr:fra",
|
| + "xkb:cz::cze",
|
| + "xkb:de::ger",
|
| + "xkb:de:neo:ger",
|
| + "xkb:dk::dan",
|
| + "xkb:ee::est",
|
| + "xkb:es::spa",
|
| + "xkb:es:cat:cat",
|
| + "xkb:fi::fin",
|
| + "xkb:fr::fra",
|
| + "xkb:gb:dvorak:eng",
|
| + "xkb:gb:extd:eng",
|
| + "xkb:gr::gre",
|
| + "xkb:hr::scr",
|
| + "xkb:il::heb",
|
| + "xkb:it::ita",
|
| + "xkb:latam::spa",
|
| + "xkb:lt::lit",
|
| + "xkb:no::nob",
|
| + "xkb:pl::pol",
|
| + "xkb:pt::por",
|
| + "xkb:ro::rum",
|
| + "xkb:se::swe",
|
| + "xkb:si::slv",
|
| + "xkb:sk::slo",
|
| + "xkb:tr::tur",
|
| + "xkb:ua::ukr",
|
| + "xkb:us:altgr-intl:eng",
|
| + "xkb:us:intl:eng",
|
| +};
|
| +
|
| bool Contains(const std::vector<std::string>& container,
|
| const std::string& value) {
|
| return std::find(container.begin(), container.end(), value) !=
|
| @@ -700,6 +747,22 @@ InputMethodDescriptor InputMethodManagerImpl::GetCurrentInputMethod() const {
|
| return current_input_method_;
|
| }
|
|
|
| +bool InputMethodManagerImpl::IsMod3UsedByCurrentInputMethod() const {
|
| + for (size_t i = 0; i < arraysize(kMod3LayoutIds); ++i) {
|
| + if (GetCurrentInputMethod().id() == kMod3LayoutIds[i])
|
| + return true;
|
| + }
|
| + return false;
|
| +}
|
| +
|
| +bool InputMethodManagerImpl::IsAltGrUsedByCurrentInputMethod() const {
|
| + for (size_t i = 0; i < arraysize(kAltGrLayoutIds); ++i) {
|
| + if (GetCurrentInputMethod().id() == kAltGrLayoutIds[i])
|
| + return true;
|
| + }
|
| + return false;
|
| +}
|
| +
|
| XKeyboard* InputMethodManagerImpl::GetXKeyboard() {
|
| return xkeyboard_.get();
|
| }
|
|
|