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