Author: leavengood Date: Mon Mar 1 04:25:55 2010 New Revision: 249 URL: http://mmlr.dyndns.org/changeset/249 Log: Add shortcuts for using Alt-[1-9] to select that tab. Modified: webkit/trunk/WebKit/haiku/WebPositive/BrowserWindow.cpp Modified: webkit/trunk/WebKit/haiku/WebPositive/BrowserWindow.cpp ============================================================================== --- webkit/trunk/WebKit/haiku/WebPositive/BrowserWindow.cpp Sun Feb 28 20:48:31 2010 (r248) +++ webkit/trunk/WebKit/haiku/WebPositive/BrowserWindow.cpp Mon Mar 1 04:25:55 2010 (r249) @@ -79,6 +79,8 @@ TEXT_HIDE_FIND_GROUP = 'hfnd', TEXT_FIND_NEXT = 'fndn', TEXT_FIND_PREVIOUS = 'fndp', + + SELECT_TAB = 'sltb', }; @@ -249,6 +251,15 @@ AddShortcut('F', B_COMMAND_KEY, new BMessage(TEXT_SHOW_FIND_GROUP)); AddShortcut('F', B_COMMAND_KEY | B_SHIFT_KEY, new BMessage(TEXT_HIDE_FIND_GROUP)); AddShortcut('R', B_COMMAND_KEY, new BMessage(RELOAD)); + + // Add shortcuts to select a particular tab + for (int32 i = 1; i <= 9; i++) { + BMessage *selectTab = new BMessage(SELECT_TAB); + selectTab->AddInt32("tab index", i - 1); + char numStr[2]; + snprintf(numStr, sizeof(numStr), "%d", (int) i); + AddShortcut(numStr[0], B_COMMAND_KEY, selectTab); + } be_app->PostMessage(WINDOW_OPENED); } @@ -396,6 +407,17 @@ PostMessage(B_QUIT_REQUESTED); break; + case SELECT_TAB: { + int32 index; + if (message->FindInt32("tab index", &index) == B_OK + && fTabManager->SelectedTabIndex() != index + && fTabManager->CountTabs() > index) { + fTabManager->SelectTab(index); + } + + break; + } + case TAB_CHANGED: { // This message may be received also when the last tab closed, i.e. with index == -1. int32 index;