public boolean checkForResizing( MotionEvent ev) { // FIXME this method should only return true / false. Make another method for // starting animation if (mState == State.DRAGGING) { return true; } final float yDIff = calculateDistance(ev); if (Math.abs(calculateXDistanse(ev)) > Math.abs(calculateDistance(ev))) { if (calculateXDistanse(ev) > 100) { type = LEFT; } else if (calculateXDistanse(ev) < -100) { type = RIGHT; } } else { CalendarManager manager = mCalendarView.getManager(); CalendarManager.State state = manager.getState(); if (Math.abs(yDIff) > mTouchSlop) { // FIXME this should happen only if dragging int right direction mState = State.DRAGGING; mDragStartY = ev.getY(); if (mProgressManager == null) { int weekOfMonth = manager.getWeekOfMonth(); if (state == CalendarManager.State.WEEK) { // always animate in month view manager.toggleView(); mCalendarView.populateLayout(); } mProgressManager = new ProgressManagerImpl( mCalendarView, weekOfMonth, state == CalendarManager.State.MONTH); } return true; } } return false; }