'From etoys2.2 of 21 September 2007 [latest update: #1775] on 14 November 2007 at 5:36:41 pm'! "Change Set: authorName-bf Date: 12 November 2007 Author: Bert Freudenberg Set authorName to the XO owner's name on startup."! !SugarBuddy class methodsFor: 'instance creation' stamp: 'bf 11/12/2007 13:45'! fromDictionary: aDict | buddyClass | buddyClass := SugarBuddy. (aDict at: 'owner' ifAbsent: []) == true ifTrue: [ buddyClass := SugarBuddyOwner. Utilities authorName: (aDict at: 'nick' ifAbsent: ['missing nick']) utf8ToSqueak]. ^buddyClass key: (aDict at: 'key' ifAbsent: ['missing key']) nick: (aDict at: 'nick' ifAbsent: ['missing nick']) utf8ToSqueak colors: (aDict at: 'color' ifAbsent: ['#FF0000,#FF0000']) ip: (aDict at: 'ip4-address' ifAbsent: ['missing address']) ! ! !SugarLauncher methodsFor: 'running' stamp: 'bf 11/14/2007 17:36'! startUp self class allInstances do: [:ea | ea shutDown]. Current := self. parameters at: 'ACTIVITY_ID' ifPresent: [ :activityId | World windowEventHandler: self. process := [self runDBusService: 'org.laptop.Activity', activityId] forkAt: Processor userInterruptPriority named: 'Sugar DBus service'. Utilities authorName: self ownerBuddy nick. ServerDirectory addServer: (SugarDatastoreDirectory mimetype: 'application/x-squeak-project' extension: '.pr') named: SugarLauncher defaultDatastoreDirName. sharedActivity := self getSharedActivityById: activityId. sharedActivity ifNotNil: [self joinSharedActivity]. parameters at: 'OBJECT_ID' ifPresent: [:id | ^self resumeJournalEntry: id]. Project current projectParameterAt: #sugarAutoSave put: true. self createJournalEntryFor: Project current filename: '' mimetype: ''. ^self welcome: (parameters at: 'URI' ifAbsent: [''])]. self welcome: '' ! !