19 #ifndef MIR_INPUT_RECEIVER_ANDROID_INPUT_RECEIVER_H_
20 #define MIR_INPUT_RECEIVER_ANDROID_INPUT_RECEIVER_H_
24 #include <utils/StrongPointer.h>
25 #include <androidfw/Input.h>
30 namespace droidinput = android;
46 class InputReceiverReport;
55 InputReceiver(droidinput::sp<droidinput::InputChannel>
const& input_channel,
56 std::shared_ptr<InputReceiverReport>
const&
report);
58 std::shared_ptr<InputReceiverReport>
const&
report);
60 virtual ~InputReceiver();
65 virtual bool next_event(std::chrono::milliseconds
const& timeout,
MirEvent &ev);
66 virtual bool next_event(
MirEvent &ev) {
return next_event(std::chrono::milliseconds(-1), ev); }
72 InputReceiver(
const InputReceiver&) =
delete;
73 InputReceiver& operator=(
const InputReceiver&) =
delete;
76 droidinput::sp<droidinput::InputChannel> input_channel;
77 std::shared_ptr<InputReceiverReport>
const report;
79 std::shared_ptr<droidinput::InputConsumer> input_consumer;
80 droidinput::PreallocatedInputEventFactory event_factory;
81 droidinput::sp<droidinput::Looper> looper;
85 std::shared_ptr<XKBMapper> xkb_mapper;
95 #endif // MIR_INPUT_RECEIVER_ANDROID_INPUT_RECEIVER_H_
input_rectangles report(report)