Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(139)

Side by Side Diff: chrome/browser/ui/views/download_item_view.cc

Issue 6154001: Move animation code to new ui/base/animation directory.... (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: '' Created 9 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "chrome/browser/views/download_item_view.h" 5 #include "chrome/browser/views/download_item_view.h"
6 6
7 #include <vector> 7 #include <vector>
8 8
9 #include "app/l10n_util.h" 9 #include "app/l10n_util.h"
10 #include "app/resource_bundle.h" 10 #include "app/resource_bundle.h"
11 #include "app/slide_animation.h"
12 #include "app/text_elider.h" 11 #include "app/text_elider.h"
13 #include "base/callback.h" 12 #include "base/callback.h"
14 #include "base/file_path.h" 13 #include "base/file_path.h"
15 #include "base/i18n/rtl.h" 14 #include "base/i18n/rtl.h"
16 #include "base/metrics/histogram.h" 15 #include "base/metrics/histogram.h"
17 #include "base/string_util.h" 16 #include "base/string_util.h"
18 #include "base/sys_string_conversions.h" 17 #include "base/sys_string_conversions.h"
19 #include "base/utf_string_conversions.h" 18 #include "base/utf_string_conversions.h"
20 #include "chrome/browser/browser_process.h" 19 #include "chrome/browser/browser_process.h"
21 #include "chrome/browser/download/download_item_model.h" 20 #include "chrome/browser/download/download_item_model.h"
22 #include "chrome/browser/download/download_util.h" 21 #include "chrome/browser/download/download_util.h"
23 #include "chrome/browser/themes/browser_theme_provider.h" 22 #include "chrome/browser/themes/browser_theme_provider.h"
24 #include "chrome/browser/views/download_shelf_view.h" 23 #include "chrome/browser/views/download_shelf_view.h"
25 #include "gfx/canvas_skia.h" 24 #include "gfx/canvas_skia.h"
26 #include "gfx/color_utils.h" 25 #include "gfx/color_utils.h"
27 #include "grit/generated_resources.h" 26 #include "grit/generated_resources.h"
28 #include "grit/theme_resources.h" 27 #include "grit/theme_resources.h"
28 #include "ui/base/animation/slide_animation.h"
29 #include "views/controls/button/native_button.h" 29 #include "views/controls/button/native_button.h"
30 #include "views/controls/menu/menu_2.h" 30 #include "views/controls/menu/menu_2.h"
31 #include "views/widget/root_view.h" 31 #include "views/widget/root_view.h"
32 #include "views/widget/widget.h" 32 #include "views/widget/widget.h"
33 33
34 using base::TimeDelta; 34 using base::TimeDelta;
35 35
36 // TODO(paulg): These may need to be adjusted when download progress 36 // TODO(paulg): These may need to be adjusted when download progress
37 // animation is added, and also possibly to take into account 37 // animation is added, and also possibly to take into account
38 // different screen resolutions. 38 // different screen resolutions.
(...skipping 191 matching lines...) Expand 10 before | Expand all | Expand 10 after
230 // Drop down button is glued to the left of the download shelf. 230 // Drop down button is glued to the left of the download shelf.
231 drop_down_x_left_ = 0; 231 drop_down_x_left_ = 0;
232 drop_down_x_right_ = normal_drop_down_image_set_.top->width(); 232 drop_down_x_right_ = normal_drop_down_image_set_.top->width();
233 } else { 233 } else {
234 // Drop down button is glued to the right of the download shelf. 234 // Drop down button is glued to the right of the download shelf.
235 drop_down_x_left_ = 235 drop_down_x_left_ =
236 size.width() - normal_drop_down_image_set_.top->width(); 236 size.width() - normal_drop_down_image_set_.top->width();
237 drop_down_x_right_ = size.width(); 237 drop_down_x_right_ = size.width();
238 } 238 }
239 239
240 body_hover_animation_.reset(new SlideAnimation(this)); 240 body_hover_animation_.reset(new ui::SlideAnimation(this));
241 drop_hover_animation_.reset(new SlideAnimation(this)); 241 drop_hover_animation_.reset(new ui::SlideAnimation(this));
242 242
243 if (download->safety_state() == DownloadItem::DANGEROUS) { 243 if (download->safety_state() == DownloadItem::DANGEROUS) {
244 tooltip_text_.clear(); 244 tooltip_text_.clear();
245 body_state_ = DANGEROUS; 245 body_state_ = DANGEROUS;
246 drop_down_state_ = DANGEROUS; 246 drop_down_state_ = DANGEROUS;
247 247
248 warning_icon_ = rb.GetBitmapNamed(IDR_WARNING); 248 warning_icon_ = rb.GetBitmapNamed(IDR_WARNING);
249 save_button_ = new views::NativeButton(this, 249 save_button_ = new views::NativeButton(this,
250 UTF16ToWide(l10n_util::GetStringUTF16( 250 UTF16ToWide(l10n_util::GetStringUTF16(
251 download->is_extension_install() ? 251 download->is_extension_install() ?
(...skipping 108 matching lines...) Expand 10 before | Expand all | Expand 10 after
360 switch (download_->state()) { 360 switch (download_->state()) {
361 case DownloadItem::IN_PROGRESS: 361 case DownloadItem::IN_PROGRESS:
362 download_->is_paused() ? StopDownloadProgress() : StartDownloadProgress(); 362 download_->is_paused() ? StopDownloadProgress() : StartDownloadProgress();
363 break; 363 break;
364 case DownloadItem::COMPLETE: 364 case DownloadItem::COMPLETE:
365 if (download_->auto_opened()) { 365 if (download_->auto_opened()) {
366 parent_->RemoveDownloadView(this); // This will delete us! 366 parent_->RemoveDownloadView(this); // This will delete us!
367 return; 367 return;
368 } 368 }
369 StopDownloadProgress(); 369 StopDownloadProgress();
370 complete_animation_.reset(new SlideAnimation(this)); 370 complete_animation_.reset(new ui::SlideAnimation(this));
371 complete_animation_->SetSlideDuration(kCompleteAnimationDurationMs); 371 complete_animation_->SetSlideDuration(kCompleteAnimationDurationMs);
372 complete_animation_->SetTweenType(Tween::LINEAR); 372 complete_animation_->SetTweenType(ui::Tween::LINEAR);
373 complete_animation_->Show(); 373 complete_animation_->Show();
374 if (status_text.empty()) 374 if (status_text.empty())
375 show_status_text_ = false; 375 show_status_text_ = false;
376 SchedulePaint(); 376 SchedulePaint();
377 LoadIcon(); 377 LoadIcon();
378 break; 378 break;
379 case DownloadItem::CANCELLED: 379 case DownloadItem::CANCELLED:
380 StopDownloadProgress(); 380 StopDownloadProgress();
381 LoadIcon(); 381 LoadIcon();
382 break; 382 break;
(...skipping 552 matching lines...) Expand 10 before | Expand all | Expand 10 after
935 } 935 }
936 936
937 AccessibilityTypes::State DownloadItemView::GetAccessibleState() { 937 AccessibilityTypes::State DownloadItemView::GetAccessibleState() {
938 if (download_->safety_state() == DownloadItem::DANGEROUS) { 938 if (download_->safety_state() == DownloadItem::DANGEROUS) {
939 return AccessibilityTypes::STATE_UNAVAILABLE; 939 return AccessibilityTypes::STATE_UNAVAILABLE;
940 } else { 940 } else {
941 return AccessibilityTypes::STATE_HASPOPUP; 941 return AccessibilityTypes::STATE_HASPOPUP;
942 } 942 }
943 } 943 }
944 944
945 void DownloadItemView::AnimationProgressed(const Animation* animation) { 945 void DownloadItemView::AnimationProgressed(const ui::Animation* animation) {
946 // We don't care if what animation (body button/drop button/complete), 946 // We don't care if what animation (body button/drop button/complete),
947 // is calling back, as they all have to go through the same paint call. 947 // is calling back, as they all have to go through the same paint call.
948 SchedulePaint(); 948 SchedulePaint();
949 } 949 }
950 950
951 void DownloadItemView::OpenDownload() { 951 void DownloadItemView::OpenDownload() {
952 // We're interested in how long it takes users to open downloads. If they 952 // We're interested in how long it takes users to open downloads. If they
953 // open downloads super quickly, we should be concerned about clickjacking. 953 // open downloads super quickly, we should be concerned about clickjacking.
954 UMA_HISTOGRAM_LONG_TIMES("clickjacking.open_download", 954 UMA_HISTOGRAM_LONG_TIMES("clickjacking.open_download",
955 base::Time::Now() - creation_time_); 955 base::Time::Now() - creation_time_);
(...skipping 117 matching lines...) Expand 10 before | Expand all | Expand 10 after
1073 1073
1074 // If the name has changed, call SetAccessibleName and notify 1074 // If the name has changed, call SetAccessibleName and notify
1075 // assistive technology that the name has changed so they can 1075 // assistive technology that the name has changed so they can
1076 // announce it immediately. 1076 // announce it immediately.
1077 if (new_name != current_name) { 1077 if (new_name != current_name) {
1078 SetAccessibleName(new_name); 1078 SetAccessibleName(new_name);
1079 if (GetWidget()) 1079 if (GetWidget())
1080 NotifyAccessibilityEvent(AccessibilityTypes::EVENT_NAME_CHANGED); 1080 NotifyAccessibilityEvent(AccessibilityTypes::EVENT_NAME_CHANGED);
1081 } 1081 }
1082 } 1082 }
OLDNEW
« no previous file with comments | « chrome/browser/ui/views/download_item_view.h ('k') | chrome/browser/ui/views/download_shelf_view.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698