diff options
author | Kohei Yoshida <kohei.yoshida@collabora.com> | 2013-12-20 15:29:45 -0500 |
---|---|---|
committer | Kohei Yoshida <kohei.yoshida@collabora.com> | 2013-12-20 15:34:04 -0500 |
commit | f2a3848bee3f3deeb9dde43de51737cbdde84018 (patch) | |
tree | f74c867c37463ee073a68da97b4574c4237a6843 | |
parent | 8cdb1466d6f93bb93e33dc1ef6d5083b005bd73f (diff) |
Put all these back in...
Change-Id: If2168a57e0c77cf7fe85d66a6c6fd6a810d45035
-rw-r--r-- | sc/source/ui/docshell/datastream.cxx | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/sc/source/ui/docshell/datastream.cxx b/sc/source/ui/docshell/datastream.cxx index a06354eeaec2..d43fdeb7da14 100644 --- a/sc/source/ui/docshell/datastream.cxx +++ b/sc/source/ui/docshell/datastream.cxx @@ -65,11 +65,15 @@ private: { while (!mbTerminate) { + // wait for a small amount of time, so that + // painting methods have a chance to be called. + // And also to make UI more responsive. + TimeValue const aTime = {0, 1000}; maStart.wait(); maStart.reset(); if (!mbTerminate) while (mpDataStream->ImportData()) - ; + wait(aTime); }; } }; @@ -347,8 +351,9 @@ void DataStream::SetRefreshOnEmptyLine( bool bVal ) void DataStream::Refresh() { - // Hard recalc will repaint the grid area. Application::Yield(); + + // Hard recalc will repaint the grid area. mpDocShell->DoHardRecalc(true); mpDocShell->SetDocumentModified(true); @@ -510,10 +515,14 @@ void DataStream::Text2Doc() {} bool DataStream::ImportData() { + SolarMutexGuard aGuard; if (!mbValuesInLine) // We no longer support this mode. To be deleted later. return false; + if (ScDocShell::GetViewData()->GetViewShell()->NeedsRepaint()) + return mbRunning; + Text2Doc(); return mbRunning; } |