diff options
-rw-r--r-- | chrome/browser/ui/views/omnibox/omnibox_views.cc | 23 | ||||
-rw-r--r-- | chrome/browser/ui/views/omnibox/omnibox_views.h | 3 | ||||
-rw-r--r-- | ui/views/controls/textfield/textfield.cc | 24 | ||||
-rw-r--r-- | ui/views/controls/textfield/textfield.h | 3 | ||||
-rw-r--r-- | ui/views/widget/native_widget_win.cc | 15 |
5 files changed, 26 insertions, 42 deletions
diff --git a/chrome/browser/ui/views/omnibox/omnibox_views.cc b/chrome/browser/ui/views/omnibox/omnibox_views.cc index 498446f..317d346 100644 --- a/chrome/browser/ui/views/omnibox/omnibox_views.cc +++ b/chrome/browser/ui/views/omnibox/omnibox_views.cc @@ -4,32 +4,24 @@ #include "chrome/browser/ui/views/omnibox/omnibox_views.h" -#include "base/command_line.h" #include "chrome/browser/ui/omnibox/omnibox_edit_controller.h" #include "chrome/browser/ui/views/location_bar/location_bar_view.h" #include "chrome/browser/ui/views/omnibox/omnibox_view_views.h" -#include "ui/base/ui_base_switches.h" +#include "ui/views/controls/textfield/textfield.h" #if defined(OS_WIN) && !defined(USE_AURA) #include "chrome/browser/ui/views/omnibox/omnibox_view_win.h" #endif -bool UseOmniboxViews() { -#if defined(OS_WIN) && !defined(USE_AURA) - static bool kUseOmniboxViews = CommandLine::ForCurrentProcess()-> - HasSwitch(switches::kEnableViewsTextfield); - return kUseOmniboxViews; -#endif - return true; -} - OmniboxViewViews* GetOmniboxViewViews(OmniboxView* view) { - return UseOmniboxViews() ? static_cast<OmniboxViewViews*>(view) : NULL; + return views::Textfield::IsViewsTextfieldEnabled() ? + static_cast<OmniboxViewViews*>(view) : NULL; } #if defined(OS_WIN) && !defined(USE_AURA) OmniboxViewWin* GetOmniboxViewWin(OmniboxView* view) { - return UseOmniboxViews() ? NULL : static_cast<OmniboxViewWin*>(view); + return views::Textfield::IsViewsTextfieldEnabled() ? + NULL : static_cast<OmniboxViewWin*>(view); } #endif @@ -41,10 +33,9 @@ OmniboxView* CreateOmniboxView(OmniboxEditController* controller, LocationBarView* location_bar, views::View* popup_parent_view) { #if defined(OS_WIN) && !defined(USE_AURA) - if (!UseOmniboxViews()) + if (!views::Textfield::IsViewsTextfieldEnabled()) return new OmniboxViewWin(controller, toolbar_model, location_bar, - command_updater, popup_window_mode, location_bar, - popup_parent_view); + command_updater, popup_window_mode, location_bar, popup_parent_view); #endif OmniboxViewViews* omnibox = new OmniboxViewViews(controller, toolbar_model, profile, command_updater, popup_window_mode, location_bar); diff --git a/chrome/browser/ui/views/omnibox/omnibox_views.h b/chrome/browser/ui/views/omnibox/omnibox_views.h index 609f86b..675d0e1 100644 --- a/chrome/browser/ui/views/omnibox/omnibox_views.h +++ b/chrome/browser/ui/views/omnibox/omnibox_views.h @@ -18,9 +18,6 @@ namespace views { class View; } -// Returns true if OmniboxViewViews should be used (instead of OmniboxViewWin). -bool UseOmniboxViews(); - // Return |view| as an OmniboxViewViews, or NULL if it is of a different type. OmniboxViewViews* GetOmniboxViewViews(OmniboxView* view); diff --git a/ui/views/controls/textfield/textfield.cc b/ui/views/controls/textfield/textfield.cc index a0e6abb..dd2ccb3 100644 --- a/ui/views/controls/textfield/textfield.cc +++ b/ui/views/controls/textfield/textfield.cc @@ -35,22 +35,24 @@ namespace { // Default placeholder text color. const SkColor kDefaultPlaceholderTextColor = SK_ColorLTGRAY; -#if defined(OS_WIN) && !defined(USE_AURA) -bool UseNativeTextfieldViews() { - CommandLine* command_line = CommandLine::ForCurrentProcess(); - return command_line->HasSwitch(switches::kEnableViewsTextfield); -} -#endif - } // namespace namespace views { +///////////////////////////////////////////////////////////////////////////// +// Textfield + // static const char Textfield::kViewClassName[] = "views/Textfield"; -///////////////////////////////////////////////////////////////////////////// -// Textfield +// static +bool Textfield::IsViewsTextfieldEnabled() { +#if defined(OS_WIN) && !defined(USE_AURA) + return CommandLine::ForCurrentProcess()->HasSwitch( + switches::kEnableViewsTextfield); +#endif + return true; +} Textfield::Textfield() : native_wrapper_(NULL), @@ -480,7 +482,7 @@ void Textfield::ViewHierarchyChanged(bool is_add, View* parent, View* child) { // initialization for the wrapper. // // Remove the include for native_textfield_win.h above when you fix this. - if (!UseNativeTextfieldViews()) + if (!IsViewsTextfieldEnabled()) static_cast<NativeTextfieldWin*>(native_wrapper_)->AttachHack(); #endif } @@ -497,7 +499,7 @@ std::string Textfield::GetClassName() const { NativeTextfieldWrapper* NativeTextfieldWrapper::CreateWrapper( Textfield* field) { #if defined(OS_WIN) && !defined(USE_AURA) - if (!UseNativeTextfieldViews()) + if (!Textfield::IsViewsTextfieldEnabled()) return new NativeTextfieldWin(field); #endif return new NativeTextfieldViews(field); diff --git a/ui/views/controls/textfield/textfield.h b/ui/views/controls/textfield/textfield.h index 2a4fe31..09e2cfb 100644 --- a/ui/views/controls/textfield/textfield.h +++ b/ui/views/controls/textfield/textfield.h @@ -48,6 +48,9 @@ class VIEWS_EXPORT Textfield : public View { STYLE_LOWERCASE = 1 << 1 }; + // Returns true if the build or commandline dictates NativeTextfieldViews use. + static bool IsViewsTextfieldEnabled(); + Textfield(); explicit Textfield(StyleFlags style); virtual ~Textfield(); diff --git a/ui/views/widget/native_widget_win.cc b/ui/views/widget/native_widget_win.cc index 72d15c5..de8341f 100644 --- a/ui/views/widget/native_widget_win.cc +++ b/ui/views/widget/native_widget_win.cc @@ -33,7 +33,7 @@ #include "ui/gfx/screen.h" #include "ui/views/accessibility/native_view_accessibility_win.h" #include "ui/views/controls/native_control_win.h" -#include "ui/views/controls/textfield/native_textfield_views.h" +#include "ui/views/controls/textfield/textfield.h" #include "ui/views/drag_utils.h" #include "ui/views/focus/accelerator_handler.h" #include "ui/views/focus/view_storage.h" @@ -50,11 +50,6 @@ #include "ui/views/win/hwnd_message_handler.h" #include "ui/views/window/native_frame_view.h" -#if !defined(USE_AURA) -#include "base/command_line.h" -#include "ui/base/ui_base_switches.h" -#endif - #pragma comment(lib, "dwmapi.lib") using ui::ViewProp; @@ -250,12 +245,8 @@ bool NativeWidgetWin::HasCapture() const { } InputMethod* NativeWidgetWin::CreateInputMethod() { -#if !defined(USE_AURA) - CommandLine* command_line = CommandLine::ForCurrentProcess(); - if (!command_line->HasSwitch(switches::kEnableViewsTextfield)) - return NULL; -#endif - return new InputMethodWin(GetMessageHandler(), GetMessageHandler()->hwnd()); + return views::Textfield::IsViewsTextfieldEnabled() ? + new InputMethodWin(GetMessageHandler(), GetNativeWindow()) : NULL; } internal::InputMethodDelegate* NativeWidgetWin::GetInputMethodDelegate() { |