[Box-Admins] Re: source.squeak.org/squeak46 -- HTTP/1.1 401 Unauthorized server: nginx

Chris Muller ma.chris.m at gmail.com
Thu Jun 4 22:27:28 UTC 2015


Thanks for the clarification.

So, after force creating the 'squeak46' directory and setting
ownership to box4's davidlewis (uid for squeaksource on box2) I am now
correctly getting an empty repository window when opening it from the
image, but still cannot copy any versions into it because still
getting the nginx error.

I don't know anything about nginx, any help would appreciated..

On Thu, Jun 4, 2015 at 2:39 PM, David T. Lewis <lewis at mail.msen.com> wrote:
> Hi Chris,
>
> I am away with no ssh access so I can't do anything right now.
>
> The "davidlewis" ownership is misleading. It just happened that the UID
> for the squeaksource account on the original box2 turned out to be the
> same UID as is now used for the ~davidlewis account. But I think that it's
> really ~squeaksource when it's running in the chroot environment.
>
> I don't know if that helps any, just to let you know that whatever the
> problem is, it's not related to files owned by my account.
>
> Dave
>
>> It appears registering a project on source.squeak.org may be broken.
>>
>> Although browsing HTTP repository source.squeak.org/squeak46 from the
>> image appears to have the same contents as trunk, looking on the
>> server reveals the /srv/box2/home/squeaksource/ss/squeak46 directory
>> never got created when the project was registered.  Just to be sure
>> it's not lazily created I tried to copy a single package to it from
>> trunk, which produced the error below.
>>
>> I think we should not do too much more than we need to just "get past"
>> this bug manually (e.g., sudo mkdir the necessary squeak46 directory?)
>> and move forward with finishing the releases.  Upgrading this image
>> and code (and VM) should be one of teh very first things we do
>> starting in 5.1.
>>
>> All the files currently have permissions under the "davidlewis"
>> account of the "box2" chroot environment server.  Dave, could you
>> please help me get past this?
>>
>>  - Chris
>>
>> -------- error trying to copy a package to 'squeak46' repository ------
>>
>> 4 June 2015 2:15:41.127 pm
>>
>> VM: unix - Smalltalk
>> Image: Squeak4.5 [latest update: #15045]
>>
>> SecurityManager state:
>> Restricted: false
>> FileAccess: true
>> SocketAccess: true
>> Working Dir /home/cmm/Chris/dev/Squeak
>> Trusted Dir /home/cmm/Chris/dev/Squeak/secure
>> Untrusted Dir /home/cmm/Chris/dev/Squeak/My Squeak
>>
>> MCHttpRepository(Object)>>error:
>> Receiver: a MCHttpRepository(http://source.squeak.org/squeak46)
>> Arguments and temporary variables:
>> aString: 'HTTP/1.1 401 Unauthorized server: nginx
>>
>> date: Thu, 04 Jun 2015 19:1...etc...
>> Receiver's instance variables:
>> creationTemplate: 'MCHttpRepository
>> location: ''http://source.squeak.org/squea...etc...
>> storeDiffs: nil
>> cache: a Dictionary()
>> allFileNamesCache: nil
>> allVersionNamesCache: nil
>> location: 'http://source.squeak.org/squeak46'
>> user: ''
>> password: ''
>> readerCache: a Dictionary('311Deprecated-ar.1.mcz'->a MCMczReader )
>>
>> MCHttpRepository>>writeStreamForFileNamed:replace:do:
>> Receiver: a MCHttpRepository(http://source.squeak.org/squeak46)
>> Arguments and temporary variables:
>> aString: 'Nebraska-kfr.41.mcz'
>> ignoreBoolean: false
>> aBlock: [closure] in
>> MCHttpRepository(MCFileBasedRepository)>>basicStoreVersion...etc...
>> stream: a RWBinaryOrTextStream
>> statusLine: 'HTTP/1.1 401 Unauthorized'
>> code: 401
>> response: #('HTTP/1.1 401 Unauthorized
>>
>> server: nginx
>>
>> date: Thu, 04 Jun 2015 1...etc...
>> Receiver's instance variables:
>> creationTemplate: 'MCHttpRepository
>> location: ''http://source.squeak.org/squea...etc...
>> storeDiffs: nil
>> cache: a Dictionary()
>> allFileNamesCache: nil
>> allVersionNamesCache: nil
>> location: 'http://source.squeak.org/squeak46'
>> user: ''
>> password: ''
>> readerCache: a Dictionary('311Deprecated-ar.1.mcz'->a MCMczReader )
>>
>> MCHttpRepository(MCFileBasedRepository)>>writeStreamForFileNamed:do:
>> Receiver: a MCHttpRepository(http://source.squeak.org/squeak46)
>> Arguments and temporary variables:
>> aString: 'Nebraska-kfr.41.mcz'
>> aBlock: [closure] in
>> MCHttpRepository(MCFileBasedRepository)>>basicStoreVersion...etc...
>> Receiver's instance variables:
>> creationTemplate: 'MCHttpRepository
>> location: ''http://source.squeak.org/squea...etc...
>> storeDiffs: nil
>> cache: a Dictionary()
>> allFileNamesCache: nil
>> allVersionNamesCache: nil
>> location: 'http://source.squeak.org/squeak46'
>> user: ''
>> password: ''
>> readerCache: a Dictionary('311Deprecated-ar.1.mcz'->a MCMczReader )
>>
>> MCHttpRepository(MCFileBasedRepository)>>basicStoreVersion:
>> Receiver: a MCHttpRepository(http://source.squeak.org/squeak46)
>> Arguments and temporary variables:
>> aMCVersionOrConfiguration: a MCVersion(Nebraska-kfr.41)
>> Receiver's instance variables:
>> creationTemplate: 'MCHttpRepository
>> location: ''http://source.squeak.org/squea...etc...
>> storeDiffs: nil
>> cache: a Dictionary()
>> allFileNamesCache: nil
>> allVersionNamesCache: nil
>> location: 'http://source.squeak.org/squeak46'
>> user: ''
>> password: ''
>> readerCache: a Dictionary('311Deprecated-ar.1.mcz'->a MCMczReader )
>>
>> MCHttpRepository(MCRepository)>>storeVersion:
>> Receiver: a MCHttpRepository(http://source.squeak.org/squeak46)
>> Arguments and temporary variables:
>> aMCVersionOrConfiguration: a MCVersion(Nebraska-kfr.41)
>> Receiver's instance variables:
>> creationTemplate: 'MCHttpRepository
>> location: ''http://source.squeak.org/squea...etc...
>> storeDiffs: nil
>> cache: a Dictionary()
>> allFileNamesCache: nil
>> allVersionNamesCache: nil
>> location: 'http://source.squeak.org/squeak46'
>> user: ''
>> password: ''
>> readerCache: a Dictionary('311Deprecated-ar.1.mcz'->a MCMczReader )
>>
>> MCFileRepositoryInspector(MCVersionInspector)>>save
>> Receiver: a MCFileRepositoryInspector
>> Arguments and temporary variables:
>> ea: a MCHttpRepository(http://source.squeak.org/squeak46)
>> Receiver's instance variables:
>> dependents: a DependentsArray(a PluggableSystemWindow<Repository:
>> http://source...etc...
>> morph: nil
>> label: nil
>> modalProcess: nil
>> modalValue: nil
>> version: a MCVersion(Nebraska-kfr.41)
>> repository: a MCHttpRepository(http://source.squeak.org/trunk)
>> packageNames: {a Text for '311Deprecated' . a Text for '39Deprecated'
>> . a Text ...etc...
>> versionNames: nil
>> selectedPackage: 'Nebraska'
>> selectedVersion: 'Nebraska-kfr.41.mcz'
>> order: 5
>> versionInfo: a MCVersionInfo(Nebraska-kfr.41)
>> loaded: a Set('MorphicTests-mt.31' 'Squeak-Version-ar.4662'
>> 'SqueakSSL-SMTP-ar....etc...
>> newer: a Set()
>> inherited: a Set('ST80-nice.159' 'Morphic-mt.782'
>> 'Compiler-stephaneducasse.12'...etc...
>> allVersionNames: #('HelpSystem-Core-mt.78.mcz'
>> 'HelpSystem-Core-kfr.77.mcz' 'He...etc...
>>
>> PluggableButtonMorphPlus(PluggableButtonMorph)>>performAction
>> Receiver: a PluggableButtonMorphPlus(2931)
>> Arguments and temporary variables:
>>
>> Receiver's instance variables:
>> bounds: 365 at 307 corner: 412 at 328
>> owner: a PluggablePanelMorph(468)
>> submorphs: #()
>> fullBounds: 365 at 307 corner: 412 at 328
>> color: Color white
>> extension: a MorphExtension (3024) [balloonText]  [other:  (minHeight
>> -> 2) (cl...etc...
>> borderWidth: 1
>> borderColor: Color gray
>> model: a MCFileRepositoryInspector
>> label: 'Copy'
>> font: nil
>> getStateSelector: #buttonSelected
>> actionSelector: #save
>> getLabelSelector: nil
>> getMenuSelector: nil
>> shortcutCharacter: nil
>> askBeforeChanging: false
>> triggerOnMouseDown: false
>> offColor: Color white
>> onColor: Color veryLightGray
>> feedbackColor: Color red
>> showSelectionFeedback: false
>> allButtons: {a PluggableButtonMorphPlus(631) . a
>> PluggableButtonMorphPlus(3683)...etc...
>> arguments: nil
>> argumentsProvider: nil
>> argumentsSelector: nil
>> style: nil
>> enabled: true
>> action: nil
>> getColorSelector: nil
>> getEnabledSelector: #hasVersion
>> updateMap: nil
>>
>> PluggableButtonMorphPlus>>performAction
>> Receiver: a PluggableButtonMorphPlus(2931)
>> Arguments and temporary variables:
>>
>> Receiver's instance variables:
>> bounds: 365 at 307 corner: 412 at 328
>> owner: a PluggablePanelMorph(468)
>> submorphs: #()
>> fullBounds: 365 at 307 corner: 412 at 328
>> color: Color white
>> extension: a MorphExtension (3024) [balloonText]  [other:  (minHeight
>> -> 2) (cl...etc...
>> borderWidth: 1
>> borderColor: Color gray
>> model: a MCFileRepositoryInspector
>> label: 'Copy'
>> font: nil
>> getStateSelector: #buttonSelected
>> actionSelector: #save
>> getLabelSelector: nil
>> getMenuSelector: nil
>> shortcutCharacter: nil
>> askBeforeChanging: false
>> triggerOnMouseDown: false
>> offColor: Color white
>> onColor: Color veryLightGray
>> feedbackColor: Color red
>> showSelectionFeedback: false
>> allButtons: {a PluggableButtonMorphPlus(631) . a
>> PluggableButtonMorphPlus(3683)...etc...
>> arguments: nil
>> argumentsProvider: nil
>> argumentsSelector: nil
>> style: nil
>> enabled: true
>> action: nil
>> getColorSelector: nil
>> getEnabledSelector: #hasVersion
>> updateMap: nil
>>
>> [] in PluggableButtonMorphPlus(PluggableButtonMorph)>>mouseUp:
>> Receiver: a PluggableButtonMorphPlus(2931)
>> Arguments and temporary variables:
>> evt: a PluggableButtonMorphPlus(2931)
>> m: [385 at 317 mouseUp 912128]
>> Receiver's instance variables:
>> bounds: 365 at 307 corner: 412 at 328
>> owner: a PluggablePanelMorph(468)
>> submorphs: #()
>> fullBounds: 365 at 307 corner: 412 at 328
>> color: Color white
>> extension: a MorphExtension (3024) [balloonText]  [other:  (minHeight
>> -> 2) (cl...etc...
>> borderWidth: 1
>> borderColor: Color gray
>> model: a MCFileRepositoryInspector
>> label: 'Copy'
>> font: nil
>> getStateSelector: #buttonSelected
>> actionSelector: #save
>> getLabelSelector: nil
>> getMenuSelector: nil
>> shortcutCharacter: nil
>> askBeforeChanging: false
>> triggerOnMouseDown: false
>> offColor: Color white
>> onColor: Color veryLightGray
>> feedbackColor: Color red
>> showSelectionFeedback: false
>> allButtons: {a PluggableButtonMorphPlus(631) . a
>> PluggableButtonMorphPlus(3683)...etc...
>> arguments: nil
>> argumentsProvider: nil
>> argumentsSelector: nil
>> style: nil
>> enabled: true
>> action: nil
>> getColorSelector: nil
>> getEnabledSelector: #hasVersion
>> updateMap: nil
>>
>> Array(SequenceableCollection)>>do:
>> Receiver: {a PluggableButtonMorphPlus(631) . a
>> PluggableButtonMorphPlus(3683) . a PluggableButtonMor...etc...
>> Arguments and temporary variables:
>> aBlock: [closure] in
>> PluggableButtonMorphPlus(PluggableButtonMorph)>>mouseUp:
>> index: 8
>> indexLimiT: 9
>> Receiver's instance variables:
>> {a PluggableButtonMorphPlus(631) . a PluggableButtonMorphPlus(3683) .
>> a PluggableButtonMor...etc...
>>
>> PluggableButtonMorphPlus(PluggableButtonMorph)>>mouseUp:
>> Receiver: a PluggableButtonMorphPlus(2931)
>> Arguments and temporary variables:
>> evt: [385 at 317 mouseUp 912128]
>> Receiver's instance variables:
>> bounds: 365 at 307 corner: 412 at 328
>> owner: a PluggablePanelMorph(468)
>> submorphs: #()
>> fullBounds: 365 at 307 corner: 412 at 328
>> color: Color white
>> extension: a MorphExtension (3024) [balloonText]  [other:  (minHeight
>> -> 2) (cl...etc...
>> borderWidth: 1
>> borderColor: Color gray
>> model: a MCFileRepositoryInspector
>> label: 'Copy'
>> font: nil
>> getStateSelector: #buttonSelected
>> actionSelector: #save
>> getLabelSelector: nil
>> getMenuSelector: nil
>> shortcutCharacter: nil
>> askBeforeChanging: false
>> triggerOnMouseDown: false
>> offColor: Color white
>> onColor: Color veryLightGray
>> feedbackColor: Color red
>> showSelectionFeedback: false
>> allButtons: {a PluggableButtonMorphPlus(631) . a
>> PluggableButtonMorphPlus(3683)...etc...
>> arguments: nil
>> argumentsProvider: nil
>> argumentsSelector: nil
>> style: nil
>> enabled: true
>> action: nil
>> getColorSelector: nil
>> getEnabledSelector: #hasVersion
>> updateMap: nil
>>
>> PluggableButtonMorphPlus>>mouseUp:
>> Receiver: a PluggableButtonMorphPlus(2931)
>> Arguments and temporary variables:
>> evt: [385 at 317 mouseUp 912128]
>> Receiver's instance variables:
>> bounds: 365 at 307 corner: 412 at 328
>> owner: a PluggablePanelMorph(468)
>> submorphs: #()
>> fullBounds: 365 at 307 corner: 412 at 328
>> color: Color white
>> extension: a MorphExtension (3024) [balloonText]  [other:  (minHeight
>> -> 2) (cl...etc...
>> borderWidth: 1
>> borderColor: Color gray
>> model: a MCFileRepositoryInspector
>> label: 'Copy'
>> font: nil
>> getStateSelector: #buttonSelected
>> actionSelector: #save
>> getLabelSelector: nil
>> getMenuSelector: nil
>> shortcutCharacter: nil
>> askBeforeChanging: false
>> triggerOnMouseDown: false
>> offColor: Color white
>> onColor: Color veryLightGray
>> feedbackColor: Color red
>> showSelectionFeedback: false
>> allButtons: {a PluggableButtonMorphPlus(631) . a
>> PluggableButtonMorphPlus(3683)...etc...
>> arguments: nil
>> argumentsProvider: nil
>> argumentsSelector: nil
>> style: nil
>> enabled: true
>> action: nil
>> getColorSelector: nil
>> getEnabledSelector: #hasVersion
>> updateMap: nil
>>
>> PluggableButtonMorphPlus(Morph)>>handleMouseUp:
>> Receiver: a PluggableButtonMorphPlus(2931)
>> Arguments and temporary variables:
>> anEvent: [385 at 317 mouseUp 912128]
>> Receiver's instance variables:
>> bounds: 365 at 307 corner: 412 at 328
>> owner: a PluggablePanelMorph(468)
>> submorphs: #()
>> fullBounds: 365 at 307 corner: 412 at 328
>> color: Color white
>> extension: a MorphExtension (3024) [balloonText]  [other:  (minHeight
>> -> 2) (cl...etc...
>> borderWidth: 1
>> borderColor: Color gray
>> model: a MCFileRepositoryInspector
>> label: 'Copy'
>> font: nil
>> getStateSelector: #buttonSelected
>> actionSelector: #save
>> getLabelSelector: nil
>> getMenuSelector: nil
>> shortcutCharacter: nil
>> askBeforeChanging: false
>> triggerOnMouseDown: false
>> offColor: Color white
>> onColor: Color veryLightGray
>> feedbackColor: Color red
>> showSelectionFeedback: false
>> allButtons: {a PluggableButtonMorphPlus(631) . a
>> PluggableButtonMorphPlus(3683)...etc...
>> arguments: nil
>> argumentsProvider: nil
>> argumentsSelector: nil
>> style: nil
>> enabled: true
>> action: nil
>> getColorSelector: nil
>> getEnabledSelector: #hasVersion
>> updateMap: nil
>>
>> MouseButtonEvent>>sentTo:
>> Receiver: [385 at 317 mouseUp 912128]
>> Arguments and temporary variables:
>> anObject: a PluggableButtonMorphPlus(2931)
>> Receiver's instance variables:
>> timeStamp: 912128
>> source: a HandMorph(3216)
>> type: #mouseUp
>> buttons: 0
>> position: 385 at 317
>> handler: nil
>> wasHandled: true
>> whichButton: 4
>>
>> PluggableButtonMorphPlus(Morph)>>handleEvent:
>> Receiver: a PluggableButtonMorphPlus(2931)
>> Arguments and temporary variables:
>> anEvent: [385 at 317 mouseUp 912128]
>> Receiver's instance variables:
>> bounds: 365 at 307 corner: 412 at 328
>> owner: a PluggablePanelMorph(468)
>> submorphs: #()
>> fullBounds: 365 at 307 corner: 412 at 328
>> color: Color white
>> extension: a MorphExtension (3024) [balloonText]  [other:  (minHeight
>> -> 2) (cl...etc...
>> borderWidth: 1
>> borderColor: Color gray
>> model: a MCFileRepositoryInspector
>> label: 'Copy'
>> font: nil
>> getStateSelector: #buttonSelected
>> actionSelector: #save
>> getLabelSelector: nil
>> getMenuSelector: nil
>> shortcutCharacter: nil
>> askBeforeChanging: false
>> triggerOnMouseDown: false
>> offColor: Color white
>> onColor: Color veryLightGray
>> feedbackColor: Color red
>> showSelectionFeedback: false
>> allButtons: {a PluggableButtonMorphPlus(631) . a
>> PluggableButtonMorphPlus(3683)...etc...
>> arguments: nil
>> argumentsProvider: nil
>> argumentsSelector: nil
>> style: nil
>> enabled: true
>> action: nil
>> getColorSelector: nil
>> getEnabledSelector: #hasVersion
>> updateMap: nil
>>
>> PluggableButtonMorphPlus(Morph)>>handleFocusEvent:
>> Receiver: a PluggableButtonMorphPlus(2931)
>> Arguments and temporary variables:
>> anEvent: [385 at 317 mouseUp 912128]
>> Receiver's instance variables:
>> bounds: 365 at 307 corner: 412 at 328
>> owner: a PluggablePanelMorph(468)
>> submorphs: #()
>> fullBounds: 365 at 307 corner: 412 at 328
>> color: Color white
>> extension: a MorphExtension (3024) [balloonText]  [other:  (minHeight
>> -> 2) (cl...etc...
>> borderWidth: 1
>> borderColor: Color gray
>> model: a MCFileRepositoryInspector
>> label: 'Copy'
>> font: nil
>> getStateSelector: #buttonSelected
>> actionSelector: #save
>> getLabelSelector: nil
>> getMenuSelector: nil
>> shortcutCharacter: nil
>> askBeforeChanging: false
>> triggerOnMouseDown: false
>> offColor: Color white
>> onColor: Color veryLightGray
>> feedbackColor: Color red
>> showSelectionFeedback: false
>> allButtons: {a PluggableButtonMorphPlus(631) . a
>> PluggableButtonMorphPlus(3683)...etc...
>> arguments: nil
>> argumentsProvider: nil
>> argumentsSelector: nil
>> style: nil
>> enabled: true
>> action: nil
>> getColorSelector: nil
>> getEnabledSelector: #hasVersion
>> updateMap: nil
>>
>> [] in HandMorph>>sendFocusEvent:to:clear:
>> Receiver: a HandMorph(3216)
>> Arguments and temporary variables:
>> <<error during printing>
>> Receiver's instance variables:
>> bounds: 266 at 105 corner: 282 at 121
>> owner: a PasteUpMorph(1622) [world]
>> submorphs: #()
>> fullBounds: 266 at 105 corner: 282 at 121
>> color: Color blue
>> extension: a MorphExtension (539) [eventHandler = an EventHandler]
>> mouseFocus: nil
>> keyboardFocus: a TextMorphForEditView(2314)
>> eventListeners: nil
>> mouseListeners: nil
>> keyboardListeners: a WeakArray(a DockingBarMorph(454))
>> mouseClickState: nil
>> mouseOverHandler: a MouseOverHandler
>> lastMouseEvent: [265 at 105 266 at 105 mouseMove 938456]
>> targetOffset: 188 at 21
>> damageRecorder: a DamageRecorder
>> cacheCanvas: nil
>> cachedCanvasHasHoles: true
>> temporaryCursor: nil
>> temporaryCursorOffset: nil
>> hardwareCursor: nil
>> hasChanged: true
>> savedPatch: nil
>> userInitials: ''
>> lastEventBuffer: #(1 938456 266 105 0 0 0 1)
>> genieGestureProcessor: nil
>> keyboardInterpreter: an UTF32InputInterpreter
>>
>> BlockClosure>>on:do:
>> Receiver: [closure] in HandMorph>>sendFocusEvent:to:clear:
>> Arguments and temporary variables:
>> exception: Error
>> handlerAction: [closure] in PasteUpMorph>>becomeActiveDuring:
>> handlerActive: false
>> Receiver's instance variables:
>> outerContext: HandMorph>>sendFocusEvent:to:clear:
>> startpc: 67
>> numArgs: 0
>>
>> PasteUpMorph>>becomeActiveDuring:
>> Receiver: a PasteUpMorph(1622) [world]
>> Arguments and temporary variables:
>> aBlock: [closure] in HandMorph>>sendFocusEvent:to:clear:
>> priorWorld: a PasteUpMorph(1622) [world]
>> priorHand: a HandMorph(3216)
>> priorEvent: [385 at 317 mouseOver red nil]
>> Receiver's instance variables:
>> bounds: 0 at 0 corner: 801 at 600
>> owner: nil
>> submorphs: {a SystemProgressMorph(1035) . a
>> PluggableSystemWindow<Error: HTTP/1...etc...
>> fullBounds: 0 at 0 corner: 801 at 600
>> color: Color white
>> extension: a MorphExtension (2543) [eventHandler = an EventHandler]
>> [other:  (...etc...
>> borderWidth: 0
>> borderColor: (Color r: 0.515 g: 0.181 b: 0.263)
>> presenter: an EtoysPresenter (1614)
>> model: a MorphicModel(3376)
>> cursor: 1
>> padding: 3
>> backgroundMorph: nil
>> turtleTrailsForm: nil
>> turtlePen: nil
>> lastTurtlePositions: nil
>> isPartsBin: nil
>> indicateCursor: nil
>> wantsMouseOverHalos: nil
>> worldState: a WorldState
>> griddingOn: nil
>>
>>
>> --- The full stack ---
>> MCHttpRepository(Object)>>error:
>> MCHttpRepository>>writeStreamForFileNamed:replace:do:
>> MCHttpRepository(MCFileBasedRepository)>>writeStreamForFileNamed:do:
>> MCHttpRepository(MCFileBasedRepository)>>basicStoreVersion:
>> MCHttpRepository(MCRepository)>>storeVersion:
>> MCFileRepositoryInspector(MCVersionInspector)>>save
>> PluggableButtonMorphPlus(PluggableButtonMorph)>>performAction
>> PluggableButtonMorphPlus>>performAction
>> [] in PluggableButtonMorphPlus(PluggableButtonMorph)>>mouseUp:
>> Array(SequenceableCollection)>>do:
>> PluggableButtonMorphPlus(PluggableButtonMorph)>>mouseUp:
>> PluggableButtonMorphPlus>>mouseUp:
>> PluggableButtonMorphPlus(Morph)>>handleMouseUp:
>> MouseButtonEvent>>sentTo:
>> PluggableButtonMorphPlus(Morph)>>handleEvent:
>> PluggableButtonMorphPlus(Morph)>>handleFocusEvent:
>> [] in HandMorph>>sendFocusEvent:to:clear:
>> BlockClosure>>on:do:
>> PasteUpMorph>>becomeActiveDuring:
>>  - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
>> HandMorph>>sendFocusEvent:to:clear:
>> HandMorph>>sendEvent:focus:clear:
>> HandMorph>>sendMouseEvent:
>> HandMorph>>handleEvent:
>> HandMorph>>processEvents
>> [] in WorldState>>doOneCycleNowFor:
>> Array(SequenceableCollection)>>do:
>> WorldState>>handsDo:
>> WorldState>>doOneCycleNowFor:
>> WorldState>>doOneCycleFor:
>> PasteUpMorph>>doOneCycle
>> [] in MorphicProject>>spawnNewProcess
>> [] in BlockClosure>>newProcess
>>
>
>


More information about the Box-Admins mailing list