100 Commits
Author SHA1 Message Date
Aron Budea 80fa879dec oox: omit default attributes/elements in theme XMLs in OOXML
For fonts: charset, pitchFamily.
Various rectangles: fillRect, fillToRect, srcRect, tileRect

Change-Id: I6dbd914ca8d9f8a2760bfecc6e294d465d52c32f
Signed-off-by: Aron Budea <aron.budea@collabora.com>
Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/13779
Tested-by: Jenkins CPCI <releng@collaboraoffice.com>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
(cherry picked from commit 2b4ed81074195c85d4fc179e22ca7d2e2e6da8f1)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/211692
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Jenkins
2026-10-07 08:50:12 +02:00
Aron Budea 52277daba8 cool#16279 sd: inherited autofit in PPTX lost on import
When an empty PPTX presentation was opened and saved,
its Title and Content layout/master slide lost its
autofit setting.

Original slide master had <a:normAutofit/> element
in its placeholders, which turned into <a:noAutofit/>.

This happened, because on import the inherited property
got overwritten by the default no autofit.

Change-Id: If9842d4c53eb283b9497b46198aaea4911413bc9
Signed-off-by: Aron Budea <aron.budea@collabora.com>
Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/14276
Reviewed-by: Noel Grandin <noel.grandin@collabora.com>
Tested-by: Jenkins CPCI <releng@collaboraoffice.com>
(cherry picked from commit afe4932986453513ea1a50b1143de3827f39c0ed)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/211865
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Jenkins
2026-10-06 16:26:14 +02:00
Aron Budea 2bb3fe5cce cool#16124 Should be able to edit text after selecting image in bg
When image is wrapped through in document body.

Separate part of SwFEShell::ShouldObjectBeSelected()
 to SwFEShell::IsTextOverBgObjectAt(), and use it to detect
 text overlapping background image.
Handle case when DocumentSettingId::PAINT_HELL_OVER_HEADER_FOOTER
 is set. (see eg. SwFlyFrame::InitDrawObj())

Not part of this change: updating mouse pointer over objects/text.

Related to b860aea9d6,
which introduced special handling of
PAINT_HELL_OVER_HEADER_FOOTER for DOCX compatibility.

Change-Id: I571942a43c3c1d5a5be5906fcce08640739e6493
Signed-off-by: Aron Budea <aron.budea@collabora.com>
Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/11523
Tested-by: Jenkins CPCI <releng@collaboraoffice.com>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
(cherry picked from commit 3bae82eb865b2568506417349d2f3a62bfd775e8)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/211680
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2026-10-01 21:36:45 +02:00
Aron Budea e9801baf62 oox: don't cast transformation values to sal_Int16
They might not fit and overflow.

This was a regression from
a07bad0cc8
and came to light with
40aaaeff1d2ff4f6ba5cd2c8fc80356d38996e03

Change-Id: I8f71449d854fd6190511ce72f2603186f6469002
Signed-off-by: Aron Budea <aron.budea@collabora.com>
Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/13619
Tested-by: Jenkins CPCI <releng@collaboraoffice.com>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
(cherry picked from commit ca77cd2a4f9fbe7655d3ca5cc2e1e965389e0d3f)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/211529
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2026-09-29 08:45:22 +02:00
Aron Budea b46c38a45d sc: use conventional file name when exporting ctrl props to XLSX
Directory name is ctrlProps, but Excel normally names
the file ctrlPropN.xml. Doesn't cause an issue either way.

Change-Id: I81315e6b6e88aa66424c2a5c1e4a9dfb620b1296
Signed-off-by: Aron Budea <aron.budea@collabora.com>
Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/13357
Tested-by: Jenkins CPCI <releng@collaboraoffice.com>
Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
(cherry picked from commit 63039d5965de2939b40b6db5dff80c96f8d8fbb2)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/211522
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2026-09-28 22:03:53 +02:00
Aron Budea e577a27585 sd: adjust theme ids when exporting notes to PPTX
Previous numbering was from before the
deduplication in commit
9205b4eb09.

Deduplication collapses themes for the same master
to a single XML, and the theme for notes master
didn't follow in numbering, causing a big gap,
eg. theme1.xml being followed by theme13.xml.

Use mnThemeIdMax introduced there.

Change-Id: I5e9ddb11716543bc816d47f5aac03bb2f182dc62
Signed-off-by: Aron Budea <aron.budea@collabora.com>
Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/13448
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins CPCI <releng@collaboraoffice.com>
(cherry picked from commit a1f3059174fa5ff51d258b5a2125884cb1b4e23b)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/211513
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2026-09-28 18:47:00 +02:00
Aron Budea e2e3bc9928 cool#16182 Dimensions of rotated drawing objects in XLSX can be wrong
When rotation is between certain angles.

Since 1387a15ecc32b18374c0826fa3b94f6141b6f1c3.

Change-Id: I31af0fa9429851a9aada8544b665fbe0f290754a
Signed-off-by: Aron Budea <aron.budea@collabora.com>
Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/11258
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins CPCI <releng@collaboraoffice.com>
(cherry picked from commit 1d4116860c72241c1b9a91dd3dfe98afbd34b56e)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/210953
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2026-09-15 08:45:17 +02:00
Aron Budea 16314d50bc sc: Use more is(Unary|Binary)OperatorOpCode()
Change-Id: I32805328640297cd14efe798f5f8a6cfa712090b
Signed-off-by: Aron Budea <aron.budea@collabora.com>
Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/12173
Reviewed-by: Noel Grandin <noel.grandin@collabora.com>
Tested-by: Jenkins CPCI <releng@collaboraoffice.com>
(cherry picked from commit 342fbc6b53ede419b24f69e4b4e16f980b2edb27)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/210926
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2026-09-14 13:48:11 +02:00
Aron Budea 2d1c9cb0e9 sc: Fix condition in ScTokenArray::CheckForThreading()
Regression from 5b4826b51eee143a564dfa94ed50ab89cc36216b.

Previously:
else if (SC_OPCODE_START_BIN_OP <= eOp && eOp < SC_OPCODE_STOP_UN_OP)

Change-Id: I9078713a9dea249e481b0969acf9597cbe25bce4
Signed-off-by: Aron Budea <aron.budea@collabora.com>
Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/12062
Tested-by: Jenkins CPCI <releng@collaboraoffice.com>
Reviewed-by: Noel Grandin <noel.grandin@collabora.com>
(cherry picked from commit 73a553605e75758db734744720ba8a30481f99e6)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/210925
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Xisco Fauli <xiscofauli@libreoffice.org>
2026-09-14 13:48:06 +02:00
Aron Budea 07047a02f9 sw DOCX: add support for importing/exporting webSettings.xml
Only if already exists in file, use GrabBag.

For strict OOXML, replace namespaces with transitional names.

Change-Id: Idc1f99b7c096e87558fdb78278a534ffd2bc5587
Signed-off-by: Aron Budea <aron.budea@collabora.com>
Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/8590
Tested-by: Jenkins CPCI <releng@collaboraoffice.com>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
(cherry picked from commit d8f3abfb7044be0e7e1c56602aae506911ad33b8)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/210362
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2026-09-02 01:03:42 +02:00
Aron Budea f86a6409c7 cool#16086 sw: Avoid selecting header bg image in body
Selecting such images too easily can make working with those
documents inconvenient.

Change-Id: I64660b2ee0f4bb36001db355c101825b2d4903c0
Signed-off-by: Aron Budea <aron.budea@collabora.com>
Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/8924
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins CPCI <releng@collaboraoffice.com>
(cherry picked from commit 5c9da7357da562bfde79061118c0bc67ed251c50)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/210361
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2026-09-01 22:10:11 +02:00
Aron Budea 11482c8f71 sw: move condition in SwContentTree::BringCommentToAttention(...)
To keep "if" condition shorter. No functional difference.

