From 09a604561d39db04330da1c1833be3b6fa1329b6 Mon Sep 17 00:00:00 2001 From: Jens Verwiebe Date: Wed, 20 Mar 2013 16:51:50 +0000 Subject: OSX/tablet: fix a longstanding bug with certain devices and a cornercases --- intern/ghost/intern/GHOST_SystemCocoa.mm | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'intern') 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; -- cgit v1.2.3