|
@@ -52,6 +52,7 @@ __fastcall TCustomUnixDriveView::TCustomUnixDriveView(TComponent* Owner) :
|
|
FDummyDragFile = NULL;
|
|
FDummyDragFile = NULL;
|
|
FPendingDelete = new TList();
|
|
FPendingDelete = new TList();
|
|
FDragDropFilesEx->PreferCopy = true;
|
|
FDragDropFilesEx->PreferCopy = true;
|
|
|
|
+ FChangingDirectory = false;
|
|
}
|
|
}
|
|
//---------------------------------------------------------------------------
|
|
//---------------------------------------------------------------------------
|
|
__fastcall TCustomUnixDriveView::~TCustomUnixDriveView()
|
|
__fastcall TCustomUnixDriveView::~TCustomUnixDriveView()
|
|
@@ -467,7 +468,7 @@ bool __fastcall TCustomUnixDriveView::CanChange(TTreeNode * Node)
|
|
{
|
|
{
|
|
return
|
|
return
|
|
TCustomDriveView::CanChange(Node) &&
|
|
TCustomDriveView::CanChange(Node) &&
|
|
- FCanChange;
|
|
|
|
|
|
+ !FChangingDirectory;
|
|
}
|
|
}
|
|
//---------------------------------------------------------------------------
|
|
//---------------------------------------------------------------------------
|
|
void __fastcall TCustomUnixDriveView::Change(TTreeNode * Node)
|
|
void __fastcall TCustomUnixDriveView::Change(TTreeNode * Node)
|
|
@@ -512,8 +513,8 @@ void __fastcall TCustomUnixDriveView::Change(TTreeNode * Node)
|
|
{
|
|
{
|
|
// Prevent curther changes while loading the folder.
|
|
// Prevent curther changes while loading the folder.
|
|
// Particularly prevent user from trying to proceed with incremental search.
|
|
// Particularly prevent user from trying to proceed with incremental search.
|
|
- TValueRestorer<bool> CanChangeRestorer(FCanChange);
|
|
|
|
- FCanChange = false;
|
|
|
|
|
|
+ TValueRestorer<bool> ChangingDirectoryRestorer(FChangingDirectory);
|
|
|
|
+ FChangingDirectory = true;
|
|
Terminal->ChangeDirectory(NodePathName(Node));
|
|
Terminal->ChangeDirectory(NodePathName(Node));
|
|
}
|
|
}
|
|
TCustomDriveView::Change(Node);
|
|
TCustomDriveView::Change(Node);
|