Данный документ описывает логику и сценарий работы при отправке получении файлов.
Отправка сообщений с файлами происходит в три этапа.
- Шифрование файла на клиенте
- Отправка шифрованного тела файла на сервер
- Отправка сообщения с метаданными зашифрованного файла собеседнику
На изображении ниже изображено меню выбора вложений

На следующих изображениях соответственно процесс шифрования и загрузки зашифрованного тела файла на сервер:

Для отображения процесса шифрования и процесса отправки использовать соответственно:

Обработанный и загруженный на сервер файл отображается в доке следующим образом:

Если количество элементов в доке больше ширины экрана, то работает горизонтальная прокрутка жестами

При клике на крестик в углу прямоугольника, изображающего вложение, удалить вложение из сообщения и отправить на сервер запрос на удаление файла.
Отправленные/полученные файлы:

Отправленные и полученные файлы отображаются одинаково и доступны для скачивания.
- Каждый файл можно скачать отдельно. Если файл еще не был скачан на этом устройстве, то при клике на файл открывается файловый менеджер для выбора места, куда нужно сохранить файл. После выбора иконка файла меняется на иконку процесса загрузки(далее расшифровки). Загрузка/расшифровка осуществляется фоновой службой. После успешной загрузки иконка файла меняется на галочку (см. изображение ниже). Если файл уже был скачан и рядом с ним стоит иконка "галочка", то при клике на файл открывается попап меню с выбором "Открыть|Скачать заново".

- Нажав на ссылку "СОХРАНИТЬ ВСЕ", осуществляется процесс последовательной загрузки/расшифровки/сохранения всех файлов из сообщения.
