summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormerttumer <mert.tumer@collabora.com>2021-04-15 11:27:08 +0300
committerAndras Timar <andras.timar@collabora.com>2021-06-15 09:18:28 +0200
commit179e4e6901bdaf6577bad92817578c3b33a8514d (patch)
tree0758bd51be3cb52ba8d082a615d5e0c1ea72b3fb
parentImplemented CTRL + A selects all the cells (diff)
downloadcore-179e4e6901bdaf6577bad92817578c3b33a8514d.tar.gz
core-179e4e6901bdaf6577bad92817578c3b33a8514d.zip
Fix Row size change is not updated
Row size is not taken into account when there is a change Only if column size/position changes, it starts updating Change-Id: I99f3aa9fe0e7f3428234062a2520ca8a61984067 Signed-off-by: merttumer <mert.tumer@collabora.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/114130 Reviewed-by: Jan Holesovsky <kendy@collabora.com> Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/117190 Reviewed-by: Andras Timar <andras.timar@collabora.com>
-rw-r--r--svx/source/table/svdotable.cxx7
1 files changed, 6 insertions, 1 deletions
diff --git a/svx/source/table/svdotable.cxx b/svx/source/table/svdotable.cxx
index 45d184403c56..18ac30472a7b 100644
--- a/svx/source/table/svdotable.cxx
+++ b/svx/source/table/svdotable.cxx
@@ -243,6 +243,7 @@ private:
static sal_Int32 lastRowCount;
static sal_Int32 lastColCount;
static std::vector<sal_Int32> lastColWidths;
+ static bool rowSizeChanged;
};
SdrTableObjImpl* SdrTableObjImpl::lastLayoutTable = nullptr;
@@ -253,6 +254,7 @@ bool SdrTableObjImpl::lastLayoutFitHeight;
WritingMode SdrTableObjImpl::lastLayoutMode;
sal_Int32 SdrTableObjImpl::lastRowCount;
sal_Int32 SdrTableObjImpl::lastColCount;
+bool SdrTableObjImpl::rowSizeChanged = false;
std::vector<sal_Int32> SdrTableObjImpl::lastColWidths;
SdrTableObjImpl::SdrTableObjImpl()
@@ -594,6 +596,7 @@ void SdrTableObjImpl::DragEdge( bool mbHorizontal, int nEdge, sal_Int32 nOffset
Reference< XIndexAccess > xRows( mxTable->getRows(), UNO_QUERY_THROW );
Reference< XPropertySet > xRowSet( xRows->getByIndex( (!nEdge)?nEdge:(nEdge-1) ), UNO_QUERY_THROW );
xRowSet->setPropertyValue( sSize, Any( nHeight ) );
+ rowSizeChanged = true;
}
}
else
@@ -798,7 +801,8 @@ void SdrTableObjImpl::LayoutTable( tools::Rectangle& rArea, bool bFitWidth, bool
|| lastLayoutMode != writingMode
|| lastRowCount != getRowCount()
|| lastColCount != getColumnCount()
- || lastColWidths != getColumnWidths() )
+ || lastColWidths != getColumnWidths()
+ || rowSizeChanged )
{
lastLayoutTable = this;
lastLayoutInputRectangle = rArea;
@@ -813,6 +817,7 @@ void SdrTableObjImpl::LayoutTable( tools::Rectangle& rArea, bool bFitWidth, bool
TableModelNotifyGuard aGuard( mxTable.get() );
mpLayouter->LayoutTable( rArea, bFitWidth, bFitHeight );
lastLayoutResultRectangle = rArea;
+ rowSizeChanged = false;
}
else
{