Files
f7cloud_mobile/docs/app-map/files.diff.md
T

4.8 KiB
Raw Blame History

Расхождения: Файлы (web forbion ↔ нативный feature/files)

Список несоответствий по методу mail/081 (итерация сверки). Вход — карта files.md. Сверка по коду feature/files (состав/функции); попиксельная вёрстка по CSS-теме и визуал — отдельным проходом после сборки на устройстве.

Обозначения: [Ф] функционал · [Д] дизайн/вёрстка · приоритет P1(высокий)…P3(низкий). Статус: open — не начато, wip — в работе, done — закрыто и сверено повторно.

Итерация 1 — сверка по коду (2026-07-12)

# Элемент/функция В вебе В нативе Тип Приор. Статус
D1 Панель «Подробно» — вкладки 4: Общий доступ / Версии / Чат / События 2: Sharing, Events (FileDetailsTab, FilesModels.kt:67) — нет «Версии», «Чат/комментарии» Ф P2 open
D2 Фильтры-чипы «Тип файла» (мультивыбор 8 типов), «Изменён» (5 пресетов дат), «Участники» (по людям) Чипы есть, но обработчики — заглушки: Тип/Изменён → сортировка, Участники → пустой {} (FilesScreen.kt:224-226). Фильтрации нет Ф P1 open
D3 Групповые действия (bulk) 6: избранное, метки, переместить/копировать, скачать, архивировать, удалить 3: Favorite, Download, Delete (FilesBulkAction, FilesComponents.kt:1064); Download → заглушка showWebOnlyMessage Ф P1 open
D4 Шэры — создание Внутренние ссылки: пользователь (type 0) / группа (type 1) + публичная (type 3) Создаётся только shareType=3 публичная ссылка (createPublicShareLink, FilesApiRepository.kt:174); чтение чужих шэров есть (fetchShares :199) Ф P1 open

Снято (не расхождение): меню «Новый» — нативный FilesCreateMenu.kt содержит весь веб-список (загрузка + 10 «Создать новое») и даже пункт сверх («Добавить описание папки»).

Инвентарь открывашек файлов (для медиа-воркстрима, mail/081 §3)

Текущее состояние нативных просмотрщиков в feature/files:

Тип Форматы Как открывается сейчас Пробел
Изображения jpg/jpeg/png/gif/webp/bmp/heic/heif (OpenableFiles.kt:10) Нативно ImageViewerActivity (Coil AsyncImage) — (svg нет в списке — добавить?)
Офис doc/docx/xls/xlsx/xlsm/… (OfficeFiles.kt) Collabora/Richdocuments в WebView — (есть)
Текст/Markdown md/markdown/txt/text/org/log (WebOpenableFiles.kt:17) Нативный MarkdownEditorScreen — (есть)
Доска .whiteboard (WebOpenableFiles.kt:9) WebView (Excalidraw, realtime — нативно не делаем) — (осознанно web)
PDF pdf Нет нативного вьюера → системный интент/LocalFileOpener или «тип не поддерживается» (FilesViewModel.kt:495) [Ф] P1 — нужен нативный PDF-вьюер
Видео mp4/webm/mkv/mov Нет нативного плеера → системный интент [Ф] P2 — нативный видеоплеер
Аудио mp3/aac/ogg/wav/flac Нет нативного плеера → системный интент [Ф] P2 — нативный аудиоплеер

Медиа-архитектуру (нативные плееры vs webview/интенты) определяет лид — жду письмо-раскладку (mail/081 §3). До неё PDF/видео/аудио уходят в системный ACTION_VIEW (chooser «Открыть с помощью»).

Осталось для итерации 2 (нужна сборка на устройстве)

  • [Д] попиксельная вёрстка всех экранов по CSS-теме _mobile-files.css.
  • [Ф] дерево «Поиска», переходы после открытия PDF/аудио/видео (визуальная сверка).