diff --git a/Windows/PPSSPP.vcxproj b/Windows/PPSSPP.vcxproj
index dc9b68a136..3e71c89480 100644
--- a/Windows/PPSSPP.vcxproj
+++ b/Windows/PPSSPP.vcxproj
@@ -318,6 +318,7 @@
+
diff --git a/Windows/PPSSPP.vcxproj.filters b/Windows/PPSSPP.vcxproj.filters
index 0a68a7ed76..12832db0f3 100644
--- a/Windows/PPSSPP.vcxproj.filters
+++ b/Windows/PPSSPP.vcxproj.filters
@@ -201,6 +201,7 @@
Windows
+
diff --git a/Windows/WndMainWindow.cpp b/Windows/WndMainWindow.cpp
index 084495c251..7d44d08320 100644
--- a/Windows/WndMainWindow.cpp
+++ b/Windows/WndMainWindow.cpp
@@ -913,8 +913,30 @@ namespace MainWindow
W32Util::CenterWindow(hDlg);
{
// TODO: connect to keyboard device instead
- if (!hbm)
- hbm = LoadImageFromResource(hInst, MAKEINTRESOURCE(IDB_IMAGE_PSP), "IMAGE");
+ {
+ HBITMAP hResBM = LoadImageFromResource(hInst, MAKEINTRESOURCE(IDB_IMAGE_PSP), "IMAGE");
+ HDC hDC = GetDC(hDlg);
+ RECT clientRect;
+ GetClientRect(hDlg, &clientRect);
+ HBITMAP hMemBM = CreateCompatibleBitmap(hDC, clientRect.right, clientRect.bottom);
+ HDC hResDC = CreateCompatibleDC(hDC);
+ HDC hMemDC = CreateCompatibleDC(hDC);
+ SelectObject(hResDC, hResBM);
+ SelectObject(hMemDC, hMemBM);
+
+ BITMAP bm;
+ GetObject(hResBM, sizeof(BITMAP), &bm);
+ SetStretchBltMode(hMemDC, HALFTONE);
+ StretchBlt(hMemDC, 0, 0, clientRect.right, clientRect.bottom, hResDC, 0, 0, bm.bmWidth, bm.bmHeight, SRCCOPY);
+ if (hbm)
+ DeleteObject(hbm);
+ hbm = hMemBM;
+
+ DeleteDC(hMemDC);
+ DeleteDC(hResDC);
+ ReleaseDC(hDlg, hDC);
+ DeleteObject(hResBM);
+ }
int key_pad_size = (IDC_EDIT_KEYRIGHT - IDC_EDIT_KEY_TURBO + 1);
for (u32 i = 0; i <= IDC_EDIT_KEY_ANALOG_RIGHT - IDC_EDIT_KEY_TURBO; i++) {
HWND hEdit = GetDlgItem(hDlg, IDC_EDIT_KEY_TURBO + i);
@@ -935,7 +957,7 @@ namespace MainWindow
{
ComboBox_SetCurSel(GetDlgItem(hDlg, IDC_FORCE_INPUT_DEVICE), (g_Config.iForceInputDevice + 1));
}
- DWORD dwThreadID = GetWindowThreadProcessId(hDlg,NULL);
+ DWORD dwThreadID = GetWindowThreadProcessId(hDlg, NULL);
pKeydownHook = SetWindowsHookEx(WH_KEYBOARD,KeyboardProc, NULL, dwThreadID);
}
return TRUE;
diff --git a/Windows/ppsspp.rc b/Windows/ppsspp.rc
index fa0111f3df..1e7f8d07a9 100644
Binary files a/Windows/ppsspp.rc and b/Windows/ppsspp.rc differ