<div dir="ltr"><div>We should make fitContens a bit smarter/ dumber. It should send changed even if extent is the same<br></div><div><br></div><div>






UpdatingStringMorph>>fitContents<br><br>      | newExtent |<br> newExtent := self measureContents.<br>    newExtent := ((newExtent x max: self minimumWidth) min: self maximumWidth) @ newExtent y.<br>     (self extent = newExtent) ifFalse:<br>            [self extent: newExtent.<br>              self changed]</div><div><br></div><div>Best,</div><div>Karl<br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sun, Jan 5, 2020 at 6:06 PM Stéphane Rollandin <<a href="mailto:lecteur@zogotounga.net">lecteur@zogotounga.net</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hello,<br>
<br>
As I already indicated one week ago, UpdatingStringMorph is currently <br>
broken in trunk.<br>
<br>
If you do<br>
<br>
   (UpdatingStringMorph on: Time selector: #now) openInWorld.<br>
<br>
you will see that the display is not consistently updated as it should <br>
via the #step method.<br>
<br>
<br>
This can be fixed by adding a #changed in StringMorph>>#contents: as follow:<br>
<br>
<br>
StringMorph>>#contents: newContents<br>
<br>
        newContents isText<br>
                ifTrue: [^ self initializeFromText: newContents].<br>
<br>
        contents = newContents<br>
                ifTrue: [^ self "no substantive change"].<br>
<br>
        contents := newContents.<br>
<br>
        self fitContents; changed<br>
<br>
<br>
Now maybe the #changed should be added to #fitContents itself.<br>
<br>
Stef<br>
<br>
</blockquote></div>