Home | History | Annotate | Download | only in inputflinger

Lines Matching refs:mPointerGesture

3868     mPointerGesture.reset();
4834 mPointerController->setSpots(mPointerGesture.currentGestureCoords,
4835 mPointerGesture.currentGestureIdToIndex,
4836 mPointerGesture.currentGestureIdBits);
4842 switch (mPointerGesture.currentGestureMode) {
4846 && (mPointerGesture.lastGestureMode == PointerGesture::SWIPE
4847 || mPointerGesture.lastGestureMode == PointerGesture::FREEFORM)) {
4879 bool down = mPointerGesture.currentGestureMode == PointerGesture::TAP
4880 || mPointerGesture.currentGestureMode == PointerGesture::TAP_DRAG
4881 || mPointerGesture.currentGestureMode == PointerGesture::BUTTON_CLICK_OR_DRAG
4882 || mPointerGesture.currentGestureMode == PointerGesture::PRESS
4883 || mPointerGesture.currentGestureMode == PointerGesture::SWIPE
4884 || mPointerGesture.currentGestureMode == PointerGesture::FREEFORM;
4887 && !mPointerGesture.lastGestureIdBits.isEmpty()
4888 && !mPointerGesture.currentGestureIdBits.isEmpty()) {
4889 BitSet32 movedGestureIdBits(mPointerGesture.currentGestureIdBits.value
4890 & mPointerGesture.lastGestureIdBits.value);
4891 moveNeeded = updateMovedPointers(mPointerGesture.currentGestureProperties,
4892 mPointerGesture.currentGestureCoords, mPointerGesture.currentGestureIdToIndex,
4893 mPointerGesture.lastGestureProperties,
4894 mPointerGesture.lastGestureCoords, mPointerGesture.lastGestureIdToIndex,
4902 BitSet32 dispatchedGestureIdBits(mPointerGesture.lastGestureIdBits);
4908 mPointerGesture.lastGestureProperties,
4909 mPointerGesture.lastGestureCoords, mPointerGesture.lastGestureIdToIndex,
4911 0, mPointerGesture.downTime);
4920 & ~mPointerGesture.currentGestureIdBits.value;
4928 mPointerGesture.lastGestureProperties,
4929 mPointerGesture.lastGestureCoords, mPointerGesture.lastGestureIdToIndex,
4931 0, 0, mPointerGesture.downTime);
4943 mPointerGesture.currentGestureProperties,
4944 mPointerGesture.currentGestureCoords, mPointerGesture.currentGestureIdToIndex,
4946 0, 0, mPointerGesture.downTime);
4951 BitSet32 downGestureIdBits(mPointerGesture.currentGestureIdBits.value
4958 mPointerGesture.downTime = when;
4963 mPointerGesture.currentGestureProperties,
4964 mPointerGesture.currentGestureCoords, mPointerGesture.currentGestureIdToIndex,
4966 0, 0, mPointerGesture.downTime);
4971 if (mPointerGesture.currentGestureMode == PointerGesture::HOVER) {
4975 mPointerGesture.currentGestureProperties,
4976 mPointerGesture.currentGestureCoords, mPointerGesture.currentGestureIdToIndex,
4977 mPointerGesture.currentGestureIdBits, -1,
4978 0, 0, mPointerGesture.downTime);
4980 && !mPointerGesture.lastGestureIdBits.isEmpty()) {
5002 0, 0, mPointerGesture.downTime);
5007 mPointerGesture.lastGestureMode = mPointerGesture.currentGestureMode;
5009 mPointerGesture.lastGestureIdBits.clear();
5011 mPointerGesture.lastGestureIdBits = mPointerGesture.currentGestureIdBits;
5012 for (BitSet32 idBits(mPointerGesture.currentGestureIdBits); !idBits.isEmpty(); ) {
5014 uint32_t index = mPointerGesture.currentGestureIdToIndex[id];
5015 mPointerGesture.lastGestureProperties[index].copyFrom(
5016 mPointerGesture.currentGestureProperties[index]);
5017 mPointerGesture.lastGestureCoords[index].copyFrom(
5018 mPointerGesture.currentGestureCoords[index]);
5019 mPointerGesture.lastGestureIdToIndex[id] = index;
5026 if (!mPointerGesture.lastGestureIdBits.isEmpty()) {
5032 mPointerGesture.lastGestureProperties,
5033 mPointerGesture.lastGestureCoords, mPointerGesture.lastGestureIdToIndex,
5034 mPointerGesture.lastGestureIdBits, -1,
5035 0, 0, mPointerGesture.downTime);
5039 mPointerGesture.reset();
5060 if (mPointerGesture.lastGestureMode == PointerGesture::TAP) {
5061 if (when <= mPointerGesture.tapUpTime + mConfig.pointerGestureTapDragInterval) {
5063 getContext()->requestTimeoutAtTime(mPointerGesture.tapUpTime
5072 mPointerGesture.activeGestureId = -1;
5073 mPointerGesture.currentGestureMode = PointerGesture::NEUTRAL;
5074 mPointerGesture.currentGestureIdBits.clear();
5099 mPointerGesture.velocityTracker.addMovement(when,
5105 if (mPointerGesture
5106 && mPointerGesture.lastGestureMode != PointerGesture::TAP
5107 && mPointerGesture.lastGestureMode != PointerGesture::TAP_DRAG) {
5108 mPointerGesture.resetTap();
5117 int32_t lastActiveTouchId = mPointerGesture.activeTouchId;
5122 activeTouchId = mPointerGesture.activeTouchId =
5124 mPointerGesture.firstTouchTime = when;
5129 activeTouchId = mPointerGesture.activeTouchId =
5132 activeTouchId = mPointerGesture.activeTouchId = -1;
5139 mPointerGesture.resetQuietTime();
5141 isQuietTime = when < mPointerGesture.quietTime + mConfig.pointerGestureQuietInterval;
5143 if ((mPointerGesture.lastGestureMode == PointerGesture::PRESS
5144 || mPointerGesture.lastGestureMode == PointerGesture::SWIPE
5145 || mPointerGesture.lastGestureMode == PointerGesture::FREEFORM)
5151 } else if (mPointerGesture.lastGestureMode == PointerGesture::BUTTON_CLICK_OR_DRAG
5160 mPointerGesture.quietTime = when;
5169 ALOGD("Gestures: QUIET for next %0.3fms", (mPointerGesture.quietTime
5172 if (mPointerGesture.lastGestureMode != PointerGesture::QUIET) {
5176 mPointerGesture.activeGestureId = -1;
5177 mPointerGesture.currentGestureMode = PointerGesture::QUIET;
5178 mPointerGesture.currentGestureIdBits.clear();
5200 if (mPointerGesture.lastGestureMode != PointerGesture::BUTTON_CLICK_OR_DRAG) {
5202 mPointerGesture.activeGestureId = 0;
5213 if (mPointerGesture.velocityTracker.getVelocity(id, &vx, &vy)) {
5222 mPointerGesture.activeTouchId = activeTouchId = bestId;
5253 mPointerGesture.currentGestureMode = PointerGesture::BUTTON_CLICK_OR_DRAG;
5254 mPointerGesture.currentGestureIdBits.clear();
5255 mPointerGesture.currentGestureIdBits.markBit(mPointerGesture.activeGestureId);
5256 mPointerGesture.currentGestureIdToIndex[mPointerGesture.activeGestureId] = 0;
5257 mPointerGesture.currentGestureProperties[0].clear();
5258 mPointerGesture.currentGestureProperties[0].id = mPointerGesture.activeGestureId;
5259 mPointerGesture.currentGestureProperties[0].toolType = AMOTION_EVENT_TOOL_TYPE_FINGER;
5260 mPointerGesture.currentGestureCoords[0].clear();
5261 mPointerGesture.currentGestureCoords[0].setAxisValue(AMOTION_EVENT_AXIS_X, x);
5262 mPointerGesture.currentGestureCoords[0].setAxisValue(AMOTION_EVENT_AXIS_Y, y);
5263 mPointerGesture.currentGestureCoords[0].setAxisValue(AMOTION_EVENT_AXIS_PRESSURE, 1.0f);
5266 if (mPointerGesture.lastGestureMode != PointerGesture::NEUTRAL) {
5273 if ((mPointerGesture.lastGestureMode == PointerGesture::HOVER
5274 || mPointerGesture.lastGestureMode == PointerGesture::TAP_DRAG)
5276 if (when <= mPointerGesture.tapDownTime + mConfig.pointerGestureTapInterval) {
5279 if (fabs(x - mPointerGesture.tapX) <= mConfig.pointerGestureTapSlop
5280 && fabs(y - mPointerGesture.tapY) <= mConfig.pointerGestureTapSlop) {
5285 mPointerGesture.tapUpTime = when;
5289 mPointerGesture.activeGestureId = 0;
5290 mPointerGesture.currentGestureMode = PointerGesture::TAP;
5291 mPointerGesture.currentGestureIdBits.clear();
5292 mPointerGesture.currentGestureIdBits.markBit(
5293 mPointerGesture.activeGestureId);
5294 mPointerGesture.currentGestureIdToIndex[
5295 mPointerGesture.activeGestureId] = 0;
5296 mPointerGesture.currentGestureProperties[0].clear();
5297 mPointerGesture.currentGestureProperties[0].id =
5298 mPointerGesture.activeGestureId;
5299 mPointerGesture.currentGestureProperties[0].toolType =
5301 mPointerGesture.currentGestureCoords[0].clear();
5302 mPointerGesture.currentGestureCoords[0].setAxisValue(
5303 AMOTION_EVENT_AXIS_X, mPointerGesture.tapX);
5304 mPointerGesture.currentGestureCoords[0].setAxisValue(
5305 AMOTION_EVENT_AXIS_Y, mPointerGesture.tapY);
5306 mPointerGesture.currentGestureCoords[0].setAxisValue(
5313 x - mPointerGesture.tapX,
5314 y - mPointerGesture.tapY);
5319 if (mPointerGesture.tapDownTime != LLONG_MIN) {
5321 (when - mPointerGesture.tapDownTime) * 0.000001f);
5335 mPointerGesture.activeGestureId = -1;
5336 mPointerGesture.currentGestureMode = PointerGesture::NEUTRAL;
5337 mPointerGesture.currentGestureIdBits.clear();
5346 mPointerGesture.currentGestureMode = PointerGesture::HOVER;
5347 if (mPointerGesture.lastGestureMode == PointerGesture::TAP) {
5348 if (when <= mPointerGesture.tapUpTime + mConfig.pointerGestureTapDragInterval) {
5351 if (fabs(x - mPointerGesture.tapX) <= mConfig.pointerGestureTapSlop
5352 && fabs(y - mPointerGesture.tapY) <= mConfig.pointerGestureTapSlop) {
5353 mPointerGesture.currentGestureMode = PointerGesture::TAP_DRAG;
5357 x - mPointerGesture.tapX,
5358 y - mPointerGesture.tapY);
5364 (when - mPointerGesture.tapUpTime) * 0.000001f);
5367 } else if (mPointerGesture.lastGestureMode == PointerGesture::TAP_DRAG) {
5368 mPointerGesture.currentGestureMode = PointerGesture::TAP_DRAG;
5392 if (mPointerGesture.currentGestureMode == PointerGesture::TAP_DRAG) {
5401 if (mPointerGesture.lastGestureMode != PointerGesture::HOVER) {
5404 mPointerGesture.activeGestureId = 0;
5411 mPointerGesture.currentGestureIdBits.clear();
5412 mPointerGesture.currentGestureIdBits.markBit(mPointerGesture.activeGestureId);
5413 mPointerGesture.currentGestureIdToIndex[mPointerGesture.activeGestureId] = 0;
5414 mPointerGesture.currentGestureProperties[0].clear();
5415 mPointerGesture.currentGestureProperties[0].id = mPointerGesture.activeGestureId;
5416 mPointerGesture.currentGestureProperties[0].toolType =
5418 mPointerGesture.currentGestureCoords[0].clear();
5419 mPointerGesture.currentGestureCoords[0].setAxisValue(AMOTION_EVENT_AXIS_X, x);
5420 mPointerGesture.currentGestureCoords[0].setAxisValue(AMOTION_EVENT_AXIS_Y, y);
5421 mPointerGesture.currentGestureCoords[0].setAxisValue(AMOTION_EVENT_AXIS_PRESSURE,
5425 mPointerGesture.resetTap();
5426 mPointerGesture.tapDownTime = when;
5427 mPointerGesture.tapX = x;
5428 mPointerGesture.tapY = y;
5446 bool settled = when >= mPointerGesture.firstTouchTime
5448 if (mPointerGesture.lastGestureMode != PointerGesture::PRESS
5449 && mPointerGesture.lastGestureMode != PointerGesture::SWIPE
5450 && mPointerGesture.lastGestureMode != PointerGesture::FREEFORM) {
5457 "settle time remaining %0.3fms", (mPointerGesture.firstTouchTime
5464 mPointerGesture.currentGestureMode = mPointerGesture.lastGestureMode;
5468 mPointerGesture.currentGestureMode = PointerGesture::PRESS;
5469 mPointerGesture.activeGestureId = 0;
5470 mPointerGesture.referenceIdBits.clear();
5476 "settle time remaining %0.3fms", (mPointerGesture.firstTouchTime
5481 &mPointerGesture.referenceTouchX,
5482 &mPointerGesture.referenceTouchY);
5483 mPointerController->getPosition(&mPointerGesture.referenceGestureX,
5484 &mPointerGesture.referenceGestureY);
5489 & ~mPointerGesture.referenceIdBits.value); !idBits.isEmpty(); ) {
5491 mPointerGesture.referenceDeltas[id].dx = 0;
5492 mPointerGesture.referenceDeltas[id].dy = 0;
5494 mPointerGesture.referenceIdBits = mCurrentCookedState.fingerIdBits;
5505 PointerGesture::Delta& delta = mPointerGesture.referenceDeltas[id];
5519 if (mPointerGesture.currentGestureMode == PointerGesture::PRESS) {
5522 for (BitSet32 idBits(mPointerGesture.referenceIdBits); !idBits.isEmpty(); ) {
5524 PointerGesture::Delta& delta = mPointerGesture.referenceDeltas[id];
5542 mPointerGesture.currentGestureMode = PointerGesture::FREEFORM;
5561 mPointerGesture.currentGestureMode = PointerGesture::FREEFORM;
5573 PointerGesture::Delta& delta1 = mPointerGesture.referenceDeltas[id1];
5574 PointerGesture::Delta& delta2 = mPointerGesture.referenceDeltas[id2];
5591 mPointerGesture.currentGestureMode = PointerGesture::SWIPE;
5603 mPointerGesture.currentGestureMode = PointerGesture::FREEFORM;
5609 } else if (mPointerGesture.currentGestureMode == PointerGesture::SWIPE) {
5618 mPointerGesture.currentGestureMode = PointerGesture::FREEFORM;
5624 if (mPointerGesture.currentGestureMode != PointerGesture::PRESS
5626 for (BitSet32 idBits(mPointerGesture.referenceIdBits); !idBits.isEmpty(); ) {
5628 PointerGesture::Delta& delta = mPointerGesture.referenceDeltas[id];
5633 mPointerGesture.referenceTouchX += commonDeltaX;
5634 mPointerGesture.referenceTouchY += commonDeltaY;
5642 mPointerGesture.referenceGestureX += commonDeltaX;
5643 mPointerGesture.referenceGestureY += commonDeltaY;
5647 if (mPointerGesture.currentGestureMode == PointerGesture::PRESS
5648 || mPointerGesture.currentGestureMode == PointerGesture::SWIPE) {
5653 activeTouchId, mPointerGesture.activeGestureId, currentFingerCount);
5655 ALOG_ASSERT(mPointerGesture.activeGestureId >= 0);
5657 mPointerGesture.currentGestureIdBits.clear();
5658 mPointerGesture.currentGestureIdBits.markBit(mPointerGesture.activeGestureId);
5659 mPointerGesture.currentGestureIdToIndex[mPointerGesture.activeGestureId] = 0;
5660 mPointerGesture.currentGestureProperties[0].clear();
5661 mPointerGesture.currentGestureProperties[0].id = mPointerGesture.activeGestureId;
5662 mPointerGesture.currentGestureProperties[0].toolType =
5664 mPointerGesture.currentGestureCoords[0].clear();
5665 mPointerGesture.currentGestureCoords[0].setAxisValue(AMOTION_EVENT_AXIS_X,
5666 mPointerGesture.referenceGestureX);
5667 mPointerGesture.currentGestureCoords[0].setAxisValue(AMOTION_EVENT_AXIS_Y,
5668 mPointerGesture.referenceGestureY);
5669 mPointerGesture.currentGestureCoords[0].setAxisValue(AMOTION_EVENT_AXIS_PRESSURE, 1.0f);
5670 } else if (mPointerGesture.currentGestureMode == PointerGesture::FREEFORM) {
5675 activeTouchId, mPointerGesture.activeGestureId, currentFingerCount);
5677 ALOG_ASSERT(mPointerGesture.activeGestureId >= 0);
5679 mPointerGesture.currentGestureIdBits.clear();
5683 if (mPointerGesture.lastGestureMode != PointerGesture::FREEFORM) {
5688 usedGestureIdBits.markBit(mPointerGesture.activeGestureId);
5689 mPointerGesture.freeformTouchToGestureIdMap[activeTouchId] =
5690 mPointerGesture.activeGestureId;
5692 mPointerGesture.activeGestureId = -1;
5699 usedGestureIdBits = mPointerGesture.lastGestureIdBits;
5707 uint32_t upGestureId = mPointerGesture.freeformTouchToGestureIdMap[upTouchId];
5708 if (upGestureId == uint32_t(mPointerGesture.activeGestureId)) {
5709 mPointerGesture.activeGestureId = -1;
5720 mPointerGesture.activeGestureId);
5729 mPointerGesture.freeformTouchToGestureIdMap[touchId] = gestureId;
5736 gestureId = mPointerGesture.freeformTouchToGestureIdMap[touchId];
5743 mPointerGesture.currentGestureIdBits.markBit(gestureId);
5744 mPointerGesture.currentGestureIdToIndex[gestureId] = i;
5748 float deltaX = (pointer.x - mPointerGesture.referenceTouchX)
5750 float deltaY = (pointer.y - mPointerGesture.referenceTouchY)
5754 mPointerGesture.currentGestureProperties[i].clear();
5755 mPointerGesture.currentGestureProperties[i].id = gestureId;
5756 mPointerGesture.currentGestureProperties[i].toolType =
5758 mPointerGesture.currentGestureCoords[i].clear();
5759 mPointerGesture.currentGestureCoords[i].setAxisValue(
5760 AMOTION_EVENT_AXIS_X, mPointerGesture.referenceGestureX + deltaX);
5761 mPointerGesture.currentGestureCoords[i].setAxisValue(
5762 AMOTION_EVENT_AXIS_Y, mPointerGesture.referenceGestureY + deltaY);
5763 mPointerGesture.currentGestureCoords[i].setAxisValue(
5767 if (mPointerGesture.activeGestureId < 0) {
5768 mPointerGesture.activeGestureId =
5769 mPointerGesture.currentGestureIdBits.firstMarkedBit();
5772 "activeGestureId=%d", mPointerGesture.activeGestureId);
5785 mPointerGesture.currentGestureMode, mPointerGesture.currentGestureIdBits.value,
5786 mPointerGesture.lastGestureMode, mPointerGesture.lastGestureIdBits.value);
5787 for (BitSet32 idBits = mPointerGesture.currentGestureIdBits; !idBits.isEmpty(); ) {
5789 uint32_t index = mPointerGesture.currentGestureIdToIndex[id];
5790 const PointerProperties& properties = mPointerGesture.currentGestureProperties[index];
5791 const PointerCoords& coords = mPointerGesture.currentGestureCoords[index];
5799 for (BitSet32 idBits = mPointerGesture.lastGestureIdBits; !idBits.isEmpty(); ) {
5801 uint32_t index = mPointerGesture.lastGestureIdToIndex[id];
5802 const PointerProperties& properties = mPointerGesture.lastGestureProperties[index];
5803 const PointerCoords& coords = mPointerGesture.lastGestureCoords[index];