about summary refs log tree commit diff
path: root/app
diff options
context:
space:
mode:
Diffstat (limited to 'app')
-rw-r--r--app/models/status.rb8
1 files changed, 6 insertions, 2 deletions
diff --git a/app/models/status.rb b/app/models/status.rb
index 1bc4c633d..db3072571 100644
--- a/app/models/status.rb
+++ b/app/models/status.rb
@@ -276,7 +276,11 @@ class Status < ApplicationRecord
 
   def marked_local_only?
     # match both with and without U+FE0F (the emoji variation selector)
-    /👁\ufe0f?\z/.match?(content)
+    /#{local_only_emoji}\ufe0f?\z/.match?(content)
+  end
+
+  def local_only_emoji
+    '👁'
   end
 
   private
@@ -305,7 +309,7 @@ class Status < ApplicationRecord
   end
 
   def set_locality
-    if account.domain.nil?
+    if account.domain.nil? && !attribute_changed?(:local_only)
       self.local_only = marked_local_only?
     end
   end