jenkins-bot has submitted this change and it was merged. Change subject: Fix conversion of byte to grapheme offsets/lengths ......................................................................
Fix conversion of byte to grapheme offsets/lengths Missed one case in ve.ce.Docuemnt#getNodeAndOffset. Bug: 49246 Change-Id: Iff1dfb90130685bb710821f8386cfa2f296f2f95 --- M demos/ve/pages/multibyte.html M modules/ve/ce/ve.ce.Document.js 2 files changed, 3 insertions(+), 2 deletions(-) Approvals: Catrope: Looks good to me, approved jenkins-bot: Verified diff --git a/demos/ve/pages/multibyte.html b/demos/ve/pages/multibyte.html index e488ec1..979b312 100644 --- a/demos/ve/pages/multibyte.html +++ b/demos/ve/pages/multibyte.html @@ -1,5 +1,5 @@ <p>12𨋢456789𨋢bc</p> -<p>「𨋢」字響<tt>香港</tt>衍生出好多新詞,好似:𨋢</p> +<p>「𨋢」字響<tt>香港</tt>衍生出好多新詞,好似:𨋢<tt>香港</tt> abc</p> <p>abc</p> <p>one c̀ombining accent</p> <p>two ç̀ombining accents</p> diff --git a/modules/ve/ce/ve.ce.Document.js b/modules/ve/ce/ve.ce.Document.js index 6bcedce..29d4108 100644 --- a/modules/ve/ce/ve.ce.Document.js +++ b/modules/ve/ce/ve.ce.Document.js @@ -146,7 +146,8 @@ } item = current[0][current[1]]; if ( item.nodeType === Node.TEXT_NODE ) { - length = item.textContent.length; + // offset, startOffset and length are all data model lengths (not byte lengths) + length = ve.getClusterOffset( item.textContent, item.textContent.length ); if ( offset >= startOffset && offset <= startOffset + length ) { return { node: item, -- To view, visit https://gerrit.wikimedia.org/r/67971 To unsubscribe, visit https://gerrit.wikimedia.org/r/settings Gerrit-MessageType: merged Gerrit-Change-Id: Iff1dfb90130685bb710821f8386cfa2f296f2f95 Gerrit-PatchSet: 1 Gerrit-Project: mediawiki/extensions/VisualEditor Gerrit-Branch: master Gerrit-Owner: Esanders <esand...@wikimedia.org> Gerrit-Reviewer: Catrope <roan.katt...@gmail.com> Gerrit-Reviewer: jenkins-bot _______________________________________________ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits