Development Team/Low-level Activity API: Difference between revisions

Bert (talk | contribs)
Querying: add query syntax reference
Bert (talk | contribs)
Activity Life Cycle: remove Presence Service mention
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.