Ok I managed to find a workaround and got it working. What I did was monkeypatch spark.components.gridClasses/GridColumnHeaderView and then changed the code to
public static var dpiScaleFactor:Number = 1; public function containsMouseEvent(event:MouseEvent):Boolean { const eventStageX:Number = event.stageX; const eventStageY:Number = event.stageY; const origin:Point = localToGlobal(zeroPoint); origin.x += horizontalScrollPosition; if (layoutDirection == LayoutDirection.RTL) origin.x -= width; origin.y += verticalScrollPosition; return (eventStageX >= origin.x) && (eventStageY >= origin.y) && (eventStageX < (origin.x + (width*dpiScaleFactor))) && (eventStageY < (origin.y + height)); } and in my application on preinitialize I do GridColumnHeaderView.dpiScaleFactor = (runtimeDPI/applicationDPI); This is working fine for me on the device now and fixes the issue, but I'm sure someone with a deeper knowledge of the SDK can take a look for a better fix? On Fri, Jun 2, 2017 at 5:25 PM, Fréderic Cox <coxfrede...@gmail.com> wrote: > bilbosax wrote > > So it is happening straight down the middle of the iPad. SURELY, there > > is nothing that I am doing to cause this, is there? > > Thanks for this info, it is very valuable. It got me to the cause of the > problem. The problem is in spark.components.GridColumnHeaderGroup, in > there > is a function mouseEventHeaderView which is called to determine which > column > was touched. In there a function containsMouseEvent is called on the > spark.components.gridClasses/GridColumnHeaderView. In that function we > find > the following code: > > public function containsMouseEvent(event:MouseEvent):Boolean > { > const eventStageX:Number = event.stageX; > const eventStageY:Number = event.stageY; > const origin:Point = localToGlobal(zeroPoint); > > origin.x += horizontalScrollPosition; > if (layoutDirection == LayoutDirection.RTL) > origin.x -= width; > > origin.y += verticalScrollPosition; > > return (eventStageX >= origin.x) && (eventStageY >= origin.y) && > (eventStageX < (origin.x + width)) && (eventStageY < (origin.y > + > height)); > } > > The problem is that width is half the size as it should be. Now I am trying > to find the cause why this is an incorrect value and hope I find a fix. Any > help appreciated! > > > > > > -- > View this message in context: http://apache-flex-users. > 2333346.n4.nabble.com/Datagrid-Sorting-Problem-on- > Mobile-tp13844p15280.html > Sent from the Apache Flex Users mailing list archive at Nabble.com. >