mirror of
https://github.com/ClassiCube/ClassiCube.git
synced 2025-09-19 04:26:52 -04:00
Fixed key handling
This commit is contained in:
parent
7d1fe56fd2
commit
a3d042c094
@ -1637,23 +1637,23 @@ cc_result Audio_SetFormat(struct AudioContext* ctx, int channels, int sampleRate
|
|||||||
APIRET rc;
|
APIRET rc;
|
||||||
|
|
||||||
ksWanted.usDeviceIndex = 0;
|
ksWanted.usDeviceIndex = 0;
|
||||||
ksWanted.ulType = KAIT_PLAY;
|
ksWanted.ulType = KAIT_PLAY;
|
||||||
ksWanted.ulBitsPerSample = 16;
|
ksWanted.ulBitsPerSample = 16;
|
||||||
ksWanted.ulSamplingRate = Audio_AdjustSampleRate(sampleRate, playbackRate);
|
ksWanted.ulSamplingRate = Audio_AdjustSampleRate(sampleRate, playbackRate);
|
||||||
ksWanted.ulDataFormat = 0;
|
ksWanted.ulDataFormat = 0;
|
||||||
ksWanted.ulChannels = channels;
|
ksWanted.ulChannels = channels;
|
||||||
ksWanted.ulNumBuffers = 0;
|
ksWanted.ulNumBuffers = 0;
|
||||||
ksWanted.ulBufferSize = 0;
|
ksWanted.ulBufferSize = 0;
|
||||||
ksWanted.fShareable = TRUE;
|
ksWanted.fShareable = TRUE;
|
||||||
ksWanted.pfnCallBack = kaiCallback;
|
ksWanted.pfnCallBack = kaiCallback;
|
||||||
ksWanted.pCallBackData = (PVOID)ctx;
|
ksWanted.pCallBackData = (PVOID)ctx;
|
||||||
|
|
||||||
rc = kaiOpen(&ksWanted, &ksObtained, &ctx->hkai);
|
rc = kaiOpen(&ksWanted, &ksObtained, &ctx->hkai);
|
||||||
if (rc != KAIE_NO_ERROR) {
|
if (rc != KAIE_NO_ERROR) {
|
||||||
Logger_SimpleWarn(ERROR_BASE, "Kai: Could not open playback");
|
Logger_SimpleWarn(ERROR_BASE, "Kai: Could not open playback");
|
||||||
ctx->hkai = 0;
|
ctx->hkai = 0;
|
||||||
return rc;
|
return rc;
|
||||||
}
|
}
|
||||||
|
|
||||||
kaiSetSoundState(ctx->hkai, MCI_SET_AUDIO_ALL, true);
|
kaiSetSoundState(ctx->hkai, MCI_SET_AUDIO_ALL, true);
|
||||||
return 0;
|
return 0;
|
||||||
|
@ -81,7 +81,7 @@ static void MapKeys(MPARAM mp1, MPARAM mp2) {
|
|||||||
};
|
};
|
||||||
|
|
||||||
if ((ulFlags & KC_CHAR) != 0 && (ulFlags & KC_KEYUP) == 0) {
|
if ((ulFlags & KC_CHAR) != 0 && (ulFlags & KC_KEYUP) == 0) {
|
||||||
if (WinQueryCapture(HWND_DESKTOP) != hwndClient) {
|
if (WinQueryCapture(HWND_DESKTOP) != hwndClient) { // Mouse isn't captured
|
||||||
char c;
|
char c;
|
||||||
if (Convert_TryCodepointToCP437(ulCharCode, &c)) {
|
if (Convert_TryCodepointToCP437(ulCharCode, &c)) {
|
||||||
Event_RaiseInt(&InputEvents.Press, c);
|
Event_RaiseInt(&InputEvents.Press, c);
|
||||||
@ -89,10 +89,10 @@ static void MapKeys(MPARAM mp1, MPARAM mp2) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
Input_Set(ulCharCode, (ulFlags & KC_KEYUP) == 0);
|
Input_Set(ulCharCode, 0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if ((ulFlags & KC_SCANCODE) != 0) {
|
if ((ulFlags & KC_SCANCODE) != 0 && ulScanCode < sizeof(aScancode)/sizeof(int)) {
|
||||||
Input_Set(aScancode[ulScanCode], (ulFlags & KC_KEYUP) == 0);
|
Input_Set(aScancode[ulScanCode], (ulFlags & KC_KEYUP) == 0);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user