 	}
 	
 	/**
-	 *  @private
+	 *  Called when the user releases the TitleWindow.
+	 * 
+	 *  @langversion 3.0
+	 *  @playerversion Flash 10
+	 *  @playerversion AIR 1.5
+	 *  @productversion Flex 4
 	 */
 	protected function moveArea_mouseUpHandler(event:Event):void
 	{

	//--------------------------------------------------------------------------
	
	//----------------------------------
	//  moveArea Handlers
	//---------------------------------- 
	
    /**
     *  @private
	 *  Handle mouseDown events on the moveArea
     */
    protected function moveArea_mouseDownHandler(event:MouseEvent):void
    {
		// Only allow dragging of pop-upped windows
        if (enabled && isPopUp)
		{
			// Dispatch cancelable "windowMoveStart" event
			startBounds = new Rectangle(x, y, width, height);
			var startEvent:TitleWindowBoundsEvent =
				new TitleWindowBoundsEvent(TitleWindowBoundsEvent.WINDOW_MOVE_START,
										   false, true, startBounds, null);
			dispatchEvent(startEvent);
			
			// Start dragging if the move isn't canceled
			if(!(startEvent.isDefaultPrevented()))
			{
				// Calculate the mouse's offset in the window
				// TODO (klin): Investigate globalToLocal method
				offsetX = event.stageX - x;
				offsetY = event.stageY - y;
				
				var sbRoot:DisplayObject = systemManager.getSandboxRoot();
				
				sbRoot.addEventListener(
					MouseEvent.MOUSE_MOVE, moveArea_mouseMoveHandler, true);
				sbRoot.addEventListener(
					MouseEvent.MOUSE_UP, moveArea_mouseUpHandler, true);
				sbRoot.addEventListener(
					SandboxMouseEvent.MOUSE_UP_SOMEWHERE, moveArea_mouseUpHandler);
				
				// add the mouse shield so we can drag over untrusted applications.
				systemManager.deployMouseShields(true);
			}
			else
			{
				startBounds = null;
			}
		}
    }
	
	/**
	 *  @private
	 */
	protected function moveArea_mouseMoveHandler(event:MouseEvent):void
	{
		// Dispatch cancelable "windowMoving" event with before and after bounds.
		var beforeBounds:Rectangle = new Rectangle(x, y, width, height);
		var afterBounds:Rectangle = 

	override protected function getCurrentSkinState():String
	{
		// In focus window is the active window.
		if (enabled && isPopUp && !active)
		{
			var state:String = "inactive";
			
			if (controlBarGroup)
			{
