From 462c5d40dd5055727804d3d3a12e90edc79c6492 Mon Sep 17 00:00:00 2001 From: wmayer Date: Tue, 29 Oct 2019 22:19:43 +0100 Subject: [PATCH] trigger update of action when activating MDI view --- src/Gui/MainWindow.cpp | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/src/Gui/MainWindow.cpp b/src/Gui/MainWindow.cpp index 86d91bf677..81d762e0a1 100644 --- a/src/Gui/MainWindow.cpp +++ b/src/Gui/MainWindow.cpp @@ -1024,6 +1024,7 @@ void MainWindow::onWindowActivated(QMdiSubWindow* w) // set active the appropriate window (it needs not to be part of mdiIds, e.g. directly after creation) d->activeView = view; Application::Instance->viewActivated(view); + updateActions(true); } void MainWindow::onWindowsMenuAboutToShow() @@ -1279,18 +1280,22 @@ void MainWindow::updateActions(bool delay) //make it safe to call before the main window is actually created if (!instance) return; - if(!d->activityTimer->isActive()) + + if (!d->activityTimer->isActive()) { d->activityTimer->start(150); - else if(delay) { - if(!d->actionUpdateDelay) - d->actionUpdateDelay=1; - }else - d->actionUpdateDelay=-1; + } + else if (delay) { + if (!d->actionUpdateDelay) + d->actionUpdateDelay = 1; + } + else { + d->actionUpdateDelay = -1; + } } void MainWindow::_updateActions() { - if (isVisible() && d->actionUpdateDelay<=0) { + if (isVisible() && d->actionUpdateDelay <= 0) { FC_LOG("update actions"); d->activityTimer->stop(); Application::Instance->commandManager().testActive();