From 440e2348a6333519815e740475422e91e4f93e28 Mon Sep 17 00:00:00 2001 From: Hadi Nategh Date: Thu, 24 Sep 2015 07:34:04 +0000 Subject: [PATCH] Do not trigger autocomplete fix if the browser is Safari and there's an input with type password, since the Safari does not respect autocomplete = off - Fix password autofill issue in compose dialog --- etemplate/js/etemplate2.js | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/etemplate/js/etemplate2.js b/etemplate/js/etemplate2.js index d9f0b423d7..485fe22553 100644 --- a/etemplate/js/etemplate2.js +++ b/etemplate/js/etemplate2.js @@ -596,6 +596,16 @@ etemplate2.prototype.autocomplete_fixer = function () { var self = this; var form = self.DOMContainer; + + // Safari always do the autofill for password field regardless of autocomplete = off + // and since there's no other way to switch the autocomplete of, we should switch the + // form autocomplete off (e.g. compose dialog, attachment password field) + if (navigator.userAgent.match(/safari/i) && !navigator.userAgent.match(/chrome/i) + && jQuery('input[type="password"]').length > 0) + { + return; + } + if (form) { // Stop submit propagation in order to not fire other possible submit events