         // do nothing
         if option == .ignore { return }
         
-        // don't check twice if document is already marked as modified
-        guard !self.needsShowUpdateAlertWithBecomeKey else { return }
+        // don't check twice if already notified
+        guard !self.isExternalUpdateAlertShown else { return }
         
         guard let fileURL = self.fileURL else { return }
         

            switch option {
            case .ignore:
                break
                
            case .notify:
                self?.notifyExternalFileUpdate()
                
            case .revert:
                guard let strongSelf = self,
                    let fileURL = strongSelf.fileURL,
                    let fileType = strongSelf.fileType
                    else { return }
                
                do {
                    try strongSelf.revert(toContentsOf: fileURL, ofType: fileType)
                } catch {
                    strongSelf.presentErrorAsSheet(error)
                }
            }
        }
    }

    // string encoding
    
    /// reinterpret file with the desired encoding and show error dialog if failed
    func reinterpretAndShowError(encoding: String.Encoding) {
        
        do {
