summaryrefslogtreecommitdiffstats
path: root/views/controls/textfield
diff options
context:
space:
mode:
authorsky@chromium.org <sky@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-12-03 22:34:59 +0000
committersky@chromium.org <sky@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-12-03 22:34:59 +0000
commitca32a43d3d00983134f0ecec4e43a5a8dc0b61da (patch)
tree247221d443cf96540b8db75ae3c631ec163e256a /views/controls/textfield
parent06cafed03fc3a63eb1282d1416c3629faa33c762 (diff)
downloadchromium_src-ca32a43d3d00983134f0ecec4e43a5a8dc0b61da.zip
chromium_src-ca32a43d3d00983134f0ecec4e43a5a8dc0b61da.tar.gz
chromium_src-ca32a43d3d00983134f0ecec4e43a5a8dc0b61da.tar.bz2
Makes views not draw focus for native controls on Gtk. As Gtk renders
the focus for us, this resulted in double the focus indicators. BUG=none TEST=none Review URL: http://codereview.chromium.org/468004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@33739 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'views/controls/textfield')
-rw-r--r--views/controls/textfield/textfield.cc20
-rw-r--r--views/controls/textfield/textfield.h1
2 files changed, 12 insertions, 9 deletions
diff --git a/views/controls/textfield/textfield.cc b/views/controls/textfield/textfield.cc
index e906337..e12138e 100644
--- a/views/controls/textfield/textfield.cc
+++ b/views/controls/textfield/textfield.cc
@@ -9,20 +9,17 @@
#endif
#include "app/gfx/insets.h"
-#if defined(OS_WIN)
-#include "app/win_util.h"
-#include "base/win_util.h"
-#endif
-
-#if defined(OS_LINUX)
-#include "base/keyboard_code_conversion_gtk.h"
-#endif
#include "base/keyboard_codes.h"
#include "base/string_util.h"
+#include "views/controls/native/native_view_host.h"
#include "views/controls/textfield/native_textfield_wrapper.h"
#include "views/widget/widget.h"
-#if defined(OS_WIN)
+#if defined(OS_LINUX)
+#include "base/keyboard_code_conversion_gtk.h"
+#elif defined(OS_WIN)
+#include "app/win_util.h"
+#include "base/win_util.h"
// TODO(beng): this should be removed when the OS_WIN hack from
// ViewHierarchyChanged is removed.
#include "views/controls/textfield/native_textfield_win.h"
@@ -225,6 +222,11 @@ bool Textfield::SkipDefaultKeyEventProcessing(const KeyEvent& e) {
return false;
}
+void Textfield::PaintFocusBorder(gfx::Canvas* canvas) {
+ if (NativeViewHost::kRenderNativeControlFocus)
+ View::PaintFocusBorder(canvas);
+}
+
void Textfield::SetEnabled(bool enabled) {
View::SetEnabled(enabled);
if (native_wrapper_)
diff --git a/views/controls/textfield/textfield.h b/views/controls/textfield/textfield.h
index 79266d0..3810d82 100644
--- a/views/controls/textfield/textfield.h
+++ b/views/controls/textfield/textfield.h
@@ -200,6 +200,7 @@ class Textfield : public View {
virtual void AboutToRequestFocusFromTabTraversal(bool reverse);
virtual bool SkipDefaultKeyEventProcessing(const KeyEvent& e);
virtual void SetEnabled(bool enabled);
+ virtual void PaintFocusBorder(gfx::Canvas* canvas);
protected:
virtual void Focus();