CIrrDeviceLinux: Add support For TouchInput.touchedCount
This commit is contained in:
		| @@ -112,6 +112,9 @@ CIrrDeviceLinux::CIrrDeviceLinux(const SIrrlichtCreationParameters& param) | ||||
| 	XDisplay(0), VisualInfo(0), Screennr(0), XWindow(0), StdHints(0), SoftwareImage(0), | ||||
| 	XInputMethod(0), XInputContext(0), | ||||
| 	HasNetWM(false), | ||||
| #endif | ||||
| #if defined(_IRR_LINUX_X11_XINPUT2_) | ||||
| 	currentTouchedCount(0), | ||||
| #endif | ||||
| 	Width(param.WindowSize.Width), Height(param.WindowSize.Height), | ||||
| 	WindowHasFocus(false), WindowMinimized(false), | ||||
| @@ -1051,6 +1054,14 @@ bool CIrrDeviceLinux::run() | ||||
| 						irrevent.TouchInput.X = de->event_x; | ||||
| 						irrevent.TouchInput.Y = de->event_y; | ||||
|  | ||||
| 						if (irrevent.TouchInput.Event == ETIE_PRESSED_DOWN) { | ||||
| 							currentTouchedCount++; | ||||
| 						} | ||||
| 						irrevent.TouchInput.touchedCount = currentTouchedCount; | ||||
| 						if (currentTouchedCount > 0 && irrevent.TouchInput.Event == ETIE_LEFT_UP) { | ||||
| 							currentTouchedCount--; | ||||
| 						} | ||||
|  | ||||
| 						postEventFromUser(irrevent); | ||||
| 					} | ||||
| 				} | ||||
|   | ||||
| @@ -425,6 +425,10 @@ namespace irr | ||||
| 		}; | ||||
| 		core::array<JoystickInfo> ActiveJoysticks; | ||||
| #endif | ||||
|  | ||||
| #if defined(_IRR_LINUX_X11_XINPUT2_) | ||||
| 		int currentTouchedCount; | ||||
| #endif | ||||
| 	}; | ||||
|  | ||||
|  | ||||
|   | ||||
| @@ -37,6 +37,7 @@ set(CMAKE_REQUIRED_INCLUDES ${PROJECT_SOURCE_DIR}/include) | ||||
| unset(OGLES1_ENABLED CACHE) | ||||
| unset(OGLES2_ENABLED CACHE) | ||||
| unset(OGL_ENABLED CACHE) | ||||
| unset(XINPUT2_ENABLED CACHE) | ||||
|  | ||||
| check_symbol_exists(_IRR_COMPILE_WITH_OGLES1_ "IrrCompileConfig.h" OGLES1_ENABLED) | ||||
| if(OGLES1_ENABLED) | ||||
| @@ -55,6 +56,10 @@ if(OGL_ENABLED) | ||||
| 	set(OpenGL_GL_PREFERENCE "LEGACY") | ||||
| 	find_package(OpenGL REQUIRED) | ||||
| endif() | ||||
| check_symbol_exists(_IRR_LINUX_X11_XINPUT2_ "IrrCompileConfig.h" XINPUT2_ENABLED) | ||||
| if(XINPUT2_ENABLED) | ||||
| 	find_library(XINPUT_LIBRARY Xi REQUIRED) | ||||
| endif() | ||||
|  | ||||
| # Platform-specific libs | ||||
|  | ||||
| @@ -96,6 +101,7 @@ set(link_libs | ||||
| 	${OPENGLES_LIBRARY} | ||||
| 	${OPENGLES2_LIBRARIES} | ||||
| 	${EGL_LIBRARY} | ||||
| 	${XINPUT_LIBRARY} | ||||
|  | ||||
| 	"$<$<PLATFORM_ID:Android>:native_app_glue -landroid -llog>" | ||||
| 	${COCOA_LIB} | ||||
|   | ||||
		Reference in New Issue
	
	Block a user