diff --git a/appview/issues/issues.go b/appview/issues/issues.go index 67870d36..9ff1b60a 100644 --- a/appview/issues/issues.go +++ b/appview/issues/issues.go @@ -99,17 +99,17 @@ func (rp *Issues) RepoSingleIssue(w http.ResponseWriter, r *http.Request) { } if user != nil { - repoDid := f.RepoDid userDid := user.Did + repoDid := f.RepoDid issueId := issue.IssueId - go func() { - if err := db.MarkNotificationsReadForIssue(rp.db, userDid, repoDid, issueId); err != nil { - l.Error("failed to mark issue notifications as read", "err", err) - } - }() - atUri := issue.AtUri().String() + focusing := pages.BaseParamsFromContext(r.Context()).FocusParams.Focusing go func() { + if !focusing { + if err := db.MarkNotificationsReadForIssue(rp.db, userDid, repoDid, issueId); err != nil { + l.Error("failed to mark issue notifications as read", "err", err) + } + } if err := db.UpsertRecentLink(rp.db, userDid, models.RecentLinkTypeIssue, atUri); err != nil { l.Error("failed to upsert recent link", "err", err) } diff --git a/appview/pulls/single.go b/appview/pulls/single.go index 01229821..4d8ed3a4 100644 --- a/appview/pulls/single.go +++ b/appview/pulls/single.go @@ -102,17 +102,17 @@ func (s *Pulls) repoPullHelper(w http.ResponseWriter, r *http.Request, interdiff l = l.With("pull_id", pull.PullId, "pull_owner", pull.OwnerDid) if user != nil { - repoDid := f.RepoDid userDid := user.Did + repoDid := f.RepoDid pullId := pull.PullId - go func() { - if err := db.MarkNotificationsReadForPull(s.db, userDid, repoDid, pullId); err != nil { - l.Error("failed to mark pull notifications as read", "err", err) - } - }() - atUri := pull.AtUri().String() + focusing := pages.BaseParamsFromContext(r.Context()).FocusParams.Focusing go func() { + if !focusing { + if err := db.MarkNotificationsReadForPull(s.db, userDid, repoDid, pullId); err != nil { + l.Error("failed to mark pull notifications as read", "err", err) + } + } if err := db.UpsertRecentLink(s.db, userDid, models.RecentLinkTypePull, atUri); err != nil { l.Error("failed to upsert recent link", "err", err) }