Follow-up after 657915152e09f7cf89a61646c6847441f178ea8a.

Change-Id: Ia5c1a19dfe01d8ba72da83f7fca8f42d153400b8
Signed-off-by: Aron Budea <aron.budea@collabora.com>
Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/9306
Tested-by: Jenkins CPCI <releng@collaboraoffice.com>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
(cherry picked from commit 98d14652cd51119e311bc11a1a284ec1221efaf0)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/209254
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Jenkins
2026-08-18 14:10:59 +02:00
Aron Budea fe4317f850 sw: don't crash in SwContentTree::BringCommentToAttention(...)
- nCommentId = 0 isn't a valid comment Id, assert and
  log warning about it
- m_xTreeView->iter_next can reach entries that aren't
  the children of the starting node

Related backtrace:

Fatal signal received: SIGSEGV

   (this=0xff000000ff1c1ce4) at
   /opt/rh/devtoolset-12/root/usr/include/c++/12/bits/unique_ptr.h:191
   (this=0xff000000ff1c1ce4) at
   /opt/rh/devtoolset-12/root/usr/include/c++/12/bits/unique_ptr.h:462
   engine/sw/inc/fmtfld.hxx:134
   engine/sw/source/uibase/utlui/content.cxx:322
   (this=0x5706d69c2450, nCommentId=nCommentId@entry=0) at
   engine/sw/source/uibase/utlui/content.cxx:7363
   (this=0x5706d6cfe190, rReq=...) at
   engine/sw/source/uibase/uiview/view0.cxx:939
   (this=0x5706d2636360, rShell=..., rSlot=..., rReq=...,
    bRecord=<optimized out>) at
   engine/sfx2/source/control/dispatch.cxx:256
   (this=0x5706d2636360, nSlot=<optimized out>,
    nCall=nCall@entry=SfxCallMode::RECORD, pArgs=pArgs@entry=0x7ffddf839cd0,
    pInternalArgs=pInternalArgs@entry=0x7ffddf839c60, nModi=0) at
   engine/sfx2/source/control/dispatch.cxx:811
   (this=<optimized out>, aURL=..., aArgs=..., rListener=...) at
   engine/include/sfx2/ctrlitem.hxx:63
   (this=0x5706d7312910, aURL=..., aArgs=...) at
   engine/sfx2/source/control/unoctitm.cxx:257
    (rCommand=..., xDispatchProvider=..., rArguments=..., xListener=...) at
    engine/include/com/sun/star/uno/Reference.h:329
    (rCommand=..., xFrame=..., rArguments=..., xListener=...) at
    engine/comphelper/source/misc/dispatchcommand.cxx:73
    (rCommand=..., rArguments=..., xListener=...) at
    engine/comphelper/source/misc/dispatchcommand.cxx:96
     pCommand=<optimized out>, pArguments=<optimized out>,
     bNotifyWhenFinished=<optimized out>) at
    engine/desktop/source/lib/init.cxx:6777

Change-Id: I835c59ff5f17f575fd5dc11ebfdac8d11a901b1e
Signed-off-by: Aron Budea <aron.budea@collabora.com>
Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/9265
Tested-by: Jenkins CPCI <releng@collaboraoffice.com>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
(cherry picked from commit 657915152e09f7cf89a61646c6847441f178ea8a)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/209253
Tested-by: Xisco Fauli <xiscofauli@libreoffice.org>
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2026-08-18 14:10:48 +02:00
Aron Budea 5a10bc7ca8 cool#15675 Revert "XLSX: Skip export of Data Validations with invalid
...formulas" and "XLSX: Valid data-validations are not being
exported".

This reverts commits 6b40ebc9e67b165e85212d92c861fc6844d24f42
and c6bcd2f7c467b944765b363e9a900eaa6625ff6f.

Reason:
The original change was introduced to skip exporting certain
formula in data validation checks to XLSX that made the files
invalid for Excel.
But because now some good validations get omitted, and it turns
out Excel itself doesn't do better with the orignal files, either,
let's revert the changes.

Added unit test. (to subsequent_export_test4.cxx, the change in
subsequent_export_test2.cxx comes from the revert)

Change-Id: I89d552853f0119aa4bf3edbc3843edcf00f54a70
Signed-off-by: Aron Budea <aron.budea@collabora.com>
Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/7876
Tested-by: Jenkins CPCI <releng@collaboraoffice.com>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Reviewed-by: Karthik Godha <karthik.godha@collabora.com>
(cherry picked from commit 28b08b853a09b6f7e68bf05eed2f59ed9fcad071)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/208754
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2026-07-29 09:35:21 +02:00
Aron Budea f806ff98be cool#16026 XLSX: Use "#REF!" for invalid user-defined functions (again)
Otherwise a formula like "_xludf.(SUM(A1:A2))",
ie. user-defined without a name can be exported to XLSX,
which is invalid.

Adapt fix in 06c4bf867de38be2e65e1813ed1a1f05b0b49b4a
after 996ee806764dd7cc0a24b1b218b3cf4cefd50db1.

Affected eg. forum-mso-de-49320.xls

Change-Id: I6d02d6e5b82ca851ca9569d324c4e4c60f3da919
Signed-off-by: Aron Budea <aron.budea@collabora.com>
Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/7402
Reviewed-by: Noel Grandin <noel.grandin@collabora.com>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins CPCI <releng@collaboraoffice.com>
(cherry picked from commit a5ee7ceb3da75e0ae2aa739d612a0d0fc6eaf218)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/208732
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2026-07-28 14:37:06 +02:00
Aron Budea 73563ad36c oox: export satMod color transformation into themes
For more complete OOXML export.
satMod (saturation modulation) of colors was already
imported and stored, but didn't get exported.

Change-Id: I4dd2e58382749c3b3a47647399e48517a41393bf
Signed-off-by: Aron Budea <aron.budea@collabora.com>
Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/5054
Tested-by: Jenkins CPCI <releng@collaboraoffice.com>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
(cherry picked from commit 40aaaeff1d2ff4f6ba5cd2c8fc80356d38996e03)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/208066
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2026-07-14 13:25:27 +02:00
Aron Budea 6bc8bae704 sc: hide helper sheet for external pivot sources in XLS
Opening forum-mso-en4-243595.xls shows an extra sheet:
DPCache_Volume

This is because Calc can't handle external sources for
pivot tables, and it creates a dummy sheet as source.
The sheet only serves functional purpose, and should be
hidden, as it is already done with similar XLSX files.

Change-Id: I4e44eea71ed1e459a77f7ea62fb9c8d94faf999d
Signed-off-by: Aron Budea <aron.budea@collabora.com>
Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/2305
Tested-by: Jenkins CPCI <releng@collaboraoffice.com>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
(cherry picked from commit 9d02f4a1db1f40b65bba268e54171b1c1a48a9bb)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/206293
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Jenkins
2026-06-11 01:07:04 +02:00
Aron Budea 6fe759f4af Clarify comment for minimal DB range
After 2e9f3a6d7678cd1c820d3246fed0a256bf9b1468.

Signed-off-by: Aron Budea <aron.budea@collabora.com>
Change-Id: Id4350f39bf30e847b0727626fdb244215ee112e3
Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/3560
Reviewed-by: Noel Grandin <noel.grandin@collabora.com>
Tested-by: Jenkins CPCI <releng@collaboraoffice.com>
(cherry picked from commit 6412d1423a47b4786f037dea455bc5fcbe59a7cf)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/206292
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Xisco Fauli <xiscofauli@libreoffice.org>
2026-06-10 11:51:07 +02:00
Aron Budea 594d7d6e15 sw: don't write <sym> to DOCX content controls
At least in plain text content controls it's not allowed.
(possibly not in others, either)

