public void OnEndDrag(PointerEventData eventData) { CorrectingUtils.PointerEventCorrecting(ref eventData, -launcherModel.navigationBarHeight); if (!touchInfo.touchable) { return; } // Debug.Log ("OnEndDrag"); mLauncherController.Log(TAG, "OnEndDrag eventData.position:" + eventData.position); if (mIconDragController.IsIconDragMode() && eventData.pointerId == touchInfo.iconDragId) { mIconDragController.OnIconEndDrag(eventData, currentPage); // mLauncherController.Log (TAG, "1 eventData.pointerId:"+eventData.pointerId); touchInfo.iconDragId = -1; // return; } else if (eventData.pointerId == touchInfo.pageDragId) { // mLauncherController.Log (TAG, "2 eventData.pointerId:"+eventData.pointerId); // touchInfo.pageBeginDrag = false; // touchInfo.currentTouchPos = Vector2.zero; // EndSlide (eventData); } }
public void OnPointerUp(PointerEventData eventData) { CorrectingUtils.PointerEventCorrecting(ref eventData, -launcherModel.navigationBarHeight); if (!touchInfo.touchable) { return; } mLauncherController.Log(TAG, "OnPointerUp eventData.position:" + eventData.position); cancelSelected(); longClickUtils.OnPointerUp(eventData); // mLauncherController.Log (TAG, "OnPointerUp eventData.pointerId:"+eventData.pointerId+" touchInfo.pageDragId:"+touchInfo.pageDragId); if (mIconDragController.IsIconDragMode() && eventData.pointerId == touchInfo.iconDragId) { mIconDragController.OnIconPointerUp(eventData, gameObject); Invoke("OnIconRelease", LauncherController.ANIM_DURATION); } else if (eventData.pointerId == touchInfo.pageDragId) { mLauncherController.Log(TAG, "OnPointerUp touchInfo.isInterceptClick:" + touchInfo.isInterceptClick); // if (!touchInfo.isInterceptClick) { // return; // } float disX = Mathf.Abs(touchInfo.pointerDownX - eventData.position.x); float disY = Mathf.Abs(touchInfo.pointerDownY - eventData.position.y); // Debug.Log ("disX:"+disX+" disY:"+disY); mLauncherController.Log(TAG, "disX:" + disX + " disY:" + disY); if (disX >= moveBalance || disY >= moveBalance) { touchInfo.isInterceptClick = true; } else { touchInfo.isInterceptClick = false; } if (!touchInfo.isInterceptClick) { return; } DragPage(eventData); cancelPageDrag(); EndSlide(eventData); } }
public void OnLongClick(PointerEventData eventData) { CorrectingUtils.PointerEventCorrecting(ref eventData, -launcherModel.navigationBarHeight); int index = PointToIndex(eventData.position); App app = mLauncherController.appList [index]; if (app.isPlaceholder) { return; } cancelPageDrag(); mLauncherController.Log(TAG, "OnLongClick eventData.position:" + eventData.position); mIconDragController.OnIconLongClick(eventData, currentPage); touchInfo.iconDragId = eventData.pointerId; touchInfo.isInterceptClick = true; mLauncherController.CreateNewPageAndFill(); //create a new page // mLauncherController.Log (TAG, "OnLongClick pageSize:"+mLauncherController.pageController.pageSize+" appList size:"+mLauncherController.appList.Count+" pageList size:"+mLauncherController.pageList.Count); }
private void SetDraggedPosition(PointerEventData eventData) { if (dragOnSurfaces && eventData.pointerEnter != null && eventData.pointerEnter.transform as RectTransform != null) { m_DraggingPlanes[eventData.pointerId] = eventData.pointerEnter.transform as RectTransform; } RectTransform rt = m_DraggingIcons[eventData.pointerId].GetComponent <RectTransform>(); CorrectingUtils.PointerEventCorrecting(ref eventData, launcherModel.navigationBarHeight); Vector3 globalMousePos; if (RectTransformUtility.ScreenPointToWorldPointInRectangle(m_DraggingPlanes[eventData.pointerId], eventData.position - offset, eventData.pressEventCamera, out globalMousePos)) { rt.position = globalMousePos; rt.rotation = m_DraggingPlanes[eventData.pointerId].rotation; Vector3 pos3D = new Vector3(rt.anchoredPosition3D.x, rt.anchoredPosition3D.y, LauncherController.ICON_RISING_DISTANCE); rt.anchoredPosition3D = pos3D; Debug.Log("rt.position:" + rt.position); } }
//listener callback #region IPointerDownHandler implementation public void OnPointerDown(PointerEventData eventData) { mLauncherController.Log(TAG, "OnPointerDown"); CorrectingUtils.PointerEventCorrecting(ref eventData, -launcherModel.navigationBarHeight); if (!touchInfo.touchable) { mLauncherController.Log(TAG, "OnPointerDown !touchInfo.touchable"); return; } int index = PointToIndex(eventData.position); mLauncherController.Log(TAG, "OnPointerDown PointToIndex index:" + index); App app = mLauncherController.appList [index]; mLauncherController.Log(TAG, "OnPointerDown app:" + app.appName); if (!mIconDragController.IsIconDragMode()) { longClickUtils.OnPointerDown(eventData); touchInfo.pointerDownX = eventData.position.x; touchInfo.pointerDownY = eventData.position.y; if (!app.isPlaceholder) { mLauncherController.Log(TAG, "OnPointerDown showSelected"); showSelected(eventData); } } if (!touchInfo.pageBeginDrag) { // Debug.Log ("OnBeginDrag time:"+Time.time); mLauncherController.Log(TAG, "OnPointerDown:if (!touchInfo.pageBeginDrag) "); touchInfo.beginTime = Time.time; touchInfo.currentTouchPos = eventData.position; touchInfo.beginDragPos = eventData.position; touchInfo.pageBeginDrag = true; touchInfo.pageDragId = eventData.pointerId; } }
public void OnDrag(PointerEventData eventData) { CorrectingUtils.PointerEventCorrecting(ref eventData, -launcherModel.navigationBarHeight); if (!touchInfo.touchable) { return; } // mLauncherController.Log (TAG, "OnDrag eventData.position:"+eventData.position); if (mIconDragController.IsIconDragMode() && eventData.pointerId == touchInfo.iconDragId) { // mLauncherController.Log (TAG, "1 eventData.pointerId:"+eventData.pointerId); DragIcon(eventData); } else if (eventData.pointerId == touchInfo.pageDragId) { // mLauncherController.Log (TAG, "2 eventData.pointerId:"+eventData.pointerId); if (!touchInfo.isInterceptClick) { return; } DragPage(eventData); } }
public void OnBeginDrag(PointerEventData eventData) { CorrectingUtils.PointerEventCorrecting(ref eventData, -launcherModel.navigationBarHeight); if (!touchInfo.touchable) { mLauncherController.Log(TAG, "!touchInfo.touchable"); return; } // Debug.Log ("OnPointerDown:"+eventData.position); mLauncherController.Log(TAG, "OnBeginDrag eventData.position:" + eventData.position); if (mIconDragController.IsIconDragMode() && eventData.pointerId == touchInfo.iconDragId) { // mLauncherController.Log (TAG, "1 eventData.pointerId:"+eventData.pointerId); mIconDragController.OnIconBeginDrag(eventData, currentPage); // return; } else { // mLauncherController.Log (TAG, "2 eventData.pointerId:"+eventData.pointerId); float disX = Mathf.Abs(touchInfo.pointerDownX - eventData.position.x); float disY = Mathf.Abs(touchInfo.pointerDownY - eventData.position.y); // Debug.Log ("disX:"+disX+" disY:"+disY); mLauncherController.Log(TAG, "disX:" + disX + " disY:" + disY); if (disX >= moveBalance || disY >= moveBalance) { touchInfo.isInterceptClick = true; longClickUtils.cancel(); DragPage(eventData); } else { touchInfo.isInterceptClick = false; } } }