Store chat size (#14299)
This commit is contained in:
@@ -1,11 +1,13 @@
|
||||
using Robust.Client.AutoGenerated;
|
||||
using Content.Client.UserInterface.Systems.Chat.Widgets;
|
||||
using Robust.Client.AutoGenerated;
|
||||
using Robust.Client.UserInterface;
|
||||
using Robust.Client.UserInterface.Controls;
|
||||
using Robust.Client.UserInterface.XAML;
|
||||
|
||||
namespace Content.Client.UserInterface.Screens;
|
||||
|
||||
[GenerateTypedNameReferences]
|
||||
public sealed partial class DefaultGameScreen : UIScreen
|
||||
public sealed partial class DefaultGameScreen : InGameScreen
|
||||
{
|
||||
public DefaultGameScreen()
|
||||
{
|
||||
@@ -23,6 +25,14 @@ public sealed partial class DefaultGameScreen : UIScreen
|
||||
SetAnchorAndMarginPreset(Alerts, LayoutPreset.TopRight, margin: 10);
|
||||
|
||||
Chat.OnResized += ChatOnResized;
|
||||
Chat.OnChatResizeFinish += ChatOnResizeFinish;
|
||||
}
|
||||
|
||||
private void ChatOnResizeFinish(Vector2 _)
|
||||
{
|
||||
var marginBottom = Chat.GetValue<float>(MarginBottomProperty);
|
||||
var marginLeft = Chat.GetValue<float>(MarginLeftProperty);
|
||||
OnChatResized?.Invoke(new Vector2(marginBottom, marginLeft));
|
||||
}
|
||||
|
||||
private void ChatOnResized()
|
||||
@@ -30,4 +40,14 @@ public sealed partial class DefaultGameScreen : UIScreen
|
||||
var marginBottom = Chat.GetValue<float>(MarginBottomProperty);
|
||||
SetMarginTop(Alerts, marginBottom);
|
||||
}
|
||||
|
||||
public override ChatBox ChatBox => Chat;
|
||||
|
||||
//TODO: There's probably a better way to do this... but this is also the easiest way.
|
||||
public override void SetChatSize(Vector2 size)
|
||||
{
|
||||
SetMarginBottom(Chat, size.X);
|
||||
SetMarginLeft(Chat, size.Y);
|
||||
SetMarginTop(Alerts, Size.X);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user