* #272 restructure and restyle chat line edit section * #272 no arrow, actually change id on channel changer * #272 nice round chat channel picker * #272 add chat channel selection logic, and auto-select when a prefix is entered * #272 consistent width of chat channel btn * #272 only show admin channel filter if asay perms * #272 add tutorial info on chat prefixes * #272 added chat filter button * #272 added chat filter button * #272 WIP on filter popup * #272 fix filter popup pressed / unpressed logic * #272 fix filter popup positioning and layout * #272 WIP channel filter logic * #272 WIP channel filter logic * #272 WIP refactoring how chatbox / manager manages available filters and channels to send on * #272 WIP implementing filtering UI / logic and refactoring how chat UI is managed * #272 fix various bugs with new chat filter / selector logic * #272 remove outdated todos * #272 WIP working chat window resize * #272 bounded chatbox resizing * #272 alertUI moves with resized chat * #272 WIP making alertUI not be too large when changing size / UIScale * #272 WIP fixing window / uiscale adjustment * #272 WIP hacky approach for resizing, will try another approach * #272 implement hacky approach for bounded chat resize * #272 no resizing of lobby chat * #272 WIP adding unread marker to chat filters * #272 basic working unread chat message indicators * #272 WIP adding horizontal channel selector items * #272 horizontal channel selector popup * #272 workaround for chat selector staying highlighted when right clicking it while toggled * #272 workaround for chat selector staying highlighted when right clicking it while toggled * #272 wip trying to add tests for chatbox * #272 remove test, not really possible with current system * #272 merge latest * #272 merge latest * #272 fix csproj changes * It works if you disable the lobby * Fixes lobby chat * Adds more channel focusses * Channel cycler * Address review * Address nitpicks * Address more of the review * Fix chat post-viewport * Finalize review stuff Co-authored-by: chairbender <kwhipke1@gmail.com> Co-authored-by: ike709 <sparebytes@protonmail.com>
90 lines
4.7 KiB
C#
90 lines
4.7 KiB
C#
using Content.Shared.Input;
|
|
using Robust.Shared.Input;
|
|
|
|
namespace Content.Client.Input
|
|
{
|
|
/// <summary>
|
|
/// Contains a helper function for setting up all content
|
|
/// contexts, and modifying existing engine ones.
|
|
/// </summary>
|
|
public static class ContentContexts
|
|
{
|
|
public static void SetupContexts(IInputContextContainer contexts)
|
|
{
|
|
var common = contexts.GetContext("common");
|
|
common.AddFunction(ContentKeyFunctions.FocusChat);
|
|
common.AddFunction(ContentKeyFunctions.FocusLocalChat);
|
|
common.AddFunction(ContentKeyFunctions.FocusRadio);
|
|
common.AddFunction(ContentKeyFunctions.FocusOOC);
|
|
common.AddFunction(ContentKeyFunctions.FocusAdminChat);
|
|
common.AddFunction(ContentKeyFunctions.CycleChatChannelForward);
|
|
common.AddFunction(ContentKeyFunctions.CycleChatChannelBackward);
|
|
common.AddFunction(ContentKeyFunctions.ExamineEntity);
|
|
common.AddFunction(ContentKeyFunctions.OpenInfo);
|
|
common.AddFunction(ContentKeyFunctions.TakeScreenshot);
|
|
common.AddFunction(ContentKeyFunctions.TakeScreenshotNoUI);
|
|
common.AddFunction(ContentKeyFunctions.Point);
|
|
|
|
var human = contexts.GetContext("human");
|
|
human.AddFunction(ContentKeyFunctions.SwapHands);
|
|
human.AddFunction(ContentKeyFunctions.Drop);
|
|
human.AddFunction(ContentKeyFunctions.ActivateItemInHand);
|
|
human.AddFunction(ContentKeyFunctions.OpenCharacterMenu);
|
|
human.AddFunction(ContentKeyFunctions.ActivateItemInWorld);
|
|
human.AddFunction(ContentKeyFunctions.ThrowItemInHand);
|
|
human.AddFunction(ContentKeyFunctions.TryPullObject);
|
|
human.AddFunction(ContentKeyFunctions.MovePulledObject);
|
|
human.AddFunction(ContentKeyFunctions.ReleasePulledObject);
|
|
human.AddFunction(ContentKeyFunctions.OpenContextMenu);
|
|
human.AddFunction(ContentKeyFunctions.OpenCraftingMenu);
|
|
human.AddFunction(ContentKeyFunctions.OpenInventoryMenu);
|
|
human.AddFunction(ContentKeyFunctions.SmartEquipBackpack);
|
|
human.AddFunction(ContentKeyFunctions.SmartEquipBelt);
|
|
human.AddFunction(ContentKeyFunctions.MouseMiddle);
|
|
human.AddFunction(ContentKeyFunctions.WideAttack);
|
|
human.AddFunction(ContentKeyFunctions.ArcadeUp);
|
|
human.AddFunction(ContentKeyFunctions.ArcadeDown);
|
|
human.AddFunction(ContentKeyFunctions.ArcadeLeft);
|
|
human.AddFunction(ContentKeyFunctions.ArcadeRight);
|
|
human.AddFunction(ContentKeyFunctions.Arcade1);
|
|
human.AddFunction(ContentKeyFunctions.Arcade2);
|
|
human.AddFunction(ContentKeyFunctions.Arcade3);
|
|
|
|
// actions should be common (for ghosts, mobs, etc)
|
|
common.AddFunction(ContentKeyFunctions.OpenActionsMenu);
|
|
common.AddFunction(ContentKeyFunctions.Hotbar0);
|
|
common.AddFunction(ContentKeyFunctions.Hotbar1);
|
|
common.AddFunction(ContentKeyFunctions.Hotbar2);
|
|
common.AddFunction(ContentKeyFunctions.Hotbar3);
|
|
common.AddFunction(ContentKeyFunctions.Hotbar4);
|
|
common.AddFunction(ContentKeyFunctions.Hotbar5);
|
|
common.AddFunction(ContentKeyFunctions.Hotbar6);
|
|
common.AddFunction(ContentKeyFunctions.Hotbar7);
|
|
common.AddFunction(ContentKeyFunctions.Hotbar8);
|
|
common.AddFunction(ContentKeyFunctions.Hotbar9);
|
|
common.AddFunction(ContentKeyFunctions.Loadout1);
|
|
common.AddFunction(ContentKeyFunctions.Loadout2);
|
|
common.AddFunction(ContentKeyFunctions.Loadout3);
|
|
common.AddFunction(ContentKeyFunctions.Loadout4);
|
|
common.AddFunction(ContentKeyFunctions.Loadout5);
|
|
common.AddFunction(ContentKeyFunctions.Loadout6);
|
|
common.AddFunction(ContentKeyFunctions.Loadout7);
|
|
common.AddFunction(ContentKeyFunctions.Loadout8);
|
|
common.AddFunction(ContentKeyFunctions.Loadout9);
|
|
|
|
var ghost = contexts.New("ghost", "common");
|
|
ghost.AddFunction(EngineKeyFunctions.MoveUp);
|
|
ghost.AddFunction(EngineKeyFunctions.MoveDown);
|
|
ghost.AddFunction(EngineKeyFunctions.MoveLeft);
|
|
ghost.AddFunction(EngineKeyFunctions.MoveRight);
|
|
ghost.AddFunction(EngineKeyFunctions.Walk);
|
|
ghost.AddFunction(ContentKeyFunctions.OpenContextMenu);
|
|
|
|
common.AddFunction(ContentKeyFunctions.OpenEntitySpawnWindow);
|
|
common.AddFunction(ContentKeyFunctions.OpenSandboxWindow);
|
|
common.AddFunction(ContentKeyFunctions.OpenTileSpawnWindow);
|
|
common.AddFunction(ContentKeyFunctions.OpenAdminMenu);
|
|
}
|
|
}
|
|
}
|