         
         var backgroundColor:uint;
         var drawBackground:Boolean = true;
-        if (selected)
+        if (itemRendererInteractionStateDetector.down)
+            backgroundColor = getStyle("downColor");
+        else if (selected)
             backgroundColor = getStyle("selectionColor");
-        else if (hovered)
+        else if (itemRendererInteractionStateDetector.hovered)
             backgroundColor = getStyle("rollOverColor");
         else
         {

        labelDisplay.setLayoutBoundsPosition(3, 7);
    }
    
    /**
     *  @private
     */
    override public function styleChanged(styleName:String):void
    {
        var allStyles:Boolean = !styleName || styleName == "styleName";
        
        super.styleChanged(styleName);
        
        if (allStyles || styleName == "inputMode")
        {
            addHandlers();
        }
    }
    
    //--------------------------------------------------------------------------
    //
    //  Event handling

    
    /**
     *  @private
     *  Helper class to help determine when we are in the hovered or down state
     */
    private var itemRendererInteractionStateDetector:ItemRendererInteractionStateDetector;
    
    //--------------------------------------------------------------------------
    //
