Merge pull request #1180 from 23rd/patch-31-hotkey-last-tab

Added ability to open last tab with Ctrl+9.
This commit is contained in:
pajlada 2019-08-10 11:19:01 +02:00 committed by GitHub
commit 933edb1205
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 22 additions and 17 deletions

View file

@ -256,6 +256,17 @@ void Notebook::selectPreviousTab()
this->select(this->items_[index].page);
}
void Notebook::selectLastTab()
{
const auto size = this->items_.size();
if (size <= 1)
{
return;
}
this->select(this->items_[size - 1].page);
}
int Notebook::getPageCount() const
{
return this->items_.count();

View file

@ -34,6 +34,7 @@ public:
void selectIndex(int index);
void selectNextTab();
void selectPreviousTab();
void selectLastTab();
int getPageCount() const;
QWidget *getPageAt(int index) const;

View file

@ -270,24 +270,17 @@ void Window::addShortcuts()
this->notebook_->getOrAddSelectedPage()->appendNewSplit(true);
});
createWindowShortcut(this, "CTRL+1",
[this] { this->notebook_->selectIndex(0); });
createWindowShortcut(this, "CTRL+2",
[this] { this->notebook_->selectIndex(1); });
createWindowShortcut(this, "CTRL+3",
[this] { this->notebook_->selectIndex(2); });
createWindowShortcut(this, "CTRL+4",
[this] { this->notebook_->selectIndex(3); });
createWindowShortcut(this, "CTRL+5",
[this] { this->notebook_->selectIndex(4); });
createWindowShortcut(this, "CTRL+6",
[this] { this->notebook_->selectIndex(5); });
createWindowShortcut(this, "CTRL+7",
[this] { this->notebook_->selectIndex(6); });
createWindowShortcut(this, "CTRL+8",
[this] { this->notebook_->selectIndex(7); });
// CTRL + 1-8 to open corresponding tab.
for (auto i = 0; i < 8; i++)
{
char hotkey[7];
std::sprintf(hotkey, "CTRL+%d", i + 1);
const auto openTab = [this, i] { this->notebook_->selectIndex(i); };
createWindowShortcut(this, hotkey, openTab);
}
createWindowShortcut(this, "CTRL+9",
[this] { this->notebook_->selectIndex(8); });
[this] { this->notebook_->selectLastTab(); });
// Zoom in
{