Commit graph

60 commits

Author SHA1 Message Date
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 13c7cade20 [BROWSEUI]
* This shouldn't have been commited. The browse windows were freezing because it was trying to use the menu from shell32 instead of rshell.

svn path=/branches/shell-experiments/; revision=63533
2014-06-02 13:23:06 +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 7411374268 [BROWSEUI]
* Remove a call that shouldn't even be working in Windows, and was completely unnecessary. Fixes explorer-new navigation history in ReactOS.
* Added some debug traces.
CORE-8173

svn path=/branches/shell-experiments/; revision=63479
2014-05-27 17:55:41 +00:00
David Quintana be04b066aa [RSHELL]
* Close menu on right click too.

[BROWSEUI]
* Check/uncheck the lock toolbar item based on the lock state. The view menu does not update yet.

[SHELL32]
* Destroy the menu when the view window is destroyed.

svn path=/branches/shell-experiments/; revision=63461
2014-05-26 12:26:47 +00:00
David Quintana d5e23caf7a Sync with trunk r63430.
svn path=/branches/shell-experiments/; revision=63433
2014-05-24 20:29:19 +00:00
David Quintana 431b80fa6a [SHELL32]
* Add shell browser bitmaps (toolbar, brand icon, go button). Patch by Robert Naumann (gonzoMD).
CORE-8249 #resolve #comment Commited into shell-experiments. Thanks a lot.

svn path=/branches/shell-experiments/; revision=63432
2014-05-24 20:06:03 +00:00
Christoph von Wittich f83bcc1212 [browseui]
set correct codepage for translations (UTF-8)

svn path=/branches/shell-experiments/; revision=63431
2014-05-24 18:26:15 +00:00
David Quintana fe43858e1e [SHELL32]
* Reuse the same menu instead of recreating it every time something changes. Fixes the menus not showing, but it's not the right way to do it. A better implementation should come later.

[BROWSEUI]
* Add a german version of the toolbar strings, by Christoph von Wittich.

svn path=/branches/shell-experiments/; revision=63426
2014-05-23 21:22:48 +00:00
David Quintana baa587134e [BROWSEUI]
* Load the toolbar iten captions from the re

svn path=/branches/shell-experiments/; revision=63422
2014-05-23 13:09:02 +00:00
David Quintana 0acd44c3d7 [BROWSEUI]
* Also load and use the "hot" toolbar bitmap from shell32.dll, not just the normal one.

svn path=/branches/shell-experiments/; revision=63419
2014-05-22 21:35:23 +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 8c1bafc6f8 [BROWSEUI]
* Fix a couple redundant IFs.
CORE-8248 #resolve #comment Thanks for reporting.

svn path=/branches/shell-experiments/; revision=63381
2014-05-20 09:09:08 +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 564f732c7c [BROWSEUI]
* Implement ParseNow to allow navigating to the current address in the editbox.

[SHELL32]
* Set the focus to the listview if the browser is requesting it.

CORE-7330

svn path=/branches/shell-experiments/; revision=63371
2014-05-19 16:08:30 +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 6600002283 Sync with trunk r63343.
svn path=/branches/shell-experiments/; revision=63351
2014-05-18 12:11:58 +00:00
David Quintana 9d30009eb1 [EXPLORER-NEW]
* Fix handling of taskbar items.
* Filter out the desktop and taskbar from the button list.
* Fixes minimizing from the taskbar in Windows (something else is preventing it from working in ros).

[NTUSER]
* Improve filtering of windows before calling HSHELL_WINDOWCREATED.

[USER32]
* Menus are supposed to be WS_EX_TOOLWINDOW so they don't show up in the taskbar.

[ATL]
[BROWSEUI]
[SHELL32]
* Include ATL aggregation patch by Huw (Frontier) (with Amine's changes).

CORE-8175

svn path=/branches/shell-experiments/; revision=63304
2014-05-15 13:23:06 +00:00
David Quintana 8db8073cbb Sync with trunk r63270.
svn path=/branches/shell-experiments/; revision=63271
2014-05-13 12:11:12 +00:00
David Quintana a607a23a14 [BROWSEUI]
* AddressBand: Create a combobox item to hold the info of the current folder, and keep it selected. This will in the future be improved to show a pseudo-tree including all the parent folders up to the Desktop, with the Desktop and My Computer expanded.
CORE-8220

svn path=/branches/shell-experiments/; revision=63270
2014-05-13 08:53:26 +00:00
David Quintana 6fc740948a [BROWSEUI]
* Fix gcc build.
* Also, undo a change that wasn't as useful as I first thought it would be.
CORE-8183 #resolve #comment Here you go. Thanks for reporting.

svn path=/branches/shell-experiments/; revision=63196
2014-05-08 20:16:06 +00:00
David Quintana 057a69972f Sync with trunk r63174.
CORE-8176 #resolve #comment Trunk commit r63174 should fix this issue. I merged from trunk to bring it into Shell-experiments.

svn path=/branches/shell-experiments/; revision=63175
2014-05-06 15:51: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 8c3a5f9b93 [SHELL32]
* Fix redundant clauses by converting the code to a switch block. Adapted from a patch by Victor Martinez.
CORE-8161 #resolve #comment Fixed in the shell-experiments branch. Thanks.

svn path=/branches/shell-experiments/; revision=63115
2014-05-02 17:27:28 +00:00
David Quintana 62f156f677 [BROWSEUI]
* Do not set the imagelist if the bitmap wasn't loaded.
* Fix the flags that caused the toolbar not to relocate when toggling the lock mode.

svn path=/branches/shell-experiments/; revision=63114
2014-05-02 17:25:19 +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 fb6dcedf18 [RSHELL]
[SHELL32]
* Move the IID_NULL_PPV_ARG macro to the shobj_undoc header, next to the (also ros-specific) IID_PPV_ARG macro, so that it can be used elsewhere.

[SHELL32]
* Make use of IID_NULL_PPV_ARG in all the calls to GetUIObjectOf, and fix one instance of mismatched riid/pointer.

CORE-7330

svn path=/branches/shell-experiments/; revision=63044
2014-04-29 11:14:29 +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
Amine Khaldi 3a088d8ec6 * Sync up to trunk HEAD (r62975).
svn path=/branches/shell-experiments/; revision=62976
2014-04-26 11:31:20 +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 9c589bb131 Sync with trunk r62754.
svn path=/branches/shell-experiments/; revision=62756
2014-04-15 23:01:15 +00:00
David Quintana ad40525f61 [RSHELL]
* Implement WH_MSGFILTER hooking to handle the popup menus from the horizontal menubar. Switching between menu items wby moving the mouse now works, but at the moment, the non-menu popups (including the start menu) are somewhat glitchy.
CORE-7586

svn path=/branches/shell-experiments/; revision=62534
2014-03-19 15:33:41 +00:00
David Quintana 64227df624 Sync with trunk r62529.
svn path=/branches/shell-experiments/; revision=62530
2014-03-18 14:39:04 +00:00
Amine Khaldi f4388e723d * Sync up to trunk HEAD (r62502).
svn path=/branches/shell-experiments/; revision=62503
2014-03-15 14:56:08 +00:00
David Quintana c3ad2419ea [SHELL32]
* Get rid of those dummy menu items.

svn path=/branches/shell-experiments/; revision=62495
2014-03-14 11:45:30 +00:00
David Quintana b948aa332c [RSHELL]
* Fix some null dereferences.
* Fix positioning of submenus of an horizontal menu toolbar.

[BROWSEUI]
* Fix some null dereferences.

CORE-7586

svn path=/branches/shell-experiments/; revision=62492
2014-03-13 16:21:56 +00:00
David Quintana 97ff00f312 [SHELL32]
* Added partial implementation of the IShellFolderView interface to CFolderView. Patch by Ivan Rodionov.
CORE-7976 #resolve #comment Applied to shell-experiments branch. Thanks.

svn path=/branches/shell-experiments/; revision=62489
2014-03-13 12:50:26 +00:00
David Quintana 3e2aafdb95 [SHELL32]
* Use the correct icon for the "My Computer" item. Patch by Robert Naumann. 
CORE-7979 #resolve #comment Applied to shell-experiments branch. Thanks.

svn path=/branches/shell-experiments/; revision=62488
2014-03-13 12:36:48 +00:00
David Quintana 487cfe837d [SHELL32]
* SHGetImageList should not return a duplicated ImageList. In Windows the pointers returned by Shell_GetImageLists match the pointers returned by SHGetImageList for SHIL_SMALL and SHIL_LARGE.

[RSHELL]
* Remove two obsolete debug prints.

svn path=/branches/shell-experiments/; revision=62483
2014-03-12 12:34:44 +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
David Quintana 6f06c27374 [RSHELL]
* Give TrackPopupMenuEx the top-level window. Need to figure out how Windows does this, it probably does not simply use the top-level window that way.
* Give TrackPopupMenuEx better flags and a better exclude rect.
CORE-7586

svn path=/branches/shell-experiments/; revision=62469
2014-03-10 12:01:37 +00:00
David Quintana 51b0371f34 [EXPLORER]
* Rename the output to explorer_old

[EXPLORER-NEW]
* Rename the output to explorer
* Launch a browseui window when explorer is run with an existing shell process.

Shell-experiments will now be running the new shell by default.
This allows me to test the shell classes under more accurate conditions, so I was using it locally for a while.
I decided to commit because of two reasons:
1. It was making me temporarily revert some changes done to some files when I wanted to commit, and
2. It lets everyone see the results of the shell-experiments project without having to mess with the task manager.

Keep in mind that, as the branch name implies, it STILL is an experiment.

CORE-7586

svn path=/branches/shell-experiments/; revision=62449
2014-03-07 22:39:49 +00:00
David Quintana 2ca6b95aeb [BROWSEUI]
* Load and use rshell for the menubar.
* Properly forward WM_NOTIFY and WM_COMMAND messages to the toolbars.

[RSHELL]
* Improve behaviour of horizontal menubands.
* Clicking on submenu items does not work yet.

CORE-7586

svn path=/branches/shell-experiments/; revision=62448
2014-03-07 22:28:55 +00:00
David Quintana 42bdf3b30f [COMCTL32]
* Make horizontal separators of vertical toolbars draw.
* Apply the same padding to separators as the rest of the buttons.
* Fixup some tabs into spaces, for consistency.
* Needs to be sent to wine.

svn path=/branches/shell-experiments/; revision=62426
2014-03-05 11:48:55 +00:00