Commit graph

84 commits

Author SHA1 Message Date
Amine Khaldi 8b3a691a5b [SHELL]
* Mark _ILGetExtension and _ILGetFileType as EXTERN_C.
* __inline before return type.
* Some tiny style consistency fixes.

svn path=/branches/shell-experiments/; revision=65216
2014-11-03 12:13:40 +00:00
Amine Khaldi 7328a488fa [SHELL]
* __inline before return type.

svn path=/branches/shell-experiments/; revision=65215
2014-11-03 12:10:23 +00:00
Amine Khaldi 86f440a776 [SHELL32]
* Allow shdebugstr_guid() to be used from C code too.
* Move shellole.cpp to the wine folder.
* Rename shellole.cpp to shellole.c.
* Sync shellole.c with Wine 1.7.27.
CORE-8540

svn path=/branches/shell-experiments/; revision=65213
2014-11-03 10:52:20 +00:00
Giannis Adamopoulos 2aefa1130a [SHELL32]
- Add shell32.cpp and move there CShell32Module, DllGetVersion, DllMain, DllCanUnloadNow, DllGetClassObject, DllRegisterServer, DllUnregisterServer, DllInstall, IDefClFImpl, IDefClF_fnConstructor and SHCreateDefClassObject
- Now shell32_main.cpp and shellole.cpp have code that can be converted back to C and synced to wine

svn path=/branches/shell-experiments/; revision=65212
2014-11-03 10:38:21 +00:00
Giannis Adamopoulos ee9f3746cc [SHELL32]
- Move SHGetDesktopFolder to desktop.cpp

svn path=/branches/shell-experiments/; revision=65211
2014-11-03 10:12:24 +00:00
Giannis Adamopoulos 89af2b02ad [SHELL32]
- Remove an old todo file that described the things that were implemented in the shell-experiments branch

svn path=/branches/shell-experiments/; revision=65208
2014-11-02 23:50:54 +00:00
Giannis Adamopoulos 855e2e5a66 [SHELL32]
- Move shellstring.c to a new folder called wine. More files should be moved there eventually.

svn path=/branches/shell-experiments/; revision=65207
2014-11-02 23:41:24 +00:00
Giannis Adamopoulos 5c14d148e1 [SHELL32]
- Move files that implement dialogs and property sheets in dialogs folder

svn path=/branches/shell-experiments/; revision=65206
2014-11-02 23:30:48 +00:00
Giannis Adamopoulos 544bb81e8f [SHELL32]
- Remove authors.cpp

svn path=/branches/shell-experiments/; revision=65201
2014-11-02 22:52:49 +00:00
David Quintana 3da5418d3f [RSHELL]
[STOBJECT]
* Some nitpicking.

[SHELL32]
* Fix missing null-termination by using proper string literals.

svn path=/branches/shell-experiments/; revision=65194
2014-11-02 20:17:23 +00:00
David Quintana 3b5e160482 [SHELL32]
* Fix GCC build.

svn path=/branches/shell-experiments/; revision=65193
2014-11-02 20:13:56 +00:00
Giannis Adamopoulos a099e6c7a2 [SHELL32]
- Remove lots of typecasts in CDefView
- Use strict typed itemids

svn path=/branches/shell-experiments/; revision=65185
2014-11-02 17:49:28 +00:00
Amine Khaldi c472e29a70 * Sync up to trunk head (r65183).
svn path=/branches/shell-experiments/; revision=65184
2014-11-02 16:12:38 +00:00
Amine Khaldi 611a14d331 [SHELL32]
* Fix GCC build.

svn path=/branches/shell-experiments/; revision=65180
2014-11-02 11:16:37 +00:00
Giannis Adamopoulos b8c49d0520 [SHELL32]
- Add an evil header that is going to simplify our C++ code in the shell a lot
- Use the new CListView in the implementation of CDefView to make it more readable and maintainable

svn path=/branches/shell-experiments/; revision=65176
2014-11-02 00:26:22 +00:00
Giannis Adamopoulos f48774515c [SHELL32]
- Do not release the pointer to the ShellView that was just created 
- Fixes a crash when showing the Printers shell folder

svn path=/branches/shell-experiments/; revision=65160
2014-10-31 22:30:21 +00:00
Amine Khaldi 6581292e05 * Sync up to trunk head (r65147).
svn path=/branches/shell-experiments/; revision=65148
2014-10-31 15:27:51 +00:00
Giannis Adamopoulos 5273a84a3f [SHELL32]
- Return a readable folder name when SHGDN_FORADDRESSBAR was specified
- We no longer show GUIDs in the address bar 

svn path=/branches/shell-experiments/; revision=65072
2014-10-28 15:07:31 +00:00
Giannis Adamopoulos c199f8be2e [SHELL32]
- Properly check for error in CDefaultContextMenu::DoCreateLink

