summaryrefslogtreecommitdiffstats
path: root/base
diff options
context:
space:
mode:
authorjcampan@chromium.org <jcampan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-09-29 00:33:35 +0000
committerjcampan@chromium.org <jcampan@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-09-29 00:33:35 +0000
commitbc1407f95bae3d7472ee0c85ef83ee10610b3f1f (patch)
treeeeb1e01423fefc13afe5738d809df200b5e50623 /base
parent62525634a6f5727216828f8e05a4f563be90dfeb (diff)
downloadchromium_src-bc1407f95bae3d7472ee0c85ef83ee10610b3f1f.zip
chromium_src-bc1407f95bae3d7472ee0c85ef83ee10610b3f1f.tar.gz
chromium_src-bc1407f95bae3d7472ee0c85ef83ee10610b3f1f.tar.bz2
Relanding keyboard code refactoring:
http://codereview.chromium.org/248010/show Changing the KeyboardEvent to use a KeyboardCode instead of a w_char. Led to several places where I had to switch from VK_ to VKEY_. Also cleaned-up the table view OnKeyDown method. Since TableView is a NativeControl it can use the NativeControl::OnKeyDown directly. BUG=None TEST=Make sure short-cuts works as expected, especially in the omnibox. Review URL: http://codereview.chromium.org/251020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@27444 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'base')
-rwxr-xr-xbase/keyboard_code_conversion_gtk.cc8
-rwxr-xr-xbase/keyboard_code_conversion_gtk.h4
-rw-r--r--base/win_util.cc8
-rw-r--r--base/win_util.h6
4 files changed, 20 insertions, 6 deletions
diff --git a/base/keyboard_code_conversion_gtk.cc b/base/keyboard_code_conversion_gtk.cc
index b280d40..b56461f 100755
--- a/base/keyboard_code_conversion_gtk.cc
+++ b/base/keyboard_code_conversion_gtk.cc
@@ -44,7 +44,7 @@
namespace base {
-int WindowsKeyCodeForGdkKeyCode(int keycode) {
+base::KeyboardCode WindowsKeyCodeForGdkKeyCode(int keycode) {
switch (keycode) {
case GDK_KP_0:
return VKEY_NUMPAD0; // (60) Numeric keypad 0 key
@@ -404,14 +404,14 @@ int WindowsKeyCodeForGdkKeyCode(int keycode) {
case GDK_F22:
case GDK_F23:
case GDK_F24:
- return VKEY_F1 + (keycode - GDK_F1);
+ return static_cast<base::KeyboardCode>(VKEY_F1 + (keycode - GDK_F1));
default:
- return 0;
+ return VKEY_UNKNOWN;
}
}
// TODO(jcampan): this method might be incomplete.
-int GdkKeyCodeForWindowsKeyCode(int keycode) {
+int GdkKeyCodeForWindowsKeyCode(base::KeyboardCode keycode) {
switch (keycode) {
case VKEY_NUMPAD0:
return GDK_KP_0;
diff --git a/base/keyboard_code_conversion_gtk.h b/base/keyboard_code_conversion_gtk.h
index 9fd3b11..1f1e3b6 100755
--- a/base/keyboard_code_conversion_gtk.h
+++ b/base/keyboard_code_conversion_gtk.h
@@ -40,9 +40,9 @@
namespace base {
-int WindowsKeyCodeForGdkKeyCode(int keycode);
+base::KeyboardCode WindowsKeyCodeForGdkKeyCode(int keycode);
-int GdkKeyCodeForWindowsKeyCode(int keycode);
+int GdkKeyCodeForWindowsKeyCode(base::KeyboardCode keycode);
} // namespace
diff --git a/base/win_util.cc b/base/win_util.cc
index 37fc1ae..4fa1df0 100644
--- a/base/win_util.cc
+++ b/base/win_util.cc
@@ -373,6 +373,14 @@ std::wstring FormatLastWin32Error() {
return FormatMessage(GetLastError());
}
+WORD KeyboardCodeToWin(base::KeyboardCode keycode) {
+ return static_cast<WORD>(keycode);
+}
+
+base::KeyboardCode WinToKeyboardCode(WORD keycode) {
+ return static_cast<base::KeyboardCode>(keycode);
+}
+
} // namespace win_util
#ifdef _MSC_VER
diff --git a/base/win_util.h b/base/win_util.h
index e628bd7..307eddb 100644
--- a/base/win_util.h
+++ b/base/win_util.h
@@ -10,6 +10,8 @@
#include <string>
+#include "base/keyboard_codes.h"
+
namespace win_util {
// NOTE: Keep these in order so callers can do things like
@@ -104,6 +106,10 @@ std::wstring FormatMessage(unsigned messageid);
// Uses the last Win32 error to generate a human readable message string.
std::wstring FormatLastWin32Error();
+// Methods to convert base::KeyboardCode/Windows virtual key type methods.
+WORD KeyboardCodeToWin(base::KeyboardCode keycode);
+base::KeyboardCode WinToKeyboardCode(WORD keycode);
+
} // namespace win_util
#endif // BASE_WIN_UTIL_H__