@class NSMapTable, CARInputDeviceTouchpad, _UIFocusLinearMovementDebugView, UIView, UIScrollView, NSString, NSSet, UIMoveEvent, _UIFocusRotaryIndicatorView, NSTimer, _UIFocusItemInfo, NSArray, _UIFocusMovementInfo, _UIFocusEffectsController, CADisplayLink, _UIFocusFastScrollingRecognizer; @protocol _UIFocusEventRecognizerDelegate; @interface _UIFocusEventRecognizer : NSObject { NSMapTable *_gestureRecognizers; _UIFocusRotaryIndicatorView *_rotaryIndicatorView; NSTimer *_showRotaryIndicatorAfterDelayTimer; double _panDeadBand; _UIFocusLinearMovementDebugView *_linearDebugView; struct CGPoint { double x; double y; } _touchBeganPoint; struct CGPoint { double x; double y; } _lastKnownTouchPoint; struct CGPoint { double x; double y; } _previousPoints[5]; int _numFrames; struct CGVector { double dx; double dy; } _progressAccumulator; struct CGVector { double dx; double dy; } _unlockedAccumulator; double _lastButtonPressTime; unsigned long long _failedContinuousMovementHeading; double _failedContinuousMovementTime; struct CGPoint { double x; double y; } _firstMomentumTouchPoint; struct CGPoint { double x; double y; } _lastMomentumTouchPoint; struct CGPoint { double x; double y; } _momentumVelocity; double _momentumFriction; unsigned long long _focusUpdateCountSinceLastContinuousMovementBegan; CADisplayLink *_momentumDisplayLink; NSTimer *_joystickModeExitTimer; NSTimer *_joystickModeRepeatTimer; double _previousJoystickFocusMovementTime; double _previousJoystickRegionEntryTime; unsigned long long _joystickRepeatingHeading; CADisplayLink *_joystickFocusDirectionDisplayLink; _UIFocusMovementInfo *_previousJoystickFocusMovementInfo; long long _joystickRepeatCount; UIScrollView *_lastScrolledScroll; double _lastEdgeScrollEdgeValue; unsigned long long _inputType; _UIFocusItemInfo *_cachedFocusItemInfo; CARInputDeviceTouchpad *_currentCarTouchpad; struct { unsigned char isEligibleToCrossSpeedBump : 1; unsigned char isContinuingTouchWithMomentum : 1; unsigned char isPerformingJoystickRollback : 1; unsigned char isJoystickInRepeatMode : 1; unsigned char isPendingJoystickRepeat : 1; unsigned char isFastScrolling : 1; unsigned char shouldApplyAcceleration : 1; unsigned char shouldSupressActiveIndirectMotionUpdates : 1; unsigned char startDeferingFocusOnTapHoldEnded : 1; } _flags; } @property (retain, nonatomic, getter=_moveEvent, setter=_setMoveEvent:) UIMoveEvent *moveEvent; @property (readonly, nonatomic, getter=_motionEffectsController) _UIFocusEffectsController *motionEffectsController; @property (readonly, nonatomic, getter=_fastScrollingRecognizer) _UIFocusFastScrollingRecognizer *fastScrollingRecognizer; @property (readonly, weak, nonatomic) UIView *owningView; @property (nonatomic, getter=isEnabled) BOOL enabled; @property (readonly, nonatomic) NSArray *keyCommands; @property (weak, nonatomic) id<_UIFocusEventRecognizerDelegate> delegate; @property (readonly, nonatomic) NSSet *gesturesForFailureRequirements; @property (readonly) unsigned long long hash; @property (readonly) Class superclass; @property (readonly, copy) NSString *description; @property (readonly, copy) NSString *debugDescription; + (BOOL)_canSupportFastScrolling; - (void)_gestureRecognizerFailed:(id)a0; - (id)init; - (void)_focusBehaviorDidChange:(id)a0; - (void)reset; - (void)dealloc; - (BOOL)_moveWithEvent:(id)a0; - (BOOL)gestureRecognizerShouldBegin:(id)a0; - (id)currentFocusBehavior; - (void)_handlePanGesture:(id)a0; - (void).cxx_destruct; - (void)_cancelAllGestureRecognizers; - (void)_focusSystemEnabledStateDidChange:(id)a0; - (BOOL)gestureRecognizer:(id)a0 shouldRequireFailureOfGestureRecognizer:(id)a1; - (BOOL)gestureRecognizer:(id)a0 shouldRecognizeSimultaneouslyWithGestureRecognizer:(id)a1; - (BOOL)_attemptRotaryFocusMovementWithLinearHeading:(unsigned long long)a0 directionalHeading:(unsigned long long)a1 focusMovementAxis:(long long)a2 focusSystem:(id)a3 acceleratedVelocity:(struct CGPoint { double x0; double x1; })a4 studyLogData:(id)a5; - (void)_cancelShowRotaryIndicatorTimer; - (void)_panGestureEnd:(id)a0; - (void)_stopMomentumAndPerformRollback; - (id)gestureForName:(unsigned long long)a0; - (struct CGVector { double x0; double x1; })_accelerationFactorForCurrentVelocity:(struct CGPoint { double x0; double x1; })a0 alpha:(double)a1 isRotaryGesture:(BOOL)a2 isFocusInKeyboard:(BOOL)a3 remoteTouchSurfaceType:(unsigned long long)a4; - (struct CGPoint { double x0; double x1; })_applyAxisLockingForNormalizedPoint:(struct CGPoint { double x0; double x1; })a0 toDelta:(struct CGPoint { double x0; double x1; })a1; - (struct CGPoint { double x0; double x1; })_applyButtonMaskTimeToValue:(struct CGPoint { double x0; double x1; })a0 remoteTouchSurfaceType:(unsigned long long)a1; - (struct CGPoint { double x0; double x1; })_applyHorizontalFlipForFocusItemInfo:(id)a0 toDelta:(struct CGPoint { double x0; double x1; })a1; - (struct CGPoint { double x0; double x1; })_applyPanDeadbandToValue:(struct CGPoint { double x0; double x1; })a0 startPoint:(struct CGPoint { double x0; double x1; })a1 currentPoint:(struct CGPoint { double x0; double x1; })a2 remoteTouchSurfaceType:(unsigned long long)a3; - (BOOL)_attemptPanFocusMovementWithHeading:(unsigned long long)a0 acceleratedVelocity:(struct CGPoint { double x0; double x1; })a1 focusSystem:(id)a2 studyLogData:(id)a3; - (BOOL)_attemptToRecognizeContinuousMovementRequest:(id)a0; - (void)_beginMomentumImmediatelyWithVelocity:(struct CGPoint { double x0; double x1; })a0 friction:(double)a1; - (BOOL)_buttonMaskTimeHasExpired; - (struct CGPoint { double x0; double x1; })_calculateDeltaForNormalizedPoint:(struct CGPoint { double x0; double x1; })a0 studyLogData:(id)a1; - (unsigned long long)_calculateDirectionalHeadingForAccumulator:(struct CGVector { double x0; double x1; })a0 studyLogData:(id)a1; - (unsigned long long)_calculateLinearHeadingForAccumulator:(struct CGVector { double x0; double x1; })a0 studyLogData:(id)a1; - (BOOL)_canMoveFocusWithRotaryInputInFocusContext:(id)a0; - (void)_cleanupPanMomentumWithAccumulator:(struct CGVector { double x0; double x1; })a0 movementSuccess:(BOOL)a1; - (void)_continueTouchWithMomentum; - (void)_continuousMovementFailedWithPrimaryHeading:(unsigned long long)a0; - (void)_continuousMovementSucceededWithDirectionalHeading:(unsigned long long)a0; - (id)_createMovementInfoForHeading:(unsigned long long)a0 groupFilter:(long long)a1 acceleratedVelocity:(struct CGPoint { double x0; double x1; })a2; - (id)_createPanMovementRequestWithFocusSystem:(id)a0; - (id)_createRotaryMovementRequestWithFocusSystem:(id)a0; - (id)_createStudyLogDataForPanNormalizedPoint:(struct CGPoint { double x0; double x1; })a0 reportedVelocity:(struct CGPoint { double x0; double x1; })a1; - (id)_createStudyLogDataForRotaryDistance:(double)a0 delta:(double)a1 reportedVelocity:(double)a2; - (BOOL)_didRecognizeFocusMovementRequest:(id)a0; - (void)_exitJoystickModeForReal:(id)a0; - (void)_focusDidUpdate:(id)a0; - (id)_focusMovementForJoystickPosition:(struct CGPoint { double x0; double x1; })a0 usingMinimumRadius:(double)a1 focusMovementStyle:(long long)a2; - (id)_focusMovementSystem; - (id)_focusSystemSceneComponent; - (id)_globalCoordinateSpace; - (void)_handleArrowButtonGesture:(id)a0; - (void)_handleJoystickGesture:(id)a0; - (void)_handleJoystickRepeatMode:(id)a0; - (void)_handleJoystickTiltMode:(id)a0; - (void)_handleLinearDebugOverlayGesture:(id)a0; - (void)_handlePageButtonGesture:(id)a0; - (void)_handleRotaryBegin:(id)a0; - (void)_handleRotaryCancelled:(id)a0; - (void)_handleRotaryEnd:(id)a0; - (void)_handleRotaryGesture:(id)a0; - (void)_handleSelectGesture:(id)a0; - (void)_handleSelectObserverGesture:(id)a0; - (void)_handleTabulatorGesture:(id)a0; - (void)_handleTapGesture:(id)a0; - (BOOL)_hasFailedMovementHeadingExpired; - (unsigned long long)_headingForJoystickPosition:(struct CGPoint { double x0; double x1; })a0 usingMinimumRadius:(double)a1; - (BOOL)_hideLinearDebugOverlayIfNecessary:(BOOL)a0; - (void)_hideRotaryIndicator; - (BOOL)_joystickAttemptFocusMovementWithRequest:(id)a0; - (void)_joystickDisplayLinkHeartbeat:(id)a0; - (BOOL)_joystickFocusMovement:(id)a0 shouldBeConsideredEqualToFocusMovement:(id)a1; - (void)_joystickGestureBegan:(id)a0; - (void)_joystickGestureEnded:(id)a0; - (void)_joystickGestureUpdated:(id)a0; - (void)_joystickPerformRepeat:(id)a0; - (double)_joystickRepeatDurationForTimeInMovementZone:(double)a0; - (struct CGVector { double x0; double x1; })_joystickVelocityForHeading:(unsigned long long)a0; - (unsigned long long)_momentumFocusHeadingForAccumulator:(struct CGVector { double x0; double x1; })a0; - (void)_momentumHeartbeat:(id)a0; - (struct CGSize { double x0; double x1; })_momentumReferenceSize; - (BOOL)_moveInDirection:(unsigned long long)a0 groupFilter:(long long)a1; - (BOOL)_moveInDirection:(unsigned long long)a0 groupFilter:(long long)a1 withEvaluator:(id /* block */)a2; - (BOOL)_moveInDirection:(unsigned long long)a0 groupFilter:(long long)a1 withSearchInfo:(id)a2; - (void)_panGestureCancelled:(id)a0; - (void)_panGestureStart:(id)a0; - (struct CGPoint { double x0; double x1; })_pointForLinearValue:(double)a0 axis:(unsigned long long)a1; - (void)_recordMomentumForPoint:(struct CGPoint { double x0; double x1; })a0 reportedVelocity:(struct CGPoint { double x0; double x1; })a1; - (void)_resetCachedFocusItemInfo; - (void)_resetContinuousMovementState; - (void)_resetFailedMovementHeading; - (void)_resetJoystick; - (void)_resetMomentum; - (void)_resetMotionEffects; - (void)_resetPanDeadband; - (void)_resetProgressAccumulator; - (void)_resetProgressAccumulatorWithHeading:(unsigned long long)a0; - (id)_retrieveCachedFocusItemInfo; - (void)_sendGestureBeginNotification; - (void)_sendMomentumEndNotificationsAndAnimateRollback:(BOOL)a0; - (BOOL)_shouldAcceptInputType:(unsigned long long)a0; - (BOOL)_shouldPerformFocusUpdateWithCurrentMomentumStatus; - (void)_showLinearDebugOverlay:(BOOL)a0; - (void)_showRotaryIndicator; - (void)_showRotaryIndicatorAfterDelay; - (void)_timerFiredForShowRotaryIndicator:(id)a0; - (int)_touchRegionForDigitizerLocation:(struct CGPoint { double x0; double x1; })a0; - (struct CGSize { double x0; double x1; })_touchSensitivityForItem:(id)a0 remoteTouchSurfaceType:(unsigned long long)a1; - (void)_uiktest_handlePanGesture:(id)a0; - (id)_uiktest_panGestureRecognizer; - (void)_uiktest_setPanGestureRecognizer:(id)a0; - (void)_updateAccumulatorsWithScaledDelta:(struct CGPoint { double x0; double x1; })a0 unlockedDelta:(struct CGPoint { double x0; double x1; })a1 studyLogData:(id)a2; - (void)_updateFailedContinuousMovementHeading:(unsigned long long)a0; - (void)_updateGestureRecognizersForcingRemoval:(BOOL)a0; - (void)_updateGestureRecognizersForcingRemoval:(BOOL)a0 studyLogData:(id)a1; - (void)_updateMotionEffectsControllerWithProgressAccumulator:(struct CGVector { double x0; double x1; })a0 unlockedAccumulator:(struct CGVector { double x0; double x1; })a1; - (void)_updatePanLocation:(struct CGPoint { double x0; double x1; })a0 reportedVelocity:(struct CGPoint { double x0; double x1; })a1 remoteTouchSurfaceType:(unsigned long long)a2; - (void)_updateRotaryDistance:(double)a0 delta:(double)a1 reportedVelocity:(double)a2 remoteTouchSurfaceType:(unsigned long long)a3 focusMovementAxis:(long long)a4; - (void)_updateRotaryIndicatorView; - (BOOL)focusEnginePanGestureRecognizerShouldRecognizeImmediately:(id)a0; - (id)initWithOwningView:(id)a0; - (void)rotaryGestureRecognizerBeganClassifyingMovement:(id)a0; - (void)rotaryGestureRecognizerFailedClassifyingMovement:(id)a0; - (void)setGesture:(id)a0 forName:(unsigned long long)a1; @end