summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorthakis@chromium.org <thakis@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-10-09 07:27:14 +0000
committerthakis@chromium.org <thakis@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2009-10-09 07:27:14 +0000
commit08f669c629934824bbe4ac0b43443c40cdd3cb48 (patch)
treec870fa2b55553b9d8150acda9da50872f0b80d48
parent65b95cd72cea12a94439e8ef3cab0a0962e4aa3c (diff)
downloadchromium_src-08f669c629934824bbe4ac0b43443c40cdd3cb48.zip
chromium_src-08f669c629934824bbe4ac0b43443c40cdd3cb48.tar.gz
chromium_src-08f669c629934824bbe4ac0b43443c40cdd3cb48.tar.bz2
Forgot backspace/shift-backspace.
This should've been a two-line patch, but due to http://codereview.chromium.org/255028 it became a four-line patch. BUG=12557 TEST=Focus text box on a web page. backspace should delete text. Focus webpage background. backspace/shift-backspace should go history back/forward. When the omnibox is focussed, backspace should delete text, but cmd-1-9 should still switch tabs. Review URL: http://codereview.chromium.org/272008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28528 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--chrome/browser/global_keyboard_shortcuts_mac.mm24
-rw-r--r--chrome/browser/tab_contents/tab_contents_view_mac.mm15
2 files changed, 22 insertions, 17 deletions
diff --git a/chrome/browser/global_keyboard_shortcuts_mac.mm b/chrome/browser/global_keyboard_shortcuts_mac.mm
index d74f935..3379b5a 100644
--- a/chrome/browser/global_keyboard_shortcuts_mac.mm
+++ b/chrome/browser/global_keyboard_shortcuts_mac.mm
@@ -19,15 +19,15 @@ const KeyboardShortcutData* GetWindowKeyboardShortcutTable
{false, false, true, kVK_PageUp, IDC_SELECT_PREVIOUS_TAB},
{false, true, true, kVK_Tab, IDC_SELECT_PREVIOUS_TAB},
// Cmd-0..8 select the Nth tab, with cmd-9 being "last tab".
- {true, false, false, kVK_ANSI_1, IDC_SELECT_TAB_0},
- {true, false, false, kVK_ANSI_2, IDC_SELECT_TAB_1},
- {true, false, false, kVK_ANSI_3, IDC_SELECT_TAB_2},
- {true, false, false, kVK_ANSI_4, IDC_SELECT_TAB_3},
- {true, false, false, kVK_ANSI_5, IDC_SELECT_TAB_4},
- {true, false, false, kVK_ANSI_6, IDC_SELECT_TAB_5},
- {true, false, false, kVK_ANSI_7, IDC_SELECT_TAB_6},
- {true, false, false, kVK_ANSI_8, IDC_SELECT_TAB_7},
- {true, false, false, kVK_ANSI_9, IDC_SELECT_LAST_TAB},
+ {true, false, false, kVK_ANSI_1, IDC_SELECT_TAB_0},
+ {true, false, false, kVK_ANSI_2, IDC_SELECT_TAB_1},
+ {true, false, false, kVK_ANSI_3, IDC_SELECT_TAB_2},
+ {true, false, false, kVK_ANSI_4, IDC_SELECT_TAB_3},
+ {true, false, false, kVK_ANSI_5, IDC_SELECT_TAB_4},
+ {true, false, false, kVK_ANSI_6, IDC_SELECT_TAB_5},
+ {true, false, false, kVK_ANSI_7, IDC_SELECT_TAB_6},
+ {true, false, false, kVK_ANSI_8, IDC_SELECT_TAB_7},
+ {true, false, false, kVK_ANSI_9, IDC_SELECT_LAST_TAB},
};
*num_entries = arraysize(keyboard_shortcuts);
@@ -38,8 +38,10 @@ const KeyboardShortcutData* GetWindowKeyboardShortcutTable
const KeyboardShortcutData* GetBrowserKeyboardShortcutTable
(size_t* num_entries) {
static const KeyboardShortcutData keyboard_shortcuts[] = {
- {true, false, false, kVK_LeftArrow, IDC_BACK},
- {true, false, false, kVK_RightArrow, IDC_FORWARD},
+ {true, false, false, kVK_LeftArrow, IDC_BACK},
+ {true, false, false, kVK_RightArrow, IDC_FORWARD},
+ {false, false, false, kVK_Delete, IDC_BACK},
+ {false, true, false, kVK_Delete, IDC_FORWARD},
};
*num_entries = arraysize(keyboard_shortcuts);
diff --git a/chrome/browser/tab_contents/tab_contents_view_mac.mm b/chrome/browser/tab_contents/tab_contents_view_mac.mm
index 52e18b9..03baffc 100644
--- a/chrome/browser/tab_contents/tab_contents_view_mac.mm
+++ b/chrome/browser/tab_contents/tab_contents_view_mac.mm
@@ -299,12 +299,15 @@ void TabContentsViewMac::Observe(NotificationType type,
if (![self window])
return;
- ChromeBrowserWindow* window = (ChromeBrowserWindow*)[self window];
- DCHECK([window isKindOfClass:[ChromeBrowserWindow class]]);
- if ([window handleExtraBrowserKeyboardShortcut:event])
- return;
- if ([window handleExtraWindowKeyboardShortcut:event])
- return;
+ // Do not fire shortcuts on key up.
+ if ([event type] == NSKeyDown) {
+ ChromeBrowserWindow* window = (ChromeBrowserWindow*)[self window];
+ DCHECK([window isKindOfClass:[ChromeBrowserWindow class]]);
+ if ([window handleExtraBrowserKeyboardShortcut:event])
+ return;
+ if ([window handleExtraWindowKeyboardShortcut:event])
+ return;
+ }
if ([event type] == NSKeyDown)
[super keyDown:event];