KeyboardShortcuts {
id: shortcuts
// Ctrl + Tab: pull the tab from the bottom of the stack to the
// top (i.e. make it current)
KeyboardShortcut {
modifiers: Qt.ControlModifier
key: Qt.Key_Tab
enabled: chrome.visible || recentView.visible
onTriggered: {
internal.switchToTab(tabsModel.count - 1)
if (chrome.visible) recentView.reset()
else if (recentView.visible) recentView.focus = true
}
}
// Ctrl + w or Ctrl+F4: Close the current tab
KeyboardShortcut {
modifiers: Qt.ControlModifier
key: Qt.Key_W
enabled: chrome.visible || recentView.visible
onTriggered: closeTab
}
KeyboardShortcut {
modifiers: Qt.ControlModifier
key: Qt.Key_F4
enabled: chrome.visible || recentView.visible
onTriggered: closeTab
}
function closeTab() {
if (tabsModel.count > 0) {
var tab = tabsModel.remove(0)
if (tab) tab.close()
if (tabsModel.count === 0) {
browser.openUrlInNewTab("", true)
} else {
internal.switchToTab(0)
}
}
}
}
Keys.onPressed: {
if (shortcuts.processKey(event.key, event.modifiers)) {
event.accepted = true;
return;
}
}