rem: Components.classes["component: 
add: Components.classes["@mozilla.org/widget/dragservice;1"].getService(Components.interfaces.nsIDragService); 
context: function DragOverTree ( event ){  var validFlavor = false;  var dragSession = null;  var retVal = true;  var dragService =     Components.classes["component://netscape/widget/dragservice"].getService(Components.interfaces.nsIDragService);  if ( !dragService ) return(false);  dragSession = dragService.getCurrentSession();  if ( !dragSession ) return(false);  if ( dragSession.isDataFlavorSupported("moz/rdfitem") ) validFlavor = true;  else if ( dragSession.isDataFlavorSupported("text/unicode") ) validFlavor = true;  //XXX other flavors here...  // touch the attribute on the rowgroup to trigger the repaint with the drop feedback.  if ( validFlavor )  {    var treeRoot = document.getElementById("bookmarksTree");    if (!treeRoot)  return(false);    var treeDatabase = treeRoot.database;    if (!treeDatabase)  return(false);    //XXX this is really slow and likes to refresh N times per second.    var rowGroup = event.target.parentNode.parentNode;    var sortActive = treeRoot.getAttribute("sortActive");    if (sortActive == "true")      rowGroup.setAttribute ( "dd-triggerrepaintsorted", 0 );    else      rowGroup.setAttribute ( "dd-triggerrepaint", 0 );    dragSession.canDrop = true;    // necessary??    retVal = false;  }  return(retVal);}
meta: 10234	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/10234/0257791053c2b38e1dfaf2ee11afae973e82e394/bookmarksDD.js/clean/xpfe/components/bookmarks/resources/bookmarksDD.js