--- old/src/macosx/native/sun/awt/AWTSurfaceLayers.m 2012-08-14 18:06:05.895358635 +0400 +++ new/src/macosx/native/sun/awt/AWTSurfaceLayers.m 2012-08-14 18:06:05.683358631 +0400 @@ -78,11 +78,10 @@ // translates values to the coordinate system of the "root" layer CGFloat newY = windowLayer.bounds.size.height - rect.origin.y - rect.size.height; + CGRect newRect = CGRectMake(rect.origin.x, newY, rect.size.width, rect.size.height); - // REMIND: why do we need to inverse position? - CGRect newRect = CGRectMake(-rect.origin.x, -newY, rect.size.width, rect.size.height); + layer.frame = newRect; - layer.bounds = newRect; [AWTSurfaceLayers repaintLayersRecursively:layer]; }