[ros-diffs] [gadamopoulos] 73660: [SHELL32] Implement support for IID_IDropTarget in CDesktopFolder::GetUIObjectOf and CDrivesFolder::GetUIObjectOf. Fixes dragging items to the icons of My documents,
Author: gadamopoulos Date: Wed Feb 1 13:31:55 2017 New Revision: 73660 URL: http://svn.reactos.org/svn/reactos?rev=73660&view=rev Log: [SHELL32] Implement support for IID_IDropTarget in CDesktopFolder::GetUIObjectOf and CDrivesFolder::GetUIObjectOf. Fixes dragging items to the icons of My documents, Recycle bin or drive. Modified: trunk/reactos/dll/win32/shell32/folders/CDesktopFolder.cpp trunk/reactos/dll/win32/shell32/folders/CDrivesFolder.cpp Modified: trunk/reactos/dll/win32/shell32/folders/CDesktopFolder.cpp URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/shell32/folders/CDesktopFolder.cpp?rev=73660&r1=73659&r2=73660&view=diff == --- trunk/reactos/dll/win32/shell32/folders/CDesktopFolder.cpp [iso-8859-1] (original) +++ trunk/reactos/dll/win32/shell32/folders/CDesktopFolder.cpp [iso-8859-1] Wed Feb 1 13:31:55 2017 @@ -686,6 +686,15 @@ { hr = m_regFolder->GetUIObjectOf(hwndOwner, cidl, apidl, riid, prgfInOut, &pObj); } +else if (IsEqualIID (riid, IID_IDropTarget) && (cidl == 1)) +{ +CComPtr psfChild; +hr = this->BindToObject(apidl[0], NULL, IID_PPV_ARG(IShellFolder, &psfChild)); +if (FAILED_UNEXPECTEDLY(hr)) +return hr; + +return psfChild->CreateViewObject(NULL, riid, ppvOut); +} else hr = E_NOINTERFACE; Modified: trunk/reactos/dll/win32/shell32/folders/CDrivesFolder.cpp URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/shell32/folders/CDrivesFolder.cpp?rev=73660&r1=73659&r2=73660&view=diff == --- trunk/reactos/dll/win32/shell32/folders/CDrivesFolder.cpp [iso-8859-1] (original) +++ trunk/reactos/dll/win32/shell32/folders/CDrivesFolder.cpp [iso-8859-1] Wed Feb 1 13:31:55 2017 @@ -631,11 +631,14 @@ else hr = m_regFolder->GetUIObjectOf(hwndOwner, cidl, apidl, riid, prgfInOut, &pObj); } -else if (IsEqualIID (riid, IID_IDropTarget) && (cidl >= 1)) -{ -IDropTarget * pDt = NULL; -hr = this->QueryInterface(IID_PPV_ARG(IDropTarget, &pDt)); -pObj = pDt; +else if (IsEqualIID (riid, IID_IDropTarget) && (cidl == 1)) +{ +CComPtr psfChild; +hr = this->BindToObject(apidl[0], NULL, IID_PPV_ARG(IShellFolder, &psfChild)); +if (FAILED_UNEXPECTEDLY(hr)) +return hr; + +return psfChild->CreateViewObject(NULL, riid, ppvOut); } else hr = E_NOINTERFACE;
[ros-diffs] [gadamopoulos] 73661: [SHELL32] - CDefView: Implement rudimentary support for drag icons. For now we only show the icon of the first item (no caption or other icons yet).
Author: gadamopoulos Date: Wed Feb 1 14:22:45 2017 New Revision: 73661 URL: http://svn.reactos.org/svn/reactos?rev=73661&view=rev Log: [SHELL32] - CDefView: Implement rudimentary support for drag icons. For now we only show the icon of the first item (no caption or other icons yet). Modified: trunk/reactos/dll/win32/shell32/CDefView.cpp Modified: trunk/reactos/dll/win32/shell32/CDefView.cpp URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/shell32/CDefView.cpp?rev=73661&r1=73660&r2=73661&view=diff == --- trunk/reactos/dll/win32/shell32/CDefView.cpp[iso-8859-1] (original) +++ trunk/reactos/dll/win32/shell32/CDefView.cpp[iso-8859-1] Wed Feb 1 14:22:45 2017 @@ -1740,6 +1740,8 @@ if (SUCCEEDED(m_pSFParent->GetUIObjectOf(m_hWnd, m_cidl, m_apidl, IID_NULL_PPV_ARG(IDataObject, &pda { +LPNMLISTVIEW params = (LPNMLISTVIEW)lParam; + if (SUCCEEDED(m_pSFParent->GetAttributesOf(m_cidl, m_apidl, &dwAttributes))) { if (dwAttributes & SFGAO_CANLINK) @@ -1757,8 +1759,17 @@ DWORD dwEffect2; m_pSourceDataObject = pda; -m_ptFirstMousePos = ((LPNMLISTVIEW)lParam)->ptAction; +m_ptFirstMousePos = params->ptAction; ClientToScreen(&m_ptFirstMousePos); + +HIMAGELIST big_icons, small_icons; +Shell_GetImageLists(&big_icons, &small_icons); +PCUITEMID_CHILD pidl = _PidlByItem(params->iItem); +int iIcon = SHMapPIDLToSystemImageListIndex(m_pSFParent, pidl, 0); +POINT ptItem; +m_ListView.GetItemPosition(params->iItem, &ptItem); + +ImageList_BeginDrag(big_icons, iIcon, m_ptFirstMousePos.x - ptItem.x, m_ptFirstMousePos.y - ptItem.y); DoDragDrop(pda, this, dwEffect, &dwEffect2); @@ -2913,34 +2924,44 @@ /* If anything failed, m_pCurDropTarget should be NULL now, which ought to be a save state. */ if (FAILED(hr)) +{ +*pdwEffect = DROPEFFECT_NONE; return hr; +} + +if (m_iDragOverItem != -1) +{ +SelectItem(m_iDragOverItem, SVSI_SELECT); +} /* Notify the item just entered via DragEnter. */ -hr = m_pCurDropTarget->DragEnter(m_pCurDataObject, grfKeyState, pt, pdwEffect); - -if (m_iDragOverItem != -1 && pdwEffect != DROPEFFECT_NONE) -{ -SelectItem(m_iDragOverItem, SVSI_SELECT); -} - -return hr; +return m_pCurDropTarget->DragEnter(m_pCurDataObject, grfKeyState, pt, pdwEffect); } HRESULT WINAPI CDefView::DragEnter(IDataObject *pDataObject, DWORD grfKeyState, POINTL pt, DWORD *pdwEffect) { +POINT ptClient = {pt.x, pt.y}; +ScreenToClient(&ptClient); + /* Get a hold on the data object for later calls to DragEnter on the sub-folders */ m_pCurDataObject = pDataObject; +ImageList_DragEnter(m_hWnd, ptClient.x, ptClient.y); return drag_notify_subitem(grfKeyState, pt, pdwEffect); } HRESULT WINAPI CDefView::DragOver(DWORD grfKeyState, POINTL pt, DWORD *pdwEffect) { +POINT ptClient = {pt.x, pt.y}; +ScreenToClient(&ptClient); +ImageList_DragMove(ptClient.x, ptClient.y); return drag_notify_subitem(grfKeyState, pt, pdwEffect); } HRESULT WINAPI CDefView::DragLeave() { +ImageList_DragLeave(m_hWnd); + if (m_pCurDropTarget) { m_pCurDropTarget->DragLeave(); @@ -2960,6 +2981,8 @@ HRESULT WINAPI CDefView::Drop(IDataObject* pDataObject, DWORD grfKeyState, POINTL pt, DWORD *pdwEffect) { ERR("GetKeyState(VK_LBUTTON): %d\n", GetKeyState(VK_LBUTTON)); + +ImageList_EndDrag(); if ((m_iDragOverItem == -1 || m_pCurDropTarget == NULL) && (*pdwEffect & DROPEFFECT_MOVE) &&
[ros-diffs] [khornicek] 73662: [TRANSLATIONS] - fix, update and add some czech translations + two tiny "improvements" in english ones In case anyone wants to continue - these modules lack czech resour
Author: khornicek Date: Wed Feb 1 14:45:59 2017 New Revision: 73662 URL: http://svn.reactos.org/svn/reactos?rev=73662&view=rev Log: [TRANSLATIONS] - fix, update and add some czech translations + two tiny "improvements" in english ones In case anyone wants to continue - these modules lack czech resources completely: (and I suggest doing getuname first) clip comp doskey eventcreate mode taskkill tree whoami wmic xcopy ipconfig net clb diskpart acppage fontext browseui getuname iernonce lsasrv modemui msports rasdlg samsrv tapiui localmon Added: trunk/reactos/base/applications/clipbrd/lang/cs-CZ.rc (with props) trunk/reactos/base/applications/games/spider/lang/cs-CZ.rc (with props) trunk/reactos/base/applications/magnify/lang/cs-CZ.rc (with props) trunk/reactos/base/applications/osk/lang/cs-CZ.rc (with props) trunk/reactos/base/applications/screensavers/3dtext/lang/cs-CZ.rc (with props) trunk/reactos/base/applications/screensavers/logon/lang/cs-CZ.rc (with props) trunk/reactos/base/applications/wordpad/lang/cs-CZ.rc (with props) trunk/reactos/base/system/runonce/lang/cs-CZ.rc (with props) trunk/reactos/base/system/services/lang/cs-CZ.rc (with props) trunk/reactos/base/system/subst/lang/cs-CZ.rc (with props) trunk/reactos/dll/shellext/ntobjshex/lang/cs-CZ.rc (with props) trunk/reactos/dll/shellext/stobject/lang/cs-CZ.rc (with props) trunk/reactos/dll/win32/aclui/lang/cs-CZ.rc (with props) trunk/reactos/media/themes/lautus.msstyles/lang/cs-CZ.rc (with props) Modified: trunk/reactos/base/applications/clipbrd/clipbrd.rc trunk/reactos/base/applications/dxdiag/lang/cs-CZ.rc trunk/reactos/base/applications/fontview/lang/cs-CZ.rc trunk/reactos/base/applications/games/solitaire/lang/cs-CZ.rc trunk/reactos/base/applications/games/spider/rsrc.rc trunk/reactos/base/applications/magnify/magnify.rc trunk/reactos/base/applications/mmc/lang/cs-CZ.rc trunk/reactos/base/applications/mplay32/lang/cs-CZ.rc trunk/reactos/base/applications/mscutils/eventvwr/lang/cs-CZ.rc trunk/reactos/base/applications/mscutils/servman/lang/cs-CZ.rc trunk/reactos/base/applications/mspaint/lang/cs-CZ.rc trunk/reactos/base/applications/notepad/lang/cs-CZ.rc trunk/reactos/base/applications/osk/rsrc.rc trunk/reactos/base/applications/regedit/clb/CMakeLists.txt trunk/reactos/base/applications/regedit/lang/cs-CZ.rc trunk/reactos/base/applications/screensavers/3dtext/rsrc.rc trunk/reactos/base/applications/screensavers/logon/logon.rc trunk/reactos/base/applications/sndrec32/lang/cs-CZ.rc trunk/reactos/base/applications/taskmgr/lang/cs-CZ.rc trunk/reactos/base/applications/wordpad/lang/en-US.rc trunk/reactos/base/applications/wordpad/rsrc.rc trunk/reactos/base/setup/reactos/lang/cs-CZ.rc trunk/reactos/base/shell/explorer/lang/cs-CZ.rc trunk/reactos/base/system/runonce/runonce.rc trunk/reactos/base/system/services/services.rc trunk/reactos/base/system/subst/subst.rc trunk/reactos/base/system/userinit/lang/cs-CZ.rc trunk/reactos/dll/cpl/appwiz/lang/cs-CZ.rc trunk/reactos/dll/cpl/intl/lang/cs-CZ.rc trunk/reactos/dll/cpl/mmsys/lang/cs-CZ.rc trunk/reactos/dll/cpl/sysdm/lang/cs-CZ.rc trunk/reactos/dll/cpl/wined3dcfg/lang/cs-CZ.rc trunk/reactos/dll/shellext/deskadp/lang/cs-CZ.rc trunk/reactos/dll/shellext/netshell/lang/cs-CZ.rc trunk/reactos/dll/shellext/ntobjshex/ntobjshex.rc trunk/reactos/dll/shellext/slayer/lang/cs-CZ.rc trunk/reactos/dll/shellext/stobject/stobject.rc trunk/reactos/dll/win32/aclui/aclui.rc trunk/reactos/dll/win32/devmgr/lang/cs-CZ.rc trunk/reactos/dll/win32/msgina/lang/cs-CZ.rc trunk/reactos/dll/win32/netcfgx/lang/cs-CZ.rc trunk/reactos/dll/win32/netid/lang/cs-CZ.rc trunk/reactos/dll/win32/newdev/lang/cs-CZ.rc trunk/reactos/dll/win32/setupapi/lang/cs-CZ.rc trunk/reactos/dll/win32/shell32/lang/cs-CZ.rc trunk/reactos/dll/win32/shimgvw/lang/cs-CZ.rc trunk/reactos/dll/win32/syssetup/lang/cs-CZ.rc trunk/reactos/media/themes/lautus.msstyles/lautus.rc trunk/reactos/subsystems/mvdm/ntvdm/lang/cs-CZ.rc trunk/reactos/win32ss/user/user32/lang/cs-CZ.rc trunk/reactos/win32ss/user/user32/lang/en-US.rc trunk/reactos/win32ss/user/winsrv/consrv/frontends/gui/lang/cs-CZ.rc trunk/reactos/win32ss/user/winsrv/consrv/lang/cs-CZ.rc trunk/reactos/win32ss/user/winsrv/consrv_new/frontends/gui/lang/cs-CZ.rc trunk/reactos/win32ss/user/winsrv/consrv_new/lang/cs-CZ.rc trunk/reactos/win32ss/user/winsrv/usersrv/lang/cs-CZ.rc [This mail would be too long, it was shortened to contain the URLs only.] Modified: trunk/reactos/base/applications/clipbrd/clipbrd.rc URL: http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/clipbrd/clipbrd.rc?rev=73662&r1=73661&r2=73662&view=diff Added: trunk/reactos/base/applications/clipbrd/lang/cs-CZ.rc URL: http://s
[ros-diffs] [khornicek] 73663: [MSPORTS] - Check for failure when calling SetupDiGetActualSectionToInstallW so we don't pass garbage to SetupInstallFromInfSectionW. CID 715920
Author: khornicek Date: Wed Feb 1 18:36:40 2017 New Revision: 73663 URL: http://svn.reactos.org/svn/reactos?rev=73663&view=rev Log: [MSPORTS] - Check for failure when calling SetupDiGetActualSectionToInstallW so we don't pass garbage to SetupInstallFromInfSectionW. CID 715920 Modified: trunk/reactos/dll/win32/msports/classinst.c Modified: trunk/reactos/dll/win32/msports/classinst.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/msports/classinst.c?rev=73663&r1=73662&r2=73663&view=diff == --- trunk/reactos/dll/win32/msports/classinst.c [iso-8859-1] (original) +++ trunk/reactos/dll/win32/msports/classinst.c [iso-8859-1] Wed Feb 1 18:36:40 2017 @@ -579,12 +579,13 @@ TRACE("Section name: %S\n", DriverInfoDetailData->SectionName); -SetupDiGetActualSectionToInstallW(hInf, - DriverInfoDetailData->SectionName, - InfSectionWithExt, - 256, - NULL, - NULL); +if (!SetupDiGetActualSectionToInstallW(hInf, + DriverInfoDetailData->SectionName, + InfSectionWithExt, + 256, + NULL, + NULL)) +goto done; TRACE("InfSectionWithExt: %S\n", InfSectionWithExt);
[ros-diffs] [gadamopoulos] 73664: [SHELL32] -CDefView: Calculate correctly the position of the cursor over the icon. Call ImageList_DragEnter only after we are sure that DragEnter will succeed.
Author: gadamopoulos Date: Wed Feb 1 21:43:20 2017 New Revision: 73664 URL: http://svn.reactos.org/svn/reactos?rev=73664&view=rev Log: [SHELL32] -CDefView: Calculate correctly the position of the cursor over the icon. Call ImageList_DragEnter only after we are sure that DragEnter will succeed. Modified: trunk/reactos/dll/win32/shell32/CDefView.cpp Modified: trunk/reactos/dll/win32/shell32/CDefView.cpp URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/shell32/CDefView.cpp?rev=73664&r1=73663&r2=73664&view=diff == --- trunk/reactos/dll/win32/shell32/CDefView.cpp[iso-8859-1] (original) +++ trunk/reactos/dll/win32/shell32/CDefView.cpp[iso-8859-1] Wed Feb 1 21:43:20 2017 @@ -1769,7 +1769,7 @@ POINT ptItem; m_ListView.GetItemPosition(params->iItem, &ptItem); -ImageList_BeginDrag(big_icons, iIcon, m_ptFirstMousePos.x - ptItem.x, m_ptFirstMousePos.y - ptItem.y); +ImageList_BeginDrag(big_icons, iIcon, params->ptAction.x - ptItem.x, params->ptAction.y - ptItem.y); DoDragDrop(pda, this, dwEffect, &dwEffect2); @@ -2940,14 +2940,18 @@ HRESULT WINAPI CDefView::DragEnter(IDataObject *pDataObject, DWORD grfKeyState, POINTL pt, DWORD *pdwEffect) { -POINT ptClient = {pt.x, pt.y}; -ScreenToClient(&ptClient); - /* Get a hold on the data object for later calls to DragEnter on the sub-folders */ m_pCurDataObject = pDataObject; -ImageList_DragEnter(m_hWnd, ptClient.x, ptClient.y); -return drag_notify_subitem(grfKeyState, pt, pdwEffect); +HRESULT hr = drag_notify_subitem(grfKeyState, pt, pdwEffect); +if (SUCCEEDED(hr)) +{ +POINT ptClient = {pt.x, pt.y}; +ScreenToClient(&ptClient); +ImageList_DragEnter(m_hWnd, ptClient.x, ptClient.y); +} + +return hr; } HRESULT WINAPI CDefView::DragOver(DWORD grfKeyState, POINTL pt, DWORD *pdwEffect)
[ros-diffs] [mjansen] 73665: [TRANSLATIONS] Addendum to r73662, fix the build.
Author: mjansen Date: Wed Feb 1 22:45:04 2017 New Revision: 73665 URL: http://svn.reactos.org/svn/reactos?rev=73665&view=rev Log: [TRANSLATIONS] Addendum to r73662, fix the build. Modified: trunk/reactos/base/applications/screensavers/logon/lang/cs-CZ.rc Modified: trunk/reactos/base/applications/screensavers/logon/lang/cs-CZ.rc URL: http://svn.reactos.org/svn/reactos/trunk/reactos/base/applications/screensavers/logon/lang/cs-CZ.rc?rev=73665&r1=73664&r2=73665&view=diff == --- trunk/reactos/base/applications/screensavers/logon/lang/cs-CZ.rc [iso-8859-1] (original) +++ trunk/reactos/base/applications/screensavers/logon/lang/cs-CZ.rc [iso-8859-1] Wed Feb 1 22:45:04 2017 @@ -1,4 +1,4 @@ -LANGUAGE LANG_ENGLISH, SUBLANG_ENGLISH_US +LANGUAGE LANG_CZECH, SUBLANG_DEFAULT STRINGTABLE BEGIN
[ros-diffs] [tfaber] 73666: [NTOS] - Remove a useless declaration. CORE-12729 #resolve
Author: tfaber Date: Wed Feb 1 23:01:00 2017 New Revision: 73666 URL: http://svn.reactos.org/svn/reactos?rev=73666&view=rev Log: [NTOS] - Remove a useless declaration. CORE-12729 #resolve Modified: trunk/reactos/ntoskrnl/include/internal/mm.h Modified: trunk/reactos/ntoskrnl/include/internal/mm.h URL: http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/include/internal/mm.h?rev=73666&r1=73665&r2=73666&view=diff == --- trunk/reactos/ntoskrnl/include/internal/mm.h[iso-8859-1] (original) +++ trunk/reactos/ntoskrnl/include/internal/mm.h[iso-8859-1] Wed Feb 1 23:01:00 2017 @@ -514,15 +514,6 @@ PEPROCESS Process, PMMVAD Vad); -NTSTATUS -NTAPI -MmFreeMemoryAreaByPtr( -PMMSUPPORT AddressSpace, -PVOID BaseAddress, -PMM_FREE_PAGE_FUNC FreePage, -PVOID FreePageContext -); - PMEMORY_AREA NTAPI MmLocateMemoryAreaByRegion(
[ros-diffs] [hbelusca] 73667: The ISO of the ReactOS preview for FOSDEM 2017 is ready, so we can tag its branch!
Author: hbelusca Date: Wed Feb 1 23:18:02 2017 New Revision: 73667 URL: http://svn.reactos.org/svn/reactos?rev=73667&view=rev Log: The ISO of the ReactOS preview for FOSDEM 2017 is ready, so we can tag its branch! Added: tags/ReactOS-0.4.4-FOSDEM2017/ (props changed) - copied from r73666, branches/ReactOS-0.4.4-FOSDEM2017/ Removed: branches/ReactOS-0.4.4-FOSDEM2017/ Propchange: tags/ReactOS-0.4.4-FOSDEM2017/ -- --- svn:mergeinfo (added) +++ svn:mergeinfo Wed Feb 1 23:18:02 2017 @@ -0,0 +1 @@ +/branches/colins-printing-for-freedom:67543-68405,68407-68414,68417-70595