OLD | NEW |
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 99 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
110 folder_item_ = NULL; | 110 folder_item_ = NULL; |
111 } | 111 } |
112 | 112 |
113 void FolderHeaderView::Update() { | 113 void FolderHeaderView::Update() { |
114 if (!folder_item_) | 114 if (!folder_item_) |
115 return; | 115 return; |
116 | 116 |
117 folder_name_view_->SetVisible(folder_name_visible_); | 117 folder_name_view_->SetVisible(folder_name_visible_); |
118 if (folder_name_visible_) { | 118 if (folder_name_visible_) { |
119 folder_name_view_->SetText(base::UTF8ToUTF16(folder_item_->name())); | 119 folder_name_view_->SetText(base::UTF8ToUTF16(folder_item_->name())); |
| 120 UpdateFolderNameAccessibleName(); |
120 } | 121 } |
121 | 122 |
122 Layout(); | 123 Layout(); |
123 } | 124 } |
124 | 125 |
| 126 void FolderHeaderView::UpdateFolderNameAccessibleName() { |
| 127 // Sets |folder_name_view_|'s accessible name to the placeholder text if |
| 128 // |folder_name_view_| is blank; otherwise, clear the accessible name, the |
| 129 // accessible state's value is set to be folder_name_view_->text() by |
| 130 // TextField. |
| 131 base::string16 accessible_name = folder_name_view_->text().empty() |
| 132 ? folder_name_placeholder_text_ |
| 133 : base::string16(); |
| 134 folder_name_view_->SetAccessibleName(accessible_name); |
| 135 } |
| 136 |
125 const base::string16& FolderHeaderView::GetFolderNameForTest() { | 137 const base::string16& FolderHeaderView::GetFolderNameForTest() { |
126 return folder_name_view_->text(); | 138 return folder_name_view_->text(); |
127 } | 139 } |
128 | 140 |
129 void FolderHeaderView::SetFolderNameForTest(const base::string16& name) { | 141 void FolderHeaderView::SetFolderNameForTest(const base::string16& name) { |
130 folder_name_view_->SetText(name); | 142 folder_name_view_->SetText(name); |
131 } | 143 } |
132 | 144 |
133 bool FolderHeaderView::IsFolderNameEnabledForTest() const { | 145 bool FolderHeaderView::IsFolderNameEnabledForTest() const { |
134 return folder_name_view_->enabled(); | 146 return folder_name_view_->enabled(); |
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
191 return; | 203 return; |
192 | 204 |
193 folder_item_->RemoveObserver(this); | 205 folder_item_->RemoveObserver(this); |
194 // Enforce the maximum folder name length in UI. | 206 // Enforce the maximum folder name length in UI. |
195 std::string name = base::UTF16ToUTF8( | 207 std::string name = base::UTF16ToUTF8( |
196 folder_name_view_->text().substr(0, kMaxFolderNameChars)); | 208 folder_name_view_->text().substr(0, kMaxFolderNameChars)); |
197 if (name != folder_item_->name()) | 209 if (name != folder_item_->name()) |
198 delegate_->SetItemName(folder_item_, name); | 210 delegate_->SetItemName(folder_item_, name); |
199 folder_item_->AddObserver(this); | 211 folder_item_->AddObserver(this); |
200 | 212 |
| 213 UpdateFolderNameAccessibleName(); |
| 214 |
201 Layout(); | 215 Layout(); |
202 } | 216 } |
203 | 217 |
204 void FolderHeaderView::ButtonPressed(views::Button* sender, | 218 void FolderHeaderView::ButtonPressed(views::Button* sender, |
205 const ui::Event& event) { | 219 const ui::Event& event) { |
206 delegate_->NavigateBack(folder_item_, event); | 220 delegate_->NavigateBack(folder_item_, event); |
207 } | 221 } |
208 | 222 |
209 void FolderHeaderView::ItemIconChanged() { | 223 void FolderHeaderView::ItemIconChanged() { |
210 } | 224 } |
211 | 225 |
212 void FolderHeaderView::ItemNameChanged() { | 226 void FolderHeaderView::ItemNameChanged() { |
213 Update(); | 227 Update(); |
214 } | 228 } |
215 | 229 |
216 void FolderHeaderView::ItemHighlightedChanged() { | 230 void FolderHeaderView::ItemHighlightedChanged() { |
217 } | 231 } |
218 | 232 |
219 void FolderHeaderView::ItemIsInstallingChanged() { | 233 void FolderHeaderView::ItemIsInstallingChanged() { |
220 } | 234 } |
221 | 235 |
222 void FolderHeaderView::ItemPercentDownloadedChanged() { | 236 void FolderHeaderView::ItemPercentDownloadedChanged() { |
223 } | 237 } |
224 | 238 |
225 } // namespace app_list | 239 } // namespace app_list |
OLD | NEW |