// private
initEvents : function(){
-
-// if(this.el.is('input[type=password]') && Roo.isSafari){
-// this.el.on('keydown', this.SafariOnKeyDown, this);
-// }
Ext.form.SecurePass.superclass.initEvents.call(this);
- this.el.on('keyup', this.checkStrength, this);
+
+ if(this.el.is('input[type=password]') && Roo.isSafari){
+ this.el.on('keydown', this.SafariOnKeyDown, this);
+ }
+
+ this.el.on('keyup', this.checkStrength, this, {buffer:50});
},
// private
// private
SafariOnKeyDown : function(event){
- if((event.getKey() == 8 || event.getKey() == 46) && this.getValue().length ==1){ // backspace and delete key
+ var isSelectAll = false;
+ if(this.el.dom.selectionEnd > 0){
+ isSelectAll = (this.el.dom.selectionEnd - this.el.dom.selectionStart - this.getValue().length == 0) ? true : false;
+ }
+ if(((event.getKey() == 8 || event.getKey() == 46) && this.getValue().length ==1) || isSelectAll){ // backspace and delete key
event.preventDefault();
- this.setValue('');
+ this.setValue(event.getKey());
};
}
})
\ No newline at end of file