Commit graph

55985 commits

Author SHA1 Message Date
David Quintana edfdf34624 [RSHELL]
* CMenuBand: Fix display of icons for the static toolbar.
* CMenuDeskBar: Fix positioning of the window not to cross the top edge.
CORE-7881

svn path=/branches/shell-experiments/; revision=62242
2014-02-18 11:17:37 +00:00
David Quintana 662d8363c3 [RSHELL]
* CMenuBand: Fix submenu creation for shell folder menus.
CORE-7881

svn path=/branches/shell-experiments/; revision=62240
2014-02-18 11:05:20 +00:00
David Quintana 2b63295fea [RSHELL]
* Change C-style casts to static_cast where possible, and reinterpret_cast elsewhere.
* Make coding style and formatting more consistent.

svn path=/branches/shell-experiments/; revision=62239
2014-02-18 10:26:50 +00:00
Giannis Adamopoulos 46e9b4d1e3 [rshell]
- CStartMenu: add a test flag that makes the start menu show its submenus using SMIF_TRACKPOPUP in order to show how CMenuBand can use TrackPopupMenu 

svn path=/branches/shell-experiments/; revision=62238
2014-02-18 09:18:16 +00:00
David Quintana b42655951c [RSHELL]
* CMenuBand: Begin implementing submenus for shell items.
* CMenuBand: Begin implementing context menus.
CORE-7881

svn path=/branches/shell-experiments/; revision=62232
2014-02-17 18:38:31 +00:00
David Quintana d5f6a80f41 [RSHELL]
* CMenuBand: Improve the code structure.
 * Make the class selection better managed.
Thanks Giannis.
CORE-7881

svn path=/branches/shell-experiments/; revision=62231
2014-02-17 17:16:55 +00:00
David Quintana 3aaf437172 [RSHELL]
* CMenuBand: Implement PopupItem for static menus.
 * CMenuDeskBar: Initialize m_Banner.
 * CStartMenu: Create CSubMenu_Constructor function that creates submenus (needs a better name/location).
 * Misc. code style changes.
CORE-7881

svn path=/branches/shell-experiments/; revision=62228
2014-02-17 16:41:10 +00:00
David Quintana d28d1bb1df [RSHELL]
* CMenuDeskBar: Use the proper value for style in AdjustWindowRect.
* CMenuBand: Implement submenu hot-tracking timer. Not functional yet (submenu creation not implemented).
CORE-7881

svn path=/branches/shell-experiments/; revision=62227
2014-02-17 15:38:55 +00:00
David Quintana b71085bcc2 [RSHELL]
* CMenuBand: Handle WM_COMMAND and run SMC_EXEC for static menu items (Run, Shutdown).
CORE-7881

svn path=/branches/shell-experiments/; revision=62226
2014-02-17 11:20:35 +00:00
Giannis Adamopoulos d29f9dcfef [RSHELL]
- CMenuDeskBar: Implement showing a shadow. Implement closing the menu when it loses focus (this only works with the stock menu band for now)

svn path=/branches/shell-experiments/; revision=62225
2014-02-17 10:42:52 +00:00
Giannis Adamopoulos dc404583fd [rshell]
- CMenuBand: Fix the size of the separators by setting iBitmap to 0 (which acts as the width of the separator).
- CMenuDeskBar: 
Create the window only in CMenuDeskBar::SetClient and not in SetSite. 
Greatly simplify SetSite. 
Make sure that WS_EX_TOPMOST isn't removed when we call SetWindowPos
Do not forward requests for the SID_SMenuPopup service to the taskbar as this causes the menu band to capture the mouse for the taskbar and not the desk bar

svn path=/branches/shell-experiments/; revision=62223
2014-02-16 21:53:21 +00:00
David Quintana 9a1d783d54 [RSHELL]
* CMenuBand: Bring the style closer to a menu.

svn path=/branches/shell-experiments/; revision=62214
2014-02-16 12:48:41 +00:00
David Quintana 60df5bae60 [RSHELL]
* CMenuDeskBar: Improve code style, and implement some more methods.

