gadamopoulos in reactos

[BROWSEUI] -Demote a fixme print to a mere comment.
[SHELL32] -SHChangeNotifyRegister: Don't call CreateFileW with something that is not a filesystem path as this will obviously fail like when we are browsing My Computer.
[SHELL32][BROWSEUI] -Demote some uselass error prints and promote some others that make sense to have. Avoid a case that would logically hit an error as initialization of the shell browser is still under way,
    • -1
    • +1
    • -10
    • +14
[EXPLORER] -Fix a comment typo. CORE-13566
    • -1
    • +1
[UXTHEME] -When calculating the size of caption buttons assume that they have the same size. Hacks in the theme files that change the way the buttons are drawn actually make them appear to have a different size. CORE-13512
    • -26
    • +9
[UXTHEME] -Ignore the alpha channel so that TrasnparentBlt will be used when a bitmap has an alpha channel but no pixel has alpha transparency. CORE-13464
[BROWSEUI] -CExplorerBand: Calling ILGetDisplayNameEx with a full pidl was a bit hacky after all because it doesn't work always in win10. Just get the name manually as no helper is good enough.
[BROWSEUI][SHELL32] -Move bitmap resources used by browseui from shell32 to browseui. Browseui alongside filebrowser.exe can already be used in windows so it makes sense to let it have toolbar icons even in latest windows versions. (It works from xp to win10).
    • binary
    • binary
    • binary
    • binary
    • -3
    • +1
    • binary
    • binary
    • binary
  1. … 16 more files in changeset.
[BROWSEUI] -CAddressEditBox: Populate address bar combobox. Patch by Barrett Karish with improvements by me to fix leaks and add error checks. CORE-10988
[SHELL32] -Silence two unneeded prints.
[SHELL32] -CRecycleBin: Call GetDriveTypeW with correct parameters. Now files can be deleted to the recycle bin again. Patch by Serge Gautherie. CORE-12340
[USER32_APITEST] -Add a monster of a test to check if WM_DESTROYCLIPBOARD is blocking or not. Use a critical section while recording as we use a single message cache in two threads. After 50154, 50816, 50846 and 75616 changing back and forth, this test shows that 75616 is correct and making sure that it won't be changed again in the future, somehting that would break the ole clipboard.
    • -0
    • +195
[SHELL32] -CRecycleBin: Factor out a new class called CRecyclerDropTarget, which will take the data object and call SHFileOperation for its contents. Add a noisy print to show the parameters passed in SHFileOperation and make it to always use DROPEFFECT_MOVE. Make CDefaultContextMenu use the new drop target in order to delete a file.
    • -0
    • +1
[OLE32] -Recreate the clipboard window if it isn't a valid window handle. Can happen if the thread that first used the ole clipboard exists which also leads to the clipboard window being destroyed.
[SHELL32] Misc fixes for CFSFolder

- GetCLSIDForFileType: Check if the shell extension is blocked by the Blocked key like wine does.

- CFSFolder::BindToObject: Remove a redundant check as _ILGetFileStructW already does the same check.

- CFSFolder::GetUIObjectOf: Do not try to load an IconHandler or an arbitrary extension for directories.

- CFSFolder::SetNameOf: Simplify and make secure by using great helpers like wcscmp and PathCombineW

[SHELL32] -CFSFolder: Fix a couple of handle leaks.
[SHELL32] -CFSDropTarger: Improve the debug message that shows the first thing that is copied or moved and where. This way we sort of know what parameters we pass to SHFileOperationW.
[SHELL32] -CFSDropTarget: Simplyfy the code path that handles the CFSTR_SHELLIDLIST format. Don't use FOF_MULTIDESTFILES to keep things simple. CORE-13176
[SHELL32] -Simplify the drop target of CRecycleBin to let the data object generate the list of names that can be passed to SHFileOperationW.
[SHELL32] -CDefaultContextMenu: Correctly differentiate the copy and the cut commands.
[SHELL32] -CDefViewBckgrndMenu: Fix pasting in the background of a folder.
[WIN32K] -NtUserEmptyClipboard: Change its behaviour to wait for WM_DESTROYCLIPBOARD to return so it behaves like windows and our ole32 doesn't trip on its assumptions that everything works fine. A test will be written soon to prove that this is correct. CORE-12302
    • -1
    • +1
[SHELL32] Shell extension support for files.

- CFSFolder: Implement binding to files, implement loading arbitrary extensions for GetUIObjectOf from the registry, implement loading IconHandler shell extensions. Use the new helper routines to simplify getting the drop target.

- Improve the shortcut icons hack.

    • -1
    • +1
[STOBJECT] Fix bug that caused some resource strings not to be loaded.

- These strings need to either be in every language file or have their own resource range but since we are using the same resource ids with windows I will just duplicate them.

[WIN32K] -Fix a bug with TransparentBlt when it should really ignore the alpha channel. CORE-13040. Approved by Timo.
    • -1
    • +1
[UXTHEME] -Remove some dead code
    • -20
    • +0
[SHELL32] -Simplify some coe in CShellLink.cpp
    • -31
    • +31
[SHELL32] -AddFSClassKeysToArray: Increase the size of the buffer for the value read from the registry. There are cases when 40 are not enough.
    • -1
    • +1
[COM_APITEST] -Add tests for CLSID_AttachmentServices.
    • -0
    • +7
[ADVAPI32] -RegOpenKeyExW: Call NtOpenKey again with aligned parameters if STATUS_DATATYPE_MISALIGNMENT was returned the first time. CORE-13689
    • -0
    • +33