Started recently after 9fce988742260ef35024a6f4af60e662ef01eb55.

The special export of symbols was added in commit
87e82f80e8.
Keep that in other cases.

Change-Id: Ia8412a93b680bec6f9df9ce5422a82cdd1ad86ee
Signed-off-by: Aron Budea <aron.budea@collabora.com>
Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/2888
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins CPCI <releng@collaboraoffice.com>
(cherry picked from commit 42abcebb9245692729e5efe23d9979087d7f65a2)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/205692
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2026-05-26 09:02:21 +02:00
Aron Budea 530350d3d3 cool#15769 sc: minimal DB range causes invalid XLSX
When converting DB ranges to XLSX, they become tables.
Excel expects them to have data, not just
header and/or totals rows.

Don't export such tables, otherwise Excel fails to open
them.

Change-Id: I1452c02204410a9a7edab1be946ff75f1035734a
Signed-off-by: Aron Budea <aron.budea@collabora.com>
Reviewed-on: https://gerrit.collaboraoffice.com/c/online/+/2640
Tested-by: Jenkins CPCI <releng@collaboraoffice.com>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
(cherry picked from commit 2e9f3a6d7678cd1c820d3246fed0a256bf9b1468)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/205285
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Jenkins
2026-05-18 13:12:07 +02:00
Aron Budea 0c94019918 sc: XLSX export: formControlPr has no print and autoLine attributes
OOXML Validator complains:

{"Description":"The 'autoLine' attribute is not declared.",
"Path":{"Namespaces":{},"XPath":"/x14:formControlPr[1]",
"PartUri":"/xl/ctrlProps/ctrlProps2.xml"},
"Id":"Sch_UndeclaredAttribute","ErrorType":"Schema"},
{"Description":"The 'print' attribute is not declared.",
"Path":{"Namespaces":{},"XPath":"/x14:formControlPr[1]",
"PartUri":"/xl/ctrlProps/ctrlProps2.xml"},
"Id":"Sch_UndeclaredAttribute","ErrorType":"Schema"}

See CT_FormControlPr for attributes.
CT_ControlPr has these for embedded controls.

Affected: fdo49430-6.xlsx

Introduced in commit fd238380ae.

Change-Id: Ib61fed78b4a2809966645a6b0b348bbe68930ea2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/202855
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Signed-off-by: Xisco Fauli <xiscofauli@libreoffice.org>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/204390
Tested-by: Jenkins
2026-04-27 08:58:26 +02:00
Aron Budea d7b20f68c1 formula: check if next token exists before dereferencing
Can cause crash with a number of XLS files, eg. ooo40608-1.xls,
fdo58541-1.xls, forum-mso-en4-73512.xls

Happens since bce84f279755171addf29b61f4e8b09e89026c44.

Change-Id: If7def874f7c10701a921ed947620afd14da43b69
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/201814
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Balazs Varga <balazs.varga@collabora.com>
(cherry picked from commit 3fdf14069f6629cc9662eb693c2935036d8b8f7b)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/202647
Reviewed-by: Aron Budea <aron.budea@collabora.com>
Signed-off-by: Xisco Fauli <xiscofauli@libreoffice.org>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/204259
Tested-by: Jenkins
2026-04-24 16:00:24 +02:00
Aron Budea dfc25ee0ca oox: exported customXml item relations must exist on part level
This patch only deals with main part relationship.

See 15.2.5 Custom XML Data Storage Part of ECMA-376-1:2016 specs

Change-Id: I0b529d8e7e4e0ea95f37cd8421a09c673c907298
Reviewed-on: https://gerrit.collaboraoffice.com/c/core/+/602
Tested-by: Jenkins CPCI <releng@collaboraoffice.com>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
(cherry picked from commit 758f1fd82dee30b2ab21272fd9739c1e5fcfb768)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/204058
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
2026-04-22 17:11:55 +02:00
Aron Budea c0bcb27b79 cool#15580 sd: reset stream after hashing audio during PPTX export
Otherwise the exported audio is missing that piece.

Regression/implementation error from
e9f5d6ce38.

Signed-off-by: Aron Budea <aron.budea@collabora.com>
Change-Id: Ibe21ed8287f5a8279835d2c1fc292a0794a4f638
Reviewed-on: https://gerrit.collaboraoffice.com/c/core/+/1151
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins CPCI <releng@collaboraoffice.com>
(cherry picked from commit 53b1ed555ebce99012ebd9fabdfc34b7c54e333c)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/204059
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Tested-by: Jenkins
2026-04-22 08:49:33 +02:00
Aron Budea 513b033c24 oox: Fix typo in DOCM filter name during detection
Otherwise affected files eg. fdo83844-1.doc fail to open.

Regression from 0f7cf56ca10e8b6cf34767d25281d783b416fbeb.

Change-Id: I55ba367b43e1ecdf586522ac1e47bb322bf12702
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/202943
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Aron Budea <aron.budea@collabora.com>
(cherry picked from commit 026bd8e1f3be8c2d7c9fd64f7ff03833313d2d30)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/202982
Reviewed-by: Justin Luth <jluth@mail.com>
Tested-by: Jenkins
2026-03-30 19:51:16 +02:00
Aron Budea 59402f2fc8 sd: don't export p:to element for p:animRot to PPTX
OOXML Validator complains:

{"Description":"The element has invalid child element
'http://schemas.openxmlformats.org/presentationml/2006/main:to'.",
"Path":{"Namespaces":{},"XPath":
"/p:sld[1]/p:timing[1]/p:tnLst[1]/p:par[1]/p:cTn[1]/p:childTnLst[1]/
p:seq[1]/p:cTn[1]/p:childTnLst[1]/p:par[1]/p:cTn[1]/p:childTnLst[1]/
p:par[1]/p:cTn[1]/p:childTnLst[1]/p:par[1]/p:cTn[1]/p:childTnLst[1]/
p:animRot[1]","PartUri":"/ppt/slides/slide1.xml"},
"Id":"Sch_InvalidElementContentExpectingComplex","ErrorType":"Schema"}

Affected: tdf99617-3.pptx
Change-Id: I5067f0da506abeb11ff58a2eb55619e4d277c933
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/202696
Tested-by: Jenkins
Reviewed-by: Aron Budea <aron.budea@collabora.com>
2026-03-26 15:01:20 +01:00
Aron Budea 02d99ff7e4 sc: Remove leftover worksheet tableType value
Commit d091c60f9a
introduced handling of tableType attribute.

Commit 8c5fd04f0b
later refined it to default empty to "worksheet",
but this occurrence was left.

Affected: fdo67783-1.ods.

Change-Id: Iddbef5e817b249cbabb3decfb9e43c29c5ef20c1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/202592
Reviewed-by: Aron Budea <aron.budea@collabora.com>
Tested-by: Jenkins
2026-03-25 14:02:01 +01:00
Aron Budea 5cb71a2ffd sw: Write only val attribute for charset
Office only writes characterSet attribute for charset
to word/fontTable.xml if file is strict OOXML,
which LO doesn't support anyway.

Commit ae8530c5b7 added
conditional export of characterSet depending on OOXML
version, sometimes exporting both characterSet and val.

OOXML validator complains about this:
{"Description":"The attribute
'http://schemas.openxmlformats.org/wordprocessingml/2006/main:characterSet'
has invalid value 'windows-1252'. The Enumeration constraint
failed.","Path":{"Namespaces":{},"XPath":
"/w:fonts[1]/w:font[1]/w:charset[1]",
"PartUri":"/word/fontTable.xml"},
"Id":"Sch_AttributeValueDataTypeDetailed","ErrorType":"Schema"}

