FLEX-35260 GridHeaderViewLayout.getHeaderIndexAt() (which calls GridDimensions.getColumnIndexAt()) used to return a valid headerIndex (when it was expected to return -1) for an x < 0. Fixed.
diff --git a/frameworks/projects/spark/src/spark/components/gridClasses/GridDimensions.as b/frameworks/projects/spark/src/spark/components/gridClasses/GridDimensions.as
index ec0a003..0c679db 100644
--- a/frameworks/projects/spark/src/spark/components/gridClasses/GridDimensions.as
+++ b/frameworks/projects/spark/src/spark/components/gridClasses/GridDimensions.as
@@ -1183,9 +1183,12 @@
      */
     public function getColumnIndexAt(x:Number, y:Number):int
     {
-        var cur:Number = x;
+        var current:Number = x;
         var i:int;
-        
+
+        if(current < 0)
+            return -1;
+
         for (i = 0; i < _columnCount; i++)
         {
             var temp:Number = _columnWidths[i];
@@ -1202,9 +1205,9 @@
             if (isNaN(temp))
                 temp = defaultColumnWidth;
             
-            cur -= temp + columnGap;
+            current -= temp + columnGap;
 
-            if (cur < 0)
+            if (current < 0)
                 return i;
         }