diff --git a/src/apps/drivesetup/DiskView.cpp b/src/apps/drivesetup/DiskView.cpp index 9df3b09e7f..00b437102a 100644 --- a/src/apps/drivesetup/DiskView.cpp +++ b/src/apps/drivesetup/DiskView.cpp @@ -420,18 +420,15 @@ DiskView::SetDisk(BDiskDevice* disk, partition_id selectedPartition) { if (fDisk != disk) { fDisk = disk; - _UpdateLayout(); + ForceUpdate(); } fPartitionLayout->SetSelectedPartition(selectedPartition); } -// #pragma mark - - - void -DiskView::_UpdateLayout() +DiskView::ForceUpdate() { while (BView* view = ChildAt(0)) { view->RemoveSelf(); diff --git a/src/apps/drivesetup/DiskView.h b/src/apps/drivesetup/DiskView.h index 1670ee58e1..38a58de1de 100644 --- a/src/apps/drivesetup/DiskView.h +++ b/src/apps/drivesetup/DiskView.h @@ -26,9 +26,9 @@ public: void SetDiskCount(int32 count); void SetDisk(BDiskDevice* disk, partition_id selectedPartition); -private: - void _UpdateLayout(); + void ForceUpdate(); +private: int32 fDiskCount; BDiskDevice* fDisk; SpaceIDMap& fSpaceIDMap; diff --git a/src/apps/drivesetup/MainWindow.cpp b/src/apps/drivesetup/MainWindow.cpp index 999ce46eb3..95d91b2dbe 100644 --- a/src/apps/drivesetup/MainWindow.cpp +++ b/src/apps/drivesetup/MainWindow.cpp @@ -376,6 +376,7 @@ MainWindow::_ScanDrives() fListView->AddToSelection(previousSelection); _EnabledDisableMenuItems(fCurrentDisk, fCurrentPartitionID, previousSelection->ParentID()); + fDiskView->ForceUpdate(); } else { _EnabledDisableMenuItems(NULL, -1, -1); } @@ -650,6 +651,7 @@ MainWindow::_MountAll() // #pragma mark - + class ModificationPreparer { public: ModificationPreparer(BDiskDevice* disk) @@ -679,6 +681,7 @@ private: status_t fModificationStatus; }; + void MainWindow::_Initialize(BDiskDevice* disk, partition_id selectedPartition, const BString& diskSystemName) @@ -760,7 +763,8 @@ MainWindow::_Initialize(BDiskDevice* disk, partition_id selectedPartition, BString name = "Haiku"; BString parameters; InitParamsPanel* panel = new InitParamsPanel(this); - panel->Go(name, parameters); + if (panel->Go(name, parameters) == GO_CANCELED) + return; bool supportsName = diskSystem.SupportsContentName(); BString validatedName(name);