Bug 232795 In <bookmarksMenu.js>, "Error: aDragSession.sourceNode has no properties" (Av2b-XPFE) <bookmarksMenu.js> p=Serge GAUTHERIE <gautheri@noos.fr>,r=neil,sr=jag

This commit is contained in:
bugzilla%standard8.demon.co.uk 2007-05-05 04:37:11 +00:00
Родитель 2d64766621
Коммит 93d8a14d30
1 изменённых файлов: 5 добавлений и 4 удалений

Просмотреть файл

@ -386,7 +386,7 @@ var BookmarksMenuDNDObserver = {
}
if (this.isPlatformNotSupported)
return;
if (this.isTimerSupported)
if (this.isTimerSupported || !aDragSession.sourceNode)
return;
this.onDragOverCheckTimers();
},
@ -502,6 +502,7 @@ var BookmarksMenuDNDObserver = {
springLoadedMenuDelay: 350, // milliseconds
isPlatformNotSupported: navigator.platform.indexOf("Mac") != -1, // see bug 136524
// Needs to be dynamically overridden (to |true|) in the case of an external drag: see bug 232795.
isTimerSupported: navigator.platform.indexOf("Win") == -1,
mCurrentDragOverTarget: null,
@ -595,7 +596,7 @@ var BookmarksMenuDNDObserver = {
{
if (this.isPlatformNotSupported)
return;
if (this.isTimerSupported) {
if (this.isTimerSupported || !aDragSession.sourceNode) {
var targetToBeLoaded = aTarget;
clearTimeout(this.loadTimer);
if (aTarget == aDragSession.sourceNode)
@ -614,7 +615,7 @@ var BookmarksMenuDNDObserver = {
if (this.isPlatformNotSupported)
return;
var This = this;
if (this.isTimerSupported) {
if (this.isTimerSupported || !aDragSession.sourceNode) {
clearTimeout(this.closeTimer)
this.closeTimer=setTimeout(function () {This.onDragCloseTarget()}, This.springLoadedMenuDelay);
} else {
@ -623,7 +624,7 @@ var BookmarksMenuDNDObserver = {
this.closeTarget = aTarget;
this.loadTimer = null;
// If user isn't rearranging within the menu, close it
// If the user isn't rearranging within the menu, close it
// To do so, we exploit a Mac bug: timeout set during
// drag and drop on Windows and Mac are fired only after that the drop is released.
// timeouts will pile up, we may have a better approach but for the moment, this one