Accepting request 863076 from LibreOffice:Factory
bsc#1179025 OBS-URL: https://build.opensuse.org/request/show/863076 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libreoffice?expand=0&rev=219
This commit is contained in:
commit
00f14007f8
79
bsc1178807.diff
Normal file
79
bsc1178807.diff
Normal file
@ -0,0 +1,79 @@
|
||||
From 0bd430959f1605cb7ab5ab2efdb4b6fd217cd8c2 Mon Sep 17 00:00:00 2001
|
||||
From: Miklos Vajna <vmiklos@collabora.com>
|
||||
Date: Wed, 6 Jan 2021 10:23:44 +0100
|
||||
Subject: [PATCH] bsc1178807.diff
|
||||
|
||||
tdf#134288 svx: fix rendering of text on a zero-width shape
|
||||
|
||||
We have conflicting requirements here: on one hand, the shape is zero
|
||||
width, so the text area is also zero. On the other hand, we put some
|
||||
text on the shape, which should be visible.
|
||||
|
||||
The result was that the left/right text margin (2x250 mm100) was counted
|
||||
as part of the text area, so we put a few (but not 1) characters / line
|
||||
for zero width. Fix this to be PowerPoint-compatible: as the width
|
||||
decreases, we break the text up to more and more lines, but if the width
|
||||
is 0, then we don't break it up at all.
|
||||
|
||||
An alternative would be to do this later in
|
||||
SdrTextObj::impDecomposeBlockTextPrimitive(), but there we no longer
|
||||
know the width is really 0, because the text margins and some small
|
||||
increase (+1 to be an inclusive range, +1 to have a non-zero scale) is
|
||||
already added to the original width.
|
||||
|
||||
(cherry picked from commit 65e2ef43f186164729e1cc071b805bc1a7125cfe)
|
||||
|
||||
Conflicts:
|
||||
svx/qa/unit/sdr.cxx
|
||||
|
||||
Change-Id: Ieaa3e726bc5d37983b6221452e14f01db315f790
|
||||
---
|
||||
.../sdr/primitive2d/sdrdecompositiontools.cxx | 28 +++++++++++++++++--
|
||||
1 file changed, 26 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/svx/source/sdr/primitive2d/sdrdecompositiontools.cxx b/svx/source/sdr/primitive2d/sdrdecompositiontools.cxx
|
||||
index 2ee2bb625e2d..801190f5e92a 100644
|
||||
--- a/svx/source/sdr/primitive2d/sdrdecompositiontools.cxx
|
||||
+++ b/svx/source/sdr/primitive2d/sdrdecompositiontools.cxx
|
||||
@@ -278,12 +278,36 @@ namespace drawinglayer::primitive2d
|
||||
|
||||
// create a range describing the wanted text position and size (aTextAnchorRange). This
|
||||
// means to use the text distance values here
|
||||
- const basegfx::B2DPoint aTopLeft(aSnapRange.getMinX() + rText.getTextLeftDistance(), aSnapRange.getMinY() + rText.getTextUpperDistance());
|
||||
- const basegfx::B2DPoint aBottomRight(aSnapRange.getMaxX() - rText.getTextRightDistance(), aSnapRange.getMaxY() - rText.getTextLowerDistance());
|
||||
+ sal_Int32 nTextLeftDistance = rText.getTextLeftDistance();
|
||||
+ // If the margin is larger than the entire width of the text area, then limit the
|
||||
+ // margin.
|
||||
+ if (nTextLeftDistance > aSnapRange.getWidth())
|
||||
+ nTextLeftDistance = aSnapRange.getWidth();
|
||||
+ sal_Int32 nTextRightDistance = rText.getTextRightDistance();
|
||||
+ if (nTextRightDistance > aSnapRange.getWidth())
|
||||
+ nTextRightDistance = aSnapRange.getWidth();
|
||||
+ const basegfx::B2DPoint aTopLeft(aSnapRange.getMinX() + nTextLeftDistance,
|
||||
+ aSnapRange.getMinY()
|
||||
+ + rText.getTextUpperDistance());
|
||||
+ const basegfx::B2DPoint aBottomRight(aSnapRange.getMaxX() - nTextRightDistance,
|
||||
+ aSnapRange.getMaxY()
|
||||
+ - rText.getTextLowerDistance());
|
||||
basegfx::B2DRange aTextAnchorRange;
|
||||
aTextAnchorRange.expand(aTopLeft);
|
||||
aTextAnchorRange.expand(aBottomRight);
|
||||
|
||||
+ if (aTextAnchorRange.getWidth() == 0)
|
||||
+ {
|
||||
+ // If the shape has no width, then don't attempt to break the text into multiple
|
||||
+ // lines, not a single character would satisfy a zero width requirement.
|
||||
+ // SdrTextObj::impDecomposeBlockTextPrimitive() uses the same constant to
|
||||
+ // effectively set no limits.
|
||||
+ aTextAnchorRange.expand(
|
||||
+ basegfx::B2DPoint(aTopLeft.getX() - 1000000, aTopLeft.getY()));
|
||||
+ aTextAnchorRange.expand(
|
||||
+ basegfx::B2DPoint(aBottomRight.getX() + 1000000, aBottomRight.getY()));
|
||||
+ }
|
||||
+
|
||||
// now create a transformation from this basic range (aTextAnchorRange)
|
||||
// #i121494# if we have no scale use at least 1.0 to have a carrier e.g. for
|
||||
// mirror values, else these will get lost
|
||||
--
|
||||
2.26.2
|
||||
|
43
bsc1179025.diff
Normal file
43
bsc1179025.diff
Normal file
@ -0,0 +1,43 @@
|
||||
From 9a10330ff8fb0499ed8b0a91563b3c7f62b94096 Mon Sep 17 00:00:00 2001
|
||||
From: Miklos Vajna <vmiklos@collabora.com>
|
||||
Date: Tue, 12 Jan 2021 10:13:14 +0100
|
||||
Subject: [PATCH] bsc1179025.diff
|
||||
|
||||
oox smartart: fix crash in pyra algorithm with a single child shape
|
||||
|
||||
Regression from commit 14a56533ff2c9c859d22cd3039ada75b99e94bc0
|
||||
(SmartArt Pyramid: Now lays out shapes, 2018-07-10), the added pyramid
|
||||
algorithm by first centering the topmost children, then decrementing the
|
||||
horizontal postion of each additional shape, with the end goal of having
|
||||
0 horizontal position of the last children.
|
||||
|
||||
This means that simply avoiding the division in the 1-child case leads
|
||||
to correct results, because in this case the only child is also the last
|
||||
child at the sane time.
|
||||
|
||||
(cherry picked from commit f2e04fe98e313cffa3f98d55eae641415142a431)
|
||||
|
||||
Change-Id: Ifd0027e9616b0909dbfde43e1555427b50de4dad
|
||||
---
|
||||
oox/source/drawingml/diagram/diagramlayoutatoms.cxx | 5 ++++-
|
||||
1 file changed, 4 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/oox/source/drawingml/diagram/diagramlayoutatoms.cxx b/oox/source/drawingml/diagram/diagramlayoutatoms.cxx
|
||||
index 7f926cc9a5e8..24acaf176491 100644
|
||||
--- a/oox/source/drawingml/diagram/diagramlayoutatoms.cxx
|
||||
+++ b/oox/source/drawingml/diagram/diagramlayoutatoms.cxx
|
||||
@@ -1286,7 +1286,10 @@ void AlgAtom::layoutShape(const ShapePtr& rShape, const std::vector<Constraint>&
|
||||
for (auto & aCurrShape : rShape->getChildren())
|
||||
{
|
||||
aCurrShape->setPosition(aCurrPos);
|
||||
- aCurrPos.X -= aChildSize.Height/(nCount-1);
|
||||
+ if (nCount > 1)
|
||||
+ {
|
||||
+ aCurrPos.X -= aChildSize.Height / (nCount - 1);
|
||||
+ }
|
||||
aChildSize.Width += aChildSize.Height;
|
||||
aCurrShape->setSize(aChildSize);
|
||||
aCurrShape->setChildSize(aChildSize);
|
||||
--
|
||||
2.26.2
|
||||
|
37
icu68.patch
Normal file
37
icu68.patch
Normal file
@ -0,0 +1,37 @@
|
||||
From 0b14b9ec55fb2a8dd0ec24e1c03702bc4bbf1878 Mon Sep 17 00:00:00 2001
|
||||
From: Rene Engelhard <rene@debian.org>
|
||||
Date: Sun, 1 Nov 2020 18:30:49 +0100
|
||||
Subject: fix build with ICU 68
|
||||
|
||||
use standard true.
|
||||
|
||||
/home/rene/LibreOffice/git/master/i18npool/source/calendar/calendar_gregorian.cxx: In member function 'virtual void i18npool::Calendar_gregorian::setLocalDateTime(double)':
|
||||
/home/rene/LibreOffice/git/master/i18npool/source/calendar/calendar_gregorian.cxx:363:40: error: 'TRUE' was not declared in this scope
|
||||
363 | body->getTimeZone().getOffset( fR, TRUE, nZoneOffset, nDSTOffset, status );
|
||||
| ^~~~
|
||||
|
||||
/usr/include/unicode/umachine.h says:
|
||||
|
||||
@deprecated ICU 68 Use standard "true" instead.
|
||||
|
||||
Change-Id: I45d2b0afa6a9043767af5c2cf41ba24377f2cdc4
|
||||
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105057
|
||||
Tested-by: Jenkins
|
||||
Reviewed-by: Eike Rathke <erack@redhat.com>
|
||||
---
|
||||
i18npool/source/calendar/calendar_gregorian.cxx | 9 ++++++++-
|
||||
1 file changed, 8 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/i18npool/source/calendar/calendar_gregorian.cxx b/i18npool/source/calendar/calendar_gregorian.cxx
|
||||
index b7ae49fbd96e..59ee46fa0e0f 100644
|
||||
--- a/i18npool/source/calendar/calendar_gregorian.cxx
|
||||
+++ b/i18npool/source/calendar/calendar_gregorian.cxx
|
||||
@@ -347,7 +347,7 @@ Calendar_gregorian::setLocalDateTime( double fTimeInDays )
|
||||
"Calendar_gregorian::setLocalDateTime: " << std::fixed << fM << " rounded to " << fR);
|
||||
int32_t nZoneOffset, nDSTOffset;
|
||||
UErrorCode status = U_ZERO_ERROR;
|
||||
- body->getTimeZone().getOffset( fR, TRUE, nZoneOffset, nDSTOffset, status );
|
||||
+ body->getTimeZone().getOffset( fR, true, nZoneOffset, nDSTOffset, status );
|
||||
if ( !U_SUCCESS(status) ) throw ERROR;
|
||||
status = U_ZERO_ERROR;
|
||||
body->setTime( fR - (nZoneOffset + nDSTOffset), status );
|
@ -1,3 +1,20 @@
|
||||
-------------------------------------------------------------------
|
||||
Thu Jan 14 08:44:52 UTC 2021 - Andras Timar <andras.timar@collabora.com>
|
||||
|
||||
- Fix bsc#1179025 - LO-L3: LibreOffice crashes opening a PPTX
|
||||
* bsc1179025.diff
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Tue Jan 12 10:32:53 UTC 2021 - Andras Timar <andras.timar@collabora.com>
|
||||
|
||||
- Fix bsc#1178807 - LO-L3: Text box from PowerPoint renders vertically instead of horizontally
|
||||
* bsc1178807.diff
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sat Jan 2 11:07:57 UTC 2021 - Callum Farmer <gmbr3@opensuse.org>
|
||||
|
||||
- Add icu68.patch: fix build with ICU 68
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Sat Dec 19 21:58:35 UTC 2020 - Andras Timar <andras.timar@collabora.com>
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
#
|
||||
# spec file for package libreoffice
|
||||
#
|
||||
# Copyright (c) 2020 SUSE LLC
|
||||
# Copyright (c) 2021 SUSE LLC
|
||||
#
|
||||
# All modifications and additions to the file contributed by third parties
|
||||
# remain the property of their copyright owners, unless otherwise agreed
|
||||
@ -102,6 +102,12 @@ Patch4: 0001-Upgrade-liborcus-to-0.16.0.patch
|
||||
# LO-L3: Shadow effect(s) for table completely missing - part 1 and 2
|
||||
Patch5: bsc1178944.diff
|
||||
Patch6: bsc1178943.diff
|
||||
# Fix build with ICU 68
|
||||
Patch7: icu68.patch
|
||||
# Bug 1178807 - LO-L3: Text box from PowerPoint renders vertically instead of horizontally
|
||||
Patch8: bsc1178807.diff
|
||||
# Bug 1179025 - LO-L3: LibreOffice crashes opening a PPTX
|
||||
Patch9: bsc1179025.diff
|
||||
# try to save space by using hardlinks
|
||||
Patch990: install-with-hardlinks.diff
|
||||
# save time by relying on rpm check rather than doing stupid find+grep
|
||||
@ -962,6 +968,9 @@ Provides %{langname} translations and additional resources (help files, etc.) fo
|
||||
%patch4 -p1
|
||||
%patch5 -p1
|
||||
%patch6 -p1
|
||||
%patch7 -p1
|
||||
%patch8 -p1
|
||||
%patch9 -p1
|
||||
%patch990 -p1
|
||||
%patch991 -p1
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user