mirror of
https://github.com/RGBCube/serenity
synced 2025-05-14 05:34:58 +00:00
WindowServer: Do not add existing menu items (by ptr) to m_menus
This resolves a fixme requesting that we do not add duplicate menus
This commit is contained in:
parent
8a87aa85ae
commit
9a05175a88
1 changed files with 14 additions and 1 deletions
|
@ -18,7 +18,20 @@ class Menubar {
|
|||
public:
|
||||
void add_menu(Menu& menu, Gfx::IntRect window_rect)
|
||||
{
|
||||
// FIXME: Check against duplicate menu additions.
|
||||
bool duplicate_menu_detected = false;
|
||||
|
||||
for_each_menu([&](Menu& existing_menu) {
|
||||
if (&menu == &existing_menu) {
|
||||
dbgln("Duplicate Menu \"{}\" ({})", menu.name(), &menu);
|
||||
duplicate_menu_detected = true;
|
||||
return IterationDecision::Break;
|
||||
}
|
||||
return IterationDecision::Continue;
|
||||
});
|
||||
if (duplicate_menu_detected) {
|
||||
return;
|
||||
}
|
||||
|
||||
m_menus.append(menu);
|
||||
layout_menu(menu, window_rect);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue