소스 검색

webgl: a few fixes for compiling with latest emscripten

rdb 5 년 전
부모
커밋
4c602f1543
1개의 변경된 파일10개의 추가작업 그리고 15개의 파일을 삭제
  1. 10 15
      panda/src/webgldisplay/webGLGraphicsWindow.cxx

+ 10 - 15
panda/src/webgldisplay/webGLGraphicsWindow.cxx

@@ -346,8 +346,7 @@ open_window() {
   emscripten_set_focus_callback(target, (void *)this, false, &on_focus_event);
   emscripten_set_blur_callback(target, (void *)this, false, &on_focus_event);
 
-  void *user_data = (void *)&_input_devices[0];
-
+  void *user_data = _input;
   emscripten_set_keypress_callback(target, user_data, false, &on_keyboard_event);
   emscripten_set_keydown_callback(target, user_data, false, &on_keyboard_event);
   emscripten_set_keyup_callback(target, user_data, false, &on_keyboard_event);
@@ -535,8 +534,6 @@ on_mouse_event(int type, const EmscriptenMouseEvent *event, void *user_data) {
   device = (GraphicsWindowInputDevice *)user_data;
   nassertr(device != nullptr, false);
 
-  double time = event->timestamp * 0.001;
-
   switch (type) {
   case EMSCRIPTEN_EVENT_MOUSEDOWN:
     // Don't register out-of-bounds mouse downs.
@@ -544,14 +541,14 @@ on_mouse_event(int type, const EmscriptenMouseEvent *event, void *user_data) {
       int w, h, f;
       emscripten_get_canvas_size(&w, &h, &f);
       if (event->canvasX < w && event->canvasY < h) {
-        device->button_down(MouseButton::button(event->button), time);
+        device->button_down(MouseButton::button(event->button));
         return true;
       }
     }
     return false;
 
   case EMSCRIPTEN_EVENT_MOUSEUP:
-    device->button_up(MouseButton::button(event->button), time);
+    device->button_up(MouseButton::button(event->button));
     return true;
 
   case EMSCRIPTEN_EVENT_MOUSEMOVE:
@@ -562,9 +559,9 @@ on_mouse_event(int type, const EmscriptenMouseEvent *event, void *user_data) {
       if (ev.isActive) {
         MouseData md = device->get_pointer();
         device->set_pointer_in_window(md.get_x() + event->movementX,
-                                      md.get_y() + event->movementY, time);
+                                      md.get_y() + event->movementY);
       } else {
-        device->set_pointer_in_window(event->canvasX, event->canvasY, time);
+        device->set_pointer_in_window(event->canvasX, event->canvasY);
       }
     }
     return true;
@@ -573,7 +570,7 @@ on_mouse_event(int type, const EmscriptenMouseEvent *event, void *user_data) {
     break;
 
   case EMSCRIPTEN_EVENT_MOUSELEAVE:
-    device->set_pointer_out_of_window(time);
+    device->set_pointer_out_of_window();
     return true;
 
   default:
@@ -592,16 +589,14 @@ on_wheel_event(int type, const EmscriptenWheelEvent *event, void *user_data) {
   device = (GraphicsWindowInputDevice *)user_data;
   nassertr(device != nullptr, false);
 
-  double time = event->mouse.timestamp * 0.001;
-
   if (type == EMSCRIPTEN_EVENT_WHEEL) {
     if (event->deltaY < 0) {
-      device->button_down(MouseButton::wheel_up(), time);
-      device->button_up(MouseButton::wheel_up(), time);
+      device->button_down(MouseButton::wheel_up());
+      device->button_up(MouseButton::wheel_up());
     }
     if (event->deltaY > 0) {
-      device->button_down(MouseButton::wheel_down(), time);
-      device->button_up(MouseButton::wheel_down(), time);
+      device->button_down(MouseButton::wheel_down());
+      device->button_up(MouseButton::wheel_down());
     }
     return true;
   }