diff options
Diffstat (limited to 'README')
-rw-r--r-- | README | 47 |
1 files changed, 47 insertions, 0 deletions
@@ -0,0 +1,47 @@ +Indicator-Session is the the session menu indicator for Unity. +Its behavior and features are listed at https://wiki.ubuntu.com/SystemMenu. + +For instructions on building and running built-in tests, see the INSTALL file. + + +Notes for Client Renderers +-------------------------- + +Indicator-Session has two custom types: the Guest menuitem and User menuitems. +Referencing the spec at ,https://wiki.ubuntu.com/SystemMenu.>, both have four +visual components: (1) an Active Session Mark and the user's (2) icon, +(3) name, and (4) Logged In Mark. + +== User menuitems can be recognized by their "indicator.switch-to-user" action. + Their four visual components are determined by: + + 1. You can test for the Action Session Mark by checking the action's state. + The state is a dicionary whose "active-user" key yields the current + session's owner's username. If it matches the username in this menuitem's + "target" attribute, show the Active Session Mark. + + 2. The icon is stored in the menuitem's "icon" attribute. If none is set, + the client should use a fallback icon such as "avatar-default." + + 3. The name is stored in the menuitem's "label" attribute. + + 4. You can test for the Logged In Mark by checking the action's state. + The state is a dictionary whose "logged-in-users" key will give + an array of usernames. If the array contains the username in this + menuitem's "target" attribute, show the Logged In Mark. + +== Guest menuitems can be recognized by their "indicator.switch-to-guest" action. + Its four visual components is determined by: + + 1. You can test for the Active Session Mark by checking the action's state. + The state is a dictionary whose "is-active" key yields a boolean. + If the booelan is true, show the Active Session Mark. + + 2. The guest user should use a fallback icon such as "avatar-default." + + 3. The name ("Guest") is stored in the menuitem's "label" attribute. + + 4. You can test for the Logged In Mark by checking the action's state. + The state is a dictionary whose "is-logged-in" key yields a boolean. + If the boolean is true, show the Logged In Mark. + |