| Index: chrome/browser/ui/webui/options/chromeos/display_options_handler.cc
|
| diff --git a/chrome/browser/ui/webui/options/chromeos/display_options_handler.cc b/chrome/browser/ui/webui/options/chromeos/display_options_handler.cc
|
| index 4ea500a53eead1f346aacc8c8c58ca38cf170927..fc794b7949d0797ddc3229da10ca05062c1b24a9 100644
|
| --- a/chrome/browser/ui/webui/options/chromeos/display_options_handler.cc
|
| +++ b/chrome/browser/ui/webui/options/chromeos/display_options_handler.cc
|
| @@ -491,17 +491,20 @@ void DisplayOptionsHandler::HandleSetDisplayMode(const base::ListValue* args) {
|
| display::DisplayManager* display_manager = GetDisplayManager();
|
| scoped_refptr<display::ManagedDisplayMode> current_mode =
|
| display_manager->GetActiveModeForDisplayId(display_id);
|
| - if (!display_manager->SetDisplayMode(display_id, mode)) {
|
| +
|
| + if (mode->IsEquivalent(current_mode)) {
|
| + LOG(ERROR) << "New display mode matches current mode.";
|
| + return;
|
| + }
|
| +
|
| + if (!ash::Shell::Get()
|
| + ->resolution_notification_controller()
|
| + ->PrepareNotificationAndSetDisplayMode(
|
| + display_id, current_mode, mode,
|
| + base::Bind(&chromeos::StoreDisplayPrefs))) {
|
| LOG(ERROR) << "Unable to set display mode for: " << display_id
|
| << " Mode: " << *mode_data;
|
| - return;
|
| }
|
| - if (display::Display::IsInternalDisplayId(display_id))
|
| - return;
|
| - // For external displays, show a notification confirming the resolution
|
| - // change.
|
| - ash::Shell::Get()->resolution_notification_controller()->PrepareNotification(
|
| - display_id, current_mode, mode, base::Bind(&chromeos::StoreDisplayPrefs));
|
| }
|
|
|
| void DisplayOptionsHandler::HandleSetRotation(const base::ListValue* args) {
|
|
|