     {
         invalidateViewMetricsAndPadding();
         invalidateDisplayList();
+        
+        var dispatchWidthChangeEvent:Boolean = (bounds.width != stage.stageWidth);
+        var dispatchHeightChangeEvent:Boolean = (bounds.height != stage.stageHeight);
+        
         bounds.x = stage.x;
         bounds.y = stage.y;
         bounds.width = stage.stageWidth;
         bounds.height = stage.stageHeight;
+        
         validateNow();
         var e:FlexNativeWindowBoundsEvent =
         	new FlexNativeWindowBoundsEvent(FlexNativeWindowBoundsEvent.WINDOW_RESIZE, event.bubbles, event.cancelable,
         			event.beforeBounds, event.afterBounds);
         dispatchEvent(e);
-
+   
+        if (dispatchWidthChangeEvent)
+    		dispatchEvent(new Event("widthChanged"));
+    	if (dispatchHeightChangeEvent)
+    		dispatchEvent(new Event("heightChanged"));
     }
 
  	/**

				if (getStyle("hideEffect"))
    			{
             		addEventListener("effectEnd", hideEffectEndHandler);
					dispatchEvent(e);
				}
				else
				{
					dispatchEvent(e);
					_nativeWindow.visible = value;
				}
			}
		}

        invalidateProperties();
        invalidateSize();
        invalidateViewMetricsAndPadding();
        
	    dispatchEvent(new Event("widthChanged"));
	    // also dispatched in the resize handler
    }

    //--------------------------------------------------------------------------
