[Pharo-project] Text Selection problem in 1.2 dev
hi guys in 1.2 dev when I play with ProfStef go I get an error after a couple of screens normally 3. I do not understand why but it looks really a problem with text selection https://pharo-ic.lille.inria.fr/hudson/view/Pharo/job/Pharo%201.2/ Stef 31 January 2011 2:22 pm VM: Mac OS - intel - 1064 - Pharo1.1.1 of 12 September 2010 [Latest update: #11414] 21.0 Image: Pharo1.2rc2 [Latest update: #12327]31 January 2011 2:22 pm VM: Mac OS - intel - 1064 - Pharo1.1.1 of 12 September 2010 [Latest update: #11414] 21.0 Image: Pharo1.2rc2 [Latest update: #12327] SecurityManager state: Restricted: false FileAccess: true SocketAccess: true Working Dir /Data/Downloads/Pharo-1.2 Trusted Dir /foobar/tooBar/forSqueak/bogus/ Untrusted Dir /Users/ducasse/Library/Preferences/Squeak/Internet/My Squeak/ ByteString class(Object)>>error: Receiver: ByteString Arguments and temporary variables: aString: 'basicNew: failed' Receiver's instance variables: superclass: String methodDict: a MethodDictionary(#applyLanguageInfomation:->(ByteString>>#applyLa...etc... format: 23554 instanceVariables: nil organization: ('*xml-parser' applyLanguageInfomation:) ('accessing' at: at:put:...etc... subclasses: nil name: #ByteString classPool: a Dictionary(#NonAsciiMap->#[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0...etc... sharedPools: nil environment: a SystemDictionary(lots of globals) category: #'Collections-Strings' traitComposition: {} localSelectors: nil ByteString class(Object)>>primitiveFailed: Receiver: ByteString Arguments and temporary variables: selector: #basicNew: Receiver's instance variables: superclass: String methodDict: a MethodDictionary(#applyLanguageInfomation:->(ByteString>>#applyLa...etc... format: 23554 instanceVariables: nil organization: ('*xml-parser' applyLanguageInfomation:) ('accessing' at: at:put:...etc... subclasses: nil name: #ByteString classPool: a Dictionary(#NonAsciiMap->#[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0...etc... sharedPools: nil environment: a SystemDictionary(lots of globals) category: #'Collections-Strings' traitComposition: {} localSelectors: nil ByteString class(Object)>>primitiveFailed Receiver: ByteString Arguments and temporary variables: Receiver's instance variables: superclass: String methodDict: a MethodDictionary(#applyLanguageInfomation:->(ByteString>>#applyLa...etc... format: 23554 instanceVariables: nil organization: ('*xml-parser' applyLanguageInfomation:) ('accessing' at: at:put:...etc... subclasses: nil name: #ByteString classPool: a Dictionary(#NonAsciiMap->#[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0...etc... sharedPools: nil environment: a SystemDictionary(lots of globals) category: #'Collections-Strings' traitComposition: {} localSelectors: nil ByteString class(Behavior)>>basicNew: Receiver: ByteString Arguments and temporary variables: sizeRequested: -1 Receiver's instance variables: superclass: String methodDict: a MethodDictionary(#applyLanguageInfomation:->(ByteString>>#applyLa...etc... format: 23554 instanceVariables: nil organization: ('*xml-parser' applyLanguageInfomation:) ('accessing' at: at:put:...etc... subclasses: nil name: #ByteString classPool: a Dictionary(#NonAsciiMap->#[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0...etc... sharedPools: nil environment: a SystemDictionary(lots of globals) category: #'Collections-Strings' traitComposition: {} localSelectors: nil ByteString class(String class)>>new: Receiver: ByteString Arguments and temporary variables: sizeRequested: -1 Receiver's instance variables: superclass: String methodDict: a MethodDictionary(#applyLanguageInfomation:->(ByteString>>#applyLa...etc... format: 23554 instanceVariables: nil organization: ('*xml-parser' applyLanguageInfomation:) ('accessing' at: at:put:...etc... subclasses: nil name: #ByteString classPool: a Dictionary(#NonAsciiMap->#[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0...etc... sharedPools: nil environment: a SystemDictionary(lots of globals) category: #'Collections-Strings' traitComposition: {} localSelectors: nil ByteString(SequenceableCollection)>>copyFrom:to: Receiver: '"Now you''re a Do It master ! Let''s talk about printing. It''s a Do It which prints the ...etc... Arguments and temporary variables: start: 550 stop: 548 newSize: -1 Receiver's instance variables: '"Now you''re a Do It master ! Let''s talk about printing. It''s a Do It which prints the ...etc... Text>>copyFrom:to: Receiver: a Text for '"Now you''re a Do It master ! Let''s talk about printing. It''s a Do It which ...etc... Arguments and temporary variables: start: 550 stop: 563 realStart: 550 realStop: 548 Receiver's instance variables: string: '"Now you''re a Do It master ! Let''s talk about printing. It''s a Do I...etc... runs: a RunArray runs: #(212 2 1 1 1 1 1 1 2 166 2 4 1 5 1 2 4 1 3 1 2 79 2 14 ...etc... SmalltalkEditor(TextEditor)>>selection Receiver: a SmalltalkEditor Arguments and temporary variables: Receiver's instance variables: morph: a TextMorphForEditView(786432) selectionShowing: true model: a LessonView editingState: a SmalltalkEditingState Compiler>>evaluate:in:to:notifying:ifFail:logged: Receiver: a Compiler Arguments and temporary variables: textOrStream: a ReadWriteStream '"Cool ! (I like to say Cooool :) ). You''ve ju...etc... aContext: nil receiver: nil aRequestor: a SmalltalkEditor failBlock: [FakeClassPool adopt: nil. ^ #failedDoit] logFlag: true methodNode: DoIt ^ ProfStef next method: (UndefinedObject>>#DoIt "a CompiledMethod(656408576)") value: a LessonView toLog: nil itsSelection: nil itsSelectionString: nil Receiver's instance variables: sourceStream: a ReadWriteStream '"Cool ! (I like to say Cooool :) ). You''ve ju...etc... requestor: a SmalltalkEditor class: UndefinedObject category: nil context: nil parser: a Parser [rcvr class evaluatorClass new evaluate: self selectionForDoitAsStream in: ctxt to: rcvr notifying: self ifFail: [FakeClassPool adopt: nil. ^ #failedDoit] logged: true] in SmalltalkEditor>>evaluateSelection Receiver: a SmalltalkEditor Arguments and temporary variables: rcvr: nil ctxt: nil Receiver's instance variables: morph: a TextMorphForEditView(786432) selectionShowing: true model: a LessonView editingState: a SmalltalkEditingState BlockClosure>>on:do: Receiver: [rcvr class evaluatorClass new evaluate: self selectionForDoitAsStream in: ctxt to: ...etc... Arguments and temporary variables: exception: OutOfScopeNotification handlerAction: [:ex | ex resume: true] handlerActive: true Receiver's instance variables: outerContext: SmalltalkEditor>>evaluateSelection startpc: 116 numArgs: 0 SmalltalkEditor>>evaluateSelection Receiver: a SmalltalkEditor Arguments and temporary variables: result: nil rcvr: nil ctxt: nil Receiver's instance variables: morph: a TextMorphForEditView(786432) selectionShowing: true model: a LessonView editingState: a SmalltalkEditingState SmalltalkEditor>>doIt Receiver: a SmalltalkEditor Arguments and temporary variables: Receiver's instance variables: morph: a TextMorphForEditView(786432) selectionShowing: true model: a LessonView editingState: a SmalltalkEditingState SmalltalkEditor>>doIt: Receiver: a SmalltalkEditor Arguments and temporary variables: aKeyboardEvent: [keystroke '<Cmd-d>'] Receiver's instance variables: morph: a TextMorphForEditView(786432) selectionShowing: true model: a LessonView editingState: a SmalltalkEditingState SmalltalkEditor(TextEditor)>>dispatchOn: Receiver: a SmalltalkEditor Arguments and temporary variables: aKeyboardEvent: [keystroke '<Cmd-d>'] asciiValue: 100 honorCommandKeys: true char: nil Receiver's instance variables: morph: a TextMorphForEditView(786432) selectionShowing: true model: a LessonView editingState: a SmalltalkEditingState SmalltalkEditor(TextEditor)>>processKeyStroke: Receiver: a SmalltalkEditor Arguments and temporary variables: aKeyboardEvent: [keystroke '<Cmd-d>'] Receiver's instance variables: morph: a TextMorphForEditView(786432) selectionShowing: true model: a LessonView editingState: a SmalltalkEditingState SmalltalkEditor(TextEditor)>>keystroke: Receiver: a SmalltalkEditor Arguments and temporary variables: aKeyboardEvent: [keystroke '<Cmd-d>'] Receiver's instance variables: morph: a TextMorphForEditView(786432) selectionShowing: true model: a LessonView editingState: a SmalltalkEditingState [editor keystroke: evt] in [| action | evt keyValue = 13 ifTrue: [action := self crAction. action ifNotNil: [evt hand newKeyboardFocus: nil. ^ action value]]. self handleInteraction: [editor keystroke: evt]. self updateFromParagraph. super keyStroke: evt] in TextMorphForEditView(TextMorph)>>keyStroke: Receiver: a TextMorphForEditView(786432) Arguments and temporary variables: evt: [keystroke '<Cmd-d>'] Receiver's instance variables: bounds: 0@0 corner: 450@354 owner: a TransformMorph(1005322240) submorphs: #() fullBounds: 0@0 corner: 450@354 color: Color black extension: a MorphExtension (975437824) [other: (myDependents -> a DependentsA...etc... borderWidth: 0 borderColor: Color black textStyle: a TextStyle Bitmap DejaVu Sans 9 text: a Text for '"Now you''re a Do It master ! Let''s talk about printing. It'...etc... wrapFlag: true paragraph: a MultiNewParagraph editor: a SmalltalkEditor container: nil predecessor: nil successor: nil backgroundColor: nil margins: nil editView: a PluggableShoutMorph(1061158912) acceptOnCR: false TextMorphForEditView(TextMorph)>>handleInteraction: Receiver: a TextMorphForEditView(786432) Arguments and temporary variables: interactionBlock: [editor keystroke: evt] oldEditor: a SmalltalkEditor oldParagraph: a MultiNewParagraph oldText: a Text for '"Cool ! (I like to say Cooool :) ). You''ve just executed ...etc... Receiver's instance variables: bounds: 0@0 corner: 450@354 owner: a TransformMorph(1005322240) submorphs: #() fullBounds: 0@0 corner: 450@354 color: Color black extension: a MorphExtension (975437824) [other: (myDependents -> a DependentsA...etc... borderWidth: 0 borderColor: Color black textStyle: a TextStyle Bitmap DejaVu Sans 9 text: a Text for '"Now you''re a Do It master ! Let''s talk about printing. It'...etc... wrapFlag: true paragraph: a MultiNewParagraph editor: a SmalltalkEditor container: nil predecessor: nil successor: nil backgroundColor: nil margins: nil editView: a PluggableShoutMorph(1061158912) acceptOnCR: false TextMorphForEditView>>handleInteraction: Receiver: a TextMorphForEditView(786432) Arguments and temporary variables: interActionBlock: [editor keystroke: evt] Receiver's instance variables: bounds: 0@0 corner: 450@354 owner: a TransformMorph(1005322240) submorphs: #() fullBounds: 0@0 corner: 450@354 color: Color black extension: a MorphExtension (975437824) [other: (myDependents -> a DependentsA...etc... borderWidth: 0 borderColor: Color black textStyle: a TextStyle Bitmap DejaVu Sans 9 text: a Text for '"Now you''re a Do It master ! Let''s talk about printing. It'...etc... wrapFlag: true paragraph: a MultiNewParagraph editor: a SmalltalkEditor container: nil predecessor: nil successor: nil backgroundColor: nil margins: nil editView: a PluggableShoutMorph(1061158912) acceptOnCR: false [| action | evt keyValue = 13 ifTrue: [action := self crAction. action ifNotNil: [evt hand newKeyboardFocus: nil. ^ action value]]. self handleInteraction: [editor keystroke: evt]. self updateFromParagraph. super keyStroke: evt] in TextMorphForEditView(TextMorph)>>keyStroke: Receiver: a TextMorphForEditView(786432) Arguments and temporary variables: evt: [keystroke '<Cmd-d>'] action: nil Receiver's instance variables: bounds: 0@0 corner: 450@354 owner: a TransformMorph(1005322240) submorphs: #() fullBounds: 0@0 corner: 450@354 color: Color black extension: a MorphExtension (975437824) [other: (myDependents -> a DependentsA...etc... borderWidth: 0 borderColor: Color black textStyle: a TextStyle Bitmap DejaVu Sans 9 text: a Text for '"Now you''re a Do It master ! Let''s talk about printing. It'...etc... wrapFlag: true paragraph: a MultiNewParagraph editor: a SmalltalkEditor container: nil predecessor: nil successor: nil backgroundColor: nil margins: nil editView: a PluggableShoutMorph(1061158912) acceptOnCR: false ECToolSet class>>codeCompletionAround:textMorph:keyStroke: Receiver: ECToolSet Arguments and temporary variables: aBlock: [| action | evt keyValue = 13 ifTrue: [action := self crAction. ac...etc... aTextMorph: a TextMorphForEditView(786432) evt: [keystroke '<Cmd-d>'] completionAllowed: false editor: a SmalltalkEditor stringHolder: a LessonView Receiver's instance variables: superclass: StandardToolSet methodDict: a MethodDictionary() format: 2 instanceVariables: nil organization: ('as yet unclassified') subclasses: nil name: #ECToolSet classPool: nil sharedPools: nil environment: a SystemDictionary(lots of globals) category: #'Ocompletion-ECSqueak' traitComposition: {} localSelectors: nil DEVToolSet class>>codeCompletionAround:textMorph:keyStroke: Receiver: DEVToolSet Arguments and temporary variables: aBlock: [| action | evt keyValue = 13 ifTrue: [action := self crAction. ac...etc... aTextMorph: a TextMorphForEditView(786432) evt: [keystroke '<Cmd-d>'] toolSet: ECToolSet Receiver's instance variables: superclass: StandardToolSet methodDict: a MethodDictionary() format: 2 instanceVariables: nil organization: ('as yet unclassified') subclasses: nil name: #DEVToolSet classPool: nil sharedPools: nil environment: a SystemDictionary(lots of globals) category: #ImageForDevelopers traitComposition: {} localSelectors: nil ToolSet class>>codeCompletionAround:textMorph:keyStroke: Receiver: ToolSet Arguments and temporary variables: aBlock: [| action | evt keyValue = 13 ifTrue: [action := self crAction. ac...etc... aTextMorph: a TextMorphForEditView(786432) evt: [keystroke '<Cmd-d>'] Receiver's instance variables: superclass: AppRegistry methodDict: a MethodDictionary() format: 2 instanceVariables: nil organization: ('as yet unclassified') subclasses: nil name: #ToolSet classPool: nil sharedPools: nil environment: a SystemDictionary(lots of globals) category: #'System-Applications' traitComposition: nil localSelectors: nil registeredClasses: an OrderedCollection(StandardToolSet ECToolSet DEVToolSet) default: DEVToolSet TextMorphForEditView(TextMorph)>>keyStroke: Receiver: a TextMorphForEditView(786432) Arguments and temporary variables: evt: [keystroke '<Cmd-d>'] Receiver's instance variables: bounds: 0@0 corner: 450@354 owner: a TransformMorph(1005322240) submorphs: #() fullBounds: 0@0 corner: 450@354 color: Color black extension: a MorphExtension (975437824) [other: (myDependents -> a DependentsA...etc... borderWidth: 0 borderColor: Color black textStyle: a TextStyle Bitmap DejaVu Sans 9 text: a Text for '"Now you''re a Do It master ! Let''s talk about printing. It'...etc... wrapFlag: true paragraph: a MultiNewParagraph editor: a SmalltalkEditor container: nil predecessor: nil successor: nil backgroundColor: nil margins: nil editView: a PluggableShoutMorph(1061158912) acceptOnCR: false TextMorphForEditView>>keyStroke: Receiver: a TextMorphForEditView(786432) Arguments and temporary variables: evt: [keystroke '<Cmd-d>'] view: a PluggableShoutMorph(1061158912) Receiver's instance variables: bounds: 0@0 corner: 450@354 owner: a TransformMorph(1005322240) submorphs: #() fullBounds: 0@0 corner: 450@354 color: Color black extension: a MorphExtension (975437824) [other: (myDependents -> a DependentsA...etc... borderWidth: 0 borderColor: Color black textStyle: a TextStyle Bitmap DejaVu Sans 9 text: a Text for '"Now you''re a Do It master ! Let''s talk about printing. It'...etc... wrapFlag: true paragraph: a MultiNewParagraph editor: a SmalltalkEditor container: nil predecessor: nil successor: nil backgroundColor: nil margins: nil editView: a PluggableShoutMorph(1061158912) acceptOnCR: false TextMorphForEditView(TextMorph)>>handleKeystroke: Receiver: a TextMorphForEditView(786432) Arguments and temporary variables: anEvent: [keystroke '<Cmd-d>'] pasteUp: nil Receiver's instance variables: bounds: 0@0 corner: 450@354 owner: a TransformMorph(1005322240) submorphs: #() fullBounds: 0@0 corner: 450@354 color: Color black extension: a MorphExtension (975437824) [other: (myDependents -> a DependentsA...etc... borderWidth: 0 borderColor: Color black textStyle: a TextStyle Bitmap DejaVu Sans 9 text: a Text for '"Now you''re a Do It master ! Let''s talk about printing. It'...etc... wrapFlag: true paragraph: a MultiNewParagraph editor: a SmalltalkEditor container: nil predecessor: nil successor: nil backgroundColor: nil margins: nil editView: a PluggableShoutMorph(1061158912) acceptOnCR: false KeyboardEvent>>sentTo: Receiver: [keystroke '<Cmd-d>'] Arguments and temporary variables: anObject: a TextMorphForEditView(786432) Receiver's instance variables: timeStamp: 12927 source: a HandMorph(843055104) windowIndex: nil type: #keystroke buttons: 64 position: 15@310 handler: nil wasHandled: true keyValue: 100 charCode: 100 scanCode: 2 TextMorphForEditView(Morph)>>handleEvent: Receiver: a TextMorphForEditView(786432) Arguments and temporary variables: anEvent: [keystroke '<Cmd-d>'] Receiver's instance variables: bounds: 0@0 corner: 450@354 owner: a TransformMorph(1005322240) submorphs: #() fullBounds: 0@0 corner: 450@354 color: Color black extension: a MorphExtension (975437824) [other: (myDependents -> a DependentsA...etc... borderWidth: 0 borderColor: Color black textStyle: a TextStyle Bitmap DejaVu Sans 9 text: a Text for '"Now you''re a Do It master ! Let''s talk about printing. It'...etc... wrapFlag: true paragraph: a MultiNewParagraph editor: a SmalltalkEditor container: nil predecessor: nil successor: nil backgroundColor: nil margins: nil editView: a PluggableShoutMorph(1061158912) acceptOnCR: false TextMorphForEditView(Morph)>>handleFocusEvent: Receiver: a TextMorphForEditView(786432) Arguments and temporary variables: anEvent: [keystroke '<Cmd-d>'] Receiver's instance variables: bounds: 0@0 corner: 450@354 owner: a TransformMorph(1005322240) submorphs: #() fullBounds: 0@0 corner: 450@354 color: Color black extension: a MorphExtension (975437824) [other: (myDependents -> a DependentsA...etc... borderWidth: 0 borderColor: Color black textStyle: a TextStyle Bitmap DejaVu Sans 9 text: a Text for '"Now you''re a Do It master ! Let''s talk about printing. It'...etc... wrapFlag: true paragraph: a MultiNewParagraph editor: a SmalltalkEditor container: nil predecessor: nil successor: nil backgroundColor: nil margins: nil editView: a PluggableShoutMorph(1061158912) acceptOnCR: false [ActiveHand := self. ActiveEvent := anEvent. result := focusHolder handleFocusEvent: (anEvent transformedBy: (focusHolder transformedFrom: self))] in HandMorph>>sendFocusEvent:to:clear: Receiver: a HandMorph(843055104) Arguments and temporary variables: anEvent: [keystroke '<Cmd-d>'] focusHolder: a TextMorphForEditView(786432) result: #(nil) Receiver's instance variables: bounds: 435@557 corner: 451@573 owner: a PasteUpMorph(425197568) [world] submorphs: #() fullBounds: 435@557 corner: 451@573 color: Color blue extension: a MorphExtension (141295616) [eventHandler = an EventHandler] mouseFocus: nil keyboardFocus: nil eventListeners: nil mouseListeners: nil keyboardListeners: nil mouseClickState: nil mouseOverHandler: a MouseOverHandler lastMouseEvent: [438@556 435@557 mouseMove 41062 nil] targetOffset: 93@0 damageRecorder: a DamageRecorder cacheCanvas: nil cachedCanvasHasHoles: false temporaryCursor: nil temporaryCursorOffset: nil hardwareCursor: nil hasChanged: true savedPatch: nil userInitials: '' lastEventBuffer: #(1 41062 437 557 0 0 0 1) lastKeyScanCode: 36 combinedChar: nil [aBlock value] in PasteUpMorph>>becomeActiveDuring: Receiver: a PasteUpMorph(425197568) [world] Arguments and temporary variables: aBlock: [ActiveHand := self. ActiveEvent := anEvent. result := focusHolder ...etc... Receiver's instance variables: bounds: 0@0 corner: 976@662 owner: nil submorphs: an Array(a TaskbarMorph(811335680) a SystemWindow(599785472) a Syste...etc... fullBounds: 0@0 corner: 976@662 color: (Color r: 0.97 g: 0.98 b: 1.0) extension: a MorphExtension (666632192) [eventHandler = an EventHandler] [othe...etc... borderWidth: 0 borderColor: (Color r: 0.03 g: 0.02 b: 0.0) backgroundMorph: nil worldState: a WorldState griddingOn: nil BlockClosure>>on:do: Receiver: [aBlock value] Arguments and temporary variables: exception: Error handlerAction: [:ex | ActiveWorld := priorWorld. ActiveEvent := priorEvent. ...etc... handlerActive: false Receiver's instance variables: outerContext: PasteUpMorph>>becomeActiveDuring: startpc: 67 numArgs: 0 PasteUpMorph>>becomeActiveDuring: Receiver: a PasteUpMorph(425197568) [world] Arguments and temporary variables: aBlock: [ActiveHand := self. ActiveEvent := anEvent. result := focusHolder ...etc... priorWorld: a PasteUpMorph(425197568) [world] priorHand: a HandMorph(843055104) priorEvent: nil Receiver's instance variables: bounds: 0@0 corner: 976@662 owner: nil submorphs: an Array(a TaskbarMorph(811335680) a SystemWindow(599785472) a Syste...etc... fullBounds: 0@0 corner: 976@662 color: (Color r: 0.97 g: 0.98 b: 1.0) extension: a MorphExtension (666632192) [eventHandler = an EventHandler] [othe...etc... borderWidth: 0 borderColor: (Color r: 0.03 g: 0.02 b: 0.0) backgroundMorph: nil worldState: a WorldState griddingOn: nil HandMorph>>sendFocusEvent:to:clear: Receiver: a HandMorph(843055104) Arguments and temporary variables: anEvent: [keystroke '<Cmd-d>'] focusHolder: a TextMorphForEditView(786432) aBlock: [self keyboardFocus: nil] w: a PasteUpMorph(425197568) [world] result: #(nil) Receiver's instance variables: bounds: 435@557 corner: 451@573 owner: a PasteUpMorph(425197568) [world] submorphs: #() fullBounds: 435@557 corner: 451@573 color: Color blue extension: a MorphExtension (141295616) [eventHandler = an EventHandler] mouseFocus: nil keyboardFocus: nil eventListeners: nil mouseListeners: nil keyboardListeners: nil mouseClickState: nil mouseOverHandler: a MouseOverHandler lastMouseEvent: [438@556 435@557 mouseMove 41062 nil] targetOffset: 93@0 damageRecorder: a DamageRecorder cacheCanvas: nil cachedCanvasHasHoles: false temporaryCursor: nil temporaryCursorOffset: nil hardwareCursor: nil hasChanged: true savedPatch: nil userInitials: '' lastEventBuffer: #(1 41062 437 557 0 0 0 1) lastKeyScanCode: 36 combinedChar: nil HandMorph>>sendEvent:focus:clear: Receiver: a HandMorph(843055104) Arguments and temporary variables: anEvent: [keystroke '<Cmd-d>'] focusHolder: a TextMorphForEditView(786432) aBlock: [self keyboardFocus: nil] result: nil Receiver's instance variables: bounds: 435@557 corner: 451@573 owner: a PasteUpMorph(425197568) [world] submorphs: #() fullBounds: 435@557 corner: 451@573 color: Color blue extension: a MorphExtension (141295616) [eventHandler = an EventHandler] mouseFocus: nil keyboardFocus: nil eventListeners: nil mouseListeners: nil keyboardListeners: nil mouseClickState: nil mouseOverHandler: a MouseOverHandler lastMouseEvent: [438@556 435@557 mouseMove 41062 nil] targetOffset: 93@0 damageRecorder: a DamageRecorder cacheCanvas: nil cachedCanvasHasHoles: false temporaryCursor: nil temporaryCursorOffset: nil hardwareCursor: nil hasChanged: true savedPatch: nil userInitials: '' lastEventBuffer: #(1 41062 437 557 0 0 0 1) lastKeyScanCode: 36 combinedChar: nil HandMorph>>sendKeyboardEvent: Receiver: a HandMorph(843055104) Arguments and temporary variables: anEvent: [keystroke '<Cmd-d>'] Receiver's instance variables: bounds: 435@557 corner: 451@573 owner: a PasteUpMorph(425197568) [world] submorphs: #() fullBounds: 435@557 corner: 451@573 color: Color blue extension: a MorphExtension (141295616) [eventHandler = an EventHandler] mouseFocus: nil keyboardFocus: nil eventListeners: nil mouseListeners: nil keyboardListeners: nil mouseClickState: nil mouseOverHandler: a MouseOverHandler lastMouseEvent: [438@556 435@557 mouseMove 41062 nil] targetOffset: 93@0 damageRecorder: a DamageRecorder cacheCanvas: nil cachedCanvasHasHoles: false temporaryCursor: nil temporaryCursorOffset: nil hardwareCursor: nil hasChanged: true savedPatch: nil userInitials: '' lastEventBuffer: #(1 41062 437 557 0 0 0 1) lastKeyScanCode: 36 combinedChar: nil HandMorph>>handleEvent: Receiver: a HandMorph(843055104) Arguments and temporary variables: anEvent: [keystroke '<Cmd-d>'] evt: [keystroke '<Cmd-d>'] ofs: nil Receiver's instance variables: bounds: 435@557 corner: 451@573 owner: a PasteUpMorph(425197568) [world] submorphs: #() fullBounds: 435@557 corner: 451@573 color: Color blue extension: a MorphExtension (141295616) [eventHandler = an EventHandler] mouseFocus: nil keyboardFocus: nil eventListeners: nil mouseListeners: nil keyboardListeners: nil mouseClickState: nil mouseOverHandler: a MouseOverHandler lastMouseEvent: [438@556 435@557 mouseMove 41062 nil] targetOffset: 93@0 damageRecorder: a DamageRecorder cacheCanvas: nil cachedCanvasHasHoles: false temporaryCursor: nil temporaryCursorOffset: nil hardwareCursor: nil hasChanged: true savedPatch: nil userInitials: '' lastEventBuffer: #(1 41062 437 557 0 0 0 1) lastKeyScanCode: 36 combinedChar: nil HandMorph>>processEvents Receiver: a HandMorph(843055104) Arguments and temporary variables: evt: [keystroke '<Cmd-d>'] evtBuf: #(2 12927 100 0 8 100 0 1) type: 2 hadAny: true Receiver's instance variables: bounds: 435@557 corner: 451@573 owner: a PasteUpMorph(425197568) [world] submorphs: #() fullBounds: 435@557 corner: 451@573 color: Color blue extension: a MorphExtension (141295616) [eventHandler = an EventHandler] mouseFocus: nil keyboardFocus: nil eventListeners: nil mouseListeners: nil keyboardListeners: nil mouseClickState: nil mouseOverHandler: a MouseOverHandler lastMouseEvent: [438@556 435@557 mouseMove 41062 nil] targetOffset: 93@0 damageRecorder: a DamageRecorder cacheCanvas: nil cachedCanvasHasHoles: false temporaryCursor: nil temporaryCursorOffset: nil hardwareCursor: nil hasChanged: true savedPatch: nil userInitials: '' lastEventBuffer: #(1 41062 437 557 0 0 0 1) lastKeyScanCode: 36 combinedChar: nil --- The full stack --- ByteString class(Object)>>error: ByteString class(Object)>>primitiveFailed: ByteString class(Object)>>primitiveFailed ByteString class(Behavior)>>basicNew: ByteString class(String class)>>new: ByteString(SequenceableCollection)>>copyFrom:to: Text>>copyFrom:to: SmalltalkEditor(TextEditor)>>selection Compiler>>evaluate:in:to:notifying:ifFail:logged: [rcvr class evaluatorClass new evaluate: self selectionForDoitAsStream in: ctxt to: rcvr notifying: self ifFail: [FakeClassPool adopt: nil. ^ #failedDoit] logged: true] in SmalltalkEditor>>evaluateSelection BlockClosure>>on:do: SmalltalkEditor>>evaluateSelection SmalltalkEditor>>doIt SmalltalkEditor>>doIt: SmalltalkEditor(TextEditor)>>dispatchOn: SmalltalkEditor(TextEditor)>>processKeyStroke: SmalltalkEditor(TextEditor)>>keystroke: [editor keystroke: evt] in [| action | evt keyValue = 13 ifTrue: [action := self crAction. action ifNotNil: [evt hand newKeyboardFocus: nil. ^ action value]]. self handleInteraction: [editor keystroke: evt]. self updateFromParagraph. super keyStroke: evt] in TextMorphForEditView(TextMorph)>>keyStroke: TextMorphForEditView(TextMorph)>>handleInteraction: TextMorphForEditView>>handleInteraction: [| action | evt keyValue = 13 ifTrue: [action := self crAction. action ifNotNil: [evt hand newKeyboardFocus: nil. ^ action value]]. self handleInteraction: [editor keystroke: evt]. self updateFromParagraph. super keyStroke: evt] in TextMorphForEditView(TextMorph)>>keyStroke: ECToolSet class>>codeCompletionAround:textMorph:keyStroke: DEVToolSet class>>codeCompletionAround:textMorph:keyStroke: ToolSet class>>codeCompletionAround:textMorph:keyStroke: TextMorphForEditView(TextMorph)>>keyStroke: TextMorphForEditView>>keyStroke: TextMorphForEditView(TextMorph)>>handleKeystroke: KeyboardEvent>>sentTo: TextMorphForEditView(Morph)>>handleEvent: TextMorphForEditView(Morph)>>handleFocusEvent: [ActiveHand := self. ActiveEvent := anEvent. result := focusHolder handleFocusEvent: (anEvent transformedBy: (focusHolder transformedFrom: self))] in HandMorph>>sendFocusEvent:to:clear: [aBlock value] in PasteUpMorph>>becomeActiveDuring: BlockClosure>>on:do: PasteUpMorph>>becomeActiveDuring: HandMorph>>sendFocusEvent:to:clear: HandMorph>>sendEvent:focus:clear: HandMorph>>sendKeyboardEvent: HandMorph>>handleEvent: HandMorph>>processEvents - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [:h | ActiveHand := h. h processEvents. ActiveHand := nil] in WorldState>>doOneCycleNowFor: Array(SequenceableCollection)>>do: WorldState>>handsDo: WorldState>>doOneCycleNowFor: WorldState>>doOneCycleFor: PasteUpMorph>>doOneCycle [[World doOneCycle. Processor yield. false] whileFalse. nil] in Project class>>spawnNewProcess [self value. Processor terminateActive] in BlockClosure>>newProcess SecurityManager state: Restricted: false FileAccess: true SocketAccess: true Working Dir /Data/Downloads/Pharo-1.2 Trusted Dir /foobar/tooBar/forSqueak/bogus/ Untrusted Dir /Users/ducasse/Library/Preferences/Squeak/Internet/My Squeak/ ByteString class(Object)>>error: Receiver: ByteString Arguments and temporary variables: aString: 'basicNew: failed' Receiver's instance variables: superclass: String methodDict: a MethodDictionary(#applyLanguageInfomation:->(ByteString>>#applyLa...etc... format: 23554 instanceVariables: nil organization: ('*xml-parser' applyLanguageInfomation:) ('accessing' at: at:put:...etc... subclasses: nil name: #ByteString classPool: a Dictionary(#NonAsciiMap->#[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0...etc... sharedPools: nil environment: a SystemDictionary(lots of globals) category: #'Collections-Strings' traitComposition: {} localSelectors: nil ByteString class(Object)>>primitiveFailed: Receiver: ByteString Arguments and temporary variables: selector: #basicNew: Receiver's instance variables: superclass: String methodDict: a MethodDictionary(#applyLanguageInfomation:->(ByteString>>#applyLa...etc... format: 23554 instanceVariables: nil organization: ('*xml-parser' applyLanguageInfomation:) ('accessing' at: at:put:...etc... subclasses: nil name: #ByteString classPool: a Dictionary(#NonAsciiMap->#[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0...etc... sharedPools: nil environment: a SystemDictionary(lots of globals) category: #'Collections-Strings' traitComposition: {} localSelectors: nil ByteString class(Object)>>primitiveFailed Receiver: ByteString Arguments and temporary variables: Receiver's instance variables: superclass: String methodDict: a MethodDictionary(#applyLanguageInfomation:->(ByteString>>#applyLa...etc... format: 23554 instanceVariables: nil organization: ('*xml-parser' applyLanguageInfomation:) ('accessing' at: at:put:...etc... subclasses: nil name: #ByteString classPool: a Dictionary(#NonAsciiMap->#[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0...etc... sharedPools: nil environment: a SystemDictionary(lots of globals) category: #'Collections-Strings' traitComposition: {} localSelectors: nil ByteString class(Behavior)>>basicNew: Receiver: ByteString Arguments and temporary variables: sizeRequested: -1 Receiver's instance variables: superclass: String methodDict: a MethodDictionary(#applyLanguageInfomation:->(ByteString>>#applyLa...etc... format: 23554 instanceVariables: nil organization: ('*xml-parser' applyLanguageInfomation:) ('accessing' at: at:put:...etc... subclasses: nil name: #ByteString classPool: a Dictionary(#NonAsciiMap->#[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0...etc... sharedPools: nil environment: a SystemDictionary(lots of globals) category: #'Collections-Strings' traitComposition: {} localSelectors: nil ByteString class(String class)>>new: Receiver: ByteString Arguments and temporary variables: sizeRequested: -1 Receiver's instance variables: superclass: String methodDict: a MethodDictionary(#applyLanguageInfomation:->(ByteString>>#applyLa...etc... format: 23554 instanceVariables: nil organization: ('*xml-parser' applyLanguageInfomation:) ('accessing' at: at:put:...etc... subclasses: nil name: #ByteString classPool: a Dictionary(#NonAsciiMap->#[0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0...etc... sharedPools: nil environment: a SystemDictionary(lots of globals) category: #'Collections-Strings' traitComposition: {} localSelectors: nil ByteString(SequenceableCollection)>>copyFrom:to: Receiver: '"Now you''re a Do It master ! Let''s talk about printing. It''s a Do It which prints the ...etc... Arguments and temporary variables: start: 550 stop: 548 newSize: -1 Receiver's instance variables: '"Now you''re a Do It master ! Let''s talk about printing. It''s a Do It which prints the ...etc... Text>>copyFrom:to: Receiver: a Text for '"Now you''re a Do It master ! Let''s talk about printing. It''s a Do It which ...etc... Arguments and temporary variables: start: 550 stop: 563 realStart: 550 realStop: 548 Receiver's instance variables: string: '"Now you''re a Do It master ! Let''s talk about printing. It''s a Do I...etc... runs: a RunArray runs: #(212 2 1 1 1 1 1 1 2 166 2 4 1 5 1 2 4 1 3 1 2 79 2 14 ...etc... SmalltalkEditor(TextEditor)>>selection Receiver: a SmalltalkEditor Arguments and temporary variables: Receiver's instance variables: morph: a TextMorphForEditView(786432) selectionShowing: true model: a LessonView editingState: a SmalltalkEditingState Compiler>>evaluate:in:to:notifying:ifFail:logged: Receiver: a Compiler Arguments and temporary variables: textOrStream: a ReadWriteStream '"Cool ! (I like to say Cooool :) ). You''ve ju...etc... aContext: nil receiver: nil aRequestor: a SmalltalkEditor failBlock: [FakeClassPool adopt: nil. ^ #failedDoit] logFlag: true methodNode: DoIt ^ ProfStef next method: (UndefinedObject>>#DoIt "a CompiledMethod(656408576)") value: a LessonView toLog: nil itsSelection: nil itsSelectionString: nil Receiver's instance variables: sourceStream: a ReadWriteStream '"Cool ! (I like to say Cooool :) ). You''ve ju...etc... requestor: a SmalltalkEditor class: UndefinedObject category: nil context: nil parser: a Parser [rcvr class evaluatorClass new evaluate: self selectionForDoitAsStream in: ctxt to: rcvr notifying: self ifFail: [FakeClassPool adopt: nil. ^ #failedDoit] logged: true] in SmalltalkEditor>>evaluateSelection Receiver: a SmalltalkEditor Arguments and temporary variables: rcvr: nil ctxt: nil Receiver's instance variables: morph: a TextMorphForEditView(786432) selectionShowing: true model: a LessonView editingState: a SmalltalkEditingState BlockClosure>>on:do: Receiver: [rcvr class evaluatorClass new evaluate: self selectionForDoitAsStream in: ctxt to: ...etc... Arguments and temporary variables: exception: OutOfScopeNotification handlerAction: [:ex | ex resume: true] handlerActive: true Receiver's instance variables: outerContext: SmalltalkEditor>>evaluateSelection startpc: 116 numArgs: 0 SmalltalkEditor>>evaluateSelection Receiver: a SmalltalkEditor Arguments and temporary variables: result: nil rcvr: nil ctxt: nil Receiver's instance variables: morph: a TextMorphForEditView(786432) selectionShowing: true model: a LessonView editingState: a SmalltalkEditingState SmalltalkEditor>>doIt Receiver: a SmalltalkEditor Arguments and temporary variables: Receiver's instance variables: morph: a TextMorphForEditView(786432) selectionShowing: true model: a LessonView editingState: a SmalltalkEditingState SmalltalkEditor>>doIt: Receiver: a SmalltalkEditor Arguments and temporary variables: aKeyboardEvent: [keystroke '<Cmd-d>'] Receiver's instance variables: morph: a TextMorphForEditView(786432) selectionShowing: true model: a LessonView editingState: a SmalltalkEditingState SmalltalkEditor(TextEditor)>>dispatchOn: Receiver: a SmalltalkEditor Arguments and temporary variables: aKeyboardEvent: [keystroke '<Cmd-d>'] asciiValue: 100 honorCommandKeys: true char: nil Receiver's instance variables: morph: a TextMorphForEditView(786432) selectionShowing: true model: a LessonView editingState: a SmalltalkEditingState SmalltalkEditor(TextEditor)>>processKeyStroke: Receiver: a SmalltalkEditor Arguments and temporary variables: aKeyboardEvent: [keystroke '<Cmd-d>'] Receiver's instance variables: morph: a TextMorphForEditView(786432) selectionShowing: true model: a LessonView editingState: a SmalltalkEditingState SmalltalkEditor(TextEditor)>>keystroke: Receiver: a SmalltalkEditor Arguments and temporary variables: aKeyboardEvent: [keystroke '<Cmd-d>'] Receiver's instance variables: morph: a TextMorphForEditView(786432) selectionShowing: true model: a LessonView editingState: a SmalltalkEditingState [editor keystroke: evt] in [| action | evt keyValue = 13 ifTrue: [action := self crAction. action ifNotNil: [evt hand newKeyboardFocus: nil. ^ action value]]. self handleInteraction: [editor keystroke: evt]. self updateFromParagraph. super keyStroke: evt] in TextMorphForEditView(TextMorph)>>keyStroke: Receiver: a TextMorphForEditView(786432) Arguments and temporary variables: evt: [keystroke '<Cmd-d>'] Receiver's instance variables: bounds: 0@0 corner: 450@354 owner: a TransformMorph(1005322240) submorphs: #() fullBounds: 0@0 corner: 450@354 color: Color black extension: a MorphExtension (975437824) [other: (myDependents -> a DependentsA...etc... borderWidth: 0 borderColor: Color black textStyle: a TextStyle Bitmap DejaVu Sans 9 text: a Text for '"Now you''re a Do It master ! Let''s talk about printing. It'...etc... wrapFlag: true paragraph: a MultiNewParagraph editor: a SmalltalkEditor container: nil predecessor: nil successor: nil backgroundColor: nil margins: nil editView: a PluggableShoutMorph(1061158912) acceptOnCR: false TextMorphForEditView(TextMorph)>>handleInteraction: Receiver: a TextMorphForEditView(786432) Arguments and temporary variables: interactionBlock: [editor keystroke: evt] oldEditor: a SmalltalkEditor oldParagraph: a MultiNewParagraph oldText: a Text for '"Cool ! (I like to say Cooool :) ). You''ve just executed ...etc... Receiver's instance variables: bounds: 0@0 corner: 450@354 owner: a TransformMorph(1005322240) submorphs: #() fullBounds: 0@0 corner: 450@354 color: Color black extension: a MorphExtension (975437824) [other: (myDependents -> a DependentsA...etc... borderWidth: 0 borderColor: Color black textStyle: a TextStyle Bitmap DejaVu Sans 9 text: a Text for '"Now you''re a Do It master ! Let''s talk about printing. It'...etc... wrapFlag: true paragraph: a MultiNewParagraph editor: a SmalltalkEditor container: nil predecessor: nil successor: nil backgroundColor: nil margins: nil editView: a PluggableShoutMorph(1061158912) acceptOnCR: false TextMorphForEditView>>handleInteraction: Receiver: a TextMorphForEditView(786432) Arguments and temporary variables: interActionBlock: [editor keystroke: evt] Receiver's instance variables: bounds: 0@0 corner: 450@354 owner: a TransformMorph(1005322240) submorphs: #() fullBounds: 0@0 corner: 450@354 color: Color black extension: a MorphExtension (975437824) [other: (myDependents -> a DependentsA...etc... borderWidth: 0 borderColor: Color black textStyle: a TextStyle Bitmap DejaVu Sans 9 text: a Text for '"Now you''re a Do It master ! Let''s talk about printing. It'...etc... wrapFlag: true paragraph: a MultiNewParagraph editor: a SmalltalkEditor container: nil predecessor: nil successor: nil backgroundColor: nil margins: nil editView: a PluggableShoutMorph(1061158912) acceptOnCR: false [| action | evt keyValue = 13 ifTrue: [action := self crAction. action ifNotNil: [evt hand newKeyboardFocus: nil. ^ action value]]. self handleInteraction: [editor keystroke: evt]. self updateFromParagraph. super keyStroke: evt] in TextMorphForEditView(TextMorph)>>keyStroke: Receiver: a TextMorphForEditView(786432) Arguments and temporary variables: evt: [keystroke '<Cmd-d>'] action: nil Receiver's instance variables: bounds: 0@0 corner: 450@354 owner: a TransformMorph(1005322240) submorphs: #() fullBounds: 0@0 corner: 450@354 color: Color black extension: a MorphExtension (975437824) [other: (myDependents -> a DependentsA...etc... borderWidth: 0 borderColor: Color black textStyle: a TextStyle Bitmap DejaVu Sans 9 text: a Text for '"Now you''re a Do It master ! Let''s talk about printing. It'...etc... wrapFlag: true paragraph: a MultiNewParagraph editor: a SmalltalkEditor container: nil predecessor: nil successor: nil backgroundColor: nil margins: nil editView: a PluggableShoutMorph(1061158912) acceptOnCR: false ECToolSet class>>codeCompletionAround:textMorph:keyStroke: Receiver: ECToolSet Arguments and temporary variables: aBlock: [| action | evt keyValue = 13 ifTrue: [action := self crAction. ac...etc... aTextMorph: a TextMorphForEditView(786432) evt: [keystroke '<Cmd-d>'] completionAllowed: false editor: a SmalltalkEditor stringHolder: a LessonView Receiver's instance variables: superclass: StandardToolSet methodDict: a MethodDictionary() format: 2 instanceVariables: nil organization: ('as yet unclassified') subclasses: nil name: #ECToolSet classPool: nil sharedPools: nil environment: a SystemDictionary(lots of globals) category: #'Ocompletion-ECSqueak' traitComposition: {} localSelectors: nil DEVToolSet class>>codeCompletionAround:textMorph:keyStroke: Receiver: DEVToolSet Arguments and temporary variables: aBlock: [| action | evt keyValue = 13 ifTrue: [action := self crAction. ac...etc... aTextMorph: a TextMorphForEditView(786432) evt: [keystroke '<Cmd-d>'] toolSet: ECToolSet Receiver's instance variables: superclass: StandardToolSet methodDict: a MethodDictionary() format: 2 instanceVariables: nil organization: ('as yet unclassified') subclasses: nil name: #DEVToolSet classPool: nil sharedPools: nil environment: a SystemDictionary(lots of globals) category: #ImageForDevelopers traitComposition: {} localSelectors: nil ToolSet class>>codeCompletionAround:textMorph:keyStroke: Receiver: ToolSet Arguments and temporary variables: aBlock: [| action | evt keyValue = 13 ifTrue: [action := self crAction. ac...etc... aTextMorph: a TextMorphForEditView(786432) evt: [keystroke '<Cmd-d>'] Receiver's instance variables: superclass: AppRegistry methodDict: a MethodDictionary() format: 2 instanceVariables: nil organization: ('as yet unclassified') subclasses: nil name: #ToolSet classPool: nil sharedPools: nil environment: a SystemDictionary(lots of globals) category: #'System-Applications' traitComposition: nil localSelectors: nil registeredClasses: an OrderedCollection(StandardToolSet ECToolSet DEVToolSet) default: DEVToolSet TextMorphForEditView(TextMorph)>>keyStroke: Receiver: a TextMorphForEditView(786432) Arguments and temporary variables: evt: [keystroke '<Cmd-d>'] Receiver's instance variables: bounds: 0@0 corner: 450@354 owner: a TransformMorph(1005322240) submorphs: #() fullBounds: 0@0 corner: 450@354 color: Color black extension: a MorphExtension (975437824) [other: (myDependents -> a DependentsA...etc... borderWidth: 0 borderColor: Color black textStyle: a TextStyle Bitmap DejaVu Sans 9 text: a Text for '"Now you''re a Do It master ! Let''s talk about printing. It'...etc... wrapFlag: true paragraph: a MultiNewParagraph editor: a SmalltalkEditor container: nil predecessor: nil successor: nil backgroundColor: nil margins: nil editView: a PluggableShoutMorph(1061158912) acceptOnCR: false TextMorphForEditView>>keyStroke: Receiver: a TextMorphForEditView(786432) Arguments and temporary variables: evt: [keystroke '<Cmd-d>'] view: a PluggableShoutMorph(1061158912) Receiver's instance variables: bounds: 0@0 corner: 450@354 owner: a TransformMorph(1005322240) submorphs: #() fullBounds: 0@0 corner: 450@354 color: Color black extension: a MorphExtension (975437824) [other: (myDependents -> a DependentsA...etc... borderWidth: 0 borderColor: Color black textStyle: a TextStyle Bitmap DejaVu Sans 9 text: a Text for '"Now you''re a Do It master ! Let''s talk about printing. It'...etc... wrapFlag: true paragraph: a MultiNewParagraph editor: a SmalltalkEditor container: nil predecessor: nil successor: nil backgroundColor: nil margins: nil editView: a PluggableShoutMorph(1061158912) acceptOnCR: false TextMorphForEditView(TextMorph)>>handleKeystroke: Receiver: a TextMorphForEditView(786432) Arguments and temporary variables: anEvent: [keystroke '<Cmd-d>'] pasteUp: nil Receiver's instance variables: bounds: 0@0 corner: 450@354 owner: a TransformMorph(1005322240) submorphs: #() fullBounds: 0@0 corner: 450@354 color: Color black extension: a MorphExtension (975437824) [other: (myDependents -> a DependentsA...etc... borderWidth: 0 borderColor: Color black textStyle: a TextStyle Bitmap DejaVu Sans 9 text: a Text for '"Now you''re a Do It master ! Let''s talk about printing. It'...etc... wrapFlag: true paragraph: a MultiNewParagraph editor: a SmalltalkEditor container: nil predecessor: nil successor: nil backgroundColor: nil margins: nil editView: a PluggableShoutMorph(1061158912) acceptOnCR: false KeyboardEvent>>sentTo: Receiver: [keystroke '<Cmd-d>'] Arguments and temporary variables: anObject: a TextMorphForEditView(786432) Receiver's instance variables: timeStamp: 12927 source: a HandMorph(843055104) windowIndex: nil type: #keystroke buttons: 64 position: 15@310 handler: nil wasHandled: true keyValue: 100 charCode: 100 scanCode: 2 TextMorphForEditView(Morph)>>handleEvent: Receiver: a TextMorphForEditView(786432) Arguments and temporary variables: anEvent: [keystroke '<Cmd-d>'] Receiver's instance variables: bounds: 0@0 corner: 450@354 owner: a TransformMorph(1005322240) submorphs: #() fullBounds: 0@0 corner: 450@354 color: Color black extension: a MorphExtension (975437824) [other: (myDependents -> a DependentsA...etc... borderWidth: 0 borderColor: Color black textStyle: a TextStyle Bitmap DejaVu Sans 9 text: a Text for '"Now you''re a Do It master ! Let''s talk about printing. It'...etc... wrapFlag: true paragraph: a MultiNewParagraph editor: a SmalltalkEditor container: nil predecessor: nil successor: nil backgroundColor: nil margins: nil editView: a PluggableShoutMorph(1061158912) acceptOnCR: false TextMorphForEditView(Morph)>>handleFocusEvent: Receiver: a TextMorphForEditView(786432) Arguments and temporary variables: anEvent: [keystroke '<Cmd-d>'] Receiver's instance variables: bounds: 0@0 corner: 450@354 owner: a TransformMorph(1005322240) submorphs: #() fullBounds: 0@0 corner: 450@354 color: Color black extension: a MorphExtension (975437824) [other: (myDependents -> a DependentsA...etc... borderWidth: 0 borderColor: Color black textStyle: a TextStyle Bitmap DejaVu Sans 9 text: a Text for '"Now you''re a Do It master ! Let''s talk about printing. It'...etc... wrapFlag: true paragraph: a MultiNewParagraph editor: a SmalltalkEditor container: nil predecessor: nil successor: nil backgroundColor: nil margins: nil editView: a PluggableShoutMorph(1061158912) acceptOnCR: false [ActiveHand := self. ActiveEvent := anEvent. result := focusHolder handleFocusEvent: (anEvent transformedBy: (focusHolder transformedFrom: self))] in HandMorph>>sendFocusEvent:to:clear: Receiver: a HandMorph(843055104) Arguments and temporary variables: anEvent: [keystroke '<Cmd-d>'] focusHolder: a TextMorphForEditView(786432) result: #(nil) Receiver's instance variables: bounds: 435@557 corner: 451@573 owner: a PasteUpMorph(425197568) [world] submorphs: #() fullBounds: 435@557 corner: 451@573 color: Color blue extension: a MorphExtension (141295616) [eventHandler = an EventHandler] mouseFocus: nil keyboardFocus: nil eventListeners: nil mouseListeners: nil keyboardListeners: nil mouseClickState: nil mouseOverHandler: a MouseOverHandler lastMouseEvent: [438@556 435@557 mouseMove 41062 nil] targetOffset: 93@0 damageRecorder: a DamageRecorder cacheCanvas: nil cachedCanvasHasHoles: false temporaryCursor: nil temporaryCursorOffset: nil hardwareCursor: nil hasChanged: true savedPatch: nil userInitials: '' lastEventBuffer: #(1 41062 437 557 0 0 0 1) lastKeyScanCode: 36 combinedChar: nil [aBlock value] in PasteUpMorph>>becomeActiveDuring: Receiver: a PasteUpMorph(425197568) [world] Arguments and temporary variables: aBlock: [ActiveHand := self. ActiveEvent := anEvent. result := focusHolder ...etc... Receiver's instance variables: bounds: 0@0 corner: 976@662 owner: nil submorphs: an Array(a TaskbarMorph(811335680) a SystemWindow(599785472) a Syste...etc... fullBounds: 0@0 corner: 976@662 color: (Color r: 0.97 g: 0.98 b: 1.0) extension: a MorphExtension (666632192) [eventHandler = an EventHandler] [othe...etc... borderWidth: 0 borderColor: (Color r: 0.03 g: 0.02 b: 0.0) backgroundMorph: nil worldState: a WorldState griddingOn: nil BlockClosure>>on:do: Receiver: [aBlock value] Arguments and temporary variables: exception: Error handlerAction: [:ex | ActiveWorld := priorWorld. ActiveEvent := priorEvent. ...etc... handlerActive: false Receiver's instance variables: outerContext: PasteUpMorph>>becomeActiveDuring: startpc: 67 numArgs: 0 PasteUpMorph>>becomeActiveDuring: Receiver: a PasteUpMorph(425197568) [world] Arguments and temporary variables: aBlock: [ActiveHand := self. ActiveEvent := anEvent. result := focusHolder ...etc... priorWorld: a PasteUpMorph(425197568) [world] priorHand: a HandMorph(843055104) priorEvent: nil Receiver's instance variables: bounds: 0@0 corner: 976@662 owner: nil submorphs: an Array(a TaskbarMorph(811335680) a SystemWindow(599785472) a Syste...etc... fullBounds: 0@0 corner: 976@662 color: (Color r: 0.97 g: 0.98 b: 1.0) extension: a MorphExtension (666632192) [eventHandler = an EventHandler] [othe...etc... borderWidth: 0 borderColor: (Color r: 0.03 g: 0.02 b: 0.0) backgroundMorph: nil worldState: a WorldState griddingOn: nil HandMorph>>sendFocusEvent:to:clear: Receiver: a HandMorph(843055104) Arguments and temporary variables: anEvent: [keystroke '<Cmd-d>'] focusHolder: a TextMorphForEditView(786432) aBlock: [self keyboardFocus: nil] w: a PasteUpMorph(425197568) [world] result: #(nil) Receiver's instance variables: bounds: 435@557 corner: 451@573 owner: a PasteUpMorph(425197568) [world] submorphs: #() fullBounds: 435@557 corner: 451@573 color: Color blue extension: a MorphExtension (141295616) [eventHandler = an EventHandler] mouseFocus: nil keyboardFocus: nil eventListeners: nil mouseListeners: nil keyboardListeners: nil mouseClickState: nil mouseOverHandler: a MouseOverHandler lastMouseEvent: [438@556 435@557 mouseMove 41062 nil] targetOffset: 93@0 damageRecorder: a DamageRecorder cacheCanvas: nil cachedCanvasHasHoles: false temporaryCursor: nil temporaryCursorOffset: nil hardwareCursor: nil hasChanged: true savedPatch: nil userInitials: '' lastEventBuffer: #(1 41062 437 557 0 0 0 1) lastKeyScanCode: 36 combinedChar: nil HandMorph>>sendEvent:focus:clear: Receiver: a HandMorph(843055104) Arguments and temporary variables: anEvent: [keystroke '<Cmd-d>'] focusHolder: a TextMorphForEditView(786432) aBlock: [self keyboardFocus: nil] result: nil Receiver's instance variables: bounds: 435@557 corner: 451@573 owner: a PasteUpMorph(425197568) [world] submorphs: #() fullBounds: 435@557 corner: 451@573 color: Color blue extension: a MorphExtension (141295616) [eventHandler = an EventHandler] mouseFocus: nil keyboardFocus: nil eventListeners: nil mouseListeners: nil keyboardListeners: nil mouseClickState: nil mouseOverHandler: a MouseOverHandler lastMouseEvent: [438@556 435@557 mouseMove 41062 nil] targetOffset: 93@0 damageRecorder: a DamageRecorder cacheCanvas: nil cachedCanvasHasHoles: false temporaryCursor: nil temporaryCursorOffset: nil hardwareCursor: nil hasChanged: true savedPatch: nil userInitials: '' lastEventBuffer: #(1 41062 437 557 0 0 0 1) lastKeyScanCode: 36 combinedChar: nil HandMorph>>sendKeyboardEvent: Receiver: a HandMorph(843055104) Arguments and temporary variables: anEvent: [keystroke '<Cmd-d>'] Receiver's instance variables: bounds: 435@557 corner: 451@573 owner: a PasteUpMorph(425197568) [world] submorphs: #() fullBounds: 435@557 corner: 451@573 color: Color blue extension: a MorphExtension (141295616) [eventHandler = an EventHandler] mouseFocus: nil keyboardFocus: nil eventListeners: nil mouseListeners: nil keyboardListeners: nil mouseClickState: nil mouseOverHandler: a MouseOverHandler lastMouseEvent: [438@556 435@557 mouseMove 41062 nil] targetOffset: 93@0 damageRecorder: a DamageRecorder cacheCanvas: nil cachedCanvasHasHoles: false temporaryCursor: nil temporaryCursorOffset: nil hardwareCursor: nil hasChanged: true savedPatch: nil userInitials: '' lastEventBuffer: #(1 41062 437 557 0 0 0 1) lastKeyScanCode: 36 combinedChar: nil HandMorph>>handleEvent: Receiver: a HandMorph(843055104) Arguments and temporary variables: anEvent: [keystroke '<Cmd-d>'] evt: [keystroke '<Cmd-d>'] ofs: nil Receiver's instance variables: bounds: 435@557 corner: 451@573 owner: a PasteUpMorph(425197568) [world] submorphs: #() fullBounds: 435@557 corner: 451@573 color: Color blue extension: a MorphExtension (141295616) [eventHandler = an EventHandler] mouseFocus: nil keyboardFocus: nil eventListeners: nil mouseListeners: nil keyboardListeners: nil mouseClickState: nil mouseOverHandler: a MouseOverHandler lastMouseEvent: [438@556 435@557 mouseMove 41062 nil] targetOffset: 93@0 damageRecorder: a DamageRecorder cacheCanvas: nil cachedCanvasHasHoles: false temporaryCursor: nil temporaryCursorOffset: nil hardwareCursor: nil hasChanged: true savedPatch: nil userInitials: '' lastEventBuffer: #(1 41062 437 557 0 0 0 1) lastKeyScanCode: 36 combinedChar: nil HandMorph>>processEvents Receiver: a HandMorph(843055104) Arguments and temporary variables: evt: [keystroke '<Cmd-d>'] evtBuf: #(2 12927 100 0 8 100 0 1) type: 2 hadAny: true Receiver's instance variables: bounds: 435@557 corner: 451@573 owner: a PasteUpMorph(425197568) [world] submorphs: #() fullBounds: 435@557 corner: 451@573 color: Color blue extension: a MorphExtension (141295616) [eventHandler = an EventHandler] mouseFocus: nil keyboardFocus: nil eventListeners: nil mouseListeners: nil keyboardListeners: nil mouseClickState: nil mouseOverHandler: a MouseOverHandler lastMouseEvent: [438@556 435@557 mouseMove 41062 nil] targetOffset: 93@0 damageRecorder: a DamageRecorder cacheCanvas: nil cachedCanvasHasHoles: false temporaryCursor: nil temporaryCursorOffset: nil hardwareCursor: nil hasChanged: true savedPatch: nil userInitials: '' lastEventBuffer: #(1 41062 437 557 0 0 0 1) lastKeyScanCode: 36 combinedChar: nil --- The full stack --- ByteString class(Object)>>error: ByteString class(Object)>>primitiveFailed: ByteString class(Object)>>primitiveFailed ByteString class(Behavior)>>basicNew: ByteString class(String class)>>new: ByteString(SequenceableCollection)>>copyFrom:to: Text>>copyFrom:to: SmalltalkEditor(TextEditor)>>selection Compiler>>evaluate:in:to:notifying:ifFail:logged: [rcvr class evaluatorClass new evaluate: self selectionForDoitAsStream in: ctxt to: rcvr notifying: self ifFail: [FakeClassPool adopt: nil. ^ #failedDoit] logged: true] in SmalltalkEditor>>evaluateSelection BlockClosure>>on:do: SmalltalkEditor>>evaluateSelection SmalltalkEditor>>doIt SmalltalkEditor>>doIt: SmalltalkEditor(TextEditor)>>dispatchOn: SmalltalkEditor(TextEditor)>>processKeyStroke: SmalltalkEditor(TextEditor)>>keystroke: [editor keystroke: evt] in [| action | evt keyValue = 13 ifTrue: [action := self crAction. action ifNotNil: [evt hand newKeyboardFocus: nil. ^ action value]]. self handleInteraction: [editor keystroke: evt]. self updateFromParagraph. super keyStroke: evt] in TextMorphForEditView(TextMorph)>>keyStroke: TextMorphForEditView(TextMorph)>>handleInteraction: TextMorphForEditView>>handleInteraction: [| action | evt keyValue = 13 ifTrue: [action := self crAction. action ifNotNil: [evt hand newKeyboardFocus: nil. ^ action value]]. self handleInteraction: [editor keystroke: evt]. self updateFromParagraph. super keyStroke: evt] in TextMorphForEditView(TextMorph)>>keyStroke: ECToolSet class>>codeCompletionAround:textMorph:keyStroke: DEVToolSet class>>codeCompletionAround:textMorph:keyStroke: ToolSet class>>codeCompletionAround:textMorph:keyStroke: TextMorphForEditView(TextMorph)>>keyStroke: TextMorphForEditView>>keyStroke: TextMorphForEditView(TextMorph)>>handleKeystroke: KeyboardEvent>>sentTo: TextMorphForEditView(Morph)>>handleEvent: TextMorphForEditView(Morph)>>handleFocusEvent: [ActiveHand := self. ActiveEvent := anEvent. result := focusHolder handleFocusEvent: (anEvent transformedBy: (focusHolder transformedFrom: self))] in HandMorph>>sendFocusEvent:to:clear: [aBlock value] in PasteUpMorph>>becomeActiveDuring: BlockClosure>>on:do: PasteUpMorph>>becomeActiveDuring: HandMorph>>sendFocusEvent:to:clear: HandMorph>>sendEvent:focus:clear: HandMorph>>sendKeyboardEvent: HandMorph>>handleEvent: HandMorph>>processEvents - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - [:h | ActiveHand := h. h processEvents. ActiveHand := nil] in WorldState>>doOneCycleNowFor: Array(SequenceableCollection)>>do: WorldState>>handsDo: WorldState>>doOneCycleNowFor: WorldState>>doOneCycleFor: PasteUpMorph>>doOneCycle [[World doOneCycle. Processor yield. false] whileFalse. nil] in Project class>>spawnNewProcess [self value. Processor terminateActive] in BlockClosure>>newProcess
It seems to me that it has already been reported and fixed a time ago. see http://code.google.com/p/pharo/issues/detail?id=3472 take SLICE-Issue-3472-Text-selection-problem-in-Pharo-dev-12 and SLICE-Issue-3472-Text-selection-problem-in-Pharo-dev-12-Part-2 Cheers Alain Le 31/01/2011 14:23, Stéphane Ducasse a écrit :
hi guys
in 1.2 dev when I play with ProfStef go I get an error after a couple of screens normally 3.
I do not understand why but it looks really a problem with text selection
https://pharo-ic.lille.inria.fr/hudson/view/Pharo/job/Pharo%201.2/
Stef
Super! I will integrate it in! Stef
It seems to me that it has already been reported and fixed a time ago. see http://code.google.com/p/pharo/issues/detail?id=3472 take
SLICE-Issue-3472-Text-selection-problem-in-Pharo-dev-12 and SLICE-Issue-3472-Text-selection-problem-in-Pharo-dev-12-Part-2
Cheers Alain
Le 31/01/2011 14:23, Stéphane Ducasse a écrit :
hi guys
in 1.2 dev when I play with ProfStef go I get an error after a couple of screens normally 3.
I do not understand why but it looks really a problem with text selection
https://pharo-ic.lille.inria.fr/hudson/view/Pharo/job/Pharo%201.2/
Stef
I do not understand why we get that back since apparently it was integrated. Alain do you know if this is in core? in dev already? Stef On Jan 31, 2011, at 3:33 PM, Alain Plantec wrote:
It seems to me that it has already been reported and fixed a time ago. see http://code.google.com/p/pharo/issues/detail?id=3472 take
SLICE-Issue-3472-Text-selection-problem-in-Pharo-dev-12 and SLICE-Issue-3472-Text-selection-problem-in-Pharo-dev-12-Part-2
Cheers Alain
Le 31/01/2011 14:23, Stéphane Ducasse a écrit :
hi guys
in 1.2 dev when I play with ProfStef go I get an error after a couple of screens normally 3.
I do not understand why but it looks really a problem with text selection
https://pharo-ic.lille.inria.fr/hudson/view/Pharo/job/Pharo%201.2/
Stef
Alain in 13033 Gofer ... metacelloRepository (ConfigurationOfProfStef project version: '1.6') load. ProfStef go
It seems to me that it has already been reported and fixed a time ago. see http://code.google.com/p/pharo/issues/detail?id=3472 take
SLICE-Issue-3472-Text-selection-problem-in-Pharo-dev-12 and SLICE-Issue-3472-Text-selection-problem-in-Pharo-dev-12-Part-2
Cheers Alain
Le 31/01/2011 14:23, Stéphane Ducasse a écrit :
hi guys
in 1.2 dev when I play with ProfStef go I get an error after a couple of screens normally 3.
I do not understand why but it looks really a problem with text selection
https://pharo-ic.lille.inria.fr/hudson/view/Pharo/job/Pharo%201.2/
Stef
yes, it doesn't work because the fix has been overwritten with old code. I think that only SmalltalkEditor>>#evaluateSelection has been touched. Just browse this method, then open versions and set #evaluateSelection back to its previous version (12/21/2010). Le 31/01/2011 17:17, Stéphane Ducasse a écrit :
Alain in 13033
Gofer ... metacelloRepository
(ConfigurationOfProfStef project version: '1.6') load.
ProfStef go
It seems to me that it has already been reported and fixed a time ago. see http://code.google.com/p/pharo/issues/detail?id=3472 take
SLICE-Issue-3472-Text-selection-problem-in-Pharo-dev-12 and SLICE-Issue-3472-Text-selection-problem-in-Pharo-dev-12-Part-2
Cheers Alain
Le 31/01/2011 14:23, Stéphane Ducasse a écrit :
hi guys
in 1.2 dev when I play with ProfStef go I get an error after a couple of screens normally 3.
I do not understand why but it looks really a problem with text selection
https://pharo-ic.lille.inria.fr/hudson/view/Pharo/job/Pharo%201.2/
Stef
So alain should I do something? Or just ProfStef should be fixed? Stef
yes, it doesn't work because the fix has been overwritten with old code. I think that only SmalltalkEditor>>#evaluateSelection has been touched. Just browse this method, then open versions and set #evaluateSelection back to its previous version (12/21/2010).
Le 31/01/2011 17:17, Stéphane Ducasse a écrit :
Alain in 13033
Gofer ... metacelloRepository
(ConfigurationOfProfStef project version: '1.6') load.
ProfStef go
It seems to me that it has already been reported and fixed a time ago. see http://code.google.com/p/pharo/issues/detail?id=3472 take
SLICE-Issue-3472-Text-selection-problem-in-Pharo-dev-12 and SLICE-Issue-3472-Text-selection-problem-in-Pharo-dev-12-Part-2
Cheers Alain
Le 31/01/2011 14:23, Stéphane Ducasse a écrit :
hi guys
in 1.2 dev when I play with ProfStef go I get an error after a couple of screens normally 3.
I do not understand why but it looks really a problem with text selection
https://pharo-ic.lille.inria.fr/hudson/view/Pharo/job/Pharo%201.2/
Stef
I do not understand why but it looks really a problem with text selection It's not a problem with text selection. The problem is that profStef next changes the contents of the morph (with setText:). Nothing anormal here but, while doing so it kills the editor from where the selection is evaluated. See the portion of #evaluateSelection given below:
evaluateSelection ... result := [ rcvr class evaluatorClass new evaluate: self selectionForDoitAsStream in: ctxt to: rcvr notifying: self <------***** the problem is here ***** ifFail: [FakeClassPool adopt: nil. ^ #failedDoit] logged: true. ] ... ----------------- The receiver is passed as the requestor and it is bad because after the selection has been evaluated, the receiver is destroyed by the #setText: and a new editor is built. After having evaluated the selection, the compiler sends several messages to the requestor. Then it crashes because the requestor is destroyed by the evaluation ... :) So the solution is to set the editor morph as the requestor (which is stable), not the editor. Cheers Alain
Ok! Laurent can you fix profStef? Stef On Jan 31, 2011, at 6:41 PM, Alain Plantec wrote:
I do not understand why but it looks really a problem with text selection It's not a problem with text selection. The problem is that profStef next changes the contents of the morph (with setText:). Nothing anormal here but, while doing so it kills the editor from where the selection is evaluated. See the portion of #evaluateSelection given below:
evaluateSelection ... result := [ rcvr class evaluatorClass new evaluate: self selectionForDoitAsStream in: ctxt to: rcvr notifying: self <------***** the problem is here ***** ifFail: [FakeClassPool adopt: nil. ^ #failedDoit] logged: true. ] ... ----------------- The receiver is passed as the requestor and it is bad because after the selection has been evaluated, the receiver is destroyed by the #setText: and a new editor is built. After having evaluated the selection, the compiler sends several messages to the requestor. Then it crashes because the requestor is destroyed by the evaluation ... :) So the solution is to set the editor morph as the requestor (which is stable), not the editor.
Cheers Alain
participants (2)
-
Alain Plantec -
Stéphane Ducasse