summaryrefslogtreecommitdiff
path: root/xmloff
AgeCommit message (Collapse)Author
2020-05-27Remove some unused includesMiklos Vajna
Change-Id: Id5a31185faf2a3a13b6ea266e058a7df41d44423 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94890 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2020-05-26Fix loplugin:simplifypointertobool for libstdc++ std::shared_ptrStephan Bergmann
...where the get member function is defined on a std::__shared_ptr base class, so loplugin:simplifypointertobool used to miss those until now. (While e.g. using libc++ on macOS found those cases.) 366d08f2f6d4de922f6099c62bb81b49d89e0a68 "new loplugin:simplifypointertobool" was mistaken in breaking isSmartPointerType(const clang::Type* t) out of isSmartPointerType(const Expr* e); c874294ad9fb178df47c66875bfbdec466e39763 "Fix detection of std::unique_ptr/shared_ptr in loplugin:redundantpointerops" had introduced that indivisible two-step algorithm on purpose. The amount of additional hits (on Linux) apparently asked for turning loplugin:simplifypointertobool into a rewriting plugin. Which in turn showed that the naive adivce to just "drop the get()" is not sufficient in places that are not contextually converted to bool, as those places need to be wrapped in a bool(...) functional cast now. If the expression was already wrapped in parentheses, those could be reused as part of the functional cast, but implementing that showed that such cases are not yet found at all by the existing loplugin:simplifypointertobool. Lets leave that TODO for another commit. Besides the changes to compilerplugins/ itself, this change has been generated fully automatically with the rewriting plugin on Linux. Change-Id: I83107d6f634fc9ac232986f49044d7017df83e2a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94888 Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk> Reviewed-by: Stephan Bergmann <sbergman@redhat.com> Tested-by: Jenkins
2020-05-24tdf#101181: drop useless "GlowEffect" boolean propertyMike Kaganski
Just use GlowEffectRad to indicate effect presense: radius of 0 means effect is disabled. Change-Id: Ic06bba34f5a851f120d3d00cb7e20c429ead9ee1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94732 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2020-05-22[API CHANGE] officecfg,xmloff: remove SaveBackwardCompatibleODFMichael Stahl
org.openoffice.Office.Common.Save.Document.SaveBackwardCompatibleODF was added in 2007 and apparently enables storing invalid ODF (or OOoXML) to workaround bugs in OOo <= 2.3; nobody should need it in this day and age, and the OOoXML export has been removed anyway. bce5e157785745a6729db62b15fb98bc396cddee 2007 c7a3859693971bf7103bfb0d05d64712e724fa37 2007 7477a65e09b20917adf025550c550f8822b508ee 2007 77baabe992c77018a0467ffec8f9482f8d76b66b 2007 575222083e058a740f5ad69e14e18622c3d4f7af 2007 66b908b45cde78af020b35e817e67bc40b8493f0 2007 Change-Id: Ib3f730c7c9ac6fbbbbae9fb4a42c1bd65f6c93df Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94571 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>
2020-05-22xmloff: create XMLMetaExportOOO instances with an uno constructorMiklos Vajna
See tdf#74608 for motivation. Change-Id: Ie3bed67b736ea3a3c8071336594bcbe54c6618a5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94651 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2020-05-21use for-range on Sequence in testtools..xmloffNoel Grandin
Change-Id: I05b02a2f8b4b9091c7de0f7e98409d5b608ed250 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94610 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-05-20meta:non-whitespace-character-count attribute is knownhimajin100000
also, fixed a typo and re-positioned the item to the correct index. Change-Id: Ibac232a9e6851a0c59884bc82ead5de36ac2e391 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94454 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>
2020-05-20tdf#130479 FODG import: fix handling of <draw:fill-image> in stylesMiklos Vajna
Regression from the image handling rework, the problem was that the old, URL-based code had explicit handling of mxBase64Stream, while the new, XGraphic-based code assumed that by the time we reach the end of of the bitmap style element, maAny already contains the graphic. Fix the problem by improving XMLBitmapStyleContext::EndElement(), so it loads the graphic from the base64 stream if we don't have a graphic already. Change-Id: I6d90f1470a5b797fb51789901081ccd7a6fd29e7 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94548 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2020-05-19tdf#89475 xmloff: ODF import/export: continue fixing draw:angleMichael Stahl
Continue what commit aadda5d17f6e422da143ea774f759bfc5f629c5b started wrt. unit-less draw:angle attributes in ODF >= 1.2: * ODF 1.3 files don't ever have unit-less draw:angle interpreted as 10th of degree * import unit-less draw:angle as degree, except if it's ODF 1.0/1.1 or it's ODF 1.2 written by OOo/LO < 7.0, then 10th of degree * export draw:angle with "deg", which LO 4.4 and newer can read; except if exporting ODF 1.0/1.1 or ODF 1.2 Extended (compatibility mode), then 10th of degree (unit-less) The only problem with this is that if you store a file as ODF 1.2 Extended (compatibility mode) and load it with LO 7.0 it will interpret the angle wrong, but nothing's perfect... Change-Id: I3771e6571afd40e44b6f7890dacf18c28841610f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94443 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>
2020-05-19xmloff,filter: Flat ODF import: import BuildId from meta:generatorMichael Stahl
The problem is that SvXMLMetaDocumentContext::endFastElement() works to init BuildId property for ODF packages but not for flat ODF files because the entire content of the document is inside that element. So init BuildId when the office:meta element ends. Also, add the missing "BuildId" property in XmlFilterAdaptor. This allows the CppunitTest_sd_import_tests testGradientAngle to work in the subsequent commit. Change-Id: I916a9288631078c1552cd8673e41fa9a9679f574 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94499 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>
2020-05-19xmloff: ODF import: Silence "unknown LO version: 7000"Tomoyuki Kubota
Change-Id: I56cf3b03274cc24f66bbfc9d3615fa57521a6cd1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94368 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>
2020-05-19tdf#106780 xmloff: ODF export: only write invalid text:style-name...Michael Stahl
... in case of ODF 1.2 Extended (compatibility mode), which is intended for workarounds for old OOo/LO versions. Change-Id: Ib0411c09d795383a481be8b4661dc71b02b0181b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94442 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>
2020-05-19Fix typoAndrea Gelmini
Change-Id: I72d95721c6af63706cc6e2c39b12d4af858cc045 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94492 Tested-by: Julien Nabet <serval2412@yahoo.fr> Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
2020-05-19tdf#103602 xmloff,sw: ODF 1.3 export: PageStyle with drawing-page styleMichael Stahl
Associate a style of family "drawing-page" with a style:master-page. This fixes the small part of the draw:fill attribute problem that is covered by OFFICE-3937 in ODF 1.3. Exporting the "drawing-page" style is only allowed in ODF 1.3; all property map entries have ODFSVER_ODF013 and this causes no style to be exported for earlier versions. Continue to export the invalid draw:fill attributes on the style:page-layout for now, until the import of this is more widely deployed. This only works with Writer, because Calc doesn't implement FillStyle properties on its page styles. Change-Id: I4b24ae3eaf332723e24671e594eca5e36d48f525 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93671 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>
2020-05-19tdf#103602 xmloff,sw: ODF 1.3 import: PageStyle with drawing-page styleMichael Stahl
Associate a style of family "drawing-page" with a style:master-page. This fixes the small part of the draw:fill attribute problem that is covered by OFFICE-3937 in ODF 1.3. This is the import part. Change-Id: I4c86fa24c36407b64ce33f0890e5da8c26c5292a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93670 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>
2020-05-19tdf#97630 xmloff: ODF export: fix draw:fit-to-size mess, step 2Michael Stahl
Restrict the export of draw:fit-to-size to only the standard values "true"/"false". Keep the broken export for ODFVER_012_EXT_COMPAT, since it's easy to do. Change-Id: Ieaab3b635a116a1d0b6155115f8f7f74935a125a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93226 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>
2020-05-19tdf#91306 xmloff: ODF export: allow style:page-number="0" in ODF 1.3Michael Stahl
See OFFICE-3923. Change-Id: I619d9efe3eb17feaf84f7dd21f5b2197c30bc6aa Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93225 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>
2020-05-19xmloff: ODF export: additional ODF 1.3 chart featuresMichael Stahl
* OFFICE-3662 chart:interpolation additional values * OFFICE-3958 chart regression curve: polynomial * OFFICE-3959 chart regression curve: moving-average None of these are exported in ODF 1.2 extended because they require additional values for standard attributes, which isn't valid. Change-Id: I920cc44dbde46687b570c1296c7d8926f0a1a9c6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94064 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>
2020-05-15replace hard-coded "1.2" ODF version stringsMichael Stahl
Most of these are calls to DocumentDigitalSignatures::createWithVersion(), where it doesn't make a difference if "1.2" or "1.3" is passed in but maybe it will be different with "1.4". There is another ctor createDefault() which looks appropriate for non-ODF contexts and can also be used when no actual signing or verifying is done. In cases where there's an actual document its Storage has the version. Change-Id: Id636bbf965d9f96c7ed5f50774c509032525b2b1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93091 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>
2020-05-15xmloff: remove unused SvXMLExport::getDefaultVersion()Michael Stahl
Change-Id: I52e904ca32f46ec50c3045260be7824aa782cc9c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93090 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>
2020-05-15xmloff: ODF export: produce office:version="1.3"Michael Stahl
Change-Id: I422743c6eacf112046141e017d42d78165c36cf2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93089 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>
2020-05-15xmloff: create SchXMLExport_Content instances with an uno constructorMiklos Vajna
See tdf#74608 for motivation. Change-Id: I49f00c08635e571d75e5190d55cbe1f279566797 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94255 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2020-05-12xmloff: ODF export: adapt to ODF 1.3Michael Stahl
* OFFICE-3883 legend svg:width/svg:height * OFFICE-3928 chart:coordinate-region * OFFICE-3943 draw:mime-type * OFFICE-3765 number:fill-character, number:text * OFFICE-3860 number:min-decimal-places, number:forced-exponent-sign * OFFICE-1828 number:exponent-interval * OFFICE-3695 number:max-denominator-value * OFFICE-3941 text:index-entry-link-start/text:index-entry-link-end * OFFICE-3776 meta:creator-initials * OFFICE-3789 style:header-first/style:footer-first Change-Id: I78c79231c0708c3ae9943097d162898fab71988f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92873 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>
2020-05-11tdf#49247: no need in extra boolean property, radius is enoughMike Kaganski
When soft edge has radius 0, the effect is disabled. Change-Id: I7d66ea7b87e0ed59129a83885d52906b8edf75f5 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93971 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2020-05-11Document relation between three lists that must be in syncMike Kaganski
Change-Id: I9fc44b6878450d147d21f77ff4daa6939edfa0c2 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93837 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2020-05-11tdf#49247: implement soft edges document model and import/exportMike Kaganski
... for ODF and OOXML. Two object properties added: SoftEdge (boolean, effect enabled/disabled) SoftEdgeRad (sal_Int32, effect radius in 100ths of mm) Two corresponding ODF attributes added: loext:softedge ("visible"/"hidden") loext:softedge-radius (metric) Change-Id: I0dc4d7fc3e5b0c2c36092d430568ebcfd3a68c9c Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93833 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2020-05-10compact namespace in xmlhelp..xmlsecurityNoel Grandin
Change-Id: I54f0a47a4b7a1f85481fd1e643ac55459d0383ec Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93907 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-05-10new loplugin:simplifypointertoboolNoel Grandin
Change-Id: Iff68e8f379614a6ab6a6e0d1bad18e70bc76d76a Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91907 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-05-09xmloff: ODF export: adapt all checks of ODFSVER_012 etc.Michael Stahl
Most of these actually want to check ODFSVER_EXTENDED because the extension didn't get into ODF 1.3. Change-Id: I1b625a329f7a3d146c616c62c15b56e2c314c2c0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92872 Reviewed-by: Michael Stahl <michael.stahl@cib.de> Tested-by: Jenkins
2020-05-09sc,xmloff: ODF 1.3: adapt XMLPropertyMapEntryMichael Stahl
Map the following property attributes to ODFSVER_013: * OFFICE-2173 table:tab-color * OFFICE-3767 text:contextual-spacing * OFFICE-3857 table:scale-to-X/table:scale-to-Y Change-Id: I3585560a3654c71353bbcaf66da20eacba8ebd1f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92861 Reviewed-by: Michael Stahl <michael.stahl@cib.de> Tested-by: Jenkins
2020-05-08xmloff: ODF export: rework version checks in SvXMLExportPropertyMapperMichael Stahl
There's some issues with the version checks here: * The requirement is to retain support for ODF 1.2 extended, but some attributes are in ODF 1.3, while others require ODF 1.3 extended, so a single version number can't be used to compare * A recurring problem is that new extension attributes are erroneously exported to standard namespaces; there is the pre-existing buggy case of style:hyperlink to consider... * Currently it's possible to distinguish multiple extended version but the only minimum version that's actually used is the minimum one ODFSVER_012_EXT_COMPAT Rework this to use a different check, by: * distinguishing extension attributes from standard attributes via their namespace, to avoid such bugs by construction * interpreting the version number always as a standard ODF version number: if the attribute is in extension namespace: if the minimum standard version is met, ignore else: if the minimum standard version is met, export * adapting all XMLPropertyMapEntry to use ODFSVER_FUTURE_EXTENDED for extension attributes (TODO: check which of these should be ODFSVER_013) This should have an effect on the drawext:fontwork* attributes, which need ODFSVER_FUTURE_EXTENDED to be exported now. Change-Id: I986c8064e578a61d69ed5fdb261f23e7582a7d75 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92856 Reviewed-by: Michael Stahl <michael.stahl@cib.de> Tested-by: Jenkins
2020-05-08tdf#114400 Export drawoo:fontwork-xyz attributesIlhan Yesil
The attributes can be read in the old and the new namespace, but will be exported only in the new namespace. Change-Id: Ia79aad425105d94d460a819eaa3e4a35ac4c73e9 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/59411 Reviewed-by: Michael Stahl <michael.stahl@cib.de> Tested-by: Jenkins
2020-05-08xmloff: ODF export: fix style:hidden nonsense, step 1Michael Stahl
a0dcf961879ab644a52f801f65466756cb144b72 introduced style:hidden attribute, fix the obvious problems with this: * as a non-ODF attribute it should use LO_EXT namespace * import LO_EXT namespace too * comparing == ODFVER_LATEST is wrong; it already prevents exporting in ODFVER_012_EXT_COMPAT case. Don't remove export to STYLE namespace yet even though it's invalid, because existing LO releases expect that. Change-Id: I258202cc572a7c50f3b2620da3b9970d34fbf80b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92730 Reviewed-by: Michael Stahl <michael.stahl@cib.de> Tested-by: Jenkins
2020-05-08xmloff: GetEarliestODFVersionForExport(-1) is impossibleMichael Stahl
Remove defensive programming nonsense to deal with situation that has apparently never been possible in git history. Change-Id: I3788cdcec5e1b4afa27e294ed91825bb33e8e633 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92729 Reviewed-by: Michael Stahl <michael.stahl@cib.de> Tested-by: Jenkins
2020-05-08replace ODFDefaultVersion usage with ODFSaneDefaultVersion...Michael Stahl
... in SvXMLExportPropertyMapper. The condition nCurrentVersion == SvtSaveOptions::ODFVER_UNKNOWN is impossible since d571a509aa324db9a425110a67ea142d157256b2. ODFVER_UNKNOWN isn't a value of ODFSaneDefaultVersion so use std::optional to handle the remaining usage. Change-Id: I1e33cb707c289224664a385b4e4425e6788b2943 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92728 Reviewed-by: Michael Stahl <michael.stahl@cib.de> Tested-by: Jenkins
2020-05-07xmloff: ODF import: wrong Storage in SvXMLImport::IsODFVersionConsistent()Michael Stahl
The XModel's storage is a temporary one created in SfxObjectShell::GetStorage(), with the latest ODF version; the check must use the source Storage that is being imported. Change-Id: I3d2ce92d6193deefac852edb7078fb5bf41bb957 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93173 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>
2020-05-07replace ODFDefaultVersion usage with ODFSaneDefaultVersionMichael Stahl
Compare with ODFSVER_012 mostly works the same, except for places where namespaces are defined where the ODFSVER_EXTENDED bit should be checked. Change-Id: I86469b763bc2f903632976bc9d6ec04d543d705e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92727 Tested-by: Jenkins Reviewed-by: Michael Stahl <michael.stahl@cib.de>
2020-05-06sw from-bottom relative orientation: add ODF filterMiklos Vajna
Map between RelOrientation::PAGE_PRINT_AREA_BOTTOM and loext:vertical-rel="page-content-bottom". Change-Id: I1d614bf7c82a76285f4268b8008e08c25ef9b7f0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93120 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
2020-05-06tdf#101181: support for transparency attribute of glow effectMike Kaganski
Read/write support for ODF and OOXML (in ODF, loext:glow-transparency attribute of style:graphic-properties has been added). Added UI on glow sidebar panel. Not used in actual painting yet. Change-Id: I21b25d9c52c8611cd796f056374377ebf13cc2f6 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93565 Tested-by: Jenkins Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
2020-05-04tdf#131175 Import data label solid fill and color.Gülşah Köse
Change-Id: I8a3ef6e60d4f2a13310bb9a8fc4eb873df3f9b4f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93407 Tested-by: Jenkins Reviewed-by: Gülşah Köse <gulsah.kose@collabora.com>
2020-05-01improve loplugin:makesharedNoel Grandin
to find places where we are converting stuff to unique_ptr instead of using std::make_shared. As a bonus, this tends to find places where we are using shared_ptr where we can instead be using unique_ptr avoiding the locking overhead. Change-Id: I1b57bbc4a6c766b48bba8e25a55161800e149f62 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93207 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-04-30expand out OContainerImport templateNoel Grandin
to make the logic easier to follow, and to make it possible to convert this to fast-parser APIs Change-Id: I48921c3cd84b45f56ff943060f2d9c8e4882d051 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93193 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-04-30Revert "Convert TokenContext to fastparser APIs"Noel Grandin
This reverts commit b7bfe6ae08f5b214f2d03d70a40b66c894c0b659. Reason for revert: I missed some call-sites which means this is not going to work properly, which also means we don't have any tests for this functionality :-( Change-Id: Ie340a5e2331609258e79176c3dd12249ad46ba7b Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93134 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-04-29Convert TokenContext to fastparser APIsNoel Grandin
Change-Id: Ib40e2f3d37c52b03f2ecbd67aaeed9605e644fea Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93163 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-04-29simplify handling of comparing XML_NAMESPACE valuesNoel Grandin
Change-Id: I18bbf1ee206285842250891ce556d523489855b1 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93075 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-04-28move the castToFastAttributeList functionNoel Grandin
to the slightly higher namespace, to make it easy and more readable to use directly in a for-loop-range expression. And make it return a reference rather than a pointer, since it is never allowed to be nullptr. Change-Id: I15d0b32493ef65cfc601b247c272b318f1eadfd8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93049 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
2020-04-27Make upcasting css::uno::Reference ctor require complete typesStephan Bergmann
The main reason for the "home-grown" UpCast introduced with 904b3d1fceee5827076758ed2a81f80cb73493ca "Up-cast conversion constructor for css::uno::Reference" in 2013 was probably that we could not yet rely on C++11 std::is_base_of back then. A (welcome) side effect was that the derived class could be incomplete. However, specializations of UpCast relying on whether or not T2 is incomplete are obviously an ODR violation if the type is incomplete in some TUs and complete (and derived from T1) in others. And even if UpCast had internal linkage, it would still be brittle that its behavior depends on the completeness of T2 at the point of the template's instantiation, and not necessarily at the point of use. That means we should better base that ctor on std::is_base_of (which we can do now since 39a1edd6fec902ef378acce8af42c4d7fba280d0 "Make css::uno::Reference upcast ctor LIBO_INTERNAL_ONLY"), which causes a compilation error at least on Clang and GCC if the completeness requirements are not met. This change fixes all the cases where types need to be complete now, plus any resulting loplugin:referencecasting warnings ("the source reference is already a subtype of the destination reference"). Change-Id: Ieb9e3552e90adbf2c5a5af933dcb872e20661a2f Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92950 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-04-26update pchesCaolán McNamara
Change-Id: I83a61da7dda6c72552eecd377f1c3744c92a797e Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92909 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caolanm@redhat.com>
2020-04-25tdf#129898 Use layer DrawnInSlideshow in edit modeRegina Henschel
If 'Mouse pointer as pen' is set in slideshow settings, painting in slideshow becomes persistent. A layer DrawnInSlideshow is created for that purpose during slideshow. But that layer was not known to the view from where the slideshow was started. Generating a layer had been done regardless whether such layer already exists or not. That had produced several layers with identical name. That may not happen, because layers are identified by name. Change-Id: I2ba9bad5babe5a1bba3d1fc69d028d9037d2bd47 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92502 Tested-by: Jenkins Reviewed-by: Regina Henschel <rb.henschel@t-online.de>
2020-04-25make FastParser always take a FastTokenHandlerBase subclassNoel Grandin
since most of the call sites already do, and we can skip the slow path this way. Change-Id: I64ed30c51324e0510818f42ef838f97c401bb6dd Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90326 Tested-by: Jenkins Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>