Skip to content
  • jonross's avatar
    Cleanup MenuRunner API · 5ab7c2d0
    jonross authored
    All menus have switched over to MenuRunner::ASYNC. The non-async code path has
    also been removed. Due to this the flag is redundant. This change removes its
    usage throughout the code base.
    
    MenuRunner::RunMenuAt features a return type to declare if a menu was deleted
    or not during execution. This was used for cleanup relating to the nesting of
    message loops. With the nested message loop code path gone this is no longer
    necessary. No call site was actively performing different functions on this.
    
    Now all callsites are notified via MenuDelegate::OnMenuClosed, or a callback
    provided to MenuRunner, when a proper closure occurs.
    
    Deletion during a run is only triggered by either an entire system shutdown, or
    when callsites explicitly delete the menu when executing a menu item. All
    callsites have been updated to cleanup properly when deleting the menu.
    
    With the closing logic cleaned up MenuRunner::RunMenuAt return is no longer
    needed. So this change removes it.
    
    TBR=ben@chromium.org
    TEST...
    5ab7c2d0