| Index: chrome/browser/ui/panels/panel_browser_frame_view.cc
|
| ===================================================================
|
| --- chrome/browser/ui/panels/panel_browser_frame_view.cc (revision 85006)
|
| +++ chrome/browser/ui/panels/panel_browser_frame_view.cc (working copy)
|
| @@ -5,6 +5,7 @@
|
| #include "chrome/browser/ui/panels/panel_browser_frame_view.h"
|
|
|
| #include "chrome/browser/themes/theme_service.h"
|
| +#include "chrome/browser/ui/panels/about_panel_bubble.h"
|
| #include "chrome/browser/ui/panels/panel.h"
|
| #include "chrome/browser/ui/panels/panel_browser_view.h"
|
| #include "chrome/browser/ui/panels/panel_manager.h"
|
| @@ -354,7 +355,12 @@
|
| }
|
|
|
| bool PanelBrowserFrameView::IsCommandIdEnabled(int command_id) const {
|
| - // All the menu options are always enabled.
|
| + // If the panel originator is not provided, disable "About this panel".
|
| + // Currently this is not possible.
|
| + if (command_id == COMMAND_ABOUT && !browser_view_->panel()->originator()) {
|
| + NOTREACHED();
|
| + return false;
|
| + }
|
| return true;
|
| }
|
|
|
| @@ -374,9 +380,17 @@
|
| case COMMAND_CLOSE_ALL:
|
| browser_view_->panel()->manager()->RemoveAllActive();
|
| break;
|
| - case COMMAND_ABOUT:
|
| - NOTIMPLEMENTED();
|
| + case COMMAND_ABOUT: {
|
| + gfx::Point origin(options_button_->bounds().origin());
|
| + views::View::ConvertPointToScreen(this, &origin);
|
| + AboutPanelBubble::Show(
|
| + GetWidget(),
|
| + gfx::Rect(origin, options_button_->bounds().size()),
|
| + BubbleBorder::BOTTOM_RIGHT,
|
| + GetFaviconForTabIconView(),
|
| + browser_view_->panel()->originator());
|
| break;
|
| + }
|
| default:
|
| NOTREACHED();
|
| break;
|
|
|