Esanders has uploaded a new change for review. https://gerrit.wikimedia.org/r/67971
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(-) git pull ssh://gerrit.wikimedia.org:29418/mediawiki/extensions/VisualEditor refs/changes/71/67971/1 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: newchange Gerrit-Change-Id: Iff1dfb90130685bb710821f8386cfa2f296f2f95 Gerrit-PatchSet: 1 Gerrit-Project: mediawiki/extensions/VisualEditor Gerrit-Branch: master Gerrit-Owner: Esanders <esand...@wikimedia.org> _______________________________________________ MediaWiki-commits mailing list MediaWiki-commits@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits