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

Side by Side Diff: chrome/browser/ui/views/translate/translate_bubble_view.cc

Issue 1967743002: Temp fix for blank view. Somehow the third calls to AddIconToLayout() cause this strange bug. Tried… (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: add comments adn also remove the icon from the error view Created 4 years, 7 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
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 <stddef.h> 7 #include <stddef.h>
8 #include <algorithm> 8 #include <algorithm>
9 #include <string> 9 #include <string>
10 #include <utility> 10 #include <utility>
(...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after
78 link->set_id(id); 78 link->set_id(id);
79 return link; 79 return link;
80 } 80 }
81 81
82 views::Link* CreateLink(views::LinkListener* listener, 82 views::Link* CreateLink(views::LinkListener* listener,
83 int resource_id, 83 int resource_id,
84 int id) { 84 int id) {
85 return CreateLink(listener, l10n_util::GetStringUTF16(resource_id), id); 85 return CreateLink(listener, l10n_util::GetStringUTF16(resource_id), id);
86 } 86 }
87 87
88 // Somehow the third views calling AddIconToLayout show blank as in
msw 2016/05/10 20:43:21 This comment isn't very good. What does "third vie
ftang 2016/05/10 21:17:26 Any third view (regardless which one) show the ico
ftang 2016/05/10 21:17:26 Done.
89 // https://bugs.chromium.org/p/chromium/issues/detail?id=610351
90 // We cannot figure out what is going on under the hook. Caching the Skia in
91 // a global variable didn't help.
88 void AddIconToLayout(views::GridLayout* layout) { 92 void AddIconToLayout(views::GridLayout* layout) {
89 views::ImageView* icon = new views::ImageView(); 93 views::ImageView* icon = new views::ImageView();
90 ui::ResourceBundle& bundle = ui::ResourceBundle::GetSharedInstance(); 94 ui::ResourceBundle& bundle = ui::ResourceBundle::GetSharedInstance();
91 icon->SetImage(bundle.GetImageNamed(IDR_TRANSLATE_ICON_BUBBLE).ToImageSkia()); 95 icon->SetImage(bundle.GetImageNamed(IDR_TRANSLATE_ICON_BUBBLE).ToImageSkia());
92 layout->AddView(icon); 96 layout->AddView(icon);
93 } 97 }
94 98
95 bool Use2016Q2UI() { 99 bool Use2016Q2UI() {
96 return base::FeatureList::IsEnabled(translate::kTranslateUI2016Q2); 100 return base::FeatureList::IsEnabled(translate::kTranslateUI2016Q2);
97 } 101 }
(...skipping 598 matching lines...) Expand 10 before | Expand all | Expand 10 after
696 view->SetLayoutManager(layout); 700 view->SetLayoutManager(layout);
697 701
698 using views::GridLayout; 702 using views::GridLayout;
699 703
700 enum { 704 enum {
701 COLUMN_SET_ID_MESSAGE, 705 COLUMN_SET_ID_MESSAGE,
702 COLUMN_SET_ID_CONTENT, 706 COLUMN_SET_ID_CONTENT,
703 }; 707 };
704 708
705 views::ColumnSet* cs = layout->AddColumnSet(COLUMN_SET_ID_MESSAGE); 709 views::ColumnSet* cs = layout->AddColumnSet(COLUMN_SET_ID_MESSAGE);
706 if (Use2016Q2UI()) {
707 cs->AddColumn(GridLayout::LEADING, GridLayout::CENTER, 0,
708 GridLayout::USE_PREF, 0, 0);
709 cs->AddPaddingColumn(0, views::kRelatedButtonHSpacing);
710 }
711 cs->AddColumn(GridLayout::LEADING, GridLayout::CENTER, 0, 710 cs->AddColumn(GridLayout::LEADING, GridLayout::CENTER, 0,
712 GridLayout::USE_PREF, 0, 0); 711 GridLayout::USE_PREF, 0, 0);
713 cs->AddPaddingColumn(0, views::kRelatedButtonHSpacing); 712 cs->AddPaddingColumn(0, views::kRelatedButtonHSpacing);
714 cs->AddColumn(GridLayout::LEADING, GridLayout::CENTER, 0, 713 cs->AddColumn(GridLayout::LEADING, GridLayout::CENTER, 0,
715 GridLayout::USE_PREF, 0, 0); 714 GridLayout::USE_PREF, 0, 0);
716 cs->AddPaddingColumn(1, 0); 715 cs->AddPaddingColumn(1, 0);
717 716
718 cs = layout->AddColumnSet(COLUMN_SET_ID_CONTENT); 717 cs = layout->AddColumnSet(COLUMN_SET_ID_CONTENT);
719 cs->AddPaddingColumn(1, 0); 718 cs->AddPaddingColumn(1, 0);
720 cs->AddColumn(GridLayout::LEADING, GridLayout::CENTER, 0, 719 cs->AddColumn(GridLayout::LEADING, GridLayout::CENTER, 0,
721 GridLayout::USE_PREF, 0, 0); 720 GridLayout::USE_PREF, 0, 0);
722 721
723 layout->StartRow(0, COLUMN_SET_ID_MESSAGE); 722 layout->StartRow(0, COLUMN_SET_ID_MESSAGE);
724 if (Use2016Q2UI())
725 AddIconToLayout(layout);
726 layout->AddView(label); 723 layout->AddView(label);
727 layout->AddView( 724 layout->AddView(
728 CreateLink(this, IDS_TRANSLATE_BUBBLE_ADVANCED, LINK_ID_ADVANCED)); 725 CreateLink(this, IDS_TRANSLATE_BUBBLE_ADVANCED, LINK_ID_ADVANCED));
729 726
730 layout->AddPaddingRow(0, views::kUnrelatedControlVerticalSpacing); 727 layout->AddPaddingRow(0, views::kUnrelatedControlVerticalSpacing);
731 728
732 layout->StartRow(0, COLUMN_SET_ID_CONTENT); 729 layout->StartRow(0, COLUMN_SET_ID_CONTENT);
733 layout->AddView(CreateLabelButton( 730 layout->AddView(CreateLabelButton(
734 this, l10n_util::GetStringUTF16(IDS_TRANSLATE_BUBBLE_REVERT), 731 this, l10n_util::GetStringUTF16(IDS_TRANSLATE_BUBBLE_REVERT),
735 BUTTON_ID_SHOW_ORIGINAL)); 732 BUTTON_ID_SHOW_ORIGINAL));
(...skipping 10 matching lines...) Expand all
746 view->SetLayoutManager(layout); 743 view->SetLayoutManager(layout);
747 744
748 using views::GridLayout; 745 using views::GridLayout;
749 746
750 enum { 747 enum {
751 COLUMN_SET_ID_MESSAGE, 748 COLUMN_SET_ID_MESSAGE,
752 COLUMN_SET_ID_CONTENT, 749 COLUMN_SET_ID_CONTENT,
753 }; 750 };
754 751
755 views::ColumnSet* cs = layout->AddColumnSet(COLUMN_SET_ID_MESSAGE); 752 views::ColumnSet* cs = layout->AddColumnSet(COLUMN_SET_ID_MESSAGE);
756 if (Use2016Q2UI()) {
757 cs->AddColumn(GridLayout::LEADING, GridLayout::CENTER, 0,
758 GridLayout::USE_PREF, 0, 0);
759 cs->AddPaddingColumn(0, views::kRelatedButtonHSpacing);
760 }
761 cs->AddColumn(GridLayout::LEADING, GridLayout::CENTER, 0, 753 cs->AddColumn(GridLayout::LEADING, GridLayout::CENTER, 0,
762 GridLayout::USE_PREF, 0, 0); 754 GridLayout::USE_PREF, 0, 0);
763 cs->AddPaddingColumn(0, views::kRelatedButtonHSpacing); 755 cs->AddPaddingColumn(0, views::kRelatedButtonHSpacing);
764 cs->AddColumn(GridLayout::LEADING, GridLayout::CENTER, 0, 756 cs->AddColumn(GridLayout::LEADING, GridLayout::CENTER, 0,
765 GridLayout::USE_PREF, 0, 0); 757 GridLayout::USE_PREF, 0, 0);
766 cs->AddPaddingColumn(1, 0); 758 cs->AddPaddingColumn(1, 0);
767 759
768 cs = layout->AddColumnSet(COLUMN_SET_ID_CONTENT); 760 cs = layout->AddColumnSet(COLUMN_SET_ID_CONTENT);
769 cs->AddPaddingColumn(1, 0); 761 cs->AddPaddingColumn(1, 0);
770 cs->AddColumn(GridLayout::LEADING, GridLayout::CENTER, 0, 762 cs->AddColumn(GridLayout::LEADING, GridLayout::CENTER, 0,
771 GridLayout::USE_PREF, 0, 0); 763 GridLayout::USE_PREF, 0, 0);
772 764
773 layout->StartRow(0, COLUMN_SET_ID_MESSAGE); 765 layout->StartRow(0, COLUMN_SET_ID_MESSAGE);
774 if (Use2016Q2UI())
775 AddIconToLayout(layout);
776 layout->AddView(label); 766 layout->AddView(label);
777 layout->AddView( 767 layout->AddView(
778 CreateLink(this, IDS_TRANSLATE_BUBBLE_ADVANCED, LINK_ID_ADVANCED)); 768 CreateLink(this, IDS_TRANSLATE_BUBBLE_ADVANCED, LINK_ID_ADVANCED));
779 769
780 layout->AddPaddingRow(0, views::kUnrelatedControlVerticalSpacing); 770 layout->AddPaddingRow(0, views::kUnrelatedControlVerticalSpacing);
781 771
782 layout->StartRow(0, COLUMN_SET_ID_CONTENT); 772 layout->StartRow(0, COLUMN_SET_ID_CONTENT);
783 layout->AddView(CreateLabelButton( 773 layout->AddView(CreateLabelButton(
784 this, l10n_util::GetStringUTF16(IDS_TRANSLATE_BUBBLE_TRY_AGAIN), 774 this, l10n_util::GetStringUTF16(IDS_TRANSLATE_BUBBLE_TRY_AGAIN),
785 BUTTON_ID_TRY_AGAIN)); 775 BUTTON_ID_TRY_AGAIN));
(...skipping 150 matching lines...) Expand 10 before | Expand all | Expand 10 after
936 advanced_done_button_->SizeToPreferredSize(); 926 advanced_done_button_->SizeToPreferredSize();
937 if (advanced_view_) 927 if (advanced_view_)
938 advanced_view_->Layout(); 928 advanced_view_->Layout();
939 } 929 }
940 930
941 void TranslateBubbleView::ReportUiAction( 931 void TranslateBubbleView::ReportUiAction(
942 translate::TranslateBubbleUiEvent action) { 932 translate::TranslateBubbleUiEvent action) {
943 UMA_HISTOGRAM_ENUMERATION(kTranslateBubbleUIEvent, action, 933 UMA_HISTOGRAM_ENUMERATION(kTranslateBubbleUIEvent, action,
944 translate::TRANSLATE_BUBBLE_UI_EVENT_MAX); 934 translate::TRANSLATE_BUBBLE_UI_EVENT_MAX);
945 } 935 }
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698