diff options
author | Jeff Brown <jeffbrown@google.com> | 2011-02-15 19:13:20 -0800 |
---|---|---|
committer | Jeff Brown <jeffbrown@google.com> | 2011-02-15 19:14:35 -0800 |
commit | c3451d4a4479b6244bd6d1dadf289a8d44bdcca2 (patch) | |
tree | 3dd498f926ebd98eb205d31e028b6f991c5c6451 /services/input/InputReader.cpp | |
parent | cfe8903441fa3fc13c774587fe96df8206d4ba7d (diff) | |
download | frameworks_base-c3451d4a4479b6244bd6d1dadf289a8d44bdcca2.zip frameworks_base-c3451d4a4479b6244bd6d1dadf289a8d44bdcca2.tar.gz frameworks_base-c3451d4a4479b6244bd6d1dadf289a8d44bdcca2.tar.bz2 |
Scale major axis when finger is oriented.
Change-Id: I281ec25478b4ceffa6ed5a41cb44a7e81d18d8dc
Diffstat (limited to 'services/input/InputReader.cpp')
-rw-r--r-- | services/input/InputReader.cpp | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/services/input/InputReader.cpp b/services/input/InputReader.cpp index a4d5f35..05f40ba 100644 --- a/services/input/InputReader.cpp +++ b/services/input/InputReader.cpp @@ -2641,9 +2641,11 @@ void TouchInputMapper::dispatchTouch(nsecs_t when, uint32_t policyFlags, int32_t c2 = signExtendNybble(in.orientation & 0x0f); if (c1 != 0 || c2 != 0) { orientation = atan2f(c1, c2) * 0.5f; - float minorAxisScale = (16.0f - pythag(c1, c2)) / 16.0f; - toolMinor *= minorAxisScale; - touchMinor *= minorAxisScale; + float scale = 1.0f + pythag(c1, c2) / 16.0f; + touchMajor *= scale; + touchMinor /= scale; + toolMajor *= scale; + toolMinor /= scale; } else { orientation = 0; } |