Fix splitted emoji
This commit is contained in:
parent
ad84315ca4
commit
bd3c5fc372
@ -7,7 +7,6 @@
|
||||
import App from './config/app';
|
||||
import blurActiveElement from './helpers/dom/blurActiveElement';
|
||||
import { cancelEvent } from './helpers/dom/cancelEvent';
|
||||
import fixSafariStickyInput from './helpers/dom/fixSafariStickyInput';
|
||||
import { IS_STICKY_INPUT_BUGGED } from './helpers/dom/fixSafariStickyInputFocusing';
|
||||
import loadFonts from './helpers/dom/loadFonts';
|
||||
import IS_EMOJI_SUPPORTED from './helpers/emojiSupport';
|
||||
|
@ -382,6 +382,19 @@ namespace RichTextProcessor {
|
||||
|
||||
currentEntities.push(...filtered);
|
||||
currentEntities.sort((a, b) => a.offset - b.offset);
|
||||
|
||||
if(!emojiSupported) { // fix splitted emoji. messageEntityTextUrl can split the emoji if starts before its end (e.g. on fe0f)
|
||||
for(let i = 0; i < currentEntities.length; ++i) {
|
||||
const entity = currentEntities[i];
|
||||
if(entity._ === 'messageEntityEmoji') {
|
||||
const nextEntity = currentEntities[i + 1];
|
||||
if(nextEntity && nextEntity.offset < (entity.offset + entity.length)) {
|
||||
entity.length = nextEntity.offset - entity.offset;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return currentEntities;
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user