This reverts commit ae8530c5b7.

Change-Id: Ic1fdb46724a2a8713286d02b65d6a052e207e8c6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/202471
Reviewed-by: Aron Budea <aron.budea@collabora.com>
Tested-by: Jenkins
2026-03-24 18:28:17 +01:00
Aron Budea 9827413548 sw: don't export true value for cantSplit element to OOXML
Not necessary, Word doesn't export it, and OOXML
validator complains about the test doc if val attribute
is present with true value:

{"Description":"The attribute
'http://schemas.openxmlformats.org/wordprocessingml/2006/main:val'
has invalid value 'true'. The Enumeration constraint failed.",
"Path":{"Namespaces":{},"XPath":
"/w:document[1]/w:body[1]/w:tbl[2]/w:tr[1]/w:trPr[1]/w:cantSplit[1]",
"PartUri":"/word/document.xml"},
"Id":"Sch_AttributeValueDataTypeDetailed","ErrorType":"Schema"}

Change-Id: I964320ea2ef6b48795224ac14545a2eaf4a3b5bc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/202396
Tested-by: Jenkins
Reviewed-by: Aron Budea <aron.budea@collabora.com>
2026-03-24 16:36:17 +01:00
Aron Budea 835d45e005 tdf#171360 OOXML custom properties must be unique case insensitive
Otherwise Word fails to open the exported file.

Export of custom properties was implemented
in 47c5454ea6.

Change-Id: If35077d8cd3b2c3f52b6cd8b4d381769c0040f4d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/201909
Reviewed-by: Aron Budea <aron.budea@collabora.com>
Tested-by: Jenkins
2026-03-20 06:32:32 +01:00
Aron Budea 41c400c577 tdf#164694 content control: import data-bound 4-digit year as proper date
Otherwise it's treated as number, and eg. year 2011
becomes 2011 days from start of epoch: 1905.
Could be seen in date picker and when exported to DOCX.

Clashing values:
- word/headerX.xml: <w:date w:fullDate="2011-01-01T00:00:00Z">
- customXml/item1.xml: <PublishDate>2011</PublishDate>

On data binding, custom XML element takes priority.

Change-Id: I222f20bdc69fee3571859d408ee74de95d5c092f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/201921
Tested-by: Jenkins
Reviewed-by: Aron Budea <aron.budea@collabora.com>
2026-03-20 06:31:49 +01:00
Aron Budea eeffa8b835 tdf#115558 sw: export embedded XLSX in chart in footnote
Reference to the embedded XLSX was in substream that didn't
get propagated to the main document, and the embedded file
was missing from the reexported DOCX.

Change-Id: Ibb884d130b4a876a50b0156b3d08307352c0b03a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/201284
Reviewed-by: Aron Budea <aron.budea@collabora.com>
Tested-by: Jenkins
2026-03-11 05:36:21 +01:00
Aron Budea 6354220401 tdf#170963 sc: limit row/colBreaks in XLSX export to what Excel can handle
The number of rowBreaks/colBreaks is practically limited
to 1023 in Excel, as described in Part 1 Sections
18.3.1.14 and 18.3.1.74 in [MS-OI29500].
Don't export more than the limit.

Change-Id: I45e49705022b90ab5b3b404bfc5d07da183e0db1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/199999
Reviewed-by: Aron Budea <aron.budea@collabora.com>
Tested-by: Jenkins
2026-02-27 03:30:51 +01:00
Aron Budea af485bb975 Revert "tdf#170515 sc: formula with invalid parameters saved into XLSX"
Invalid XML gets exported with problematic matrix formula,
eg. fdo73235-1.ods as found by crashtesting.

Further problem this error exposed is that in certain cases
normal formula or error results (eg. #VALUE!) turn into
parameter errors (Err:504) in Calc, which are then discarded
by the previous change.

Let's revert the change until these issues are resolved. Affected files:
https://wiki.documentfoundation.org/index.php?title=Development/Crashtesting&oldid=869226
(under sax_fastparser::FastSaxSerializer::endFastElement)

If the change is later reapplied:
- handle matrix formula case as well,
- keep #VALUE! in the formula, don't remove formula completely.

This reverts commit bebe7a0b27.

Change-Id: I19aca20cc447871d89f462af874e46993ed6f4ce
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/199635
Tested-by: Jenkins
Reviewed-by: Aron Budea <aron.budea@collabora.com>
2026-02-19 02:25:38 +01:00
Aron Budea c917b55a81 tdf#170241 tdf#169952 sd: add unit test for embedded OLE obj export
Make sure all oleObjectN.bin files are exported.

Regression introduced in 00d1c2800c
fixed in 1c1120076a.

Change-Id: I9671a9b209ed9e4bfcb6b0eb73dafe6525537e2e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/198841
Tested-by: Jenkins
Reviewed-by: Aron Budea <aron.budea@collabora.com>
2026-02-06 19:20:42 +01:00
Aron Budea 9f0ca9c894 gtktiledviewer: look for .ui file in relative path if absolute fails
So it doesn't depend on where it was built.

This way they can be added to a bibisect repo.

Change-Id: I5e2a3710fb0c68e37ab35b67e20f4e9a0ba7942a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/198669
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Aron Budea <aron.budea@collabora.com>
(cherry picked from commit 2eb7e152baddf08d4c91a8e2fc0e36e180108f57)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/198722
Tested-by: Jenkins
2026-02-06 06:14:23 +01:00
Aron Budea 3cbf4957d3 tdf#170565 save empty SUM/MAX/MIN functions with parameters to XLSX
Excel won't allow them with no parameters.

In Calc:
- SUM() is 0,
- MAX()/MIN() gives Err:511.

Save them to XLSX as SUM(0), MAX(#VALUE!) and MIN(#VALUE!).

Change-Id: I0f0d05290b67684df294611bd0612090abf1a672
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/198543
Reviewed-by: Aron Budea <aron.budea@collabora.com>
Tested-by: Jenkins
2026-02-05 07:22:05 +01:00
Aron Budea bebe7a0b27 tdf#170515 sc: formula with invalid parameters saved into XLSX
Calc/ODS is more forgiving about accepting input, the bugdoc
had this: =COUNTIF(BASE(1;14);"vv")
Here the first parameter of COUNTIF isn't valid, Excel
doesn't even allow entering it, and fails opening the XLSX
with such formula.

No problem in Calc, formula simply gives Err:504 result.

Fix: don't export formula with Err:504 (IllegalParameter
error) result to XLSX.

Change-Id: Ic453440f385b665e56488a61a7c80bf458c4effd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/198391
Tested-by: Jenkins
Reviewed-by: Aron Budea <aron.budea@collabora.com>
2026-01-31 20:28:48 +01:00
Aron Budea abb5b9111a Table styles: Typo in exported XML makes file invalid
Affected eg. forum-mso-de-130905.xlsx

Since fc38794991dc85de1821c527b3e4cdfc71026a75.

Change-Id: I267644a6eb6567416ed26592ce4d164352820d26
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/195926
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Aron Budea <aron.budea@collabora.com>
(cherry picked from commit 3e1dea9b0250c4f344ebb1c54b620afbf1c12973)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/198393
Tested-by: Jenkins
2026-01-30 08:19:04 +01:00
Aron Budea 02796c7467 Related: tdf#169441 Improve description and handling of mismatching config
Use default bullet font if DefaultListBulletsFonts is shorter
than DefaultListBullets.

Change-Id: Ie83c111bfb1be88f3ac3dfd7c0323ac92c21cba4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/197625
Tested-by: Jenkins
Tested-by: Aron Budea <aron.budea@collabora.com>
Reviewed-by: Aron Budea <aron.budea@collabora.com>
2026-01-22 11:46:19 +01:00
Aron Budea f10eb0f12e oox: Limit export of dLblPos attr in pie charts to valid values
Based on [MS-OI29500].

This also fixes PPTX export of fdo56877-2.odp, which seems
to have bogus content in Object 1/content.xml:
<style:chart-properties chart:solid-type="cuboid"
chart:label-position="left"/>
It used to export as this invalid
attribute: <c:dLblPos val="l"/>

Change-Id: I710db739b36c469d300273ae016e3d5686b8c578
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/197525
Reviewed-by: Aron Budea <aron.budea@collabora.com>
Tested-by: Jenkins
2026-01-20 09:39:24 +01:00
Aron Budea b2dd08c6af sw: fix order of attributes in wp:anchor on export
To match original DOCX in eg. tdf#169802 bugdoc.

Change-Id: Ife68c293508bfed4f2a2b1d130e310390513981e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/197312
Tested-by: Jenkins
Reviewed-by: Aron Budea <aron.budea@collabora.com>
2026-01-16 02:36:56 +01:00
Aron Budea 211cbca48c tdf#170325 update default TwoDigitYear to 1950
2030 is almost here, so start of range still interpeted
as 1900s should be pushed back.

Change-Id: I76d7171a9947860d8353241aae1f2a97e9da5c69
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/197261
Tested-by: Jenkins
Reviewed-by: Aron Budea <aron.budea@collabora.com>
2026-01-14 19:29:44 +01:00
Aron Budea c1f7ea0db1 tdf#162527 tdf#169802 hidden image/shape in DOCX should be invisible
...and remain invisible after save.

After 0b9e4f6085 shapes did get
hidden, but in case of wrap-around shapes text still flowed
around their supposed placement.
Hidden images were simply shown before and after.

Add a new Visible property to SwXTextGraphicObject, and let
it set SwFlyDrawObj's Visible member as SdrObject.
Import and export wp:docPr's hidden attribute in OOXML based
on these properties.
To avoid showing their area, let
SwAnchoredObject::GetObjRectWithSpaces() return an empty
rectangle (during opening this is only called from
SwTextFly's IsAnyObj(...) and InitAnchoredObjList(), though).

Note that Writer lacks support of changing visibility of
images and shapes. This change adds minimal support for
hiding them and roundtripping the setting in DOCX, but
doesn't add ODF or UI support.

Change-Id: I6e9d062628006a7128e380d1af06508625aa3d06
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/197056
Tested-by: Jenkins
Reviewed-by: Aron Budea <aron.budea@collabora.com>
2026-01-14 18:26:22 +01:00
Aron Budea 3c12bd0f08 tdf#169441 Decouple default list levels from bullet library items
First commit f944648e0f added
a new config to make bullet library items configurable, then
commit 626357f53c switched
from using the set of three default list bullets to bullet
library items.
The configs are DefaultBullets and DefaultBulletsFonts.

The problem is that the bullet library was never meant to
correspond to the default list, and a bulleted list looks
silly now. Let's introduce new configs for the list, with
the old defaults:
DefaultListBullets / DefaultListBulletsFonts

Once reaching the end with increasing levels, the list
wraps around.

Change-Id: I91f6a06e3c298edcfd0d11a3597c23129e0b085d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/197014
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2026-01-12 13:24:47 +01:00
Aron Budea 714c2ee044 tdf#142693 tdf#169419 sw: Limit page size exported to DOCX
Based on what Word can roundtrip, which is 64K twips,
even though that size (115 cm) can't be set via the UI.

Officially 2.1.220 Part 1 Section 17.6.13 of [MS-OI29500]
says 31680 twips, but let's keep to the value that works
in practice.

Don't adjust size on import, only on export, Writer can
handle much larger sizes.

446771fe3e91eb7d154e86b9c6a614374110e9ca was related.

Change-Id: I88540e80f4e94fd8fc3703c18d8b151a7bd270e6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/194843
Tested-by: Jenkins
Reviewed-by: Aron Budea <aron.budea@collabora.com>
2026-01-11 09:53:44 +01:00
Aron Budea f3943837d7 tdf#170202 avoid exporting ANIMATIONPHYSICS node types
Implement cbf102d4c1 differently.

After previous commit, tdf136301-1.odp still contained
animation elements in slide1.xml when converted to PPTX, and
couldn't be opened in PP.

Set such nodes invalid instead to avoid processing them at all.

Change-Id: I799026c389681b89792bb9765b8f81562743deb4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/196424
Reviewed-by: Aron Budea <aron.budea@collabora.com>
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2026-01-03 03:05:19 +01:00
Aron Budea e54b0825f7 tdf#170102 add unit test
Change-Id: Ife6ef29174973202cef9307569f6c2259dc86c70
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/196211
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2025-12-26 07:16:22 +01:00
Aron Budea 04e5572c79 tdf#170102 PP's Title and Content layout exported incorrectly
In tdf#169825's fix I tried to correct the layout type
corresponding to AUTOLAYOUT_OBJ, originating from PP's obj
ST_SlideLayoutType to AUTOLAYOUT_TITLE_CONTENT, which had
unexpected side-effects:
PPTX->ODP->PPTX conversion of a 'Title, Content' layout added
placeholder artifact.

Revert that part of the change for now.

Regression from eb338daa90.

Change-Id: I5ba7ee14c4ae3a3a336b051edee4ca8702b87397
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/196169
Tested-by: Jenkins
Reviewed-by: Balazs Varga <balazs.varga@collabora.com>
2025-12-23 20:17:20 +01:00
Aron Budea d5136e0b60 tdf#166325 sw: use correct type when exporting scheme color to DOCX
OOXML schemeClr element has a different type (ST_SchemeColorVal)
compared to themeColor's ST_ThemeColor type, eg. dk1 instead
of dark1, but commit baf179188d
mapped them to the same values on export, causing some affected
files to become invalid.

Change-Id: Iff63aea8943be905c9afbb68012db320cc94eeb9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/195346
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
Reviewed-by: Aron Budea <aron.budea@collabora.com>
2025-12-12 05:39:50 +01:00
Aron Budea eb338daa90 tdf#169825 AutoLayout can be incorrectly exported to PPTX
...as vertTitleAndTxOverChart, if ODP layout was
AUTOLAYOUT_NOTES, causing corruption.

PPTX export code directly matched LO's AutoLayout IDs to
PPTX layout types (OOXML spec: 19.7.15 ST_SlideLayoutType
(Slide Layout Type)) without conversion, as some don't have
direct match, and need to be matched to blank layouts. This
could result in PPTXes that can't be opened in PowerPoint.

It could also result in PPTXes with wrong layout types when
using LO's own vertical layouts. The files could still be
opened in PP in this case.

In addition, import code imported vertical PPTX layouts
with wrong IDs, matching them to notes and handout autolayouts.

Part of the mentioned behavior happened since
bff76421e2.

Change-Id: Iba7a50795979c22bc566aa2cd6ea4d82f7f9477e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/195049
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Reviewed-by: Aron Budea <aron.budea@collabora.com>
2025-12-09 09:56:29 +01:00
Aron Budea 5c032407ba Revert "tdf#164141 Fix command button xls to xlsx convert problem."
Exporting ActiveX objects is a big missing feature, and
this was more of a workaround.

The invalid export originating from
fd238380ae
...has later been resolved differently in:
ab45b8d995

This reverts commit ab62d75141192a73dcd6862e37753bc1c3f82576.

Change-Id: I5e40759595e65a8778abbb521bdc146517afc949
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/184975
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Aron Budea <aron.budea@collabora.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/195195
Tested-by: Jenkins
2025-12-08 07:05:44 +01:00
Aron Budea 919b0984ed tdf#169706 correct unit test and file name
They were referring to the wrong bug report.

Change-Id: I3bb14b0391db75235b34ffe0eb7a23cc484bba6d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/194838
Tested-by: Jenkins
Reviewed-by: Aron Budea <aron.budea@collabora.com>
2025-11-30 17:20:33 +01:00
Aron Budea 0cf6caa3c2 tdf#169438 sd: reference to missing audio results in invalid PPTX
In slideX.xml the 'p:sndTgt' element would be incomplete.

Happened since d98d3e2a0b.

Change-Id: I3af20cc95abb86db393b6e2a03af379b8dc51360
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/194706
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@collabora.com>
2025-11-28 14:52:40 +01:00
Aron Budea 2f32f2a9a8 tdf#169675 sd: animation on 3D object results in invalid PPTX
3D objects are only supported in ODP, and don't get exported
to PPTX. Animations on them did get exported, resulting in
invalid 'spid' (-1) and invalid OOXML.

Reuse ShapeExport::IsShapeTypeKnown(...) introduced in
ab45b8d995.
Note the extra entries in
PowerPointShapeExport::WriteUnknownShape(...), these are
already covered by the second half of isValidTarget(...).

Change-Id: Ieb1dc1475b036fe4f24d84cee17b9af544c5bb18
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/194543
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Code-Style: Aron Budea <aron.budea@collabora.com>
Tested-by: Jenkins
2025-11-26 13:31:46 +01:00
Aron Budea a913faf181 tdf#169496 oox: hidden images in PPTX/XLSX shown after roundtrip
Because 'hidden' attribute of 'cNvPr' wasn't exported.

Change-Id: I5f8a79232e3b76f04269caae0631ba5b9710443a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/194142
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Reviewed-by: Aron Budea <aron.budea@collabora.com>
2025-11-20 09:44:05 +01:00
Aron Budea 2de71234b3 tdf#168755 sd smartart: use unified ids for diagrams and shapes
Diagrams (SmartArt) had their separate counters for ids, and
when saving animation details, the shape to target wasn't
found, resulting in tags like this, where negative spid
is invalid:
<p:spTgt spid="-1"/>

See "19.5.72 spTgt (Shape Target)" in OOXML spec.

Ids can't be completely unified, as it would affect naming
in ppt/diagrams and on the UI to have large numbers
(eg. in the 40-60 range), while users would expect them
to start from 1.
At least ids to "p:cNvPr" under "p:graphicFrame" should be
unified.

The large number is because shapes are numbered consecutively
over all slides, while for the most part they could restart
on each slide, changing that is not in scope for this fix.

Change-Id: I9790036cc0743313e98f5926d4dc365c8051bd04
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/193479
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Reviewed-by: Aron Budea <aron.budea@collabora.com>
Tested-by: Jenkins
2025-11-07 07:28:43 +01:00
Aron Budea c15ba11a6c OOXML: don't always export override entries in [Content_Types].xml
No need to export if it's no different from the default.

Also reorder defaults alphabetically, in same order as
exported by original document producers (though not all
of them are always added in MSO, which is not addressed
in this change).

Change-Id: I8526da5adc068f02e6da072961c82f4e75e3b984
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/193224
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2025-11-03 13:51:16 +01:00
Aron Budea bd01fe073f tdf#168921 sw: don't export user fields with empty names to DOCX
Otherwise Word will complain.

Started from ae5f469d38.

Change-Id: I223bcea33645e02972bc189eef0b913fc19b3b48
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/192583
Reviewed-by: Aron Budea <aron.budea@collabora.com>
Tested-by: Jenkins
2025-10-18 13:17:56 +02:00
Aron Budea bc1f96229e tdf#168885 oox: save more of empty charts
Otherwise Word will complain.
Affected types: area, bar, bubble, line, stock.

Regression from 3b4c11350a.

Change-Id: I56d533d9c55bae45240a1b51733ff60f47b1b2e7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/192483
Reviewed-by: Aron Budea <aron.budea@collabora.com>
Tested-by: Jenkins
Reviewed-by: Balazs Varga <balazs.varga@collabora.com>
2025-10-17 15:09:53 +02:00
Aron Budea 6cab4cb50c tdf#168754 sd: escape comments exported to PPTX
Change-Id: Ic0574980ec3d837f7747aaeb54fb8925aff2987f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/192072
Tested-by: Jenkins
Reviewed-by: Aron Budea <aron.budea@collabora.com>
2025-10-09 00:50:51 +02:00
Aron Budea a80d7ba9c0 tdf#168598 Fix for tdf#148578 should only apply to RTF
It also affected DOCX files witch compatibilityMode
not specified.

Regression from 788cc6ff3b

Change-Id: I1368066800ce4e6f4caa1131b1b6cf3590d8b1c1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/191587
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Reviewed-by: Aron Budea <aron.budea@collabora.com>
2025-09-29 13:59:03 +02:00
Aron Budea 625fc73a57 tdf#167659 Allow hiding tracked changes in PDF export from command line
PDFs exported from Writer show/don't show tracked changes
based on what's set on the UI.
During command line conversion, there was no way to change
this setting.

Introduce a new option 'ExportTrackedChanges' to be only used
during command line conversion as a --convert-to parameter, eg.:
'pdf:writer_pdf_Export:{"ExportTrackedChanges":
{"type":"boolean","value":"false"}}'

Change-Id: I763393ee4305415b714662decf23e0e8f8e75662
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/188194
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
2025-07-25 08:39:49 +02:00
Aron Budea c55d858887 tdf#166712 sc: don't export empty dbPr/olapPr elements to connections.xml
Otherwise Excel fails to open the file.

Change-Id: I6eec74c48d20f62a3a75f06a4197ef7ead75b446
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/185742
Reviewed-by: Bayram Çiçek <bayram.cicek@collabora.com>
Tested-by: Jenkins
2025-05-26 06:53:37 +02:00
Aron Budea 0c477a65b3 sw filter: don't write empty OOXML docPr title/description
Change-Id: I4cfeec04dc32ab4aded69f5f99046f8a1cf027a2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/185337
Reviewed-by: Aron Budea <aron.budea@collabora.com>
Tested-by: Jenkins
2025-05-22 05:19:45 +02:00
Aron Budea 37e4623bfa tdf#166511 sw: unify export of DrawingML object IDs
Both docPr and cNvPr have IDs referring to DrawingML objects,
and are supposed to be unique within the document.

These IDs were handled in different parts of the code during export.
7460e4f4a7 added a workaround,
likely to keep them unique, but together with
4b0fa253a4 this caused a clash
sometimes, and the result couldn't be opened in Word afterwards.

Use the same counter for both IDs. It needs to start from 1, as 0
ID makes at least grouped shapes invalid.

Change-Id: I5e7b9855bc88a61841dfcd3d41599a4ce444eb40
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/185190
Tested-by: Jenkins
Reviewed-by: Aron Budea <aron.budea@collabora.com>
2025-05-14 16:44:05 +02:00
Aron Budea 40b7e86717 sw: reduce nested levels in GetTextFrame
Change-Id: I4bc43382e60daf3d47770c7c24eb2440b1fecaa0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/185205
Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Tested-by: Jenkins
2025-05-12 14:19:26 +02:00
Aron Budea fe5919277e cool#11475 lok: sc: correctly export frozen/split pane information
As 7b4802070a noted,
online only supports freeze panes, but preserves splits when saving.

However, files could also end up with mixed frozen/split panes.
In addition, even a single split was treated like two, with
the other split being at the first row/column, which was incorrect.

Change-Id: I974690b8877ad6d4eca1e046c3c352359a199706
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/184421
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/184854
Tested-by: Jenkins
Reviewed-by: Aron Budea <aron.budea@collabora.com>
2025-05-02 04:33:18 +02:00
Aron Budea 55169df2f6 tdf166413 sc: escape quotes in XLSX cond. formatting fixed formula
...during export, otherwise Excel fails to open file

Change-Id: I50bc16ff4064a84ae3601cfa539d7b90f5441607
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/184852
Tested-by: Jenkins
Reviewed-by: Aron Budea <aron.budea@collabora.com>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2025-05-01 11:55:10 +02:00
Aron Budea 8397af1bc4 tdf#165886 sc: parse various quote characters
Otherwise roundtripped formulas in XLSX containing them
can end up with extra parenthesis, eg:
 - Expected: OR(D1=0,D1<>““)
 - Actual  : OR(D1=0,D1<>““))

Change-Id: I6d296687cc2467ca0cdee329f9b04f6c956d2de0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/183987
Reviewed-by: Aron Budea <aron.budea@collabora.com>
Tested-by: Jenkins
2025-04-20 22:49:47 +02:00
Aron Budea 82c5d55a9d Revert "tdf#165180 convert-to: prefer PowerPoint 2007-365, not Office Open XML"
This reverts commit d4c7b78827.

The situation is more complicated, let's not change anything
until reviewing the impact.

Change-Id: Iae8e10bb7eb716c025501f3490909941bf7c4515
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/184114
Reviewed-by: Aron Budea <aron.budea@collabora.com>
Tested-by: Jenkins
2025-04-13 15:19:28 +02:00
Aron Budea 1aac139d50 vcl: cairo: split cairo format defines into new header
Change-Id: I1d9b05c600cea860df0596d63e817b30347f563c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/183651
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Reviewed-by: Aron Budea <aron.budea@collabora.com>
Tested-by: Jenkins
2025-04-03 11:30:05 +02:00
Aron Budea 69162f01d3 tdf#166005 vcl: cairo: use correct order in RGBA case
When built with --enable-cairo-rgba parameter, green
and blue colors were swapped.

Likely since ff46c8bf59,
but these macros are already defined in
cff87aac4e.

