feat: add autohide after inactivity

After not receiving a message for X seconds (configurable) in the
current tab or any tab with unread mode enabled, the chat will be
hidden. Focus can be returned with return or slash as usual.

Having input focus or hovering the mouse over the chat window "bumps"
it every frame.

Also fixes a bug that prevented focus from being restored to tabs with
input disabled. The chat window will be brought back but the activated
event won't be fully processed.

Co-authored-by: Auri <me@aurieh.me>
This commit is contained in:
Dean Sheather
2024-07-11 15:50:17 +10:00
parent 05495705fd
commit c3c60e7e43
6 changed files with 115 additions and 10 deletions
-3
View File
@@ -253,9 +253,6 @@ internal sealed unsafe class Chat : IDisposable
LastRefresh = Environment.TickCount64;
}
if (Plugin.ChatLogWindow is { CurrentTab.InputDisabled: true, IsHidden: false })
return;
// Vanilla text input has focus
if (RaptureAtkModule.Instance()->AtkModule.IsTextInputActive())
return;