| Index: chrome/browser/ui/views/download/download_shelf_view.cc
|
| diff --git a/chrome/browser/ui/views/download/download_shelf_view.cc b/chrome/browser/ui/views/download/download_shelf_view.cc
|
| index a4912af16edd276c4b2a1f824f039c2ec9f79da9..41bb6fbbadc9b8fdc028d6235ecd6a9fea666ad8 100644
|
| --- a/chrome/browser/ui/views/download/download_shelf_view.cc
|
| +++ b/chrome/browser/ui/views/download/download_shelf_view.cc
|
| @@ -94,7 +94,6 @@ int CenterPosition(int size, int target_size) {
|
| DownloadShelfView::DownloadShelfView(Browser* browser, BrowserView* parent)
|
| : browser_(browser),
|
| parent_(parent),
|
| - auto_closed_(true),
|
| ALLOW_THIS_IN_INITIALIZER_LIST(
|
| mouse_watcher_(new views::MouseWatcherViewHost(this, gfx::Insets()),
|
| this)) {
|
| @@ -127,7 +126,7 @@ void DownloadShelfView::DoAddDownload(DownloadItem* download) {
|
| }
|
|
|
| void DownloadShelfView::MouseMovedOutOfHost() {
|
| - Close();
|
| + Close(AUTOMATIC);
|
| }
|
|
|
| void DownloadShelfView::OnWillChangeFocus(views::View* focused_before,
|
| @@ -150,7 +149,7 @@ void DownloadShelfView::RemoveDownloadView(View* view) {
|
| RemoveChildView(view);
|
| delete view;
|
| if (download_views_.empty())
|
| - Close();
|
| + Close(AUTOMATIC);
|
| else if (CanAutoClose())
|
| mouse_watcher_.Start();
|
| Layout();
|
| @@ -385,8 +384,7 @@ void DownloadShelfView::LinkClicked(views::Link* source, int event_flags) {
|
|
|
| void DownloadShelfView::ButtonPressed(
|
| views::Button* button, const ui::Event& event) {
|
| - auto_closed_ = false;
|
| - Close();
|
| + Close(USER_ACTION);
|
| }
|
|
|
| bool DownloadShelfView::IsShowing() const {
|
| @@ -401,17 +399,17 @@ void DownloadShelfView::DoShow() {
|
| shelf_animation_->Show();
|
| }
|
|
|
| -void DownloadShelfView::DoClose() {
|
| +void DownloadShelfView::DoClose(CloseReason reason) {
|
| int num_in_progress = 0;
|
| for (size_t i = 0; i < download_views_.size(); ++i) {
|
| if (download_views_[i]->download()->IsInProgress())
|
| ++num_in_progress;
|
| }
|
| - download_util::RecordShelfClose(
|
| - download_views_.size(), num_in_progress, auto_closed_);
|
| + download_util::RecordShelfClose(download_views_.size(),
|
| + num_in_progress,
|
| + reason == AUTOMATIC);
|
| parent_->SetDownloadShelfVisible(false);
|
| shelf_animation_->Hide();
|
| - auto_closed_ = true;
|
| }
|
|
|
| Browser* DownloadShelfView::browser() const {
|
|
|