| Index: ash/system/power/power_status_view.cc
|
| diff --git a/ash/system/power/power_status_view.cc b/ash/system/power/power_status_view.cc
|
| index d2c308852c07ef1f5b69aa3398cdea87ac3943dc..5ca6b2e993ea65c35ec3d50caf5603272662dc73 100644
|
| --- a/ash/system/power/power_status_view.cc
|
| +++ b/ash/system/power/power_status_view.cc
|
| @@ -40,11 +40,14 @@ PowerStatusView::PowerStatusView(ViewType view_type,
|
| status_label_(NULL),
|
| time_label_(NULL),
|
| time_status_label_(NULL),
|
| + percentage_label_(NULL),
|
| icon_(NULL),
|
| icon_image_index_(-1),
|
| view_type_(view_type) {
|
| if (view_type == VIEW_DEFAULT) {
|
| time_status_label_ = new views::Label;
|
| + percentage_label_ = new views::Label;
|
| + percentage_label_->SetEnabledColor(kHeaderTextColorNormal);
|
| LayoutDefaultView();
|
| } else {
|
| status_label_ = new views::Label;
|
| @@ -70,6 +73,7 @@ void PowerStatusView::LayoutDefaultView() {
|
| kPaddingBetweenBatteryStatusAndIcon);
|
| SetLayoutManager(layout);
|
|
|
| + AddChildView(percentage_label_);
|
| AddChildView(time_status_label_);
|
|
|
| icon_ = new views::ImageView;
|
| @@ -85,6 +89,7 @@ void PowerStatusView::LayoutDefaultView() {
|
| new ash::internal::FixedSizedImageView(0, ash::kTrayPopupItemHeight);
|
| AddChildView(icon_);
|
|
|
| + AddChildView(percentage_label_);
|
| AddChildView(time_status_label_);
|
| }
|
| }
|
| @@ -106,18 +111,20 @@ void PowerStatusView::UpdateText() {
|
|
|
| void PowerStatusView::UpdateTextForDefaultView() {
|
| ui::ResourceBundle& rb = ui::ResourceBundle::GetSharedInstance();
|
| + string16 battery_percentage = string16();
|
| + string16 battery_time_status = string16();
|
| if (supply_status_.line_power_on && supply_status_.battery_is_full) {
|
| - time_status_label_->SetText(
|
| - rb.GetLocalizedString(IDS_ASH_STATUS_TRAY_BATTERY_FULL));
|
| + battery_time_status =
|
| + rb.GetLocalizedString(IDS_ASH_STATUS_TRAY_BATTERY_FULL);
|
| accessible_name_ = rb.GetLocalizedString(
|
| IDS_ASH_STATUS_TRAY_BATTERY_FULL_CHARGE_ACCESSIBLE);
|
| } else if (supply_status_.battery_percentage < 0.0f) {
|
| - time_status_label_->SetText(
|
| - rb.GetLocalizedString(IDS_ASH_STATUS_TRAY_BATTERY_CALCULATING));
|
| + battery_time_status =
|
| + rb.GetLocalizedString(IDS_ASH_STATUS_TRAY_BATTERY_CALCULATING);
|
| accessible_name_ = rb.GetLocalizedString(
|
| IDS_ASH_STATUS_TRAY_BATTERY_CALCULATING_ACCESSIBLE);
|
| } else {
|
| - string16 battery_percentage = l10n_util::GetStringFUTF16(
|
| + battery_percentage = l10n_util::GetStringFUTF16(
|
| IDS_ASH_STATUS_TRAY_BATTERY_PERCENT_ONLY,
|
| base::IntToString16(GetRoundedBatteryPercentage()));
|
| string16 battery_percentage_accessbile = l10n_util::GetStringFUTF16(
|
| @@ -125,12 +132,11 @@ void PowerStatusView::UpdateTextForDefaultView() {
|
| IDS_ASH_STATUS_TRAY_BATTERY_PERCENT_CHARGING_ACCESSIBLE:
|
| IDS_ASH_STATUS_TRAY_BATTERY_PERCENT_ACCESSIBLE ,
|
| base::IntToString16(GetRoundedBatteryPercentage()));
|
| - string16 battery_time = string16();
|
| string16 battery_time_accessible = string16();
|
| int hour = 0;
|
| int min = 0;
|
| if (supply_status_.is_calculating_battery_time) {
|
| - battery_time =
|
| + battery_time_status =
|
| rb.GetLocalizedString(IDS_ASH_STATUS_TRAY_BATTERY_CALCULATING);
|
| battery_time_accessible = rb.GetLocalizedString(
|
| IDS_ASH_STATUS_TRAY_BATTERY_CALCULATING_ACCESSIBLE);
|
| @@ -145,7 +151,7 @@ void PowerStatusView::UpdateTextForDefaultView() {
|
| string16 minute = min < 10 ?
|
| ASCIIToUTF16("0") + base::IntToString16(min) :
|
| base::IntToString16(min);
|
| - battery_time =
|
| + battery_time_status =
|
| l10n_util::GetStringFUTF16(
|
| supply_status_.line_power_on ?
|
| IDS_ASH_STATUS_TRAY_BATTERY_TIME_UNTIL_FULL_SHORT :
|
| @@ -160,15 +166,17 @@ void PowerStatusView::UpdateTextForDefaultView() {
|
| GetBatteryTimeAccessibilityString(hour, min));
|
| }
|
| }
|
| - string16 battery_status = battery_time.empty() ?
|
| - battery_percentage :
|
| - battery_percentage + ASCIIToUTF16(" - ") + battery_time;
|
| - time_status_label_->SetText(battery_status);
|
| + battery_percentage = battery_time_status.empty() ?
|
| + battery_percentage : battery_percentage + ASCIIToUTF16(" - ");
|
| accessible_name_ = battery_time_accessible.empty() ?
|
| battery_percentage_accessbile :
|
| battery_percentage_accessbile + ASCIIToUTF16(". ")
|
| + battery_time_accessible;
|
| }
|
| + percentage_label_->SetVisible(!battery_percentage.empty());
|
| + percentage_label_->SetText(battery_percentage);
|
| + time_status_label_->SetVisible(!battery_time_status.empty());
|
| + time_status_label_->SetText(battery_time_status);
|
| }
|
|
|
| void PowerStatusView::UpdateTextForNotificationView() {
|
| @@ -281,5 +289,15 @@ gfx::Size PowerStatusView::GetPreferredSize() {
|
| return gfx::Size(size.width(), kTrayPopupItemHeight);
|
| }
|
|
|
| +void PowerStatusView::Layout() {
|
| + views::View::Layout();
|
| +
|
| + // Move the time_status_label_ closer to percentage_label_.
|
| + if (percentage_label_ && time_status_label_ &&
|
| + percentage_label_->visible() && time_status_label_->visible()) {
|
| + time_status_label_->SetX(percentage_label_->bounds().right() + 1);
|
| + }
|
| +}
|
| +
|
| } // namespace internal
|
| } // namespace ash
|
|
|