diff --git a/Telegram/SourceFiles/statistics/chart_widget.cpp b/Telegram/SourceFiles/statistics/chart_widget.cpp index e2b4a3d6c..37cd28044 100644 --- a/Telegram/SourceFiles/statistics/chart_widget.cpp +++ b/Telegram/SourceFiles/statistics/chart_widget.cpp @@ -401,7 +401,9 @@ void ChartWidget::Footer::moveCenter( void ChartWidget::Footer::moveSide(bool left, float64 x) { const auto w = float64(st::statisticsChartFooterSideWidth); const auto mid = float64(st::statisticsChartFooterBetweenSide); - if (left) { + if (_width < (2 * w + mid)) { + return; + } else if (left) { const auto min = std::clamp(x, 0., _rightSide.min - w - mid); _leftSide = Limits{ .min = min, .max = min + w }; } else if (!left) { diff --git a/Telegram/SourceFiles/statistics/view/stack_linear_chart_view.cpp b/Telegram/SourceFiles/statistics/view/stack_linear_chart_view.cpp index a4bfa7934..1f3df8257 100644 --- a/Telegram/SourceFiles/statistics/view/stack_linear_chart_view.cpp +++ b/Telegram/SourceFiles/statistics/view/stack_linear_chart_view.cpp @@ -905,8 +905,8 @@ int StackLinearChartView::findXIndexByPosition( const auto nearestXPercentageIt = ((right) > (left)) ? (it - 1) : it; return std::clamp( std::distance(begin(chartData.xPercentage), nearestXPercentageIt), - long(localStart), - long(localEnd)); + std::ptrdiff_t(localStart), + std::ptrdiff_t(localEnd)); } AbstractChartView::HeightLimits StackLinearChartView::heightLimits(