* Source/win32/WIN32Server.m: Have non-key, non-main windows

that order front not become active.  Also don't bring windows
  that are ordering out to the foreground first.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/back/trunk@30142 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
Jonathan Gillaspie 2010-04-13 19:11:40 +00:00
parent 3a58a7e30b
commit 8c4d1d251e
2 changed files with 23 additions and 5 deletions

View file

@ -1,3 +1,9 @@
2010-04-14 Jonathan Gillaspie <jonathan.gillaspie@testplant.com>
* Source/win32/WIN32Server.m: Have non-key, non-main windows
that order front not become active. Also don't bring windows
that are ordering out to the foreground first.
2010-03-25 Fred Kiefer <FredKiefer@gmx.de>
* Source/art/ftfont.m,

View file

@ -1011,6 +1011,7 @@ LRESULT CALLBACK MainWndProc(HWND hwnd, UINT uMsg,
int foreground = 0;
int otherLevel;
int level;
NSWindow *window = GSWindowWithNumber(winNum);
NSDebugLLog(@"WTrace", @"orderwindow: %d : %d : %d", op, otherWin, winNum);
@ -1036,11 +1037,6 @@ LRESULT CALLBACK MainWndProc(HWND hwnd, UINT uMsg,
}
}
flag = SW_SHOW;
if (IsIconic((HWND)winNum))
flag = SW_RESTORE;
ShowWindow((HWND)winNum, flag);
if (op == NSWindowOut)
{
SetWindowLong((HWND)winNum, OFF_ORDERED, 0);
@ -1048,6 +1044,22 @@ LRESULT CALLBACK MainWndProc(HWND hwnd, UINT uMsg,
SWP_HIDEWINDOW | SWP_NOSIZE | SWP_NOMOVE | SWP_NOZORDER);
return;
}
if (![window canBecomeMainWindow] && ![window canBecomeKeyWindow])
{ // Bring front, but do not activate, eg - tooltips
flag = SW_SHOWNA;
ShowWindow((HWND)winNum, flag);
}
else
{
flag = SW_SHOW;
if (IsIconic((HWND)winNum))
flag = SW_RESTORE;
ShowWindow((HWND)winNum, flag);
}
SetWindowLong((HWND)winNum, OFF_ORDERED, 1);
level = GetWindowLong((HWND)winNum, OFF_LEVEL);