From d6c51acd14574985c824d99a2bfb434e96787074 Mon Sep 17 00:00:00 2001 From: Aqua-sama Date: Sun, 22 Apr 2018 12:53:15 +0200 Subject: Add tile and cascade actions to Window menu --- src/mainwindow/mainwindow.cpp | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) (limited to 'src/mainwindow/mainwindow.cpp') diff --git a/src/mainwindow/mainwindow.cpp b/src/mainwindow/mainwindow.cpp index 23bc7da..6e4189e 100644 --- a/src/mainwindow/mainwindow.cpp +++ b/src/mainwindow/mainwindow.cpp @@ -66,7 +66,7 @@ MainWindow::MainWindow(std::shared_ptr &config, QWidget *parent) disconnect(navigationBarConnection); disconnect(searchBoxConnection); disconnect(statusBarConnection); - windowMenu->setMenu(nullptr); + subWindowAction->setMenu(nullptr); auto *w = qobject_cast(window); if(w == nullptr) { @@ -76,7 +76,7 @@ MainWindow::MainWindow(std::shared_ptr &config, QWidget *parent) navigationToolBar->connectWebView(nullptr); searchBox->setView(nullptr); } else { - windowMenu->setMenu(w->systemMenu()); + subWindowAction->setMenu(w->systemMenu()); addressBar->connectWebView(w->currentView()); addressBarConnection = connect(w, &Window::currentViewChanged, addressBar, &AddressBar::connectWebView); navigationToolBar->connectWebView(w->currentView()); @@ -87,11 +87,6 @@ MainWindow::MainWindow(std::shared_ptr &config, QWidget *parent) } }); - auto *tileShortcut = new QShortcut(QKeySequence(config->value("mainwindow.shortcuts.tileWindows").value().c_str()), this); - connect(tileShortcut, &QShortcut::activated, this, [=]() { - mdiArea->tileSubWindows(); - }); - auto *searchShortcut = new QShortcut(QKeySequence(config->value("mainwindow.shortcuts.search").value().c_str()), this); connect(searchShortcut, &QShortcut::activated, this, [=]() { searchBox->setVisible(!searchBox->isVisible()); @@ -108,6 +103,8 @@ MainWindow::~MainWindow() void MainWindow::createMenuBar() { + Q_CHECK_PTR(mdiArea); + auto *smolboteMenu = menuBar()->addMenu(qApp->applicationDisplayName()); smolboteMenu->addAction(tr("New tab group"), this, [this]() { createSubWindow(QUrl::fromUserInput("about:blank")); @@ -129,7 +126,11 @@ void MainWindow::createMenuBar() smolboteMenu->addAction(tr("Quit"), qApp, &QApplication::quit, QKeySequence(m_config->value("mainwindow.shortcuts.quit").value().c_str())); - windowMenu = menuBar()->addAction(tr("Window")); + auto *windowMenu = menuBar()->addMenu(tr("Window")); + windowMenu->addAction(tr("Tile windows"), mdiArea, &QMdiArea::tileSubWindows, QKeySequence(m_config->value("mainwindow.shortcuts.tileWindows").value().c_str())); + windowMenu->addAction(tr("Cascade windows"), mdiArea, &QMdiArea::cascadeSubWindows, QKeySequence(m_config->value("mainwindow.shortcuts.cascadeWindows").value().c_str())); + subWindowAction = windowMenu->addAction(tr("Current window")); + toolsMenu = menuBar()->addMenu(tr("Tools")); } -- cgit v1.2.1