diff options
author | Paul LeoNerd Evans <leonerd@leonerd.org.uk> | 2008-11-09 19:58:11 +0000 |
---|---|---|
committer | Paul LeoNerd Evans <leonerd@leonerd.org.uk> | 2008-11-09 19:58:11 +0000 |
commit | 73cee7f0b009c093aa1a49df907c2b8c001b4946 (patch) | |
tree | 6be62c9adc21c3be753c6068e57ee216062f85df /termkey-internal.h | |
parent | aef2e912773ca3669c45725f95226d0081c23046 (diff) | |
download | termo-73cee7f0b009c093aa1a49df907c2b8c001b4946.tar.gz termo-73cee7f0b009c093aa1a49df907c2b8c001b4946.tar.xz termo-73cee7f0b009c093aa1a49df907c2b8c001b4946.zip |
Allow stacking drivers in a linked list; try all of them at getkey() time
Diffstat (limited to 'termkey-internal.h')
-rw-r--r-- | termkey-internal.h | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/termkey-internal.h b/termkey-internal.h index 2a1a831..645a7da 100644 --- a/termkey-internal.h +++ b/termkey-internal.h @@ -23,6 +23,13 @@ struct keyinfo { int modifier_set; }; +struct termkey_drivernode; +struct termkey_drivernode { + struct termkey_driver *driver; + void *info; + struct termkey_drivernode *next; +}; + struct termkey { int fd; int flags; @@ -44,8 +51,7 @@ struct termkey { // There are 32 C0 codes struct keyinfo c0[32]; - struct termkey_driver driver; - void *driver_info; + struct termkey_drivernode *drivers; // Now some "protected" methods for the driver to call but which we don't // want exported as real symbols in the library |