Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(72)

Side by Side Diff: ui/events/ozone/evdev/libgestures_glue/event_reader_libevdev_cros.cc

Issue 797483002: ozone: evdev: Populate keyboard list on DeviceDataManager (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "ui/events/ozone/evdev/libgestures_glue/event_reader_libevdev_cros.h" 5 #include "ui/events/ozone/evdev/libgestures_glue/event_reader_libevdev_cros.h"
6 6
7 #include <errno.h> 7 #include <errno.h>
8 #include <libevdev/libevdev.h> 8 #include <libevdev/libevdev.h>
9 #include <linux/input.h> 9 #include <linux/input.h>
10 10
(...skipping 11 matching lines...) Expand all
22 msg.erase(msg.end() - 1, msg.end()); 22 msg.erase(msg.end() - 1, msg.end());
23 return msg; 23 return msg;
24 } 24 }
25 25
26 } // namespace 26 } // namespace
27 27
28 EventReaderLibevdevCros::EventReaderLibevdevCros(int fd, 28 EventReaderLibevdevCros::EventReaderLibevdevCros(int fd,
29 const base::FilePath& path, 29 const base::FilePath& path,
30 int id, 30 int id,
31 InputDeviceType type, 31 InputDeviceType type,
32 const EventDeviceInfo& devinfo,
32 scoped_ptr<Delegate> delegate) 33 scoped_ptr<Delegate> delegate)
33 : EventConverterEvdev(fd, path, id, type), delegate_(delegate.Pass()) { 34 : EventConverterEvdev(fd, path, id, type),
35 has_keyboard_(devinfo.HasKeyboard()),
36 delegate_(delegate.Pass()) {
34 memset(&evdev_, 0, sizeof(evdev_)); 37 memset(&evdev_, 0, sizeof(evdev_));
35 evdev_.log = OnLogMessage; 38 evdev_.log = OnLogMessage;
36 evdev_.log_udata = this; 39 evdev_.log_udata = this;
37 evdev_.syn_report = OnSynReport; 40 evdev_.syn_report = OnSynReport;
38 evdev_.syn_report_udata = this; 41 evdev_.syn_report_udata = this;
39 evdev_.fd = fd; 42 evdev_.fd = fd;
40 43
41 memset(&evstate_, 0, sizeof(evstate_)); 44 memset(&evstate_, 0, sizeof(evstate_));
42 evdev_.evstate = &evstate_; 45 evdev_.evstate = &evstate_;
43 Event_Init(&evdev_); 46 Event_Init(&evdev_);
(...skipping 14 matching lines...) Expand all
58 if (EvdevRead(&evdev_)) { 61 if (EvdevRead(&evdev_)) {
59 if (errno == EINTR || errno == EAGAIN) 62 if (errno == EINTR || errno == EAGAIN)
60 return; 63 return;
61 if (errno != ENODEV) 64 if (errno != ENODEV)
62 PLOG(ERROR) << "error reading device " << path_.value(); 65 PLOG(ERROR) << "error reading device " << path_.value();
63 Stop(); 66 Stop();
64 return; 67 return;
65 } 68 }
66 } 69 }
67 70
71 bool EventReaderLibevdevCros::HasKeyboard() const {
72 return has_keyboard_;
73 }
74
68 // static 75 // static
69 void EventReaderLibevdevCros::OnSynReport(void* data, 76 void EventReaderLibevdevCros::OnSynReport(void* data,
70 EventStateRec* evstate, 77 EventStateRec* evstate,
71 struct timeval* tv) { 78 struct timeval* tv) {
72 EventReaderLibevdevCros* reader = static_cast<EventReaderLibevdevCros*>(data); 79 EventReaderLibevdevCros* reader = static_cast<EventReaderLibevdevCros*>(data);
73 reader->delegate_->OnLibEvdevCrosEvent(&reader->evdev_, evstate, *tv); 80 reader->delegate_->OnLibEvdevCrosEvent(&reader->evdev_, evstate, *tv);
74 } 81 }
75 82
76 // static 83 // static
77 void EventReaderLibevdevCros::OnLogMessage(void* data, 84 void EventReaderLibevdevCros::OnLogMessage(void* data,
78 int level, 85 int level,
79 const char* fmt, 86 const char* fmt,
80 ...) { 87 ...) {
81 va_list args; 88 va_list args;
82 va_start(args, fmt); 89 va_start(args, fmt);
83 if (level >= LOGLEVEL_ERROR) 90 if (level >= LOGLEVEL_ERROR)
84 LOG(ERROR) << "libevdev: " << FormatLog(fmt, args); 91 LOG(ERROR) << "libevdev: " << FormatLog(fmt, args);
85 else if (level >= LOGLEVEL_WARNING) 92 else if (level >= LOGLEVEL_WARNING)
86 LOG(WARNING) << "libevdev: " << FormatLog(fmt, args); 93 LOG(WARNING) << "libevdev: " << FormatLog(fmt, args);
87 else 94 else
88 VLOG(3) << "libevdev: " << FormatLog(fmt, args); 95 VLOG(3) << "libevdev: " << FormatLog(fmt, args);
89 va_end(args); 96 va_end(args);
90 } 97 }
91 98
92 } // namespace ui 99 } // namespace ui
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698