Files
subochev d5aa844fa0 design: макеты 15 экранов + принципы Android + откуда взят код
- design/mockups/ — 15 макетов (одно состояние = один файл), из /tmp перенесены в репо
- design/screenshots/ — те же экраны PNG
- design/PRINCIPLES.md — принципы: что берём у десктопа, что на телефоне иначе
- design/BORROW.md — что откуда: ядро (Nexus), тема (десктопный макет), отрисовка Markdown (ai/assistent)
- design/gen_mockups.py — генератор макетов, путь вывода теперь рядом с ним
- README: разделы «Принципы» и «Откуда код» со ссылками
2026-09-20 13:59:22 +03:00

6.9 KiB
Raw Permalink Blame History

Принципы Android-клиента

Коротко: принципы те же, что у десктопного клиента. Меняется не смысл, а обёртка — телефон всегда узкий, у него своя кнопка «Назад», нет курсора и есть клавиатура со шторками. Ниже: что берём как есть, что своё.

Обговорённые принципы лежат в репозитории десктопного клиента (он — эталон требований и макетов):

  • https://git.binom.pw/subochev/agentik-desktop — файл REQUIREMENTS.md (требования R1…, разделы «Общее», «Раскладка и адаптивность», «Список диалогов» и далее), плюс approved/README.md (что одобрено и почему), THEMES.md (тема и имена цветов), STORAGE.md, CACHE.md. Ссылки даны на main; для точного среза — коммит 2c5b3f9.

Мы не копируем эти документы себе: один источник правды лучше двух копий, которые разъедутся. Здесь только список того, что для телефона иначе.


ЧАСТЬ 1. Берём как есть

  1. Состав экрана. Что видно в любой момент: список диалогов и открытый диалог с полем ввода. Больше обязательного нет (R2).
  2. Список диалогов. Лента папок («Все чаты», группы, «+»), поиск, список со значком, названием, последней строкой, временем, кружком непрочитанных.
  3. Группы. «Все чаты» — встроенная: не удаляется и не переименовывается. Удаление группы диалоги не удаляет — они возвращаются в «Все чаты». У группы только название.
  4. Ассистенты. Имя придумывает человек (сервер своего имени не сообщает), адрес целиком вместе с путём /agentik, отличие в списке — цветом или картинкой, что-то одно. Картинка копируется внутрь клиента, не берётся по исходному адресу.
  5. Проверка связи. Отдельным экраном поверх: идёт → отвечает → не отвечает, внизу «Проверить снова»; добавление доступно только при успехе. Запросы — из исходников агента, оба ничего не меняют.
  6. Цвета. Берём из схемы по смыслу, не числом в коде (R1.1). Имена по смыслу, а не по виду: «фон», «панель», «акцент», «ошибка», «успех» (R1.2). Цвета различения ассистентов — не из схемы: они пользовательские и в другой теме остаются собой (R1.5).
  7. «Нет данных — нет цифры». Не показываем счётчик, которого нет в источниках.
  8. Сообщения — единственный источник правды. События от агента — только «будильник»; после сигнала догоняем сообщения запросом «что после такого-то».

ЧАСТЬ 2. На телефоне иначе

  1. Узких и широких окон нет. Десктопные R3–R6 (две панели рядом, порог ширины, кнопка «Назад» внутри узкого окна) к нам не относятся: телефон всегда узкий. Вместо них — системная кнопка и жест «Назад» (предсказуемый переход), и он же закрывает открытый диалог.
  2. Модальные окна → шторки снизу. Где на десктопе два окна друг над другом (настройки + проверка связи) — на телефоне полноэкранный экран или шторка снизу. Одно действие — один экран.
  3. Курсора нет — нет «наведения». Вместо него отклик на нажатие (подсветка/рябь). Десктопное требование про цвета наведения (R1.4) на телефоне превращается в проверку цвета нажатия.
  4. Клавиатура. Поле ввода поднимается над клавиатурой, список сообщений сдвигается, а не перекрывается. Открытая клавиатура — обычное состояние, а не край.
  5. Запись голоса — с разрешением. На десктопе микрофон доступен без спроса, на телефоне нужно системное разрешение; отказ — состояние экрана, а не ошибка.
  6. Файлы. Картинки ассистентов и вложения — во внутреннем каталоге приложения (на телефоне свои правила доступа к файлам). Пользователь выбирает файл системным диалогом.
  7. Экран и поворот. Края экрана (строка состояния, «подбородок» с жестами) учитываем; при повороте и смене размера ничего не теряется.
  8. Тёмная тема — стартовая, не единственная. Как и на десктопе, схем несколько (R1.1).

ЧАСТЬ 3. Что решаем позже

  • Порог, с которого телефон считать «широким» (планшет, разворот) — пока не нужен: рисуем узкий вид.
  • Системная цветовая схема телефона: следовать за ней или держать свою.

Кода в этих документах нет намеренно — здесь поведение. Реализация — по задачам, через правки в этом репозитории.