Age | Commit message (Collapse) | Author |
|
Change-Id: Ied157d8d4bc9b57cfa17716453189ddf48cba641
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128485
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
Change-Id: I477c5a72dd9618a2b0f3e91a96209ae3f6b3d1aa
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128484
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
Change-Id: I16a585abf4805d87a2eeb4e3e9d9bd9f2697b838
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128472
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
It missed some occurrences of 0 when only looking into uninstantiated template
code, as Clang doesn't model them with an ImplicitCastExpr, even if the target
is known to be a (dependent) pointer type.
Looking into all template instantiations of course carries the risk that a given
use of 0 is meant to be interpreted as a pointer in some and as an integer in
other instantiations. But the only case where that happened in the current code
base is RegistryValueList::getElement (include/registry/registry.hxx), where {}
is arguably a better choice anyway. (And which would presumably also hold for
any future such cases.)
Change-Id: I708bcfc8bedc0a49c9282d7814eb325afa29905c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128462
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: I7df464107e692817ef80d887a4addea618d6cc72
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128356
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
|
|
(*) make all the methods that require an external mutex take a
std::unique_lock as a parameter, so that call sites cannot forget
(*) make the forEach method drop the lock when firing listener methods,
to reduce the odds of deadlock
Change-Id: I0a80e3b3d1c1c03b7de4a658d31fcc2847690903
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128415
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
most of these are never used, so rather store a pointer to a shared
empty vector
Change-Id: If5b8b82235171769420615147a0e0b316c237874
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128404
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
when empty, it is only a single pointer big anyway
Change-Id: I3e45dd705c4bef3799435617db1a4192d62860e4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128403
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
When rendering in ResolutionIndependentLayout mode keep the scaled
glyph positions as floating point all the way down to the renderer
Change-Id: I02415f18c26737a886751972f472b499a25c776b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128379
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
Change-Id: I6b8c815fda3a48917467719432071c0716e3e9ab
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127338
Tested-by: Caolán McNamara <caolanm@redhat.com>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
Change-Id: If75c3448776743f1b9efbf84a487cfc0c75364ab
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128365
Tested-by: Caolán McNamara <caolanm@redhat.com>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
no logic change intended
Change-Id: Id24fb2647e2e6c00a485165edd7fc265ad090c23
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128373
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
Use ThrowIfFailed and small refactor
Change-Id: I0bcd57c26cd169380364cdaaaa76e764b9662d07
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128362
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
Change-Id: I20bbb0e252ffd09901f587599430e715dbe977b3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128300
Tested-by: Caolán McNamara <caolanm@redhat.com>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
Rely on the cached primitives in VOC.
But only enable it for calc and draw right now, by adding a flag
at the SdrModel level.
This way we can leave it disabled for writer, where it definitely doesn't
work.
Change-Id: I11ca4836eb773c0f078cdb82056c6e0309d15a8b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128319
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I849e945db651c5064b4ca0c1d15e9fa0066eeea8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128299
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
Change-Id: Ieafdbe14a3e51bc5d804e3cfe3c6f5757bef3ff0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128216
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
|
|
and
cid#1497093 Uninitialized scalar field
Change-Id: Ie6a7f5032a6a3eda8480c1f3a3a0d0f2e831a53a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128295
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
In the document from bsc#1183308, which contains a large number
of custom shapes, I get a noticeable time spent in the callchain
EnhancedCustomShapeEngine::render() -> SdrObject::NbcSetStyleSheet()
-> sdr::properties::GroupProperties::SetStyleSheet() ->
SdrObject::SetStyleSheet(), which means that a non-broadcast call
ends up in a broadcast one, and the time is spent in
SvxShape::Notify(). And it even seems that nobody actually cares
about the broadcasts, possibly because the SfxStyleSheet* value
is actually the same.
I originally tried to make SdrObject::SetStyleSheet() return
if the SfxStyleSheet* is the same, but that fails the test from
717dc8e3575a18e1e. I don't quite understand the reasoning for that,
but solve it then by changing the code to call the Nbc variant
if that's enough.
Change-Id: I096a6799a0dc51c31ec3b0ba070c7f99ec96ac5d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128048
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
|
|
but not in the saved log file
Change-Id: I65c580e7b8762b654f1812c96bc53841b882a960
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128087
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
|
|
Change-Id: I04ded03b3dd16627959a6451696a2e3392c17f36
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128215
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
|
|
Flush() turns into a sync() on the device, which is pretty slow.
Most of the time all we actually want to do is to flush the internal
buffers from the SvStream.
So expose the FlushBuffer method and use that where possible.
And also means we don't need the mbDontFlushOnClose flag on SvStream
any more.
Change-Id: Ibe089b88b325f0fdc565200a97ce72cd26b7fcfb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128214
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: If3f8c33601f7823c87b75d601e0b8620d4bfe197
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128205
Tested-by: Tomaž Vajngerl <quikee@gmail.com>
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
|
|
Using anyLess() still has quite some cost with bsc#1183308, this
makes the cost almost unnoticeable.
Since some values of Any are not handled, return empty std::optional
for those cases.
Change-Id: Ib45a81441e8bb456c4749f9bc53a981f09bbb1a5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128109
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
|
|
The document contains a complex graphic consisting of many shapes,
and SfxItemPool tries to avoid duplicates by checking for equality.
And SdrCustomShapeGeometryItem contains a UNO sequence as data,
and comparing those is non-trivial. Make the item sortable, which
should make things faster, and use anyLess() for the ordering.
Additionally first check the size of the list of property names
the class keeps for an easy fast return.
Change-Id: I49220e589b6510c6f1f40d584301be83367fb5a4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128047
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
|
|
The PutValue() function didn't update the property map properly
the same way the constructor and other functions do.
Change-Id: I107f7095077d888cd9701d87a6e536339b0257b1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128104
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
|
|
This should often the case, and should be way faster than the UNO
data comparison.
Change-Id: Ied648d75779ef3aafd293c36906a1bab66bdeade
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128098
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
|
|
Change-Id: I3df5c5f937361a7a0283a05a7b9c6669bb404c1e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128183
Tested-by: Jenkins
Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
|
|
Change-Id: If046e624d6fe5a711aec803652800a4a3830ec74
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128181
Tested-by: Julien Nabet <serval2412@yahoo.fr>
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
|
|
Change-Id: I20c303788e576a29574a696cb20c9e8a235233b1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126804
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
The listfonts utility gets the details of all available fonts on the
system. It prints out the information, or stores it in a text file,
if a file name is passed to it as an argument.
An example invocation to store the information in a file named
fonts.txt is:
./bin/run listfonts fonts.txt
To get the correct font metrics, you actually have to get the font
metric from the system, and then set it as the current font of
OutputDevice, then get the font metric (which corrects a variety of
things like the orientation, line, height, slant, etc. - including
converting from logical coords to device coords).
The information is reported for each font family. On the top is the
family name, and then comes other details. Here is a report for an
example font:
FreeSans
Family type: swiss
Style name: Regular
Weight: normal
Italic: none
Pitch: variable
Width type: normal
Alignment: top
Charset: UCS2 (aka Unicode)
Symbol font? no
Ascent: 13
Descent: 3
Internal leading: 0
External leading: 2
Line height: 16
Slant: 0
Bullet offset: 0
Fullstop centered? yes
Orientation: 0 degrees
Quality: 18477
There is a -v (or --verbose) option that output font features.
Change-Id: Icfc4da96459bea47c4233a5509496566c04d460c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127365
Tested-by: Jenkins
Reviewed-by: Hossein <hossein@libreoffice.org>
|
|
Upon opening a Writer document containing some languages that do not
use hyphen, an alert is created with the text:
'Missing hyphenation data Please install the hyphenation package for
locale "ab_CD".'
in which 'ab_CD' is the locale.
This patch removes the warning for these languages, that do not use
hyphenation:
* Arabic script languages (except Uighur)
+ Persian (Farsi)
+ Kashmiri
+ Kurdish (Central Kurdish and Southern Kurdish with Arabic script)
+ Punjabi
+ Sindhi
+ Malai
+ Somali
+ Swahili
+ Urdu
"Words are not hyphenated in Arabic language text, however hyphenation
is possible for Uighur text written in the Arabic script"
https://www.w3.org/International/i18n-tests/results/word-break-shaping
The list from MS documents is lenghty, but some of the languages are
were not available in LibreOffice, so they are ommited:
https://docs.microsoft.com/en-us/typography/script-development/arabic
There were languages like Hausa and Kanuri from Nigeria that use both
Latin and Arabic script, but only Latin script was listed in the
LibreOffice languages, so they were also ommited.
* CJK languages
+ Japanese
+ Korean
+ Chinese
+ Yue Chinese
"CJK languages differ from European languages in that there are no
hyphenation rules"
https://tug.org/TUGboat/tb25-0/cho.pdf
* Vietnamese
"In Vietnamese all words consist of single syllables, so they are
often very short; hyphenation is not allowed at all."
https://tug.org/TUGboat/tb29-1/tb91thanh-vntex.pdf
Hyphenation is declined in Vietnamese orthography since 1975
https://www.quora.com/When-did-hyphenation-decline-in-Vietnamese-orthography
The fix for Japanese (tdf#143422) was previously done in:
53d5555f13371252874ec962dee4643168d26780 and the functionality is
preserverd with the current patch.
An alternate approach would be adding all the unicode scripts,
specifying the script for each langauge, and decide upon the script
(mostly) and not (only) the language.
More information about the hyphenation usage of many scripts can be
found in:
https://r12a.github.io/scripts/
This is the list of Unicode scripts:
https://unicode.org/standard/supported.html
https://en.wikipedia.org/wiki/Script_(Unicode)#List_of_scripts_in_Unicode
Change-Id: I7d2b4ee55a0893d1f0d1f9cd3b7cc037a49589b6
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/126435
Tested-by: Jenkins
Reviewed-by: Eike Rathke <erack@redhat.com>
|
|
Change-Id: Ieaf94ce6ce524c4c017cbe1bb82fa75bd5f7e801
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128094
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
We don't need E3D_INVENTOR_FLAG, we can just check if the SdrObjKind is
in the right range.
Which exposes some dodgy code in DrawViewShell::GetMenuStateSel
SfxItemState::DEFAULT == rSet.GetItemState( OBJ_TITLETEXT ) ||
SfxItemState::DEFAULT == rSet.GetItemState( OBJ_OUTLINETEXT ) ||
which has been there ever since
commit f47a9d9db3d06927380bb79b04bb6d4721a92d2b
Date: Mon Sep 18 16:07:07 2000 +0000
initial import
just remove that.
In SwFEShell::ImpEndCreate() move some logic around to avoid
using an out-of-range SdrObjKind value
Change-Id: I4620bfe61aca8f7415503debe3c84bfe5f4368a0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127763
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
to AttributeProperties, since it only applies to AttributeProperties
and its sub-classes.
Change-Id: I01527f75815659d1cf2a9859888ef04c561633a4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128092
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
These methods are part of the implementation of DefaultProperties,
so they do not belong in a superclass
Change-Id: I553f5d5b771aa0a408a8ade25f009cc56f829c72
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128091
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I5088874be3fbf2ac114f5e5d0cd9571a3caf48dc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128040
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
|
|
Change-Id: I461449959fffa8948bf4321a6c3114505d87a149
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127997
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
...which caused e.g. CppunitTest_chart2_export to emit lots of
> warn:sal.osl:3446618:3446618:sal/osl/unx/module.cxx:155: dlopen(.../instdir/program/libchartcorelo.so, 257): .../instdir/program/libchartcorelo.so: undefined symbol: _ZTI12SvxShapeRect
Change-Id: I26b0ad58ad6fa577e0e8299dde80bcac444f9504
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128012
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
online.git's unit-calc under sanitizers fails without this, but also
seen at <https://ci.libreoffice.org/job/lo_ubsan/2254/console>:
> warn:sal.osl:30805:30805:sal/osl/unx/module.cxx:155: dlopen(/home/tdf/lode/jenkins/workspace/lo_ubsan/instdir/program/libchartcorelo.so, 257): /home/tdf/lode/jenkins/workspace/lo_ubsan/instdir/program/libchartcorelo.so: undefined symbol: _ZTI16Svx3DSceneObject
Change-Id: Ibebb839751c1048ab44110dd70e2140f8d5dc6b9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127996
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
|
|
Expands previous idea from a9c5c0d814a266096483572b84c72875ef8efd77
(tdf#133037 OOXML shape import: camera rotation along Z)
and uses it also for shapes that have a true bUseRotationTransform flag
Also fixes same Z rotation exporting twice from InteropGrabBag to
both spPr and textBody causing text overrotating on roundtrip.
Change-Id: If0f192af029ca86b932a63613f961be1f5003c5b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127880
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
Change-Id: I815fb3ce366c93b81f60d19eeed906dc7288708a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127030
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
|
|
The context menu for Calc charts would call into
GraphicFilter::ExportGraphic(), which has explicit code for e.g. SVG,
but not for PDF. The graphic exporter to PDF is only meant to work with
images backed with PDF data, not with all shapes.
Fix the problem by explicitly handling PDF in
GraphicHelper::SaveShapeAsGraphic() in svx/, and invoking the normal PDF
export in that case. Continue to fall back to XGraphicExportFilter for
other formats.
This requires passing down the current document from sc/.
Change-Id: Ia5f78bffa1d26989bb0ad3ed265b922e609f076f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127969
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
|
|
which has much better performance for
(a) inserting stuff at the front
(b) appending large numbers of items
something that happens when constructing large charts - shaves 5% off
the load time for large sample bar chart
Change-Id: I3ebccbfdc75e4df3ec88eb2dde46acfe0ab0ae7d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127940
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
It was introduced in commit 0c38ca4412531adafdb9cbac9dfa7f6f8e0d9882
author Daniel Boelzle <dbo@openoffice.org>
date Mon Nov 18 08:59:15 2002 +0000
#104560# outlining of msvc mapfile symbols
cppuhelper/source/msvc_win32_intel.map was dropped in commit
b222aa8fff63c803781703e72366ca203f3e6a76
author Matúš Kukan <matus.kukan@gmail.com>
date Tue Aug 23 15:03:09 2011 +0200
cppuhelper: convert to gbuild
The symbol '??0OWeakObject@cppu@@QEAA@XZ' is still exported from
cppuhelper3MSC.dll (checked using dumpbin, that number and names of
exported symbols are the same), thanks to the CPPUHELPER_DLLPUBLIC
macro at the class, that expands to __declspec(dllexport) [1], [2].
Hence, this patch is expected to not cause an ABI change.
[1] https://docs.microsoft.com/en-us/cpp/cpp/dllexport-dllimport
[2] https://docs.microsoft.com/en-us/cpp/build/exporting-from-a-dll-using-declspec-dllexport
Change-Id: I895c350970f0e4e0adc1ba90f60925f8d4ba3941
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127471
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
In this part, oox module has been modified in order to prepare
for WPG handling during OOXML import. Note: Wpg is the drawingML
equivalent of v:group, supporting text boxes in the group.
1) Added new parameter for WpgContext to support nested
Wpg shapes, and WPS enabled for the WPG member shapes.
2) A bug has fixed, where group member line shape and
connector shapes have wrong positions before in the group.
3) Unit tests had to be modified, and 3 of them disabled
temporarily due to missing Writerfilter implementation (what
will be the next commit)
Now group shapes can have textboxes and the text is imported
for that, but complex content is still missing (this will be
fixed in writerfilter by the next commit).
Known issue: WPG shapes with textboxes in floating table
have issues during import at floating table conversion, so until
this is not fixed this function is disabled for shapes in tables
(will be fixed a follow-up commit later).
Follow-up to commit 19394a924fdc486202ca27e318385287eb0df26f
"tdf#143574 sw: textboxes in group shapes -- part 4".
Change-Id: I71032187697807087bd8f27f7c3a7b052e174bd7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124964
Tested-by: László Németh <nemeth@numbertext.org>
Reviewed-by: László Németh <nemeth@numbertext.org>
|
|
to serve as a shared/common base class, so I can plumb
SvxShape types through chart2.
Change-Id: I8758fff1599c92a214b334ee44cf7b4e582c1915
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127873
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: I922778e8ced0ad922d90a153b0eda47abbec94ca
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127868
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
Change-Id: Ia7d68c07d44aaa9ce44fe4e7ed72987e96433269
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127866
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
|
|
... and avoid OUStringBuffer::toString when the temporary is used
for checking current buffer content
Change-Id: I114178f3e74ca3e4a3e517763f9eaab4797b7deb
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/127478
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|