| Index: chrome/browser/ui/panels/panel.cc
|
| diff --git a/chrome/browser/ui/panels/panel.cc b/chrome/browser/ui/panels/panel.cc
|
| index a2e1eb0d016b966f6fa78dae72c1ec36256d7a06..aed6ed101cd6f3497003d7b9474628db626ff90c 100644
|
| --- a/chrome/browser/ui/panels/panel.cc
|
| +++ b/chrome/browser/ui/panels/panel.cc
|
| @@ -102,6 +102,7 @@ bool PanelExtensionWindowController::IsVisibleToExtension(
|
| Panel::Panel(const std::string& app_name,
|
| const gfx::Size& min_size, const gfx::Size& max_size)
|
| : app_name_(app_name),
|
| + profile_(NULL),
|
| panel_strip_(NULL),
|
| initialized_(false),
|
| min_size_(min_size),
|
| @@ -142,6 +143,7 @@ void Panel::Initialize(Profile* profile, const GURL& url,
|
| DCHECK_EQ(EXPANDED, expansion_state_);
|
| DCHECK(!bounds.IsEmpty());
|
| initialized_ = true;
|
| + profile_ = profile;
|
| full_size_ = bounds.size();
|
| native_panel_ = CreateNativePanel(this, bounds);
|
|
|
| @@ -215,7 +217,7 @@ CommandUpdater* Panel::command_updater() {
|
| }
|
|
|
| Profile* Panel::profile() const {
|
| - return extension_window_controller_->profile();
|
| + return profile_;
|
| }
|
|
|
| const std::string Panel::extension_id() const {
|
| @@ -552,6 +554,16 @@ void Panel::ExecuteCommandWithDisposition(int id,
|
| panel_host_->StopLoading();
|
| break;
|
|
|
| + // Window management.
|
| + case IDC_CLOSE_WINDOW:
|
| + content::RecordAction(UserMetricsAction("CloseWindow"));
|
| + Close();
|
| + break;
|
| + case IDC_EXIT:
|
| + content::RecordAction(UserMetricsAction("Exit"));
|
| + browser::AttemptUserExit();
|
| + break;
|
| +
|
| // Clipboard
|
| case IDC_COPY:
|
| content::RecordAction(UserMetricsAction("Copy"));
|
|
|