From f4c88e0f80ead221af67beca5cf771f6cee388e5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Henrik=20Rydg=C3=A5rd?= Date: Wed, 23 Nov 2022 11:13:21 +0100 Subject: [PATCH 1/3] Add trashcan icon to UI atlas, use in control mapper. Reorder a couple dev settings --- UI/ControlMappingScreen.cpp | 4 ++-- UI/GameSettingsScreen.cpp | 4 ++-- assets/ui_atlas.meta | Bin 3432 -> 1106 bytes assets/ui_atlas.zim | Bin 80730 -> 58080 bytes source_assets/image/trashcan.png | Bin 0 -> 1062 bytes ui_atlasscript.txt | 1 + 6 files changed, 5 insertions(+), 4 deletions(-) create mode 100644 source_assets/image/trashcan.png diff --git a/UI/ControlMappingScreen.cpp b/UI/ControlMappingScreen.cpp index b0f0651735..1461220625 100644 --- a/UI/ControlMappingScreen.cpp +++ b/UI/ControlMappingScreen.cpp @@ -142,14 +142,14 @@ void SingleControlMapper::Refresh() { std::string keyName = KeyMap::GetKeyOrAxisName(mappings[i].keyCode); LinearLayout *row = rightColumn->Add(new LinearLayout(ORIENT_HORIZONTAL, new LinearLayoutParams(FILL_PARENT, WRAP_CONTENT))); - row->SetSpacing(1.0f); + row->SetSpacing(2.0f); rows_.push_back(row); Choice *c = row->Add(new Choice(deviceName + "." + keyName, new LinearLayoutParams(FILL_PARENT, itemH, 1.0f))); c->SetTag(StringFromFormat("%d_Change%d", (int)i, pspKey_)); c->OnClick.Handle(this, &SingleControlMapper::OnReplace); - Choice *d = row->Add(new Choice(" X ", new LayoutParams(WRAP_CONTENT, itemH))); + Choice *d = row->Add(new Choice(ImageID("I_TRASHCAN"), new LayoutParams(WRAP_CONTENT, itemH))); d->SetTag(StringFromFormat("%d_Del%d", (int)i, pspKey_)); d->OnClick.Handle(this, &SingleControlMapper::OnDelete); } diff --git a/UI/GameSettingsScreen.cpp b/UI/GameSettingsScreen.cpp index f22627e100..f985110613 100644 --- a/UI/GameSettingsScreen.cpp +++ b/UI/GameSettingsScreen.cpp @@ -1863,11 +1863,11 @@ void DeveloperToolsScreen::CreateViews() { list->Add(new CheckBox(&g_Config.bShowOnScreenMessages, dev->T("Show on-screen messages"))); list->Add(new CheckBox(&g_Config.bEnableLogging, dev->T("Enable Logging")))->OnClick.Handle(this, &DeveloperToolsScreen::OnLoggingChanged); + list->Add(new Choice(dev->T("Logging Channels")))->OnClick.Handle(this, &DeveloperToolsScreen::OnLogConfig); + list->Add(new CheckBox(&g_Config.bLogFrameDrops, dev->T("Log Dropped Frame Statistics"))); if (GetGPUBackend() == GPUBackend::VULKAN) { list->Add(new CheckBox(&g_Config.bGpuLogProfiler, gr->T("GPU log profiler"))); } - list->Add(new CheckBox(&g_Config.bLogFrameDrops, dev->T("Log Dropped Frame Statistics"))); - list->Add(new Choice(dev->T("Logging Channels")))->OnClick.Handle(this, &DeveloperToolsScreen::OnLogConfig); list->Add(new ItemHeader(dev->T("Language"))); list->Add(new Choice(dev->T("Load language ini")))->OnClick.Handle(this, &DeveloperToolsScreen::OnLoadLanguageIni); list->Add(new Choice(dev->T("Save language ini")))->OnClick.Handle(this, &DeveloperToolsScreen::OnSaveLanguageIni); diff --git a/assets/ui_atlas.meta b/assets/ui_atlas.meta index 32d31ed1323d4ae60a58c9cc428a0408a073bdd0..a1d7df260c878b94ba06cd9c41af8b2948d2b96f 100644 GIT binary patch literal 1106 zcmV-Y1g-l)R7^nu000000000!0000!1ONaiwJ-f(kPM|E00!=$OTg4kI>K%L#Oojm zU%P{W0HA>GfB%+!g(>yyI-&W)4wMImL8&7caTzA=j1GdN3Ad`g=;}Zw$v- z4_DiUV`^|;9jn4_HC(>EkmcDG(m$<*ls^c>^9Vd(kl*739A|MM`7 z`?mC~;=Y^SG)w#a-)S5QEcESwzT(814iv}I+=>71Y8ZWIh&kU+^Z}rED{W9v!_c-6 zSQi($=b6X-|FH#yQ)rC<$1>c_(DejdGQWU?n1ca(}A$ z2A`4K^Ek2AN4w>ueZ18I#yvN9CB<=9gmiW}Z3V|%S%cyvuN*Ey+D=0hKmFX~a))dC z#GH^J$4;3h+4RX)Xyb`Xi$6*nu&p>U`By z^bI?gY$<}fTW;1UPFbL>M?OSM^qq3PKO!gY$?_9xH8yeK$DS|4Qnuo)lshQekOs#N z7-k)?!#jUN(a(td-E>_UC%vy`dKQ3(AE;#f{zyXa?1F1toX zGanny%Wl012?belq-7g=WnmFckX+D(t*GwT!ZxycT$<}`tKrGO@Xb^O`kGYMb_}#m z)eE%V2bwwmff{!93aw_fuLf|Ewc5`d$J`MPPXF8nNNJNfKQr?8i+*Nx(}RgR|3q!I z7Zxg4xtbDz8K{A1W{Hg?siXrDE{Te!>H$&{rs9Z0L_h?_5CI`XFsL+0R5=J3fp1$6 zs<&RpV$BgrIPYIRqB6FT^YXyIjDjid)0_IXNcN;=p>``_8Va2rLCuXYP|MGDM~fDG zw)b*dYrp5osK%hqu(%_>*Ivm;Yq)0rHn)}puqu5mqIiYhHL2PC`Lre64!zxqJ#a%< zW^kt-&1aU}44`fHaf|_v!|45{6F;zmLnZPWwNA1Kv9ee(V9aYAzIQe76?5hc$#v$= z)J&t$6%PfwgkQj{Da9Cz;2#8-u)8PUJ(43v&PASqf`REeeb**s%1kWwo?!0s*6E%O z5O-%Ahn2xI{teYlev6`ser1Bs7!ofUS+5~!L`T|IHH_WnPR90~DKI!;zp+yvwdfj?14>IITt|gGDLw6Nxc2J(eO_r;B7hR&nnH1u*#Waz9hfwtKI4 z2(;`BgthV5`2l~OxCP#OycIIMD~QT2hxnC`(|y#_YjFR@Je#~?R(Ow%Z-dCf`r5sr YX<#%KNAdm6)L2_K-(Y!~vQKUI0T8GkWB>pF literal 3432 zcmaKuONbm*6o!8nx=ALP$-I0d6XO^q(IILQk&!;<)>PMYSEka{sqSVJiDlwSbYX~3 zVlr1(A{fO*)P)EdT`KM*A#(R3_;%-;7zA;pqo_g7t(u;$rf&UknML1k&aLzIx{-%m zHTkQKG0YUhJjGBmJPJTgn0DeQtS>jiZm@R0Aay@OZDy!P8EOab1Ry6&{Uq*m3ReqK z%+T);RKn07)6D?ngsC4UepGHtq+chfNrpa8P&e@`06AgWIn?tKH;0sH!9Jk$h1vi(fbNmkJgN($A6Q^uGig zqZ0t0Ugy$B02bE$=_btA^e}*j2K?#%LOq|wK@)J2o&~Tnz%4W!sJ@Wb?RP_U>o)^`DX1^R_pAqP zKsN4=6ZCHc{UJR9fUP}e#B)jfNxk8q{$Hc9Qhm zYqNKTt)Qas+Io=u{EDDIx7;$7 z&~H!^fSfQ5{kY|V0L$q&bME30R}nztGt5SYI&A0BzJ4EEjH{|0s-E>hb(CQ?u*}3P z4!yRNeBgKEfM3#FY=iahh7Wcg+mj@;N>@{2K($gfTGkfCM3R!y>a(iD6yi=x2 zg@nTqf?8qd=V=Vc-znX=aQh)jVl(r%Qd^#NuHV+-UHwUYp+xHy`-X}$qq8c!08&)EZ^AQTbuDg=WLh# z<*~f)%6_(;CIL)ad;N8~T(-Y_LNH4V{gbVSjFau4Li(G0pSVQOpW6D%IN2Xe;Fs~M{%Sh|>; zwS8VDV7tt;oqu{B<{1XQt=$DcPLV6yMPx5nCE(8*)F{)?d`RPVd4j6ZY)-4)3^UHs Q#j-tX*-Khs%e8*~4+~GR9{>OV diff --git a/assets/ui_atlas.zim b/assets/ui_atlas.zim index 85517eb137b9a0ece8fd9db07f38cb59155e6fad..5b8b17995c2e3a7d769c014b15f91d5673147c1f 100644 GIT binary patch literal 58080 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ӖOsrgI-mDFrp?s2 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 UR=Xw$sc3naod&Q1C}0Ku19hW7EC2ui literal 80730 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

A#d=q|#?$7j=Rv^ue zi*|+u`x|)~Or6ry?rZhzDX5qYUukf^SO|vCL*FWR>j_aGF1$l#5J$!^JMylR%rTam)GRjx0 zlal9lE<#ht)-$)CU!7FUS@PA8XN_0^c)bDj`>`g>soCX9- z8or6imF4~m{&c3ATWgAmyyVPCqQUWUXUe9hiJH>(KZ&uRtdx?b&+k2n$xqtU{OHAV zt{UmQ?BrpwQN6z3@y_(PBW|wo@Q;U73xWf5S(Fqf4}2>FN@z_eib(@Oj9hbOU%WFy zlh^h%=~qAP+WpUpFU8&3%h;A@H#k~_uwV0{nGzVtle?c0&* zr%;^le6ycz`s2R8UgTpe!s3(XM*x1u;zHs=xf0#K&Q}4#)arCirbh5xAc1mb(yN8- zTEJQS&+Gu~9Czxo%QVzC`b@qH&85H5@{IChy}{a%7Pc&($Vs`y-(3YvQg(nAp3?0L zgTxvTnPUE^fJAZ3CY^$wVT=cXSfdZeD1XO_lT*;MHAqqAgSllh*v!ee{?fE;{uy+F ohQ|dCP_IuA`h{(mG0Pm?FG+2~wib+3|G)h|YUAdQu2B8`Uv)AcMF0Q* diff --git a/source_assets/image/trashcan.png b/source_assets/image/trashcan.png new file mode 100644 index 0000000000000000000000000000000000000000..d761236539a34ff1d35e04b438ed363e821e3d65 GIT binary patch literal 1062 zcmV+>1ljwEP)Fu$xu_XWj06I$s;@|-C2L}iD!eGVn^74B)j8+e=FSOk3 z?CdomghNEs>2%g6Cntw-4ok!U^i?XAFQSxhZf?#3xB_4RK!2AF0I*h9SC9H{Z*Tt` zisndJ0T!A%KR^F!u~__32*IV4oQRl|k`YmVE|(jPq6&hb0YHZ1l?3OEF{UVrVuWqv zy6z*!n8O$&&UwH&4-`d_i;Ih&jgOC)0R(C^*fh;c`F#FnhAdsq(C3)2d_I3QslhbO zOHm+^5a~EheQ$5?7tixlB6`g*j2lEmjIpc*oeC+X9o@Dna zsO#(N9}^MTwtWY{MF1BvT3-(vux7L*w}b~dV2ao6iBUB`+RF_>+4df^m@eY?CgBE zySw}S%F4={-F~E$K*E`lnvpn$hKAlK6biQipin5h1mJG~+Th^eH;l19&-2Ov{sN#` zmh~k7?l{hU0Dp!q7yuAaVrDXDBnX0|qHQ*t(YPbd_x-0hAw;~;qwjwve~tW?LQ?VKE{zZ(vGK**HJqnUm05_Ysz+<9XPjy{Cw)w*c)WuW-tDq|3o32a{>UvFs_e`j9gE1 za9Z>_N0NldR;%@}Uax;Egy2LJ2q6yAoJ%R&LI^jlPp8vqYMR!rR;v$?@Tlrl$sDIU g?6UrHpqL%QV-6wK>3n*Bp#T5?07*qoM6N<$f*-}^H~;_u literal 0 HcmV?d00001 diff --git a/ui_atlasscript.txt b/ui_atlasscript.txt index cbb3a2b22a..14d0cd2ac9 100644 --- a/ui_atlasscript.txt +++ b/ui_atlasscript.txt @@ -60,3 +60,4 @@ image I_SQUARE_SHAPE source_assets/image/square_shape.png copy image I_SQUARE_SHAPE_LINE source_assets/image/square_shape_line.png copy image I_FOLDER_OPEN source_assets/image/folder_open_line.png copy image I_WARNING source_assets/image/warning.png copy +image I_TRASHCAN source_assets/image/trashcan.png copy \ No newline at end of file From 5230fc7c411a278f7ef923daef40c4f53c0e305a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Henrik=20Rydg=C3=A5rd?= Date: Wed, 23 Nov 2022 12:22:59 +0100 Subject: [PATCH 2/3] Joystick input: Ignore in-deadzone events from a different device than previous events Fixes #15465 --- Common/Input/InputState.h | 1 + Core/ControlMapper.cpp | 115 ++++++++++++++++++++++-------------- Core/ControlMapper.h | 14 +++-- UI/ControlMappingScreen.cpp | 1 + UI/EmuScreen.cpp | 3 - UI/GamepadEmu.cpp | 28 ++++----- UI/GamepadEmu.h | 8 +-- 7 files changed, 99 insertions(+), 71 deletions(-) diff --git a/Common/Input/InputState.h b/Common/Input/InputState.h index faa6416e30..f5d43e209d 100644 --- a/Common/Input/InputState.h +++ b/Common/Input/InputState.h @@ -33,6 +33,7 @@ enum { DEVICE_ID_ACCELEROMETER = 30, DEVICE_ID_XR_CONTROLLER_LEFT = 40, DEVICE_ID_XR_CONTROLLER_RIGHT = 41, + DEVICE_ID_TOUCH = 42, }; //number of contiguous generic joypad IDs diff --git a/Core/ControlMapper.cpp b/Core/ControlMapper.cpp index b19c29dbda..b6d1dc3d0d 100644 --- a/Core/ControlMapper.cpp +++ b/Core/ControlMapper.cpp @@ -15,6 +15,7 @@ static float MapAxisValue(float v) { const float invDeadzone = g_Config.fAnalogInverseDeadzone; const float sensitivity = g_Config.fAnalogSensitivity; const float sign = v >= 0.0f ? 1.0f : -1.0f; + return sign * Clamp(invDeadzone + (abs(v) - deadzone) / (1.0f - deadzone) * (sensitivity - invDeadzone), 0.0f, 1.0f); } @@ -49,24 +50,48 @@ void ControlMapper::SetRawCallback(std::function setRaw setRawAnalog_ = setRawAnalog; } - -void ControlMapper::SetPSPAxis(char axis, float value, int stick) { - static float history[2][2] = {}; - +void ControlMapper::SetPSPAxis(int device, char axis, float value, int stick) { int axisId = axis == 'X' ? 0 : 1; - history[stick][axisId] = value; + float position[2]; + position[0] = history[stick][0]; + position[1] = history[stick][1]; - float x = history[stick][0]; - float y = history[stick][1]; + position[axisId] = value; + + float x = position[0]; + float y = position[1]; if (setRawAnalog_) { setRawAnalog_(stick, x, y); } - ConvertAnalogStick(x, y); + // NOTE: We need to use single-axis checks, since the other axis might be from another device, + // so we'll add a little leeway. + bool inDeadZone = fabsf(value) < g_Config.fAnalogDeadzone * 0.7f; - setPSPAnalog_(stick, x, y); + bool ignore = false; + + if (inDeadZone && lastNonDeadzoneDeviceID_[stick] != device) { + // Ignore this event! See issue #15465 + NOTICE_LOG(COMMON, "Ignoring deadzone event from device %d (%d, %f)", device, axis, value); + ignore = true; + } + + if (!inDeadZone) { + NOTICE_LOG(COMMON, "Got a non deadzone event from device %d (%d, %f > %f)", device, axis, value, g_Config.fAnalogDeadzone); + lastNonDeadzoneDeviceID_[stick] = device; + } + + if (!ignore) { + history[stick][axisId] = value; + + float x = history[stick][0]; + float y = history[stick][1]; + + ConvertAnalogStick(x, y); + setPSPAnalog_(stick, x, y); + } } bool ControlMapper::Key(const KeyInput &key, bool *pauseTrigger) { @@ -79,7 +104,7 @@ bool ControlMapper::Key(const KeyInput &key, bool *pauseTrigger) { } for (size_t i = 0; i < pspKeys.size(); i++) { - pspKey(pspKeys[i], key.flags); + pspKey(key.deviceId, pspKeys[i], key.flags); } DEBUG_LOG(SYSTEM, "Key: %d DeviceId: %d", key.keyCode, key.deviceId); @@ -155,7 +180,7 @@ static int RotatePSPKeyCode(int x) { } } -void ControlMapper::setVKeyAnalog(char axis, int stick, int virtualKeyMin, int virtualKeyMax, bool setZero) { +void ControlMapper::setVKeyAnalog(int deviceId, char axis, int stick, int virtualKeyMin, int virtualKeyMax, bool setZero) { // The down events can repeat, so just trust the virtKeys array. bool minDown = virtKeys[virtualKeyMin - VIRTKEY_FIRST]; bool maxDown = virtKeys[virtualKeyMax - VIRTKEY_FIRST]; @@ -167,11 +192,11 @@ void ControlMapper::setVKeyAnalog(char axis, int stick, int virtualKeyMin, int v if (maxDown) value += scale; if (setZero || minDown || maxDown) { - SetPSPAxis(axis, value, stick); + SetPSPAxis(deviceId, axis, value, stick); } } -void ControlMapper::pspKey(int pspKeyCode, int flags) { +void ControlMapper::pspKey(int deviceId, int pspKeyCode, int flags) { int rotations = 0; switch (g_Config.iInternalScreenRotation) { case ROTATION_LOCKED_HORIZONTAL180: @@ -193,11 +218,11 @@ void ControlMapper::pspKey(int pspKeyCode, int flags) { int vk = pspKeyCode - VIRTKEY_FIRST; if (flags & KEY_DOWN) { virtKeys[vk] = true; - onVKeyDown(pspKeyCode); + onVKeyDown(deviceId, pspKeyCode); } if (flags & KEY_UP) { virtKeys[vk] = false; - onVKeyUp(pspKeyCode); + onVKeyUp(deviceId, pspKeyCode); } } else { // INFO_LOG(SYSTEM, "pspKey %i %i", pspKeyCode, flags); @@ -208,32 +233,32 @@ void ControlMapper::pspKey(int pspKeyCode, int flags) { } } -void ControlMapper::onVKeyDown(int vkey) { +void ControlMapper::onVKeyDown(int deviceId, int vkey) { switch (vkey) { case VIRTKEY_AXIS_X_MIN: case VIRTKEY_AXIS_X_MAX: - setVKeyAnalog('X', CTRL_STICK_LEFT, VIRTKEY_AXIS_X_MIN, VIRTKEY_AXIS_X_MAX); + setVKeyAnalog(deviceId, 'X', CTRL_STICK_LEFT, VIRTKEY_AXIS_X_MIN, VIRTKEY_AXIS_X_MAX); break; case VIRTKEY_AXIS_Y_MIN: case VIRTKEY_AXIS_Y_MAX: - setVKeyAnalog('Y', CTRL_STICK_LEFT, VIRTKEY_AXIS_Y_MIN, VIRTKEY_AXIS_Y_MAX); + setVKeyAnalog(deviceId, 'Y', CTRL_STICK_LEFT, VIRTKEY_AXIS_Y_MIN, VIRTKEY_AXIS_Y_MAX); break; case VIRTKEY_AXIS_RIGHT_X_MIN: case VIRTKEY_AXIS_RIGHT_X_MAX: - setVKeyAnalog('X', CTRL_STICK_RIGHT, VIRTKEY_AXIS_RIGHT_X_MIN, VIRTKEY_AXIS_RIGHT_X_MAX); + setVKeyAnalog(deviceId, 'X', CTRL_STICK_RIGHT, VIRTKEY_AXIS_RIGHT_X_MIN, VIRTKEY_AXIS_RIGHT_X_MAX); break; case VIRTKEY_AXIS_RIGHT_Y_MIN: case VIRTKEY_AXIS_RIGHT_Y_MAX: - setVKeyAnalog('Y', CTRL_STICK_RIGHT, VIRTKEY_AXIS_RIGHT_Y_MIN, VIRTKEY_AXIS_RIGHT_Y_MAX); + setVKeyAnalog(deviceId, 'Y', CTRL_STICK_RIGHT, VIRTKEY_AXIS_RIGHT_Y_MIN, VIRTKEY_AXIS_RIGHT_Y_MAX); break; case VIRTKEY_ANALOG_LIGHTLY: - setVKeyAnalog('X', CTRL_STICK_LEFT, VIRTKEY_AXIS_X_MIN, VIRTKEY_AXIS_X_MAX, false); - setVKeyAnalog('Y', CTRL_STICK_LEFT, VIRTKEY_AXIS_Y_MIN, VIRTKEY_AXIS_Y_MAX, false); - setVKeyAnalog('X', CTRL_STICK_RIGHT, VIRTKEY_AXIS_RIGHT_X_MIN, VIRTKEY_AXIS_RIGHT_X_MAX, false); - setVKeyAnalog('Y', CTRL_STICK_RIGHT, VIRTKEY_AXIS_RIGHT_Y_MIN, VIRTKEY_AXIS_RIGHT_Y_MAX, false); + setVKeyAnalog(deviceId, 'X', CTRL_STICK_LEFT, VIRTKEY_AXIS_X_MIN, VIRTKEY_AXIS_X_MAX, false); + setVKeyAnalog(deviceId, 'Y', CTRL_STICK_LEFT, VIRTKEY_AXIS_Y_MIN, VIRTKEY_AXIS_Y_MAX, false); + setVKeyAnalog(deviceId, 'X', CTRL_STICK_RIGHT, VIRTKEY_AXIS_RIGHT_X_MIN, VIRTKEY_AXIS_RIGHT_X_MAX, false); + setVKeyAnalog(deviceId, 'Y', CTRL_STICK_RIGHT, VIRTKEY_AXIS_RIGHT_Y_MIN, VIRTKEY_AXIS_RIGHT_Y_MAX, false); break; case VIRTKEY_ANALOG_ROTATE_CW: @@ -252,32 +277,32 @@ void ControlMapper::onVKeyDown(int vkey) { } } -void ControlMapper::onVKeyUp(int vkey) { +void ControlMapper::onVKeyUp(int deviceId, int vkey) { switch (vkey) { case VIRTKEY_AXIS_X_MIN: case VIRTKEY_AXIS_X_MAX: - setVKeyAnalog('X', CTRL_STICK_LEFT, VIRTKEY_AXIS_X_MIN, VIRTKEY_AXIS_X_MAX); + setVKeyAnalog(deviceId, 'X', CTRL_STICK_LEFT, VIRTKEY_AXIS_X_MIN, VIRTKEY_AXIS_X_MAX); break; case VIRTKEY_AXIS_Y_MIN: case VIRTKEY_AXIS_Y_MAX: - setVKeyAnalog('Y', CTRL_STICK_LEFT, VIRTKEY_AXIS_Y_MIN, VIRTKEY_AXIS_Y_MAX); + setVKeyAnalog(deviceId, 'Y', CTRL_STICK_LEFT, VIRTKEY_AXIS_Y_MIN, VIRTKEY_AXIS_Y_MAX); break; case VIRTKEY_AXIS_RIGHT_X_MIN: case VIRTKEY_AXIS_RIGHT_X_MAX: - setVKeyAnalog('X', CTRL_STICK_RIGHT, VIRTKEY_AXIS_RIGHT_X_MIN, VIRTKEY_AXIS_RIGHT_X_MAX); + setVKeyAnalog(deviceId, 'X', CTRL_STICK_RIGHT, VIRTKEY_AXIS_RIGHT_X_MIN, VIRTKEY_AXIS_RIGHT_X_MAX); break; case VIRTKEY_AXIS_RIGHT_Y_MIN: case VIRTKEY_AXIS_RIGHT_Y_MAX: - setVKeyAnalog('Y', CTRL_STICK_RIGHT, VIRTKEY_AXIS_RIGHT_Y_MIN, VIRTKEY_AXIS_RIGHT_Y_MAX); + setVKeyAnalog(deviceId, 'Y', CTRL_STICK_RIGHT, VIRTKEY_AXIS_RIGHT_Y_MIN, VIRTKEY_AXIS_RIGHT_Y_MAX); break; case VIRTKEY_ANALOG_LIGHTLY: - setVKeyAnalog('X', CTRL_STICK_LEFT, VIRTKEY_AXIS_X_MIN, VIRTKEY_AXIS_X_MAX, false); - setVKeyAnalog('Y', CTRL_STICK_LEFT, VIRTKEY_AXIS_Y_MIN, VIRTKEY_AXIS_Y_MAX, false); - setVKeyAnalog('X', CTRL_STICK_RIGHT, VIRTKEY_AXIS_RIGHT_X_MIN, VIRTKEY_AXIS_RIGHT_X_MAX, false); - setVKeyAnalog('Y', CTRL_STICK_RIGHT, VIRTKEY_AXIS_RIGHT_Y_MIN, VIRTKEY_AXIS_RIGHT_Y_MAX, false); + setVKeyAnalog(deviceId, 'X', CTRL_STICK_LEFT, VIRTKEY_AXIS_X_MIN, VIRTKEY_AXIS_X_MAX, false); + setVKeyAnalog(deviceId, 'Y', CTRL_STICK_LEFT, VIRTKEY_AXIS_Y_MIN, VIRTKEY_AXIS_Y_MAX, false); + setVKeyAnalog(deviceId, 'X', CTRL_STICK_RIGHT, VIRTKEY_AXIS_RIGHT_X_MIN, VIRTKEY_AXIS_RIGHT_X_MAX, false); + setVKeyAnalog(deviceId, 'Y', CTRL_STICK_RIGHT, VIRTKEY_AXIS_RIGHT_Y_MIN, VIRTKEY_AXIS_RIGHT_Y_MAX, false); break; case VIRTKEY_ANALOG_ROTATE_CW: @@ -312,29 +337,29 @@ void ControlMapper::processAxis(const AxisInput &axis, int direction) { float value = fabs(axis.value) * scale; switch (result) { case VIRTKEY_AXIS_X_MIN: - SetPSPAxis('X', -value, CTRL_STICK_LEFT); + SetPSPAxis(axis.deviceId, 'X', -value, CTRL_STICK_LEFT); break; case VIRTKEY_AXIS_X_MAX: - SetPSPAxis('X', value, CTRL_STICK_LEFT); + SetPSPAxis(axis.deviceId, 'X', value, CTRL_STICK_LEFT); break; case VIRTKEY_AXIS_Y_MIN: - SetPSPAxis('Y', -value, CTRL_STICK_LEFT); + SetPSPAxis(axis.deviceId, 'Y', -value, CTRL_STICK_LEFT); break; case VIRTKEY_AXIS_Y_MAX: - SetPSPAxis('Y', value, CTRL_STICK_LEFT); + SetPSPAxis(axis.deviceId, 'Y', value, CTRL_STICK_LEFT); break; case VIRTKEY_AXIS_RIGHT_X_MIN: - SetPSPAxis('X', -value, CTRL_STICK_RIGHT); + SetPSPAxis(axis.deviceId, 'X', -value, CTRL_STICK_RIGHT); break; case VIRTKEY_AXIS_RIGHT_X_MAX: - SetPSPAxis('X', value, CTRL_STICK_RIGHT); + SetPSPAxis(axis.deviceId, 'X', value, CTRL_STICK_RIGHT); break; case VIRTKEY_AXIS_RIGHT_Y_MIN: - SetPSPAxis('Y', -value, CTRL_STICK_RIGHT); + SetPSPAxis(axis.deviceId, 'Y', -value, CTRL_STICK_RIGHT); break; case VIRTKEY_AXIS_RIGHT_Y_MAX: - SetPSPAxis('Y', value, CTRL_STICK_RIGHT); + SetPSPAxis(axis.deviceId, 'Y', value, CTRL_STICK_RIGHT); break; case VIRTKEY_SPEED_ANALOG: @@ -366,22 +391,22 @@ void ControlMapper::processAxis(const AxisInput &axis, int direction) { if (axisState != 0) { for (size_t i = 0; i < results.size(); i++) { if (!IsAnalogStickKey(results[i])) - pspKey(results[i], KEY_DOWN); + pspKey(axis.deviceId, results[i], KEY_DOWN); } // Also unpress the other direction (unless both directions press the same key.) for (size_t i = 0; i < resultsOpposite.size(); i++) { if (!IsAnalogStickKey(resultsOpposite[i]) && std::find(results.begin(), results.end(), resultsOpposite[i]) == results.end()) - pspKey(resultsOpposite[i], KEY_UP); + pspKey(axis.deviceId, resultsOpposite[i], KEY_UP); } } else if (axisState == 0) { // Release both directions, trying to deal with some erratic controllers that can cause it to stick. for (size_t i = 0; i < results.size(); i++) { if (!IsAnalogStickKey(results[i])) - pspKey(results[i], KEY_UP); + pspKey(axis.deviceId, results[i], KEY_UP); } for (size_t i = 0; i < resultsOpposite.size(); i++) { if (!IsAnalogStickKey(resultsOpposite[i])) - pspKey(resultsOpposite[i], KEY_UP); + pspKey(axis.deviceId, resultsOpposite[i], KEY_UP); } } } diff --git a/Core/ControlMapper.h b/Core/ControlMapper.h index d930c56f8b..f837bc73c0 100644 --- a/Core/ControlMapper.h +++ b/Core/ControlMapper.h @@ -16,7 +16,7 @@ public: void Update(); bool Key(const KeyInput &key, bool *pauseTrigger); - void pspKey(int pspKeyCode, int flags); + void pspKey(int deviceId, int pspKeyCode, int flags); bool Axis(const AxisInput &axis); // Required callbacks @@ -30,13 +30,13 @@ public: private: void processAxis(const AxisInput &axis, int direction); - void setVKeyAnalog(char axis, int stick, int virtualKeyMin, int virtualKeyMax, bool setZero = true); + void setVKeyAnalog(int deviceId, char axis, int stick, int virtualKeyMin, int virtualKeyMax, bool setZero = true); - void SetPSPAxis(char axis, float value, int stick); + void SetPSPAxis(int deviceId, char axis, float value, int stick); void ProcessAnalogSpeed(const AxisInput &axis, bool opposite); - void onVKeyDown(int vkey); - void onVKeyUp(int vkey); + void onVKeyDown(int deviceId, int vkey); + void onVKeyUp(int deviceId, int vkey); // To track mappable virtual keys. We can have as many as we want. bool virtKeys[VIRTKEY_COUNT]{}; @@ -44,6 +44,10 @@ private: // De-noise mapped axis updates int axisState_[JOYSTICK_AXIS_MAX]{}; + int lastNonDeadzoneDeviceID_[2]{}; + + float history[2][2] = {}; + // Mappable auto-rotation. Useful for keyboard/dpad->analog in a few games. bool autoRotatingAnalogCW_ = false; bool autoRotatingAnalogCCW_ = false; diff --git a/UI/ControlMappingScreen.cpp b/UI/ControlMappingScreen.cpp index 1461220625..d68ae2baba 100644 --- a/UI/ControlMappingScreen.cpp +++ b/UI/ControlMappingScreen.cpp @@ -583,6 +583,7 @@ void JoystickHistoryView::Update() { AnalogSetupScreen::AnalogSetupScreen() { mapper_.SetCallbacks([](int vkey) {}, [](int vkey) {}, [&](int stick, float x, float y) { + NOTICE_LOG(COMMON, "analog value from mapper: %f %f", x, y); analogX_[stick] = x; analogY_[stick] = y; }); diff --git a/UI/EmuScreen.cpp b/UI/EmuScreen.cpp index a0b898663c..a52ba14fd8 100644 --- a/UI/EmuScreen.cpp +++ b/UI/EmuScreen.cpp @@ -136,8 +136,6 @@ static void __EmuScreenVblank() } // Handles control rotation due to internal screen rotation. -// TODO: This should be a callback too, so we don't actually call the __Ctrl functions -// from settings screens, etc. static void SetPSPAnalog(int stick, float x, float y) { switch (g_Config.iInternalScreenRotation) { case ROTATION_LOCKED_HORIZONTAL: @@ -164,7 +162,6 @@ static void SetPSPAnalog(int stick, float x, float y) { default: break; } - __CtrlSetAnalogXY(stick, x, y); } diff --git a/UI/GamepadEmu.cpp b/UI/GamepadEmu.cpp index 809f2cf31f..bb1eb01f3b 100644 --- a/UI/GamepadEmu.cpp +++ b/UI/GamepadEmu.cpp @@ -205,7 +205,7 @@ void ComboKey::Touch(const TouchInput &input) { if (!repeat_) { for (int i = 0; i < ARRAY_SIZE(comboKeyList); i++) { if (pspButtonBit_ & (1ULL << i)) { - controllMapper_->pspKey(comboKeyList[i].c, (on_ && toggle_) ? KEY_UP : KEY_DOWN); + controlMapper_->pspKey(DEVICE_ID_TOUCH, comboKeyList[i].c, (on_ && toggle_) ? KEY_UP : KEY_DOWN); } } } @@ -214,7 +214,7 @@ void ComboKey::Touch(const TouchInput &input) { if (!repeat_) { for (int i = 0; i < ARRAY_SIZE(comboKeyList); i++) { if (pspButtonBit_ & (1ULL << i)) { - controllMapper_->pspKey(comboKeyList[i].c, KEY_UP); + controlMapper_->pspKey(DEVICE_ID_TOUCH, comboKeyList[i].c, KEY_UP); } } } @@ -235,13 +235,13 @@ void ComboKey::Update() { } else if (pressedFrames_ == DOWN_FRAME) { for (int i = 0; i < ARRAY_SIZE(comboKeyList); i++) { if (pspButtonBit_ & (1ULL << i)) { - controllMapper_->pspKey(comboKeyList[i].c, KEY_UP); + controlMapper_->pspKey(DEVICE_ID_TOUCH, comboKeyList[i].c, KEY_UP); } } } else if (on_ && pressedFrames_ == 0) { for (int i = 0; i < ARRAY_SIZE(comboKeyList); i++) { if (pspButtonBit_ & (1ULL << i)) { - controllMapper_->pspKey(comboKeyList[i].c, KEY_DOWN); + controlMapper_->pspKey(DEVICE_ID_TOUCH, comboKeyList[i].c, KEY_DOWN); } } pressedFrames_ = 1; @@ -912,7 +912,7 @@ void GestureGamepad::Touch(const TouchInput &input) { const float now = time_now_d(); if (now - lastTapRelease_ < 0.3f && !haveDoubleTapped_) { if (g_Config.iDoubleTapGesture != 0 ) - controllMapper_->pspKey(GestureKey::keyList[g_Config.iDoubleTapGesture-1], KEY_DOWN); + controlMapper_->pspKey(DEVICE_ID_TOUCH, GestureKey::keyList[g_Config.iDoubleTapGesture-1], KEY_DOWN); haveDoubleTapped_ = true; } @@ -935,7 +935,7 @@ void GestureGamepad::Touch(const TouchInput &input) { if (haveDoubleTapped_) { if (g_Config.iDoubleTapGesture != 0) - controllMapper_->pspKey(GestureKey::keyList[g_Config.iDoubleTapGesture-1], KEY_UP); + controlMapper_->pspKey(DEVICE_ID_TOUCH, GestureKey::keyList[g_Config.iDoubleTapGesture-1], KEY_UP); haveDoubleTapped_ = false; } } @@ -948,37 +948,37 @@ void GestureGamepad::Update() { float dy = deltaY_ * g_dpi_scale_y * g_Config.fSwipeSensitivity; if (g_Config.iSwipeRight != 0) { if (dx > th) { - controllMapper_->pspKey(GestureKey::keyList[g_Config.iSwipeRight-1], KEY_DOWN); + controlMapper_->pspKey(DEVICE_ID_TOUCH, GestureKey::keyList[g_Config.iSwipeRight-1], KEY_DOWN); swipeRightReleased_ = false; } else if (!swipeRightReleased_) { - controllMapper_->pspKey(GestureKey::keyList[g_Config.iSwipeRight-1], KEY_UP); + controlMapper_->pspKey(DEVICE_ID_TOUCH, GestureKey::keyList[g_Config.iSwipeRight-1], KEY_UP); swipeRightReleased_ = true; } } if (g_Config.iSwipeLeft != 0) { if (dx < -th) { - controllMapper_->pspKey(GestureKey::keyList[g_Config.iSwipeLeft-1], KEY_DOWN); + controlMapper_->pspKey(DEVICE_ID_TOUCH, GestureKey::keyList[g_Config.iSwipeLeft-1], KEY_DOWN); swipeLeftReleased_ = false; } else if (!swipeLeftReleased_) { - controllMapper_->pspKey(GestureKey::keyList[g_Config.iSwipeLeft-1], KEY_UP); + controlMapper_->pspKey(DEVICE_ID_TOUCH, GestureKey::keyList[g_Config.iSwipeLeft-1], KEY_UP); swipeLeftReleased_ = true; } } if (g_Config.iSwipeUp != 0) { if (dy < -th) { - controllMapper_->pspKey(GestureKey::keyList[g_Config.iSwipeUp-1], KEY_DOWN); + controlMapper_->pspKey(DEVICE_ID_TOUCH, GestureKey::keyList[g_Config.iSwipeUp-1], KEY_DOWN); swipeUpReleased_ = false; } else if (!swipeUpReleased_) { - controllMapper_->pspKey(GestureKey::keyList[g_Config.iSwipeUp-1], KEY_UP); + controlMapper_->pspKey(DEVICE_ID_TOUCH, GestureKey::keyList[g_Config.iSwipeUp-1], KEY_UP); swipeUpReleased_ = true; } } if (g_Config.iSwipeDown != 0) { if (dy > th) { - controllMapper_->pspKey(GestureKey::keyList[g_Config.iSwipeDown-1], KEY_DOWN); + controlMapper_->pspKey(DEVICE_ID_TOUCH, GestureKey::keyList[g_Config.iSwipeDown-1], KEY_DOWN); swipeDownReleased_ = false; } else if (!swipeDownReleased_) { - controllMapper_->pspKey(GestureKey::keyList[g_Config.iSwipeDown-1], KEY_UP); + controlMapper_->pspKey(DEVICE_ID_TOUCH, GestureKey::keyList[g_Config.iSwipeDown-1], KEY_UP); swipeDownReleased_ = true; } } diff --git a/UI/GamepadEmu.h b/UI/GamepadEmu.h index 978425cd4d..bb8da30ea7 100644 --- a/UI/GamepadEmu.h +++ b/UI/GamepadEmu.h @@ -170,7 +170,7 @@ const int baseActionButtonSpacing = 60; class ComboKey : public MultiTouchButton { public: ComboKey(uint64_t pspButtonBit, const char *key, bool toggle, bool repeat, ControlMapper* controllMapper, ImageID bgImg, ImageID bgDownImg, ImageID img, float scale, bool invertedContextDimension, UI::LayoutParams *layoutParams) - : MultiTouchButton(key, bgImg, bgDownImg, img, scale, layoutParams), pspButtonBit_(pspButtonBit), toggle_(toggle), repeat_(repeat), controllMapper_(controllMapper), on_(false), invertedContextDimension_(invertedContextDimension) { + : MultiTouchButton(key, bgImg, bgDownImg, img, scale, layoutParams), pspButtonBit_(pspButtonBit), toggle_(toggle), repeat_(repeat), controlMapper_(controllMapper), on_(false), invertedContextDimension_(invertedContextDimension) { } void Touch(const TouchInput &input) override; void Update() override; @@ -182,14 +182,14 @@ private: bool toggle_; bool repeat_; int pressedFrames_ = 0; - ControlMapper* controllMapper_; + ControlMapper* controlMapper_; bool on_; bool invertedContextDimension_; // Swap width and height }; class GestureGamepad : public UI::View { public: - GestureGamepad(ControlMapper* controllMapper) : controllMapper_(controllMapper) {}; + GestureGamepad(ControlMapper* controllMapper) : controlMapper_(controllMapper) {}; void Touch(const TouchInput &input) override; void Update() override; @@ -208,7 +208,7 @@ protected: bool swipeUpReleased_ = true; bool swipeDownReleased_ = true; bool haveDoubleTapped_ = false; - ControlMapper* controllMapper_; + ControlMapper* controlMapper_; }; // Just edit this to add new image, shape or button function From 287da42d5e6e634431091df84627dd1ea71abd75 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Henrik=20Rydg=C3=A5rd?= Date: Wed, 23 Nov 2022 12:42:44 +0100 Subject: [PATCH 3/3] Add GAS/BRAKE keymappings to Xinput default maps. Fixes #15992 --- Core/KeyMapDefaults.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Core/KeyMapDefaults.cpp b/Core/KeyMapDefaults.cpp index d6d21639cb..8fc2c19a42 100644 --- a/Core/KeyMapDefaults.cpp +++ b/Core/KeyMapDefaults.cpp @@ -128,6 +128,8 @@ static const DefMappingStruct defaultXInputKeyMap[] = { {VIRTKEY_SPEED_TOGGLE, NKCODE_BUTTON_THUMBR}, {VIRTKEY_PAUSE , JOYSTICK_AXIS_LTRIGGER, +1}, {VIRTKEY_PAUSE, NKCODE_HOME}, + {VIRTKEY_FASTFORWARD , JOYSTICK_AXIS_GAS, +1}, + {VIRTKEY_PAUSE , JOYSTICK_AXIS_BRAKE, +1}, }; static const DefMappingStruct defaultShieldKeyMap[] = { @@ -188,6 +190,8 @@ static const DefMappingStruct defaultAndroidXboxControllerMap[] = { {CTRL_RTRIGGER , NKCODE_BUTTON_R1}, {VIRTKEY_FASTFORWARD , JOYSTICK_AXIS_RTRIGGER, +1}, {VIRTKEY_PAUSE , JOYSTICK_AXIS_LTRIGGER, +1}, + {VIRTKEY_FASTFORWARD , JOYSTICK_AXIS_GAS, +1}, + {VIRTKEY_PAUSE , JOYSTICK_AXIS_BRAKE, +1}, {VIRTKEY_AXIS_X_MIN, JOYSTICK_AXIS_X, -1}, {VIRTKEY_AXIS_X_MAX, JOYSTICK_AXIS_X, +1}, {VIRTKEY_AXIS_Y_MIN, JOYSTICK_AXIS_Y, +1}, @@ -242,6 +246,8 @@ static const DefMappingStruct defaultPadMapAndroid[] = { {VIRTKEY_FASTFORWARD , NKCODE_BUTTON_R2}, {VIRTKEY_PAUSE , JOYSTICK_AXIS_LTRIGGER, +1}, {VIRTKEY_PAUSE , NKCODE_BUTTON_L2 }, + {VIRTKEY_FASTFORWARD , JOYSTICK_AXIS_GAS, +1}, + {VIRTKEY_PAUSE , JOYSTICK_AXIS_BRAKE, +1}, {VIRTKEY_AXIS_X_MIN, JOYSTICK_AXIS_X, -1}, {VIRTKEY_AXIS_X_MAX, JOYSTICK_AXIS_X, +1}, {VIRTKEY_AXIS_Y_MIN, JOYSTICK_AXIS_Y, +1},