Age | Commit message (Collapse) | Author |
|
as preparation to have drawinglayer module
independent from vcl in the future
Change-Id: Iaa01370f27b51cba5114a54f37d1ec73d0719918
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/92048
Tested-by: Jenkins
Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
|
|
Change-Id: If38062ddb9afc9af7a4e9cf2c701c7f801361a93
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91434
Tested-by: Jenkins
Tested-by: Mike Kaganski <mike.kaganski@collabora.com>
Reviewed-by: Bartosz Kosiorek <gang65@poczta.onet.pl>
|
|
Change-Id: I8c767c113ecf24077e35afb719a6544714caca0d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91673
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
|
|
This patch splits the polypolygonprimitive2d.hxx into:
- PolyPolygonColorPrimitive2D.hxx
- PolyPolygonGradientPrimitive2D.hxx
- PolyPolygonGraphicPrimitive2D.hxx
- PolyPolygonHairlinePrimitive2D.hxx
- PolyPolygonHatchPrimitive2D.hxx
- PolyPolygonMarkerPrimitive2D.hxx
- PolyPolygonSelectionPrimitive2D.hxx
- PolyPolygonStrokePrimitive2D.hxx
... and fixes the include files and pre-compiled headers
Change-Id: I23982e0c81e8992f69e14cbac8e86858266b9999
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91603
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
|
|
Change-Id: Idd197f300e49dbce729e9399817bd36273d8de02
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91069
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
|
|
in wmfemfhelper when converting Metafile to
sequence of Prmitives. In the MetafileActions
MetaLineColorAction and MetaFillColorAction
usage of COL_TRANSPARENT must switch off line
draw/resp. fill
Change-Id: Id5754773c06b7f4aa8824dce9b8b9e7e526e6067
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/91061
Tested-by: Jenkins
Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
|
|
Change-Id: If388ef4544001fb9064aed3ce979c2790ab0645f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90997
Tested-by: Jenkins
Reviewed-by: Bartosz Kosiorek <gang65@poczta.onet.pl>
|
|
Change-Id: Iad5c414861eb807e6246b8a988b94d66ef5f687d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90776
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: Ia1cabaef6aa01337581cb9359bdd1ae90a4ebd55
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90767
Tested-by: Jenkins
Reviewed-by: Bartosz Kosiorek <gang65@poczta.onet.pl>
|
|
The extended options were used in LinearGradient tests
Change-Id: I44336edda2d82f936b6e931668bdac46ee7899e2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90541
Tested-by: Jenkins
Reviewed-by: Bartosz Kosiorek <gang65@poczta.onet.pl>
|
|
Change-Id: I61a533d2fab085992c1507331699b78aca2c8d29
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90515
Tested-by: Jenkins
Reviewed-by: Bartosz Kosiorek <gang65@poczta.onet.pl>
|
|
Change-Id: Id0547fcea95306997f8f04d400f3073abb6d6c47
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90514
Tested-by: Jenkins
Reviewed-by: Bartosz Kosiorek <gang65@poczta.onet.pl>
|
|
Added support for repeat modes in GDI+ support
and saw that the SVG primitive gradient helpers
are not capable to support these completely, so
had to do some quite complex adaptions which
OTOH will be useful for more complex gradients
anyways
Change-Id: Ib9a9e4a55115834a4fb00300b05abe17ae36d105
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90329
Tested-by: Jenkins
Reviewed-by: Armin Le Grand <Armin.Le.Grand@me.com>
|
|
else if (pen->penDataFlags & 0x00000100)
was changed to
else if (pen->penDataFlags & EmfPlusPenDataMiterLimit)
where EmfPlusPenDataMiterLimit = 0x00000010
See https://bugs.documentfoundation.org/show_bug.cgi?id=129675#c20
Regression from 1bd303a4c38a1bc04c3cf7bf0e7a44ac0fdb209d
Change-Id: I01ba4272aaa665a2fb0ab7ce9c05bb882db77d3e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88878
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
"Find explicit casts from signed to unsigned integer in comparison against
unsigned integer, where the cast is presumably used to avoid warnings about
signed vs. unsigned comparisons, and could thus be replaced with
o3tl::make_unsigned for clairty." (compilerplugins/clang/unsignedcompare.cxx)
o3tl::make_unsigned requires its argument to be non-negative, and there is a
chance that some original code like
static_cast<sal_uInt32>(n) >= c
used the explicit cast to actually force a (potentially negative) value of
sal_Int32 to be interpreted as an unsigned sal_uInt32, rather than using the
cast to avoid a false "signed vs. unsigned comparison" warning in a case where
n is known to be non-negative. It appears that restricting this plugin to non-
equality comparisons (<, >, <=, >=) and excluding equality comparisons (==, !=)
is a useful heuristic to avoid such false positives. The only remainging false
positive I found was 0288c8ffecff4956a52b9147d441979941e8b87f "Rephrase cast
from sal_Int32 to sal_uInt32".
But which of course does not mean that there were no further false positivies
that I missed. So this commit may accidentally introduce some false hits of the
assert in o3tl::make_unsigned. At least, it passed a full (Linux ASan+UBSan
--enable-dbgutil) `make check && make screenshot`.
It is by design that o3tl::make_unsigned only accepts signed integer parameter
types (and is not defined as a nop for unsigned ones), to avoid unnecessary uses
which would in general be suspicious. But the STATIC_ARRAY_SELECT macro in
include/oox/helper/helper.hxx is used with both signed and unsigned types, so
needs a little oox::detail::make_unsigned helper function for now. (The
ultimate fix being to get rid of the macro in the first place.)
Change-Id: Ia4adc9f44c70ad1dfd608784cac39ee922c32175
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87556
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: Ib20fec3a7b6bfe2f94c6f5f2f9fa0be6f7c21e97
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87320
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: If2644743ab0d9b78d42d1d2fe6fa22c83472d2c1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87065
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I9646220221d3efe7bcd99253245a1044dbed7d40
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86299
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
|
|
2.2.2.37 EmfPlusPointR Object has...
"X (variable) This value MUST be specified by either an EmfPlusInteger7 object
or an EmfPlusInteger15 object." and the same for Y. where variable is variable
length.
I think ReadInt32 isn't the right choice here and we need to read either one or
two bytes, using the highbit of the first byte to determine if we need to
read another byte.
Change-Id: I60c0687403ff58dc393bd55a22f37c89357f60c3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86207
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
|
|
This extracts Primitive2DContainer class to its own file, common
typedefs for PrimitiveReference, Primitive2DSequence to own file
CommonTypes.hxx, some commonly used and independent functions to
Tools.hxx.
But for not BufferedDecompositionPrimitive2D class is left as
it is.
Change-Id: Ia55bafd32fb95eba945d091e2c2ae89b160140d3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86086
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
|
|
Change-Id: Ic4d93a07bb42bbbf3370bd13e3425b0ecbb46e5b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86179
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
|
|
Change-Id: Ibc89724ceb52d5ad964767e844c4807d85f639c2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/84839
Tested-by: Jenkins
Reviewed-by: Bartosz Kosiorek <gang65@poczta.onet.pl>
|
|
Change-Id: I700f1b164e065b42928b05a4ead493c8ce2c57c2
Reviewed-on: https://gerrit.libreoffice.org/84838
Tested-by: Jenkins
Reviewed-by: Bartosz Kosiorek <gang65@poczta.onet.pl>
|
|
Change-Id: Iecb0fbd85fd5ceb1d9d9904a6a5482385f8d8622
Reviewed-on: https://gerrit.libreoffice.org/84842
Tested-by: Jenkins
Reviewed-by: Bartosz Kosiorek <gang65@poczta.onet.pl>
|
|
Change-Id: I9d7250980b833b8f45bef337c83b3592ca52ae3c
Reviewed-on: https://gerrit.libreoffice.org/84837
Tested-by: Jenkins
Reviewed-by: Bartosz Kosiorek <gang65@poczta.onet.pl>
|
|
Change-Id: Ib6ae6350fe61b3c0d787ad19ff55baa6487d63da
Reviewed-on: https://gerrit.libreoffice.org/84835
Tested-by: Jenkins
Reviewed-by: Bartosz Kosiorek <gang65@poczta.onet.pl>
|
|
Change-Id: If8314cab56a44b6045501490ed027f8c88bd6619
Reviewed-on: https://gerrit.libreoffice.org/84834
Tested-by: Jenkins
Reviewed-by: Bartosz Kosiorek <gang65@poczta.onet.pl>
|
|
Change-Id: I8ac039fd81767a52593721f211f3887276230ccf
Reviewed-on: https://gerrit.libreoffice.org/84841
Tested-by: Jenkins
Reviewed-by: Bartosz Kosiorek <gang65@poczta.onet.pl>
|
|
Change-Id: Iaae081ddee8097346000b7c2d987a2321d5e98cd
Reviewed-on: https://gerrit.libreoffice.org/84833
Tested-by: Jenkins
Reviewed-by: Bartosz Kosiorek <gang65@poczta.onet.pl>
|
|
- Fixed logging of objects
- Fixed indenting in log statements
Change-Id: If29dc2a0d781f9d4c3fd2c810aa29fe607f0a9c9
Reviewed-on: https://gerrit.libreoffice.org/84467
Tested-by: Jenkins
Reviewed-by: Bartosz Kosiorek <gang65@poczta.onet.pl>
|
|
Change-Id: I5e249d5ba85df020ab90c6e543c0d8aefe0b572f
Reviewed-on: https://gerrit.libreoffice.org/84455
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
Tested-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
|
|
UnitTypeToString was defined static in emfphelperdata.cxx, and was
absent in any header included in emfpfont.cxx, so it's unclear how
could it pass all the build tests.
Change-Id: I87f966d3cde5d04ab3d364ee0d583adbdc2cc2c0
Reviewed-on: https://gerrit.libreoffice.org/85355
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
EMF+ shapes were not filling when the brush style is a solid color. This
patch fixes this issue.
Change-Id: I6a2b12e514af9a85f50198dceee642fac8df2f1b
Reviewed-on: https://gerrit.libreoffice.org/85343
Tested-by: Jenkins
Reviewed-by: Bartosz Kosiorek <gang65@poczta.onet.pl>
|
|
Change-Id: I5b430360894dc1738445820679ceaf09edfeef55
Reviewed-on: https://gerrit.libreoffice.org/84840
Tested-by: Jenkins
Reviewed-by: Bartosz Kosiorek <gang65@poczta.onet.pl>
|
|
Change-Id: I5b13150e60109c0ede11c52940eeb10d2ba8e4e7
Reviewed-on: https://gerrit.libreoffice.org/84454
Tested-by: Jenkins
Reviewed-by: Bartosz Kosiorek <gang65@poczta.onet.pl>
|
|
Change-Id: If3e7d87e804a69b8c9511e2b5ac3e0af2f1a57a0
Reviewed-on: https://gerrit.libreoffice.org/84832
Tested-by: Jenkins
Reviewed-by: Bartosz Kosiorek <gang65@poczta.onet.pl>
|
|
Change-Id: I012c9c711e30c39be94cad93b8cadac98645ce71
Reviewed-on: https://gerrit.libreoffice.org/84453
Tested-by: Jenkins
Reviewed-by: Bartosz Kosiorek <gang65@poczta.onet.pl>
|
|
Change-Id: I68a371c8465bf3b13e5626d9f5d59fea48414304
Reviewed-on: https://gerrit.libreoffice.org/84452
Tested-by: Jenkins
Reviewed-by: Bartosz Kosiorek <gang65@poczta.onet.pl>
|
|
Change-Id: I72f8f3b6ace69f69cdfb2b4ee6de280edbb4291a
Reviewed-on: https://gerrit.libreoffice.org/84941
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Tested-by: Julien Nabet <serval2412@yahoo.fr>
|
|
Change-Id: I8c2891b13df3989de90ff407896a52ccf5a5208f
Reviewed-on: https://gerrit.libreoffice.org/84451
Tested-by: Jenkins
Reviewed-by: Bartosz Kosiorek <gang65@poczta.onet.pl>
|
|
Change-Id: Iaa20d1786ae6faac23cd06598da6097f22f0b623
Reviewed-on: https://gerrit.libreoffice.org/84836
Tested-by: Jenkins
Reviewed-by: Bartosz Kosiorek <gang65@poczta.onet.pl>
|
|
Change-Id: I4f0e9baee0d196f1cb682ce22e55569da1464fa7
Reviewed-on: https://gerrit.libreoffice.org/84288
Tested-by: Jenkins
Reviewed-by: Bartosz Kosiorek <gang65@poczta.onet.pl>
|
|
This is used by EmfPlusDrawImage and EmfPlusDrawImagePoints, basically
these reference the object via the ImageAttributesID.
Change-Id: I7fd852e7e419c9ef622bb0122fdccd66cb814cd2
Reviewed-on: https://gerrit.libreoffice.org/83031
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
|
|
Change-Id: Icd92be2ddc8b6b5d46a6ae04c6af268118f65418
Reviewed-on: https://gerrit.libreoffice.org/84391
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Tested-by: Jenkins
|
|
Change-Id: I9bc28525c143e49dcbea017b73d40e690e1e7460
Reviewed-on: https://gerrit.libreoffice.org/84271
Tested-by: Jenkins
Reviewed-by: Bartosz Kosiorek <gang65@poczta.onet.pl>
|
|
...following up on 314f15bff08b76bf96acf99141776ef64d2f1355 "Extend
loplugin:external to warn about enums".
Cases where free functions were moved into an unnamed namespace along with a
class, to not break ADL, are in:
filter/source/svg/svgexport.cxx
sc/source/filter/excel/xelink.cxx
sc/source/filter/excel/xilink.cxx
svx/source/sdr/contact/viewobjectcontactofunocontrol.cxx
All other free functions mentioning moved classes appear to be harmless and not
give rise to (silent, even) ADL breakage. (One remaining TODO in
compilerplugins/clang/external.cxx is that derived classes are not covered by
computeAffectedTypes, even though they could also be affected by ADL-breakage---
but don't seem to be in any acutal case across the code base.)
For friend declarations using elaborate type specifiers, like
class C1 {};
class C2 { friend class C1; };
* If C2 (but not C1) is moved into an unnamed namespace, the friend declaration
must be changed to not use an elaborate type specifier (i.e., "friend C1;"; see
C++17 [namespace.memdef]/3: "If the name in a friend declaration is neither
qualified nor a template-id and the declaration is a function or an
elaborated-type-specifier, the lookup to determine whether the entity has been
previously declared shall not consider any scopes outside the innermost
enclosing namespace.")
* If C1 (but not C2) is moved into an unnamed namespace, the friend declaration
must be changed too, see <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71882>
"elaborated-type-specifier friend not looked up in unnamed namespace".
Apart from that, to keep changes simple and mostly mechanical (which should help
avoid regressions), out-of-line definitions of class members have been left in
the enclosing (named) namespace. But explicit specializations of class
templates had to be moved into the unnamed namespace to appease
<https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92598> "explicit specialization of
template from unnamed namespace using unqualified-id in enclosing namespace".
Also, accompanying declarations (of e.g. typedefs or static variables) that
could arguably be moved into the unnamed namespace too have been left alone.
And in some cases, mention of affected types in blacklists in other loplugins
needed to be adapted.
And sc/qa/unit/mark_test.cxx uses a hack of including other .cxx, one of which
is sc/source/core/data/segmenttree.cxx where e.g. ScFlatUInt16SegmentsImpl is
not moved into an unnamed namespace (because it is declared in
sc/inc/segmenttree.hxx), but its base ScFlatSegmentsImpl is. GCC warns about
such combinations with enabled-by-default -Wsubobject-linkage, but "The compiler
doesn’t give this warning for types defined in the main .C file, as those are
unlikely to have multiple definitions."
(<https://gcc.gnu.org/onlinedocs/gcc-9.2.0/gcc/Warning-Options.html>) The
warned-about classes also don't have multiple definitions in the given test, so
disable the warning when including the .cxx.
Change-Id: Ib694094c0d8168be68f8fe90dfd0acbb66a3f1e4
Reviewed-on: https://gerrit.libreoffice.org/83239
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Found with bin/find-unneeded-includes
Only removal proposals are dealt with here.
Change-Id: I0968cfd6a94c20e6b0d324f068ca658d7d5c0296
Reviewed-on: https://gerrit.libreoffice.org/83294
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
In preparation of writing a test for semi-transparent shape text.
Change-Id: I2dac94a6cd9da48de9a5e407ceab78fb8be933d7
Reviewed-on: https://gerrit.libreoffice.org/83264
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
|
|
original patch updated by Chris Sherlock
Change-Id: Ie68c3cc40d2c7263a0f786a973da77b00e4cbeb8
Reviewed-on: https://gerrit.libreoffice.org/82564
Tested-by: Jenkins
Reviewed-by: Bartosz Kosiorek <gang65@poczta.onet.pl>
|
|
To mitigate the dangers of silently breaking ADL when moving enums into unnamed
namespaces (see the commit message of 206b5b2661be37efdff3c6aedb6f248c4636be79
"New loplugin:external"), note all functions that are affected. (The plan is to
extend loplugin:external further to also warn about classes and class templates,
and the code to identify affected functions already takes that into account, so
some parts of that code are not actually relevant for enums.)
But it appears that none of the functions that are actually affected by the
changes in this commit relied on being found through ADL, so no adaptions were
necessary for them.
(clang::DeclContext::collectAllContexts is non-const, which recursively means
that External's Visit... functions must take non-const Decl*. Which required
compilerplugins/clang/sharedvisitor/analyzer.cxx to be generalized to support
such Visit... functions with non-const Decl* parameters.)
Change-Id: Ia215291402bf850d43defdab3cff4db5b270d1bd
Reviewed-on: https://gerrit.libreoffice.org/83001
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|