| OLD | NEW |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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/ui/views/location_bar/content_setting_image_view.h" | 5 #include "chrome/browser/ui/views/location_bar/content_setting_image_view.h" |
| 6 | 6 |
| 7 #include "base/utf_string_conversions.h" | 7 #include "base/utf_string_conversions.h" |
| 8 #include "chrome/browser/content_settings/tab_specific_content_settings.h" | 8 #include "chrome/browser/content_settings/tab_specific_content_settings.h" |
| 9 #include "chrome/browser/ui/browser.h" |
| 9 #include "chrome/browser/ui/content_settings/content_setting_bubble_model.h" | 10 #include "chrome/browser/ui/content_settings/content_setting_bubble_model.h" |
| 10 #include "chrome/browser/ui/content_settings/content_setting_image_model.h" | 11 #include "chrome/browser/ui/content_settings/content_setting_image_model.h" |
| 11 #include "chrome/browser/ui/tab_contents/tab_contents_wrapper.h" | 12 #include "chrome/browser/ui/tab_contents/tab_contents_wrapper.h" |
| 12 #include "chrome/browser/ui/views/content_setting_bubble_contents.h" | 13 #include "chrome/browser/ui/views/content_setting_bubble_contents.h" |
| 13 #include "chrome/browser/ui/views/location_bar/location_bar_view.h" | 14 #include "chrome/browser/ui/views/location_bar/location_bar_view.h" |
| 14 #include "content/browser/tab_contents/tab_contents.h" | 15 #include "content/browser/tab_contents/tab_contents.h" |
| 15 #include "third_party/skia/include/core/SkShader.h" | 16 #include "third_party/skia/include/core/SkShader.h" |
| 16 #include "ui/base/l10n/l10n_util.h" | 17 #include "ui/base/l10n/l10n_util.h" |
| 17 #include "ui/base/resource/resource_bundle.h" | 18 #include "ui/base/resource/resource_bundle.h" |
| 18 #include "ui/gfx/canvas.h" | 19 #include "ui/gfx/canvas.h" |
| (...skipping 19 matching lines...) Expand all Loading... |
| 38 | 39 |
| 39 | 40 |
| 40 // The fraction of the animation we'll spend animating the string into view, and | 41 // The fraction of the animation we'll spend animating the string into view, and |
| 41 // then again animating it closed - total animation (slide out, show, then | 42 // then again animating it closed - total animation (slide out, show, then |
| 42 // slide in) is 1.0. | 43 // slide in) is 1.0. |
| 43 const double kAnimatingFraction = kOpenTimeMs * 1.0 / kMoveTimeMs; | 44 const double kAnimatingFraction = kOpenTimeMs * 1.0 / kMoveTimeMs; |
| 44 } | 45 } |
| 45 | 46 |
| 46 ContentSettingImageView::ContentSettingImageView( | 47 ContentSettingImageView::ContentSettingImageView( |
| 47 ContentSettingsType content_type, | 48 ContentSettingsType content_type, |
| 48 LocationBarView* parent, | 49 LocationBarView* parent) |
| 49 Profile* profile) | |
| 50 : ui::LinearAnimation(kMoveTimeMs, kFrameRateHz, NULL), | 50 : ui::LinearAnimation(kMoveTimeMs, kFrameRateHz, NULL), |
| 51 content_setting_image_model_( | 51 content_setting_image_model_( |
| 52 ContentSettingImageModel::CreateContentSettingImageModel( | 52 ContentSettingImageModel::CreateContentSettingImageModel( |
| 53 content_type)), | 53 content_type)), |
| 54 parent_(parent), | 54 parent_(parent), |
| 55 profile_(profile), | |
| 56 bubble_(NULL), | 55 bubble_(NULL), |
| 57 animation_in_progress_(false), | 56 animation_in_progress_(false), |
| 58 text_size_(0), | 57 text_size_(0), |
| 59 visible_text_size_(0) { | 58 visible_text_size_(0) { |
| 60 SetHorizontalAlignment(ImageView::LEADING); | 59 SetHorizontalAlignment(ImageView::LEADING); |
| 61 } | 60 } |
| 62 | 61 |
| 63 ContentSettingImageView::~ContentSettingImageView() { | 62 ContentSettingImageView::~ContentSettingImageView() { |
| 64 if (bubble_) | 63 if (bubble_) |
| 65 bubble_->Close(); | 64 bubble_->Close(); |
| (...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 129 return; | 128 return; |
| 130 | 129 |
| 131 TabContentsWrapper* tab_contents = parent_->GetTabContentsWrapper(); | 130 TabContentsWrapper* tab_contents = parent_->GetTabContentsWrapper(); |
| 132 if (!tab_contents) | 131 if (!tab_contents) |
| 133 return; | 132 return; |
| 134 | 133 |
| 135 gfx::Rect screen_bounds(GetImageBounds()); | 134 gfx::Rect screen_bounds(GetImageBounds()); |
| 136 gfx::Point origin(screen_bounds.origin()); | 135 gfx::Point origin(screen_bounds.origin()); |
| 137 views::View::ConvertPointToScreen(this, &origin); | 136 views::View::ConvertPointToScreen(this, &origin); |
| 138 screen_bounds.set_origin(origin); | 137 screen_bounds.set_origin(origin); |
| 138 Profile* profile = parent_->browser()->profile(); |
| 139 ContentSettingBubbleContents* bubble_contents = | 139 ContentSettingBubbleContents* bubble_contents = |
| 140 new ContentSettingBubbleContents( | 140 new ContentSettingBubbleContents( |
| 141 ContentSettingBubbleModel::CreateContentSettingBubbleModel( | 141 ContentSettingBubbleModel::CreateContentSettingBubbleModel( |
| 142 parent_->browser(), tab_contents, profile_, | 142 parent_->browser(), tab_contents, profile, |
| 143 content_setting_image_model_->get_content_settings_type()), | 143 content_setting_image_model_->get_content_settings_type()), |
| 144 profile_, tab_contents->tab_contents()); | 144 profile, tab_contents->tab_contents()); |
| 145 bubble_ = Bubble::Show(GetWidget(), screen_bounds, BubbleBorder::TOP_RIGHT, | 145 bubble_ = Bubble::Show(GetWidget(), screen_bounds, BubbleBorder::TOP_RIGHT, |
| 146 bubble_contents, this); | 146 bubble_contents, this); |
| 147 bubble_contents->set_bubble(bubble_); | 147 bubble_contents->set_bubble(bubble_); |
| 148 } | 148 } |
| 149 | 149 |
| 150 void ContentSettingImageView::VisibilityChanged(View* starting_from, | 150 void ContentSettingImageView::VisibilityChanged(View* starting_from, |
| 151 bool is_visible) { | 151 bool is_visible) { |
| 152 if (!is_visible && bubble_) | 152 if (!is_visible && bubble_) |
| 153 bubble_->Close(); | 153 bubble_->Close(); |
| 154 } | 154 } |
| (...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 236 } else if (state > (1.0 - kAnimatingFraction)) { | 236 } else if (state > (1.0 - kAnimatingFraction)) { |
| 237 visible_text_size_ = static_cast<int>(text_size_ * (1.0 - state) / | 237 visible_text_size_ = static_cast<int>(text_size_ * (1.0 - state) / |
| 238 kAnimatingFraction); | 238 kAnimatingFraction); |
| 239 } else { | 239 } else { |
| 240 visible_text_size_ = text_size_; | 240 visible_text_size_ = text_size_; |
| 241 } | 241 } |
| 242 parent_->Layout(); | 242 parent_->Layout(); |
| 243 parent_->SchedulePaint(); | 243 parent_->SchedulePaint(); |
| 244 } | 244 } |
| 245 | 245 |
| OLD | NEW |