     /**
      *  @private 
      */
-    private function labelDisplay_valueCommitHandler(event:FlexEvent):void 
-    {
+    override protected function labelDisplay_valueCommitHandler(event:FlexEvent):void 
+    {
+        super.labelDisplay_valueCommitHandler(event);
         labelDisplayShadow.text = labelDisplay.text;
-        invalidateSize();
-        invalidateDisplayList();
     }
     
 }

            
            // add shadow before display
            addChildAt(labelDisplayShadow, getChildIndex(labelDisplay));
            
            // update shadow when labelDisplay changes
            labelDisplay.addEventListener(FlexEvent.VALUE_COMMIT, labelDisplay_valueCommitHandler);
        }
    }
    

{

import flash.display.DisplayObject;
import flash.display.Graphics;

import mx.core.DeviceDensity;
import mx.core.mx_internal;
import mx.events.FlexEvent;

import spark.components.supportClasses.StyleableTextField;
import spark.skins.mobile.supportClasses.ButtonSkinBase;
