Do we correctly _not_ set quirks.use_filter_for_dropshadow for IE9? And does IE9 correctly support CSS3 shadows?
On 2010-12-16, at 03:15, [email protected] wrote: > Author: max > Date: 2010-12-16 00:15:21 -0800 (Thu, 16 Dec 2010) > New Revision: 18036 > > Modified: > openlaszlo/trunk/WEB-INF/lps/lfc/kernel/dhtml/LzSprite.js > Log: > Change maxcarlson-20101215-2CJ by maxcarl...@friendly on 2010-12-15 21:19:38 > PST > in /Users/maxcarlson/openlaszlo/trunk-clean > for http://svn.openlaszlo.org/openlaszlo/trunk > > Summary: Fix shadowcolor for RGBA values in IE > > Bugs Fixed: LPP-9565 - Control the opacity for view shadow > > Technical Reviewer: hminsky > QA Reviewer: ptw > > Details: IE only accepts RGB colors. Simplify offset code. > > Tests: demos/house.lzx?lzr=dhtml&lzt=html with: > > highlight-color: rgba(22,137,200,.5); > > runs normally in IE 8. > > > > Modified: openlaszlo/trunk/WEB-INF/lps/lfc/kernel/dhtml/LzSprite.js > =================================================================== > --- openlaszlo/trunk/WEB-INF/lps/lfc/kernel/dhtml/LzSprite.js 2010-12-16 > 08:03:11 UTC (rev 18035) > +++ openlaszlo/trunk/WEB-INF/lps/lfc/kernel/dhtml/LzSprite.js 2010-12-16 > 08:15:21 UTC (rev 18036) > @@ -3447,21 +3447,21 @@ > } > > if (this.quirks.use_filter_for_dropshadow) { > - // Use glow filter > - if (shadowdistance == 0) { > + // IE doesn't support shadow alpha, see > http://msdn.microsoft.com/en-us/library/ms533086%28v=vs.85%29.aspx > + var rgbcolor = > LzColorUtils.inttohex(LzColorUtils.colorfrominternal(shadowcolor)); > + if (shadowdistance === 0) { > // update x and y offsets to compensate for glow > - this.xoffset = this.yoffset = -shadowblurradius; > - this.applyCSS('left', this.x + this.xoffset); > - this.applyCSS('top', this.y + this.yoffset); > - if (shadowblurradius > 0) { > - var hexcolor = LzColorUtils.inttohex(shadowcolor); > - return "progid:DXImageTransform.Microsoft.Glow(Color='" + > hexcolor + "',Strength=" + shadowblurradius + ")"; > - } > + this.applyCSS('left', this.x - shadowblurradius); > + this.applyCSS('top', this.y - shadowblurradius); > + > + // Use glow filter when shadowdistance == 0 > + return "progid:DXImageTransform.Microsoft.Glow(Color='" + > rgbcolor + "',Strength=" + shadowblurradius + ")"; > } else { > - // to match Flash > + this.applyCSS('left', this.x); > + this.applyCSS('top', this.y); > + // adjust angle to match Flash > shadowangle += 90; > - var hexcolor = LzColorUtils.inttohex(shadowcolor); > - return "progid:DXImageTransform.Microsoft.Shadow(Color='" + > hexcolor + "',Direction=" + shadowangle + ",Strength=" + shadowdistance + ")"; > + return "progid:DXImageTransform.Microsoft.Shadow(Color='" + > rgbcolor + "',Direction=" + shadowangle + ",Strength=" + shadowdistance + ")"; > } > } else { > // CSS3 doesn't use angle, but x/y offset. So we need to > > > _______________________________________________ > Laszlo-checkins mailing list > [email protected] > http://www.openlaszlo.org/mailman/listinfo/laszlo-checkins
