         super();
         
         useChromeColor = true;
-        
-        layoutMeasuredWidth = 20;
+
+		layoutMeasuredWidth = 20;
         thumbSkinClass = HScrollBarThumbSkin;
-        
-        // Depending on density set our measured height
+        var paddingBottom:int;
+        var paddingHorizontal:int;
+		
+		// Depending on density set our measured height
         switch (applicationDPI)
         {
-            case DPIClassification.DPI_320:
-            {
-                layoutMeasuredHeight = 12;   
-                break;
-            }
+			case DPIClassification.DPI_320:
+			{
+				layoutMeasuredHeight = 12;   
+                paddingBottom = HScrollBarThumbSkin.PADDING_BOTTOM_320DPI;
+                paddingHorizontal = HScrollBarThumbSkin.PADDING_HORIZONTAL_320DPI;
+				break;
+			}
             case DPIClassification.DPI_240:
             {
                 layoutMeasuredHeight = 9;   
+                paddingBottom = HScrollBarThumbSkin.PADDING_BOTTOM_240DPI;
+                paddingHorizontal = HScrollBarThumbSkin.PADDING_HORIZONTAL_240DPI;
                 break;
             }
             default:
             {
                 // default PPI160
                 layoutMeasuredHeight = 6;              
+                paddingBottom = HScrollBarThumbSkin.PADDING_BOTTOM_DEFAULTDPI;
+                paddingHorizontal = HScrollBarThumbSkin.PADDING_HORIZONTAL_DEFAULTDPI;
                 break;
             }
         }
+
+        // The minimum width is set such that, at it's smallest size, the thumb appears
+        // as wide as it is high.
+        minThumbWidth = (layoutMeasuredHeight - paddingBottom) + (paddingHorizontal * 2);   
     }
     
     //--------------------------------------------------------------------------

import spark.components.Button;
import spark.components.HScrollBar;
import spark.skins.mobile.supportClasses.MobileSkin;


/**
 *  ActionScript-based skin for HScrollBar components in mobile applications. 

        if (!thumb)
        {
            thumb = new Button();
            thumb.minWidth = minThumbWidth;
            thumb.setStyle("skinClass", thumbSkinClass);
            thumb.width = layoutMeasuredHeight;
            thumb.height = layoutMeasuredHeight;
