@ -1695,6 +1695,7 @@ function rcube_webmail()
if ( menu ) {
if ( menu ) {
$ ( menu ) . hide ( ) ;
$ ( menu ) . hide ( ) ;
}
}
this . command ( action , this . env . drag _target ) ;
this . command ( action , this . env . drag _target ) ;
this . env . drag _target = null ;
this . env . drag _target = null ;
} ;
} ;
@ -1724,7 +1725,8 @@ function rcube_webmail()
else if ( list = this . contact _list )
else if ( list = this . contact _list )
model = this . env . contactfolders ;
model = this . env . contactfolders ;
if ( this . drag _active && model && this . env . last _folder _target ) {
// Note: we accept only mouse events to ignore dragging aborts with ESC key (#6623)
if ( this . drag _active && model && this . env . last _folder _target && ! rcube _event . is _keyboard ( e ) ) {
var target = model [ this . env . last _folder _target ] ;
var target = model [ this . env . last _folder _target ] ;
list . draglayer . hide ( ) ;
list . draglayer . hide ( ) ;
@ -1809,7 +1811,7 @@ function rcube_webmail()
// remove focus from list widgets
// remove focus from list widgets
if ( window . rcube _list _widget && rcube _list _widget . _instances . length ) {
if ( window . rcube _list _widget && rcube _list _widget . _instances . length ) {
$ . each ( rcube _list _widget . _instances , function ( i , list ) {
$ . each ( rcube _list _widget . _instances , function ( i , list ) {
if ( list && ! rcube _mouse _is _over ( e , list . list . parentNode ) )
if ( list && ! rcube _mouse _is _over ( e , list . list . parentNode ) )
list . blur ( ) ;
list . blur ( ) ;
} ) ;
} ) ;
@ -1824,7 +1826,7 @@ function rcube_webmail()
}
}
// reset popup menus; delayed to have updated menu_stack data
// reset popup menus; delayed to have updated menu_stack data
setTimeout ( function ( e ) {
setTimeout ( function ( e ) {
var obj , skip , config , id , i , parents = $ ( target ) . parents ( ) ;
var obj , skip , config , id , i , parents = $ ( target ) . parents ( ) ;
for ( i = ref . menu _stack . length - 1 ; i >= 0 ; i -- ) {
for ( i = ref . menu _stack . length - 1 ; i >= 0 ; i -- ) {
id = ref . menu _stack [ i ] ;
id = ref . menu _stack [ i ] ;