explorer.exe: Create the top-level message window along with the desktop window.
This commit is contained in:
parent
6b36e2131d
commit
966cf7c86e
|
@ -230,8 +230,9 @@ static void set_desktop_window_title( HWND hwnd, const WCHAR *name )
|
|||
void manage_desktop( WCHAR *arg )
|
||||
{
|
||||
static const WCHAR defaultW[] = {'D','e','f','a','u','l','t',0};
|
||||
static const WCHAR messageW[] = {'M','e','s','s','a','g','e',0};
|
||||
MSG msg;
|
||||
HWND hwnd;
|
||||
HWND hwnd, msg_hwnd;
|
||||
unsigned long xwin = 0;
|
||||
unsigned int width, height;
|
||||
WCHAR *cmdline = NULL;
|
||||
|
@ -293,6 +294,11 @@ void manage_desktop( WCHAR *arg )
|
|||
GetSystemMetrics(SM_XVIRTUALSCREEN), GetSystemMetrics(SM_YVIRTUALSCREEN),
|
||||
GetSystemMetrics(SM_CXVIRTUALSCREEN), GetSystemMetrics(SM_CYVIRTUALSCREEN),
|
||||
0, 0, 0, NULL );
|
||||
|
||||
/* create the HWND_MESSAGE parent */
|
||||
msg_hwnd = CreateWindowExW( 0, messageW, NULL, WS_POPUP | WS_CLIPSIBLINGS | WS_CLIPCHILDREN,
|
||||
0, 0, 100, 100, 0, 0, 0, NULL );
|
||||
|
||||
if (hwnd == GetDesktopWindow())
|
||||
{
|
||||
SetWindowLongPtrW( hwnd, GWLP_WNDPROC, (LONG_PTR)desktop_wnd_proc );
|
||||
|
@ -309,6 +315,8 @@ void manage_desktop( WCHAR *arg )
|
|||
hwnd = 0;
|
||||
}
|
||||
|
||||
if (GetAncestor( msg_hwnd, GA_PARENT )) DestroyWindow( msg_hwnd ); /* someone beat us to it */
|
||||
|
||||
/* if we have a command line, execute it */
|
||||
if (cmdline)
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue