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

Side by Side Diff: webkit/plugins/ppapi/event_conversion.cc

Issue 9405033: Revise gamepad interface (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: rebase Created 8 years, 9 months 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 "webkit/plugins/ppapi/event_conversion.h" 5 #include "webkit/plugins/ppapi/event_conversion.h"
6 6
7 #include "base/basictypes.h" 7 #include "base/basictypes.h"
8 #include "base/i18n/char_iterator.h" 8 #include "base/i18n/char_iterator.h"
9 #include "base/logging.h" 9 #include "base/logging.h"
10 #include "base/memory/scoped_ptr.h" 10 #include "base/memory/scoped_ptr.h"
11 #include "base/string_util.h" 11 #include "base/string_util.h"
12 #include "base/stringprintf.h" 12 #include "base/stringprintf.h"
13 #include "base/utf_string_conversions.h" 13 #include "base/utf_string_conversions.h"
14 #include "base/utf_string_conversion_utils.h" 14 #include "base/utf_string_conversion_utils.h"
15 #include "ppapi/c/pp_input_event.h" 15 #include "ppapi/c/pp_input_event.h"
16 #include "ppapi/shared_impl/ppb_input_event_shared.h" 16 #include "ppapi/shared_impl/ppb_input_event_shared.h"
17 #include "ppapi/shared_impl/time_conversion.h" 17 #include "ppapi/shared_impl/time_conversion.h"
18 #include "third_party/WebKit/Source/WebKit/chromium/public/WebInputEvent.h" 18 #include "third_party/WebKit/Source/WebKit/chromium/public/WebInputEvent.h"
19 #include "third_party/WebKit/Source/WebKit/chromium/public/platform/WebGamepads. h"
19 #include "third_party/WebKit/Source/WebKit/chromium/public/platform/WebString.h" 20 #include "third_party/WebKit/Source/WebKit/chromium/public/platform/WebString.h"
20 #include "webkit/plugins/ppapi/common.h" 21 #include "webkit/plugins/ppapi/common.h"
21 22
22 using ppapi::EventTimeToPPTimeTicks; 23 using ppapi::EventTimeToPPTimeTicks;
23 using ppapi::InputEventData; 24 using ppapi::InputEventData;
24 using ppapi::PPTimeTicksToEventTime; 25 using ppapi::PPTimeTicksToEventTime;
25 using WebKit::WebInputEvent; 26 using WebKit::WebInputEvent;
26 using WebKit::WebKeyboardEvent; 27 using WebKit::WebKeyboardEvent;
27 using WebKit::WebMouseEvent; 28 using WebKit::WebMouseEvent;
28 using WebKit::WebMouseWheelEvent; 29 using WebKit::WebMouseWheelEvent;
(...skipping 487 matching lines...) Expand 10 before | Expand all | Expand 10 after
516 case WebInputEvent::KeyUp: 517 case WebInputEvent::KeyUp:
517 case WebInputEvent::Char: 518 case WebInputEvent::Char:
518 return PP_INPUTEVENT_CLASS_KEYBOARD; 519 return PP_INPUTEVENT_CLASS_KEYBOARD;
519 case WebInputEvent::Undefined: 520 case WebInputEvent::Undefined:
520 default: 521 default:
521 NOTREACHED(); 522 NOTREACHED();
522 return PP_InputEvent_Class(0); 523 return PP_InputEvent_Class(0);
523 } 524 }
524 } 525 }
525 526
527 void ConvertWebKitGamepadData(WebKit::WebGamepads& webkit_data,
528 PP_GamepadsSampleData_Dev* output_data) {
529 output_data->length = webkit_data.length;
530 for (unsigned i = 0; i < webkit_data.length; ++i) {
531 PP_GamepadSampleData_Dev& output_pad = output_data->items[i];
532 const WebKit::WebGamepad& webkit_pad = webkit_data.items[i];
533 output_pad.connected = webkit_pad.connected ? PP_TRUE : PP_FALSE;
534 if (webkit_pad.connected) {
535 COMPILE_ASSERT(sizeof(output_pad.id) == sizeof(webkit_pad.id),
536 id_size_does_not_match);
537 COMPILE_ASSERT(sizeof(output_pad.axes) == sizeof(webkit_pad.axes),
538 axes_size_does_not_match);
539 COMPILE_ASSERT(sizeof(output_pad.buttons) == sizeof(webkit_pad.buttons),
540 buttons_size_does_not_match);
541 memcpy(output_pad.id, webkit_pad.id, sizeof(output_pad.id));
542 output_pad.timestamp = webkit_pad.timestamp;
543 output_pad.axes_length = webkit_pad.axesLength;
544 memcpy(output_pad.axes, webkit_pad.axes, sizeof(output_pad.axes));
545 output_pad.buttons_length = webkit_pad.buttonsLength;
546 memcpy(output_pad.buttons,
547 webkit_pad.buttons,
548 sizeof(output_pad.buttons));
549 }
550 }
551 }
552
526 } // namespace ppapi 553 } // namespace ppapi
527 } // namespace webkit 554 } // namespace webkit
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698