szBuf,
sizeof(szBuf) / sizeof(TCHAR)) == 0)
{
- lstrcpy(szBuf, _T("??\0"));
+ lstrcpy(szBuf, _T("??"));
}
hdcsrc = GetDC(NULL);
tnid.uCallbackMessage = WM_NOTIFYICONMSG;
tnid.hIcon = CreateTrayIcon(szLCID);
- lstrcpyn(tnid.szTip, szName, sizeof(tnid.szTip));
+ lstrcpyn(tnid.szTip, szName, sizeof(tnid.szTip) / sizeof(TCHAR));
Shell_NotifyIcon(NIM_ADD, &tnid);
}
tnid.uCallbackMessage = WM_NOTIFYICONMSG;
tnid.hIcon = CreateTrayIcon(szLCID);
- lstrcpyn(tnid.szTip, szName, sizeof(tnid.szTip));
+ lstrcpyn(tnid.szTip, szName, sizeof(tnid.szTip) / sizeof(TCHAR));
Shell_NotifyIcon(NIM_MODIFY, &tnid);
}
{
static HMENU hRightPopupMenu;
static TCHAR szLCID[MAX_PATH], szLangName[MAX_PATH];
+ static UINT s_uTaskbarRestart;
switch (Message)
{
hRightPopupMenu = GetSubMenu(LoadMenu(hInst, MAKEINTRESOURCE(IDR_POPUP)), 0);
ActivateLayout(hwnd, ulCurrentLayoutNum);
+ s_uTaskbarRestart = RegisterWindowMessage(TEXT("TaskbarCreated"));
return 0;
}
case WM_NOTIFYICONMSG:
switch (lParam)
{
- case WM_RBUTTONDOWN:
- case WM_LBUTTONDOWN:
+ case WM_RBUTTONUP:
+ case WM_LBUTTONUP:
{
POINT pt;
GetCursorPos(&pt);
SetForegroundWindow(hwnd);
- if (lParam == WM_LBUTTONDOWN)
+ if (lParam == WM_LBUTTONUP)
{
HMENU hLeftPopupMenu;
-
/* Rebuild the left popup menu on every click to take care of keyboard layout changes */
hLeftPopupMenu = BuildLeftPopupMenu();
TrackPopupMenu(hLeftPopupMenu, 0, pt.x, pt.y, 0, hwnd, NULL);
return 0;
}
+
+ default:
+ if(Message == s_uTaskbarRestart)
+ AddTrayIcon(hwnd);
+ break;
}
return DefWindowProc(hwnd, Message, wParam, lParam);
MSG msg;
HANDLE hMutex;
+ switch (GetUserDefaultUILanguage())
+ {
+ case MAKELANGID(LANG_HEBREW, SUBLANG_DEFAULT):
+ SetProcessDefaultLayout(LAYOUT_RTL);
+ break;
+ default:
+ break;
+ }
+
hMutex = CreateMutex(NULL, FALSE, szKbSwitcherName);
if (!hMutex)
return 1;
hProcessHeap = GetProcessHeap();
WndClass.style = 0;
- WndClass.lpfnWndProc = (WNDPROC)WndProc;
+ WndClass.lpfnWndProc = WndProc;
WndClass.cbClsExtra = 0;
WndClass.cbWndExtra = 0;
WndClass.hInstance = hInstance;