| OLD | NEW | 
|---|
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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/translate/translate_bubble_view.h" | 5 #include "chrome/browser/ui/views/translate/translate_bubble_view.h" | 
| 6 | 6 | 
| 7 #include <algorithm> | 7 #include <algorithm> | 
| 8 #include <string> | 8 #include <string> | 
| 9 #include <vector> | 9 #include <vector> | 
| 10 | 10 | 
| (...skipping 250 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 261 gfx::Size TranslateBubbleView::GetPreferredSize() { | 261 gfx::Size TranslateBubbleView::GetPreferredSize() { | 
| 262   int width = 0; | 262   int width = 0; | 
| 263   for (int i = 0; i < child_count(); i++) { | 263   for (int i = 0; i < child_count(); i++) { | 
| 264     views::View* child = child_at(i); | 264     views::View* child = child_at(i); | 
| 265     width = std::max(width, child->GetPreferredSize().width()); | 265     width = std::max(width, child->GetPreferredSize().width()); | 
| 266   } | 266   } | 
| 267   int height = GetCurrentView()->GetPreferredSize().height(); | 267   int height = GetCurrentView()->GetPreferredSize().height(); | 
| 268   return gfx::Size(width, height); | 268   return gfx::Size(width, height); | 
| 269 } | 269 } | 
| 270 | 270 | 
| 271 void TranslateBubbleView::OnSelectedIndexChanged(views::Combobox* combobox) { | 271 void TranslateBubbleView::OnPerformAction(views::Combobox* combobox) { | 
| 272   HandleComboboxSelectedIndexChanged(static_cast<ComboboxID>(combobox->id())); | 272   HandleComboboxPerformAction(static_cast<ComboboxID>(combobox->id())); | 
| 273 } |  | 
| 274 |  | 
| 275 void TranslateBubbleView::OnComboboxTextButtonClicked( |  | 
| 276     views::Combobox* combobox) { |  | 
| 277   if (combobox != denial_combobox_) |  | 
| 278     return; |  | 
| 279 |  | 
| 280   denial_button_clicked_ = true; |  | 
| 281   int index = combobox->selected_index(); |  | 
| 282   switch (index) { |  | 
| 283     case TranslateDenialComboboxModel::INDEX_NOPE: |  | 
| 284       break; |  | 
| 285     case TranslateDenialComboboxModel::INDEX_NEVER_TRANSLATE_LANGUAGE: |  | 
| 286       model_->SetNeverTranslateLanguage(true); |  | 
| 287       break; |  | 
| 288     case TranslateDenialComboboxModel::INDEX_NEVER_TRANSLATE_SITE: |  | 
| 289       model_->SetNeverTranslateSite(true); |  | 
| 290       break; |  | 
| 291     default: |  | 
| 292       NOTREACHED(); |  | 
| 293       break; |  | 
| 294   } |  | 
| 295   StartFade(false); |  | 
| 296 } | 273 } | 
| 297 | 274 | 
| 298 void TranslateBubbleView::LinkClicked(views::Link* source, int event_flags) { | 275 void TranslateBubbleView::LinkClicked(views::Link* source, int event_flags) { | 
| 299   HandleLinkClicked(static_cast<LinkID>(source->id())); | 276   HandleLinkClicked(static_cast<LinkID>(source->id())); | 
| 300 } | 277 } | 
| 301 | 278 | 
| 302 void TranslateBubbleView::WebContentsDestroyed( | 279 void TranslateBubbleView::WebContentsDestroyed( | 
| 303     content::WebContents* web_contents) { | 280     content::WebContents* web_contents) { | 
| 304   GetWidget()->CloseNow(); | 281   GetWidget()->CloseNow(); | 
| 305 } | 282 } | 
| (...skipping 115 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 421           GURL(url), | 398           GURL(url), | 
| 422           content::Referrer(), | 399           content::Referrer(), | 
| 423           NEW_FOREGROUND_TAB, | 400           NEW_FOREGROUND_TAB, | 
| 424           content::PAGE_TRANSITION_LINK, | 401           content::PAGE_TRANSITION_LINK, | 
| 425           false)); | 402           false)); | 
| 426       break; | 403       break; | 
| 427     } | 404     } | 
| 428   } | 405   } | 
| 429 } | 406 } | 
| 430 | 407 | 
| 431 void TranslateBubbleView::HandleComboboxSelectedIndexChanged( | 408 void TranslateBubbleView::HandleComboboxPerformAction( | 
| 432     TranslateBubbleView::ComboboxID sender_id) { | 409     TranslateBubbleView::ComboboxID sender_id) { | 
| 433   switch (sender_id) { | 410   switch (sender_id) { | 
| 434     case COMBOBOX_ID_DENIAL: { | 411     case COMBOBOX_ID_DENIAL: { | 
| 435       // do nothing | 412       denial_button_clicked_ = true; | 
|  | 413       int index = denial_combobox_->selected_index(); | 
|  | 414       switch (index) { | 
|  | 415         case TranslateDenialComboboxModel::INDEX_NOPE: | 
|  | 416           break; | 
|  | 417         case TranslateDenialComboboxModel::INDEX_NEVER_TRANSLATE_LANGUAGE: | 
|  | 418           model_->SetNeverTranslateLanguage(true); | 
|  | 419           break; | 
|  | 420         case TranslateDenialComboboxModel::INDEX_NEVER_TRANSLATE_SITE: | 
|  | 421           model_->SetNeverTranslateSite(true); | 
|  | 422           break; | 
|  | 423         default: | 
|  | 424           NOTREACHED(); | 
|  | 425           break; | 
|  | 426       } | 
|  | 427       StartFade(false); | 
| 436       break; | 428       break; | 
| 437     } | 429     } | 
| 438     case COMBOBOX_ID_SOURCE_LANGUAGE: { | 430     case COMBOBOX_ID_SOURCE_LANGUAGE: { | 
| 439       if (model_->GetOriginalLanguageIndex() == | 431       if (model_->GetOriginalLanguageIndex() == | 
| 440           source_language_combobox_->selected_index()) { | 432           source_language_combobox_->selected_index()) { | 
| 441         break; | 433         break; | 
| 442       } | 434       } | 
| 443       model_->UpdateOriginalLanguageIndex( | 435       model_->UpdateOriginalLanguageIndex( | 
| 444           source_language_combobox_->selected_index()); | 436           source_language_combobox_->selected_index()); | 
| 445       UpdateAdvancedView(); | 437       UpdateAdvancedView(); | 
| (...skipping 22 matching lines...) Expand all  Loading... | 
| 468 views::View* TranslateBubbleView::CreateViewBeforeTranslate() { | 460 views::View* TranslateBubbleView::CreateViewBeforeTranslate() { | 
| 469   views::Label* message_label = new views::Label( | 461   views::Label* message_label = new views::Label( | 
| 470       l10n_util::GetStringUTF16(IDS_TRANSLATE_BUBBLE_BEFORE_TRANSLATE)); | 462       l10n_util::GetStringUTF16(IDS_TRANSLATE_BUBBLE_BEFORE_TRANSLATE)); | 
| 471 | 463 | 
| 472   base::string16 original_language_name = | 464   base::string16 original_language_name = | 
| 473       model_->GetLanguageNameAt(model_->GetOriginalLanguageIndex()); | 465       model_->GetLanguageNameAt(model_->GetOriginalLanguageIndex()); | 
| 474   denial_combobox_ = new views::Combobox( | 466   denial_combobox_ = new views::Combobox( | 
| 475       new TranslateDenialComboboxModel(original_language_name)); | 467       new TranslateDenialComboboxModel(original_language_name)); | 
| 476   denial_combobox_->set_id(COMBOBOX_ID_DENIAL); | 468   denial_combobox_->set_id(COMBOBOX_ID_DENIAL); | 
| 477   denial_combobox_->set_listener(this); | 469   denial_combobox_->set_listener(this); | 
| 478   denial_combobox_->SetStyle(views::Combobox::STYLE_NOTIFY_ON_CLICK); | 470   denial_combobox_->SetStyle(views::Combobox::STYLE_ACTION); | 
| 479 | 471 | 
| 480   views::View* view = new views::View(); | 472   views::View* view = new views::View(); | 
| 481   views::GridLayout* layout = new views::GridLayout(view); | 473   views::GridLayout* layout = new views::GridLayout(view); | 
| 482   view->SetLayoutManager(layout); | 474   view->SetLayoutManager(layout); | 
| 483 | 475 | 
| 484   using views::GridLayout; | 476   using views::GridLayout; | 
| 485 | 477 | 
| 486   enum { | 478   enum { | 
| 487     COLUMN_SET_ID_MESSAGE, | 479     COLUMN_SET_ID_MESSAGE, | 
| 488     COLUMN_SET_ID_CONTENT, | 480     COLUMN_SET_ID_CONTENT, | 
| (...skipping 301 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 790         model_->ShouldAlwaysTranslate()); | 782         model_->ShouldAlwaysTranslate()); | 
| 791   } | 783   } | 
| 792 | 784 | 
| 793   base::string16 label; | 785   base::string16 label; | 
| 794   if (model_->IsPageTranslatedInCurrentLanguages()) | 786   if (model_->IsPageTranslatedInCurrentLanguages()) | 
| 795     label = l10n_util::GetStringUTF16(IDS_DONE); | 787     label = l10n_util::GetStringUTF16(IDS_DONE); | 
| 796   else | 788   else | 
| 797     label = l10n_util::GetStringUTF16(IDS_TRANSLATE_BUBBLE_ACCEPT); | 789     label = l10n_util::GetStringUTF16(IDS_TRANSLATE_BUBBLE_ACCEPT); | 
| 798   advanced_done_button_->SetText(label); | 790   advanced_done_button_->SetText(label); | 
| 799 } | 791 } | 
| OLD | NEW | 
|---|