From: notaz Date: Sun, 22 Jul 2012 14:37:07 +0000 (+0000) Subject: input: move default bind handling to input core X-Git-Tag: v1.85~108 X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=9eab224e095c2ea6d13a4a488d2dc7071639d79c;p=picodrive.git input: move default bind handling to input core git-svn-id: file:///home/notaz/opt/svn/PicoDrive@953 be3aeb3a-fb24-0410-a615-afba39da0efa --- diff --git a/platform/linux/in_evdev.c b/platform/linux/in_evdev.c index 23d2e2a3..c6150612 100644 --- a/platform/linux/in_evdev.c +++ b/platform/linux/in_evdev.c @@ -586,18 +586,6 @@ static int in_evdev_menu_translate(void *drv_data, int keycode) return 0; } -static void in_evdev_get_def_binds(int *binds) -{ - int i; - - for (i = 0; ; i++) { - if (in_evdev_defbinds[i].bit == 0 && in_evdev_defbinds[i].code == 0) - break; - binds[IN_BIND_OFFS(in_evdev_defbinds[i].code, in_evdev_defbinds[i].btype)] = - 1 << in_evdev_defbinds[i].bit; - } -} - /* remove binds of missing keys, count remaining ones */ static int in_evdev_clean_binds(void *drv_data, int *binds, int *def_binds) { @@ -637,7 +625,6 @@ static const in_drv_t in_evdev_drv = { .probe = in_evdev_probe, .free = in_evdev_free, .get_key_names = in_evdev_get_key_names, - .get_def_binds = in_evdev_get_def_binds, .clean_binds = in_evdev_clean_binds, .get_config = in_evdev_get_config, .set_config = in_evdev_set_config, @@ -647,8 +634,8 @@ static const in_drv_t in_evdev_drv = { .menu_translate = in_evdev_menu_translate, }; -void in_evdev_init(void) +void in_evdev_init(const struct in_default_bind *defbinds) { - in_register_driver(&in_evdev_drv); + in_register_driver(&in_evdev_drv, defbinds); } diff --git a/platform/linux/in_evdev.h b/platform/linux/in_evdev.h index 6141b2b4..c5aef9bb 100644 --- a/platform/linux/in_evdev.h +++ b/platform/linux/in_evdev.h @@ -1,7 +1,5 @@ +struct in_default_bind; extern int in_evdev_allow_abs_only; -void in_evdev_init(void); - -/* to be set somewhere in platform code */ -extern struct in_default_bind in_evdev_defbinds[]; +void in_evdev_init(const struct in_default_bind *defbinds); diff --git a/platform/linux/plat.c b/platform/linux/plat.c index ec2aa8bd..b7152b55 100644 --- a/platform/linux/plat.c +++ b/platform/linux/plat.c @@ -8,7 +8,7 @@ * See the COPYING file in the top-level directory. */ -#define _GNU_SOURCE +#define _GNU_SOURCE 1 #include #include #include