diff options
Diffstat (limited to 'src/mainwindow')
-rw-r--r-- | src/mainwindow/menubar.cpp | 20 | ||||
-rw-r--r-- | src/mainwindow/widgets/navigationbar.cpp | 2 |
2 files changed, 18 insertions, 4 deletions
diff --git a/src/mainwindow/menubar.cpp b/src/mainwindow/menubar.cpp index f1b3565..b695a20 100644 --- a/src/mainwindow/menubar.cpp +++ b/src/mainwindow/menubar.cpp @@ -26,10 +26,10 @@ #include <QPrintDialog> #include <QPrinter> #include <QPrinterInfo> +#include <QToolBar> #include <QVBoxLayout> #include <QWidgetAction> #include <functional> -#include <QToolBar> inline void run_if(SubWindow *_subwindow, const std::function<void(SubWindow *, int)> &f) { @@ -170,15 +170,29 @@ MenuBar::MenuBar(MainWindow *parent) window->addSeparator()->setText(tr("Toolbars")); - for(auto *toolbar : parent->findChildren<QToolBar*>()) { + bool hasMovableToolbar = false; + + for(auto *toolbar : parent->findChildren<QToolBar *>()) { auto *action = window->addAction(toolbar->windowTitle()); action->setCheckable(true); action->setChecked(toolbar->isVisible()); connect(toolbar, &QToolBar::visibilityChanged, action, &QAction::setChecked); connect(action, &QAction::triggered, toolbar, &QToolBar::setVisible); - setShortcut(action, qUtf8Printable("shortcuts."+toolbar->objectName()+".show")); + setShortcut(action, qUtf8Printable(toolbar->objectName() + ".show")); + + if(toolbar->isMovable()) + hasMovableToolbar = true; } + auto *lockAction = window->addAction(tr("Unlock toolbars")); + lockAction->setCheckable(true); + lockAction->setChecked(hasMovableToolbar); + connect(lockAction, &QAction::triggered, parent, [parent](bool checked) { + for(auto *toolbar : parent->findChildren<QToolBar *>()) { + toolbar->setMovable(checked); + } + }); + window->addSeparator()->setText(tr("Subwindows")); } diff --git a/src/mainwindow/widgets/navigationbar.cpp b/src/mainwindow/widgets/navigationbar.cpp index 75bc90c..725003d 100644 --- a/src/mainwindow/widgets/navigationbar.cpp +++ b/src/mainwindow/widgets/navigationbar.cpp @@ -10,6 +10,7 @@ #include "configuration.h" #include "urllineedit.h" #include "util.h" +#include "webengine/webprofile.h" #include "webengine/webview.h" #include <QHBoxLayout> #include <QMenu> @@ -18,7 +19,6 @@ #include <QToolBar> #include <QToolButton> #include <QWebEngineHistory> -#include "webengine/webprofile.h" NavigationBar::NavigationBar(QWidget *parent) : QToolBar(parent) |