mirror of
https://github.com/joncampbell123/dosbox-x.git
synced 2025-10-14 19:08:32 +08:00
fix system menu in Windows SDL1 builds
This commit is contained in:
@@ -146,8 +146,10 @@
|
|||||||
- Fixed "FILES" always fixed to 200 as reported by
|
- Fixed "FILES" always fixed to 200 as reported by
|
||||||
the "DOSINFO" tool, in spite of "files" setting in
|
the "DOSINFO" tool, in spite of "files" setting in
|
||||||
[config] section of the config file. (Wengier)
|
[config] section of the config file. (Wengier)
|
||||||
- Refined the handling of international keyboards
|
- Refined the handling of international keyboards and
|
||||||
especially for SDL1 builds. (maron2000)
|
fixed some issues in version 0.83.15. (maron2000)
|
||||||
|
- Fixed menu options in system menu not working in
|
||||||
|
Windows SDL1 builds with "windib" driver. (Wengier)
|
||||||
- Fixed issue that the mouse cursor not showing in
|
- Fixed issue that the mouse cursor not showing in
|
||||||
the game "Power Dolls". (Wengier)
|
the game "Power Dolls". (Wengier)
|
||||||
- Fixed non-English accents may not show correctly
|
- Fixed non-English accents may not show correctly
|
||||||
|
@@ -401,21 +401,7 @@ LRESULT DIB_HandleMessage(_THIS, HWND hwnd, UINT msg, WPARAM wParam, LPARAM lPar
|
|||||||
TranslateKey(wParam,HIWORD(lParam),&keysym,0));
|
TranslateKey(wParam,HIWORD(lParam),&keysym,0));
|
||||||
}
|
}
|
||||||
return(0);
|
return(0);
|
||||||
#if defined(SC_SCREENSAVE) && defined(SC_MONITORPOWER)
|
#if defined(ENABLE_IM_EVENT)
|
||||||
case WM_SYSCOMMAND: {
|
|
||||||
const DWORD val = (DWORD) (wParam & 0xFFF0);
|
|
||||||
if ((val == SC_SCREENSAVE) || (val == SC_MONITORPOWER)) {
|
|
||||||
if (this->hidden->dibInfo && !allow_screensaver) {
|
|
||||||
/* Note that this doesn't stop anything on Vista
|
|
||||||
if the screensaver has a password. */
|
|
||||||
return(0);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
/* Fall through to default processing */
|
|
||||||
#endif /* SC_SCREENSAVE && SC_MONITORPOWER */
|
|
||||||
|
|
||||||
#ifdef ENABLE_IM_EVENT
|
|
||||||
case WM_INPUTLANGCHANGE:
|
case WM_INPUTLANGCHANGE:
|
||||||
SendMessage(hwnd, WM_IME_NOTIFY, wParam, lParam);
|
SendMessage(hwnd, WM_IME_NOTIFY, wParam, lParam);
|
||||||
FLIP_BREAK;
|
FLIP_BREAK;
|
||||||
@@ -470,6 +456,19 @@ LRESULT DIB_HandleMessage(_THIS, HWND hwnd, UINT msg, WPARAM wParam, LPARAM lPar
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
#endif
|
#endif
|
||||||
|
#if defined(SC_SCREENSAVE) && defined(SC_MONITORPOWER)
|
||||||
|
case WM_SYSCOMMAND: {
|
||||||
|
const DWORD val = (DWORD) (wParam & 0xFFF0);
|
||||||
|
if ((val == SC_SCREENSAVE) || (val == SC_MONITORPOWER)) {
|
||||||
|
if (this->hidden->dibInfo && !allow_screensaver) {
|
||||||
|
/* Note that this doesn't stop anything on Vista
|
||||||
|
if the screensaver has a password. */
|
||||||
|
return(0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/* Fall through to default processing */
|
||||||
|
#endif /* SC_SCREENSAVE && SC_MONITORPOWER */
|
||||||
default: {
|
default: {
|
||||||
/* Only post the event if we're watching for it */
|
/* Only post the event if we're watching for it */
|
||||||
if (SDL_ProcessEvents[SDL_SYSWMEVENT] == SDL_ENABLE) {
|
if (SDL_ProcessEvents[SDL_SYSWMEVENT] == SDL_ENABLE) {
|
||||||
|
Reference in New Issue
Block a user