summaryrefslogtreecommitdiffstats
path: root/views/controls/button
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 /views/controls/button
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 'views/controls/button')
-rw-r--r--views/controls/button/custom_button.cc6
-rw-r--r--views/controls/button/menu_button.cc3
-rw-r--r--views/controls/button/native_button.cc10
3 files changed, 8 insertions, 11 deletions
diff --git a/views/controls/button/custom_button.cc b/views/controls/button/custom_button.cc
index e507d93..348e527 100644
--- a/views/controls/button/custom_button.cc
+++ b/views/controls/button/custom_button.cc
@@ -175,10 +175,10 @@ bool CustomButton::OnKeyPressed(const KeyEvent& e) {
// Space sets button state to pushed. Enter clicks the button. This matches
// the Windows native behavior of buttons, where Space clicks the button
// on KeyRelease and Enter clicks the button on KeyPressed.
- if (e.GetCharacter() == base::VKEY_SPACE) {
+ if (e.GetKeyCode() == base::VKEY_SPACE) {
SetState(BS_PUSHED);
return true;
- } else if (e.GetCharacter() == base::VKEY_RETURN) {
+ } else if (e.GetKeyCode() == base::VKEY_RETURN) {
SetState(BS_NORMAL);
NotifyClick(e);
return true;
@@ -189,7 +189,7 @@ bool CustomButton::OnKeyPressed(const KeyEvent& e) {
bool CustomButton::OnKeyReleased(const KeyEvent& e) {
if (state_ != BS_DISABLED) {
- if (e.GetCharacter() == base::VKEY_SPACE) {
+ if (e.GetKeyCode() == base::VKEY_SPACE) {
SetState(BS_NORMAL);
NotifyClick(e);
return true;
diff --git a/views/controls/button/menu_button.cc b/views/controls/button/menu_button.cc
index 25a415d..5b353f3 100644
--- a/views/controls/button/menu_button.cc
+++ b/views/controls/button/menu_button.cc
@@ -214,7 +214,8 @@ void MenuButton::OnMouseReleased(const MouseEvent& e,
// When the space bar or the enter key is pressed we need to show the menu.
bool MenuButton::OnKeyReleased(const KeyEvent& e) {
#if defined(OS_WIN)
- if ((e.GetCharacter() == VK_SPACE) || (e.GetCharacter() == VK_RETURN)) {
+ if ((e.GetKeyCode() == base::VKEY_SPACE) ||
+ (e.GetKeyCode() == base::VKEY_RETURN)) {
return Activate();
}
#else
diff --git a/views/controls/button/native_button.cc b/views/controls/button/native_button.cc
index e36719c..811fb56 100644
--- a/views/controls/button/native_button.cc
+++ b/views/controls/button/native_button.cc
@@ -10,6 +10,7 @@
#endif
#include "app/l10n_util.h"
+#include "base/keyboard_codes.h"
#include "base/logging.h"
namespace views {
@@ -73,17 +74,12 @@ void NativeButton::SetLabel(const std::wstring& label) {
}
void NativeButton::SetIsDefault(bool is_default) {
-#if defined(OS_WIN)
- int return_code = VK_RETURN;
-#else
- int return_code = GDK_Return;
-#endif
if (is_default == is_default_)
return;
if (is_default)
- AddAccelerator(Accelerator(return_code, false, false, false));
+ AddAccelerator(Accelerator(base::VKEY_RETURN, false, false, false));
else
- RemoveAccelerator(Accelerator(return_code, false, false, false));
+ RemoveAccelerator(Accelerator(base::VKEY_RETURN, false, false, false));
SetAppearsAsDefault(is_default);
}