From: Abdelrazak Younes Date: Sun, 20 Dec 2009 15:43:52 +0000 (+0000) Subject: Disallow multiple concurrent previews as we are not ready for that. X-Git-Tag: 2.0.0~4749 X-Git-Url: https://git.lyx.org/gitweb/?a=commitdiff_plain;h=363809c7e0df6a142a7dfe6d7013c42cd9d72ba0;p=features.git Disallow multiple concurrent previews as we are not ready for that. git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@32603 a592a061-630c-0410-9148-cb99ea01b6c8 --- diff --git a/src/frontends/qt4/GuiView.cpp b/src/frontends/qt4/GuiView.cpp index 0cc79708ec..de7d60e125 100644 --- a/src/frontends/qt4/GuiView.cpp +++ b/src/frontends/qt4/GuiView.cpp @@ -268,6 +268,8 @@ struct GuiView::GuiViewPrivate void setPreviewFuture(QFuture const & f) { + if (preview_watcher_.isRunning()) + preview_watcher_.waitForFinished(); preview_watcher_.setFuture(f); connect(&preview_watcher_, SIGNAL(finished()), gv_, SLOT(threadFinished())); @@ -1312,12 +1314,13 @@ bool GuiView::getStatus(FuncRequest const & cmd, FuncStatus & flag) case LFUN_MASTER_BUFFER_UPDATE: case LFUN_MASTER_BUFFER_VIEW: - enable = doc_buffer && doc_buffer->parent() != 0; + enable = doc_buffer && doc_buffer->parent() != 0 + && !d.preview_watcher_.isRunning(); break; case LFUN_BUFFER_UPDATE: case LFUN_BUFFER_VIEW: { - if (!doc_buffer) { + if (!doc_buffer || d.preview_watcher_.isRunning()) { enable = false; break; }