From ffb48f64fec674c6dd923eb8b1eb3f743e05a8ba Mon Sep 17 00:00:00 2001 From: The Android Open Source Project Date: Tue, 3 Mar 2009 18:28:14 -0800 Subject: auto import from //depot/cupcake/@135843 --- minui/events.c | 82 ---------------------------------------------------------- 1 file changed, 82 deletions(-) delete mode 100644 minui/events.c (limited to 'minui/events.c') diff --git a/minui/events.c b/minui/events.c deleted file mode 100644 index 3aed2a860..000000000 --- a/minui/events.c +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Copyright (C) 2007 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -#include -#include -#include -#include -#include - -#include - -#include "minui.h" - -#define MAX_DEVICES 16 - -static struct pollfd ev_fds[MAX_DEVICES]; -static unsigned ev_count = 0; - -int ev_init(void) -{ - DIR *dir; - struct dirent *de; - int fd; - - dir = opendir("/dev/input"); - if(dir != 0) { - while((de = readdir(dir))) { -// fprintf(stderr,"/dev/input/%s\n", de->d_name); - if(strncmp(de->d_name,"event",5)) continue; - fd = openat(dirfd(dir), de->d_name, O_RDONLY); - if(fd < 0) continue; - - ev_fds[ev_count].fd = fd; - ev_fds[ev_count].events = POLLIN; - ev_count++; - if(ev_count == MAX_DEVICES) break; - } - } - - return 0; -} - -void ev_exit(void) -{ - while (ev_count > 0) { - close(ev_fds[--ev_count].fd); - } -} - -int ev_get(struct input_event *ev, unsigned dont_wait) -{ - int r; - unsigned n; - - do { - r = poll(ev_fds, ev_count, dont_wait ? 0 : -1); - - if(r > 0) { - for(n = 0; n < ev_count; n++) { - if(ev_fds[n].revents & POLLIN) { - r = read(ev_fds[n].fd, ev, sizeof(*ev)); - if(r == sizeof(*ev)) return 0; - } - } - } - } while(dont_wait == 0); - - return -1; -} -- cgit v1.2.3