Age | Commit message (Collapse) | Author |
|
Change-Id: Id95dc2bc578d98894ab73b1a9b9f7b0e69de3d7d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159830
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
|
|
Improved the calculation of positions of text characters for multi-line texts.
The previous version only fitted the text to the basic outline (curve), and then scale them to the appropriate text line.
This means that the text will be wider or shorter, depending on the shape of the curve, and which line it is on
Now it calculates a curve for each paragraph and fits text on it.
Text will be approximately the same width on each line.
Except if the text is wider as the curve. Because then it shrinks the text to fit on the curve. (this can only happens on inner curves)
Reused the same compat flag that was used in bug148000, now it serves
as a Powerpoint compatible mode for FontWork, so no need to create new
compat flag every time FontWork has improve.
That means that the Fontwork in old documents has remains the same
Refactored horizontal/vertical alignment, but had to keep the old hacks
as well.
Note: if there are too many lines of text, and the vertical alignment causes internal curves, then curves can shrink to 0 length (center point of a circle) or even to negative length,
These cases are impossible to display normally, so it will be glitchy
similar to how it was before this patch.
MS PowerPoint avoid these cases by not allowing vertical alignments that
would result internal (smaller) curves.
Added unittest to check legacy-odb / new-odp / pptx file.
It change the display of fontwork, so in some cases it may feel like
a regression.
Change-Id: Iac2d9bc751bbc2b6f747c33958f969cb3543fae5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/159776
Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
which will help avoid ambiguity in method calls in an upcoming patch
Change-Id: Ic7607ac7d95559e0942a84fb3226cfdd6ade22bc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/154146
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I30206c68ecf1829ba0094e6259b8ed7dc05f2e9a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/131103
Tested-by: Jenkins
Reviewed-by: Bartosz Kosiorek <gang65@poczta.onet.pl>
|
|
Change-Id: I166f715489ecff3095ccfb485153629050bfca20
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122977
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
|
|
Reading 'rectA.IsInside( rectB )' kind of suggests that the code
checks whether 'rectA is inside rectB', but it's actually the other
way around. Rename IsInside() -> Contains(), IsOver() -> Overlaps(),
which should make it clear which way the logic goes.
Change-Id: I9347450fe7dc34c96df6d636a4e3e660de1801ac
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122271
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
Tested-by: Jenkins
|
|
It preserves the points, but not the flags. Work this around
by temporarily converting to B2DPolygon, where it works.
Change-Id: I120264fbc4c7c508386f23a06435891199565aae
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/106188
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
|
|
partly to flush some use of "long" out the codebase,
but also to make it obvious which units are being used
for angle values.
Change-Id: I1dc22494ca42c4677a63f685d5903f2b89886dc2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/104548
Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
first step to switching long to a 64-bit type on 64-bit windows
Change-Id: I640d807426dfe713c7a8984ef560575f8288dbeb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/104516
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: Ie9d4761747f7e97f63f34394b5a8b9f0bb287a0e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/97528
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
and add move constructor, found by loplugin:noexceptmove
Change-Id: I89507113b354c4ae080f7107c996b55ab1285738
Reviewed-on: https://gerrit.libreoffice.org/78285
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
idea from mike kaganski
look for places where we can mark move operators as noexcept, which
makes some STL operations more efficient
Change-Id: Id732b89d1fcadd5ceb0ea2b9d159fed06136330f
Reviewed-on: https://gerrit.libreoffice.org/78251
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
...which apparently wants to internally call some operator<< for Polygon
(rPolyPoly.GetObject(i)), but which doesn't exist (and appears to not have
existed when this operator<< for PolyPolygon was added with
e4be770ec8218d80dcc9f1e38fd1c69717beb4fb "add std::ostream operators for Region
and PolyPolygon"), so uses the non-explicit PolyPolygon ctor that takes a
Polygon, and causes infinite recursion for any non-empty PolyPolygon
Change-Id: I308527dcfed18763c8c3ebbce823eea9a0340e70
Reviewed-on: https://gerrit.libreoffice.org/73388
Tested-by: Jenkins
Reviewed-by: Michael Stahl <Michael.Stahl@cib.de>
|
|
Change-Id: I3a2145277212b7b45c25bea2e33aae3f6f4a7776
Reviewed-on: https://gerrit.libreoffice.org/64066
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Found with bin/find-unneeded-includes
Only removal proposals are dealt with here.
Change-Id: I9dc920e9388f9e2aa4dcae1f0b3f7562d08f7f70
Reviewed-on: https://gerrit.libreoffice.org/61809
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
|
|
This reverts commit f9c2bcc8b761f5e21354c0fb7bca6aa432d11ec2. Drawing all sorts
of curves and polygons in Draw causes various crashes in
svx/source/svdraw/svdopath.cxx, apparently because in the past ImpXPolygon's
pPointAry had a "buffer" of more elements (nSize) than it had nPoints, and the
code heavily relied on that, assigning to such excess elements of pPointAry past
nPoints (and presumably calling XPolygon::SetPointCount later?).
Conflicts:
svx/source/xoutdev/_xpoly.cxx
(Reverted the mostly, if not completely, automatic changes there done by
924c0e34fdc36cd44100dafc2c68656ce32374e6 "loplugin:changetoolsgen in svx"; they
will need to be re-done.)
Change-Id: I6cb41fd218c3bdd0b3bbeb45f5b3d68649901a48
Reviewed-on: https://gerrit.libreoffice.org/50057
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
just use a std::vector<std::pair<Point,PolyFlags>>
Change-Id: I85de832af9095a33bda1620781c3b231a345e07c
Reviewed-on: https://gerrit.libreoffice.org/49275
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Also
- convert to o3tl::cow_wrapper
- drop the second param to the constructor and just
let vector use it's own resize logic
- bump MAX_POLYGONS from 0x3FF0 to 0xffff so that the
ios2met filter can load it's files properly.
Change-Id: I9db19e4f7b4f946e801ea07c31d2d0ded7837a0e
Reviewed-on: https://gerrit.libreoffice.org/47789
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I78f141762f593b36d32eb3eb2cda8fdae54b7277
Reviewed-on: https://gerrit.libreoffice.org/42309
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
|
|
Change-Id: Ie05e44e2a4019e2549843961ebfa04fef7b7aeb4
Reviewed-on: https://gerrit.libreoffice.org/43767
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: Idde44857f8ace883cc759321c71e2ca7a4359334
Reviewed-on: https://gerrit.libreoffice.org/42406
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
Tested-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Mostly generated using
make check COMPILER_EXTERNAL_TOOL=1 CCACHE_PREFIX=clang-rename-wrapper RENAME_ARGS="-qualified-name=Rectangle -new-name=tools::Rectangle"
Except some modules have their own foo::tools namespace, so there have
to use ::tools::Rectangle. This commit just moves the class from the
global namespace, it does not update pre/postwin.h yet.
Change-Id: I42b2de3c6f769fcf28cfe086f98eb31e42a305f2
Reviewed-on: https://gerrit.libreoffice.org/35923
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Tested-by: Jenkins <ci@libreoffice.org>
|
|
Change-Id: Ib008613fb06c82791c63d5b074a3e2ff1c3607a0
Reviewed-on: https://gerrit.libreoffice.org/35834
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I52a9f16f3ed543a3c83ca111df70e3f7ae1ef33c
Reviewed-on: https://gerrit.libreoffice.org/34508
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I0988ebbbc5fe394eaa6fead0d2f909d4a931856c
|
|
and remove the XPolyFlags enum, which has the same values and was being
converted to PolyFlags anyhow
Change-Id: Iaead84933c79a7603698a4e50257dd944df89c41
Reviewed-on: https://gerrit.libreoffice.org/31627
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: Ia35fdbb5e40888db9558988ac069741b31721f0e
Reviewed-on: https://gerrit.libreoffice.org/31633
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I02e933da66241e99e3b81d90d679f1502bab3fef
Reviewed-on: https://gerrit.libreoffice.org/30866
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I2454a230cd9a524086beba1a2ca32ea0b70bf17e
|
|
Change-Id: I3774661799c074561c694515baba42a375d0a077
Reviewed-on: https://gerrit.libreoffice.org/23301
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
|
|
Change-Id: I2a974ba76566700c2037fcb38de3ecfea9d2651d
|
|
<sberg> noelgrandin, just happen to look at b14224fe again; looks a bit scary to remove == or != from cases where both where declared
<noelgrandin> sberg, ok, I can revert that part
<sberg> noelgrandin, I guess that would be safer (there could be cases where now a different overload could kick in)
Change-Id: I5dc41c05dc4439d5adee0e5b3e0a9e1dfb9de3af
Reviewed-on: https://gerrit.libreoffice.org/22211
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
Tested-by: Noel Grandin <noelgrandin@gmail.com>
|
|
using an idea from dtardon:
<dtardon> noelgrandin, hi. could you try to run the unusedmethods clang
plugin with "make build-nocheck"? that would catch functions that are
only used in tests. e.g., i just removed the whole o3tl::range class,
which has not been used in many years, but htere was a test for it...
<noelgrandin> dtardon, interesting idea! Sure, I can do that.
Change-Id: I5653953a426a2186a1e43017212d87ffce520387
Reviewed-on: https://gerrit.libreoffice.org/22041
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
Tested-by: Noel Grandin <noelgrandin@gmail.com>
|
|
...which, somewhat arbitrarily, expects GNU extension __attribute__((...)) to
come before MSVC extension __declspec(...) with
MaybeParseGNUAttributes(attrs);
MaybeParseMicrosoftDeclSpecs(attrs);
in Parser::ParseClassSpecifier (lib/Parse/ParseDeclCXX.cpp).
Change-Id: I5936558c8fc08b278575b6c678cde6eccd4647fb
|
|
Change-Id: Ia5acfb564f913d52cd25b5d64d06b5280b94cb72
|
|
Change-Id: I167d656f419ddbeb72960b8510fb8084605d4d5c
|
|
Change-Id: I136b3b1d572e4401d89d50f543150d71dbe44d16
|
|
Change-Id: I6f207a1692e4fcd2fbecd0420f5ed798e4504667
|
|
Polygon is one of these names that Clash with some system objects
A similar work has been done earlier with PolyPolygon.
Change-Id: Icf2217cb2906292b7275760f1a16be0e150312f5
Reviewed-on: https://gerrit.libreoffice.org/17789
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Norbert Thiebaud <nthiebaud@gmail.com>
|
|
Change-Id: Ib4d77ee01e7362f5951f81fceeca3c489872d971
Reviewed-on: https://gerrit.libreoffice.org/17378
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
|
|
Change-Id: I45f5489233879126d4f9ee3d01db504d950bb597
Reviewed-on: https://gerrit.libreoffice.org/16656
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
|
|
Change-Id: I163bd3f521473c5357c23c3ce4978f984be7b6fe
|
|
Change-Id: I7223530ae37297a76654cd00cc1fedb56dbe3adb
|
|
Put the TOOLS PolyPolygon class in the tools namespace. Avoids clash with the Windows
PolyPolygon typedef.
Change-Id: I811ecbb3d55ba4ce66e4555a8586f60fcd57fb66
|
|
Move ImplSubdivideBezier(Polygon) to Polygon as a static function.
Move ImplSubdivideBezier(PolyPolygon) to PolyPolygon as a static function.
Change-Id: I0d006a8a2d3a8d9ba1aec913ceecb38507e4dd2f
|
|
as preparation for converting the SvStream::operator>> methods on
primitive types
Change-Id: I62f134bced15c687d6e0d46924f56e8d1c3d95b9
Reviewed-on: https://gerrit.libreoffice.org/7798
Tested-by: LibreOffice gerrit bot <gerrit@libreoffice.org>
Reviewed-by: Michael Stahl <mstahl@redhat.com>
|
|
Change-Id: I8f4129b840a27f3029643ad2a4852f9e10604905
|
|
This is in preparation for more conversion of SvStream::operator<< calls
to use more explicit method names.
This converts the subclasses that have their own convenience overloads
of operator<< to use normal methods.
Change-Id: I5efd5d9a24c264cb86d2471303dd5849bf91ba80
|
|
Change-Id: I5f44f041e465230d10d562e8bd6f141848465e07
|
|
Change-Id: I5572c320431222be2405f8c2dc8adeafe4f3828b
|