diff options
author | Miklos Vajna <vmiklos@collabora.com> | 2019-03-22 17:57:46 +0100 |
---|---|---|
committer | Miklos Vajna <vmiklos@collabora.com> | 2019-03-22 18:45:43 +0100 |
commit | 8308d6a38ff283a2feebf84a95198159887cd685 (patch) | |
tree | fc47906c9c11e9bc0ad9f7e677820074ff48a7c2 /vcl/inc | |
parent | a05a55ddcfcb6ae18dad9ca5c5fb5ee0ab926b01 (diff) |
Related: tdf#124109 vcl: make glyph item caching work with kashida glyphs
This was broken because GenericSalLayout::LayoutText() sets the
SalLayoutFlags::KashidaJustification flag as a side-effect of building
the glyph list. So in case we cache the list and not build it, the flag
will be missing. This means that later in
GenericSalLayout::ApplyDXArray() kashida glyphs won't be inserted.
With this, the workaround in sw can be removed.
Change-Id: Ic18211bf50ca673daa238e8950a381915e4b3096
Reviewed-on: https://gerrit.libreoffice.org/69566
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
Diffstat (limited to 'vcl/inc')
-rw-r--r-- | vcl/inc/impglyphitem.hxx | 2 | ||||
-rw-r--r-- | vcl/inc/sallayout.hxx | 4 |
2 files changed, 4 insertions, 2 deletions
diff --git a/vcl/inc/impglyphitem.hxx b/vcl/inc/impglyphitem.hxx index 24690216db63..987df438894c 100644 --- a/vcl/inc/impglyphitem.hxx +++ b/vcl/inc/impglyphitem.hxx @@ -23,6 +23,7 @@ #include <tools/gen.hxx> #include <vcl/dllapi.h> #include <vcl/glyphitem.hxx> +#include <vcl/outdev.hxx> #include <vector> #include "fontinstance.hxx" @@ -103,6 +104,7 @@ public: private: mutable rtl::Reference<LogicalFontInstance> m_rFontInstance; + SalLayoutFlags mnFlags = SalLayoutFlags::NONE; SalLayoutGlyphsImpl(SalLayoutGlyphs& rGlyphs, LogicalFontInstance& rFontInstance) : m_rFontInstance(&rFontInstance) diff --git a/vcl/inc/sallayout.hxx b/vcl/inc/sallayout.hxx index e71359e48165..535838aae645 100644 --- a/vcl/inc/sallayout.hxx +++ b/vcl/inc/sallayout.hxx @@ -73,7 +73,7 @@ public: bool PosIsInAnyRun( int nCharPos ) const; }; -class ImplLayoutArgs +class VCL_DLLPUBLIC ImplLayoutArgs { public: // string related inputs @@ -158,7 +158,7 @@ private: bool mbIncomplete; }; -class VCL_PLUGIN_PUBLIC GenericSalLayout : public SalLayout +class VCL_DLLPUBLIC GenericSalLayout : public SalLayout { friend void MultiSalLayout::AdjustLayout(ImplLayoutArgs&); |