     {
         super.createChildren();
         
-        var topLevelApp:Application = FlexGlobals.topLevelApplication as Application;
-        
         // Only listen for softKeyboardEvents if the 
         // softKeyboardBehavior attribute in the application descriptor equals "none"
-        // Check that the top level app has resizeForSoftKeyboard == true
-        if (topLevelApp && topLevelApp.resizeForSoftKeyboard && Application.softKeyboardBehavior == "none")
+        if (Application.softKeyboardBehavior == "none")
         {
             addEventListener(SoftKeyboardEvent.SOFT_KEYBOARD_ACTIVATE, 
                 softKeyboardActivateHandler, false, 

                // We only care about focusThickness if we are positioning the whole element 
                if (!elementLocalBounds)
                {
                    var eltBounds:Rectangle = layout.getChildElementBounds(element);
                    var focusThickness:Number = 0;
                
                    if (element is IStyleClient)

            }
            
            // Scroll the element into view
            var delta:Point = layout.getScrollPositionDeltaToAnyElement(element, 
                elementLocalBounds, entireElementVisible);
            
            // Compute new delta if element is visible in the viewport bounds but is
            // clipped/obscured by the soft keyboard
            var topLevelApp:Application = FlexGlobals.topLevelApplication as Application;
            var eltBounds:Rectangle;
            var adjustForSoftKeyboard:Boolean = topLevelApp && 
                                                (!topLevelApp.resizeForSoftKeyboard) &&
                                                (stage.softKeyboardRect.height > 0);
            
            if (adjustForSoftKeyboard)
            {
                eltBounds = layout.getChildElementBounds(element);
                
                // Get keyboard y-position in the scroller's coordinates
                var keyboardTopLocal:Number = this.globalToLocal(stage.softKeyboardRect.topLeft).y;
                var scrollerHeight:Number = this.getLayoutBoundsHeight();
                
                // Does the keyboard clip the scroller?
                // Is the bottom of the element clipped or outside the visible
                // scroller height?
                if ((keyboardTopLocal >= 0) &&
                    (keyboardTopLocal < scrollerHeight) && 
                    ((eltBounds.bottom - viewport.verticalScrollPosition) > keyboardTopLocal))
                {
                    // Compute a new delta to accomodate the soft keyboard
                    var dy:Number = 0;
                    
                    if (eltBounds.height > keyboardTopLocal)
                    {
                        // Top justify if the element is taller than the 
                        // scroller's visible height
                        dy = eltBounds.top;
                    }
                    else
                    {
                        // Bottom justify the element
                        dy = eltBounds.bottom - keyboardTopLocal;
                    }
                    
                    var dx:Number = (delta) ? delta.x : 0;
                    
                    // account for current verticalScrollPosition
                    delta = new Point(dx, dy - viewport.verticalScrollPosition);
                }
            }
            
            if (delta)
            {
