 		
 		systemManager.deployMouseShields(false);
 		
-		// Dispatch "windowMoveEnd" event with the starting bounds and current bounds.
-		var endEvent:TitleWindowBoundsEvent =
-			new TitleWindowBoundsEvent(TitleWindowBoundsEvent.WINDOW_MOVE_END,
-									   false, false, startBounds,
-									   new Rectangle(x, y, width, height));
-		dispatchEvent(endEvent);
+		// Check to see that a move actually occurred and that the
+		// user did not just click on the moveArea
+		if (startBounds)
+		{
+			// Dispatch "windowMoveEnd" event with the starting bounds and current bounds.
+			var endEvent:TitleWindowBoundsEvent =
+				new TitleWindowBoundsEvent(TitleWindowBoundsEvent.WINDOW_MOVE_END,
+										   false, false, startBounds,
+										   new Rectangle(x, y, width, height));
+			dispatchEvent(endEvent);
+			startBounds = null;
+		}
 		
 		offsetX = NaN;
 		offsetY = NaN;
-		startBounds = null;
-	}
-
-	//----------------------------------
-	//  closeButton Handler
-	//---------------------------------- 
-	
-    /**
-     *  @private
-	 *  Dispatches the "close" event when the closeButton
-	 *  is clicked.
-     */
-    protected function closeButton_clickHandler(event:MouseEvent):void
-    {
-        dispatchEvent(new CloseEvent(CloseEvent.CLOSE));
-    }
-    
+	}
+
 	//----------------------------------
 	//  Active Window Handlers and helper methods
 	//---------------------------------- 

[Event(name="close", type="mx.events.CloseEvent")]

/**
 *  Dispatched when the user presses the moveArea.
 *
 *  @eventType spark.events.TitleWindowBoundsEvent.WINDOW_MOVE_START
 * 

[Event(name="windowMove", type="spark.events.TitleWindowBoundsEvent")]

/**
 *  Dispatched when the user releases the moveArea after
 *  dragging.
 *
 *  @eventType spark.events.TitleWindowBoundsEvent.WINDOW_MOVE_END
 * 
