Chromium Code Reviews| Index: chrome/browser/ui/cocoa/location_bar/location_bar_view_mac.mm |
| diff --git a/chrome/browser/ui/cocoa/location_bar/location_bar_view_mac.mm b/chrome/browser/ui/cocoa/location_bar/location_bar_view_mac.mm |
| index 532e7881ed4ace297d90530b8dc440a9615f3a69..25d4a01681394a03c80928948226053a00b27bd3 100644 |
| --- a/chrome/browser/ui/cocoa/location_bar/location_bar_view_mac.mm |
| +++ b/chrome/browser/ui/cocoa/location_bar/location_bar_view_mac.mm |
| @@ -250,9 +250,8 @@ void LocationBarViewMac::SaveStateToContents(WebContents* contents) { |
| void LocationBarViewMac::Update(const WebContents* contents, |
| bool should_restore_state) { |
| - bool star_enabled = IsStarEnabled(); |
| - command_updater_->UpdateCommandEnabled(IDC_BOOKMARK_PAGE, star_enabled); |
| - star_decoration_->SetVisible(star_enabled); |
| + command_updater_->UpdateCommandEnabled(IDC_BOOKMARK_PAGE, IsStarEnabled()); |
| + UpdateStarDecorationVisibility(); |
| UpdateChromeToMobileEnabled(); |
| UpdateZoomDecoration(); |
| RefreshPageActionDecorations(); |
| @@ -478,7 +477,7 @@ void LocationBarViewMac::TestPageActionPressed(size_t index) { |
| void LocationBarViewMac::SetEditable(bool editable) { |
| [field_ setEditable:editable ? YES : NO]; |
| - star_decoration_->SetVisible(IsStarEnabled()); |
| + UpdateStarDecorationVisibility(); |
| UpdateChromeToMobileEnabled(); |
| UpdateZoomDecoration(); |
| UpdatePageActions(); |
| @@ -499,6 +498,7 @@ void LocationBarViewMac::OnDecorationsChanged() { |
| void LocationBarViewMac::SetStarred(bool starred) { |
| star_decoration_->SetStarred(starred); |
| + UpdateStarDecorationVisibility(); |
| OnDecorationsChanged(); |
| } |
| @@ -584,7 +584,7 @@ void LocationBarViewMac::Observe(int type, |
| } |
| case chrome::NOTIFICATION_PREF_CHANGED: |
| - star_decoration_->SetVisible(IsStarEnabled()); |
| + UpdateStarDecorationVisibility(); |
| UpdateChromeToMobileEnabled(); |
| OnChanged(); |
| break; |
| @@ -767,3 +767,11 @@ void LocationBarViewMac::UpdateZoomDecoration() { |
| zoom_decoration_->Update(tab_contents->zoom_controller()); |
| } |
| + |
| +void LocationBarViewMac::UpdateStarDecorationVisibility() { |
| + bool action_box_enabled = |
| + CommandLine::ForCurrentProcess()->HasSwitch(switches::kEnableActionBox); |
| + // If the action box is enabled, only show the star if it's lit. |
| + star_decoration_->SetVisible(IsStarEnabled() && |
| + (star_decoration_->starred() || !action_box_enabled)); |
|
Scott Hess - ex-Googler
2012/08/27 19:47:31
I think this condition is needlessly complicated.
beaudoin
2012/08/27 21:25:48
Good job on that truth table! This indeed simplifi
|
| +} |