Age | Commit message (Collapse) | Author |
|
This is a follow-up to 45a7f5b62d0b1b21763c1c94255ef2309ea4280b "Keep WID ranges
sorted, and join adjacent ones". While SfxItemSet::MergeRange relies on the
m_pWhichRanges being sorted (and, under DBG_UTIL, asserts if they are not), the
various SfxItemSet constructors curiously only check (via assert or DBG_ASSERT)
that each individual range has an upper bound not smaller than its lower bound.
Arguably, all SfxItemSet instances should fulfill the stronger guarantees
required and checked by MergeRange.
And in many cases the ranges are statically known, so that the checking can
happen at compile time. Therefore, replace the two SfxItemSet ctors taking
explicit ranges with two other ctors that actually do proper checking. The
(templated) overload taking an svl::Items struct should be used in all cases
where the range values are statically known at compile time, while the overload
taking a std::initializer_list<Pair> is for the remaining cases (that can only
do runtime checking via assert). Most of those latter cases are simple cases
with a single range covering a single item, but a few are more complex.
(At least some of the uses of the existing SfxItemSet overload taking a
const sal_uInt16* pWhichPairTable
can probably also be strengthened, but that is left for another day.)
This commit is the first in a series of two. Apart from the manual changes to
compilerplugins/clang/store/sfxitemsetrewrite.cxx, include/svl/itemset.hxx, and
svl/source/items/itemset.cxx, it only consists of automatic rewriting of the
relevant SfxItemSet ctor calls (plus a few required manual fixes, see next).
But it does not yet check that the individual ranges are properly sorted (see
the TODO in svl::detail::validGap). That check will be enabled, and the ensuing
manual fixes will be made in a follow-up commit, to reduce the likelyhood of
accidents.
There were three cases of necessary manual intervention:
* sw/source/core/unocore/unostyle.cxx uses eAtr of enum type RES_FRMATR in
braced-init-list syntax now, so needs explicit narrowing conversion to
sal_uInt16.
* In sw/source/uibase/uiview/formatclipboard.cxx, the trailiing comma in the
definition of macro FORMAT_PAINTBRUSH_FRAME_IDS needed to be removed manually.
* In svx/source/svdraw/svdoashp.cxx, svx/source/svdraw/svdotext.cxx,
sw/source/uibase/app/docstyle.cxx, sw/source/uibase/shells/frmsh.cxx,
sw/source/uibase/shells/grfsh.cxx, and sw/source/uibase/shells/textsh1.cxx,
some comments had to be put back (see "TODO: the replaced range can contain
relevant comments" in compilerplugins/clang/store/sfxitemsetrewrite.cxx).
A few uses of the variadic form erroneously used nullptr instead of 0 for
termination. But this should have been harmless even if promoted std::nullptr_t
is larger than promoted sal_uInt16, assuming that the part of the nullptr value
that was interpreted as sal_uInt16/promoted int was all-zero bits. Similarly,
some uses made the harmless error of using 0L instead of 0.
Change-Id: I2afea97282803cb311b9321a99bb627520ef5e35
Reviewed-on: https://gerrit.libreoffice.org/38861
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
Tested-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: I06d0cd4c7986a59f54102f945a560f710887ad8b
Reviewed-on: https://gerrit.libreoffice.org/38514
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
|
|
Change-Id: I5a339a4211ec8eb547459996be69610b9f2b3766
Reviewed-on: https://gerrit.libreoffice.org/38147
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
|
|
...after 579497164f6bddfeb14bb6b0f4b9cd3322af1803 "Bump GCC baseline to 4.8.1"
Make this a fatal configuration error for now. The check should be removed
completely after LO 6.0 branch-off.
Change-Id: I70cf65d6b0eb7158008f28449794c66c1b775916
Reviewed-on: https://gerrit.libreoffice.org/38869
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Instead, use FormulaTokenArrrayPlainIterator everywhere, especially in
the FormulaCompiler.
This is the final step of a long chain of commits. (Split up into many
"uncontroversial" bits, and then this, to make potential bisecting
easier.)
Also added a logging operator<< for FormulaTokenArray, for SAL_DEBUG,
SAL_INFO etc goodness.
Change-Id: I02fe29f3f1e0dc33e5cba69e594223b4178a12bc
Reviewed-on: https://gerrit.libreoffice.org/38851
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Tor Lillqvist <tml@collabora.com>
|
|
Change-Id: Ief7d4c8e1866604eda6308ea2a5c1ce4b1c093bc
Reviewed-on: https://gerrit.libreoffice.org/38836
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Using the guard style ProfileZone aZone("foo").
Test macro:
Sub TimeLog
toolkit = createUnoService("com.sun.star.awt.Toolkit")
toolkit.startRecording()
toolkit.processEventsToIdle()
toolkit.stopRecording()
a = toolkit.getRecordingAndClear()
s = ""
For Each i in a
s = s + i + ", "
Next i
Print s
End Sub
Change-Id: Iceaf9143d0387c87e7936dc67eecbbf71ee8d74a
Reviewed-on: https://gerrit.libreoffice.org/38786
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Jenkins <ci@libreoffice.org>
|
|
Change-Id: Ibf685ff915dacedfbc9ecfa4b119115142cb68c0
|
|
Also made changes in FastParser impl. to emit this event. I've made use
of existing namespace and element name strings to store target
and data for this event.
Change-Id: I6f00cd1172552dd9a74ec22190bef3d2289ae515
Reviewed-on: https://gerrit.libreoffice.org/38784
Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
Tested-by: Michael Meeks <michael.meeks@collabora.com>
|
|
* font size
* font family
* rotation
* TextPath geometry - working transparency & color
* revert TextBox export removed by mistake
Change-Id: I3f6df86809ae57dc40c275652a96b19d2a3d7eba
Reviewed-on: https://gerrit.libreoffice.org/38494
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Tested-by: Jenkins <ci@libreoffice.org>
|
|
part of a larger patch to convert ErrCode to strong_int
Change-Id: Ia56e5d6d8c4217d6f258e2113d20ce737977892f
Reviewed-on: https://gerrit.libreoffice.org/38813
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
in favour of ErrCode.
Part of a larger patch to convert ErrCode to strong_int
Change-Id: Ia846bfc93c58c85c6a6cec79e9d19b9ecbd1c05f
Reviewed-on: https://gerrit.libreoffice.org/38783
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
and extend o3tl::make_unique to cope with arrays
Change-Id: I84caa46ab5060f9777bfe275f229499cb0b407be
Reviewed-on: https://gerrit.libreoffice.org/38794
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I087f0fe99e6631d5b62ea773c83404e11d64d060
|
|
peeling off a small chunk of my ErrCode strong_int conversion
Change-Id: Idc89e8496083beed7608cba705cd981139eb7111
Reviewed-on: https://gerrit.libreoffice.org/38777
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
- teach comphelper::containerToSequence to handle sized arrays
- also use range based for-loop where appropriate.
Change-Id: I73ba9b6295e7b29c872ee53de7a9340969e07f99
Reviewed-on: https://gerrit.libreoffice.org/38769
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
...and address resulting loplugin:useuniqueptr
Change-Id: Ia79eb8d59ce5092b2d93b656eab687096baedf17
|
|
Change-Id: I109637dc6b3d23c0beca21f3cf0c7ba918ecb4f8
Reviewed-on: https://gerrit.libreoffice.org/38749
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
|
|
Change-Id: Ic9570421f176c8bc078c1d33697a5f379e05111b
|
|
Change-Id: I46be77225c0323f8b7f293de9c022f0de6f425b7
|
|
... to FormulaTokenArray. Intermediate commit, these new functions
aren't used yet.
Change-Id: Ie505fe9dbd787087fa29f701d29ff9b4495c8699
|
|
Change-Id: Ic734fe2a425ca1c821ba91df17aecac5ef40a000
|
|
Change-Id: Ia5272aac6825a9f571ae0ed144475eb291426894
|
|
Made those methods static, so that it is easy
to use them outside the module.
Also updated the Namespace-constants list.
Change-Id: Id0bf501457c53d1420a00ce58c9bcedfcba17908
Reviewed-on: https://gerrit.libreoffice.org/38708
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
|
|
Change-Id: I55120a885d74bbd3710a4e02be939a8e4e6a9ba2
|
|
Change-Id: I219dd03477862169cd50eecc14822f6a023f879a
|
|
It has ~no users, can't even be built on modern Linuxes, and it annoys
folks who want to refactor VCL.
Per ESC decision from 2017-06-08, remove --enable-tde and --enable-tdeab.
Change-Id: I51ce4786f29f8fcac2e2bb2a654c41fbfbbd8afd
Reviewed-on: https://gerrit.libreoffice.org/38718
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
|
|
Change-Id: Ib2ba32d48d3df16b0b20deea84416fe15a2d7176
Reviewed-on: https://gerrit.libreoffice.org/38650
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
|
|
Also cleaning up bUseBufferedStream parameter.
Change-Id: Ibf9c9fcefbdcd229ffaa1d3b169ff87f00e91ceb
Reviewed-on: https://gerrit.libreoffice.org/38661
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
Tested-by: Michael Meeks <michael.meeks@collabora.com>
|
|
Change-Id: I173a29fd1ee889127369d2bc2fce8e010b89ca65
Reviewed-on: https://gerrit.libreoffice.org/38633
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I8691a627bbf78ce83db595053d6e254557641408
Reviewed-on: https://gerrit.libreoffice.org/38506
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
|
|
Create SalLayout in StatusBar instead of getting cache through output
parameter.
Pass cache as a constant to the output device afterwards.
Results in a more readable code, with more evident memory management.
Change-Id: I4f949ea8f390b31379f661d611a183ceb3d91c25
Reviewed-on: https://gerrit.libreoffice.org/38651
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Tamás Bunth <btomi96@gmail.com>
|
|
Next step is to remove OContextEntryGuard.
Change-Id: I9460fb67fba6f3bfb3c809b730c33f38d225a64e
Reviewed-on: https://gerrit.libreoffice.org/38411
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
with thread safe local statics
Change-Id: Ie7c44fb35ba0b24e154631a4805463230e2c69e7
Reviewed-on: https://gerrit.libreoffice.org/38662
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
which in turn triggered some loplugin:useuniqueptr
Change-Id: I0c38561fc9b68dac44e8cf58c8aa1f582196cc64
Reviewed-on: https://gerrit.libreoffice.org/38281
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
and remove some manual ref counting
Change-Id: Ib78122fbbf914e87e0aef1f8fffe3952639e5b22
Reviewed-on: https://gerrit.libreoffice.org/38607
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Extend lifecycle of SalLayout created by the output device.
A layout is stored for each status bar item and used as a cache.
The layout may be updated through output device method parameters.
This way it's no longer necessary to calculate the layout again and again when
painting the status bar item multiple times, provided that its text does not
change.
Change-Id: I6494c2d6b676e8f4fdda2cde6165ff0755fd4fa2
Reviewed-on: https://gerrit.libreoffice.org/38578
Reviewed-by: Tamás Bunth <btomi96@gmail.com>
Tested-by: Tamás Bunth <btomi96@gmail.com>
|
|
Change-Id: Ifcd49f34b889b34eba2464de6e083f9021633bc6
Reviewed-on: https://gerrit.libreoffice.org/38427
Reviewed-by: Jan Holesovsky <kendy@collabora.com>
Tested-by: Jan Holesovsky <kendy@collabora.com>
|
|
Change-Id: I7b2680898dbfc49185fb949349d81f4ac615a470
Reviewed-on: https://gerrit.libreoffice.org/38593
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: Icd2dbd6e894975615268dc4aa52d1d53bf9c0bca
Reviewed-on: https://gerrit.libreoffice.org/38581
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
|
|
These are used in at least on of the free fonts we bundle.
Also translate a stray German comment :)
Change-Id: I3f4d83001bcfc3a8b3d490e56d9e538a8d892f0c
Reviewed-on: https://gerrit.libreoffice.org/38476
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Katarina Behrens <Katarina.Behrens@cib.de>
|
|
...since 87c9465262680dec09efb869800859aa65ab1d19 "Bin unused function
DbgCheckItemSet"
Change-Id: I109598dc5e087697d77b96a0ba2fb178d47b3aa6
|
|
because the user has modified the document
Change-Id: Ib32ea2ff41f41a81c9a382585f6afbec12fe6a35
Reviewed-on: https://gerrit.libreoffice.org/38284
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Samuel Mehrbrodt <Samuel.Mehrbrodt@cib.de>
|
|
This way it's not necessary to state the size of the array in advance,
which is kind of redundant. It's also easy to forget to adjust it when
adding new elements.
Change-Id: I5fe24fd24954afb69ead014941b8f8b90bcaeac3
|
|
Change-Id: I11409dfc621018a761c70a640938e18ae679d3f5
Reviewed-on: https://gerrit.libreoffice.org/38254
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
|
|
Change-Id: Iedc1023b67138727061c2da13bebdb75af370ec6
Reviewed-on: https://gerrit.libreoffice.org/38105
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
|
|
Which means the DOCM-specific code to roundtrip VBA things (project,
data) can be removed. The oox part has to be extended a bit, as at least
for this DOCM bugdoc there is an XML relation of the binary data, while
existing shared code assumed the full VBA project is just a single OLE
blob.
Change-Id: I4085e4dba24475e6fd555e5f34fe7ad0f305c57d
Reviewed-on: https://gerrit.libreoffice.org/38504
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Tested-by: Jenkins <ci@libreoffice.org>
|
|
Change-Id: Ib0304de5d873ac833dcc121235b8de494a1bb3bf
Reviewed-on: https://gerrit.libreoffice.org/37999
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
|
|
Allowing export of EditEngine document into flat XML from actual clipboard
by modifying SotClipboardFormatId
Change-Id: I9c7dfd3ca428d0fa355bd3dfb7bfa0f0e30dada6
Reviewed-on: https://gerrit.libreoffice.org/38226
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Eike Rathke <erack@redhat.com>
|
|
The bugdoc uses LANGUAGE_USER_LATIN_VATICAN LanguageType(0x8076).
The UNO API uses signed "short" for these in various interfaces,
and so the LanguageType constructor complains about
out-of-(short)-range values.
Avoid this by deleting the problematic constructor, so that the places
that currently call it with API parameters can be changed to first
cast the parameter to unsigned.
(Yes, we need to write "template<>" twice in a row. Don't ask me why, i
just work here. sberg says we also need to omit the explict <short>.)
Change-Id: I2443a89bc8d579504fc707ded3d145f9a625597a
Reviewed-on: https://gerrit.libreoffice.org/38473
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
|