From 73cee7f0b009c093aa1a49df907c2b8c001b4946 Mon Sep 17 00:00:00 2001 From: Paul LeoNerd Evans Date: Sun, 9 Nov 2008 19:58:11 +0000 Subject: Allow stacking drivers in a linked list; try all of them at getkey() time --- termkey-internal.h | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'termkey-internal.h') 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 -- cgit v1.2.3