Change-Id: Ia1a382c66e8e5ceb9d3d7eaa0f0d6287a6870cbf
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/183642
Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
2025-04-02 22:15:22 +02:00
Aron Budea ab45b8d995 tdf#165655 oox: don't export incomplete shape data coming from VML
Some export was added in fd238380ae.
This can result in only anchor pointers and no other data
saved for certain shapes having no export code, making it an
invalid file.

Change-Id: I81bf513b6ebaa9f6456a26ccbc3276e019551eca
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/182699
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
2025-03-31 21:58:03 +02:00
Aron Budea a3d7672483 tdf#165503: sc_subsequent_export_test4: Use precise XPath
The previous one was working fine, too, but it was missing the
last, single element in the path.

Change-Id: I8d8d359436f52fd8d5397b29905747e40d5f8793
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/182550
Tested-by: Jenkins
Reviewed-by: Aron Budea <aron.budea@collabora.com>
2025-03-10 05:25:02 +01:00
Aron Budea 9d3fba9760 tdf#165503 oox: save numerical date categories into numerical cache
f547cf17a1 switched
saving date categories from text to numeric, but
the values were still formatted text.
Excel considered these files corrupted.

Switch to saving actual numeric values.

Change-Id: I1f77a87fd66d6f8fde4987f110e37ed55711bdf3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/182364
Tested-by: Jenkins
Reviewed-by: Dennis Francis <dennis.francis@collabora.com>
2025-03-03 05:40:36 +01:00
Aron Budea cde91f936d tdf#165181 Don't overwrite guessed media MIME type with default on load
MIME types for media can be the default one,
'application/vnd.sun.star.media'.
In ODFs coming from old versions, for media unsupported
at the time, this default MIME type was used, and is read
when opening them in new versions.

MIME type is also guessed more accurately from the URI
(file name and extension), but was overwritten by the saved
MIME type. When using the UI, it is again overwritten by
the guessed MIME type, but not when using '--convert-to'.

This can cause a problem when saving ODPs to PPTX, PP will
consider these files corrupted.

Started happening after bc72514f90.

Change-Id: Icd95b06d54154f3b533840f8a5f381400f2e6108
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/181399
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
2025-02-12 11:00:44 +01:00
Aron Budea d4c7b78827 tdf#165180 convert-to: prefer PowerPoint 2007-365, not Office Open XML
I haven't seen it causing an actual issue so far,
but let's use the correct filter.

Similar rationale as c90c1d4435.

Change-Id: I2afd686db6f41b385214c274e47d293ef546b901
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/181398
Tested-by: Jenkins
Reviewed-by: Aron Budea <aron.budea@collabora.com>
2025-02-11 18:23:46 +01:00
Aron Budea 1552102dd3 LOK: Use OOXML 2010+ format
Change-Id: Ic2deac5602293cfcd1a1a73774dab94b2c4c970a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180458
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
(cherry picked from commit 6f7e5f6c26a212c3fdbff3b97522d05a5ab896cb)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180500
Reviewed-by: Aron Budea <aron.budea@collabora.com>
Tested-by: Jenkins
2025-01-20 13:54:30 +01:00
Aron Budea 202332062d tdf#164123 Changing language on a selection of cells resets formatting
Change-Id: I580ef23d19a62e2074e098e84e5b50831a6705cc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/180016
Reviewed-by: Henry Castro <hcastro@collabora.com>
Tested-by: Jenkins
2025-01-13 13:00:42 +01:00
Aron Budea 899d87a844 Slightly more informative logging
Change-Id: Ia474a208d5a562e424df76ff389cfcc4e3f2b1fc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/179817
Tested-by: Jenkins
Reviewed-by: Aron Budea <aron.budea@collabora.com>
2025-01-13 03:19:24 +01:00
Aron Budea 2af9fcddba Operator should be logical AND instead of OR
Change-Id: Ife1870da9979e974fa9dc11ca7dff87c8cfe66bc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177310
Tested-by: Jenkins
Reviewed-by: Aron Budea <aron.budea@collabora.com>
2024-11-26 16:26:26 +01:00
Aron Budea 69e881925f tdf#163486 PVS V581 The conditional expressions of the 'if' statements situated
...alongside each other are identical.

Started when a call inbetween was removed in
e50f6c0239.

and
V1053 Calling the 'EnableRTL' virtual function in the constructor
...may lead to unexpected result at runtime.

and
V1051 Consider checking for misprints. It's possible that the
...'nTopPos' should be checked here.

V1028 Possible overflow. Consider casting operands of the...
'nStartCol + 1' operator to the 'sal_Int64' type, not the result.

Change-Id: Ided25ab6dc9e9d4a1c72a1b809de586c7b890ce0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177218
Tested-by: Jenkins
Reviewed-by: Aron Budea <aron.budea@collabora.com>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-11-25 08:45:52 +01:00
Aron Budea 9646eddfa0 tdf#163486 PVS V1023 A pointer without owner is added to the container
...by the 'emplace_back' method.

