diff --git a/HellionChat/Ui/Components/MessageList.cs b/HellionChat/Ui/Components/MessageList.cs index f12bf55..786354b 100644 --- a/HellionChat/Ui/Components/MessageList.cs +++ b/HellionChat/Ui/Components/MessageList.cs @@ -27,10 +27,6 @@ internal sealed class MessageList _handler = handler; } - // Delegates to PayloadHandler.Draw for per-frame popup tick; PayloadHandler.Draw doesn't auto-fire - // so MainWindow's draw loop must invoke it explicitly to render right-click context popups. - internal void DrawHandlerPopups() => _handler?.Draw(); - public MessageList(FontManager fonts, ChunkRenderer chunkRenderer) { _fonts = fonts; @@ -63,6 +59,9 @@ internal sealed class MessageList if (pinnedToBottom) ImGui.SetScrollHereY(1f); + + // OpenPopup in Click() and BeginPopup here share the ##hellion-main-area scope -> Popup-ID matches. + _handler?.Draw(); } private void DrawCompact(IReadOnlyList messages) diff --git a/HellionChat/Ui/Windows/MainWindow.cs b/HellionChat/Ui/Windows/MainWindow.cs index d81bfe3..5fcd4da 100644 --- a/HellionChat/Ui/Windows/MainWindow.cs +++ b/HellionChat/Ui/Windows/MainWindow.cs @@ -113,7 +113,6 @@ internal sealed class MainWindow : Window DrawBody(); } - _messages.DrawHandlerPopups(); _status.Draw(_activeTab); }