From: Janne Anttila Date: Mon, 16 Apr 2012 08:25:10 +0000 (+0300) Subject: Fix Assistant crash when closing last tab. X-Git-Tag: accepted/tizen/20131212.181521~330 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=07543b7db5912e3c1b0cf424bccf212d0d100039;p=platform%2Fupstream%2Fqttools.git Fix Assistant crash when closing last tab. Disable 'Close Tab' action from 'File' menu for last tab to avoid crash. Context menu 'close' actions in "open pages" widget, are already disabled under same conditions. Task-number: QTBUG-23986 Change-Id: I7f285f4511c40a7e822372355cad4eadf3922306 Reviewed-by: Karsten Heimrich --- diff --git a/src/assistant/assistant/mainwindow.cpp b/src/assistant/assistant/mainwindow.cpp index 4b5788f..8065c59 100644 --- a/src/assistant/assistant/mainwindow.cpp +++ b/src/assistant/assistant/mainwindow.cpp @@ -440,6 +440,7 @@ void MainWindow::setupActions() #endif QMenu *menu = menuBar()->addMenu(tr("&File")); + connect(menu, SIGNAL(aboutToShow()), this, SLOT(aboutToShowFileMenu())); OpenPagesManager * const openPages = OpenPagesManager::instance(); m_newTabAction @@ -1096,4 +1097,13 @@ void MainWindow::registerDocumentation(const QString &component, } } +void MainWindow::aboutToShowFileMenu() +{ + OpenPagesManager * const openPages = OpenPagesManager::instance(); + if (openPages->pageCount() > 1) + m_closeTabAction->setEnabled(true); + else + m_closeTabAction->setEnabled(false); +} + QT_END_NAMESPACE diff --git a/src/assistant/assistant/mainwindow.h b/src/assistant/assistant/mainwindow.h index 4ad5b3d..f3d18a3 100644 --- a/src/assistant/assistant/mainwindow.h +++ b/src/assistant/assistant/mainwindow.h @@ -136,6 +136,7 @@ private: private slots: void showBookmarksDockWidget(); void hideBookmarksDockWidget(); + void aboutToShowFileMenu(); private: QWidget *m_bookmarkWidget;