You can subscribe to this list here.
2001 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(17) |
Nov
(47) |
Dec
(1) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2002 |
Jan
(44) |
Feb
(8) |
Mar
|
Apr
(26) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2003 |
Jan
|
Feb
(1) |
Mar
(44) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2005 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(13) |
Sep
(2) |
Oct
|
Nov
|
Dec
|
From: Richard B. <ric...@us...> - 2001-11-08 14:35:05
|
Update of /cvsroot/dynapi/dynapi/src/lib/dynapi/event In directory usw-pr-cvs1:/tmp/cvs-serv14104 Modified Files: dragevent.js Log Message: added lyr.frame&&lyr.frame.lyrobj to stop error in NS4 Index: dragevent.js =================================================================== RCS file: /cvsroot/dynapi/dynapi/src/lib/dynapi/event/dragevent.js,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -r1.11 -r1.12 *** dragevent.js 2001/11/07 00:59:01 1.11 --- dragevent.js 2001/11/08 14:35:01 1.12 *************** *** 53,57 **** if (!lyr) return; // Also, if the dragged layer is not in this document, return ! if(lyr.frame.lyrobj!=e.getSource()) return if(!de.isDragging) --- 53,57 ---- if (!lyr) return; // Also, if the dragged layer is not in this document, return ! if(lyr.frame&&lyr.frame.lyrobj!=e.getSource()) return if(!de.isDragging) |
From: Richard B. <ric...@us...> - 2001-11-08 14:25:46
|
Update of /cvsroot/dynapi/dynapi/tests In directory usw-pr-cvs1:/tmp/cvs-serv11983 Added Files: precreation_speedtest.html Log Message: precreation speedtest --- NEW FILE --- <html> <head> <title>Precreation speedtest</title> <script language="Javascript" src="../src/dynapi.js"></script> <script language="Javascript"> DynAPI.setLibraryPath('../src/lib/'); DynAPI.include('dynapi.api.*'); DynAPI.include('dynapi.event.*'); </script> <script language="Javascript"> myHtml="test" //Creates 49 childlayers of 1 dynlayer, using precreation. function make50Precreate(){ start=new Date() myLayers=[] myLayers[0] = new DynLayer(null,100,200,500,500,"#AA0000",null,null,null,myHtml) for(i=1;i<51;i++){ c="#BB"+(i-1)+"A"+(i-1)+"A" myLayers[i] = new DynLayer(null,30,40,500,500,c,null,null,null,myHtml) myLayers[i-1].addChild(myLayers[i]) if(i==50)DynAPI.document.addChild(myLayers[0]) } alert(new Date()-start+" milliseconds") } //Creates 49 childlayers of 1 dynlayer, without using precreation. function make50(){ start=new Date() myLayers=[] myLayers[0] = new DynLayer(null,100,200,500,500,"#AA0000",null,null,null,myHtml) DynAPI.document.addChild(myLayers[0]) for(i=1;i<51;i++){ c="#DD"+(i-1)+"D"+(i-1)+"D" myLayers[i] = new DynLayer(null,30,40,500,500,c,null,null,null,myHtml) myLayers[i-1].addChild(myLayers[i]) } alert(new Date()-start+" milliseconds") } //Creates 49 childlayers of 1 dynlayer, using precreation. //They are all dragEnabled at creation function make50PrecreateDrag(){ start=new Date() myLayers=[] myLayers[0] = new DynLayer(null,100,200,500,500,"#AA0000",null,null,null,myHtml) for(i=1;i<51;i++){ c="#BB"+(i-1)+"A"+(i-1)+"A" myLayers[i] = new DynLayer(null,30,40,500,500,c,null,null,null,myHtml) DragEvent.enableDragEvents(myLayers[i]) myLayers[i-1].addChild(myLayers[i]) if(i==50){ DynAPI.document.addChild(myLayers[0]) DragEvent.enableDragEvents(myLayers[0]) } } alert(new Date()-start+" milliseconds") } //Creates 49 childlayers of 1 dynlayer, without using precreation. //They are all dragEnabled at creation function make50Drag(){ start=new Date() myLayers=[] myLayers[0] = new DynLayer(null,100,200,500,500,"#AA0000",null,null,null,myHtml) DynAPI.document.addChild(myLayers[0]) DragEvent.enableDragEvents(myLayers[0]) for(i=1;i<51;i++){ c="#DD"+(i-1)+"D"+(i-1)+"D" myLayers[i] = new DynLayer(null,30,40,500,500,c,null,null,null,myHtml) DragEvent.enableDragEvents(myLayers[i]) myLayers[i-1].addChild(myLayers[i]) } alert(new Date()-start+" milliseconds") } //Creates 49 childlayers of 1 dynlayer, using precreation. //They are all dragEnabled after creation function make50PrecreateDrag2(){ start=new Date() myLayers=[] myLayers[0] = new DynLayer(null,100,200,500,500,"#AA0000",null,null,null,myHtml) for(i=1;i<51;i++){ c="#BB"+(i-1)+"A"+(i-1)+"A" myLayers[i] = new DynLayer(null,30,40,500,500,c,null,null,null,myHtml) myLayers[i-1].addChild(myLayers[i]) if(i==50)DynAPI.document.addChild(myLayers[0]) } for(i=0;i<51;i++){ DragEvent.enableDragEvents(myLayers[i]) } alert(new Date()-start+" milliseconds") } //Creates 49 childlayers of 1 dynlayer, without using precreation. //They are all dragEnabled after creation function make50Drag2(){ start=new Date() myLayers=[] myLayers[0] = new DynLayer(null,100,200,500,500,"#AA0000",null,null,null,myHtml) DynAPI.document.addChild(myLayers[0]) for(i=1;i<51;i++){ c="#DD"+(i-1)+"D"+(i-1)+"D" myLayers[i] = new DynLayer(null,30,40,500,500,c,null,null,null,myHtml) myLayers[i-1].addChild(myLayers[i]) } for(i=0;i<51;i++){ DragEvent.enableDragEvents(myLayers[i]) } alert(new Date()-start+" milliseconds") } </script> </head> <body > This is a stress test to see in which browsers precreation is an advantage, and in which it isn't.<br /> For the best results refresh the browser between tests.<br /><br /> 1) <a class="testClass" href="#" onclick="make50Precreate();return false">make 50 using precreate</a><br /> 2) <a class="testClass" href="#" onclick="make50();return false">make 50 without precreate</a><br /> 3) <a class="testClass" href="#" onclick="make50PrecreateDrag();return false">make 50 using precreate - dragenabled at creation</a><br /> 4) <a class="testClass" href="#" onclick="make50Drag();return false">make 50 without precreate - dragenabled at creation</a><br /> 5) <a class="testClass" href="#" onclick="make50PrecreateDrag2();return false">make 50 using precreate - dragenabled after creation</a><br /> 6) <a class="testClass" href="#" onclick="make50Drag2();return false">make 50 without precreate - dragenabled after creation</a><br /> <br /><b>My results:</b><br /> Taken on Win2000 P3 500Mhz 400+MB Ram:<br /><br /> <table><tr><td> IE5.5:------<br /> 1) 340<br /> 2) 280<br /> 3) 1292<br /> 4) 411<br /> 5) 421<br /> 6) 360<br /> <br /> </td><td> Mozilla 0.93:--<br /> 1) 181<br /> 2) 341<br /> 3) 3665<br /> 4) 560<br /> 5) 430<br /> 6) 551<br /> <br /> </td><td> NS 4.7:------<br /> 1) 200<br /> 2) 770<br /> 3) 881<br /> 4) 782<br /> 5) 220<br /> 6) 682<br /> <br /> </td></tr></table> Taken on Win95 VMWare 200+MB Ram:<br /><br /> <table><tr><td> IE4:------<br /> 1) 330<br /> 2) 880<br /> 3) 940<br /> 4) 830<br /> 5) 440<br /> 6) 830<br /> <br /> </td><td></table> Taken on Win98 VMWare 200+MB Ram:<br /><br /> <table><tr><td> IE6:------<br /> 1) 380<br /> 2) 610<br /> 3) 2140<br /> 4) 660<br /> 5) 440<br /> 6) 440<br /> <br /> </td><td> NS6:------<br /> 1) 330<br /> 2) 660<br /> 3) 2750<br /> 4) 490<br /> 5) 390<br /> 6) 610<br /> <br /> </td><td></table> </body> </html> |
From: Richard B. <ric...@us...> - 2001-11-08 10:29:51
|
Update of /cvsroot/dynapi/dynapi/tests In directory usw-pr-cvs1:/tmp/cvs-serv15115 Added Files: drag_forms.html Log Message: added this forms in drag layers bugtest --- NEW FILE --- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <html> <head> <title>Untitled</title> <script language="Javascript" type="text/javascript" src="../src/dynapi.js"></script> <script language="Javascript" type="text/javascript"> <!-- DynAPI.setLibraryPath('../src/lib/'); DynAPI.include('dynapi.api.*'); DynAPI.include('dynapi.event.*') //--> </script> <script language="Javascript" type="text/javascript"> <!-- DynAPI.onLoad=function() { lyr = new DynLayer(null,50,50,250,200,'red'); lyr.setHTML('drag me <form>'+ '<input type="text" value="text">'+ '<input type="button" value="submit">'+ '<textarea name="ta" cols=20 rows=3>textarea textarea textarea textarea textarea textarea textarea</textarea>'+ '</form>'); listener = new EventListener(); listener.ondragend=function(e) { if (is.ns4 && is.platform=="win32") e.getSource().setHTML(e.getSource().getHTML()); } lyr.addEventListener(listener); DynAPI.document.addChild(lyr); DragEvent.enableDragEvents(lyr); DragEvent.setDragBoundary(lyr); }; //--> </script> </head> <body bgcolor="#ffffff"> </body> </html> |
From: martin str?m <ma...@us...> - 2001-11-07 10:43:18
|
Update of /cvsroot/dynapi/dynapi/examples In directory usw-pr-cvs1:/tmp/cvs-serv22257 Modified Files: dynapi.event.dragevent.html Log Message: DragEvent.enableDragEvents() now only accept one dynlayer, the example passed two dynlayers to enableDragEvents() Index: dynapi.event.dragevent.html =================================================================== RCS file: /cvsroot/dynapi/dynapi/examples/dynapi.event.dragevent.html,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** dynapi.event.dragevent.html 2001/11/01 17:02:46 1.2 --- dynapi.event.dragevent.html 2001/11/07 10:43:13 1.3 *************** *** 16,20 **** var a=p.addChild(new DynLayer(null,10,10,20,20,'red')) var a2=p.addChild(new DynLayer(null,10,40,null,null,null,null,null,null,'drag<br />text')) ! DragEvent.enableDragEvents(a,a2) DragEvent.setDragBoundary(a) --- 16,22 ---- var a=p.addChild(new DynLayer(null,10,10,20,20,'red')) var a2=p.addChild(new DynLayer(null,10,40,null,null,null,null,null,null,'drag<br />text')) ! ! DragEvent.enableDragEvents(a) ! DragEvent.enableDragEvents(a2) DragEvent.setDragBoundary(a) |
From: Richard B. <ric...@us...> - 2001-11-07 00:59:04
|
Update of /cvsroot/dynapi/dynapi/src/lib/dynapi/event In directory usw-pr-cvs1:/tmp/cvs-serv13736 Modified Files: dragevent.js Log Message: added a if(dlyr.frame) check, as it was causing errors Index: dragevent.js =================================================================== RCS file: /cvsroot/dynapi/dynapi/src/lib/dynapi/event/dragevent.js,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -r1.10 -r1.11 *** dragevent.js 2001/11/06 10:17:02 1.10 --- dragevent.js 2001/11/07 00:59:01 1.11 *************** *** 121,125 **** // Avoid click for the dragged layer ( with MouseEvent addition ) if (is.def) DynAPI.wasDragging=true; ! if (lyr.parent.DragDrop) lyr.parent.DragDrop(lyr,e); // Properties for the event de.type="dragend"; --- 121,125 ---- // Avoid click for the dragged layer ( with MouseEvent addition ) if (is.def) DynAPI.wasDragging=true; ! if (lyr.parent.DragDrop) lyr.parent.DragDrop(lyr,e); // Properties for the event de.type="dragend"; *************** *** 141,145 **** if (!dlyr.isDynLayer) return; dlyr.addEventListener(DragEvent.lyrListener); ! var dyndoc=doc||dlyr.frame.lyrobj dyndoc.addEventListener(DragEvent.docListener); dyndoc.dragEnabled=true; --- 141,146 ---- if (!dlyr.isDynLayer) return; dlyr.addEventListener(DragEvent.lyrListener); ! var dyndoc=doc||DynAPI.document; ! if (dlyr.frame) dyndoc=dlyr.frame.lyrobj; dyndoc.addEventListener(DragEvent.docListener); dyndoc.dragEnabled=true; |
From: Richard B. <ric...@us...> - 2001-11-06 20:25:31
|
Update of /cvsroot/dynapi/dynapi/tests In directory usw-pr-cvs1:/tmp/cvs-serv19201 Modified Files: _drag_frame1.html Log Message: added a document mousemove eventlistener Index: _drag_frame1.html =================================================================== RCS file: /cvsroot/dynapi/dynapi/tests/_drag_frame1.html,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -r1.2 -r1.3 *** _drag_frame1.html 2001/11/06 10:17:02 1.2 --- _drag_frame1.html 2001/11/06 20:25:26 1.3 *************** *** 30,33 **** --- 30,41 ---- DynAPI.document2.addChild(myLayer3); + var count=0 + var EListener1 = new EventListener(); + EListener1.onmousemove = function(e) { + window.status=count++; + }; + DynAPI.document.addEventListener(EListener1); + DynAPI.document2.addEventListener(EListener1); + }; *************** *** 35,47 **** </HEAD> ! <BODY><B>Issue :</B> This document is a frameset (drag_frame.htm),<BR>with two ! documents loaded in it.<BR><BR>All the dynAPI code is in ! _drag_frame1.html (this page).<BR>_drag_frame2.html is empty. Layers are created in both frames and made draggable using the dragevent extension. ! <BR>If the dynlayer has been created, it gets the dyndocument ! from the dynlayer, without passing it in the enableDragEvents function. ! <BR><BR><B>Problems :</B> In IE5.5, and to a lesser extent Mozilla, (win2000) ! dragging is repeated when the mouse moves over the second frame during dragging. NS4 works fine. </BODY></HTML> --- 43,55 ---- </HEAD> ! <BODY><B>Issue :</B> This document is a frameset (drag_frame.htm),<BR>with two ! documents loaded in it.<BR><BR>All the dynAPI code is in ! _drag_frame1.html (this page).<BR>_drag_frame2.html is empty. Layers are created in both frames and made draggable using the dragevent extension. ! <BR>If the dynlayer has been created, it gets the dyndocument ! from the dynlayer, without passing it in the enableDragEvents function. ! <BR><BR><B>Problems :</B> In IE5.5, and to a lesser extent Mozilla, (win2000) ! dragging is repeated when the mouse moves over the second frame during dragging. NS4 works fine. </BODY></HTML> |
From: Jordi M. <do...@us...> - 2001-11-06 17:59:01
|
Update of /cvsroot/dynapi/dynapi In directory usw-pr-cvs1:/tmp/cvs-serv30616 Modified Files: REVISION Log Message: 2.5.6 Revision Index: REVISION =================================================================== RCS file: /cvsroot/dynapi/dynapi/REVISION,v retrieving revision 1.12 retrieving revision 1.13 diff -C2 -r1.12 -r1.13 *** REVISION 2001/10/29 16:36:52 1.12 --- REVISION 2001/11/06 17:58:53 1.13 *************** *** 10,18 **** - Performance, performance, performance. - [ Legend: ] [ + Added Feature ] [ * Improved/Changed Feature ] [ - Bug Fix ] Version 2.55 --- 10,34 ---- - Performance, performance, performance. [ Legend: ] [ + Added Feature ] [ * Improved/Changed Feature ] [ - Bug Fix ] + + Version 2.5.6 + ------------- + Notice that we are now using 2.5.6 syntax instead of 2.56. Actually it is the same, but as there's a major + change expected with 2.6 and we will have both branches active during quite a lot of time, it is quite possible that + we reach 2.5.10 and more. + + [+] tests/ directori contains sample cases of recently fixed bugs + [-] Fixed zIndex bug in NS4 + [-] Fixed layers receiving more than one precreate event + [-] Fixed dragEvent across frames. + [-] Fixed ( finally ) secondary inheritance. You can now safely make widgets inherit from other widgets. + [*] deleted =DynAPI.browser, as it is not being used, and dissallowed including the browser.js + file before the other DynAPI files + [*] More accurate document size calculations when document is inside a frame + [-] Fixed image animation bug + Version 2.55 |
From: Jordi M. <do...@us...> - 2001-11-06 10:17:04
|
Update of /cvsroot/dynapi/dynapi/tests In directory usw-pr-cvs1:/tmp/cvs-serv15514/tests Modified Files: _drag_frame1.html Log Message: Drag event across frames fix. Simply cancel mousemove events that do not come from the document were the dragged layer belongs. Index: _drag_frame1.html =================================================================== RCS file: /cvsroot/dynapi/dynapi/tests/_drag_frame1.html,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -r1.1 -r1.2 *** _drag_frame1.html 2001/11/06 09:36:48 1.1 --- _drag_frame1.html 2001/11/06 10:17:02 1.2 *************** *** 38,44 **** documents loaded in it.<BR><BR>All the dynAPI code is in _drag_frame1.html (this page).<BR>_drag_frame2.html is ! empty.<BR>In the enableDragEvents code in DynAPI 2.55a file dragevents.js is ! flawed, as it doesn't allow adding a dragevent to another frame. <BR> ! This page tests it. <BR>If the dynlayer has been created, it gets the dyndocument --- 38,43 ---- documents loaded in it.<BR><BR>All the dynAPI code is in _drag_frame1.html (this page).<BR>_drag_frame2.html is ! empty. Layers are created in both frames and made draggable using ! the dragevent extension. <BR>If the dynlayer has been created, it gets the dyndocument |
From: Jordi M. <do...@us...> - 2001-11-06 10:17:04
|
Update of /cvsroot/dynapi/dynapi/src/lib/dynapi/event In directory usw-pr-cvs1:/tmp/cvs-serv15514/src/lib/dynapi/event Modified Files: dragevent.js Log Message: Drag event across frames fix. Simply cancel mousemove events that do not come from the document were the dragged layer belongs. Index: dragevent.js =================================================================== RCS file: /cvsroot/dynapi/dynapi/src/lib/dynapi/event/dragevent.js,v retrieving revision 1.9 retrieving revision 1.10 diff -C2 -r1.9 -r1.10 *** dragevent.js 2001/08/16 20:42:38 1.9 --- dragevent.js 2001/11/06 10:17:02 1.10 *************** *** 52,55 **** --- 52,57 ---- var lyr = de.src; if (!lyr) return; + // Also, if the dragged layer is not in this document, return + if(lyr.frame.lyrobj!=e.getSource()) return if(!de.isDragging) *************** *** 136,146 **** else if (a.length==5) dlyr.dragBoundary=new Array(t,r,b,l); }; ! DragEvent.enableDragEvents=function(f) { ! for (var i=0;i<arguments.length;i++) { ! var lyr=arguments[i]; ! if (lyr.isDynLayer) lyr.addEventListener(DragEvent.lyrListener); ! } ! if(f.isDynDocument) f.addEventListener(DragEvent.docListener); ! else DynAPI.document.addEventListener(DragEvent.docListener); }; DragEvent.disableDragEvents=function() { --- 138,147 ---- else if (a.length==5) dlyr.dragBoundary=new Array(t,r,b,l); }; ! DragEvent.enableDragEvents=function(dlyr,doc) { ! if (!dlyr.isDynLayer) return; ! dlyr.addEventListener(DragEvent.lyrListener); ! var dyndoc=doc||dlyr.frame.lyrobj ! dyndoc.addEventListener(DragEvent.docListener); ! dyndoc.dragEnabled=true; }; DragEvent.disableDragEvents=function() { |
From: Jordi M. <do...@us...> - 2001-11-06 10:17:04
|
Update of /cvsroot/dynapi/dynapi/src In directory usw-pr-cvs1:/tmp/cvs-serv15514/src Modified Files: dynapi.js Log Message: Drag event across frames fix. Simply cancel mousemove events that do not come from the document were the dragged layer belongs. Index: dynapi.js =================================================================== RCS file: /cvsroot/dynapi/dynapi/src/dynapi.js,v retrieving revision 1.44 retrieving revision 1.45 diff -C2 -r1.44 -r1.45 *** dynapi.js 2001/11/05 17:47:55 1.44 --- dynapi.js 2001/11/06 10:17:02 1.45 *************** *** 69,73 **** this.invokeEvent("beforeremove"); this.specificRemove(); ! this.created = false; this.invokeEvent("remove"); this.invokeEvent("delete"); --- 69,73 ---- this.invokeEvent("beforeremove"); this.specificRemove(); ! this.precreated = this.created = false; this.invokeEvent("remove"); this.invokeEvent("delete"); |
From: Jordi M. <do...@us...> - 2001-11-06 09:54:24
|
Update of /cvsroot/dynapi/dynapi/tests/files In directory usw-pr-cvs1:/tmp/cvs-serv7414 Removed Files: _drag_frame2.html _drag_frame1.html Log Message: Ooops !!! They were already there --- _drag_frame2.html DELETED --- --- _drag_frame1.html DELETED --- |
From: Jordi M. <do...@us...> - 2001-11-06 09:54:03
|
Update of /cvsroot/dynapi/dynapi/tests In directory usw-pr-cvs1:/tmp/cvs-serv7261 Removed Files: drag_frame.htm Log Message: Ooops !!! They were already there --- drag_frame.htm DELETED --- |
From: Jordi M. <do...@us...> - 2001-11-06 09:36:52
|
Update of /cvsroot/dynapi/dynapi/tests In directory usw-pr-cvs1:/tmp/cvs-serv1019 Added Files: drag_frames.html _drag_frame2.html _drag_frame1.html Log Message: Added drag_frames.html, which allows testing of EnableDragEvents across frames. --- NEW FILE --- <HTML><HEAD><TITLE>Dragging Frame Example</TITLE> <META http-equiv=Content-Type content="text/html; charset=iso-8859-1"> <META content="MSHTML 5.50.4616.200" name=GENERATOR></HEAD><FRAMESET border=0 frameSpacing=0 frameBorder=0 cols=50%,50%><FRAME name=frame1 src="_drag_frame1.html"><FRAME name=frame2 src="_drag_frame2.html"></FRAMESET></HTML> --- NEW FILE --- <HTML><HEAD> <META http-equiv=Content-Type content="text/html; charset=iso-8859-1"> <META content="MSHTML 5.50.4616.200" name=GENERATOR></HEAD> <BODY></BODY></HTML> --- NEW FILE --- <HTML><HEAD> <META http-equiv=Content-Type content="text/html; charset=iso-8859-1"> <SCRIPT language=JavaScript src="../src/dynapi.js"></SCRIPT> <SCRIPT language=Javascript> DynAPI.setLibraryPath('../src/lib/'); DynAPI.include('dynapi.api.*'); DynAPI.include('dynapi.event.*') </SCRIPT> <SCRIPT language=Javascript> DynAPI.onLoad=function() { myLayer1 = new DynLayer('dragLyr1',50,50,175,75,'#0000FF'); myLayer2 = new DynLayer('dragLyr2',50,50,175,75,'#FF0000'); DynAPI.document.addChild(myLayer1); DragEvent.enableDragEvents(myLayer1); DragEvent.setDragBoundary(myLayer1); DynAPI.document2=DynAPI.addChild(new DynDocument(parent.frame2)); DynAPI.document2.addChild(myLayer2); DragEvent.enableDragEvents(myLayer2); DragEvent.setDragBoundary(myLayer2); myLayer3 = new DynLayer('dragLyr3',50,150,175,75,'#00FF00'); DragEvent.enableDragEvents(myLayer3,DynAPI.document2); //DragEvent.setDragBoundary(myLayer3); DynAPI.document2.addChild(myLayer3); }; </SCRIPT> </HEAD> <BODY><B>Issue :</B> This document is a frameset (drag_frame.htm),<BR>with two documents loaded in it.<BR><BR>All the dynAPI code is in _drag_frame1.html (this page).<BR>_drag_frame2.html is empty.<BR>In the enableDragEvents code in DynAPI 2.55a file dragevents.js is flawed, as it doesn't allow adding a dragevent to another frame. <BR> This page tests it. <BR>If the dynlayer has been created, it gets the dyndocument from the dynlayer, without passing it in the enableDragEvents function. <BR><BR><B>Problems :</B> In IE5.5, and to a lesser extent Mozilla, (win2000) dragging is repeated when the mouse moves over the second frame during dragging. NS4 works fine. </BODY></HTML> |
From: Richard B. <ric...@us...> - 2001-11-05 22:35:08
|
Update of /cvsroot/dynapi/dynapi/tests In directory usw-pr-cvs1:/tmp/cvs-serv26600 Added Files: drag_frame.htm Log Message: added a test for cross-frame dragging --- NEW FILE --- <html> <title>Dragging Frame Example</title> <frameset cols="50%,50%" border="0" frameborder="0"> <frame src="files/_drag_frame1.html" name="frame1"> <frame src="files/_drag_frame2.html" name="frame2"> </frameset> </html> |
From: Richard B. <ric...@us...> - 2001-11-05 19:23:13
|
Update of /cvsroot/dynapi/dynapi/src/lib/dynapi/event In directory usw-pr-cvs1:/tmp/cvs-serv6788 Modified Files: mouse.js Log Message: added patch 413952 so NS4+6 return correct coords for getPageX when the page is scrolled. Index: mouse.js =================================================================== RCS file: /cvsroot/dynapi/dynapi/src/lib/dynapi/event/mouse.js,v retrieving revision 1.21 retrieving revision 1.22 diff -C2 -r1.21 -r1.22 *** mouse.js 2001/08/14 20:46:03 1.21 --- mouse.js 2001/11/05 19:23:10 1.22 *************** *** 36,40 **** setTimeout(realsrc+'.ns4clktimer=false',300); }; ! // This is THE event. DynMouseEvent._e=new DynMouseEvent() // If this is true, then mouseups always happen where the mousedown happened --- 36,40 ---- setTimeout(realsrc+'.ns4clktimer=false',300); }; ! // This is THE event. DynMouseEvent._e=new DynMouseEvent() // If this is true, then mouseups always happen where the mousedown happened *************** *** 73,80 **** // Step two: mouse coordinate properties ! evt.pageX=is.ie?e.x+document.body.scrollLeft:e.pageX-window.pageXOffset; ! evt.pageY=is.ie?e.y+document.body.scrollTop:e.pageY-window.pageYOffset; ! evt.x=is.ie?e.x-evt.src.getPageX():e.layerX ! evt.y=is.ie?e.y-evt.src.getPageY():e.layerY // Step three: mouse buttons --- 73,90 ---- // Step two: mouse coordinate properties ! if (is.ns4 && type=='mouseover') { ! // debugging for NS4 mouseover event ! evt.pageX=evt.pageX; ! evt.pageY=evt.pageY; ! evt.x=evt.pageX-evt.src.getPageX() ! evt.y=evt.pageY-evt.src.getPageY() ! } else { ! // standard DynAPI coordinate calculation ! evt.pageX=is.ie?e.x+document.body.scrollLeft:e.pageX; ! evt.pageY=is.ie?e.y+document.body.scrollTop:e.pageY; ! evt.x=is.ie?evt.pageX-evt.src.getPageX():e.layerX ! evt.y=is.ie?evt.pageY-evt.src.getPageY():e.layerY ! } ! // Step three: mouse buttons *************** *** 117,124 **** // This forces mouseUps to happen in the same place where mousedowns took place ! if (DynMouseEvent.forceMouseUp && is.def) { ! if (e.type=='mousedown') DynMouseEvent.focus=realsrc; ! else if (e.type=='mouseup' && DynMouseEvent.focus!=null) ! evt.src=realsrc=DynMouseEvent.focus; }; --- 127,134 ---- // This forces mouseUps to happen in the same place where mousedowns took place ! if (DynMouseEvent.forceMouseUp && is.def) { ! if (e.type=='mousedown') DynMouseEvent.focus=realsrc; ! else if (e.type=='mouseup' && DynMouseEvent.focus!=null) ! evt.src=realsrc=DynMouseEvent.focus; }; *************** *** 127,131 **** // Other checks. NS4 mainly ! if (is.ns4) { // See cancelBrowserEvent() if (realsrc.ns4clktimer && type=="mouseup") { --- 137,141 ---- // Other checks. NS4 mainly ! if (is.ns4) { // See cancelBrowserEvent() if (realsrc.ns4clktimer && type=="mouseup") { |
From: Richard B. <ric...@us...> - 2001-11-05 18:30:39
|
Update of /cvsroot/dynapi/dynapi/tests In directory usw-pr-cvs1:/tmp/cvs-serv24872 Modified Files: multiple_precreate_events.html Log Message: updated to reflect this bug being fixed Index: multiple_precreate_events.html =================================================================== RCS file: /cvsroot/dynapi/dynapi/tests/multiple_precreate_events.html,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -r1.1 -r1.2 *** multiple_precreate_events.html 2001/11/05 11:30:06 1.1 --- multiple_precreate_events.html 2001/11/05 18:30:36 1.2 *************** *** 30,34 **** EListener1.onprecreate = function(e) {alert("In onprecreate");}; EListener1.oncreate = function(e) {alert("In oncreate");}; ! layer3.addEventListener(EListener1); layer1.addChild(layer2); --- 30,34 ---- EListener1.onprecreate = function(e) {alert("In onprecreate");}; EListener1.oncreate = function(e) {alert("In oncreate");}; ! layer1.addEventListener(EListener1); layer1.addChild(layer2); *************** *** 36,39 **** --- 36,40 ---- DynAPI.document.addChild(layer1); + } *************** *** 54,58 **** The yellow layer has an eventlistener for oncreate, and for onprecreate.<br /> Normally each should be called once, but onprecreate is being called once for each time the layer is nested.<br /> ! </body> </html> --- 55,61 ---- The yellow layer has an eventlistener for oncreate, and for onprecreate.<br /> Normally each should be called once, but onprecreate is being called once for each time the layer is nested.<br /> ! <b>Update 5/Nov/2001 :</b><br /> ! This issue has been resolved by adding a test to DynObject.flagPrecreate as suggested my Michael Pemberton, so flagPrecreate is only run the first time.<br /> ! This might not be the best definite solution, but at least clears up this bug for the time-being.<br /> </body> </html> |
From: Richard B. <ric...@us...> - 2001-11-05 17:47:58
|
Update of /cvsroot/dynapi/dynapi/src In directory usw-pr-cvs1:/tmp/cvs-serv13110 Modified Files: dynapi.js Log Message: updated flagprecreate to prevent multiple onprecreate events fireing. Index: dynapi.js =================================================================== RCS file: /cvsroot/dynapi/dynapi/src/dynapi.js,v retrieving revision 1.43 retrieving revision 1.44 diff -C2 -r1.43 -r1.44 *** dynapi.js 2001/11/05 16:45:49 1.43 --- dynapi.js 2001/11/05 17:47:55 1.44 *************** *** 59,65 **** --- 59,67 ---- }; DynObject.prototype.flagPrecreate = function() { + if (this.precreated) return; var l=this.children.length; for (var i=0; i<l; i++) this.children[i].flagPrecreate(); this.invokeEvent('precreate'); + this.precreated=true; }; DynObject.prototype.del = function() { |
From: Jordi M. <do...@us...> - 2001-11-05 16:45:52
|
Update of /cvsroot/dynapi/dynapi/src/lib/dynapi/event In directory usw-pr-cvs1:/tmp/cvs-serv27314/src/lib/dynapi/event Modified Files: listeners.js Log Message: Secondary inheritance bugfixing Index: listeners.js =================================================================== RCS file: /cvsroot/dynapi/dynapi/src/lib/dynapi/event/listeners.js,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -r1.6 -r1.7 *** listeners.js 2001/11/05 00:12:44 1.6 --- listeners.js 2001/11/05 16:45:49 1.7 *************** *** 53,57 **** } } ! DynObject.prototype.eventListeners = null; DynObject.prototype._listeners_del = DynObject.prototype.del DynObject.prototype.del = function() { --- 53,58 ---- } } ! //removed to counter inheritance bug (#425789) ! //DynObject.prototype.eventListeners = null; DynObject.prototype._listeners_del = DynObject.prototype.del DynObject.prototype.del = function() { |
From: Jordi M. <do...@us...> - 2001-11-05 16:45:52
|
Update of /cvsroot/dynapi/dynapi/src In directory usw-pr-cvs1:/tmp/cvs-serv27314/src Modified Files: dynapi.js Log Message: Secondary inheritance bugfixing Index: dynapi.js =================================================================== RCS file: /cvsroot/dynapi/dynapi/src/dynapi.js,v retrieving revision 1.42 retrieving revision 1.43 diff -C2 -r1.42 -r1.43 *** dynapi.js 2001/11/05 00:13:40 1.42 --- dynapi.js 2001/11/05 16:45:49 1.43 *************** *** 12,17 **** this.children = []; //added to counter inheritance bug (#425789) ! this.eventListeners = []; ! this.hasEventListeners = false; }; DynObject.prototype.getClass = function() { return this.constructor }; --- 12,17 ---- this.children = []; //added to counter inheritance bug (#425789) ! this.eventListeners = []; ! this.hasEventListeners = false; }; DynObject.prototype.getClass = function() { return this.constructor }; |
From: Richard B. <ric...@us...> - 2001-11-05 15:03:20
|
Update of /cvsroot/dynapi/dynapi/src/lib/dynapi/api In directory usw-pr-cvs1:/tmp/cvs-serv29768 Modified Files: dynlayer.js Log Message: applied Martin Strom's fix to bug 458666 Index: dynlayer.js =================================================================== RCS file: /cvsroot/dynapi/dynapi/src/lib/dynapi/api/dynlayer.js,v retrieving revision 1.69 retrieving revision 1.70 diff -C2 -r1.69 -r1.70 *** dynlayer.js 2001/11/02 15:39:40 1.69 --- dynlayer.js 2001/11/05 15:03:18 1.70 *************** *** 367,372 **** else { if (is.ns4) return this.doc.width; else if (is.ie) { ! if (is.platform=="mac") this.elm.offsetWidth; return parseInt(this.elm.scrollWidth); } --- 367,373 ---- else { if (is.ns4) return this.doc.width; + //if this.elm.offsetWidth/Height is not accessed, then ie5mac will return NaN. else if (is.ie) { ! if (is.platform=="mac") this.elm.offsetWidth=this.elm.offsetWidth; return parseInt(this.elm.scrollWidth); } *************** *** 384,389 **** else { if (is.ns4) return this.doc.height; else if (is.ie) { ! if (is.platform=="mac") this.elm.offsetHeight; return parseInt(this.elm.scrollHeight); } --- 385,391 ---- else { if (is.ns4) return this.doc.height; + //if this.elm.offsetWidth/Height is not accessed, then ie5mac will return NaN. else if (is.ie) { ! if (is.platform=="mac") this.elm.offsetHeight=this.elm.offsetHeight; return parseInt(this.elm.scrollHeight); } |
From: Richard B. <ric...@us...> - 2001-11-05 11:30:08
|
Update of /cvsroot/dynapi/dynapi/tests In directory usw-pr-cvs1:/tmp/cvs-serv9737 Added Files: multiple_precreate_events.html Log Message: shows the multiple precreate events bug --- NEW FILE --- <html> <head> <title>Secondary inheritance test</title> </head> <script language="Javascript" src="../src/dynapi.js"></script> <script language="Javascript"> DynAPI.setLibraryPath('../src/lib/') DynAPI.include('dynapi.api.*'); DynAPI.include('dynapi.event.*') DynAPI.include('dynapi.util.thread.js'); DynAPI.include('dynapi.util.pathanim.js'); DynAPI.include('dynapi.gui.dynimage.js'); DynAPI.include('dynapi.gui.button.js'); DynAPI.include('dynapi.gui.scrollbar.js'); DynAPI.include('dynapi.gui.viewport.js'); DynAPI.include('dynapi.gui.scrollpane.js'); DynAPI.include('dynapi.gui.label.js'); DynAPI.onLoad=function() { layer1=new DynLayer(null,100,180,100,100,"gold") layer2=new DynLayer(null,10,10,80,80,"red") layer3=new DynLayer(null,10,10,60,60,"yellow") var EListener1 = new EventListener(); EListener1.onprecreate = function(e) {alert("In onprecreate");}; EListener1.oncreate = function(e) {alert("In oncreate");}; layer3.addEventListener(EListener1); layer1.addChild(layer2); layer2.addChild(layer3); DynAPI.document.addChild(layer1); } </script> <body bgcolor="#ffffff"> <b>Issue:</b><br /> This concerns a bug Dan posted to the list : <pre> There is also another major bug that should be fixed up in 2.5x. The precreate event gets called multiple time (an extra time for each time it's nested). The DynObject.flagPrecreate() method is set up incorrectly. The fix I did in my working copy isn't compatable with v2.5, so someone else will have to do a quick fix. </pre> <br /><br /><br /><br /><br /><br /><br /><br /><br /> <b>More info:</b> The yellow layer has an eventlistener for oncreate, and for onprecreate.<br /> Normally each should be called once, but onprecreate is being called once for each time the layer is nested.<br /> </body> </html> |
From: Richard B. <ric...@us...> - 2001-11-05 00:22:54
|
Update of /cvsroot/dynapi/dynapi/tests In directory usw-pr-cvs1:/tmp/cvs-serv27300 Modified Files: secondary_inheritance.html Log Message: updated test to reflect solved inheritance bug (#425789) Index: secondary_inheritance.html =================================================================== RCS file: /cvsroot/dynapi/dynapi/tests/secondary_inheritance.html,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -r1.1 -r1.2 *** secondary_inheritance.html 2001/11/02 01:55:03 1.1 --- secondary_inheritance.html 2001/11/05 00:22:51 1.2 *************** *** 105,109 **** in the event model or in other parts of the core that introduced this bug?<br /> <br /><br /> ! </body> --- 105,114 ---- in the event model or in other parts of the core that introduced this bug?<br /> <br /><br /> ! <b>Update 4/Nov/2001 : </b><br /> ! <br /> ! As of now this issue seems to have been resolved, thanks to the changes to dynapi.js<br /> ! and listeners.js as suggested by Joachim Lundgren.<br /> ! These changes have been commented, so they can be reversed if they have any<br /> ! negative influence on anything else. </body> |
From: Richard B. <ric...@us...> - 2001-11-05 00:13:43
|
Update of /cvsroot/dynapi/dynapi/src In directory usw-pr-cvs1:/tmp/cvs-serv25719 Modified Files: dynapi.js Log Message: added line 14+15 to counter inheritance bug (#425789) Index: dynapi.js =================================================================== RCS file: /cvsroot/dynapi/dynapi/src/dynapi.js,v retrieving revision 1.41 retrieving revision 1.42 diff -C2 -r1.41 -r1.42 *** dynapi.js 2001/08/13 23:17:46 1.41 --- dynapi.js 2001/11/05 00:13:40 1.42 *************** *** 11,18 **** this.parent = null; this.children = []; }; DynObject.prototype.getClass = function() { return this.constructor }; DynObject.prototype.setID = function(id) { ! if (this.id) delete DynObject.all[this.id]; this.id = id; DynObject.all[this.id] = this; --- 11,21 ---- this.parent = null; this.children = []; + //added to counter inheritance bug (#425789) + this.eventListeners = []; + this.hasEventListeners = false; }; DynObject.prototype.getClass = function() { return this.constructor }; DynObject.prototype.setID = function(id) { ! if (this.id) delete DynObject.all[this.id]; this.id = id; DynObject.all[this.id] = this; |
From: Richard B. <ric...@us...> - 2001-11-05 00:12:47
|
Update of /cvsroot/dynapi/dynapi/src/lib/dynapi/event In directory usw-pr-cvs1:/tmp/cvs-serv25615 Modified Files: listeners.js Log Message: commented out line 26 to counter inheritance bug (#425789) Index: listeners.js =================================================================== RCS file: /cvsroot/dynapi/dynapi/src/lib/dynapi/event/listeners.js,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -r1.5 -r1.6 *** listeners.js 2001/05/08 09:18:31 1.5 --- listeners.js 2001/11/05 00:12:44 1.6 *************** *** 24,28 **** // Extend DynObject to support EventListeners DynObject.prototype.addEventListener=function(listener) { ! if(!this.eventListeners) { this.eventListeners = []; } this.hasEventListeners = true; for (var i=0;i<this.eventListeners.length;i++) if (this.eventListeners[i]==listener) return; --- 24,29 ---- // Extend DynObject to support EventListeners DynObject.prototype.addEventListener=function(listener) { ! //removed to counter inheritance bug (#425789) ! //if(!this.eventListeners) { this.eventListeners = []; } this.hasEventListeners = true; for (var i=0;i<this.eventListeners.length;i++) if (this.eventListeners[i]==listener) return; |
From: Richard B. <ric...@us...> - 2001-11-04 23:48:50
|
Update of /cvsroot/dynapi/dynapi/tests In directory usw-pr-cvs1:/tmp/cvs-serv20755 Added Files: doctype_clientHeight.html Log Message: a test to see if IE5/Mac and IE6/win differ in strict mode. --- NEW FILE --- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 //EN" "http://www.w3.org/TR/html4/strict.dtd"> <html><head> <title>Test Page - IE6 + doctype</title> </head> <body onload="alert('document.body.clientHeight = '+document.body.clientHeight+'\n document.compatMode = '+document.compatMode+'\n document.documentElement.clientHeight = '+document.documentElement.clientHeight)"> Note IE only test.<br /><br /> <b>Issue:</b> When certain doctypes are used, IE6/windows and IE5/Mac<br /> will switch out of "quirks" mode, into "strict" mode. This means some elements will<br /> be rendered in a different way.<br /> (More info on this : <a href="http://www.richardinfo.com/case_studies/doctypes.html" target=new>http://www.richardinfo.com/case_studies/doctypes.html</a> )<br /><br /> It seems IE6 in strict mode returns a wrong value for document.body.clientHeight.<br /> What we want to know is how IE5/Mac does this in strict mode.<br /> If the alert showed something like this:<br /> <pre> document.body.clientHeight = 253 document.compatMode = CSS1Compat document.documentElement.clientHeight = 595 </pre> then the browser is in strict mode, and reacting like IE6/Win. <br /><br /> Test results here please <br /> <a href="http://sourceforge.net/tracker/index.php?func=detail&aid=477798&group_id=5757&atid=305757">[#477798]</a> </font> </body> </html> |