diff options
author | sadrul@chromium.org <sadrul@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-03-16 17:02:15 +0000 |
---|---|---|
committer | sadrul@chromium.org <sadrul@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-03-16 17:02:15 +0000 |
commit | 26c4f2e43212a484cede7bcb0f6e1889e8fa7b50 (patch) | |
tree | fbfb599153658c2a14b3226b47f7a21fde913db6 /ash/system/power | |
parent | 176816e8c46a770a0b3e4ddb16c19154f3960c52 (diff) | |
download | chromium_src-26c4f2e43212a484cede7bcb0f6e1889e8fa7b50.zip chromium_src-26c4f2e43212a484cede7bcb0f6e1889e8fa7b50.tar.gz chromium_src-26c4f2e43212a484cede7bcb0f6e1889e8fa7b50.tar.bz2 |
ash: Some more fixes and code cleanups for uber tray.
The changes include:
* Fix for power-status reporting.
* The hover-background color in the 'main' popup should be the same as in the
'network' popup.
* Padding/background color adjustment for the date/power row.
* Some more s/controller/observer/ that I missed from an earlier CL.
BUG=110130
TEST=none
Review URL: https://chromiumcodereview.appspot.com/9694058
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@127187 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ash/system/power')
-rw-r--r-- | ash/system/power/tray_power_date.cc | 38 |
1 files changed, 25 insertions, 13 deletions
diff --git a/ash/system/power/tray_power_date.cc b/ash/system/power/tray_power_date.cc index 87dc2a1..5aceea4 100644 --- a/ash/system/power/tray_power_date.cc +++ b/ash/system/power/tray_power_date.cc @@ -87,6 +87,7 @@ class DateView : public views::View { actionable_(false) { SetLayoutManager(new views::FillLayout()); label_ = new views::Label; + label_->SetHorizontalAlignment(views::Label::ALIGN_LEFT); UpdateText(); AddChildView(label_); } @@ -280,18 +281,23 @@ TrayPowerDate::~TrayPowerDate() { } views::View* TrayPowerDate::CreateTrayView(user::LoginStatus status) { + views::View* container = new views::View; + container->SetLayoutManager(new views::BoxLayout( + views::BoxLayout::kHorizontal, 0, 0, kTrayPaddingBetweenItems)); + + PowerSupplyStatus power_status = + ash::Shell::GetInstance()->tray_delegate()->GetPowerSupplyStatus(); + if (power_status.battery_is_present) { + power_tray_.reset(new tray::PowerTrayView()); + power_tray_->UpdatePowerStatus(power_status); + container->AddChildView(power_tray_.get()); + } + date_tray_.reset(new tray::DateView(tray::DateView::TIME)); date_tray_->label()->SetFont( date_tray_->label()->font().DeriveFont(2, gfx::Font::BOLD)); date_tray_->label()->SetAutoColorReadabilityEnabled(false); date_tray_->label()->SetEnabledColor(SK_ColorWHITE); - - power_tray_.reset(new tray::PowerTrayView()); - - views::View* container = new views::View; - container->SetLayoutManager(new views::BoxLayout( - views::BoxLayout::kHorizontal, 0, 0, kTrayPaddingBetweenItems)); - container->AddChildView(power_tray_.get()); container->AddChildView(date_tray_.get()); return container; @@ -302,17 +308,22 @@ views::View* TrayPowerDate::CreateDefaultView(user::LoginStatus status) { if (status != user::LOGGED_IN_NONE) date_->set_actionable(true); - power_.reset(new tray::PowerPopupView()); - views::View* container = new views::View; views::BoxLayout* layout = new - views::BoxLayout(views::BoxLayout::kHorizontal, 0, 10, 0); + views::BoxLayout(views::BoxLayout::kHorizontal, 18, 10, 0); layout->set_spread_blank_space(true); container->SetLayoutManager(layout); container->set_background(views::Background::CreateSolidBackground( - SkColorSetARGB(255, 240, 240, 240))); + SkColorSetRGB(245, 245, 245))); container->AddChildView(date_.get()); - container->AddChildView(power_.get()); + + PowerSupplyStatus power_status = + ash::Shell::GetInstance()->tray_delegate()->GetPowerSupplyStatus(); + if (power_status.battery_is_present) { + power_.reset(new tray::PowerPopupView()); + power_->UpdatePowerStatus(power_status); + container->AddChildView(power_.get()); + } return container; } @@ -334,7 +345,8 @@ void TrayPowerDate::DestroyDetailedView() { } void TrayPowerDate::OnPowerStatusChanged(const PowerSupplyStatus& status) { - power_tray_->UpdatePowerStatus(status); + if (power_tray_.get()) + power_tray_->UpdatePowerStatus(status); if (power_.get()) power_->UpdatePowerStatus(status); } |