WebPositive: added shortcut to cycle through tabs like in every other browser

Change-Id: I3cb543948929c20e64c1c8c245a568fb81637a3d
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5574
Tested-by: Commit checker robot <[email protected]>
Reviewed-by: Jérôme Duval <[email protected]>
Reviewed-by: Adrien Destugues <[email protected]>
This commit is contained in:
Javier Steinaker
2022-08-28 18:49:19 +00:00
committed by waddlesplash
parent 100e2a19c1
commit 4f0d375c54
+14 -1
View File
@@ -129,6 +129,7 @@ enum {
FIND_TEXT_CHANGED = 'ftxt',
SELECT_TAB = 'sltb',
CYCLE_TABS = 'ctab',
};
@@ -679,7 +680,10 @@ BrowserWindow::BrowserWindow(BRect frame, SettingsMessage* appSettings,
snprintf(numStr, sizeof(numStr), "%d", (int) i);
AddShortcut(numStr[0], B_COMMAND_KEY, selectTab);
}
// Add shortcut to cycle through tabs like in every other web browser
AddShortcut(B_TAB, B_COMMAND_KEY, new BMessage(CYCLE_TABS));
BKeymap keymap;
keymap.SetToCurrent();
BObjectList<const char> unmodified(3, true);
@@ -1120,6 +1124,15 @@ BrowserWindow::MessageReceived(BMessage* message)
break;
}
case CYCLE_TABS:
{
int32 index = fTabManager->SelectedTabIndex() + 1;
if (index >= fTabManager->CountTabs())
index = 0;
fTabManager->SelectTab(index);
break;
}
case TAB_CHANGED:
{
// This message may be received also when the last tab closed,