ss220club / Paradise-SS220

SS220 Paradise repository
https://discord.gg/ss220
GNU Affero General Public License v3.0
33 stars 110 forks source link

TgUI (TgUI input) не принимает достаточно длинные строки. #1292

Closed msw7007 closed 1 month ago

msw7007 commented 4 months ago

BYOND Version

No response

Описание проблемы

При вводе длинных строк при использовании tgUI если их размеры превышают опредленное (скорее всего внутреннее) заданое число символов в окне ввода, кнопка submit не отрабатывает (не происходит вызов процедур, окно не закрывается). Данная проблема замечена в медицинских записях и при попытке импорта мелодий для музыкальных инструментов.

Что должно было произойти?

Информация должна быть передана в процедуру на ее обработку.

Что случилось вместо этого?

Ничего, окно не функционирует

Почему это плохо/Какие последствия?

Нет возможности вводить длинные медицинские записи, что сказывается на РП. Нет возможности полноценного импорта мелодий в инструменты, что негативно сказывается на игровом опыте, который связан с музыкой.

Шаги для повторения проблемы.

Взять строку длиной значительно более 1024 (почему так опишу позже). Взять в руки муз. инструмент. Нажать импорт Вставить строку. Нажать Submit

Когда проблема началась?

Недели 2 назад импорт работал (не уверен, что он был через tgUI), обратил внимание на проблему примерно в районе 31-ого мая 2024

Дополнительная информация

При нажатии на submit должна вызываться соответствующая функция. Тесты через VSC на примере проблемы импорта мелодий показали что при нажатии submit и длиной строки в районе 2к символов (привожу строку) не происходит вызова функции /datum/tgui_input_text/ui_act(action, list/params) из text_input.dm

При этом при вставке например текста в 500 символов вызов происходит. Более точные тесту указали на длину в 1283 символа, если текст изначально представлен одной строкой (1283 символа отгружаются, 1284 нет) и 1243 если мультистрокой (полагаю, что это связано с тем, что используются символы переноса каретки на следующую строку).

Данная информация представлена в рамках форка билда при локальнйо установке. На данный момент для игроков есть решение отключить tgUi Input (но он классный).

Ноты Born to be Wild P1.txt

Связанные логи

No response

dj-34 commented 2 months ago

Актуально?

skifsky commented 1 month ago

У оффов тг тоже есть такая проблема, похоже это связано с новыми версиями Бьенда https://github.com/tgstation/tgstation/issues/83722#issue-2334223259

skifsky commented 1 month ago

Проверил на локалке, видимо уже неакутально (по крайней мере для версии 515.1642)

dj-34 commented 1 month ago

Видимо, не актуально.