Update of /cvsroot/dynapi/dynapi/src/lib/dynapi/event
In directory usw-pr-cvs1:/tmp/cvs-serv26349

Modified Files:
        mouse.js 
Log Message:
Fixed missing clicks were mousedowns were cancelled in NS4

Index: mouse.js
===================================================================
RCS file: /cvsroot/dynapi/dynapi/src/lib/dynapi/event/mouse.js,v
retrieving revision 1.17
retrieving revision 1.18
diff -C2 -r1.17 -r1.18
*** mouse.js    2001/06/08 02:42:42     1.17
--- mouse.js    2001/06/28 10:25:10     1.18
***************
*** 26,30 ****
  DynMouseEvent.prototype.getPageX=function() {return this.pageX};
  DynMouseEvent.prototype.getPageY=function() {return this.pageY};
! DynMouseEvent.prototype.cancelBrowserEvent=function() {this.browserReturn=false};
  // This is THE event. 
  DynMouseEvent._e=new DynMouseEvent()
--- 26,39 ----
  DynMouseEvent.prototype.getPageX=function() {return this.pageX};
  DynMouseEvent.prototype.getPageY=function() {return this.pageY};
! DynMouseEvent.prototype.cancelBrowserEvent=function() {
!       this.browserReturn=false
!       var evt = DynMouseEvent._e
!       if(!is.ns4 || evt.type != "mousedown") return
!       // If we cancel a mousedown in NS4. We must remember it so a click event is 
manually
!       // generated afterwards
!       var realsrc = evt.src
!       realsrc.ns4clktimer = true
!       setTimeout(realsrc+'.ns4clktimer=false',300);
! };
  // This is THE event. 
  DynMouseEvent._e=new DynMouseEvent()
***************
*** 108,112 ****
        else if(is.ns4 && (e.type=="mouseover" || e.type=="mouseout")) 
evt.setBubble(false);
  
- 
        // This forces mouseUps to happen in the same place where mousedowns took place
        if (DynMouseEvent.forceMouseUp && is.def) { 
--- 117,120 ----
***************
*** 119,136 ****
        realsrc.invokeEvent(type,evt);
  
!       // Other checks
!       if (is.ns4 && is.platform=="other" && type=="mousedown") {
!               if (realsrc.dbltimer!=null) {
!                       evt.type=type="dblclick";
                        evt.bubble = true;
                        realsrc.invokeEvent(type,evt);
                }
!               else realsrc.dbltimer=setTimeout(realsrc+'.dbltimer=null',300);
!       }
! 
!       if (is.ns4) { 
!         if (e.cancelBubble) return false; 
!         if (e && e.target.handleEvent && e.target!=this) 
e.target.handleEvent(type,e); 
!     } 
  
        return evt.browserReturn;
--- 127,150 ----
        realsrc.invokeEvent(type,evt);
  
!       // Other checks. NS4 mainly
!       if (is.ns4) { 
!               // See cancelBrowserEvent()
!               if (realsrc.ns4clktimer && type=="mouseup") {
!                       evt.type=type="click";
                        evt.bubble = true;
                        realsrc.invokeEvent(type,evt);
                }
!               // Linux platforms' dblclicks
!               if (is.platform=="other" && type=="mousedown") {
!                       if (realsrc.dbltimer!=null) {
!                               evt.type=type="dblclick";
!                               evt.bubble = true;
!                               realsrc.invokeEvent(type,evt);
!                       }
!                       else realsrc.dbltimer=setTimeout(realsrc+'.dbltimer=null',300);
!               }
!               // Click on links and form elements
!               if (e && e.target.handleEvent && e.target!=this) 
e.target.handleEvent(e); 
!       } 
  
        return evt.browserReturn;


_______________________________________________
Dynapi-CVS mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/dynapi-cvs

Reply via email to