| Index: content/public/test/text_input_test_utils.cc
|
| diff --git a/content/public/test/text_input_test_utils.cc b/content/public/test/text_input_test_utils.cc
|
| index 594c4bedf0864aeaa4050407982367b4d48c08ef..8990941799741e3530f9a99df95d888019743ba9 100644
|
| --- a/content/public/test/text_input_test_utils.cc
|
| +++ b/content/public/test/text_input_test_utils.cc
|
| @@ -58,6 +58,10 @@ class TextInputManagerTester::InternalObserver
|
| on_selection_bounds_changed_callback_ = callback;
|
| }
|
|
|
| + void set_on_text_selection_changed_callback(const base::Closure& callback) {
|
| + on_text_selection_changed_callback_ = callback;
|
| + }
|
| +
|
| const RenderWidgetHostView* GetUpdatedView() const { return updated_view_; }
|
|
|
| bool text_input_state_changed() const { return text_input_state_changed_; }
|
| @@ -84,6 +88,13 @@ class TextInputManagerTester::InternalObserver
|
| on_selection_bounds_changed_callback_.Run();
|
| }
|
|
|
| + void OnTextSelectionChanged(TextInputManager* text_input_manager,
|
| + RenderWidgetHostViewBase* updated_view) override {
|
| + updated_view_ = updated_view;
|
| + if (!on_text_selection_changed_callback_.is_null())
|
| + on_text_selection_changed_callback_.Run();
|
| + }
|
| +
|
| // WebContentsObserver implementation.
|
| void WebContentsDestroyed() override { text_input_manager_ = nullptr; }
|
|
|
| @@ -93,6 +104,7 @@ class TextInputManagerTester::InternalObserver
|
| bool text_input_state_changed_;
|
| base::Closure update_text_input_state_callback_;
|
| base::Closure on_selection_bounds_changed_callback_;
|
| + base::Closure on_text_selection_changed_callback_;
|
|
|
| DISALLOW_COPY_AND_ASSIGN(InternalObserver);
|
| };
|
| @@ -244,6 +256,11 @@ void TextInputManagerTester::SetOnSelectionBoundsChangedCallback(
|
| observer_->set_on_selection_bounds_changed_callback(callback);
|
| }
|
|
|
| +void TextInputManagerTester::SetOnTextSelectionChangedCallback(
|
| + const base::Closure& callback) {
|
| + observer_->set_on_text_selection_changed_callback(callback);
|
| +}
|
| +
|
| bool TextInputManagerTester::GetTextInputType(ui::TextInputType* type) {
|
| DCHECK(observer_->text_input_manager());
|
| const TextInputState* state =
|
| @@ -273,6 +290,16 @@ const RenderWidgetHostView* TextInputManagerTester::GetUpdatedView() {
|
| return observer_->GetUpdatedView();
|
| }
|
|
|
| +bool TextInputManagerTester::GetCurrentTextSelectionLength(size_t* length) {
|
| + DCHECK(observer_->text_input_manager());
|
| +
|
| + if (!observer_->text_input_manager()->GetActiveWidget())
|
| + return false;
|
| +
|
| + *length = observer_->text_input_manager()->GetTextSelection()->text.size();
|
| + return true;
|
| +}
|
| +
|
| bool TextInputManagerTester::IsTextInputStateChanged() {
|
| return observer_->text_input_state_changed();
|
| }
|
| @@ -351,4 +378,4 @@ std::unique_ptr<TestInputMethodObserver> TestInputMethodObserver::Create(
|
| return observer;
|
| }
|
|
|
| -} // namespace content
|
| +} // namespace content
|
|
|