Change-Id: I76a0a655d5fc5b123cd1018cb010ff9c9625c1d8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177226
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
Reviewed-by: Aron Budea <aron.budea@collabora.com>
2024-11-25 06:50:14 +01:00
Aron Budea fbfa2769f2 tdf#163486 PVS V1037 Two or more case-branches perform the same actions
second identical branch was added in
d519cbe892

and
V530 The return value of function 'GetTitle' is required...
to be utilized

the unnecessary GetTitle() call that was duplicated in
d519cbe892 was there since
9ae5a91f79 (initial import)

Change-Id: Ied25faf177184cc1b1ca4a512285232bf966c1e4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177209
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
Tested-by: Jenkins
Reviewed-by: Aron Budea <aron.budea@collabora.com>
2024-11-25 06:49:03 +01:00
Aron Budea 10f3e7f602 tdf#163486: PVS V1028 Possible overflow. Consider casting operands,
...not the result.

Change-Id: I4ba8afa5989aea906000bb9c4059855015055002
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/177042
Tested-by: Jenkins
Reviewed-by: Aron Budea <aron.budea@collabora.com>
2024-11-23 06:39:52 +01:00
Aron Budea 2cad06de3f sc: fix crash in ScModelObj::initializeForTiledRendering()
Crashreport signature:

> Fatal signal received: SIGSEGV code: 1 for address: 0xd2
> program/libsclo.so
>	ScDocShell::CalcOutputFactor()
>		sc/source/ui/docshell/docsh3.cxx:382
> program/libsclo.so
>	ScModelObj::initializeForTiledRendering(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&)
>		sc/source/ui/unoobj/docuno.cxx:1346
> program/libmergedlo.so
>	doc_initializeForRendering
>		include/com/sun/star/uno/Sequence.hxx:120
> /usr/bin/coolforkit
>	Document::load(std::shared_ptr<ChildSession> const&, std::string const&)
>		bundled/include/LibreOfficeKit/LibreOfficeKit.hxx:578

Change-Id: Id31229001951f4444781d173bf89d3e981f61b99
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/172365
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com>
(cherry picked from commit 4edf109f9ccc31c3daa880df91bcb81c55ff6ede)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/172412
Tested-by: Jenkins
2024-08-27 11:19:20 +02:00
Aron Budea d671bceed0 LOK: Mention name of unknown command in exception
Change-Id: I665c9aebaa4e215b8bc4622f3e245e5f2c47deab
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171133
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
(cherry picked from commit 8fe4ca79d4b3cc2a62c59b7dfd2849b7a79d9437)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/171196
Tested-by: Jenkins
Reviewed-by: Aron Budea <aron.budea@collabora.com>
2024-07-30 01:54:45 +02:00
Aron Budea 696eb4b4e5 tdf#161310 Translate My AutoText in Insert toolbar
Use same pattern as 42e6e26255
and dffdc0b199

Change-Id: If36ecdcbb771bfcde9836203e84586045d039c8e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/169693
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2024-06-30 06:27:05 +02:00
Aron Budea 2a5fc2a414 tdf#148616 Speed up finding custom shape guide value
Use a lookup hash map instead of linear search

Change-Id: I54c9509740d90ca3f7479dfc16a6aeffd82a405d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/166879
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Reviewed-by: Aron Budea <aron.budea@collabora.com>
2024-05-02 06:32:02 +02:00
Aron Budea 1a856fcede tdf#160342 Unwanted space before end of line when printing
Also adjust some numeric literals to reflect they're
floating point values in the expressions.

Regression from 172b500ccb.

Change-Id: I8281ba7c7d480135471ba94b11d447d76fd33063
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/165860
Tested-by: Jenkins
Reviewed-by: Aron Budea <aron.budea@collabora.com>
2024-04-07 09:35:19 +02:00
Aron Budea d3ae37902e lok: Send Accept / RejectTrackedChangedToNext state change
Change-Id: I194c0c3260fe90273f5b5f50c18a63e48ae85449
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164699
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Aron Budea <aron.budea@collabora.com>
(cherry picked from commit 9358d70f57ffd2ea40a3ae71db14b26307fce92e)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/164685
Tested-by: Jenkins
2024-03-12 19:24:12 +01:00
Aron Budea 6efe49e729 pyuno: Use expected return value (-1) on failure
Both PyObject_SetAttr and PyObject_SetItem are expected to:

Raise an exception and return -1 on failure; return 0 on success.
https://docs.python.org/3/c-api/object.html

Change-Id: Id1f6129e91e9da2f5d3bc1858422eeee4c3393d4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/163418
Tested-by: Jenkins
Reviewed-by: Aron Budea <aron.budea@collabora.com>
2024-02-15 12:49:31 +01:00
Aron Budea 8318337c3e tdf#147132 tdf#154285 basic: Flatten and check param count of Is* fns
Change-Id: I6d27dd49613a5cc26f4244dadc9bdd65361a0475
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162657
Tested-by: Jenkins
Reviewed-by: Aron Budea <aron.budea@collabora.com>
2024-02-09 00:30:21 +01:00
Aron Budea 5d52d7dcdf silence use-after-free warning in mdds for gcc12.3 in optimized build
Follow-up to e7c4166f1e as GCC 12.3
seems to be affected, too.

Change-Id: I8e5ba9be64625ffd21d43e627996a9ea8602ce9e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162181
Tested-by: Jenkins
Reviewed-by: Aron Budea <aron.budea@collabora.com>
2024-01-18 00:42:16 +01:00
Aron Budea 1bc6a730ec lok: Replace loop with std::find_if(...)
Change-Id: Icfe912f7b79454b9d208c39382ba187d0a0c16c5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/161810
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Attila Szűcs <attila.szucs@collabora.com>
Reviewed-by: Aron Budea <aron.budea@collabora.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/162045
Tested-by: Jenkins
2024-01-14 16:37:41 +01:00
Aron Budea 93801094fa sc: Unify GetColumnData
This added ColumnData:
a15c02effa
This added GetColumnData:
1c53f5b664

Both functions are the same, one is const, other is non-const.

Change-Id: I8ed214290c7ee8d9e22bd466f9ada95b40300e34
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160601
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2023-12-12 05:40:12 +01:00
Aron Budea 5b4a705f74 sc SetLayoutRTL: Only call PostPaint for current tab
...instead of the usual 0-9999, a layout change of the current
sheet should have no effect on others.

Change-Id: I5a9a2da78daf1fab06da939574c0e8a027533fcd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160254
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
(cherry picked from commit 67cdcf1ab2d2977fa79f9ecd7935ad8f3a8b4377)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160181
Tested-by: Jenkins
2023-12-04 21:36:55 +01:00
Aron Budea c822a05625 lok: Notify all tabs in the range
34d5abf464 restricted this to the
first tab, but PostPaint(...) is sometimes called with a
0..9999 tab range, even if the change only affected somewhere
in between.

In addition, restrict range end to the last actual tab in the
spreadsheet.

Change-Id: I44a7bb351e17bf85b13fedfe2a9f3d76543c4372
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160253
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Szymon Kłos <szymon.klos@collabora.com>
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
(cherry picked from commit 4d30910523bccb3b965f254401e6341af2ee8704)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/160182
Tested-by: Jenkins
2023-12-04 21:28:46 +01:00
Aron Budea c4c017d1b8 tdf#147132 tdf#154285 Flatten and check param count of IsMissing fn
Change-Id: I17d79dcedf2b2e1cd45ef2eb82ff5e89a9bb2b46
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/155028
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2023-10-13 17:04:16 +02:00