Chromium Code Reviews| 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/translate/translate_infobar_delegate.h" | 5 #include "chrome/browser/translate/translate_infobar_delegate.h" |
| 6 | 6 |
| 7 #include <algorithm> | 7 #include <algorithm> |
| 8 | 8 |
| 9 #include "base/metrics/histogram.h" | 9 #include "base/metrics/histogram.h" |
| 10 #include "chrome/browser/browser_process.h" | 10 #include "chrome/browser/browser_process.h" |
| (...skipping 332 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 343 std::string language_code = iter->first; | 343 std::string language_code = iter->first; |
| 344 if (language_code == original_language) { | 344 if (language_code == original_language) { |
| 345 original_language_index_ = iter - languages_.begin(); | 345 original_language_index_ = iter - languages_.begin(); |
| 346 initial_original_language_index_ = original_language_index_; | 346 initial_original_language_index_ = original_language_index_; |
| 347 } | 347 } |
| 348 if (language_code == target_language) | 348 if (language_code == target_language) |
| 349 target_language_index_ = iter - languages_.begin(); | 349 target_language_index_ = iter - languages_.begin(); |
| 350 } | 350 } |
| 351 } | 351 } |
| 352 | 352 |
| 353 bool TranslateInfoBarDelegate::ShouldExpire( | |
| 354 const NavigationController::LoadCommittedDetails& details) const { | |
| 355 // Note: we allow closing this infobar even if the main frame navigation | |
| 356 // was programmatic and not initiated by the user - crbug.com/70261 . | |
|
MAD
2011/05/17 16:25:55
Remove extra space before '.'
| |
| 357 if (!details.is_user_initiated_main_frame_load() && !details.is_main_frame) | |
| 358 return false; | |
| 359 | |
| 360 return InfoBarDelegate::ShouldExpireInternal(details); | |
| 361 } | |
| 362 | |
| 353 void TranslateInfoBarDelegate::InfoBarDismissed() { | 363 void TranslateInfoBarDelegate::InfoBarDismissed() { |
| 354 if (type_ != BEFORE_TRANSLATE) | 364 if (type_ != BEFORE_TRANSLATE) |
| 355 return; | 365 return; |
| 356 | 366 |
| 357 // The user closed the infobar without clicking the translate button. | 367 // The user closed the infobar without clicking the translate button. |
| 358 TranslationDeclined(); | 368 TranslationDeclined(); |
| 359 UMA_HISTOGRAM_COUNTS("Translate.DeclineTranslateCloseInfobar", 1); | 369 UMA_HISTOGRAM_COUNTS("Translate.DeclineTranslateCloseInfobar", 1); |
| 360 } | 370 } |
| 361 | 371 |
| 362 gfx::Image* TranslateInfoBarDelegate::GetIcon() const { | 372 gfx::Image* TranslateInfoBarDelegate::GetIcon() const { |
| 363 return &ResourceBundle::GetSharedInstance().GetNativeImageNamed( | 373 return &ResourceBundle::GetSharedInstance().GetNativeImageNamed( |
| 364 IDR_INFOBAR_TRANSLATE); | 374 IDR_INFOBAR_TRANSLATE); |
| 365 } | 375 } |
| 366 | 376 |
| 367 InfoBarDelegate::Type TranslateInfoBarDelegate::GetInfoBarType() const { | 377 InfoBarDelegate::Type TranslateInfoBarDelegate::GetInfoBarType() const { |
| 368 return PAGE_ACTION_TYPE; | 378 return PAGE_ACTION_TYPE; |
| 369 } | 379 } |
| 370 | 380 |
| 371 TranslateInfoBarDelegate* | 381 TranslateInfoBarDelegate* |
| 372 TranslateInfoBarDelegate::AsTranslateInfoBarDelegate() { | 382 TranslateInfoBarDelegate::AsTranslateInfoBarDelegate() { |
| 373 return this; | 383 return this; |
| 374 } | 384 } |
| 375 | 385 |
| 376 std::string TranslateInfoBarDelegate::GetPageHost() { | 386 std::string TranslateInfoBarDelegate::GetPageHost() { |
| 377 NavigationEntry* entry = tab_contents_->controller().GetActiveEntry(); | 387 NavigationEntry* entry = tab_contents_->controller().GetActiveEntry(); |
| 378 return entry ? entry->url().HostNoBrackets() : std::string(); | 388 return entry ? entry->url().HostNoBrackets() : std::string(); |
| 379 } | 389 } |
| OLD | NEW |