Как ни странно, но для экономии нервов пользователей.Зачем LinesFilter.js создает модальное окно?
Представим что окно не модально. Тогда:
1. Открыли большой файл(лог на пару млн строк)
2. Запустили фильтр.
3. Как работает фильтр:
1) Взять текст из окна
2) Выполнить задачу(Долгая атомарная операция)
3) Положить текст обратно в окно
4. Ну работает себе скрипт, никому не мешает. А тут пользователь взял и закрыл окно с которым работает скрипт. Или закрыл другое. Или просто переключил вкладку в PMDI режиме. Скрипт добросовестно туда положит новый текст, а старый и забудет. Или ещё хуже, хендл закрытого окна будет использован повторно но уже в другом приложении, а скрип продолжает думать что это AkelEdit/RichEdit и давай туда данные слвать. А то приложение возьми и упади(ведь ждет что дадут хороший указатель, а дали черт знает что).
В общем придумать как такая ситуация может по-ерить систему не тяжело.