В этой статье
Undo и Redo — элементы безопасности в творческой работе. Пользователь должен понимать, какое изменение вернётся, сохранить свою позицию и отличать собственное действие от изменения коллеги. Сначала опишите модель истории, затем проверьте составные операции и совместное редактирование. В рабочем пространстве Pixso для совместного дизайна удобно сравнить состояния до и после.

Показывайте предсказуемую историю
Нужно видеть, что отменит следующий шаг. Объединяйте низкоуровневые изменения по намерению пользователя, показывайте название и объект действия. Если новое редактирование после Undo создаёт ветку, объясните, останется ли Redo доступным.
Проектируйте восстановление после опасных действий
Для удаления и массовой замены разместите восстановление рядом с действием. Для небольшой правки достаточно Toast, а для широкого или необратимого эффекта нужна подтверждающая диалоговая форма. После восстановления сохраняйте область просмотра и фокус и кратко подсвечивайте изменение.
Учитывайте ветки, сочетания клавиш и команду
Сочетания клавиш должны соответствовать видимым контролам и привычкам системы. В общем файле отделяйте локальную отмену от изменения другого человека. Проверьте одиночную, составную и массовую правку, офлайн-возврат и пустую историю.
Сделайте правило ветвления видимым
Представьте: пользователь переместил карточку, нажал Undo, а затем изменил её заголовок. Изменение заголовка создаёт новую ветку. Если прежнее перемещение больше нельзя вернуть через Redo, сообщите об этом в истории и сохраните восстановленную позицию; если доступны обе ветки, покажите, какую выберет следующее действие. Проверьте последовательность «переместить, отменить, изменить, открыть Redo, перезагрузить, подключиться снова», чтобы правило не обнаруживалось только после потери работы.
Проверьте граничные состояния
| Состояние | Ожидаемая реакция |
|---|---|
| Пустая история | Undo недоступен, старое название действия не показывается. |
| Конец истории | Redo недоступен после восстановления последнего состояния. |
| Повторное подключение после офлайн-работы | Видно, какие локальные изменения сохранены, объединены или требуют проверки. |
| Параллельное изменение | Undo обозначает локальную правку и не создаёт впечатление, что удалена правка коллеги. |
Проверьте путь восстановления в прототипе
Пройдите сценарий: изменить, отменить, убедиться в восстановлении, повторить. В Pixso разместите состояния истории рядом с экраном и оставьте комментарий с ожидаемым результатом перед передачей разработчикам.

Успех — это возможность найти изменение, вернуть его и продолжить работу без потери соседних правок.