From ddd841a54f15455b3253a76a0c67343377f2edb7 Mon Sep 17 00:00:00 2001 From: Nerixyz Date: Mon, 22 Apr 2024 14:48:29 +0200 Subject: [PATCH 1/3] fix(notebook): align actions and hotkeys --- src/widgets/Notebook.cpp | 18 ++++++++++++++---- src/widgets/Notebook.hpp | 6 +++++- src/widgets/Window.cpp | 12 ++---------- 3 files changed, 21 insertions(+), 15 deletions(-) diff --git a/src/widgets/Notebook.cpp b/src/widgets/Notebook.cpp index 7fdff5495cf..7354480fa88 100644 --- a/src/widgets/Notebook.cpp +++ b/src/widgets/Notebook.cpp @@ -52,8 +52,8 @@ Notebook::Notebook(QWidget *parent) [this](bool value) { this->setLockNotebookLayout(value); }); - this->showTabsAction_ = new QAction("Toggle visibility of tabs"); - QObject::connect(this->showTabsAction_, &QAction::triggered, [this]() { + this->toggleTabsAction_ = new QAction("Toggle visibility of tabs"); + QObject::connect(this->toggleTabsAction_, &QAction::triggered, [this]() { this->setShowTabs(!this->getShowTabs()); }); this->updateTabVisibilityMenuAction(); @@ -597,6 +597,11 @@ void Notebook::refresh() this->updateTabVisibility(); } +QAction *Notebook::toggleTabsAction() +{ + return this->toggleTabsAction_; +} + void Notebook::updateTabVisibility() { for (auto &item : this->items_) @@ -631,7 +636,7 @@ void Notebook::updateTabVisibilityMenuAction() HotkeyCategory::Window, "setTabVisibility", {{"on"}}); } } - this->showTabsAction_->setShortcut(toggleSeq); + this->toggleTabsAction_->setShortcut(toggleSeq); } bool Notebook::getShowAddButton() const @@ -1204,7 +1209,7 @@ void Notebook::setLockNotebookLayout(bool value) void Notebook::addNotebookActionsToMenu(QMenu *menu) { - menu->addAction(this->showTabsAction_); + menu->addAction(this->toggleTabsAction_); menu->addAction(this->lockNotebookLayoutAction_); @@ -1397,6 +1402,11 @@ void SplitNotebook::toggleOfflineTabs() } } +QAction *SplitNotebook::toggleOfflineTabsAction() +{ + return this->toggleOfflineTabsAction_; +} + void SplitNotebook::addNotebookActionsToMenu(QMenu *menu) { Notebook::addNotebookActionsToMenu(menu); diff --git a/src/widgets/Notebook.hpp b/src/widgets/Notebook.hpp index ac0162c4283..c05f0f45d65 100644 --- a/src/widgets/Notebook.hpp +++ b/src/widgets/Notebook.hpp @@ -123,6 +123,8 @@ class Notebook : public BaseWidget // Update layout and tab visibility void refresh(); + QAction *toggleTabsAction(); + protected: void scaleChangedEvent(float scale_) override; void resizeEvent(QResizeEvent *) override; @@ -195,7 +197,7 @@ class Notebook : public BaseWidget bool lockNotebookLayout_ = false; NotebookTabLocation tabLocation_ = NotebookTabLocation::Top; QAction *lockNotebookLayoutAction_; - QAction *showTabsAction_; + QAction *toggleTabsAction_; QAction *toggleTopMostAction_; // This filter, if set, is used to figure out the visibility of @@ -218,6 +220,8 @@ class SplitNotebook : public Notebook void addNotebookActionsToMenu(QMenu *menu) override; void toggleOfflineTabs(); + QAction *toggleOfflineTabsAction(); + protected: void showEvent(QShowEvent *event) override; diff --git a/src/widgets/Window.cpp b/src/widgets/Window.cpp index a9b0995ddfb..e1c79bc73ec 100644 --- a/src/widgets/Window.cpp +++ b/src/widgets/Window.cpp @@ -636,26 +636,18 @@ void Window::addShortcuts() if (arg == "off") { this->notebook_->setShowTabs(false); - getSettings()->tabVisibility.setValue( - NotebookTabVisibility::AllTabs); } else if (arg == "on") { this->notebook_->setShowTabs(true); - getSettings()->tabVisibility.setValue( - NotebookTabVisibility::AllTabs); } else if (arg == "toggle") { - this->notebook_->setShowTabs(!this->notebook_->getShowTabs()); - getSettings()->tabVisibility.setValue( - NotebookTabVisibility::AllTabs); + this->notebook_->toggleTabsAction()->trigger(); } else if (arg == "liveOnly") { - this->notebook_->setShowTabs(true); - getSettings()->tabVisibility.setValue( - NotebookTabVisibility::LiveOnly); + this->notebook_->toggleOfflineTabsAction()->trigger(); } else if (arg == "toggleLiveOnly") { From d4bdc8bb053066a450bc11eb6cb70104447d2b78 Mon Sep 17 00:00:00 2001 From: Nerixyz Date: Mon, 22 Apr 2024 14:53:19 +0200 Subject: [PATCH 2/3] chore: add changelog entry --- CHANGELOG.md | 1 + 1 file changed, 1 insertion(+) diff --git a/CHANGELOG.md b/CHANGELOG.md index d335d8274f6..152f4b232f2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,7 @@ ## Unversioned - Bugfix: Fixed links without a protocol not being clickable. (#5345) +- Bugfix: Fixed Ctrl+U and "Toggle visibility of tabs" not having the same effect. (#5353) ## 2.5.0 From 3c2548e76f31f6be2adcaa41074757ee19f0f902 Mon Sep 17 00:00:00 2001 From: Nerixyz Date: Mon, 22 Apr 2024 22:41:30 +0200 Subject: [PATCH 3/3] fix: oopsie --- src/widgets/Window.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/widgets/Window.cpp b/src/widgets/Window.cpp index e1c79bc73ec..e4732609ea2 100644 --- a/src/widgets/Window.cpp +++ b/src/widgets/Window.cpp @@ -647,11 +647,13 @@ void Window::addShortcuts() } else if (arg == "liveOnly") { - this->notebook_->toggleOfflineTabsAction()->trigger(); + this->notebook_->setShowTabs(true); + getSettings()->tabVisibility.setValue( + NotebookTabVisibility::LiveOnly); } else if (arg == "toggleLiveOnly") { - this->notebook_->toggleOfflineTabs(); + this->notebook_->toggleOfflineTabsAction()->trigger(); } else {