mirror of
https://github.com/reactos/reactos.git
synced 2024-11-02 12:53:33 +00:00
Windows style auto complete should only return folders then the preceding command is cd or rd.
svn path=/trunk/; revision=17805
This commit is contained in:
parent
0c1c382528
commit
4b1a13ae2f
|
@ -541,6 +541,13 @@ VOID CompleteFilename (LPTSTR strIN, BOOL bNext, LPTSTR strOut, INT cusor)
|
|||
static INT Sel;
|
||||
BOOL NeededQuote = FALSE;
|
||||
strOut[0] = _T('\0');
|
||||
BOOL ShowAll = TRUE;
|
||||
|
||||
TCHAR * line = strIN;
|
||||
while (_istspace (*line))
|
||||
line++;
|
||||
if(!_tcsncmp (line, _T("rd "), 3) || !_tcsncmp (line, _T("cd "), 3))
|
||||
ShowAll = FALSE;
|
||||
|
||||
/* Copy the string, str can be edited and orginal should not be */
|
||||
_tcscpy(str,strIN);
|
||||
|
@ -615,6 +622,15 @@ VOID CompleteFilename (LPTSTR strIN, BOOL bNext, LPTSTR strOut, INT cusor)
|
|||
if(!_tcscmp (file.cFileName, _T(".")) ||
|
||||
!_tcscmp (file.cFileName, _T("..")))
|
||||
continue;
|
||||
|
||||
/* Don't show files when they are doing 'cd' or 'rd' */
|
||||
if(!ShowAll)
|
||||
{
|
||||
DWORD attr = GetFileAttributes (file.cFileName);
|
||||
if(attr != 0xFFFFFFFF && (!(attr & FILE_ATTRIBUTE_DIRECTORY)))
|
||||
continue;
|
||||
}
|
||||
|
||||
/* Add the file to the list of files */
|
||||
if(FileList == NULL)
|
||||
{
|
||||
|
|
Loading…
Reference in a new issue