svn path=/branches/shell-experiments/; revision=65064
2014-10-28 00:58:19 +00:00
Giannis Adamopoulos afb6acc945 [SHELL32]
- Rewrite the monstrosity that was supposed to open control panel items. Still not really correct but works.

svn path=/branches/shell-experiments/; revision=65051
2014-10-27 18:26:09 +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 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 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
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 e052b025f2 [SHELL32]
* Fix another comment.
* Fix a cch/cb bug.
* Make use of the DSA_DestroyCallback function instead of messing around with the internals of the DSA.
CORE-8564

svn path=/branches/shell-experiments/; revision=64646
2014-10-09 12:54:29 +00:00
David Quintana bd7fc320f2 Note to self: Flush mind before committing.
svn path=/branches/shell-experiments/; revision=64631
2014-10-09 00:13:05 +00:00
David Quintana 4adeeffd92 [SHELL32]
* Rewrite SHFileOperationA using human-readable code.
CORE-8564

svn path=/branches/shell-experiments/; revision=64630
2014-10-09 00:10:20 +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 257a0de098 [MSGINA]
[SHELL32]
 * Implement shell shutdown using a proper shutdown dialog. Patch by Lee Schroeder with a small change to fix MSVC build.
CORE-7559 #comment Commited into shell-experiments branch r64403. 

svn path=/branches/shell-experiments/; revision=64403
2014-09-29 20:14:21 +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
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
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 4c1828ea4b Sync with trunk r63935.
svn path=/branches/shell-experiments/; revision=63939
2014-08-24 15:10:11 +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 e9c5285a7c [SHELL32]
* Unbreak context menus.

svn path=/branches/shell-experiments/; revision=63911
2014-08-20 15:39:13 +00:00
David Quintana 117eba9bd5 [SHELL32]
* Another batch of interface pointers converted to CComPtr.

svn path=/branches/shell-experiments/; revision=63909
2014-08-20 12:25:09 +00:00
David Quintana ef04ff090e [SHELL32]
* Stop using the C defines LPSHELLFOLDER, LPSHELLVIEW and LPUNKNOWN, and use the respective C++ interfaces instead.
* Change one batch of COM interface pointers into CComPtr-based pointers, and remove associated Release calls (including at least one that was not supposed to be there at all).
* Remove a couple (repeated multiple times) pointless casts.

svn path=/branches/shell-experiments/; revision=63908
2014-08-20 00:39:40 +00:00
David Quintana a5ce7500a1 [SHELL32]
* Giannis found another similar case of double-releasing.

svn path=/branches/shell-experiments/; revision=63907
2014-08-19 22:30:12 +00:00
David Quintana f7ee35aba7 [SHELL32]
* Fix a CComPtr double-release.

svn path=/branches/shell-experiments/; revision=63906
2014-08-19 22:25:40 +00:00
David Quintana 9ea7e65b5b [BROWSEUI]
[SHELL32]
* Fix accelerator handling.
* Disallow accelerators if renaming.

svn path=/branches/shell-experiments/; revision=63905
2014-08-19 21:30:04 +00:00
David Quintana 1fefb70fd0 [SHELL32]
* Remove an obsolete hack that would only cause leaks now.

svn path=/branches/shell-experiments/; revision=63892
2014-08-15 10:59:23 +00:00
David Quintana b77b9b9b7d Sync with trunk r63887.
svn path=/branches/shell-experiments/; revision=63888
2014-08-14 23:55:08 +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 6f51eb4048 [SHELL32]
* Make non-desktop shell views always show selections (even while unfocused).

svn path=/branches/shell-experiments/; revision=63869
2014-08-11 22:06:12 +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 c3558fc84a [SHELL32]
* Populate edit and view menu on first activation. TODO: enable/disable edit menu items in OnInitMenuPopup.
* Add Edit menu to resources (en-US only, other langs TODO)
* Repurpose BuildFileMenu to build the menu for the selection. This needs improvements as it uses all the items from the context menu at the moment.
* Add items to the File menu when shown.

svn path=/branches/shell-experiments/; revision=63836
2014-08-07 15:21:24 +00:00
David Quintana a4bc6818ab [SHELL32]
* Improve the view menu handler a bit. Now the view menu properly marks the current view as expected.

svn path=/branches/shell-experiments/; revision=63811
2014-08-05 01:15:41 +00:00
David Quintana d13da089e5 [BROWSEUI]
* Find the menu index so that the forwarded WM_INITMENUPOPUP has all the info shell32 needs.

[SHELL32]
* Begin implementing dynamic menu editing, which is used by the shell views in order to change, add or remove items from the filebrowser menus. Some menu items may be temporarily lost until this is finished.

svn path=/branches/shell-experiments/; revision=63809
2014-08-04 21:19:22 +00:00