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

Side by Side Diff: ui/app_list/views/folder_header_view.cc

Issue 227553008: Merge 261625 "Remove the red background color when user enters a..." (Closed) Base URL: svn://svn.chromium.org/chrome/branches/1916/src/
Patch Set: Created 6 years, 8 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
« 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 (c) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 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 "ui/app_list/views/folder_header_view.h" 5 #include "ui/app_list/views/folder_header_view.h"
6 6
7 #include "base/strings/utf_string_conversions.h" 7 #include "base/strings/utf_string_conversions.h"
8 #include "grit/ui_resources.h" 8 #include "grit/ui_resources.h"
9 #include "grit/ui_strings.h" 9 #include "grit/ui_strings.h"
10 #include "ui/app_list/app_list_constants.h" 10 #include "ui/app_list/app_list_constants.h"
(...skipping 29 matching lines...) Expand all
40 SetBorder(views::Border::CreateEmptyBorder(1, 1, 1, 1)); 40 SetBorder(views::Border::CreateEmptyBorder(1, 1, 1, 1));
41 const SkColor kFocusBorderColor = SkColorSetRGB(64, 128, 250); 41 const SkColor kFocusBorderColor = SkColorSetRGB(64, 128, 250);
42 SetFocusPainter(views::Painter::CreateSolidFocusPainter( 42 SetFocusPainter(views::Painter::CreateSolidFocusPainter(
43 kFocusBorderColor, 43 kFocusBorderColor,
44 gfx::Insets(0, 0, 1, 1))); 44 gfx::Insets(0, 0, 1, 1)));
45 } 45 }
46 46
47 virtual ~FolderNameView() { 47 virtual ~FolderNameView() {
48 } 48 }
49 49
50 void Update() {
51 SetBackgroundColor(text().size() <= kMaxFolderNameChars
52 ? kContentsBackgroundColor
53 : SK_ColorRED);
54 }
55
56 private: 50 private:
57 DISALLOW_COPY_AND_ASSIGN(FolderNameView); 51 DISALLOW_COPY_AND_ASSIGN(FolderNameView);
58 }; 52 };
59 53
60 FolderHeaderView::FolderHeaderView(FolderHeaderViewDelegate* delegate) 54 FolderHeaderView::FolderHeaderView(FolderHeaderViewDelegate* delegate)
61 : folder_item_(NULL), 55 : folder_item_(NULL),
62 back_button_(new views::ImageButton(this)), 56 back_button_(new views::ImageButton(this)),
63 folder_name_view_(new FolderNameView), 57 folder_name_view_(new FolderNameView),
64 folder_name_placeholder_text_( 58 folder_name_placeholder_text_(
65 ui::ResourceBundle::GetSharedInstance().GetLocalizedString( 59 ui::ResourceBundle::GetSharedInstance().GetLocalizedString(
(...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after
113 folder_item_ = NULL; 107 folder_item_ = NULL;
114 } 108 }
115 109
116 void FolderHeaderView::Update() { 110 void FolderHeaderView::Update() {
117 if (!folder_item_) 111 if (!folder_item_)
118 return; 112 return;
119 113
120 folder_name_view_->SetVisible(folder_name_visible_); 114 folder_name_view_->SetVisible(folder_name_visible_);
121 if (folder_name_visible_) { 115 if (folder_name_visible_) {
122 folder_name_view_->SetText(base::UTF8ToUTF16(folder_item_->name())); 116 folder_name_view_->SetText(base::UTF8ToUTF16(folder_item_->name()));
123 folder_name_view_->Update();
124 } 117 }
125 118
126 Layout(); 119 Layout();
127 } 120 }
128 121
129 gfx::Size FolderHeaderView::GetPreferredSize() { 122 gfx::Size FolderHeaderView::GetPreferredSize() {
130 return gfx::Size(kPreferredWidth, kPreferredHeight); 123 return gfx::Size(kPreferredWidth, kPreferredHeight);
131 } 124 }
132 125
133 void FolderHeaderView::Layout() { 126 void FolderHeaderView::Layout() {
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
174 rect.set_height(kBottomSeparatorHeight); 167 rect.set_height(kBottomSeparatorHeight);
175 canvas->FillRect(rect, kTopSeparatorColor); 168 canvas->FillRect(rect, kTopSeparatorColor);
176 } 169 }
177 170
178 void FolderHeaderView::ContentsChanged(views::Textfield* sender, 171 void FolderHeaderView::ContentsChanged(views::Textfield* sender,
179 const base::string16& new_contents) { 172 const base::string16& new_contents) {
180 // Temporarily remove from observer to ignore data change caused by us. 173 // Temporarily remove from observer to ignore data change caused by us.
181 if (!folder_item_) 174 if (!folder_item_)
182 return; 175 return;
183 176
184 folder_name_view_->Update();
185 folder_item_->RemoveObserver(this); 177 folder_item_->RemoveObserver(this);
186 // Enforce the maximum folder name length in UI. 178 // Enforce the maximum folder name length in UI.
187 std::string name = base::UTF16ToUTF8( 179 std::string name = base::UTF16ToUTF8(
188 folder_name_view_->text().substr(0, kMaxFolderNameChars)); 180 folder_name_view_->text().substr(0, kMaxFolderNameChars));
189 if (name != folder_item_->name()) 181 if (name != folder_item_->name())
190 delegate_->SetItemName(folder_item_, name); 182 delegate_->SetItemName(folder_item_, name);
191 folder_item_->AddObserver(this); 183 folder_item_->AddObserver(this);
192 184
193 Layout(); 185 Layout();
194 } 186 }
(...skipping 14 matching lines...) Expand all
209 void FolderHeaderView::ItemHighlightedChanged() { 201 void FolderHeaderView::ItemHighlightedChanged() {
210 } 202 }
211 203
212 void FolderHeaderView::ItemIsInstallingChanged() { 204 void FolderHeaderView::ItemIsInstallingChanged() {
213 } 205 }
214 206
215 void FolderHeaderView::ItemPercentDownloadedChanged() { 207 void FolderHeaderView::ItemPercentDownloadedChanged() {
216 } 208 }
217 209
218 } // namespace app_list 210 } // namespace app_list
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