summaryrefslogtreecommitdiff
path: root/sfx2
diff options
context:
space:
mode:
authorKohei Yoshida <kohei.yoshida@collabora.com>2014-05-19 23:42:05 -0400
committerKohei Yoshida <kohei.yoshida@collabora.com>2014-05-21 12:13:49 -0400
commita6e5c7934679329f84eca3c5eb8d021b277c905b (patch)
tree0ebd59ec10c103888216459e33cc9e5b4835e685 /sfx2
parentc126f210bb62143eea6263e37dedcb2fba24cade (diff)
cp#1000072: Improve on-load updates of external links.
* Load all linked external sources up front, rather than on-demand after the cache purge. * Try to pre-populate updated caches rather than leaving them blank and wait until it gets filled during formula calculation. * Disable polling of stale doc shell instances while the update is on-going. This improves the update performance especially when the update takes a long time. * Only close one doc shell instance at a time, even when there are multiple stale doc shell instances that need to be closed, to prevent too long of a pause. * Show progress bar during the update to give the user some visual feedback of the progress. * Skip loading of styles for the linked external document shells. We don't need them. For now, this is ODS only. * Minor performance improvement of ODS import. Conflicts: include/sfx2/sfxmodelfactory.hxx sc/inc/sc.hrc sc/inc/xmlwrap.hxx sc/source/core/data/documen8.cxx sc/source/filter/xml/xmlimprt.cxx sc/source/filter/xml/xmlwrap.cxx sc/source/ui/docshell/docsh.cxx sfx2/source/doc/objxtor.cxx Change-Id: I80aa71fa27e4960e9256253369aa898dd542c9b5
Diffstat (limited to 'sfx2')
-rw-r--r--sfx2/source/doc/objxtor.cxx11
1 files changed, 7 insertions, 4 deletions
diff --git a/sfx2/source/doc/objxtor.cxx b/sfx2/source/doc/objxtor.cxx
index befa7aef21ce..54b67bed7264 100644
--- a/sfx2/source/doc/objxtor.cxx
+++ b/sfx2/source/doc/objxtor.cxx
@@ -291,11 +291,14 @@ SfxObjectShell::SfxObjectShell( const sal_uInt64 i_nCreationFlags )
: pImp( new SfxObjectShell_Impl( *this ) )
, pMedium(0)
, pStyleSheetPool(0)
- , eCreateMode( ( i_nCreationFlags & SFXMODEL_EMBEDDED_OBJECT ) ? SFX_CREATE_MODE_EMBEDDED : SFX_CREATE_MODE_STANDARD )
- , bHasName( sal_False )
- , bIsInGenerateThumbnail ( sal_False )
+ , eCreateMode(SFX_CREATE_MODE_STANDARD)
+ , bHasName( false )
+ , bIsInGenerateThumbnail ( false )
{
- DBG_CTOR(SfxObjectShell, 0);
+ if (i_nCreationFlags & SFXMODEL_EMBEDDED_OBJECT)
+ eCreateMode = SFX_CREATE_MODE_EMBEDDED;
+ else if (i_nCreationFlags & SFXMODEL_EXTERNAL_LINK)
+ eCreateMode = SFX_CREATE_MODE_INTERNAL;
const bool bScriptSupport = ( i_nCreationFlags & SFXMODEL_DISABLE_EMBEDDED_SCRIPTS ) == 0;
if ( !bScriptSupport )