Author: gadamopoulos Date: Tue Feb 11 14:06:26 2014 New Revision: 62118
URL: http://svn.reactos.org/svn/reactos?rev=62118&view=rev Log: - Improve filebrowser a bit and add some FIXMEs to show what should be done later
Modified: branches/shell-experiments/base/shell/filebrowser/filebrowser.c branches/shell-experiments/base/shell/rshell/CDesktopBrowser.cpp branches/shell-experiments/base/shell/rshell/CStartMenu.cpp
Modified: branches/shell-experiments/base/shell/filebrowser/filebrowser.c URL: http://svn.reactos.org/svn/reactos/branches/shell-experiments/base/shell/fil... ============================================================================== --- branches/shell-experiments/base/shell/filebrowser/filebrowser.c [iso-8859-1] (original) +++ branches/shell-experiments/base/shell/filebrowser/filebrowser.c [iso-8859-1] Tue Feb 11 14:06:26 2014 @@ -37,7 +37,8 @@ SHOpenNewFrame((LPITEMIDLIST)pidlDrives, NULL, 0, 0); }
- Sleep(3000); + /* FIXME: we should wait a bit here and see if a window was created. If not we should exit this process */ + ExitThread(0);
return 0; }
Modified: branches/shell-experiments/base/shell/rshell/CDesktopBrowser.cpp URL: http://svn.reactos.org/svn/reactos/branches/shell-experiments/base/shell/rsh... ============================================================================== --- branches/shell-experiments/base/shell/rshell/CDesktopBrowser.cpp [iso-8859-1] (original) +++ branches/shell-experiments/base/shell/rshell/CDesktopBrowser.cpp [iso-8859-1] Tue Feb 11 14:06:26 2014 @@ -269,19 +269,9 @@
HRESULT STDMETHODCALLTYPE CDesktopBrowser::BrowseObject(LPCITEMIDLIST pidl, UINT wFlags) { - /* - * We should use IShellWindows interface here in order to attempt to - * find an open shell window that shows the requested pidl and activate it - */ - -#if 0 - HMODULE hBrowseui = LoadLibraryW(L"browseui.dll"); - if (hBrowseui) - { - SH_OPEN_NEW_FRAME SHOpenNewFrame = (SH_OPEN_NEW_FRAME)GetProcAddress(hBrowseui, (LPCSTR)103); - return SHOpenNewFrame((LPITEMIDLIST)pidl, NULL, 0, 0); - } -#endif + /* FIXME: Implement executing filebrowser.exe and somehow pass the pidl to it */ + + /* Returning failure here will make windows 7 and 8 to use the default file browser */ return E_FAIL; }
Modified: branches/shell-experiments/base/shell/rshell/CStartMenu.cpp URL: http://svn.reactos.org/svn/reactos/branches/shell-experiments/base/shell/rsh... ============================================================================== --- branches/shell-experiments/base/shell/rshell/CStartMenu.cpp [iso-8859-1] (original) +++ branches/shell-experiments/base/shell/rshell/CStartMenu.cpp [iso-8859-1] Tue Feb 11 14:06:26 2014 @@ -300,6 +300,9 @@ if (FAILED(hr)) return NULL;
+ /* FIXME: Use CLSID_MergedFolder class and IID_IAugmentedShellFolder2 interface here */ + /* CLSID_MergedFolder 26fdc864-be88-46e7-9235-032d8ea5162e */ + /* IID_IAugmentedShellFolder2 8db3b3f4-6cfe-11d1-8ae9-00c04fd918d0 */ hr = SHGetFolderLocation(NULL, CSIDL_STARTMENU, 0, 0, &pidlStartMenu); hr = SHGetDesktopFolder(&shellFolder); hr = shellFolder->BindToObject(pidlStartMenu, NULL, IID_IShellFolder, (void**)&psfStartMenu);