Thanks this is strange because we used the modified system.
I see some problems with MC and changes tracking recently and this is annoying.
Because this reference should not be there.

Now I do not know how to rollback a change so the system will stay broken until I find and I do not have the time today.

Stef

Pharo 40150 after typing two characters in a Workspace:
setOrigin:corner: referese to the undefined Object:
"DegeneratedRectangle"

UndefinedObject(Object)>>doesNotUnderstand: #signal
CharacterBlock(Rectangle)>>setOrigin:corner:
CharacterBlock>>stringIndex:text:topLeft:extent:
CharacterBlockScanner>>characterBlockAtPoint:index:in:
Paragraph>>characterBlockAtPoint:
Paragraph>>buildSelectionBlocksFrom:to:
Paragraph>>displayExtraSelectionOn:
TextMorphForEditView>>drawOn:
FormCanvas(Canvas)>>draw:
FormCanvas(Canvas)>>drawMorph:
[
(aCanvas isVisible: self bounds)
    ifTrue: [ aCanvas drawMorph: self ].
self drawSubmorphsOn: aCanvas.
self drawDropHighlightOn: aCanvas.
self drawMouseDownHighlightOn: aCanvas ] in [
"Note: At some point we should generalize this into some sort of
multi-canvas so that we can cross-optimize some drawing operations."
"Pass 1: Draw eventual drop-shadow"
self hasDropShadow
ifTrue: [ self drawDropShadowOn: aCanvas ]. "Pass 2: Draw receiver itself"
aCanvas
    roundCornersOf: self
    during: [
        (aCanvas isVisible: self bounds)
            ifTrue: [ aCanvas drawMorph: self ].
        self drawSubmorphsOn: aCanvas.
        self drawDropHighlightOn: aCanvas.
self drawMouseDownHighlightOn: aCanvas ] ] in TextMorphForEditView(Morph)>>fullDrawOn: in Block: [ ...
FormCanvas>>roundCornersOf:in:during:
FormCanvas(Canvas)>>roundCornersOf:during:
[
"Note: At some point we should generalize this into some sort of
multi-canvas so that we can cross-optimize some drawing operations."
"Pass 1: Draw eventual drop-shadow"
self hasDropShadow
ifTrue: [ self drawDropShadowOn: aCanvas ]. "Pass 2: Draw receiver itself"
aCanvas
    roundCornersOf: self
    during: [
        (aCanvas isVisible: self bounds)
            ifTrue: [ aCanvas drawMorph: self ].
        self drawSubmorphsOn: aCanvas.
        self drawDropHighlightOn: aCanvas.
self drawMouseDownHighlightOn: aCanvas ] ] in TextMorphForEditView(Morph)>>fullDrawOn: in Block: [ ...
BlockClosure>>on:do:
TextMorphForEditView(Morph)>>fullDrawOn:
FormCanvas(Canvas)>>fullDraw:
FormCanvas(Canvas)>>fullDrawMorph:
[ :m | myCanvas fullDrawMorph: m ] in [ :myCanvas |
(self angle ~= 0.0 or: [ self scale ~= 1.0 ])
ifTrue: [ FreeTypeSettings current forceNonSubPixelDuring: [ submorphs reverseDo: [ :m | myCanvas fullDrawMorph: m ] ] ] ifFalse: [ submorphs reverseDo: [ :m | myCanvas fullDrawMorph: m ] ] ] in TransformMorph>>drawSubmorphsOn: in Block: [ :m | myCanvas fullDrawMorph: m ]
Array(SequenceableCollection)>>reverseDo:
[ :myCanvas |
(self angle ~= 0.0 or: [ self scale ~= 1.0 ])
ifTrue: [ FreeTypeSettings current forceNonSubPixelDuring: [ submorphs reverseDo: [ :m | myCanvas fullDrawMorph: m ] ] ] ifFalse: [ submorphs reverseDo: [ :m | myCanvas fullDrawMorph: m ] ] ] in TransformMorph>>drawSubmorphsOn: in Block: [ :myCanvas | ...
FormCanvas>>transformBy:clippingTo:during:smoothing:
TransformMorph>>drawSubmorphsOn:
[
(aCanvas isVisible: self bounds)
    ifTrue: [ aCanvas drawMorph: self ].
self drawSubmorphsOn: aCanvas.
self drawDropHighlightOn: aCanvas.
self drawMouseDownHighlightOn: aCanvas ] in [
"Note: At some point we should generalize this into some sort of
multi-canvas so that we can cross-optimize some drawing operations."
"Pass 1: Draw eventual drop-shadow"
self hasDropShadow
ifTrue: [ self drawDropShadowOn: aCanvas ]. "Pass 2: Draw receiver itself"
aCanvas
    roundCornersOf: self
    during: [
        (aCanvas isVisible: self bounds)
            ifTrue: [ aCanvas drawMorph: self ].
        self drawSubmorphsOn: aCanvas.
        self drawDropHighlightOn: aCanvas.
self drawMouseDownHighlightOn: aCanvas ] ] in TransformMorph(Morph)>>fullDrawOn: in Block: [ ...
FormCanvas>>roundCornersOf:in:during:
FormCanvas(Canvas)>>roundCornersOf:during:
[
"Note: At some point we should generalize this into some sort of
multi-canvas so that we can cross-optimize some drawing operations."
"Pass 1: Draw eventual drop-shadow"
self hasDropShadow
ifTrue: [ self drawDropShadowOn: aCanvas ]. "Pass 2: Draw receiver itself"
aCanvas
    roundCornersOf: self
    during: [
        (aCanvas isVisible: self bounds)
            ifTrue: [ aCanvas drawMorph: self ].
        self drawSubmorphsOn: aCanvas.
        self drawDropHighlightOn: aCanvas.
self drawMouseDownHighlightOn: aCanvas ] ] in TransformMorph(Morph)>>fullDrawOn: in Block: [ ...
BlockClosure>>on:do:
TransformMorph(Morph)>>fullDrawOn:
FormCanvas(Canvas)>>fullDraw:



2014-08-03 18:12 GMT+02:00 stepharo <steph...@free.fr <mailto:steph...@free.fr>>:

     Hi guys

    We finished (we hope) a really long effort to be such that we
    cannot have "negative" rectangles.
    It implied fixing around 250 users of layoutFrame and a lot more.

    We introduced point:point: to create rectangles.
    We improved many little points.

    We deeply tested the image but we never know it may happen that a
    layout policy produce strange rectangles again.
    If you find some glitches we will fix them.

    Stef and Igor



Reply via email to