Index: ash/system/chromeos/brightness/tray_brightness.cc |
diff --git a/ash/system/chromeos/brightness/tray_brightness.cc b/ash/system/chromeos/brightness/tray_brightness.cc |
index dcce3c110b29654efafc019c32d914921b1af8d0..19ff250c3149344698d6f2d7cdc3262fc3156131 100644 |
--- a/ash/system/chromeos/brightness/tray_brightness.cc |
+++ b/ash/system/chromeos/brightness/tray_brightness.cc |
@@ -6,6 +6,7 @@ |
#include "ash/accelerators/accelerator_controller.h" |
#include "ash/ash_constants.h" |
+#include "ash/display/display_manager.h" |
#include "ash/metrics/user_metrics_recorder.h" |
#include "ash/shell.h" |
#include "ash/system/brightness_control_delegate.h" |
@@ -219,9 +220,16 @@ void TrayBrightness::HandleBrightnessChanged(double percent, |
if (brightness_view_) |
brightness_view_->SetBrightnessPercent(percent); |
+ |
if (!user_initiated) |
return; |
+ // Never show the bubble on systems that lack internal displays: if an |
+ // external display's brightness is changed, it may already display the new |
+ // level via an on-screen display. |
+ if (!Shell::GetInstance()->display_manager()->HasInternalDisplay()) |
+ return; |
+ |
if (brightness_view_) |
SetDetailedViewCloseDelay(kTrayPopupAutoCloseDelayInSeconds); |
else |