diff options
author | Mike Kaganski <mike.kaganski@collabora.com> | 2018-12-12 00:31:13 +0300 |
---|---|---|
committer | Mike Kaganski <mike.kaganski@collabora.com> | 2018-12-12 05:51:53 +0100 |
commit | d398e9248c183cf988b6d985b342b0cbff93ea02 (patch) | |
tree | 6750cb396ae1baabf22184ee26ddd58c888a29ff /sw/source | |
parent | 3c964980da07892a02d5ac721d80558c459532d0 (diff) |
tdf#121734: ww8 import: use direct formatting for floating object frames
... and don't modify standard frame styles to have no borders and padding.
This makes "Frame", "OLE", and "Graphics" frame styles of imported DOC
files to have usual settings (for "Frame", it's 1.5 mm padding and all
borders set to 0.05 pt black line).
All objects that need invisible frame will have them with all necessary
settings set explicitly, which allows to copy and paste such frames to
other documents without problems.
This makes DOC import aligned with DOCX import in this regard.
Change-Id: I6f05cf71e63ceccb8e0ddebe23ec41bf69af9b52
Reviewed-on: https://gerrit.libreoffice.org/64992
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Diffstat (limited to 'sw/source')
-rw-r--r-- | sw/source/filter/ww8/ww8par.cxx | 4 | ||||
-rw-r--r-- | sw/source/filter/ww8/ww8par4.cxx | 3 | ||||
-rw-r--r-- | sw/source/filter/ww8/ww8par6.cxx | 6 |
3 files changed, 3 insertions, 10 deletions
diff --git a/sw/source/filter/ww8/ww8par.cxx b/sw/source/filter/ww8/ww8par.cxx index b1174771c554..16c7850adce7 100644 --- a/sw/source/filter/ww8/ww8par.cxx +++ b/sw/source/filter/ww8/ww8par.cxx @@ -6319,12 +6319,8 @@ ErrCode WW8Reader::Read(SwDoc &rDoc, const OUString& rBaseURL, SwPaM &rPaM, cons rBaseURL, bNew, m_bSkipImages, *rPaM.GetPoint())); if (bNew) { - // Remove Frame and offsets from Frame Template - Reader::ResetFrameFormats( rDoc ); - rPaM.GetBound().nContent.Assign(nullptr, 0); rPaM.GetBound(false).nContent.Assign(nullptr, 0); - } try { diff --git a/sw/source/filter/ww8/ww8par4.cxx b/sw/source/filter/ww8/ww8par4.cxx index 822597dd246f..2bcc42f4987a 100644 --- a/sw/source/filter/ww8/ww8par4.cxx +++ b/sw/source/filter/ww8/ww8par4.cxx @@ -264,8 +264,7 @@ SwFrameFormat* SwWW8ImplReader::ImportOle(const Graphic* pGrf, pFlySet = pTempSet.get(); // Remove distance/borders - if (!m_bNewDoc) - Reader::ResetFrameFormatAttrs( *pTempSet ); + Reader::ResetFrameFormatAttrs( *pTempSet ); SwFormatAnchor aAnchor( RndStdIds::FLY_AS_CHAR ); aAnchor.SetAnchor( m_pPaM->GetPoint() ); diff --git a/sw/source/filter/ww8/ww8par6.cxx b/sw/source/filter/ww8/ww8par6.cxx index c16fdc6f7953..32b822aee523 100644 --- a/sw/source/filter/ww8/ww8par6.cxx +++ b/sw/source/filter/ww8/ww8par6.cxx @@ -2056,8 +2056,7 @@ WW8FlySet::WW8FlySet(SwWW8ImplReader& rReader, const WW8FlyPara* pFW, const WW8SwFlyPara* pFS, bool bGraf) : SfxItemSet(rReader.m_rDoc.GetAttrPool(),svl::Items<RES_FRMATR_BEGIN,RES_FRMATR_END-1>{}) { - if (!rReader.m_bNewDoc) - Reader::ResetFrameFormatAttrs(*this); // remove distance/border + Reader::ResetFrameFormatAttrs(*this); // remove distance/border // position Put(SvxFrameDirectionItem(SvxFrameDirection::Horizontal_LR_TB, RES_FRAMEDIR)); @@ -2144,8 +2143,7 @@ WW8FlySet::WW8FlySet( SwWW8ImplReader& rReader, const SwPaM* pPaM, void WW8FlySet::Init(const SwWW8ImplReader& rReader, const SwPaM* pPaM) { - if (!rReader.m_bNewDoc) - Reader::ResetFrameFormatAttrs(*this); // remove distance/borders + Reader::ResetFrameFormatAttrs(*this); // remove distance/borders Put(SvxLRSpaceItem(RES_LR_SPACE)); //inline writer ole2 objects start with 0.2cm l/r SwFormatAnchor aAnchor(RndStdIds::FLY_AS_CHAR); |