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 menuitems: the Guest and User switchers. +As per the https://wiki.ubuntu.com/SystemMenu specification, both need four +visual components: (1) an Active Session Mark, the user's (2) icon, (3) name, +and (4) a Logged In Mark. + +== User menuitems have "x-canonical-type" set to "indicator.user-menu-item" + 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. + +== The Guest switcher has "x-canonical-type" set to "indicator.guest-menu-item" + action. Its four visual components are 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 boolean 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. + |