'From etoys3.0 of 19 February 2008 [latest update: #2043] on 24 June 2008 at 6:35:10 pm'! "Change Set: sugarService-bf Date: 24 June 2008 Author: Bert Freudenberg Properly register our activity service to be able to receive activation messages"! !DBusEtoysService commentStamp: '' prior: 0! I make available all players in the current World on the DBus. DBus sessionBus export: DBusEtoysService new on: 'org.squeak.etoys' at: '/org/squeak/etoys'. ! !DBus methodsFor: 'exporting' stamp: 'bf 6/24/2008 18:06'! export: aDBusObject on: aDBusName at: aPathString self registerName: aDBusName. exported ifNil: [exported := DBusObject new dbusConnection: self]. exported dbusAdd: aDBusObject path: (aPathString findTokens: '/').! ! !SugarLauncher methodsFor: 'running' stamp: 'bf 6/24/2008 18:05'! startUp self class allInstances do: [:ea | ea shutDown]. Current := self. parameters at: 'ACTIVITY_ID' ifPresent: [ :activityId | OLPCVirtualScreen installIfNeeded. World windowEventHandler: self. DBus sessionBus export: SugarEtoysActivity new on: 'org.laptop.Activity', activityId at: '/org/laptop/Activity/', activityId. Utilities authorName: self presence getOwner nick. ServerDirectory addServer: (SugarDatastoreDirectory mimetype: 'application/x-squeak-project' extension: '.pr') named: SugarLauncher defaultDatastoreDirName. self joinSharedActivity. self isShared ifFalse: [ parameters at: 'OBJECT_ID' ifPresent: [:id | ^self resumeJournalEntry: id]]. self isShared ifTrue: [^self]. ^self welcome: (parameters at: 'URI' ifAbsent: [''])]. self welcome: '' ! ! DBus removeSelector: #export:at:!