diff options
Diffstat (limited to 'services/input/InputReader.cpp')
| -rw-r--r-- | services/input/InputReader.cpp | 14 |
1 files changed, 11 insertions, 3 deletions
diff --git a/services/input/InputReader.cpp b/services/input/InputReader.cpp index 7a45de6fb35a..f6a8859a5e91 100644 --- a/services/input/InputReader.cpp +++ b/services/input/InputReader.cpp @@ -1183,10 +1183,18 @@ void CursorInputMapper::sync(nsecs_t when) { if (downChanged) { if (mAccumulator.btnMouse) { - mLocked.down = true; - mLocked.downTime = when; + if (!mLocked.down) { + mLocked.down = true; + mLocked.downTime = when; + } else { + downChanged = false; + } } else { - mLocked.down = false; + if (mLocked.down) { + mLocked.down = false; + } else { + downChanged = false; + } } } |