diff options
28 files changed, 73 insertions, 77 deletions
diff --git a/chrome/browser/renderer_host/render_widget_host_view_views.cc b/chrome/browser/renderer_host/render_widget_host_view_views.cc index 1bade86..fac23e8 100644 --- a/chrome/browser/renderer_host/render_widget_host_view_views.cc +++ b/chrome/browser/renderer_host/render_widget_host_view_views.cc @@ -684,7 +684,7 @@ bool RenderWidgetHostViewViews::OnMouseWheel( return true; } -ui::TextInputClient* RenderWidgetHostViewViews::GetTextInputClient() { +views::TextInputClient* RenderWidgetHostViewViews::GetTextInputClient() { return this; } @@ -696,7 +696,7 @@ bool RenderWidgetHostViewViews::GetTooltipText(const gfx::Point& p, return true; } -// ui::TextInputClient implementation ----------------------------------------- +// TextInputClient implementation --------------------------------------------- void RenderWidgetHostViewViews::SetCompositionText( const ui::CompositionText& composition) { if (!host_) @@ -837,6 +837,10 @@ bool RenderWidgetHostViewViews::ChangeTextDirectionAndLayoutAlignment( return true; } +views::View* RenderWidgetHostViewViews::GetOwnerViewOfTextInputClient() { + return this; +} + void RenderWidgetHostViewViews::OnPaint(gfx::Canvas* canvas) { if (is_hidden_ || !host_) return; diff --git a/chrome/browser/renderer_host/render_widget_host_view_views.h b/chrome/browser/renderer_host/render_widget_host_view_views.h index ec40119..fb5e62e 100644 --- a/chrome/browser/renderer_host/render_widget_host_view_views.h +++ b/chrome/browser/renderer_host/render_widget_host_view_views.h @@ -19,11 +19,11 @@ #include "content/public/browser/notification_observer.h" #include "content/public/browser/notification_registrar.h" #include "third_party/WebKit/Source/WebKit/chromium/public/WebInputEvent.h" -#include "ui/base/ime/text_input_client.h" #include "ui/gfx/compositor/compositor_observer.h" #include "ui/gfx/native_widget_types.h" #include "views/controls/native/native_view_host.h" #include "views/events/event.h" +#include "views/ime/text_input_client.h" #include "views/touchui/touch_selection_controller.h" #include "views/view.h" #include "webkit/glue/webcursor.h" @@ -49,7 +49,7 @@ class RenderWidgetHostViewViews : public RenderWidgetHostView, public ui::CompositorObserver, #endif public views::TouchSelectionClientView, - public ui::TextInputClient, + public views::TextInputClient, public content::NotificationObserver { public: // Internal class name. @@ -157,11 +157,11 @@ class RenderWidgetHostViewViews : public RenderWidgetHostView, virtual bool OnKeyPressed(const views::KeyEvent& event) OVERRIDE; virtual bool OnKeyReleased(const views::KeyEvent& event) OVERRIDE; virtual bool OnMouseWheel(const views::MouseWheelEvent& event) OVERRIDE; - virtual ui::TextInputClient* GetTextInputClient() OVERRIDE; + virtual views::TextInputClient* GetTextInputClient() OVERRIDE; virtual bool GetTooltipText(const gfx::Point& p, string16* tooltip) const OVERRIDE; - // Overridden from ui::TextInputClient: + // Overridden from TextInputClient: virtual void SetCompositionText( const ui::CompositionText& composition) OVERRIDE; virtual void ConfirmCompositionText() OVERRIDE; @@ -181,6 +181,7 @@ class RenderWidgetHostViewViews : public RenderWidgetHostView, virtual void OnInputMethodChanged() OVERRIDE; virtual bool ChangeTextDirectionAndLayoutAlignment( base::i18n::TextDirection direction) OVERRIDE; + virtual views::View* GetOwnerViewOfTextInputClient() OVERRIDE; #if defined(UI_COMPOSITOR_IMAGE_TRANSPORT) virtual void AcceleratedSurfaceNew( @@ -128,7 +128,6 @@ 'base/ime/composition_text.cc', 'base/ime/composition_text.h', 'base/ime/composition_underline.h', - 'base/ime/text_input_client.h', 'base/ime/text_input_type.h', 'base/keycodes/keyboard_code_conversion_gtk.cc', 'base/keycodes/keyboard_code_conversion_gtk.h', diff --git a/views/controls/textfield/native_textfield_gtk.cc b/views/controls/textfield/native_textfield_gtk.cc index d2a353a..b4a98f8 100644 --- a/views/controls/textfield/native_textfield_gtk.cc +++ b/views/controls/textfield/native_textfield_gtk.cc @@ -288,7 +288,7 @@ void NativeTextfieldGtk::HandleFocus() { void NativeTextfieldGtk::HandleBlur() { } -ui::TextInputClient* NativeTextfieldGtk::GetTextInputClient() { +TextInputClient* NativeTextfieldGtk::GetTextInputClient() { return NULL; } diff --git a/views/controls/textfield/native_textfield_gtk.h b/views/controls/textfield/native_textfield_gtk.h index 33b067e..e7be873 100644 --- a/views/controls/textfield/native_textfield_gtk.h +++ b/views/controls/textfield/native_textfield_gtk.h @@ -62,7 +62,7 @@ class NativeTextfieldGtk : public NativeControlGtk, virtual bool HandleKeyReleased(const views::KeyEvent& e) OVERRIDE; virtual void HandleFocus() OVERRIDE; virtual void HandleBlur() OVERRIDE; - virtual ui::TextInputClient* GetTextInputClient() OVERRIDE; + virtual TextInputClient* GetTextInputClient() OVERRIDE; virtual void ApplyStyleRange(const gfx::StyleRange& style) OVERRIDE; virtual void ApplyDefaultStyle() OVERRIDE; virtual void ClearEditHistory() OVERRIDE; diff --git a/views/controls/textfield/native_textfield_views.cc b/views/controls/textfield/native_textfield_views.cc index 107c95b..07725ff 100644 --- a/views/controls/textfield/native_textfield_views.cc +++ b/views/controls/textfield/native_textfield_views.cc @@ -555,7 +555,7 @@ void NativeTextfieldViews::HandleBlur() { touch_selection_controller_->ClientViewLostFocus(); } -ui::TextInputClient* NativeTextfieldViews::GetTextInputClient() { +TextInputClient* NativeTextfieldViews::GetTextInputClient() { return textfield_->read_only() ? NULL : this; } @@ -652,7 +652,7 @@ void NativeTextfieldViews::OnBoundsChanged(const gfx::Rect& previous_bounds) { } /////////////////////////////////////////////////////////////////////////////// -// NativeTextfieldViews, ui::TextInputClient implementation, private: +// NativeTextfieldViews, TextInputClient implementation, private: void NativeTextfieldViews::SetCompositionText( const ui::CompositionText& composition) { @@ -813,6 +813,10 @@ bool NativeTextfieldViews::ChangeTextDirectionAndLayoutAlignment( return false; } +View* NativeTextfieldViews::GetOwnerViewOfTextInputClient() { + return textfield_; +} + void NativeTextfieldViews::OnCompositionTextConfirmedOrCleared() { if (skip_input_method_cancel_composition_) return; diff --git a/views/controls/textfield/native_textfield_views.h b/views/controls/textfield/native_textfield_views.h index 9f149d8..17967bb 100644 --- a/views/controls/textfield/native_textfield_views.h +++ b/views/controls/textfield/native_textfield_views.h @@ -8,7 +8,6 @@ #include "base/memory/weak_ptr.h" #include "base/string16.h" -#include "ui/base/ime/text_input_client.h" #include "ui/base/models/simple_menu_model.h" #include "ui/gfx/font.h" #include "views/border.h" @@ -16,6 +15,7 @@ #include "views/controls/textfield/native_textfield_wrapper.h" #include "views/controls/textfield/textfield_views_model.h" #include "views/drag_controller.h" +#include "views/ime/text_input_client.h" #include "views/touchui/touch_selection_controller.h" #include "views/view.h" @@ -46,7 +46,7 @@ class VIEWS_EXPORT NativeTextfieldViews : public TouchSelectionClientView, public ContextMenuController, public DragController, public NativeTextfieldWrapper, - public ui::TextInputClient, + public TextInputClient, public TextfieldViewsModel::Delegate { public: explicit NativeTextfieldViews(Textfield* parent); @@ -119,7 +119,7 @@ class VIEWS_EXPORT NativeTextfieldViews : public TouchSelectionClientView, virtual bool HandleKeyReleased(const KeyEvent& e) OVERRIDE; virtual void HandleFocus() OVERRIDE; virtual void HandleBlur() OVERRIDE; - virtual ui::TextInputClient* GetTextInputClient() OVERRIDE; + virtual TextInputClient* GetTextInputClient() OVERRIDE; virtual void ApplyStyleRange(const gfx::StyleRange& style) OVERRIDE; virtual void ApplyDefaultStyle() OVERRIDE; virtual void ClearEditHistory() OVERRIDE; @@ -143,7 +143,7 @@ class VIEWS_EXPORT NativeTextfieldViews : public TouchSelectionClientView, friend class NativeTextfieldViewsTest; friend class TouchSelectionControllerImplTest; - // Overridden from ui::TextInputClient: + // Overridden from TextInputClient: virtual void SetCompositionText( const ui::CompositionText& composition) OVERRIDE; virtual void ConfirmCompositionText() OVERRIDE; @@ -163,6 +163,7 @@ class VIEWS_EXPORT NativeTextfieldViews : public TouchSelectionClientView, virtual void OnInputMethodChanged() OVERRIDE; virtual bool ChangeTextDirectionAndLayoutAlignment( base::i18n::TextDirection direction) OVERRIDE; + virtual View* GetOwnerViewOfTextInputClient() OVERRIDE; // Overridden from TextfieldViewsModel::Delegate: virtual void OnCompositionTextConfirmedOrCleared() OVERRIDE; diff --git a/views/controls/textfield/native_textfield_views_unittest.cc b/views/controls/textfield/native_textfield_views_unittest.cc index f3a046a..f0c24b7 100644 --- a/views/controls/textfield/native_textfield_views_unittest.cc +++ b/views/controls/textfield/native_textfield_views_unittest.cc @@ -17,7 +17,6 @@ #include "ui/base/clipboard/clipboard.h" #include "ui/base/clipboard/scoped_clipboard_writer.h" #include "ui/base/dragdrop/drag_drop_types.h" -#include "ui/base/ime/text_input_client.h" #include "ui/base/keycodes/keyboard_codes.h" #include "ui/base/l10n/l10n_util.h" #include "ui/gfx/render_text.h" @@ -28,6 +27,7 @@ #include "views/events/event.h" #include "views/focus/focus_manager.h" #include "views/ime/mock_input_method.h" +#include "views/ime/text_input_client.h" #include "views/test/test_views_delegate.h" #include "views/test/views_test_base.h" #include "views/views_delegate.h" @@ -91,7 +91,7 @@ class TestTextfield : public views::Textfield { DISALLOW_COPY_AND_ASSIGN(TestTextfield); }; -// A helper class for use with ui::TextInputClient::GetTextFromRange(). +// A helper class for use with TextInputClient::GetTextFromRange(). class GetTextHelper { public: GetTextHelper() { @@ -1019,7 +1019,7 @@ TEST_F(NativeTextfieldViewsTest, ReadOnlyTest) { TEST_F(NativeTextfieldViewsTest, TextInputClientTest) { InitTextfield(Textfield::STYLE_DEFAULT); - ui::TextInputClient* client = textfield_->GetTextInputClient(); + TextInputClient* client = textfield_->GetTextInputClient(); EXPECT_TRUE(client); EXPECT_EQ(ui::TEXT_INPUT_TYPE_TEXT, client->GetTextInputType()); diff --git a/views/controls/textfield/native_textfield_win.cc b/views/controls/textfield/native_textfield_win.cc index f1c2dc0..025fc40 100644 --- a/views/controls/textfield/native_textfield_win.cc +++ b/views/controls/textfield/native_textfield_win.cc @@ -374,7 +374,7 @@ void NativeTextfieldWin::HandleFocus() { void NativeTextfieldWin::HandleBlur() { } -ui::TextInputClient* NativeTextfieldWin::GetTextInputClient() { +TextInputClient* NativeTextfieldWin::GetTextInputClient() { return NULL; } diff --git a/views/controls/textfield/native_textfield_win.h b/views/controls/textfield/native_textfield_win.h index 459c095..bb8cb96 100644 --- a/views/controls/textfield/native_textfield_win.h +++ b/views/controls/textfield/native_textfield_win.h @@ -92,7 +92,7 @@ class NativeTextfieldWin virtual bool HandleKeyReleased(const views::KeyEvent& event) OVERRIDE; virtual void HandleFocus() OVERRIDE; virtual void HandleBlur() OVERRIDE; - virtual ui::TextInputClient* GetTextInputClient() OVERRIDE; + virtual TextInputClient* GetTextInputClient() OVERRIDE; virtual void ApplyStyleRange(const gfx::StyleRange& style) OVERRIDE; virtual void ApplyDefaultStyle() OVERRIDE; virtual void ClearEditHistory() OVERRIDE; diff --git a/views/controls/textfield/native_textfield_wrapper.h b/views/controls/textfield/native_textfield_wrapper.h index f4439da..f6b0f8a 100644 --- a/views/controls/textfield/native_textfield_wrapper.h +++ b/views/controls/textfield/native_textfield_wrapper.h @@ -18,13 +18,13 @@ struct StyleRange; namespace ui { class Range; -class TextInputClient; } // namespace ui namespace views { class KeyEvent; class Textfield; +class TextInputClient; class View; // An interface implemented by an object that provides a platform-native @@ -132,7 +132,7 @@ class VIEWS_EXPORT NativeTextfieldWrapper { // Returns the View's TextInputClient instance or NULL if the View doesn't // support text input. - virtual ui::TextInputClient* GetTextInputClient() = 0; + virtual TextInputClient* GetTextInputClient() = 0; // Applies the |style| to the text specified by its range. // See |Textfield::ApplyStyleRange| for detail. diff --git a/views/controls/textfield/textfield.cc b/views/controls/textfield/textfield.cc index a8e041e..8eaa0de 100644 --- a/views/controls/textfield/textfield.cc +++ b/views/controls/textfield/textfield.cc @@ -410,7 +410,7 @@ void Textfield::GetAccessibleState(ui::AccessibleViewState* state) { state->selection_end = range.end(); } -ui::TextInputClient* Textfield::GetTextInputClient() { +TextInputClient* Textfield::GetTextInputClient() { return native_wrapper_ ? native_wrapper_->GetTextInputClient() : NULL; } diff --git a/views/controls/textfield/textfield.h b/views/controls/textfield/textfield.h index f6f3567..7e73caf 100644 --- a/views/controls/textfield/textfield.h +++ b/views/controls/textfield/textfield.h @@ -31,7 +31,6 @@ struct StyleRange; namespace ui { class Range; -class TextInputClient; } // namespace ui namespace views { @@ -236,7 +235,7 @@ class VIEWS_EXPORT Textfield : public View { virtual void OnFocus() OVERRIDE; virtual void OnBlur() OVERRIDE; virtual void GetAccessibleState(ui::AccessibleViewState* state) OVERRIDE; - virtual ui::TextInputClient* GetTextInputClient() OVERRIDE; + virtual TextInputClient* GetTextInputClient() OVERRIDE; protected: virtual void ViewHierarchyChanged(bool is_add, View* parent, diff --git a/views/ime/input_method.h b/views/ime/input_method.h index 4ec9523..1c7df22 100644 --- a/views/ime/input_method.h +++ b/views/ime/input_method.h @@ -13,10 +13,6 @@ #include "ui/base/ime/text_input_type.h" #include "views/views_export.h" -namespace ui { -class TextInputClient; -} // namespace ui - namespace views { namespace internal { @@ -24,6 +20,7 @@ class InputMethodDelegate; } // namespace internal class KeyEvent; +class TextInputClient; class View; class Widget; @@ -99,7 +96,7 @@ class VIEWS_EXPORT InputMethod { // Gets the focused text input client. Returns NULL if the Widget is not // focused, or there is no focused View or the focused View doesn't support // text input. - virtual ui::TextInputClient* GetTextInputClient() const = 0; + virtual TextInputClient* GetTextInputClient() const = 0; // Gets the text input type of the focused text input client. Returns // ui::TEXT_INPUT_TYPE_NONE if there is no focused text input client. diff --git a/views/ime/input_method_base.cc b/views/ime/input_method_base.cc index 1fb0a15..6155ccd 100644 --- a/views/ime/input_method_base.cc +++ b/views/ime/input_method_base.cc @@ -2,7 +2,6 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -#include "ui/base/ime/text_input_client.h" #include "views/ime/input_method_base.h" #include "views/ime/text_input_type_tracker.h" #include "views/view.h" @@ -71,13 +70,13 @@ void InputMethodBase::OnTextInputTypeChanged(View* view) { } } -ui::TextInputClient* InputMethodBase::GetTextInputClient() const { +TextInputClient* InputMethodBase::GetTextInputClient() const { return (widget_focused_ && GetFocusedView()) ? GetFocusedView()->GetTextInputClient() : NULL; } ui::TextInputType InputMethodBase::GetTextInputType() const { - ui::TextInputClient* client = GetTextInputClient(); + TextInputClient* client = GetTextInputClient(); return client ? client->GetTextInputType() : ui::TEXT_INPUT_TYPE_NONE; } @@ -104,7 +103,7 @@ bool InputMethodBase::IsTextInputTypeNone() const { } void InputMethodBase::OnInputMethodChanged() const { - ui::TextInputClient* client = GetTextInputClient(); + TextInputClient* client = GetTextInputClient(); if (client && client->GetTextInputType() != ui::TEXT_INPUT_TYPE_NONE) client->OnInputMethodChanged(); } @@ -116,7 +115,7 @@ void InputMethodBase::DispatchKeyEventPostIME(const KeyEvent& key) const { bool InputMethodBase::GetCaretBoundsInWidget(gfx::Rect* rect) const { DCHECK(rect); - ui::TextInputClient* client = GetTextInputClient(); + TextInputClient* client = GetTextInputClient(); if (!client || client->GetTextInputType() == ui::TEXT_INPUT_TYPE_NONE) return false; diff --git a/views/ime/input_method_base.h b/views/ime/input_method_base.h index 751757a..e657e22 100644 --- a/views/ime/input_method_base.h +++ b/views/ime/input_method_base.h @@ -11,14 +11,7 @@ #include "views/focus/focus_manager.h" #include "views/ime/input_method.h" #include "views/ime/input_method_delegate.h" - -namespace gfx { -class Rect; -} // namespace gfx - -namespace ui { -class TextInputClient; -} // namespace ui +#include "views/ime/text_input_client.h" namespace views { @@ -53,7 +46,7 @@ class VIEWS_EXPORT InputMethodBase : public InputMethod, // implementation. virtual void OnTextInputTypeChanged(View* view) OVERRIDE; - virtual ui::TextInputClient* GetTextInputClient() const OVERRIDE; + virtual TextInputClient* GetTextInputClient() const OVERRIDE; virtual ui::TextInputType GetTextInputType() const OVERRIDE; virtual bool IsMock() const OVERRIDE; diff --git a/views/ime/input_method_gtk.cc b/views/ime/input_method_gtk.cc index 50fd37e..ee1dabb 100644 --- a/views/ime/input_method_gtk.cc +++ b/views/ime/input_method_gtk.cc @@ -209,7 +209,7 @@ void InputMethodGtk::OnDidChangeFocus(View* focused_before, View* focused) { } void InputMethodGtk::ConfirmCompositionText() { - ui::TextInputClient* client = GetTextInputClient(); + TextInputClient* client = GetTextInputClient(); if (client && client->HasCompositionText()) client->ConfirmCompositionText(); @@ -297,14 +297,14 @@ void InputMethodGtk::ProcessUnfilteredKeyPressEvent(const KeyEvent& key) { // event (ctrl-a, return, tab, etc.). We need to send the character to the // focused text input client by calling TextInputClient::InsertChar(). char16 ch = key.GetCharacter(); - ui::TextInputClient* client = GetTextInputClient(); + TextInputClient* client = GetTextInputClient(); if (ch && client) client->InsertChar(ch, key.flags()); } void InputMethodGtk::ProcessInputMethodResult(const KeyEvent& key, bool filtered) { - ui::TextInputClient* client = GetTextInputClient(); + TextInputClient* client = GetTextInputClient(); DCHECK(client); if (result_text_.length()) { @@ -427,7 +427,7 @@ void InputMethodGtk::OnPreeditEnd(GtkIMContext* context) { composition_.Clear(); if (!handling_key_event_) { - ui::TextInputClient* client = GetTextInputClient(); + TextInputClient* client = GetTextInputClient(); if (client && client->HasCompositionText()) client->ClearCompositionText(); } diff --git a/views/ime/input_method_gtk.h b/views/ime/input_method_gtk.h index 4e40409..fe323ea 100644 --- a/views/ime/input_method_gtk.h +++ b/views/ime/input_method_gtk.h @@ -11,8 +11,6 @@ #include "base/basictypes.h" #include "base/compiler_specific.h" #include "ui/base/gtk/gtk_signal.h" -#include "ui/base/ime/composition_text.h" -#include "ui/base/ime/text_input_client.h" #include "views/ime/input_method_base.h" #include "views/view.h" diff --git a/views/ime/input_method_ibus.cc b/views/ime/input_method_ibus.cc index c9090ff..a9fa1c3 100644 --- a/views/ime/input_method_ibus.cc +++ b/views/ime/input_method_ibus.cc @@ -596,7 +596,7 @@ void InputMethodIBus::DestroyContext() { } void InputMethodIBus::ConfirmCompositionText() { - ui::TextInputClient* client = GetTextInputClient(); + TextInputClient* client = GetTextInputClient(); if (client && client->HasCompositionText()) client->ConfirmCompositionText(); @@ -744,7 +744,7 @@ void InputMethodIBus::ProcessUnfilteredKeyPressEvent(const KeyEvent& key, if (character_composer_.FilterKeyPress(ibus_keyval)) { string16 composed = character_composer_.composed_character(); if (!composed.empty()) { - ui::TextInputClient* client = GetTextInputClient(); + TextInputClient* client = GetTextInputClient(); if (client) client->InsertText(composed); } @@ -754,7 +754,7 @@ void InputMethodIBus::ProcessUnfilteredKeyPressEvent(const KeyEvent& key, // then it means the key event didn't generate any result text. So we need // to send corresponding character to the focused text input client. - ui::TextInputClient* client = GetTextInputClient(); + TextInputClient* client = GetTextInputClient(); char16 ch = key.GetCharacter(); if (ch && client) client->InsertChar(ch, key.flags()); @@ -762,7 +762,7 @@ void InputMethodIBus::ProcessUnfilteredKeyPressEvent(const KeyEvent& key, void InputMethodIBus::ProcessInputMethodResult(const KeyEvent& key, bool filtered) { - ui::TextInputClient* client = GetTextInputClient(); + TextInputClient* client = GetTextInputClient(); DCHECK(client); if (result_text_.length()) { @@ -939,7 +939,7 @@ void InputMethodIBus::OnHidePreeditText(IBusInputContext* context) { composition_.Clear(); if (pending_key_events_.empty()) { - ui::TextInputClient* client = GetTextInputClient(); + TextInputClient* client = GetTextInputClient(); if (client && client->HasCompositionText()) client->ClearCompositionText(); composition_changed_ = false; diff --git a/views/ime/input_method_ibus.h b/views/ime/input_method_ibus.h index c9fd102..d07a457 100644 --- a/views/ime/input_method_ibus.h +++ b/views/ime/input_method_ibus.h @@ -15,8 +15,6 @@ #include "ui/base/glib/glib_integers.h" #include "ui/base/glib/glib_signal.h" #include "ui/base/ime/character_composer.h" -#include "ui/base/ime/composition_text.h" -#include "ui/base/ime/text_input_client.h" #include "views/events/event.h" #include "views/ime/input_method_base.h" #include "views/view.h" diff --git a/views/ime/input_method_wayland.cc b/views/ime/input_method_wayland.cc index 4b90b2b..20d3ff2 100644 --- a/views/ime/input_method_wayland.cc +++ b/views/ime/input_method_wayland.cc @@ -68,7 +68,7 @@ void InputMethodWayland::ProcessKeyPressEvent(const KeyEvent& key) { // event (ctrl-a, return, tab, etc.). We need to send the character to the // focused text input client by calling TextInputClient::InsertChar(). char16 ch = key.GetCharacter(); - ui::TextInputClient* client = GetTextInputClient(); + TextInputClient* client = GetTextInputClient(); if (ch && client) client->InsertChar(ch, key.flags()); } diff --git a/views/ime/input_method_win.cc b/views/ime/input_method_win.cc index 748df76..12ae2f4 100644 --- a/views/ime/input_method_win.cc +++ b/views/ime/input_method_win.cc @@ -7,8 +7,6 @@ #include "base/basictypes.h" #include "base/logging.h" #include "base/string_util.h" -#include "ui/base/ime/composition_text.h" -#include "ui/base/ime/text_input_client.h" #include "ui/base/keycodes/keyboard_codes.h" #include "views/events/event.h" @@ -287,7 +285,7 @@ LRESULT InputMethodWin::OnDeadChar( } LRESULT InputMethodWin::OnDocumentFeed(RECONVERTSTRING* reconv) { - ui::TextInputClient* client = GetTextInputClient(); + TextInputClient* client = GetTextInputClient(); if (!client) return 0; @@ -350,7 +348,7 @@ LRESULT InputMethodWin::OnDocumentFeed(RECONVERTSTRING* reconv) { } LRESULT InputMethodWin::OnReconvertString(RECONVERTSTRING* reconv) { - ui::TextInputClient* client = GetTextInputClient(); + TextInputClient* client = GetTextInputClient(); if (!client) return 0; diff --git a/views/ime/mock_input_method.cc b/views/ime/mock_input_method.cc index 5a227b7..07dca3ac 100644 --- a/views/ime/mock_input_method.cc +++ b/views/ime/mock_input_method.cc @@ -6,7 +6,6 @@ #include "base/basictypes.h" #include "base/logging.h" -#include "ui/base/ime/text_input_client.h" #include "ui/base/keycodes/keyboard_codes.h" #include "views/events/event.h" #include "views/widget/widget.h" @@ -58,7 +57,7 @@ void MockInputMethod::DispatchKeyEvent(const KeyEvent& key) { if (focus_changed_) return; - ui::TextInputClient* client = GetTextInputClient(); + TextInputClient* client = GetTextInputClient(); if (client) { if (handled) { if (result_text_.length()) @@ -113,7 +112,7 @@ bool MockInputMethod::IsMock() const { } void MockInputMethod::OnWillChangeFocus(View* focused_before, View* focused) { - ui::TextInputClient* client = GetTextInputClient(); + TextInputClient* client = GetTextInputClient(); if (client && client->HasCompositionText()) client->ConfirmCompositionText(); focus_changed_ = true; diff --git a/views/ime/mock_input_method.h b/views/ime/mock_input_method.h index b3392c1..01373eb 100644 --- a/views/ime/mock_input_method.h +++ b/views/ime/mock_input_method.h @@ -10,7 +10,6 @@ #include "base/basictypes.h" #include "base/compiler_specific.h" -#include "ui/base/ime/composition_text.h" #include "views/ime/input_method_base.h" #include "views/view.h" diff --git a/ui/base/ime/text_input_client.h b/views/ime/text_input_client.h index a7faba9..a0dd86a3 100644 --- a/ui/base/ime/text_input_client.h +++ b/views/ime/text_input_client.h @@ -2,26 +2,29 @@ // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. -#ifndef UI_BASE_IME_TEXT_INPUT_CLIENT_H_ -#define UI_BASE_IME_TEXT_INPUT_CLIENT_H_ +#ifndef VIEWS_IME_TEXT_INPUT_CLIENT_H_ +#define VIEWS_IME_TEXT_INPUT_CLIENT_H_ #pragma once +#include <vector> + #include "base/basictypes.h" -#include "base/i18n/rtl.h" #include "base/string16.h" #include "ui/base/ime/composition_text.h" #include "ui/base/ime/text_input_type.h" #include "ui/base/range/range.h" -#include "ui/base/ui_export.h" +#include "views/views_export.h" namespace gfx { class Rect; } -namespace ui { +namespace views { + +class View; // An interface implemented by a View that needs text input support. -class UI_EXPORT TextInputClient { +class VIEWS_EXPORT TextInputClient { public: virtual ~TextInputClient() {} @@ -112,8 +115,11 @@ class UI_EXPORT TextInputClient { // Returns false if the operation is not supported. virtual bool ChangeTextDirectionAndLayoutAlignment( base::i18n::TextDirection direction) = 0; + + // Gets the View object who owns this TextInputClient instance. + virtual View* GetOwnerViewOfTextInputClient() = 0; }; -} // namespace ui +} // namespace views -#endif // UI_BASE_IME_TEXT_INPUT_CLIENT_H_ +#endif // VIEWS_IME_TEXT_INPUT_CLIENT_H_ diff --git a/views/view.cc b/views/view.cc index 698caba..b3644dc 100644 --- a/views/view.cc +++ b/views/view.cc @@ -793,7 +793,7 @@ bool View::OnMouseWheel(const MouseWheelEvent& event) { return false; } -ui::TextInputClient* View::GetTextInputClient() { +TextInputClient* View::GetTextInputClient() { return NULL; } diff --git a/views/view.h b/views/view.h index 222833a..6c49097 100644 --- a/views/view.h +++ b/views/view.h @@ -42,7 +42,6 @@ struct AccessibleViewState; class Compositor; class Layer; class LayerAnimationSequence; -class TextInputClient; class Texture; class ThemeProvider; class Transform; @@ -65,6 +64,7 @@ class FocusTraversable; class InputMethod; class LayoutManager; class ScrollView; +class TextInputClient; class Widget; namespace internal { @@ -623,7 +623,7 @@ class VIEWS_EXPORT View : public ui::LayerDelegate, // Returns the View's TextInputClient instance or NULL if the View doesn't // support text input. - virtual ui::TextInputClient* GetTextInputClient(); + virtual TextInputClient* GetTextInputClient(); // Convenience method to retrieve the InputMethod associated with the // Widget that contains this view. Returns NULL if this view is not part of a diff --git a/views/views.gyp b/views/views.gyp index 6f4da62..fb115d9 100644 --- a/views/views.gyp +++ b/views/views.gyp @@ -304,6 +304,7 @@ 'ime/input_method_win.h', 'ime/mock_input_method.cc', 'ime/mock_input_method.h', + 'ime/text_input_client.h', 'ime/text_input_type_tracker.h', 'ime/text_input_type_tracker.cc', 'layout/box_layout.cc', |