summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--core/launcher/documentlist.cpp4
-rw-r--r--core/launcher/launcher.cpp10
-rw-r--r--core/launcher/launcher.h2
-rw-r--r--core/launcher/serverinterface.h2
4 files changed, 18 insertions, 0 deletions
diff --git a/core/launcher/documentlist.cpp b/core/launcher/documentlist.cpp
index 59dd721..19ceb0f 100644
--- a/core/launcher/documentlist.cpp
+++ b/core/launcher/documentlist.cpp
@@ -190,6 +190,8 @@ void DocumentList::timerEvent( QTimerEvent *te )
{
if ( te->timerId() == d->tid ) {
// Do 3 at a time
+ if ( d->serverGui )
+ d->serverGui->aboutToAddBegin();
for (int i = 0; i < 3; i++ ) {
const DocLnk *lnk = d->iterate();
if ( lnk ) {
@@ -204,6 +206,8 @@ void DocumentList::timerEvent( QTimerEvent *te )
break;
}
}
+ if ( d->serverGui )
+ d->serverGui->aboutToAddEnd();
}
}
diff --git a/core/launcher/launcher.cpp b/core/launcher/launcher.cpp
index bf2287d..6afbcd8 100644
--- a/core/launcher/launcher.cpp
+++ b/core/launcher/launcher.cpp
@@ -696,6 +696,16 @@ void Launcher::documentAdded( const DocLnk& doc )
tabs->docView()->addItem( new DocLnk( doc ), FALSE );
}
+void Launcher::aboutToAddBegin()
+{
+ tabs->docView()->setUpdatesEnabled( false );
+}
+
+void Launcher::aboutToAddEnd()
+{
+ tabs->docView()->setUpdatesEnabled( true );
+}
+
void Launcher::showLoadingDocs()
{
tabs->docView()->hide();
diff --git a/core/launcher/launcher.h b/core/launcher/launcher.h
index 4f3ff8c..29bd7db 100644
--- a/core/launcher/launcher.h
+++ b/core/launcher/launcher.h
@@ -110,6 +110,8 @@ public:
void applicationStateChanged( const QString& name, ApplicationState state );
void documentAdded( const DocLnk& doc );
void documentRemoved( const DocLnk& doc );
+ void aboutToAddBegin();
+ void aboutToAddEnd();
void allDocumentsRemoved();
void documentChanged( const DocLnk& oldDoc, const DocLnk& newDoc );
void storageChanged( const QList<FileSystem> & );
diff --git a/core/launcher/serverinterface.h b/core/launcher/serverinterface.h
index e57ea51..132766f 100644
--- a/core/launcher/serverinterface.h
+++ b/core/launcher/serverinterface.h
@@ -50,6 +50,8 @@ public:
static const AppLnkSet& appLnks();
// These functions notify of adding, removal and changes of document links used in the documents tab for example
+ virtual void aboutToAddBegin() {}
+ virtual void aboutToAddEnd() {}
virtual void documentAdded( const DocLnk& doc ) = 0;
virtual void documentRemoved( const DocLnk& doc ) = 0;
virtual void allDocumentsRemoved() = 0;