-
Notifications
You must be signed in to change notification settings - Fork 3.9k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Improve admin message seen/dismiss state. (#26223)
Fixes #26211 Admin messages now have separate "seen" and "dismissed" fields. The idea is that an admin should be able to tell whether a user pressed the "dismiss for now" button. Instead of using "seen" as "show this message to players when they join", "dismissed" is now used for this. Existing notes in the database will automatically be marked as dismissed on migration. A note cannot be dismissed without being seen (enforced via constraint in the database too, aren't I fancy). As part of this, it has become impossible for a player to play without dismissing the message in some form. Instead of a shitty popup window, the popup is now a fullscreen overlay that blocks clicks behind it, making the game unplayable. Also, if a user somehow has multiple messages they will be combined into one popup. Also I had enough respect for the codebase to make it look better and clean up the code somewhat. Yippee.
- Loading branch information
Showing
21 changed files
with
3,748 additions
and
108 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
6 changes: 6 additions & 0 deletions
6
Content.Client/Administration/UI/AdminRemarks/AdminMessagePopupMessage.xaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
<Control xmlns="https://spacestation14.io" Margin="0 0 0 8"> | ||
<BoxContainer Orientation="Vertical"> | ||
<RichTextLabel Name="Admin" Margin="0 0 0 4" /> | ||
<RichTextLabel Name="Message" Margin="2 0 0 0" /> | ||
</BoxContainer> | ||
</Control> |
23 changes: 23 additions & 0 deletions
23
Content.Client/Administration/UI/AdminRemarks/AdminMessagePopupMessage.xaml.cs
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
using Content.Shared.Administration.Notes; | ||
using Robust.Client.AutoGenerated; | ||
using Robust.Client.UserInterface; | ||
using Robust.Client.UserInterface.XAML; | ||
using Robust.Shared.Utility; | ||
|
||
namespace Content.Client.Administration.UI.AdminRemarks; | ||
|
||
[GenerateTypedNameReferences] | ||
public sealed partial class AdminMessagePopupMessage : Control | ||
{ | ||
public AdminMessagePopupMessage(AdminMessageEuiState.Message message) | ||
{ | ||
RobustXamlLoader.Load(this); | ||
|
||
Admin.SetMessage(FormattedMessage.FromMarkup(Loc.GetString( | ||
"admin-notes-message-admin", | ||
("admin", message.AdminName), | ||
("date", message.AddedOn.ToLocalTime())))); | ||
|
||
Message.SetMessage(message.Text); | ||
} | ||
} |
42 changes: 28 additions & 14 deletions
42
Content.Client/Administration/UI/AdminRemarks/AdminMessagePopupWindow.xaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,22 +1,36 @@ | ||
<ui:FancyWindow xmlns="https://spacestation14.io" | ||
xmlns:ui="clr-namespace:Content.Client.UserInterface.Controls" | ||
VerticalExpand="True" HorizontalExpand="True" | ||
Title="{Loc admin-notes-message-window-title}" | ||
MinSize="600 170"> | ||
<PanelContainer VerticalExpand="True" HorizontalExpand="True" StyleClasses="BackgroundDark"> | ||
<ScrollContainer HScrollEnabled="False" VerticalExpand="True" HorizontalExpand="True" Margin="4"> | ||
<BoxContainer Orientation="Vertical" SeparationOverride="10" VerticalAlignment="Bottom"> | ||
<Label Name="AdminLabel" Text="Loading..." /> | ||
<RichTextLabel Name="MessageLabel" /> | ||
<Control xmlns="https://spacestation14.io" | ||
xmlns:gfx="clr-namespace:Robust.Client.Graphics;assembly=Robust.Client"> | ||
<PanelContainer MouseFilter="Stop"> | ||
<PanelContainer.PanelOverride> | ||
<!-- semi-transparent background --> | ||
<gfx:StyleBoxFlat BackgroundColor="#000000AA" /> | ||
</PanelContainer.PanelOverride> | ||
|
||
<Control HorizontalAlignment="Center" VerticalAlignment="Center" MaxWidth="600"> | ||
<PanelContainer StyleClasses="AngleRect" /> | ||
|
||
<BoxContainer Orientation="Vertical" Margin="4"> | ||
<RichTextLabel Name="Description" /> | ||
|
||
<!-- Contains actual messages --> | ||
<ScrollContainer HScrollEnabled="False" Margin="4" VerticalExpand="True" ReturnMeasure="True" MaxHeight="400"> | ||
<BoxContainer Orientation="Vertical" Name="MessageContainer" Margin="0 2 0 0" /> | ||
</ScrollContainer> | ||
|
||
<Label Name="WaitLabel" /> | ||
<BoxContainer Orientation="Horizontal"> | ||
<Button Name="DismissButton" | ||
Text="{Loc 'admin-notes-message-dismiss'}" /> | ||
Text="{Loc 'admin-notes-message-dismiss'}" | ||
Disabled="True" | ||
HorizontalExpand="True" | ||
StyleClasses="OpenRight" /> | ||
<Button Name="AcceptButton" | ||
Text="{Loc 'admin-notes-message-accept'}" | ||
Disabled="True" /> | ||
Disabled="True" | ||
HorizontalExpand="True" | ||
StyleClasses="OpenLeft" /> | ||
</BoxContainer> | ||
</BoxContainer> | ||
</ScrollContainer> | ||
</Control> | ||
</PanelContainer> | ||
</ui:FancyWindow> | ||
</Control> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.