Updated function key mapping because of possible changes to NOTIFY.

The TTY driver now only notifies the IS server about function key event,
but does not tell which keys are pressed. The IS servers queries the TTY
driver to find out about this.
This commit is contained in:
Jorrit Herder
2005-06-20 14:23:31 +00:00
parent c0f83b4033
commit ec24a0798c
13 changed files with 145 additions and 145 deletions

View File

@@ -3,9 +3,10 @@
/*===========================================================================*
* fkey_ctl *
*===========================================================================*/
PUBLIC int fkey_ctl(fkey_code, enable_disable)
int fkey_code; /* function key code it concerns */
int enable_disable; /* enable or disable notifications */
PUBLIC int fkey_ctl(request, fkeys, sfkeys)
int request; /* request to perform */
int *fkeys; /* bit masks for F1-F12 keys */
int *sfkeys; /* bit masks for Shift F1-F12 keys */
{
/* Send a message to the TTY server to request notifications for function
* key presses or to disable notifications. Enabling succeeds unless the key
@@ -13,9 +14,14 @@ int enable_disable; /* enable or disable notifications */
* bound to the current process.
*/
message m;
m.FKEY_CODE = fkey_code;
m.FKEY_ENABLE = enable_disable;
return(_taskcall(TTY, FKEY_CONTROL, &m));
int s;
m.FKEY_REQUEST = request;
m.FKEY_FKEYS = (fkeys) ? *fkeys : 0;
m.FKEY_SFKEYS = (sfkeys) ? *sfkeys : 0;
s = _taskcall(TTY, FKEY_CONTROL, &m);
if (fkeys) *fkeys = m.FKEY_FKEYS;
if (sfkeys) *sfkeys = m.FKEY_SFKEYS;
return(s);
}