summaryrefslogtreecommitdiff
path: root/sc/source
diff options
context:
space:
mode:
authorMarco Cecchetti <marco.cecchetti@collabora.com>2016-10-09 22:06:40 +0200
committerMarco Cecchetti <mrcekets@gmail.com>2016-10-14 15:03:46 +0000
commitcec94a4ecaad666f7222598fd1e2ad9ac05fb878 (patch)
treeee22f67bb7c84fa461e0f4cf987e7b2b2b091ef9 /sc/source
parent606b69a5d3885ccda91a4dccbf0b22c634b2f2a9 (diff)
LOK: Calc: an edit view may be not displayed when a 2nd one is killed
- description: when in view #1 text editing of a cell is over (edit view killed) a cell still text edited in view #2 can stop to be painted correctly; - reason: when an edit view is killed an ScTabViewShell::UpdateFormulas is broadcasted to all views which in turn ends by invoking ScViewData::SetEditEngine for already existent edit views: if the needed output area size for the actual text content is less then the actual output area size (once grown, output area is never shrunk) leads to this issue; - solution: skip to invoke ScViewData::SetEditEngine when LOK is active and the related view is not the current view. Change-Id: I2a97966c7c04701f0a5443aaaeb74760b622045d Reviewed-on: https://gerrit.libreoffice.org/29627 Reviewed-by: Marco Cecchetti <mrcekets@gmail.com> Tested-by: Marco Cecchetti <mrcekets@gmail.com> Reviewed-on: https://gerrit.libreoffice.org/29660
Diffstat (limited to 'sc/source')
-rw-r--r--sc/source/ui/view/viewdata.cxx4
1 files changed, 4 insertions, 0 deletions
diff --git a/sc/source/ui/view/viewdata.cxx b/sc/source/ui/view/viewdata.cxx
index 4eb61f04b345..d14d72183f07 100644
--- a/sc/source/ui/view/viewdata.cxx
+++ b/sc/source/ui/view/viewdata.cxx
@@ -970,6 +970,10 @@ void ScViewData::SetEditEngine( ScSplitPos eWhich,
ScEditEngineDefaulter* pNewEngine,
vcl::Window* pWin, SCCOL nNewX, SCROW nNewY )
{
+ if (comphelper::LibreOfficeKit::isActive()
+ && GetViewShell() != SfxViewShell::Current())
+ return;
+
bool bLayoutRTL = pDoc->IsLayoutRTL( nTabNo );
ScHSplitPos eHWhich = WhichH(eWhich);