diff options
author | Marco Cecchetti <marco.cecchetti@collabora.com> | 2016-10-09 22:06:40 +0200 |
---|---|---|
committer | Marco Cecchetti <mrcekets@gmail.com> | 2016-10-14 15:03:46 +0000 |
commit | cec94a4ecaad666f7222598fd1e2ad9ac05fb878 (patch) | |
tree | ee22f67bb7c84fa461e0f4cf987e7b2b2b091ef9 /sc/source | |
parent | 606b69a5d3885ccda91a4dccbf0b22c634b2f2a9 (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.cxx | 4 |
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); |