Line 22: |
Line 22: |
| # It creates an X11 window with special properties so the Sugar shell can associate an activity with its window. | | # It creates an X11 window with special properties so the Sugar shell can associate an activity with its window. |
| # If an object id was passed on the command line, the activity loads that object from the Datastore. Otherwise, it creates a new Datastore object. | | # If an object id was passed on the command line, the activity loads that object from the Datastore. Otherwise, it creates a new Datastore object. |
− | # The activity asks the Presence Service to find out if it is shared. If so, it joins the shared activity. | + | # It needs to set up collaboration by connecting to the shared activity instance (if any). |
| | | |
| '''Operation''' | | '''Operation''' |
| # The activity continuously handles X11 user input, as well as D-Bus messages from the Sugar shell, or signals from other sources like the Presence Service. | | # The activity continuously handles X11 user input, as well as D-Bus messages from the Sugar shell, or signals from other sources like the Presence Service. |
| # Whenever the state of the activity was altered significantly, it should update its Datastore object to prevent data loss on an unexpected shutdown. | | # Whenever the state of the activity was altered significantly, it should update its Datastore object to prevent data loss on an unexpected shutdown. |
− | # If the user indicates wanting to share the activity, it has to announce this to the Presence Service. | + | # If the user indicates wanting to share the activity, it needs to create a shared activity instance. |
| # If the view-source key is pressed, some meta-action about the activity should be invoked, like showing its source code. | | # If the view-source key is pressed, some meta-action about the activity should be invoked, like showing its source code. |
| | | |