         {
             // if the user clicks outside the cell but we can't save the data,
             // say, because the data was invalid, then cancel the save.
-            if (!dataGrid.endItemEditorSession())
+            if (!inEndEdit && !dataGrid.endItemEditorSession())
             {
                 dataGrid.endItemEditorSession(true);
             }

        {
            // If we can't save the data, say, because the data was invalid, 
            // then cancel the save.
            if (!dataGrid.endItemEditorSession())
            {
                dataGrid.endItemEditorSession(true);
            }

     *  
     */
    private function endEdit():Boolean
    {        
        // Focus is inside an item renderer
        if (!itemEditorInstance && editedItemRenderer)
        {
