Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'intern/ghost/intern/GHOST_WindowWin32.cpp')
-rw-r--r--intern/ghost/intern/GHOST_WindowWin32.cpp13
1 files changed, 13 insertions, 0 deletions
diff --git a/intern/ghost/intern/GHOST_WindowWin32.cpp b/intern/ghost/intern/GHOST_WindowWin32.cpp
index 084b9677fab..a28889cf379 100644
--- a/intern/ghost/intern/GHOST_WindowWin32.cpp
+++ b/intern/ghost/intern/GHOST_WindowWin32.cpp
@@ -194,6 +194,8 @@ GHOST_WindowWin32::GHOST_WindowWin32(GHOST_SystemWin32 *system,
loadWintab(GHOST_kWindowStateMinimized != state);
}
+ RegisterPointerDeviceNotifications(m_hWnd, TRUE);
+
/* Allow the showing of a progress bar on the taskbar. */
CoCreateInstance(
CLSID_TaskbarList, NULL, CLSCTX_INPROC_SERVER, IID_ITaskbarList3, (LPVOID *)&m_Bar);
@@ -627,6 +629,7 @@ void GHOST_WindowWin32::lostMouseCapture()
m_hasGrabMouse = false;
m_nPressedButtons = 0;
m_hasMouseCaptured = false;
+ m_mousePresent = false; // XXX necessary?
}
}
@@ -878,6 +881,11 @@ GHOST_TSuccess GHOST_WindowWin32::getPointerInfo(
GHOST_SystemWin32 *system = (GHOST_SystemWin32 *)GHOST_System::getSystem();
uint32_t outCount = 0;
+ POINTER_INPUT_TYPE inputType;
+ if (GetPointerType(pointerId, &inputType) && inputType == PT_MOUSE) {
+ return GHOST_kFailure;
+ }
+
if (!(GetPointerPenInfoHistory(pointerId, &outCount, NULL))) {
return GHOST_kFailure;
}
@@ -956,6 +964,11 @@ void GHOST_WindowWin32::resetPointerPenInfo()
m_lastPointerTabletData = GHOST_TABLET_DATA_NONE;
}
+void GHOST_WindowWin32::setPointerPenInfo()
+{
+ m_lastPointerTabletData.Active = GHOST_kTabletModeStylus;
+}
+
GHOST_Wintab *GHOST_WindowWin32::getWintab() const
{
return m_wintab;