aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMattias Andrée <maandree@operamail.com>2014-08-03 17:04:53 +0200
committerMattias Andrée <maandree@operamail.com>2014-08-03 17:04:53 +0200
commit862e7850ad3f46e792956915ee7c0f014e81b123 (patch)
tree590da23f995d0423418afcc9464a8f2d04e78fdf
parenttray should only be a protocol, not a server (diff)
downloadmds-862e7850ad3f46e792956915ee7c0f014e81b123.tar.gz
mds-862e7850ad3f46e792956915ee7c0f014e81b123.tar.bz2
mds-862e7850ad3f46e792956915ee7c0f014e81b123.tar.xz
update todo + add tray protocol
Signed-off-by: Mattias Andrée <maandree@operamail.com>
-rw-r--r--TODO10
-rw-r--r--doc/protocols75
2 files changed, 80 insertions, 5 deletions
diff --git a/TODO b/TODO
index 71ce951..e88c7a5 100644
--- a/TODO
+++ b/TODO
@@ -30,16 +30,12 @@ Missing servers:
focus Focuses the selected window
colour Mapping of colour by name (system colours) and value
state Keeps track of windows' states
- decorator A simple, reference implementation of a, window decorator
- tile A simple, reference implementation of a, tiling window manager
- stack A simple, reference implementation of a, stack window manager
- workspace A simple, reference implementation of a, workspaces
vt VT switcher
iclipboard User-private interdisplay clipboard
Missing protocols:
- tray Status notification tray
+ embed Embedding windows inside other windows such as a status icon tray
Extra servers:
@@ -47,6 +43,10 @@ Extra servers:
ratbind Bind cursor actions to external commands, e.g. hotcorners
gestures Bind rat gestures to external commands, e.g. shacking to minimise windows
dcvs Defective colour vision simulation
+ decorator A simple, reference implementation of a, window decorator
+ tile A simple, reference implementation of a, tiling window manager
+ stack A simple, reference implementation of a, stack window manager
+ workspace A simple, reference implementation of a, workspaces
Missing commands:
diff --git a/doc/protocols b/doc/protocols
index 1a251af..c013dd1 100644
--- a/doc/protocols
+++ b/doc/protocols
@@ -182,6 +182,8 @@ Conditionally optional header: Time to live
thread or an alarm an pop when when SIGARLM is
received.
+Message: The content to add to the clipboard
+
Purpose: Enable the user to duplicate content from one process
into another process without requiring those processes
to be aware of eathother to any extent
@@ -217,3 +219,76 @@ Reference implementation: mds-clipboard
---------------------------------------------------------------------
+Command: add-tray-icon
+ Add a status icons to the status icon tray
+ The client should keep in mind that there can be any number of
+ trays available on the system: zero, one, two or three, ...,
+ and that it will get a response once from every tray
+
+Required header: Client ID
+ Your ID, provided by `ID assignment`
+ in response to `Command: assign-id`
+
+Required header: Package
+ The name of the package to which the program announced the icon
+ belongs
+
+Required header: Icon ID
+ An ID of the icon that can be used identify the icon, icon ID:s
+ are not unique, but the combination of a package and a icon ID
+ should be unque and can be used to ignore already added icons
+ and hide icons that the user has been configured to be hidden
+
+Required header: Title
+ A title describing the icon for the user, used to configured
+ when icons should be hidden and shown among other configuration
+
+Required header: Icon
+ The name or pathname of an icon to use together with the title
+
+Response:
+ To: <Client ID>
+ In response to: <Message ID>
+ Message ID: <the status tray's message ID>
+ Socket: <Where to embed the icon>
+ Will send update: <`yes` if this message will be followed by
+ `Command: tray-update`, otherwise `no`>
+
+Purpose: Enable clients to add a small icon that displays the status
+ of programs, particularly minimised programs and services
+
+Compulsivity: optional
+
+---------------------------------------------------------------------
+
+Command: update-tray-icon
+ Change the status of a status icon
+
+Purpose: Enable status trays to automatically hide inactive icons
+Purpose: Hide icons without actually removing them
+
+Compulsivity: optional
+
+---------------------------------------------------------------------
+
+Command: tray-update
+ Send updates about the status tray to the status icon
+
+Purpose: Enable clients to be aware of the appearance of the tray,
+ such as colours, transparency and background image
+
+Compulsivity: optional
+
+---------------------------------------------------------------------
+
+Command: new-tray
+ Announce the existence of a new status icon trays
+
+Purpose: Allow clients to add their status icons to status icon
+ trays that have been added to the display after those
+ programs have started and attempted to add their icons
+
+Compulsivity: required if supporting `Command: add-tray-icon`
+
+---------------------------------------------------------------------
+