svn path=/branches/shell-experiments/; revision=62213
2014-02-16 12:48:29 +00:00
David Quintana e325d1372e [RSHELL]
* CMenuSite: Improve code style.

svn path=/branches/shell-experiments/; revision=62212
2014-02-16 12:48:09 +00:00
David Quintana c57c04a7c2 [RSHELL]
* A couple small fixes before I go to bed.
* Add to CD, so explorer_new can be run in ros, with the custom classes.
CORE-7886

svn path=/branches/shell-experiments/; revision=62156
2014-02-13 23:49:19 +00:00
David Quintana c486aa0a00 [RSHELL]
* Add more missing code. The custom CMenuDeskBand is now able to show the contents of a CMenuSite/CMenuBand in the right size, including the banner (not yet fully functional).
* Organize the method list in CMenuSite by interface.

[EXPLORER-NEW]
* Revert the hacks from r62134.

[PSDK]
* Add IUnknown_QueryServiceExec to shlwapi_undoc.h

svn path=/branches/shell-experiments/; revision=62149
2014-02-13 20:16:30 +00:00
David Quintana 3bb9ee7f77 [RSHELL]
* Port the implementation of CMenuDeskBar to rshell (still disabled by default).
* Begin implementing missing features:
 - Notify the band of the icon size change from SetIconSize.

svn path=/branches/shell-experiments/; revision=62138
2014-02-12 19:46:24 +00:00
David Quintana edd5a38091 [MPLAY32]
* Remove from build while it hangs VS2013.

[EXPLORER-NEW]
* Hack it to work on Windows 7, even if an existing explorer is already running.
* Move start menu popup to its own function, for easier debugging.
* Maybe-fix a drawing issue if no theme is selected.

[RSHELL]
* Added wrapper for CMenuBand
* The cmake script should not use a hardcoded path
* Better name for the log file.
CORE-7886

svn path=/branches/shell-experiments/; revision=62134
2014-02-12 17:48:49 +00:00
David Quintana ea6aff329b [RSHELL]
* Separate the wrapper logging code to its own file, to facilitate further debugging in other classes.

svn path=/branches/shell-experiments/; revision=62133
2014-02-12 16:54:58 +00:00
David Quintana 5f6b18cc4d [RSHELL]
* Implemented a class that wraps CMenuBand, for the purpose of logging the calls, with parameters and returned values (disabled, set WRAP_LOG to 1).
* Partial (WIP) implementation of CMenuBand.

[ATL]
* VirtualAlloc can not have a non-zero size while using MEM_RELEASE.

svn path=/branches/shell-experiments/; revision=62132
2014-02-12 16:48:36 +00:00
David Quintana 2dc8375579 [RSHELL]
* Implement CMenuSite
CORE-7879

svn path=/branches/shell-experiments/; revision=62131
2014-02-12 16:35:29 +00:00
Giannis Adamopoulos 372a7f9133 - Improve filebrowser a bit and add some FIXMEs to show what should be done later
svn path=/branches/shell-experiments/; revision=62118
2014-02-11 14:06:26 +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
Giannis Adamopoulos f47e7d9c12 [filebrowser]
- Do not embed a manifest in the resources in order to allow three different scenarios that can be accomplished by using two manifests
- In the first scenario we have filebrowser.exe + filebrowser.exe.manifest in the same folder. This should work only in windows xp, 2003 and reactos as it depends on the browseui that exists in windows
- The second scenario is to have filebrowser.exe + filebrowser.exe.manifest + browseui.dll in the same folder. This should also work in the same platforms as above but the core of the file browser will be used from the supplied browseui. However browseui will also request to instantiate some com objects implemented in browse and as a result some objects will be used from the browseui that exists in windows
- The third scenario is to have filebrowser.exe + filebrowser.exe.regfree.manifest + browseui.dll + browseui.sxs.manifest. This scenario should work in windows xp and all later versions. Note that filebrowser.exe.regfree.manifest must be renamed to filebrowser.exe.manifest. In this scenario all the functionality of the file browser window is used from the supplied browseui.dll

