Merge remote-tracking branch 'parent/main' into upstream-20241216

This commit is contained in:
KMY 2024-12-16 10:14:31 +09:00
commit 3784ad273c
555 changed files with 7564 additions and 3363 deletions

View file

@ -15,7 +15,7 @@ class ProcessMentionsService < BaseService
return unless @status.local?
@previous_mentions = @status.active_mentions.includes(:account).to_a
@previous_mentions = @status.mentions.includes(:account).to_a
@current_mentions = []
Status.transaction do
@ -63,6 +63,8 @@ class ProcessMentionsService < BaseService
mention ||= @current_mentions.find { |x| x.account_id == mentioned_account.id }
mention ||= @status.mentions.new(account: mentioned_account)
mention.silent = false
@current_mentions << mention
"@#{mentioned_account.acct}"
@ -87,7 +89,7 @@ class ProcessMentionsService < BaseService
end
@current_mentions.each do |mention|
mention.save if mention.new_record? && @save_records
mention.save if (mention.new_record? || mention.silent_changed?) && @save_records
end
# If previous mentions are no longer contained in the text, convert them
@ -95,7 +97,7 @@ class ProcessMentionsService < BaseService
# received a notification might be more confusing
removed_mentions = @previous_mentions - @current_mentions
Mention.where(id: removed_mentions.map(&:id)).update_all(silent: true) unless removed_mentions.empty?
Mention.where(id: removed_mentions.map(&:id), silent: false).update_all(silent: true) unless removed_mentions.empty?
end
def mention_undeliverable?(mentioned_account)