Index: ui/base/ime/input_method_base.cc |
diff --git a/ui/base/ime/input_method_base.cc b/ui/base/ime/input_method_base.cc |
index 3441f928b90ac43904356b406a51997ea0d60ffa..b22ada50e6c97e94a003d73c0e9bc84cb94c0eb8 100644 |
--- a/ui/base/ime/input_method_base.cc |
+++ b/ui/base/ime/input_method_base.cc |
@@ -15,10 +15,10 @@ |
namespace ui { |
InputMethodBase::InputMethodBase() |
- : delegate_(NULL), |
- text_input_client_(NULL), |
- system_toplevel_window_focused_(false) { |
-} |
+ : delegate_(NULL), |
+ text_input_client_(NULL), |
+ system_toplevel_window_focused_(false), |
+ log_collector_(new InputMethodLogCollector()) {} |
InputMethodBase::~InputMethodBase() { |
FOR_EACH_OBSERVER(InputMethodObserver, |
@@ -36,6 +36,8 @@ void InputMethodBase::OnFocus() { |
void InputMethodBase::OnBlur() { |
system_toplevel_window_focused_ = false; |
+ log_collector_->ClearLogs(); |
+ log_collector_->AddLog("Input method is blurred."); |
} |
void InputMethodBase::SetFocusedTextInputClient(TextInputClient* client) { |
@@ -90,6 +92,10 @@ void InputMethodBase::RemoveObserver(InputMethodObserver* observer) { |
observer_list_.RemoveObserver(observer); |
} |
+InputMethodLogCollector* InputMethodBase::GetLogCollector() { |
+ return log_collector_.get(); |
+} |
+ |
bool InputMethodBase::IsTextInputClientFocused(const TextInputClient* client) { |
return client && (client == GetTextInputClient()); |
} |