From: Steven P. <bj...@us...> - 2010-03-25 00:33:30
|
Update of /cvsroot/virtuawin In directory sfp-cvsdas-3.v30.ch3.sourceforge.com:/tmp/cvs-serv11381 Modified Files: DiskRoutines.c SetupDialog.c VirtuaWin.c Log Message: 2976228 Allowed up to 5sec for the taskbar to become available before complaining to the user Index: SetupDialog.c =================================================================== RCS file: /cvsroot/virtuawin/SetupDialog.c,v retrieving revision 1.88 retrieving revision 1.89 diff -u -d -r1.88 -r1.89 --- SetupDialog.c 13 Mar 2010 02:54:46 -0000 1.88 +++ SetupDialog.c 25 Mar 2010 00:33:22 -0000 1.89 @@ -952,7 +952,7 @@ SendDlgItemMessage(hDlg, IDC_INVERTY, BM_SETCHECK, 1,0); if(!displayTaskbarIcon) SendDlgItemMessage(hDlg, IDC_DISPLAYICON, BM_SETCHECK, 1,0); - if(!noTaskbarCheck) + if((noTaskbarCheck & 0x01) == 0) SendDlgItemMessage(hDlg, IDC_TASKBARDETECT, BM_SETCHECK, 1,0); if(vwHookUse) SendDlgItemMessage(hDlg, IDC_USEVWHOOK, BM_SETCHECK, 1,0); Index: VirtuaWin.c =================================================================== RCS file: /cvsroot/virtuawin/VirtuaWin.c,v retrieving revision 1.182 retrieving revision 1.183 diff -u -d -r1.182 -r1.183 --- VirtuaWin.c 15 Mar 2010 14:52:26 -0000 1.182 +++ VirtuaWin.c 25 Mar 2010 00:33:22 -0000 1.183 @@ -851,7 +851,7 @@ deskIconHWnd = FindWindowEx(deskIconHWnd, NULL, _T("SysListView32"), _T("FolderView")) ; deskThread = GetWindowThreadProcessId(deskIconHWnd,NULL) ; taskbarBCType = vwTASKBAR_BC_NONE ; - if(!noTaskbarCheck) + if((noTaskbarCheck & 0x01) == 0) { HWND hwndTray = FindWindowEx(NULL, NULL,_T("Shell_TrayWnd"), NULL); HWND hwndBar = FindWindowEx(hwndTray, NULL,_T("ReBarWindow32"), NULL ); @@ -863,7 +863,13 @@ taskHWnd = FindWindowEx(hwndBar, NULL,_T("MSTaskSwWClass"), NULL); if(taskHWnd == NULL) - MessageBox(hWnd,_T("Could not locate handle to the taskbar.\n This will disable the ability to hide troublesome windows correctly."),vwVIRTUAWIN_NAME _T(" Error"), 0); + { + if(noTaskbarCheck == 0) + { + MessageBox(hWnd,_T("Could not locate handle to the taskbar.\n This will disable the ability to hide troublesome windows correctly."),vwVIRTUAWIN_NAME _T(" Error"), 0); + noTaskbarCheck = 2 ; + } + } else if(preserveZOrder > 2) { if((hwndBar = FindWindowEx(taskHWnd,0,_T("SysTabControl32"),0)) != NULL) @@ -2330,6 +2336,9 @@ vwWindow *win ; int ii, hungCount ; + if((taskHWnd == NULL) && (noTaskbarCheck == 0) && (timerCounter >= 20)) + vwTaskbarHandleGet() ; + vwMutexLock(); timerCounter++ ; if((timerCounter == 2) && taskbarBCType && useDynButtonRm) @@ -4982,6 +4991,11 @@ /* make sure this is not called twice! */ KillTimer(hWnd,0x29a); + + /* register message for explorer/systray crash restart (>=IE4) & taskbar window button manipulation */ + RM_TaskbarCreated = RegisterWindowMessage(_T("TaskbarCreated")); + RM_Shellhook = RegisterWindowMessage(_T("SHELLHOOK")); + vwHookSetup(); vwHotkeyRegister(1); vwIconSet(currentDesk,0) ; @@ -4989,10 +5003,6 @@ getWorkArea(); vwTaskbarHandleGet(); - /* register message for explorer/systray crash restart (>=IE4) & taskbar window button manipulation */ - RM_TaskbarCreated = RegisterWindowMessage(_T("TaskbarCreated")); - RM_Shellhook = RegisterWindowMessage(_T("SHELLHOOK")); - /* Create the thread responsible for mouse monitoring */ mouseThread = CreateThread(NULL, 0, (LPTHREAD_START_ROUTINE) vwMouseProc, NULL, 0, &threadID); mouseEnabled = TRUE; Index: DiskRoutines.c =================================================================== RCS file: /cvsroot/virtuawin/DiskRoutines.c,v retrieving revision 1.64 retrieving revision 1.65 diff -u -d -r1.64 -r1.65 --- DiskRoutines.c 13 Mar 2010 02:21:04 -0000 1.64 +++ DiskRoutines.c 25 Mar 2010 00:33:22 -0000 1.65 @@ -800,7 +800,7 @@ fprintf(fp, "releaseFocus# %d\n", releaseFocus); fprintf(fp, "refreshOnWarp# %d\n", refreshOnWarp); fprintf(fp, "invertY# %d\n", invertY); - fprintf(fp, "noTaskbarCheck# %d\n", noTaskbarCheck); + fprintf(fp, "noTaskbarCheck# %d\n", noTaskbarCheck & 0x01); fprintf(fp, "displayTaskbarIcon# %d\n", displayTaskbarIcon); fprintf(fp, "logFlag# %d\n", vwLogFlag); fprintf(fp, "winMenuCompact# %d\n", winMenuCompact); |