summaryrefslogtreecommitdiff
path: root/vcl/inc
diff options
context:
space:
mode:
authorMiklos Vajna <vmiklos@collabora.com>2019-03-22 17:57:46 +0100
committerMiklos Vajna <vmiklos@collabora.com>2019-03-22 18:45:43 +0100
commit8308d6a38ff283a2feebf84a95198159887cd685 (patch)
treefc47906c9c11e9bc0ad9f7e677820074ff48a7c2 /vcl/inc
parenta05a55ddcfcb6ae18dad9ca5c5fb5ee0ab926b01 (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.hxx2
-rw-r--r--vcl/inc/sallayout.hxx4
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&);