Skip to content
Permalink
Browse files

Autocomplete: More verbose checking for multi-line to work around IE …

…treating inputs as contentEditable.
  • Loading branch information...
scottgonzalez committed Jun 25, 2012
1 parent 405cbef commit ab39099f665433ce88ed2310323b890e44eab6b9
Showing with 15 additions and 1 deletion.
  1. +15 −1 ui/jquery.ui.autocomplete.js
@@ -55,7 +55,7 @@ $.widget( "ui.autocomplete", {
// search term. #7799
var suppressKeyPress, suppressKeyPressRepeat, suppressInput;

this.isMultiLine = this.element.is( "textarea" ) || this.element.prop( "isContentEditable" );
this.isMultiLine = this._isMultiLine();
this.valueMethod = this.element[ this.element.is( "input,textarea" ) ? "val" : "text" ];
this.isNewMenu = true;

@@ -326,6 +326,20 @@ $.widget( "ui.autocomplete", {
}
},

_isMultiLine: function() {
// Textareas are always multi-line
if ( this.element.is( "textarea" ) ) {
return true;
}
// Inputs are always single-line, even if inside a contentEditable element
// IE also treats inputs as contentEditable
if ( this.element.is( "input" ) ) {
return false;
}
// All other element types are determined by whether or not they're contentEditable
return this.element.prop( "isContentEditable" );
},

_initSource: function() {
var array, url,
that = this;

0 comments on commit ab39099

Please sign in to comment.
You can’t perform that action at this time.