Merge pull request #2142 from famedly/krille/set-unread-notification-only-when-not-null

fix: Set unread notification count only if not null in sync
This commit is contained in:
Krille-chan 2025-09-12 15:45:42 +02:00 committed by GitHub
commit 28b6f9d475
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 11 additions and 14 deletions

View File

@ -18,11 +18,7 @@ jobs:
- uses: dart-lang/setup-dart@a57a6c04cf7d4840e88432aad6281d1e125f0d46
with:
sdk: ${{ env.dart_version }}
- uses: famedly/backend-build-workflows/.github/actions/rust-prepare@main
with:
gitlab_user: ${{ secrets.GITLAB_USER }}
gitlab_pass: ${{ secrets.GITLAB_PASS }}
gitlab_ssh: ${{ secrets.CI_SSH_PRIVATE_KEY}}
- uses: famedly/backend-build-workflows/.github/actions/rust-prepare@v4
- name: Run tests
run: |
export HOMESERVER_IMPLEMENTATION=${{matrix.homeserver}}
@ -68,11 +64,7 @@ jobs:
with:
sdk: ${{ env.dart_version }}
#architecture: "arm64"
- uses: famedly/backend-build-workflows/.github/actions/rust-prepare@main
with:
gitlab_user: ${{ secrets.GITLAB_USER }}
gitlab_pass: ${{ secrets.GITLAB_PASS }}
gitlab_ssh: ${{ secrets.CI_SSH_PRIVATE_KEY}}
- uses: famedly/backend-build-workflows/.github/actions/rust-prepare@v4
- name: Run tests
run: |
sudo apt-get update && sudo apt-get install --no-install-recommends --no-install-suggests -y lcov libsqlite3-0 libsqlite3-dev libssl3

View File

@ -2979,10 +2979,13 @@ class Client extends MatrixApi {
rooms[roomIndex].prev_batch = chatUpdate.timeline?.prevBatch;
}
rooms[roomIndex].membership = membership;
if (chatUpdate.unreadNotifications != null) {
rooms[roomIndex].notificationCount =
chatUpdate.unreadNotifications?.notificationCount ?? 0;
rooms[roomIndex].highlightCount =
chatUpdate.unreadNotifications?.highlightCount ?? 0;
}
final summary = chatUpdate.summary;
if (summary != null) {

View File

@ -295,6 +295,8 @@ void main() {
),
);
expect(room.hasNewMessages, true);
expect(room.isUnreadOrInvited, true);
room.notificationCount = room.highlightCount = 0;
expect(room.isUnreadOrInvited, false);
expect(room.lastEvent?.body, 'cd');
await updateLastEvent(