diff options
author | Khaled Hosny <khaledhosny@eglug.org> | 2016-11-06 23:07:31 +0200 |
---|---|---|
committer | Khaled Hosny <khaledhosny@eglug.org> | 2016-11-07 01:16:55 +0200 |
commit | 979029ee6532791e39adea3b7078ab88386f0ecf (patch) | |
tree | 6734d00df473fccb83d8dffd4716a823fc99ab8f /sw/source | |
parent | e3bb44f605e5c548d2bff04be4d923199996f583 (diff) |
Insert Kashida before final Tah
Looks like it was missing from the original code, though described here:
https://www.microsoft.com/middleeast/msdn/JustifyingText-CSS.aspx
Change-Id: Iab283cd8e9cc5aee37836ddb06d5e9b8ce8c18e4
Diffstat (limited to 'sw/source')
-rw-r--r-- | sw/source/core/text/porlay.cxx | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/sw/source/core/text/porlay.cxx b/sw/source/core/text/porlay.cxx index ff2f4b8ae78b..62b8024f1f96 100644 --- a/sw/source/core/text/porlay.cxx +++ b/sw/source/core/text/porlay.cxx @@ -71,6 +71,7 @@ using namespace i18n::ScriptType; #define isLamChar(c) IS_JOINING_GROUP((c), LAM) #define isQafChar(c) IS_JOINING_GROUP((c), QAF) #define isRehChar(c) IS_JOINING_GROUP((c), REH) +#define isTahChar(c) IS_JOINING_GROUP((c), TAH) #define isTehMarbutaChar(c) IS_JOINING_GROUP((c), TEH_MARBUTA) #define isWawChar(c) IS_JOINING_GROUP((c), WAW) #if (U_ICU_VERSION_MAJOR_NUM > 4) || (U_ICU_VERSION_MAJOR_NUM == 4 && U_ICU_VERSION_MINOR_NUM >= 4) @@ -990,12 +991,13 @@ void SwScriptInfo::InitScriptInfo( const SwTextNode& rNode, bool bRTL ) } // 4. Priority: - // before final form of Alef, Lam or Kaf + // before final form of Alef, Tah, Lam, Kaf or Gaf if ( nPriorityLevel >= 3 && nIdx > 0 ) { if ( isAlefChar ( cCh ) || // Alef (right joining) final form may appear in the middle of word - (( isLamChar ( cCh ) || // Lam - isKafChar ( cCh ) || // Kaf (both dual joining) + (( isLamChar ( cCh ) || // Lam, + isTahChar ( cCh ) || // Tah, + isKafChar ( cCh ) || // Kaf (all dual joining) isGafChar ( cCh ) ) && nIdx == nWordLen - 1)) // only at end of word { |