summaryrefslogtreecommitdiff
path: root/sc
diff options
context:
space:
mode:
Diffstat (limited to 'sc')
-rw-r--r--sc/source/ui/view/cliputil.cxx18
1 files changed, 16 insertions, 2 deletions
diff --git a/sc/source/ui/view/cliputil.cxx b/sc/source/ui/view/cliputil.cxx
index bdee23c43a2a..31bbf37d80e5 100644
--- a/sc/source/ui/view/cliputil.cxx
+++ b/sc/source/ui/view/cliputil.cxx
@@ -20,8 +20,10 @@
#include <viewutil.hxx>
#include <markdata.hxx>
#include <gridwin.hxx>
+#include <scitems.hxx>
#include <sfx2/classificationhelper.hxx>
+#include <comphelper/lok.hxx>
namespace
{
@@ -47,8 +49,10 @@ void ScClipUtil::PasteFromClipboard( ScViewData* pViewData, ScTabViewShell* pTab
{
const ScTransferObj* pOwnClip = ScTransferObj::GetOwnClipboard(ScTabViewShell::GetClipData(pViewData->GetActiveWin()));
ScDocument* pThisDoc = pViewData->GetDocument();
- ScDPObject* pDPObj = pThisDoc->GetDPAtCursor( pViewData->GetCurX(),
- pViewData->GetCurY(), pViewData->GetTabNo() );
+ SCCOL nThisCol = pViewData->GetCurX();
+ SCROW nThisRow = pViewData->GetCurY();
+ SCTAB nThisTab = pViewData->GetTabNo();
+ ScDPObject* pDPObj = pThisDoc->GetDPAtCursor( nThisCol, nThisRow, nThisTab );
if ( pOwnClip && pDPObj )
{
// paste from Calc into DataPilot table: sort (similar to drag & drop)
@@ -90,6 +94,16 @@ void ScClipUtil::PasteFromClipboard( ScViewData* pViewData, ScTabViewShell* pTab
bShowDialog ); // allow warning dialog
}
}
+ if (comphelper::LibreOfficeKit::isActive())
+ {
+ const SfxBoolItem* pItem = static_cast<const SfxBoolItem*>(pThisDoc->GetAttr(nThisCol, nThisRow, nThisTab, ATTR_LINEBREAK));
+ if (pItem->GetValue())
+ {
+ ScTabViewShell::notifyAllViewsSheetGeomInvalidation(
+ pTabViewShell, false /* bColumns */, true /* bRows */, true /* bSizes*/,
+ true /* bHidden */, true /* bFiltered */, true /* bGroups */, nThisTab);
+ }
+ }
pTabViewShell->CellContentChanged(); // => PasteFromSystem() ???
}