mirror of
https://github.com/Ed94/Cog.git
synced 2026-08-04 14:48:45 +00:00
CogImGui: Fix gamepad buttons not forwarded to game
This commit is contained in:
@@ -138,32 +138,24 @@ FReply SCogImguiWidget::HandleKeyEvent(const FKeyEvent& KeyEvent, bool Down)
|
|||||||
{
|
{
|
||||||
return FReply::Unhandled();
|
return FReply::Unhandled();
|
||||||
}
|
}
|
||||||
|
|
||||||
if (KeyEvent.GetKey().IsGamepadKey())
|
if (KeyEvent.GetKey().IsGamepadKey())
|
||||||
{
|
{
|
||||||
//if (bShareGamepad)
|
return FReply::Unhandled();
|
||||||
//{
|
|
||||||
// // TODO: handle imgui gamepad
|
|
||||||
// return FReply::Unhandled();
|
|
||||||
//}
|
|
||||||
}
|
}
|
||||||
else
|
|
||||||
{
|
|
||||||
if (FCogImguiInputHelper::IsKeyEventHandled(Context->GetGameViewport()->GetWorld(), KeyEvent) == false)
|
|
||||||
{
|
|
||||||
return FReply::Unhandled();
|
|
||||||
}
|
|
||||||
|
|
||||||
ImGuiIO& IO = ImGui::GetIO();
|
if (FCogImguiInputHelper::IsKeyEventHandled(Context->GetGameViewport()->GetWorld(), KeyEvent) == false)
|
||||||
IO.AddKeyEvent(FCogImguiInputHelper::ToImKey(KeyEvent.GetKey()), Down);
|
{
|
||||||
IO.AddKeyEvent(ImGuiMod_Ctrl, KeyEvent.IsControlDown());
|
return FReply::Unhandled();
|
||||||
IO.AddKeyEvent(ImGuiMod_Shift, KeyEvent.IsShiftDown());
|
|
||||||
IO.AddKeyEvent(ImGuiMod_Alt, KeyEvent.IsAltDown());
|
|
||||||
IO.AddKeyEvent(ImGuiMod_Super, KeyEvent.IsCommandDown());
|
|
||||||
//if (bShareKeyboard)
|
|
||||||
//{
|
|
||||||
// return FReply::Unhandled();
|
|
||||||
//}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
ImGuiIO& IO = ImGui::GetIO();
|
||||||
|
IO.AddKeyEvent(FCogImguiInputHelper::ToImKey(KeyEvent.GetKey()), Down);
|
||||||
|
IO.AddKeyEvent(ImGuiMod_Ctrl, KeyEvent.IsControlDown());
|
||||||
|
IO.AddKeyEvent(ImGuiMod_Shift, KeyEvent.IsShiftDown());
|
||||||
|
IO.AddKeyEvent(ImGuiMod_Alt, KeyEvent.IsAltDown());
|
||||||
|
IO.AddKeyEvent(ImGuiMod_Super, KeyEvent.IsCommandDown());
|
||||||
|
|
||||||
return FReply::Handled();
|
return FReply::Handled();
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -172,12 +164,6 @@ FReply SCogImguiWidget::OnAnalogValueChanged(const FGeometry& MyGeometry, const
|
|||||||
{
|
{
|
||||||
if (AnalogInputEvent.GetKey().IsGamepadKey())
|
if (AnalogInputEvent.GetKey().IsGamepadKey())
|
||||||
{
|
{
|
||||||
//if (bShareGamepad)
|
|
||||||
//{
|
|
||||||
// // TODO: handle imgui gamepad
|
|
||||||
// return FReply::Unhandled();
|
|
||||||
//}
|
|
||||||
|
|
||||||
return FReply::Unhandled();
|
return FReply::Unhandled();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user