@@ -710,12 +710,14 @@ public class BarLineChartViewBase: ChartViewBase, BarLineScatterCandleBubbleChar
710710 else if ( recognizer. state == UIGestureRecognizerState . Changed)
711711 {
712712 let isZoomingOut = ( recognizer. scale < 1 )
713- let canZoomMoreX = isZoomingOut ? _viewPortHandler. canZoomOutMoreX : _viewPortHandler. canZoomInMoreX
714- let canZoomMoreY = isZoomingOut ? _viewPortHandler. canZoomOutMoreY : _viewPortHandler. canZoomInMoreY
713+ var canZoomMoreX = isZoomingOut ? _viewPortHandler. canZoomOutMoreX : _viewPortHandler. canZoomInMoreX
714+ var canZoomMoreY = isZoomingOut ? _viewPortHandler. canZoomOutMoreY : _viewPortHandler. canZoomInMoreY
715715
716- if ( _isScaling && canZoomMoreX && canZoomMoreY )
716+ if ( _isScaling)
717717 {
718- if ( _gestureScaleAxis == . Both || _gestureScaleAxis == . Y && _scaleYEnabled)
718+ canZoomMoreX = canZoomMoreX && _scaleXEnabled && ( _gestureScaleAxis == . Both || _gestureScaleAxis == . X) ;
719+ canZoomMoreY = canZoomMoreY && _scaleYEnabled && ( _gestureScaleAxis == . Both || _gestureScaleAxis == . Y) ;
720+ if canZoomMoreX || canZoomMoreY
719721 {
720722 var location = recognizer. locationInView ( self )
721723 location. x = location. x - _viewPortHandler. offsetLeft
@@ -729,8 +731,8 @@ public class BarLineChartViewBase: ChartViewBase, BarLineScatterCandleBubbleChar
729731 location. y = - ( _viewPortHandler. chartHeight - location. y - _viewPortHandler. offsetBottom)
730732 }
731733
732- let scaleX = ( _gestureScaleAxis == . Both || _gestureScaleAxis == . X ) && _scaleXEnabled ? recognizer. scale : 1.0
733- let scaleY = ( _gestureScaleAxis == . Both || _gestureScaleAxis == . Y ) && _scaleYEnabled ? recognizer. scale : 1.0
734+ let scaleX = canZoomMoreX ? recognizer. scale : 1.0
735+ let scaleY = canZoomMoreY ? recognizer. scale : 1.0
734736
735737 var matrix = CGAffineTransformMakeTranslation ( location. x, location. y)
736738 matrix = CGAffineTransformScale ( matrix, scaleX, scaleY)
0 commit comments