Chromium Code Reviews| Index: chrome/browser/resources/options/autofill_edit_creditcard_overlay.js |
| diff --git a/chrome/browser/resources/options/autofill_edit_creditcard_overlay.js b/chrome/browser/resources/options/autofill_edit_creditcard_overlay.js |
| index 100f9316682959ef080daa23369a836c367aea7d..2a3b0eaf927c4ee8f1a746659f5b6cadd8be8fd1 100644 |
| --- a/chrome/browser/resources/options/autofill_edit_creditcard_overlay.js |
| +++ b/chrome/browser/resources/options/autofill_edit_creditcard_overlay.js |
| @@ -46,9 +46,6 @@ cr.define('options', function() { |
| self.saveCreditCard_(); |
| self.dismissOverlay_(); |
| } |
| - $('creditCardNumber').onkeydown = this.onTextInput_.bind(this); |
| - $('creditCardNumber').addEventListener('textInput', |
| - this.onTextInput_.bind(this)); |
| self.guid_ = ''; |
| self.storedCCNumber_ = ''; |
| @@ -59,27 +56,6 @@ cr.define('options', function() { |
| }, |
| /** |
| - * Handles the textInput and keydown events. |
| - * @private |
| - */ |
| - onTextInput_: function(event) { |
| - // For some reason, the textInput event doesn't consider |
| - // backspace/deletion an input event, so we have to handle those here. |
| - // 8 - backspace |
| - // 46 - delete |
| - if (event.type == 'keydown' && event.keyCode != '8' && |
| - event.keyCode != '46') |
| - return; |
| - |
| - // If the user hasn't edited the text yet, delete it all on edit. |
| - if (!this.hasEditedNumber_ && |
| - $('creditCardNumber').value != this.storedCCNumber_) { |
| - this.hasEditedNumber_ = true; |
| - $('creditCardNumber').value = ''; |
| - } |
| - }, |
| - |
| - /** |
| * Clears any uncommitted input, and dismisses the overlay. |
| * @private |
| */ |
| @@ -118,12 +94,9 @@ cr.define('options', function() { |
| * @private |
| */ |
| connectInputEvents_: function() { |
| - var self = this; |
| $('nameOnCard').oninput = $('creditCardNumber').oninput = |
| $('expirationMonth').onchange = $('expirationYear').onchange = |
| - function(event) { |
| - self.inputFieldChanged_(); |
| - } |
| + this.inputFieldChanged_.bind(this); |
| }, |
| /** |
| @@ -131,9 +104,17 @@ cr.define('options', function() { |
| * button if all of the fields are empty. |
| * @private |
| */ |
| - inputFieldChanged_: function() { |
| + inputFieldChanged_: function(event) { |
| var disabled = !$('nameOnCard').value && !$('creditCardNumber').value; |
| $('autoFillEditCreditCardApplyButton').disabled = disabled; |
| + |
| + // If the user hasn't edited the text yet, delete it all on edit. |
| + if (!this.hasEditedNumber_ && |
| + event && event.target == $('creditCardNumber') && |
|
arv (Not doing code reviews)
2011/01/26 19:27:35
Why would event be undefined?
arv (Not doing code reviews)
2011/01/26 19:27:35
Please create a var for $('creditCardNumber') so t
James Hawkins
2011/01/26 19:38:30
This method is called on overlay load w/out a para
James Hawkins
2011/01/26 19:38:30
Done.
arv (Not doing code reviews)
2011/01/26 20:00:41
Please rename the param to opt_event and document
James Hawkins
2011/01/26 21:31:36
Done.
|
| + $('creditCardNumber').value != this.storedCCNumber_) { |
| + this.hasEditedNumber_ = true; |
| + $('creditCardNumber').value = ''; |
| + } |
| }, |
| /** |
| @@ -221,6 +202,7 @@ cr.define('options', function() { |
| this.inputFieldChanged_(); |
| this.guid_ = creditCard['guid']; |
| this.storedCCNumber_ = creditCard['creditCardNumber']; |
| + this.hasEditedNumber_ = $('creditCardNumber').value.length == 0; |
| }, |
| }; |