diff options
Diffstat (limited to 'internal/processing/workers/fromclientapi.go')
| -rw-r--r-- | internal/processing/workers/fromclientapi.go | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/internal/processing/workers/fromclientapi.go b/internal/processing/workers/fromclientapi.go index 0e27eea0e..dbbeff220 100644 --- a/internal/processing/workers/fromclientapi.go +++ b/internal/processing/workers/fromclientapi.go @@ -729,6 +729,25 @@ func (p *clientAPI) UpdateStatus(ctx context.Context, cMsg *messages.FromClientA } } + // Notify any *new* mentions added + // to this status by the editor. + for _, mention := range status.Mentions { + // Check if we've seen + // this mention already. + if !mention.IsNew { + // Already seen + // it, skip. + continue + } + + // Haven't seen this mention + // yet, notify it if necessary. + mention.Status = status + if err := p.surface.notifyMention(ctx, mention); err != nil { + log.Errorf(ctx, "error notifying mention: %v", err) + } + } + // Push message that the status has been edited to streams. if err := p.surface.timelineStatusUpdate(ctx, status); err != nil { log.Errorf(ctx, "error streaming status edit: %v", err) |
