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
path: root/intern
diff options
context:
space:
mode:
authorJens Verwiebe <info@jensverwiebe.de>2013-03-20 20:51:50 +0400
committerJens Verwiebe <info@jensverwiebe.de>2013-03-20 20:51:50 +0400
commit09a604561d39db04330da1c1833be3b6fa1329b6 (patch)
treef724af8f8eac85d704d78ff1c5aa7fd9229af51d /intern
parentd6ad96e2a9348ba64df15bf41754f00f6f47b880 (diff)
OSX/tablet: fix a longstanding bug with certain devices and a cornercases
Diffstat (limited to 'intern')
-rw-r--r--intern/ghost/intern/GHOST_SystemCocoa.mm6
1 files changed, 6 insertions, 0 deletions
diff --git a/intern/ghost/intern/GHOST_SystemCocoa.mm b/intern/ghost/intern/GHOST_SystemCocoa.mm
index 37fee1570e9..6fcd0d91779 100644
--- a/intern/ghost/intern/GHOST_SystemCocoa.mm
+++ b/intern/ghost/intern/GHOST_SystemCocoa.mm
@@ -1404,6 +1404,12 @@ GHOST_TSuccess GHOST_SystemCocoa::handleTabletEvent(void *eventPtr, short eventT
switch (eventType) {
case NSTabletPoint:
+ // workaround 2 cornercases:
+ // 1. if [event isEnteringProximity] was not triggered since program-start
+ // 2. device is not sending [event pointingDeviceType], due no eraser
+ if (ct.Active == GHOST_kTabletModeNone)
+ ct.Active = GHOST_kTabletModeStylus;
+
ct.Pressure = sqrtf(powf([event pressure], 5 )); // experimental: change sensivity curve
ct.Xtilt = [event tilt].x;
ct.Ytilt = [event tilt].y;