Jganenok
ebc22cd8bd
feat(chats_screen): Real-time работа с lastMsg, галочки.
2026-06-13 16:06:41 +07:00
klockky
c8a64e2871
feat(chat): отложенные сообщения и отправка видео
2026-06-13 08:02:12 +00:00
klockky
efa50375e0
feat(chat): отложенные сообщения и отправка видео
2026-06-13 08:02:12 +00:00
Jganenok
d6acfa52fa
feat(calls): Я ЕБЛАН ХАХАХХА Я ШАШКИ ЧЕРЕЗ ЗВОНКИ СДЕЛАЛ
2026-06-13 00:42:14 +07:00
Jganenok
b9a89a4437
feat(calls): Я ЕБЛАН ХАХАХХА Я ШАШКИ ЧЕРЕЗ ЗВОНКИ СДЕЛАЛ
2026-06-13 00:42:14 +07:00
Jganenok
d7dcb076c3
feat(calls): Щас попробую легонечко с data channel побурмалдить
2026-06-12 22:19:57 +07:00
Jganenok
34cd52335e
feat(calls): Щас попробую легонечко с data channel побурмалдить
2026-06-12 22:19:57 +07:00
Jganenok
42f1fd5292
feat(calls): Тяжело...... Звонки. Вроде полностью. Почти.
2026-06-12 22:19:57 +07:00
Jganenok
afbfa33b99
feat(calls): Тяжело...... Звонки. Вроде полностью. Почти.
2026-06-12 22:19:57 +07:00
klockky
5e28e397e8
fix(chat): SizeTransition.axisAlignment для совместимости с CI Flutter
2026-06-12 08:14:08 +00:00
klockky
f22d830dfe
fix(chat): SizeTransition.axisAlignment для совместимости с CI Flutter
2026-06-12 08:14:08 +00:00
klockky
4ee84745bf
feat(chat): удаление сообщений (у себя/у всех)
2026-06-12 08:02:31 +00:00
klockky
bd03409ebb
feat(chat): удаление сообщений (у себя/у всех)
2026-06-12 08:02:31 +00:00
Jganenok
7cc3ae57aa
feat(animation): анимация реанимация для опросов
2026-06-12 12:10:44 +07:00
Jganenok
6fc7565aec
feat(animation): анимация реанимация для опросов
2026-06-12 12:10:44 +07:00
Jganenok
532fae4b39
feat(frontend): flossy стиль. Выбор градиент/без
2026-06-12 00:13:13 +07:00
Jganenok
e4ed1c10e1
feat(frontend): flossy стиль. Выбор градиент/без
2026-06-12 00:13:13 +07:00
klockky
a5956a0628
Merge branch 'feature/FullStack' of https://github.com/KometTeam/Komet into feature/FullStack
2026-06-11 18:27:49 +03:00
klockky
213c57e524
Merge branch 'feature/FullStack' of https://github.com/KometTeam/Komet into feature/FullStack
2026-06-11 18:27:49 +03:00
klockky
894036e2ff
feat: отправка вложений — файлы, опросы и геопозиция
...
- FILE/POLL/LOCATION через MSG_SEND (opcode 64) с inline-attach
- sendLocationMessage / sendPollMessage в MessagesModule
- экран создания опроса + рабочие вкладки «Файл/Геопозиция/Опрос» в шторке
- geolocator + разрешения геолокации (Android/iOS) для текущей позиции
2026-06-11 18:27:09 +03:00
klockky
82df24c38d
feat: отправка вложений — файлы, опросы и геопозиция
...
- FILE/POLL/LOCATION через MSG_SEND (opcode 64) с inline-attach
- sendLocationMessage / sendPollMessage в MessagesModule
- экран создания опроса + рабочие вкладки «Файл/Геопозиция/Опрос» в шторке
- geolocator + разрешения геолокации (Android/iOS) для текущей позиции
2026-06-11 18:27:09 +03:00
Jganenok
e93019e96a
feat(calls): я в рот блять ебал эти звонки ваши ебучие Ыuka
2026-06-11 22:08:51 +07:00
Jganenok
e66f760a16
feat(calls): я в рот блять ебал эти звонки ваши ебучие Ыuka
2026-06-11 22:08:51 +07:00
klockky
a4c2618474
fix: вернул нормальную полоску выбора типа медиа в шторке вложений (названия + расширение активной вкладки)
2026-06-11 17:24:01 +03:00
klockky
b5a91e56aa
fix: вернул нормальную полоску выбора типа медиа в шторке вложений (названия + расширение активной вкладки)
2026-06-11 17:24:01 +03:00
klockky
e3635b5d29
feat: полное отображение типов сообщений + предпросмотр ссылок и оптимизация фото
...
Модели (lib/models/):
- attachment.dart — новые типы ShareAttachment (OG-карточка ссылки) и
CallAttachment (звонок); FILE получил вложенное превью и поле token;
LOCATION — поле zoom; единый декодер previewData (сырой WebP → data-URI)
вынесен в decodeAttachPreview
- poll.dart — корректный парсинг голосов ({userId,timestamp}) и признак
своего голоса (options & 1); helper withStateMap
Лента сообщений (message_bubble.dart):
- SHARE — карточка предпросмотра ссылки (картинка, домен, заголовок,
описание), тап открывает URL
- CALL — отображение звонков: аудио/видео/групповые/пропущенные,
длительность, направление; симметричная иконка
- LOCATION — карточка геопозиции, тап открывает карту
- FILE — превью-картинка над строкой файла
- кликабельные ссылки в тексте и подписях (LinkText)
- фикс лишней ширины бабблов гео/share/опроса (IntrinsicWidth + stretch)
- оптимизация рендера фото: убран fade-in, уменьшен размер декода
плиток фото-сетки
Опросы:
- интерактивное голосование через opcode 304 (polls.dart, poll_view.dart):
одиночный/множественный выбор, отметка своего ответа, проценты
Список чатов (chats.dart):
- превью типа вложения для сообщений без текста («Фото», «Опрос: …»,
«Звонок», «Геопозиция», «Файл: …», «Ссылка: …» и т.д.)
Настройки разработчика:
- тумблер «Предпросмотр ссылок» (app_link_preview.dart) — отключает
SHARE-карточки, оставляя текст со ссылкой; применяется на лету
Прочее:
- зависимость url_launcher ^6.3.1 (open_external_url / open_location_on_map)
- bump версии 0.5.0+11 → 0.5.0+12
2026-06-11 17:14:36 +03:00
klockky
94d3e44354
feat: полное отображение типов сообщений + предпросмотр ссылок и оптимизация фото
...
Модели (lib/models/):
- attachment.dart — новые типы ShareAttachment (OG-карточка ссылки) и
CallAttachment (звонок); FILE получил вложенное превью и поле token;
LOCATION — поле zoom; единый декодер previewData (сырой WebP → data-URI)
вынесен в decodeAttachPreview
- poll.dart — корректный парсинг голосов ({userId,timestamp}) и признак
своего голоса (options & 1); helper withStateMap
Лента сообщений (message_bubble.dart):
- SHARE — карточка предпросмотра ссылки (картинка, домен, заголовок,
описание), тап открывает URL
- CALL — отображение звонков: аудио/видео/групповые/пропущенные,
длительность, направление; симметричная иконка
- LOCATION — карточка геопозиции, тап открывает карту
- FILE — превью-картинка над строкой файла
- кликабельные ссылки в тексте и подписях (LinkText)
- фикс лишней ширины бабблов гео/share/опроса (IntrinsicWidth + stretch)
- оптимизация рендера фото: убран fade-in, уменьшен размер декода
плиток фото-сетки
Опросы:
- интерактивное голосование через opcode 304 (polls.dart, poll_view.dart):
одиночный/множественный выбор, отметка своего ответа, проценты
Список чатов (chats.dart):
- превью типа вложения для сообщений без текста («Фото», «Опрос: …»,
«Звонок», «Геопозиция», «Файл: …», «Ссылка: …» и т.д.)
Настройки разработчика:
- тумблер «Предпросмотр ссылок» (app_link_preview.dart) — отключает
SHARE-карточки, оставляя текст со ссылкой; применяется на лету
Прочее:
- зависимость url_launcher ^6.3.1 (open_external_url / open_location_on_map)
- bump версии 0.5.0+11 → 0.5.0+12
2026-06-11 17:14:36 +03:00
klockky
760cdcd877
feat: звонки 1:1 (аудио) — WebRTC + ws2-сигналинг
...
Реализованы голосовые звонки 1:1 поверх инфраструктуры VK/OK
(flutter_webrtc + сигналинг ws2 wss://videowebrtc.okcdn.ru). Протокол
восстановлен реверсом захваченных пакетов и декомпиляцией
ru.ok.android.externcalls.sdk.
Ядро (lib/core/calls/):
- conversation_params.dart — декодер vcp (LZ4-блок), с unit-тестом
- ws2_signaling.dart — клиент сигналинга ws2 (transmit-data, ICE,
accept-call, hangup, change-media-settings, ping/pong)
- call_session.dart — WebRTC-контроллер для звонящего и вызываемого
- call_controller.dart — глобальный оркестратор: пуш opcode 137,
исходящие, приём/отклонение, управление активной сессией
Бэкенд:
- CallsModule.initiateCall — инициация исходящего (opcode 78)
- общий LZ4-block декодер вынесен в core/protocol/lz4_block.dart
(используется и транспортом, и vcp)
UI / обвязка:
- CallScreen переписан под живой CallSession (+ кнопка «свернуть»
без завершения звонка, возврат повторным нажатием 📞 )
- кнопка звонка в шапке диалога
- инициализация CallController на логине, показ входящего по пушу
- дев-тумблер: принудительный сигнал состояния микрофона без
изменения реального аудиотрека
Прочее:
- зависимость flutter_webrtc ^0.12.5
- Android: RECORD_AUDIO / MODIFY_AUDIO_SETTINGS / BLUETOOTH
2026-06-10 18:21:27 +03:00
klockky
cf154b006b
feat: звонки 1:1 (аудио) — WebRTC + ws2-сигналинг
...
Реализованы голосовые звонки 1:1 поверх инфраструктуры VK/OK
(flutter_webrtc + сигналинг ws2 wss://videowebrtc.okcdn.ru). Протокол
восстановлен реверсом захваченных пакетов и декомпиляцией
ru.ok.android.externcalls.sdk.
Ядро (lib/core/calls/):
- conversation_params.dart — декодер vcp (LZ4-блок), с unit-тестом
- ws2_signaling.dart — клиент сигналинга ws2 (transmit-data, ICE,
accept-call, hangup, change-media-settings, ping/pong)
- call_session.dart — WebRTC-контроллер для звонящего и вызываемого
- call_controller.dart — глобальный оркестратор: пуш opcode 137,
исходящие, приём/отклонение, управление активной сессией
Бэкенд:
- CallsModule.initiateCall — инициация исходящего (opcode 78)
- общий LZ4-block декодер вынесен в core/protocol/lz4_block.dart
(используется и транспортом, и vcp)
UI / обвязка:
- CallScreen переписан под живой CallSession (+ кнопка «свернуть»
без завершения звонка, возврат повторным нажатием 📞 )
- кнопка звонка в шапке диалога
- инициализация CallController на логине, показ входящего по пушу
- дев-тумблер: принудительный сигнал состояния микрофона без
изменения реального аудиотрека
Прочее:
- зависимость flutter_webrtc ^0.12.5
- Android: RECORD_AUDIO / MODIFY_AUDIO_SETTINGS / BLUETOOTH
2026-06-10 18:21:27 +03:00
klockky
3af41dc69e
fix: порядок логина при хэндшейке + регистрация FCM-токена (pushOptions)
2026-06-10 11:35:17 +03:00
klockky
4c0dd48a3a
fix: порядок логина при хэндшейке + регистрация FCM-токена (pushOptions)
2026-06-10 11:35:17 +03:00
Jganenok
60c6f7461d
fix: как бы нихуя не изменилось по сути но на всякий пусть temp файлы не плодяться
2026-06-10 14:12:31 +07:00
Jganenok
3022a207ca
fix: как бы нихуя не изменилось по сути но на всякий пусть temp файлы не плодяться
2026-06-10 14:12:31 +07:00
Jganenok
ed3b06bfae
fix: соединил в один файл
2026-06-10 13:59:25 +07:00
Jganenok
d18cb35362
fix: соединил в один файл
2026-06-10 13:59:25 +07:00
Jganenok
a3c3b8b797
fix(chat_screen): Улучшил работу bottom sheet на андроиде
2026-06-10 13:38:57 +07:00
Jganenok
3541e9392d
fix(chat_screen): Улучшил работу bottom sheet на андроиде
2026-06-10 13:38:57 +07:00
Jganenok
f31727efa9
feat: доделал работу с медиа.
2026-06-10 12:57:30 +07:00
Jganenok
d89c1366e2
feat: доделал работу с медиа.
2026-06-10 12:57:30 +07:00
Jganenok
ea08c96726
feat: работа с вложениями
2026-06-10 00:58:19 +07:00
Jganenok
32aa869b89
feat: работа с вложениями
2026-06-10 00:58:19 +07:00
klockky
5d9a70f1b4
fix(digital-id): не заворачивать ссылку Госуслуг назад (externalCallback только top-level)
...
Перехват OAuth-callback в WebView-мосте проверял externalCallback как подстроку
во всём URL и ошибочно срабатывал на самой ссылке Госуслуг: у неё externalCallback
сидит внутри параметра redirect_uri (адрес возврата). Из-за этого мост заворачивал
ссылку входа обратно на digital-id, и Госуслуги не открывались при «Подключить
документы».
Теперь externalCallback распознаётся только как top-level параметр запроса
(?externalCallback= / &externalCallback=).
2026-06-09 17:15:52 +03:00
klockky
294a9b4efb
fix(digital-id): не заворачивать ссылку Госуслуг назад (externalCallback только top-level)
...
Перехват OAuth-callback в WebView-мосте проверял externalCallback как подстроку
во всём URL и ошибочно срабатывал на самой ссылке Госуслуг: у неё externalCallback
сидит внутри параметра redirect_uri (адрес возврата). Из-за этого мост заворачивал
ссылку входа обратно на digital-id, и Госуслуги не открывались при «Подключить
документы».
Теперь externalCallback распознаётся только как top-level параметр запроса
(?externalCallback= / &externalCallback=).
2026-06-09 17:15:52 +03:00
Jganenok
080ee8f644
слегка botomshet в чат скрин набурмалдил
2026-06-09 18:42:28 +07:00
Jganenok
ae0ecbc79a
слегка botomshet в чат скрин набурмалдил
2026-06-09 18:42:28 +07:00
Jganenok
580e30897b
fix: большой фикс недочетов и фикс пары язв
2026-06-09 01:00:04 +07:00
Jganenok
e587ef184b
fix: большой фикс недочетов и фикс пары язв
2026-06-09 01:00:04 +07:00
klockky and GitHub
55d5a82d76
Merge pull request #35 from KometTeam/feature/FullStack
...
Мини-приложения и Сферум, Цифровой ID (WebView + нативный режим), рефактор 2FA и ввода пароля, фиксы webapp и CI.
2026-06-08 20:38:46 +03:00
klockky
73ad6dd1e6
поднял build number
2026-06-08 17:32:50 +00:00
klockky
7245f8bfb3
поднял build number
2026-06-08 17:32:50 +00:00