![]() |
TLF UndoManager теряет undo/redo при потере фокуса
Доброго времени суток.
Столкнулся с необходимостью сделать UndoManager, для многих операций я уже сделал, но вот у s:TextArea, как и наверно у всех текстовых полей есть свой UndoManager, который и занимается записью и выполнением undo команд. Проблема в том, что если текстовое поле теряет фокус, то все команды удаляются. Убедиться можно тут - проскрольте вниз до примерчика, там сделайте что-нибудь, потом щёлкните по другому полю, потом обратно, и нажмите CTRL-Z для Undo. Для меня это неприемлимо, так что пока пишу свой UndoManager, что оказалось достаточно геморно если учитывать все действия которые пользователь производит при работе с текстовыми полями, и API и структуру самого TLF. Если кто сталкивался с такой проблемой, и нашёл решение, подскажите пожалуйста, а то приходится изобретать велосипед. |
Судя по всему решение где-то в Spark компонентах.
Вот тут мне ответили что может быть когда-нибудь посмотрят и исправят. |
UndoManager тут не при чем. Он с установленным в false флагом clearUndoOnFocusOut не очищается, что видно в дебаггере.
Добавлено через 20 минут Только что проверил, работает как положено. Не работает в IE, что ожидаемо, т.к. он перехватывает все хоткеи. |
Можете показать где в коде вы его устанвливаете в false?
И как? |
Установил точно также как у вас на адобовском форуме. Сделал тестовое приложение, флаг установил по CREATION_COMPLETE приложения, но это не важно, лишь бы он был установлен перед потерей фокуса.
|
А вы пробовали менять формат текста ?
У меня сохранаяет только удаление/добавку текста. Если изменить формат, он не только не сохраняет это действие, но и удаляет все сохранённые действия удаления и добавки текста. Даже без потери фокуса он не сохраняет изменения формата текста. А судя по наличию операций ApplyFormatOperation и ApplyFormatToElementOperation, он их должен сохранять. |
| Часовой пояс GMT +4, время: 02:56. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.