diff --git a/2.x/trunk/ProcessHacker/mainwnd.c b/2.x/trunk/ProcessHacker/mainwnd.c index 49df6bf8e..b3375c19b 100644 --- a/2.x/trunk/ProcessHacker/mainwnd.c +++ b/2.x/trunk/ProcessHacker/mainwnd.c @@ -3975,11 +3975,17 @@ static BOOL CALLBACK EnumProcessWindowsProc( ) { ULONG processId; + HWND parentWindow; + + if (!IsWindowVisible(hwnd)) + return TRUE; GetWindowThreadProcessId(hwnd, &processId); if ( - processId == (ULONG)lParam + processId == (ULONG)lParam && + !((parentWindow = GetParent(hwnd)) && IsWindowVisible(parentWindow)) && // skip windows with a visible parent + GetWindowTextLength(hwnd) != 0 ) { SelectedProcessWindowHandle = hwnd;