On Sun, Mar 21, 2010 at 11:06 AM, P T Withington <[email protected]>wrote:

> Not approved yet:
>
> 1) I don't see the change to updateHeight.
>



>
> 2) I don't understand the change to scrollevent.  If an inputtextview is
> autosizing, it won't have scrollevents enabled will it?  It should only be
> getting scrollevents if it has a fixed size (and hence would scroll any text
> that does not fit).
>

Oh yeah you're right. I need to ensure that when the text changes that new
text height info is stuffed into the LFC some other way
in that case.


>
> On 2010-03-20, at 11:15, Henry Minsky wrote:
>
> > OK  after hacking around some more,  it appears that just switching to
> calling updateHeight instead of $lzc$set_height, in response to the text
> kernel
> > change events, is sufficient to fix the text autosizing behavior, without
> breaking anything else.
> >
> >
> > So the only change besides that is that updateHeight now updates the
> memoized height as well.
> >
> > This also fixes a bug in DHTML where an autosizing inputtext view  did
> not update it's height when the kernel reported
> > a new  text content height (via scrollHeight).
> >
> >
> > Change 20100318-hqm-F by [email protected] on 2010-03-18 11:12:32 EDT
> >    in /Users/hqm/openlaszlo/trunk
> >    for http://svn.openlaszlo.org/openlaszlo/trunk
> >
> > Summary:  fix for automatic height sizing of multiline text fields
> >
> > New Features:
> >
> > Bugs Fixed: LPP-8591
> >
> > Technical Reviewer: ptw
> > QA Reviewer: max
> > Doc Reviewer: (pending)
> >
> > Documentation:
> >
> > Release Notes:
> >
> > Overview:
> >
> > When a multiline text field which is resizable (hassetheight == false)
> > gets a content-changed event, this updates the height without
> > bashing the 'hassetheight' flag.
> >
> >
> > Details:
> >
> > LaszloView.lzs:  updateHeight now updates the memoized height value
> >
> > LzText, LzInputText: call updateHeight instead of the $lzc$set_height
> setter when
> > view is autosizing itself.
> >
> > LzText#scrollevent: In DHTML, typing a newline into a resizable input
> > text field did not properly increase the textfield height to enclose
> > the text.
> >
> > When text is added, the kernel does call back to the LFC to update the
> > "scrollHeight", so I added a call to updateHeight() in the LFC code that
> > handles scrollHeight events from the kernel.
> >
> > Tests:
> >
> > smokecheck
> > lzpix demo
> > test/lfc/maxscroll.lzx
> >
> > test case below, the bounding box should expand vertically to just
> enclose the text as you
> > type.
> >
> > <canvas>
> >        <inputtext width="100"
> >                   bgcolor="#cccccc"
> >                  scrollevents="true"
> >                   multiline="true">Hey there! This text should wrap onto
> a few lines.
> >        </inputtext>
> > </canvas>
> >
> >
> >
> > Files:
> > M       WEB-INF/lps/lfc/views/LzInputText.lzs
> > M       WEB-INF/lps/lfc/views/LzText.lzs
> >
> >
> > Changeset:
> http://svn.openlaszlo.org/openlaszlo/patches/20100318-hqm-F.tar
> >
>
>


-- 
Henry Minsky
Software Architect
[email protected]

Reply via email to