         // if we are scrolling (even if we just started scrolling)
         if (isScrolling)
         {
+			if (scroller.textSelectionAutoScrollEnabled)
+			{
+				scroller.setUpTextSelectionAutoScroll();
+				return;
+			}
+
             // calculate the delta
             var dx:Number = event.stageX - scrollGestureAnchorPoint.x;
             var dy:Number = event.stageY - scrollGestureAnchorPoint.y;

        // If we weren't already scrolling, then let's not start scrolling now
        if (!isScrolling)
            return;
        
        if (dragTimer)
        {
            if (dragScrollPending)

import flash.events.Event;
import flash.events.KeyboardEvent;
import flash.events.MouseEvent;
import flash.events.TimerEvent;
import flash.geom.Point;
import flash.system.Capabilities;
import flash.text.TextField;
import flash.ui.Keyboard;
import flash.utils.Timer;

import mx.core.IInvalidating;
import mx.core.IVisualElement;