svn path=/branches/shell-experiments/; revision=62081
2014-02-09 21:23:07 +00:00
Giannis Adamopoulos f0aee80fcb [atl]
- Fix atl thunks to be allocated in executable memory and not from the stack in order to run libraries that use atl (such as browseui) in windows with DEP enabled 

svn path=/branches/shell-experiments/; revision=62011
2014-02-06 13:07:37 +00:00
Giannis Adamopoulos 1724ea64fb [explorer_new]
- Implement showing and closing the start menu by pressing the WIN key
- Implement handling WM_KLUDGEMINRECT message that informs the window manager the place of an application in the taskbar in order to show the minimization or maximization animation of a window
- Implement showing taskbar settings when the user selects to show the taskbar settings from the settings menu in start menu
- Implement hiding the Favorites menu in the start menu when needed

svn path=/branches/shell-experiments/; revision=62010
2014-02-06 13:01:54 +00:00
Giannis Adamopoulos c82da59af8 [undocuser.h]
- add the definition of the undocumented message WM_KLUDGEMINRECT

svn path=/branches/shell-experiments/; revision=62009
2014-02-06 13:00:48 +00:00
Giannis Adamopoulos 310ba0e356 [rshell.dll]
-cleanup the header from the remnants of my countless hacks that I tried with this module

svn path=/branches/shell-experiments/; revision=61979
2014-02-04 12:14:14 +00:00
Giannis Adamopoulos 222f0efde5 [rshell]
- Commit rshell.exe that allows explorer_new to run in windows 8

svn path=/branches/shell-experiments/; revision=61978
2014-02-04 12:11:51 +00:00
Giannis Adamopoulos 0a7da455d3 - Add filebrowser to build
svn path=/branches/shell-experiments/; revision=61976
2014-02-04 10:55:46 +00:00
Giannis Adamopoulos 3408d41c60 [filebrowser]
- Add an experimental module called FileBrowser.exe. This program works standalone in windows xp and windows 2003 and opens a new file browser window in its own process. If our browseui.dll is in the same folder, filebrowser will use the implementation of our file browser in windows. That means that standalone it works only in xp and 2003 but with our own browseui it will work on all windows versions (but doesn't work on all for now). This can be used for both testing the implementation of our file browser in windows and as a host process for new file browser windows for explorer_new.exe + rshell.dll

svn path=/branches/shell-experiments/; revision=61974
2014-02-04 10:49:39 +00:00
Giannis Adamopoulos f52dad5f15 [explorer_new]
- Commit a great experiment for explorer. Our explorer will try to load a library called rshell.dll which will provide an alternative implementation of some functions that are built in in windows shell. These functions are CStartMenu_Constructor, SHCreateDesktop, SHDesktopMessageLoop, WinList_Init and ShellDDEInit. Providing our own implementation for these functions will allow us to make it run in all windows versions up to windows 8 and also test the implementation of our own components that will be placed temporarily in rshell.dll while they are developed and debugged in windows.

svn path=/branches/shell-experiments/; revision=61971
2014-02-04 10:41:02 +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
Amine Khaldi d09f611410 [INTL]
* Localize the message boxes that contained hardcoded strings. 
* Create PrintErrorMsgBox() to reduce code duplication for the error messages.
* Brought to you by Lee Schroeder.
CORE-7339 #resolve #comment Committed in r61926. Cheers !

svn path=/trunk/; revision=61926
2014-02-02 19:31:07 +00:00
Timo Kreuzer 5c4082a7a6 [CRT]
- add missing __CxxFrameHandler (stub)
- Add missing c++ aliases for x64
[MSVCRT]
- Update exports on x64

svn path=/trunk/; revision=61925
2014-02-02 19:05:01 +00:00
Hermès Bélusca-Maïto 8dddaf53b2 [CMLIB]
Use a #define instead of the magic 31.

svn path=/trunk/; revision=61923
2014-02-02 16:59:03 +00:00
Hermès Bélusca-Maïto 048856c9cc [CMLIB]
- memcpy --> RtlCopyMemory
- Remove a __debugbreak()
- Improve a bit the DPRINT that is displayed when a corrupted hive is loaded.
- Fix a comment.
- Implement saving the hive file name in the hive itself. According to what windows does (just open an existing hive file with your preferred hex editor 8^) ), you can see that it copies the last 31 unicode characters of the path, and terminate it by a NULL.

