From 1c2849516258f5d45a3578bf23fe9dcad6c3b9a3 Mon Sep 17 00:00:00 2001
From: 23rd <23rd@vivaldi.net>
Date: Fri, 17 Jan 2025 12:17:59 +0300
Subject: [PATCH] Fixed boost bubble position on resize container.

---
 Telegram/SourceFiles/ui/effects/premium_bubble.cpp | 11 +++++++++++
 1 file changed, 11 insertions(+)

diff --git a/Telegram/SourceFiles/ui/effects/premium_bubble.cpp b/Telegram/SourceFiles/ui/effects/premium_bubble.cpp
index 5a3698e17..6106201af 100644
--- a/Telegram/SourceFiles/ui/effects/premium_bubble.cpp
+++ b/Telegram/SourceFiles/ui/effects/premium_bubble.cpp
@@ -241,6 +241,17 @@ BubbleWidget::BubbleWidget(
 		) | rpl::start_with_next([=](BubbleRowState state) {
 			animateTo(state);
 		}, lifetime());
+
+		parent->widthValue() | rpl::start_with_next([=](int w) {
+			if (!_appearanceAnimation.animating()) {
+				const auto x = base::SafeRound(
+					w * _state.current().ratio - width() / 2);
+				const auto padding = _spaceForDeflection.width();
+				moveToLeft(
+					std::clamp(int(x), -padding, w - width() + padding),
+					y());
+			}
+		}, lifetime());
 	}, lifetime());
 }