diff --git a/osu.Game/Overlays/ChatOverlayV2.cs b/osu.Game/Overlays/ChatOverlayV2.cs index 658a28bfdb..ae4e160de5 100644 --- a/osu.Game/Overlays/ChatOverlayV2.cs +++ b/osu.Game/Overlays/ChatOverlayV2.cs @@ -39,7 +39,8 @@ namespace osu.Game.Overlays private ChatTextBar textBar = null!; private Container currentChannelContainer = null!; - private Bindable? chatHeight; + private readonly Bindable chatHeight = new Bindable(); + private bool isDraggingTopBar; private float dragStartChatHeight; @@ -137,7 +138,8 @@ namespace osu.Game.Overlays loading.Show(); - chatHeight = config.GetBindable(OsuSetting.ChatDisplayHeight).GetBoundCopy(); + config.BindWith(OsuSetting.ChatDisplayHeight, chatHeight); + chatHeight.BindValueChanged(height => { Height = height.NewValue; }, true); currentChannel.BindTo(channelManager.CurrentChannel); @@ -193,7 +195,7 @@ namespace osu.Game.Overlays if (!isDraggingTopBar) return base.OnDragStart(e); - dragStartChatHeight = chatHeight!.Value; + dragStartChatHeight = chatHeight.Value; return true; } @@ -203,7 +205,7 @@ namespace osu.Game.Overlays return; float targetChatHeight = dragStartChatHeight - (e.MousePosition.Y - e.MouseDownPosition.Y) / Parent.DrawSize.Y; - chatHeight!.Value = targetChatHeight; + chatHeight.Value = targetChatHeight; } protected override void OnDragEnd(DragEndEvent e)