Tracker: No Disks drop down on file panels.

Get rid of AddDisksIconToMenu() method, use AddItemToDirMenu() instead
which does the right thing and works for Disks.

Change-Id: Ib6d5976f6edde03bdb5086118d6c3e66c362c82c
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11277
Tested-by: Commit checker robot <[email protected]>
Haiku-Format: Haiku-format Bot <[email protected]>
Reviewed-by: John Scipione <[email protected]>
(cherry picked from commit bc00558b5a7829e032d572eac0f1943f1e691214)
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11350
This commit is contained in:
John Scipione
2026-07-28 16:07:57 +00:00
committed by Máximo Castañeda
parent f0a83b8afe
commit 064878d320
2 changed files with 3 additions and 32 deletions
-1
View File
@@ -55,7 +55,6 @@ public:
bool navMenuEntries = false);
void AddItemToDirMenu(const BEntry*, BWindow* source,
bool atEnd, bool addShortcuts, bool navMenuEntries = false);
void AddDisksIconToMenu(bool reverse = false);
void SetMenuBar(BMenuBar*);
+3 -31
View File
@@ -167,12 +167,12 @@ BDirMenu::Populate(const BEntry* startEntry, BWindow* source,
// warp from Trash to Desktop
}
if (desktopIsRoot) {
BEntry rootEntry("/");
if (desktopIsRoot) {
if (entry == rootEntry) {
// Disks appears to be on Desktop
if (showDisksIcon)
AddDisksIconToMenu(reverse);
AddItemToDirMenu(&rootEntry, source, reverse, addShortcuts, navMenuEntries);
entry = desktopEntry;
// warp from "/" to Desktop
}
@@ -188,7 +188,7 @@ BDirMenu::Populate(const BEntry* startEntry, BWindow* source,
if (hitRoot) {
if (!desktopIsRoot && showDisksIcon && *startEntry != "/")
AddDisksIconToMenu(reverse);
AddItemToDirMenu(&rootEntry, source, reverse, addShortcuts, navMenuEntries);
break;
}
@@ -273,31 +273,3 @@ BDirMenu::AddItemToDirMenu(const BEntry* entry, BWindow* source,
}
}
}
void
BDirMenu::AddDisksIconToMenu(bool atEnd)
{
BEntry entry("/");
Model model(&entry);
if (model.InitCheck() != B_OK)
return;
entry_ref ref;
entry.GetRef(&ref);
BMessage* message = new BMessage(fCommand);
message->AddRef(fEntryName.String(), &ref);
BNavMenu* subMenu = new BNavMenu(model.Name(), fCommand, fTarget);
subMenu->SetNavDir(&ref);
ModelMenuItem* item = new ModelMenuItem(&model, subMenu);
item->SetLabel(model.Name());
item->SetMessage(message);
if (atEnd)
AddItem(item);
else
AddItem(item, 0);
item->SetTarget(fTarget);
}