aboutsummaryrefslogtreecommitdiff
path: root/README
diff options
context:
space:
mode:
Diffstat (limited to 'README')
-rw-r--r--README47
1 files changed, 47 insertions, 0 deletions
diff --git a/README b/README
index e69de29..8834cc2 100644
--- a/README
+++ b/README
@@ -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.
+