[NTOS]
Remove unneeded cast.

svn path=/trunk/; revision=61922
2014-02-02 16:45:48 +00:00
Amine Khaldi bdb5664d61 [MSVCRT]
* Add the generated stubs file to build. Fixes some MSVC x64 link issues.

svn path=/trunk/; revision=61921
2014-02-02 15:47:52 +00:00
Eric Kohl e63eb57839 [MSGINA]
Move the LSA connection code into a separate file. This connection code will later be used by the logon code too.

svn path=/trunk/; revision=61919
2014-02-02 12:12:59 +00:00
Amine Khaldi cfe9329efe [CMAKE/GCC]
* Add -lgcc for C++ modules too. Dedicated to Timo.

svn path=/trunk/; revision=61918
2014-02-02 11:11:53 +00:00
Hermès Bélusca-Maïto ce54d6a7e2 [KERNEL32]: Fix build by fixing variables types.
svn path=/trunk/; revision=61914
2014-02-02 00:17:16 +00:00
Hermès Bélusca-Maïto 1826feb50f [KERNEL32]
Remove spurious cast to CSR_API_MESSAGE. What should be noted is that CsrMsg is used by both VDM thing (via CheckVdmMsg pointer) and CreateProcess thing (via CreateProcessMsg), but one after the other (first VDM only, then CreateProcess only) so that, even if the common struct/union CsrMsg is used in both cases, there is no data corruption by, e.g. CreateProcess using pieces of VDM data and vice-versa.

svn path=/trunk/; revision=61913
2014-02-02 00:08:54 +00:00
Timo Kreuzer 005703c2dc [NPFS]
- Implement NpQueryClientProcess and NpSetClientProcess
- Add a fast I/O dispatch table and implement NpFastRead and NpFastWrite
The NPFS driver is now good enough to boot Windows 2003 to desktop!

svn path=/trunk/; revision=61906
2014-02-01 20:41:16 +00:00
Eric Kohl e61f3d956b [MSGINA]
Delay load secur32.dll.

svn path=/trunk/; revision=61901
2014-02-01 15:46:09 +00:00
Timo Kreuzer 21c0eca870 [NPFS]
- Implement NpInitializeAliases + NpTranslateAlias
- Add a number of debug traces, disabled by default

svn path=/trunk/; revision=61900
2014-02-01 14:28:15 +00:00
Timo Kreuzer 0973a225b9 [NDK]
Add PsGetProcessSecurityPort, PsSetProcessSecurityPort, PsGetCurrentThreadProcessId

svn path=/trunk/; revision=61899
2014-02-01 12:12:26 +00:00
Christoph von Wittich 988c69e1c1 [baseaddress]
hackfix for VLC Player startup

svn path=/trunk/; revision=61898
2014-02-01 08:55:54 +00:00
Hermès Bélusca-Maïto 735d21a7e3 [APPS] Remove idiotic usage of REACTOS_VERSION_DLL in resources of executable files.
svn path=/trunk/; revision=61896
2014-02-01 01:27:13 +00:00
Eric Kohl c10bfd3da9 [MSGINA]
Revert r61888. CORE-7824.

svn path=/trunk/; revision=61895
2014-01-31 19:26:00 +00:00
Christoph von Wittich 26ed6933ab [crt]
revert 61885 and 61887

svn path=/trunk/; revision=61893
2014-01-30 21:23:25 +00:00