mirror of
https://github.com/jquery/jquery-ui.git
synced 2025-01-07 20:34:24 +00:00
Autocomplete: ESCAPE should not change content of a MultiLine
Fixes #9790 Closes gh-1190
This commit is contained in:
parent
5beae72e77
commit
930bc7df66
@ -189,6 +189,34 @@ asyncTest( "past end of menu in multiline autocomplete", function() {
|
||||
}, 50 );
|
||||
});
|
||||
|
||||
asyncTest( "ESCAPE in multiline autocomplete", function() {
|
||||
expect( 2 );
|
||||
|
||||
var customVal = "custom value",
|
||||
element = $( "#autocomplete-contenteditable" ).autocomplete({
|
||||
delay: 0,
|
||||
source: [ "javascript" ],
|
||||
focus: function( event, ui ) {
|
||||
equal( ui.item.value, "javascript", "Item gained focus" );
|
||||
$( this ).text( customVal );
|
||||
event.preventDefault();
|
||||
}
|
||||
});
|
||||
|
||||
element
|
||||
.simulate( "focus" )
|
||||
.autocomplete( "search", "ja" );
|
||||
|
||||
setTimeout(function() {
|
||||
element.simulate( "keydown", { keyCode: $.ui.keyCode.DOWN } );
|
||||
element.simulate( "keydown", { keyCode: $.ui.keyCode.ESCAPE } );
|
||||
equal( element.text(), customVal );
|
||||
start();
|
||||
}, 50 );
|
||||
});
|
||||
|
||||
|
||||
|
||||
asyncTest( "handle race condition", function() {
|
||||
expect( 3 );
|
||||
var count = 0,
|
||||
|
@ -130,7 +130,9 @@ $.widget( "ui.autocomplete", {
|
||||
break;
|
||||
case keyCode.ESCAPE:
|
||||
if ( this.menu.element.is( ":visible" ) ) {
|
||||
this._value( this.term );
|
||||
if ( !this.isMultiLine ) {
|
||||
this._value( this.term );
|
||||
}
|
||||
this.close( event );
|
||||
// Different browsers have different default behavior for escape
|
||||
// Single press can mean undo or clear
|
||||
|
Loading…
Reference in New Issue
Block a user