summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--chrome/browser/ui/views/omnibox/omnibox_views.cc23
-rw-r--r--chrome/browser/ui/views/omnibox/omnibox_views.h3
-rw-r--r--ui/views/controls/textfield/textfield.cc24
-rw-r--r--ui/views/controls/textfield/textfield.h3
-rw-r--r--ui/views/widget/native_widget_win.cc15
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() {