Chromium Code Reviews| 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 2c2eff8d4715f9642fdfe7e5d4098915ea96120c..e0d24577b5586a7432ff71138ef18e039393a38c 100644 |
| --- a/chrome/browser/chromeos/input_method/input_method_manager_impl.cc |
| +++ b/chrome/browser/chromeos/input_method/input_method_manager_impl.cc |
| @@ -929,7 +929,8 @@ InputMethodManagerImpl::InputMethodManagerImpl( |
| util_(delegate_.get()), |
| component_extension_ime_manager_(new ComponentExtensionIMEManager()), |
| enable_extension_loading_(enable_extension_loading), |
| - is_ime_menu_activated_(false) { |
| + is_ime_menu_activated_(false), |
| + features_restricted_state_(FeaturesRestricted::NONE) { |
| if (IsRunningAsSystemCompositor()) { |
| #if defined(USE_OZONE) |
| keyboard_ = base::MakeUnique<ImeKeyboardMus>( |
| @@ -1345,5 +1346,25 @@ bool InputMethodManagerImpl::IsEmojiHandwritingVoiceOnImeMenuEnabled() { |
| return base::FeatureList::IsEnabled(features::kEHVInputOnImeMenu); |
| } |
| +void InputMethodManagerImpl::SetFeaturesRestricted(FeaturesRestricted feature, |
| + bool restricted) { |
| + if (feature == FeaturesRestricted::NONE) { |
| + features_restricted_state_ = |
| + restricted ? FeaturesRestricted::NONE : (~FeaturesRestricted::NONE); |
|
James Cook
2017/06/27 16:31:11
nit: () not needed, here or below
Azure Wei
2017/06/29 16:37:02
Done.
|
| + } else { |
| + if (restricted) |
| + features_restricted_state_ |= feature; |
| + else |
| + features_restricted_state_ &= (~feature); |
| + } |
| +} |
| + |
| +bool InputMethodManagerImpl::GetFeaturesRestricted( |
| + FeaturesRestricted feature) const { |
| + if (feature == FeaturesRestricted::NONE) |
| + return features_restricted_state_ == FeaturesRestricted::NONE; |
| + return (features_restricted_state_ & feature); |
| +} |
| + |
| } // namespace input_method |
| } // namespace chromeos |