      */
     private var inTouchInteraction:Boolean = false;
     
+    /**
+     *  @private
+     *  Keeps track of whether the Scroller is listening for softKeyboardEvents 
+     */    
+    private var softKeyboardEventHandlersAdded:Boolean = false;
+    
+    /**
+     *  @private 
+     */ 
+    private var lastFocusedElement:IVisualElement;
+    
     //--------------------------------------------------------------------------
     //
     //  Properties
     //
     //--------------------------------------------------------------------------
+    
+    //----------------------------------
+    //  ensureFocusedElementIsVisible
+    //---------------------------------- 
+    
+    /**
+     *  A value of true means when a descendant element gains focus, the Scroller will scroll
+     *  that element into view. 
+     * 
+     *  @default true
+     */ 
+    public var ensureFocusedElementIsVisible:Boolean = true;
     
     //----------------------------------
     //  horizontalScrollBar

				
				if (newHSP < minTextSelectionHScrollPos)
					newHSP = minTextSelectionHScrollPos;
			}
		}
		
		if (scrollerLayout.canScrollVertically)

        super();
        hasFocusableChildren = true;
        focusEnabled = false;
        
        addEventListener(Event.ADDED_TO_STAGE, addedToStageHandler);
        addEventListener(Event.REMOVED_FROM_STAGE, removedFromStageHandler);
    }
    
    //--------------------------------------------------------------------------
