- Removed initialization of sh32_policy_table in SHInitRestricted,

because it's already statically initialized.
- Removed calling of SHInitRestricted(NULL, NULL) from DllMain because
  it does nothing in this case now.
- Added support for flags FWF_DESKTOP, FWF_NOCLIENTEDGE,
  FWF_TRANSPARENT in ShellView.
- Fixed small bug in setting SysTray window class hbrBackground.
oldstable
Filip Navara 2003-10-24 04:23:37 +00:00 committed by Alexandre Julliard
parent 88de9ef068
commit d8bd18e639
4 changed files with 15 additions and 13 deletions

View File

@ -1002,7 +1002,6 @@ BOOL WINAPI DllMain(HINSTANCE hinstDLL, DWORD fdwReason, LPVOID fImpLoad)
SIC_Initialize(); SIC_Initialize();
SYSTRAY_Init(); SYSTRAY_Init();
InitChangeNotifications(); InitChangeNotifications();
SHInitRestricted(NULL, NULL);
break; break;
case DLL_PROCESS_DETACH: case DLL_PROCESS_DETACH:

View File

@ -273,12 +273,13 @@ static void SetStyle(IShellViewImpl * This, DWORD dwAdd, DWORD dwRemove)
* - creates the list view window * - creates the list view window
*/ */
static BOOL ShellView_CreateList (IShellViewImpl * This) static BOOL ShellView_CreateList (IShellViewImpl * This)
{ DWORD dwStyle; { DWORD dwStyle, dwExStyle;
TRACE("%p\n",This); TRACE("%p\n",This);
dwStyle = WS_TABSTOP | WS_VISIBLE | WS_CHILDWINDOW | WS_CLIPSIBLINGS | WS_CLIPCHILDREN | dwStyle = WS_TABSTOP | WS_VISIBLE | WS_CHILDWINDOW | WS_CLIPSIBLINGS | WS_CLIPCHILDREN |
LVS_SHAREIMAGELISTS | LVS_EDITLABELS | LVS_ALIGNLEFT | LVS_AUTOARRANGE; LVS_SHAREIMAGELISTS | LVS_EDITLABELS | LVS_ALIGNLEFT | LVS_AUTOARRANGE;
dwExStyle = WS_EX_CLIENTEDGE;
switch (This->FolderSettings.ViewMode) switch (This->FolderSettings.ViewMode)
{ {
@ -290,10 +291,13 @@ static BOOL ShellView_CreateList (IShellViewImpl * This)
} }
if (This->FolderSettings.fFlags & FWF_AUTOARRANGE) dwStyle |= LVS_AUTOARRANGE; if (This->FolderSettings.fFlags & FWF_AUTOARRANGE) dwStyle |= LVS_AUTOARRANGE;
/*if (This->FolderSettings.fFlags && FWF_DESKTOP); used from explorer*/ if (This->FolderSettings.fFlags & FWF_DESKTOP)
This->FolderSettings.fFlags |= FWF_NOCLIENTEDGE | FWF_NOSCROLL;
if (This->FolderSettings.fFlags & FWF_SINGLESEL) dwStyle |= LVS_SINGLESEL; if (This->FolderSettings.fFlags & FWF_SINGLESEL) dwStyle |= LVS_SINGLESEL;
if (This->FolderSettings.fFlags & FWF_NOCLIENTEDGE)
dwExStyle &= ~WS_EX_CLIENTEDGE;
This->hWndList=CreateWindowExA( WS_EX_CLIENTEDGE, This->hWndList=CreateWindowExA( dwExStyle,
WC_LISTVIEWA, WC_LISTVIEWA,
NULL, NULL,
dwStyle, dwStyle,
@ -1448,6 +1452,12 @@ static LRESULT CALLBACK ShellView_WndProc(HWND hWnd, UINT uMessage, WPARAM wPara
} }
SHChangeNotifyDeregister(pThis->hNotify); SHChangeNotifyDeregister(pThis->hNotify);
break; break;
case WM_ERASEBKGND:
if ((pThis->FolderSettings.fFlags & FWF_DESKTOP) ||
(pThis->FolderSettings.fFlags & FWF_TRANSPARENT))
return 1;
break;
} }
return DefWindowProcA (hWnd, uMessage, wParam, lParam); return DefWindowProcA (hWnd, uMessage, wParam, lParam);

View File

@ -882,8 +882,6 @@ DWORD WINAPI SHRestricted (RESTRICTIONS policy)
*/ */
BOOL WINAPI SHInitRestricted(LPCVOID unused, LPCVOID inpRegKey) BOOL WINAPI SHInitRestricted(LPCVOID unused, LPCVOID inpRegKey)
{ {
LPPOLICYDATA p;
TRACE("(%p, %p)\n", unused, inpRegKey); TRACE("(%p, %p)\n", unused, inpRegKey);
/* first check - if input is non-NULL and points to the secret /* first check - if input is non-NULL and points to the secret
@ -907,10 +905,5 @@ BOOL WINAPI SHInitRestricted(LPCVOID unused, LPCVOID inpRegKey)
} }
} }
/* check passed, init all policy cache entries with SHELL_NO_POLICY */ return TRUE;
for (p = sh32_policy_table; p->policy; p++)
{
p->cache = SHELL_NO_POLICY;
}
return SHELL_NO_POLICY;
} }

View File

@ -169,7 +169,7 @@ BOOL SYSTRAY_RegisterClass(void)
wc.hInstance = 0; wc.hInstance = 0;
wc.hIcon = 0; wc.hIcon = 0;
wc.hCursor = LoadCursorA(0, (LPSTR)IDC_ARROW); wc.hCursor = LoadCursorA(0, (LPSTR)IDC_ARROW);
wc.hbrBackground = (HBRUSH)(COLOR_WINDOW); wc.hbrBackground = (HBRUSH)(COLOR_WINDOW + 1);
wc.lpszMenuName = NULL; wc.lpszMenuName = NULL;
wc.lpszClassName = "WineSystray"; wc.lpszClassName = "WineSystray";