Commit graph

33 commits

Author SHA1 Message Date
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
David Quintana 247aff1fe6 [BROWSEUI]
* Fix opening folder windows on desktop process.

svn path=/branches/shell-experiments/; revision=64580
2014-10-07 20:23:52 +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 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 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 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 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 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
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 e33dc4351a [RSHELL]
* Turn off spammy log.
* A small themeing tweak for the menubar.

[BROWSEUI]
* Turn off spammy log.
* A small tweak to a function.

svn path=/branches/shell-experiments/; revision=63620
2014-06-19 23:14:39 +00:00
David Quintana 7ddd2648be [RSHELL]
* Use the debugging class to track COM refcounting of the CMenuBand.
* CMenuSite: Remove an useless line.

[BROWSEUI]
* Refactor the CreateMenuBar method in an attempt to figure out a seemingly magic crash with VS2010 (not yet solved).
* Begin fixing some unused-but-set warnings.

[SHELL32]
* Fix some small bugs spotted by Victor.

svn path=/branches/shell-experiments/; revision=63546
2014-06-07 13:54:11 +00:00
David Quintana 9f33eab100 [BROWSEUI]
* Make failure codes print themselves. Helps debug.

svn path=/branches/shell-experiments/; revision=63541
2014-06-04 18:08:35 +00:00
David Quintana 72aa759dd4 [SHELL32]
* Fix gcc compilation.

[BROWSEUI/RSHELL]
* Use virtual destructors and cleanup with delete in the creator functions.
* Try to fix a bit the "close" flow, so that less circular references remain when the filebrowser windows are closed.

svn path=/branches/shell-experiments/; revision=63539
2014-06-04 16:25:48 +00:00
David Quintana 580b89e9b6 [BROWSEUI]
* Plug a few menu leaks. In Windows, it brings down the leaked menus from 20 per navigation, to only 1-2. In ReactOS, from 60 to 20.

[RSHELL,SHELL32]
* Code tweaks that shouldn't change the actual behaviour.

svn path=/branches/shell-experiments/; revision=63537
2014-06-03 01:04:19 +00:00
David Quintana 52fc0bf57d [BROWSEUI]
* Fix gcc build.

svn path=/branches/shell-experiments/; revision=63536
2014-06-02 21:37:26 +00:00
David Quintana 3a54fd538b [BROWSEUI/RSHELL]
* Begin fixing the process of destroying the related objects when closing the window, so that eventually the filebrowser/explorer process will properly exit cleanly when no more windows are open.

svn path=/branches/shell-experiments/; revision=63535
2014-06-02 21:35:32 +00:00
David Quintana 9793ab272f [SHELL32]
* The CDefView should not process the backspace key directly. It's already handled by the accelerators.

[BROWSEUI]
* Allow the docked toolbars to translate accelerators.
* CAddressEditBox: Cancel accelerators without modifiers while focused.

[RSHELL]
* Cancel accelerators while a popup is open, and ignore them otherwise.

svn path=/branches/shell-experiments/; revision=63504
2014-05-30 18:00:31 +00:00
David Quintana acd03fd182 Sync with trunk r63502.
svn path=/branches/shell-experiments/; revision=63503
2014-05-30 17:56:10 +00:00
David Quintana d36426f9c0 [BROWSEUI]
* Keep the call to TranslateAcceleratorSB within the shell browser, since it appears the windows CDefView does not call it.
* "Hackplement" the backspace key as being the same as the "go up one level" menu item. This does not seem to be exactly true in Windows, but it does the job.

svn path=/branches/shell-experiments/; revision=63415
2014-05-22 19:13:15 +00:00
David Quintana 2defe4fed2 [BROWSEUI]
* Improve the message loop to allow processing of accelerators.

[SHELL32]
* Return the accelerator to the shell browser if the view doesn't handle it.

svn path=/branches/shell-experiments/; revision=63397
2014-05-21 11:38:29 +00:00
David Quintana 033b716da1 [BROWSEUI]
* Do not swap the big and small imagelist pointers. Fixes the explorer windows not having an icon in the taskbar.
Note: the underlying issue preventing the taskbar from showing a 32x32 icon in the buttons still exists, so other apps with the same behaviour will still fail to draw.

svn path=/branches/shell-experiments/; revision=63383
2014-05-20 12:32:38 +00:00
David Quintana 24010ffd80 [BROWSEUI]
* Moved some code from ParseNow into Execute, pending future improvements to the code flow.

svn path=/branches/shell-experiments/; revision=63378
2014-05-19 21:55:09 +00:00
David Quintana 9276b066c7 [BROWSEUI]
* Disable the brandband again, since it doesn't look right in ros.
* Fix the browse window styles so that it can properly open with system-provided default size.
* Change the default view mode of the file list to Icons.
CORE-7330

svn path=/branches/shell-experiments/; revision=63370
2014-05-19 12:05:24 +00:00
David Quintana 6005af09db [BROWSEUI]
* Begin implementing resizing of the rebar.
* Begin implementing the addressbar function. For now, the current folder path is displayed. No icon, no parsing support, no combo dropdown list.
CORE-8173

svn path=/branches/shell-experiments/; revision=63156
2014-05-04 13:57:23 +00:00
David Quintana dcc7bb6c0d [RSHELL]
* I forgot a cast and a couple IID_PPV_ARG uncommited.

[BROWSEUI]
* Fixed rebar flags to match windows. Adds the missing border around the toolbars.
* Fix some calculations of the rebar size.
* Fetch the icon of the current folder and assign it to the browse window.

CORE-7330

svn path=/branches/shell-experiments/; revision=63103
2014-05-02 11:58:07 +00:00
David Quintana 8221f567e0 [BROWSEUI]
[SHELL32]
* Make use of IID_PPV_ARG (part 2).

svn path=/branches/shell-experiments/; revision=63040
2014-04-28 21:59:02 +00:00
David Quintana 0c144205d5 [BROWSEUI]
* Make use of the IID_PPV_ARG for typesafe interface return pointers, and a few other cosmetic changes.
CORE-7330

svn path=/branches/shell-experiments/; revision=63033
2014-04-28 15:29:38 +00:00
David Quintana 60334b103a [BROWSEUI]
* Reenable the brand box on file browser windows.
* Fix an invalid usage of a null HWND.
* Implement size calculation of the standard toolbar.
CORE-7330

svn path=/branches/shell-experiments/; revision=62961
2014-04-25 10:44:36 +00:00
David Quintana 683375abdb [RSHELL]
* Fix reusing the same toolbar when SetMenu is called multiple times.
* Avoid some null dereferences.

[BROWSEUI]
* Temporarily (?) disable the logo band.

The browser window's "coolbar" and menubar now display and work properly in both Windows and ReactOS.

CORE-7586

svn path=/branches/shell-experiments/; revision=62472
2014-03-11 10:42:25 +00:00
Giannis Adamopoulos 239867bdd1 [browseui]
- Add a tiny hack in browseui that allows it to browse properly when the user tries to open a folder in win8

svn path=/branches/shell-experiments/; revision=62082
2014-02-09 21:32:07 +00:00
Amine Khaldi 527f2f9057 [SHELL/EXPERIMENTS]
* Create a branch for some evul shell experiments.

svn path=/branches/shell-experiments/; revision=61927
2014-02-02 19:37:27 +00:00
Renamed from reactos/dll/win32/browseui/shellbrowser.cpp (Browse further)