Commit graph

188 commits

Author SHA1 Message Date
David Quintana dc1da96ab8 [RSHELL]
* Fix some small things that were getting in the way of fixing the start menu (which was broken and no one noticed). The actual fix will come tomorrow since my brain is about to implode at this time.

svn path=/branches/shell-experiments/; revision=65065
2014-10-28 01:27:02 +00:00
Amine Khaldi 23298ac30c * Sync up to trunk head (r64995).
svn path=/branches/shell-experiments/; revision=64996
2014-10-25 19:46:12 +00:00
David Quintana d07a1dc09a [EXPLORER-NEW]
* Fix HMENU leak.

[BROWSEUI]
* Work around for WM_SETICON not properly returning the old HICON.

[SHELL32]
* Fix HICON leak.
* Nitpick.

[WIN32K]
* Do not refcount the menus improperly.

svn path=/branches/shell-experiments/; revision=64986
2014-10-25 15:44:11 +00:00
David Quintana fa016aa3a8 [RSHELL]
* Fix HMENU leak in menu-based shell popups (and menubar).

svn path=/branches/shell-experiments/; revision=64960
2014-10-24 16:03:58 +00:00
Amine Khaldi 8039ce5b7d * Sync up to trunk head (r64939).
svn path=/branches/shell-experiments/; revision=64941
2014-10-23 19:52:45 +00:00
David Quintana ac06c3cf99 [BROWSEUI]
* Fix icon leak of the returned old icon from WM_SETICON.

[RSHELL]
* Add two debug prints (not hit).

[FILEBROWSER]
[EXPLORER-NEW]
* Free PWSTR pointers after exiting.

svn path=/branches/shell-experiments/; revision=64940
2014-10-23 19:50:29 +00:00
David Quintana 1cd79168e1 [RSHELL]
* CMenuBand: Increase the refcount of m_smc before returning it.
* CMenuBand: Improve the closing logic so that the object is reusable when it needs to be, and can still be released properly.
* CMenuDeskBar: Protect self against unexpected termination.
* CMenuFocusManager: Refcount objects that are being used.
* CStartMenu: Properly release the created objects after it's done using them (by using CComPtr instead of raw pointers).

[BROWSEUI]
* AddressBand: Release the addressband site when closing the band.
* InternetToolbar: Do not filter away ALL the items of the favorites folder.
* InternetToolbar: Do not AddRef a CComPtr that already did the refcounting itself.

CORE-8690

svn path=/branches/shell-experiments/; revision=64929
2014-10-23 17:17:16 +00:00
Amine Khaldi 121e60dbda * Sync up to trunk head (r64921).
svn path=/branches/shell-experiments/; revision=64922
2014-10-23 12:17:44 +00:00
Amine Khaldi 06e986393a * Sync up to trunk head (r64894).
svn path=/branches/shell-experiments/; revision=64895
2014-10-22 17:07:43 +00:00
David Quintana 9abc368186 [EXPLORER-NEW]
* Cleanup in case of error. CID 1248426

[RSHELL]
* Add uninitialized class fields. CID 1248477
* Avoid leaking memory. CID 1248438

[BROWSEUI]
* Fix potential overwriting of a variable. CID 716363
* Save the rshell handle instead of loading it every time. CID 1248435
* Fix leaked PIDL. CID 1248418 

[SHELL32]
* Fix GCC build. And one small nickpick that has been bothering me for a long time.

svn path=/branches/shell-experiments/; revision=64864
2014-10-21 12:24:15 +00:00
David Quintana 96cdae0a7c [BROWSEUI]
* SHOnCWMCommandLine: Fix IETHREADPARAM leak.

[SHELL32]
* Fix HMENU leak of the popup used in the view mode button of the toolbar.

[RSHELL]
* Undo a previous change to help debug the leaks.
* Remove child submenus when closing a menu band.
* Add some extra verification for debugging purposes. 

[BROWSEUI]
[RSHELL]
[SHELL32]
* Move ReleaseCComPtrExpectZero to the shared header.

svn path=/branches/shell-experiments/; revision=64858
2014-10-20 21:35:22 +00:00
David Quintana b138a8620d [EXPLORER-NEW]
* Initialize struct contents to zero. CID 1102492

[BROWSEUI]
* Fix build.

svn path=/branches/shell-experiments/; revision=64857
2014-10-20 21:23:32 +00:00
David Quintana fd029c9779 [RSHELL]
[SHELL32]
[BROWSEUI]
* Move undocshell.h to a shared location, and move some shared utility functions into it.
* Replace all the COM object constructor functions with generic equivalents.
* Fixes a big bunch of "problems" found by Coverity Scan, but I don't have the list of CID at the moment.

svn path=/branches/shell-experiments/; revision=64854
2014-10-20 21:09:55 +00:00
Amine Khaldi 609ba8d717 * Sync up to trunk head (r64829).
svn path=/branches/shell-experiments/; revision=64830
2014-10-19 18:45:40 +00:00
David Quintana 11bbfc4a0b [RSHELL]
* Actually send an OnSelect message right before executing the menu items. Fixes the problem where going to start->shutdown would keep the start menu open in the background.

svn path=/branches/shell-experiments/; revision=64727
2014-10-13 16:09:57 +00:00
Amine Khaldi 87f3265217 * Sync up to trunk head (r64716).
svn path=/branches/shell-experiments/; revision=64718
2014-10-13 12:23:44 +00:00
David Quintana 13c5c447a2 [RSHELL]
[BROWSEUI]
* Add some traces

[SHELL32]
* Implement displaying the View popup from the toolbar. 

svn path=/branches/shell-experiments/; revision=64596
2014-10-08 15:25:52 +00:00
David Quintana 1147974a95 [RSHELL]
* Work around shellexecute not handling GUID path components by giving them to explorer as a cmdline parameter.
* NOTE: The Printers and Faxes option is temporarily disabled because it CRASHES explorer-new.

svn path=/branches/shell-experiments/; revision=64579
2014-10-07 14:45:32 +00:00
David Quintana d9f777ce1c [FILEBROWSER]
* Always open separate.

[BROWSEUI]
* Use the threadref IUnknown for reference counting in the browser threads.

svn path=/branches/shell-experiments/; revision=64578
2014-10-07 14:40:33 +00:00
David Quintana db5b0c31c4 Sync with trunk r64509.
svn path=/branches/shell-experiments/; revision=64510
2014-10-03 19:20:19 +00:00
David Quintana 6aaa167a00 [RSHELL]
* Implement skeleton shell dde parser.

[SHELL32]
* Copy over the skeleton from rshell, and fill in the handlers for ViewFolder and ExploreFolder, with rudimentary implementations.

CORE-7552

svn path=/branches/shell-experiments/; revision=64395
2014-09-29 16:22:21 +00:00
Amine Khaldi 42040abadc * Sync up to trunk head (r64377).
svn path=/branches/shell-experiments/; revision=64380
2014-09-28 20:18:27 +00:00
Amine Khaldi 840c5ea8f7 [FILEBROWSER]
* Fix build.

svn path=/branches/shell-experiments/; revision=64377
2014-09-28 19:18:34 +00:00
David Quintana 1e44d47830 [BROWSEUI]
* Implement SHCreateFromDesktop and supporting functions, and move those implementations to their own file.

[SHELL32]
* Handle message 1035 from the desktop window.

[SHLWAPI]
* Fix a bug in SHAllocShared, where source and destination parameters were reversed.

[EXPLORER-NEW]
* Use SHCreateFromDesktop to open the new window.

NOTE: There appears to be some more problems with the SH*Shared implementation, beyond the swapped parameters, which prevent the opening of the new windows. These functions will have to be revised and the corrected implementation sent to WINE.

svn path=/branches/shell-experiments/; revision=64314
2014-09-26 14:47:07 +00:00
David Quintana 1bc1185f8a Sync with trunk r64222.
svn path=/branches/shell-experiments/; revision=64225
2014-09-22 12:51:09 +00:00
Amine Khaldi 18a81d5d1e [SHELL-EXPERIMENTS]
* Sync up to trunk head (r64124).

svn path=/branches/shell-experiments/; revision=64126
2014-09-12 19:21:19 +00:00
David Quintana 9c947e10d2 [EXPLORER-NEW]
* Fix GCC build

svn path=/branches/shell-experiments/; revision=64125
2014-09-12 12:44:28 +00:00
David Quintana e70e3650ed [EXPLORER-NEW]
* <+smiley1_> could you please create a subroutine for that?

svn path=/branches/shell-experiments/; revision=64109
2014-09-10 17:26:47 +00:00
David Quintana f6f5fd7017 [EXPLORER-NEW]
* Implement Taskbar auto-hide. The setting dialog does not work, though, so in order to enable it you need to change the StuckRects2 registry key so that the Settings value has the right bit set to 1 (or import from a Windows installation).

svn path=/branches/shell-experiments/; revision=64089
2014-09-09 14:58:38 +00:00
David Quintana f14740e5e5 [EXPLORER-NEW]
* CMakeLists.txt: tabs to spaces

svn path=/branches/shell-experiments/; revision=64084
2014-09-08 14:04:49 +00:00
David Quintana 7ba3245a29 [PSDK]
* Make shlwapi_undoc.h compatible with C code.

[EXPLORER-NEW]
* Link with browseui.
* Use SHOpenNewFrame linked from browseui instead of explicitly loaded.
* Make use of SHExplorerParseCmdLine. Does not yet open windows in an existing process when used through commandline.

svn path=/branches/shell-experiments/; revision=64083
2014-09-08 13:09:19 +00:00
David Quintana 4c1828ea4b Sync with trunk r63935.
svn path=/branches/shell-experiments/; revision=63939
2014-08-24 15:10:11 +00:00
David Quintana 2a5013a68f [EXPLORER-NEW]
* Turn a couple DbgPrints into ERR.

svn path=/branches/shell-experiments/; revision=63935
2014-08-24 14:06:41 +00:00
David Quintana 2351bdda50 [RSHELL]
* Add a shell DDE skeleton, based on shell32's DDE stubs.

svn path=/branches/shell-experiments/; revision=63934
2014-08-24 14:04:42 +00:00
David Quintana 6ebc10fb3c [EXPLORER-NEW]
* Make use of the wine debug functions and turn DbgPrints into TRACE/WARN/ERR.

[SHELL32]
* Turn some DbgPrints into TRACEs.

svn path=/branches/shell-experiments/; revision=63912
2014-08-20 16:19:00 +00:00
David Quintana 810048d98e Sync with trunk r63878.
svn path=/branches/shell-experiments/; revision=63879
2014-08-13 18:16:14 +00:00
David Quintana 930d7fff14 [BROWSEUI]
* Fix usage of outdated CMergedFolder to use the proper interface.

svn path=/branches/shell-experiments/; revision=63847
2014-08-09 15:56:05 +00:00
David Quintana a2cfa8dc58 * Sync to trunk r63845.
svn path=/branches/shell-experiments/; revision=63846
2014-08-09 14:15:16 +00:00
David Quintana 34a27346de Sync with trunk r63786.
svn path=/branches/shell-experiments/; revision=63788
2014-07-31 00:57:14 +00:00
David Quintana cd1e4d2911 [STOBJECT]
* Improve code organization. 
* Add some debug prints.
* Fix some nits.

svn path=/branches/shell-experiments/; revision=63787
2014-07-30 22:08:05 +00:00
David Quintana e5ac3d04eb [STOBJECT]
* Create skeleton for the SysTray shell service object DLL. No tray icons are created yet.
* Tranks Robert Naumann for providing the icon resources, and some file templates.

svn path=/branches/shell-experiments/; revision=63732
2014-07-23 18:00:36 +00:00
David Quintana c3479eb2b2 [RSHELL]
* the Programs menu is localized. Obtain it the right way.

svn path=/branches/shell-experiments/; revision=63711
2014-07-12 12:40:50 +00:00
David Quintana 88f0fb5a47 [RSHELL]
* Notify the parent menu popup when the deskbar is closing.

[EXPLORER-NEW]
* Set the button pressed when the start menu gets displayed.
* Set the button released when the start menu notifies it was closed.

svn path=/branches/shell-experiments/; revision=63710
2014-07-12 02:43:06 +00:00
David Quintana e1b309d6de [RSHELL]
* Really fix GCC build.

svn path=/branches/shell-experiments/; revision=63709
2014-07-10 19:16:21 +00:00
David Quintana eb28ee17c8 [RSHELL]
* Use the IAugmentedShellFolder methods instead of the old constructor.

[SHELL32]
* Fix gcc compilation.

svn path=/branches/shell-experiments/; revision=63708
2014-07-10 17:17:36 +00:00
David Quintana 791ee3e755 [RSHELL]
* Filter out the Programs item from the top list.

svn path=/branches/shell-experiments/; revision=63704
2014-07-09 23:37:02 +00:00
David Quintana 9804a12eff [RSHELL]
* Now that CMergedFolder works, try to make it more like windows.
* CMergedFolder: Declare and expose the undocumented IAugmentedShellFolder2 (all methods unimplemented yet). It will require major changes to the way I implemented it, but it will be for the best.
* CStartMenu: Make use of the real CMergedFolder in Windows 2003 (does not exist in win7).

svn path=/branches/shell-experiments/; revision=63703
2014-07-09 23:05:37 +00:00
David Quintana 0ffe346179 [RSHELL]
* CFocusManager: Try to fix some weird behaviour.
* CMergedFolder: Downgrade some prints to TRACEs, and implement a couple methods needed by some debugging code.
* Activate merged folders by default. TODO: implement the filtering of the "Programs" submenu, and use it for the real Programs menu item.

[SHELL32]
* defcontextmenu.cpp: Make a copy of the apidl array before storing it for later, since it may be a pointer to the stack which may not be available later. Fixes the merged folders not working on clicks and context menu.
* shlmenu.cpp: While debugging, I made Shell_MergeMenus closer to WINE's.

svn path=/branches/shell-experiments/; revision=63702
2014-07-09 00:42:05 +00:00
David Quintana 2ac4637056 [EXPLORER-NEW]
* Revert debugging change that shouldn't have been commited.
* Implement rudimentary tooltip support for tray icons. Does not yet work exactly like the windows does it.

svn path=/branches/shell-experiments/; revision=63685
2014-07-05 02:13:37 +00:00
David Quintana ca65a75bf4 [EXPLORER-NEW]
* Fix a typo that broke tray notify icons.
* Implement loading of Shell Service Objects. Works in win2003 but no idea if it works in ros since we don't have any SSO implemented yet ;P

svn path=/branches/shell-experiments/; revision=63684
2014-07-05 00:35:43 +00:00