[Laszlo-dev] Fixing LPP-8257

promanik@laszlosystems.com promanik at laszlosystems.com
Wed Jun 17 14:54:49 PDT 2009


Hi Max,

Tucker discovered that turning off the IE-specific quirk, 
inputtext_parents_cannot_contain_clip, seems to fix the problem. I've 
been testing it in IE7/IE8 and it looks good. This quirk was introduced 
in r5195 (LPP-3691). Can you think of a reason why this quirk is still 
needed?

To summarize the quirk,

In LzInputTextSprite#__show:

     if (this.quirks['inputtext_parents_cannot_contain_clip']) {
         var sprites = this.__findParents('clip');
         var l = sprites.length;
         if (l > 1) {
             if (this._shownclipvals == null) {
                 //if ($debug) Debug.warn('IE may not show the contents 
of inputtexts whose intermediate parents have clipping on.  The 
following parents have clip set:', sprites);
                 // store old values
                 this._shownclipvals = [];
                 this._shownclippedsprites = sprites;
                 for (var n = 0; n < l; n++) {
                     var v = sprites[n];
                     this._shownclipvals[n] = 
v.__LZclickcontainerdiv.style.clip;
                     v.__LZclickcontainerdiv.style.clip = 'rect(auto 
auto auto auto)';
                 }
             }
         }
     }

In LzInputTextSprite#__hide:

     if (this.quirks['inputtext_parents_cannot_contain_clip']) {
         if (this._shownclipvals != null) {
             // restore old values
             for (var n = 0; n < this._shownclipvals.length; n++) {
                 var v = this._shownclippedsprites[n];
                 v.__LZclickcontainerdiv.style.clip = 
this._shownclipvals[n];
             }
             this._shownclipvals = null;
             this._shownclippedsprites = null;
         }
     }


Thanks!

Phil



More information about the Laszlo-dev mailing list