Skip to content

Conversation

@krida2000
Copy link
Contributor

@krida2000 krida2000 commented Dec 26, 2023

Resolves #701

Synopsis

При отправке сообщения сначала публикуется локальное сообщение. При этом чат остаётся на своём месте в списке чатов, не поднимаясь наверх.

Solution

Будет реализована сортировка по локальных сообщениях.

Checklist

  • Created PR:
    • In draft mode
    • Name contains issue reference
    • Has type and k:: labels applied
  • Before review:
    • Documentation is updated (if required)
    • Tests are updated (if required)
    • Changes conform code style
    • CHANGELOG entry is added (if required)
    • FCM (final commit message) is posted or updated
    • Draft mode is removed
  • Review is completed and changes are approved
    • FCM (final commit message) is approved
  • Before merge:
    • Milestone is set
    • PR's name and description are correct and up-to-date
    • All temporary labels are removed

@krida2000 krida2000 added enhancement Improvement of existing features or bugfix k::UI/UX UI (user interface) and UX (user experience) changes labels Dec 26, 2023
@krida2000 krida2000 added this to the 0.1.0-alpha.12 milestone Dec 26, 2023
@krida2000 krida2000 self-assigned this Dec 26, 2023
Copy link
Contributor Author

@krida2000 krida2000 Dec 26, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@SleepySquash Нешел небольшой баг, если в чате много непрочитаных cообщений, то локальные сообщения не будут добавляться в пагинацию либо в хайв. Пока что не придумал как можно это пофиксить, но когда реализуется наша идея с хайвом с пробелами, эта проблема уйдет.

Видео
2023-12-26.12-30-50.mp4

Comment on lines +450 to +451
} else {
send.field.focus.requestFocus();
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@SleepySquash Тут каждый раз при отправке сообщения на телефоне терялся фокус и скрывалась клавитура. Мне кажется что намного удобней чтобы фокус оставался.

@krida2000 krida2000 marked this pull request as ready for review December 26, 2023 10:58
@krida2000 krida2000 requested a review from SleepySquash January 4, 2024 14:36
Comment on lines +1059 to +1065
/// Initializes [ChatItemHiveProvider.boxEvents] subscription.
Future<void> _initLocalSubscription() async {
_localSubscription = StreamIterator(_local.boxEvents);
while (await _localSubscription!.moveNext()) {
final BoxEvent event = _localSubscription!.current;
final ChatItemKey key = ChatItemKey.fromString(event.key);

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Во всём этом меня смущает только одна вещь - если тут механизм забарахлит и по какой-то причине не будет добавлено сообщение, которое по факту будет последним, то мы банально заблокируем чат в старом состоянии без возможности это сообщение где-нибудь увидеть - счётчик снизу на "чаты" будет "1", по факту сообщение было добавлено, но не рисуется. Эта проблема, #691, иногда воспроизводится - висит последнее сообщение какое-либо, но в списке сообщений оно не рисуется. Помогает несколько рефрешей страницы и прокрутка вверх/вниз, напрягает - это уже неправильное поведение. Боюсь, с заменой lastItemа на хайв мы можем вовсе потерять тогда и отображение в списке чатов последнего айтема корректное.

Кстати, есть мысли, что и это, и #691 связаны с #777 - вероятно, события в чат могут прилетать, но игнорироваться, т.к. страница пагинации уже версию обновила на свежую?

Предлагаю решить эти два issue сначала, а потом merge'ить этот PR, с ним всё остальное LGTM.

@SleepySquash SleepySquash modified the milestones: 0.6.4, 0.7.0, 0.6.5 Sep 29, 2025
@SleepySquash SleepySquash modified the milestones: 0.6.6, 0.7.0 Oct 13, 2025
@SleepySquash SleepySquash modified the milestones: 0.6.7, 0.7.0, 0.6.8 Oct 29, 2025
@SleepySquash SleepySquash modified the milestones: 0.6.9, 0.7.0, 0.6.10 Nov 11, 2025
@SleepySquash SleepySquash modified the milestones: 0.6.11, 0.7.0, 0.6.12 Nov 24, 2025
@SleepySquash SleepySquash modified the milestones: 0.6.13, 0.7.0 Dec 8, 2025
@SleepySquash SleepySquash modified the milestones: 0.6.14, 0.7.0, 0.8.0 Dec 19, 2025
@SleepySquash SleepySquash modified the milestones: 0.7.1, 0.8.0, 0.7.2 Jan 7, 2026
@SleepySquash SleepySquash modified the milestones: 0.8.0, 0.9.0 Jan 21, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement Improvement of existing features or bugfix k::UI/UX UI (user interface) and UX (user experience) changes

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Posting local ChatMessage doesn't order Chat in the list up

3 participants