Age | Commit message (Collapse) | Author |
|
In the verious LibreOffice samples attached to tdf#156470, it appears
that LibreOffice spends a lot of time the GetTextArray() calls in
SvxFont::QuickGetTextSize(). So add logging to determine if any of
the GetTextArray() calls are returning unusual sizes.
Change-Id: Ie6f0fcc85396b47342b6a93180d4bc9873420931
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/155072
Tested-by: Jenkins
Reviewed-by: Patrick Luby <plubius@neooffice.org>
|
|
Followup to:
commit 3af30bafbedb8eb481024efb35cb7876c63d26dc
Author: Khaled Hosny <khaled@libreoffice.org>
Date: Thu Jul 27 19:03:28 2023 +0300
sw: Handle surrogate pairs when tweaking script info
and:
commit d6efe8c302b81886706e18640148c51cf7883bbf
Author: Khaled Hosny <khaled@libreoffice.org>
Date: Thu Jul 27 20:39:22 2023 +0300
tdf#112594: Group NNBSP with the Mongolian characters after it
Change-Id: Ie273c457e4f3ed31a3372bc8eb0eb0055c1b97b1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/155053
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
|
|
Originally, Replace Custom Styles changes styles to text body by entering BuiltText. Since styles change to text body is removed from BuiltTest, it is converted independently.
Now, conversion is applied even during typing because m_aFlags.bChgUserColl is true (its default value) during typing. Therefore, its default value is changed to false.
Change-Id: I8ce067b311922b5e1bdcd84036229c369b50a977
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/154144
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
Narrow No Break Space has special uses in Mongolian, so we want to make
sure it is in the same portion as the Mongolian text, even when it comes
after text from another script group.
We limit this to Mongolian to minimize potential side effects.
Change-Id: Idb4c64cec8581e56acfe9bbb8adf4ddc213aaf19
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/155000
Tested-by: Jenkins
Reviewed-by: خالد حسني <khaled@libreoffice.org>
|
|
Change-Id: I0c7315357a7a9ec446b06cf33420c20a58a8ec42
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/154958
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
By using OUString::iterateCodePoints() instead of accessing individual
UTF-16 code units that might be surrogate pairs.
Change-Id: I5e3e513a788f0c939f96b0521fed16fe4848a053
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/154875
Tested-by: Jenkins
Reviewed-by: خالد حسني <khaled@libreoffice.org>
|
|
The first (and only) argument to KernArray constructor is nSubUnitFactor
not array length as the code here seems to imply.
Change-Id: Ie89c41d07f1aa13be595ead604df82ad775df433
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/154799
Tested-by: Jenkins
Reviewed-by: خالد حسني <khaled@libreoffice.org>
|
|
One way of getting text widths should be enough.
Change-Id: I21e24c3f69a116e5210685d76268936219aae279
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/154639
Tested-by: Jenkins
Reviewed-by: خالد حسني <khaled@libreoffice.org>
|
|
Replace lcl_ImplCalcRotatedPos by Tools::Point's RotateAround.
Signed-off-by: Dr. David Alan Gilbert <dave@treblig.org>
Change-Id: Id1d8baebafb019f1bc574acc71078150442f20dd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/154394
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
In PaintBullet, use Tools::Point's RotateAround instead of open coding.
Signed-off-by: Dr. David Alan Gilbert <dave@treblig.org>
Change-Id: I4f5a50a70d8fcadd2e5af60e365de80f2e9a271e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/154393
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Remove our own Rotate function by calls to Tools::Point's
RotateAround method.
Add a comment on RotateAround to emphasise that the point rotated
is the parameter and the This object is used as the origin.
Using TOOLS_DLLPUBLIC to fix link error (as suggested by Arnaud)
Added tl to slideshow (from Neil)
Signed-off-by: Dr. David Alan Gilbert <dave@treblig.org>
Change-Id: I296bbdf910d262401bfa18f0fc4f431b9e79b8f4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/154392
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
... into 3 parts:
EnsureStructureElement/InitStructureElement/BeginStructureElement
So EnsureStructureElement and BeginStructureElement/EndStructureElement
can be called multiple times for the same object, passing in a unique
key and PDFExtOutDevData will only create the element once.
InitStructureElement will be used exactly once for each object when its
actual content is exported.
In PDFExtOutDevData rely on the indexes being the same here and in
PDFWriterImpl, because then only PDFExtOutDevData needs to maintain the
map from key to index.
Change-Id: Idea6e34627fe559038cf13cf01dafe84b759e3c8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/154357
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
|
|
Enabling this feature on a list level makes all numbered sublevels, that
constitute the number of this level, to use Arabic numerals. This doesn't
change the labels of other levels: e.g., if level 1 uses A,B,C; level 2
uses i,ii,iii; level 3 uses a,b,c, and is "Legal"; and level 4 uses 1,2,3;
then a list may look like
A. Something
A.i. Some subitem
A.ii. Another subitem
1.2.1. This is a "Legal" sub-subitem
A.ii.a.1. And its child
This improves interoperability with Word.
This change introduces document model, ODF and OOXML import and export.
In ODF, a new boolean attribute of 'text:outline-level-style' element,
'loext:is-legal', is introduced; its default value is "false".
Change-Id: I5ae9f970864854c7e84c4b2f7ce46634b3ef104e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/154288
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
Change-Id: I0664abae6f83736678108fab31dd119fae811054
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/154082
Tested-by: Jenkins
Reviewed-by: Maxim Monastirsky <momonasmon@gmail.com>
|
|
and we don't have to change the xcs in that case
Change-Id: I246d81e4eccf3ce390b179ad6473db6ee4e4fdbc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153950
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
Change-Id: I0198327d235bdb4048e002aab211e20d1701fa6c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153571
Tested-by: Jenkins
Tested-by: Caolán McNamara <caolan.mcnamara@collabora.com>
Reviewed-by: Caolán McNamara <caolan.mcnamara@collabora.com>
|
|
Change-Id: I8d3402a69237b665462e04440ad73fe29e2133db
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153807
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I95ab7581dec35b113cb657ce8e5ee27c89c73593
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153746
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
in temporory mode. Show the author and creation/modification
date of the the comment only in temporory mode. In edit mode, or
visible mode, shows only the original text.
Change-Id: I2c5856e4c6a813dbef4ad55de319f922daa57f67
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153358
Tested-by: Jenkins
Reviewed-by: Maxim Monastirsky <momonasmon@gmail.com>
Reviewed-by: Balazs Varga <balazs.varga.extern@allotropia.de>
|
|
OUStringLiteral should be declared constexpr, to enforce
that it is initialised at compile-time and not runtime.
This seems to make a different at least on Visual Studio
Change-Id: I1698f5fa22ddb480347c2f4d444530c2e0e88d92
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153499
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
When compressions CJK punctuation, compress also full width versions to
match Word behaviour.
Change-Id: Ic35cfcbacca1974b7241d657f078148bac06478e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153530
Tested-by: Jenkins
Reviewed-by: خالد حسني <khaled@libreoffice.org>
|
|
We don’t want to limit this to CJK chars, since variation selectors can
be used with Emoji, mathematical symbol, and possibly more in the
future, and in all these cases the character + variation selector is
considered one unit.
Change-Id: Ifc41183ec27a9e3715058cc0b5865a5bd4fcaa69
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153452
Tested-by: Jenkins
Reviewed-by: خالد حسني <khaled@libreoffice.org>
|
|
Check Variation_Selector Unicode property instead of hard-coding
variation selector classes. This now handles also Mongolian Variation
Selector.
Change-Id: I2dd5c4770d7bb9bf4c1e9edc43926fe0863b0da7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153460
Tested-by: Jenkins
Reviewed-by: خالد حسني <khaled@libreoffice.org>
|
|
Signed-off-by: Henry Castro <hcastro@collabora.com>
Change-Id: I8abd816ec7c115d5a1f17d3b68e3e758cea02d82
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/148002
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153404
Tested-by: Jenkins
|
|
Add option to ignore line breaks, and
draw the paragraph as single line.
Signed-off-by: Henry Castro <hcastro@collabora.com>
Change-Id: I957c3462f6dabe7c1a3322dcbe6753c0c5adc851
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/148001
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153400
Tested-by: Jenkins
|
|
Signed-off-by: Henry Castro <hcastro@collabora.com>
Change-Id: I66cad37e1d3728369f0a08195bf85e6c0d50f0ff
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/148000
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153399
Tested-by: Jenkins
|
|
We were requiring ICU 4.6 which was released in 2011, and ifdef'ing our
way through newer ICU versions. ICU is a core dependency and it makes no
sense to build LibreOffice with such ancient versions of it.
This change requires ICU 66 (released in 2020), and removes all the
ifdefs for older versions. There are more cleanups to do, but these will
be done separately.
Change-Id: I2e4f7608a08f4d531b0a4c74bbfdf91a451f833f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153387
Tested-by: Jenkins
Reviewed-by: خالد حسني <khaled@libreoffice.org>
|
|
The purpose of this flag is to draw a paragraph
into a single line ignoring line breaks
Signed-off-by: Henry Castro <hcastro@collabora.com>
Change-Id: I0a01e6d4db51d43707f7cdd0ab9d9cf3288e2221
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/147999
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153391
Tested-by: Jenkins
|
|
constexpr typename o3tl::typed_flags<T>::Wrap operator&(E, E) [with E = LOKSpecialFlags; typename o3tl::typed_flags<T>::Wrap = o3tl::is_typed_flags<LOKSpecialFlags, 119>::Wrap]: Assertion `o3tl::detail::isNonNegative( o3tl::to_underlying(lhs))' failed.
Signed-off-by: Henry Castro <hcastro@collabora.com>
Change-Id: I8617c877ad2d705988f4dea0e54442e5002a43be
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/151533
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
(cherry picked from commit cce4ad3dd4d678e1cc6bf7523f5375e10b100147)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/151516
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153362
Tested-by: Jenkins
|
|
The function "IsRightToLeft" fails in Hebrew language
when Calc has a layout RTL, add additional condition
to check the layout.
Signed-off-by: Henry Castro <hcastro@collabora.com>
Change-Id: If3972b80770a7aa6073881487e411a34cc6871d1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/150758
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/151973
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153350
Tested-by: Jenkins
|
|
The function "IsRightToLeft" fails in Hebrew language
when Calc has a layout RTL, create a special flag to handle.
Signed-off-by: Henry Castro <hcastro@collabora.com>
Change-Id: I661f49dc5990f39807c6dba10970dea8c502643c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/151145
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/151971
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153322
Tested-by: Jenkins
|
|
Change-Id: If68b80bae13b2e507f8286f6e316d86c0d0255f9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/150845
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
As part of that, language changes in the document's body are
no longer applied to comments, as that would be a DF. Instead,
the default language of comments is controlled via the style
(see tdf#153805 for the use case).
Change-Id: Icfa9a7334b52fe74292e82fa8daa01a15197e384
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153158
Tested-by: Jenkins
Reviewed-by: Maxim Monastirsky <momonasmon@gmail.com>
|
|
Change-Id: Icf30e1f30fe6bf6a7d96d14b975954613cd68b70
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153157
Tested-by: Jenkins
Reviewed-by: Maxim Monastirsky <momonasmon@gmail.com>
|
|
- Style objects for comments are stored in a dedicated stylesheet pool,
and constantly updated from the "real" styles using modification
broadcasts. In theory, it should be possible to use same objects for
both Writer core and EditEngine, as they use separate item ranges. But
unfortunately SwDocStyleSheetPool isn't really a styles container, but
just a wrapper around Writer's core styles, with a single mxStyleSheet
member that is filled each time with data from different styles (while
EditEngine expects different styles to be represented by different
objects).
- EditEngine switched to allow duplicate listeners for styles - one per
paragraph. The use case is 2 paragraphs of the same style, and then one
of them is switched to another style. In that case we still need to keep
listening to the former style for the other paragraph. There is probably
some opportunity for optimization, but it should be good enough for now.
- Copying formatted text from document's body doesn't preserve style
assignment for now. The editeng RTF import should be tweaked to not
insert styles into our "special" stylesheet pool (or somehow forward
them to Writer's core style handling) before we can enable this part.
Change-Id: Ib67c5388f9cd078c73ec0d453017f815843161ed
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153156
Tested-by: Jenkins
Reviewed-by: Maxim Monastirsky <momonasmon@gmail.com>
|
|
Transparency should be set to false if a color is present, but not
with COL_TRANSPARENT. Compare with what is done for shape text in
VclProcessor2D::RenderTextSimpleOrDecoratedPortionPrimitive2D.
Change-Id: I5e4c8e53b53a363813ced50358c5ee795cdb61dd
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153107
Tested-by: Jenkins
Reviewed-by: Maxim Monastirsky <momonasmon@gmail.com>
|
|
Because a style might define a different langauge. This is
similar to what we do for DF in SetAttribs/SetParaAttribs.
See also alternative approach in SwLangHelper::SetLanguageStatus
or SwAnnotationWin::SetLanguage.
Change-Id: I38caa716ec95958580f4ce0ede70eff5d1024e13
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153108
Tested-by: Jenkins
Reviewed-by: Maxim Monastirsky <momonasmon@gmail.com>
|
|
by avoid conversion of static locale data from sal_Unicode to OUString
data - we can declare the data as OUStringConstExpr arrays and then
no conversion is necessary.
Here we trigger a problem - EditDLL has static data that tends
to get torn down __after__ the i18npool shared library has been
removed from memory, which means it tries to access OUStringLiteral
objects that no longer exists.
So use vcl::DeleteOnExit to explicitly clear that on application
shutdown.
Change-Id: Ie4bfcef7eb4656316ea825474ac42f85844d1dcc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153060
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Editengine now gets the background color from the current view instead
from a global variable
Change-Id: I98a0fccf4d0c83f4dabf8e534a9228b8a5e271d7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152996
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Paris Oplopoios <parisoplop@gmail.com>
(cherry picked from commit 7baa475342b67c10537e11da37b8862648679b02)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/153073
Tested-by: Jenkins
|
|
Change-Id: Icf65288a7e53257008129b71e8d716b0b0c7f5fa
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152868
Tested-by: Paris Oplopoios <parisoplop@gmail.com>
Reviewed-by: Paris Oplopoios <parisoplop@gmail.com>
|
|
This adds support to import and export various border (lines)
theme color properties.
SvxBoxItem needed to be fixed, because it can happen that the
BorderLine is not yet initialised and we already set the border's
ComplexColor. Now there is a maTempComplexColor inside SvxBoxItem,
which stores the ComplexColor until the specific BorderLine is
initialized.
In addition add roundtrip test for import and export cycle.
Change-Id: Idd307a3adaf364745aed8fc8540bf72ef4948198
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152833
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
|
|
also fix theme export - change scheme enum type name "hlink" to
"hyperlink" and "folHlink" to "followedHyperlink"
Change-Id: Id5435d59cd51352efc4a4a8e333ec1ff45847a6f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152782
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
|
|
When accessibility is enabled, Calc will add tens of thousands of
listeners.
We then spend a significant chunk of time creating SvCTLOptions objects
(attached to ImpEditEngine) and adding and removing those objects from
the related listener lists.
But the required information is already globally cached by the officecfg
module, so we can avoid that overhead and just fetch it directly from
officecfg.
Change-Id: I7ff55fd7c4926866eb7086812275ba8bd6e84c75
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152645
Tested-by: Jenkins
Reviewed-by: Patrick Luby <plubius@neooffice.org>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
This adds support for theme colors for multiple properties that
are stored in SvxBoxItem and SvxBrushItem / XFillColorItem. For
those items the ComplexColor member variable was introduced.
The UNO properties for the colors are added.
The properties with the added support includes paragraph border
and background + styles, page border and background, frame border
and background + styles.
The ThemeColorChanges has been extended to support changing the
colors for those propertes.
Color picker and tab pages have been fixed so they pass or set
the theme color properties to the items.
Change-Id: Id27272f5c4a448703a62a759d829e8a9540066e4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152397
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
|
|
Calc now uses different colors based on the current view theme to paint
tiles when using tiled rendering
Change-Id: I1ca84371141ff026ad49ec362518ca13c59c7c6e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152137
Tested-by: Paris Oplopoios <parisoplop@gmail.com>
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
(cherry picked from commit f4eb56b8b9ff3492e0a02fb76eb4ea7b851f4774)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152440
Tested-by: Jenkins
Reviewed-by: Paris Oplopoios <parisoplop@gmail.com>
|
|
This reverts commit 5e68d6cfade45f40b1ad46025a81afe4cb8dd337.
Reason for revert: Seems like outside users have been using this API
Change-Id: I8814cf1eb4f000eeb4cbbb5db9c282d001465993
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152441
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
There is no need for it to be an UNO interface anymore (ever since
we started supporting dynamic_cast on UNO objects).
Which means that XImportFilter2 also needs become a C++ interface.
Change-Id: Ice2db0f098271bba32b199bd083b08cb8410ce93
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152388
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
which flushed out an inconsistency in how SID_NUMBER_TYPE_FORMAT was being used
Change-Id: Ib59ae4c4950136703d18d7485db432a39e3dc39c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152300
Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: Icc1cbd2717034c87bdaea1b62253b001243c6652
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152290
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I6c54c1276b36cbc71417486ffcee2ef9ef0cff7b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/152270
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|