5 #include "WindowsInput.h"
6 #include "MousePanGesture.h"
7 #include "MouseRotateGesture.h"
8 #include "MouseZoomGesture.h"
9 #include "MouseTiltGesture.h"
10 #include "MouseTouchGesture.h"
11 #include "MouseTapGesture.h"
12 #include "TouchScreenPanGesture.h"
13 #include "TouchScreenPinchGesture.h"
14 #include "TouchScreenRotateGesture.h"
15 #include "TouchScreenTiltGesture.h"
16 #include "TouchScreenTouchGesture.h"
17 #include "TouchScreenTapGesture.h"
18 #include "WindowsNativeState.h"
19 #include "MouseInputEvent.h"
20 #include "TouchScreenInputEvent.h"
21 #include "IWindowsInputHandler.h"
22 #include "IUserIdleService.h"
33 : PanStartThresholdPixels(0.f)
34 , ZoomSensitivity(0.f)
35 , MaxZoomPerSecond(0.f)
38 float PanStartThresholdPixels;
39 float ZoomSensitivity;
40 float MaxZoomPerSecond;
59 bool m_isTouchInputEnabled;
61 std::vector<TouchScreenInputEvent> m_touchScreenEvents;
66 EGLNativeWindowType m_hwnd;
70 long long m_lastTouchTimeMs;
74 void HandleMouseInput(
const MouseInputEvent& event,
float screenWidth,
float screenHeight);
77 void HandleTouchScreenInput(
const TouchScreenInputEvent& event,
float screenWidth,
float screenHeight);
78 void Update(
float deltaSeconds);
80 bool IsMouseInsideWindow();
81 void SetAllInputEventsToPointerUp(
int x,
int y);
82 void SetTouchInputEventToPointerUp(
int touchId);
83 void PopAllTouchEvents();
85 long long GetUserIdleTimeMs()
const;
89 static MouseInputEvent MakeMouseInputEvent(MouseInputAction mouseInputAction, WPARAM wparam, LPARAM lparam,
int wheelDelta);
97 config.PanStartThresholdPixels = 4.f;
102 config.ZoomSensitivity = 0.012f;
103 config.MaxZoomPerSecond = 5.0f;