Cycle left/right through tabs with keyboard shortcut 1, 2 is no longer working
-
treedudu last edited by
Just realized my favourite shortcut 1/2 no longer cycle through active tabs . Advanced keyboard shortcut is turned on and I can't seemed to get it back .. any thoughts ??
-
johnymacclen last edited by
That is an annoying one to lose, especially when you are used to it. Since the advanced shortcut setting is already on, a few checks are worth trying:
First, try turning the advanced keyboard shortcuts setting off, restarting Opera, then turning it back on again. A setting can look enabled after an update without actually taking effect until it is toggled.
Second, check whether another application or a system shortcut on the Mac is now capturing the 1 and 2 keys, and try the shortcuts with the browser window itself in focus, rather than with the address bar or a text field selected.
Third, open Settings and look at the Shortcuts section to see whether 1 and 2 are still assigned to cycling tabs, or whether they have been changed or left blank. If they are listed differently, reassigning them there should restore the behaviour.
As a workaround in the meantime, Ctrl+Tab and Ctrl+Shift+Tab should still move forward and back through tabs.
It would also help to know which Opera version this started with, and whether it stopped straight after an update, as that would point to a change in that version rather than a local setting.
-
czolg last edited by
Up. Even after removing the
com.operasoftware.Operadir completely "Advanced keyboard shortcut" feature is not working, so it's not a profile related problem. -
DanielWu09 last edited by
@treedudu same problem, seems like all advanced keyboard shortcuts stopped working
-
treedudu last edited by
@DanielWu09 yeah .. it's very annoying .. that's my goto shortcut for the past 20 years ...
-
DanielWu09 last edited by
Following up on the reports regarding single-key shortcuts (1/2 to cycle tabs, Z/X for navigation, etc.) stopping working after updating to Opera 137.0.6036.63 on macOS:
I did a deep dive into the local profile and the macOS binary dispatch pipeline to understand why this happens and why toggling the setting doesn't help. Here is the technical breakdown:
- It is not a settings persistence bug
Checking ~/Library/Application Support/com.operasoftware.Opera/Default/Preferences shows that turning on "Enable advanced keyboard shortcuts" properly writes:
json
"Keybindings": {
"Settings": {
"AdvancedEnabled": true
}
}The preference flag is indeed stored as true and loaded into the browser memory, but the action still fails to trigger.
- Root Cause: Disconnect in unhandled key event routing on macOS
The issue stems from how macOS handles single-key shortcuts compared to standard modified shortcuts:
Standard shortcuts (e.g., Cmd+T, Ctrl+Tab): Handled directly by the macOS Cocoa menu system (NSMenu / MainMenu.nib / CommandDispatcher). These intercept key combinations at the OS level before they reach the web view, which is why all modifier-based shortcuts continue to work normally.
Single-key shortcuts (e.g., 1, 2, Z, X): macOS menu rules do not permit modifierless single keys as menu equivalents. Therefore, these shortcuts rely entirely on the Chromium web renderer's unhandled keyboard event pipeline (WebContentsDelegate::HandleKeyboardEvent / unhandled_keyboard_event_handler).
When focused on web content, if an input field is not active and the page does not consume the event, the key event is supposed to be bounced back up to the browser process to be evaluated by InputDataStore / OperaBrowserAdvanced.
In Opera 137 for macOS, this unhandled single-key event bridge between the web content renderer and the browser command dispatcher has broken — single-key press events are being dropped or intercepted before InputDataStore::ExecuteCommand can receive them.Hopefully the Opera dev team can look into the macOS unhandled keyboard event bridge in the 137 release branch and push a quick hotfix!
-
treedudu last edited by
roll back to version 136 , and disabled autoupdate .. i'm happy again
run this in terminal:
defaults write com.operasoftware.Opera OPDisableAutoUpdate true