Draw Pane erase()/hide() functionality is broken on IE with the latest 8.3 builds.
If you call DrawPane erase(); then create any element and try to hide() it, IE crashes with JS error.
This definitely used to work a month ago and is only reproducible on all versions of IE. I think it got broken very recently, maybe this or last week.
Smartclient version: SmartClient_v83p_2013-03-06_Pro
Version v8.3p_2013-03-06/Pro Deployment (2013-03-06)
Browsers: IE7, IE8, IE9 on Windows 7.
Test Case (just add smartclient js files):
Error:
SCRIPT5007: Unable to get value of the property 'style': object is null or undefined
ISC_Drawing.js, line 173 character 621
return this.$448},$99g:function(_1,_2,_3,_4){return"<marker id='"+_1+"' viewBox='0 0 10 10' refY='5' refX='"+(_4?"10":"0")+"' orient='auto' markerUnits='strokeWidth' markerWidth='4' markerHeight='3'><path d='"+(_4?"M 10 0 L 0 5 L 10 10 z":"M 0 0 L 10 5 L 0 10 z")+"' fill='"+((_2&&_2!="")?_2:"none")+"' fill-opacity='"+_3+"'/></marker>"},show:function(){this.hidden=false;if(this.drawingVML){this.$44u.style.visibility="visible"}else if(this.drawingSVG){this.$44z.setAttributeNS(null,"visibility","visible")}else if(this.drawingBitmap){this.drawPane.redrawBitmap()}},hide:function(){this.hidden=true;if(this.drawingVML){this.$44u.style.visibility="hidden"}
If you call DrawPane erase(); then create any element and try to hide() it, IE crashes with JS error.
This definitely used to work a month ago and is only reproducible on all versions of IE. I think it got broken very recently, maybe this or last week.
Smartclient version: SmartClient_v83p_2013-03-06_Pro
Version v8.3p_2013-03-06/Pro Deployment (2013-03-06)
Browsers: IE7, IE8, IE9 on Windows 7.
Test Case (just add smartclient js files):
Code:
<%@ page contentType="text/html; charset=UTF-8"%><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html><head><link rel="shortcut icon" type="image/x-icon" href="favicon.ico"><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/> <!-- smartclient js includes --> <TITLE>Test Case for IE</TITLE> </HEAD> <BODY> <script> isc.DrawPane.create({ ID:"dp1", autoDraw:true, width:350,height:350 }); dp1.erase(); function drawSigns(drwPane){ var xy=new Array(2); var cX=332,cY=330, anchor=0, i=1; var _signD=new Array(); xy[0]=100; xy[1]=100; _signD[i]=isc.DrawLabel.create({ autoDraw:true, drawPane:drwPane, ID:"signD"+i, lineColor:"#000000", left:xy[0], top: xy[1], fontSize:11, contents:""+(i-1)*30 }); _signD[i].hide(); } drawSigns(dp1); </script> </BODY></HTML>
Error:
SCRIPT5007: Unable to get value of the property 'style': object is null or undefined
ISC_Drawing.js, line 173 character 621
return this.$448},$99g:function(_1,_2,_3,_4){return"<marker id='"+_1+"' viewBox='0 0 10 10' refY='5' refX='"+(_4?"10":"0")+"' orient='auto' markerUnits='strokeWidth' markerWidth='4' markerHeight='3'><path d='"+(_4?"M 10 0 L 0 5 L 10 10 z":"M 0 0 L 10 5 L 0 10 z")+"' fill='"+((_2&&_2!="")?_2:"none")+"' fill-opacity='"+_3+"'/></marker>"},show:function(){this.hidden=false;if(this.drawingVML){this.$44u.style.visibility="visible"}else if(this.drawingSVG){this.$44z.setAttributeNS(null,"visibility","visible")}else if(this.drawingBitmap){this.drawPane.redrawBitmap()}},hide:function(){this.hidden=true;if(this.drawingVML){this.$44u.style.visibility="hidden"}
Comment