SHA256
Эмодзи/мобильный чат: убрать загрузку с GitHub, клавиатура, тихий Script error
- Пикер: анимированные webp грузились с raw.githubusercontent.com (в репо их нет) — у пользователей с VPN/операторскими блокировками тап по эмодзи давал сетевую ошибку и «моргание»/подмену картинки. Теперь всегда локальные статичные превью, без внешних запросов и pointer capture; мёртвая константа GitHub-URL удалена. Возврат анимаций — только локальным паком. - Чат (тач): открытие эмодзи-пикера прячет клавиатуру (blur), вставка эмодзи не фокусирует textarea на сенсорных устройствах — поле больше не перекрывается клавиатурой (на десктопе фокус как раньше). - Глобальный обработчик ошибок: кросс-ориджин «Script error.» без файла/стека больше не показывается алертом (лог и captureClientError остаются) — устраняет пугающую плашку на Xiaomi/Safari. - VERSION: client 1.2.327. Проверено в превью: тап по эмодзи — 0 запросов к githubusercontent, 😈 вставляется ровно как 😈, картинка кнопки стабильна; фильтр алерта: Script error. — тихо, реальная ошибка — алерт показывается. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -777,6 +777,12 @@ window.addEventListener('error', (event) => {
|
||||
},
|
||||
});
|
||||
|
||||
// Кросс-ориджин ошибки приходят как «Script error.» без файла/строки/стека —
|
||||
// алертом такие не показываем (в лог и captureClientError выше уже записаны).
|
||||
const isOpaqueCrossOriginError = String(event.message || '') === 'Script error.'
|
||||
&& !event.filename && !(event.error?.stack);
|
||||
if (isOpaqueCrossOriginError) return;
|
||||
|
||||
showGlobalErrorAlert('Поймана глобальная ошибка UI', {
|
||||
message: event.message || 'Global JS error',
|
||||
stack: event.error?.stack || '',
|
||||
|
||||
Reference in New Issue
Block a user