OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "chrome/browser/ui/webui/options/chromeos/display_options_handler.h" | 5 #include "chrome/browser/ui/webui/options/chromeos/display_options_handler.h" |
6 | 6 |
7 #include <stddef.h> | 7 #include <stddef.h> |
8 #include <stdint.h> | 8 #include <stdint.h> |
9 | 9 |
10 #include <memory> | 10 #include <memory> |
(...skipping 300 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
311 for (size_t i = 0; i < display_manager->GetNumDisplays(); ++i) | 311 for (size_t i = 0; i < display_manager->GetNumDisplays(); ++i) |
312 displays.push_back(display_manager->GetDisplayAt(i)); | 312 displays.push_back(display_manager->GetDisplayAt(i)); |
313 | 313 |
314 display::DisplayManager::MultiDisplayMode display_mode; | 314 display::DisplayManager::MultiDisplayMode display_mode; |
315 if (display_manager->IsInMirrorMode()) | 315 if (display_manager->IsInMirrorMode()) |
316 display_mode = display::DisplayManager::MIRRORING; | 316 display_mode = display::DisplayManager::MIRRORING; |
317 else if (display_manager->IsInUnifiedMode()) | 317 else if (display_manager->IsInUnifiedMode()) |
318 display_mode = display::DisplayManager::UNIFIED; | 318 display_mode = display::DisplayManager::UNIFIED; |
319 else | 319 else |
320 display_mode = display::DisplayManager::EXTENDED; | 320 display_mode = display::DisplayManager::EXTENDED; |
321 base::FundamentalValue mode(static_cast<int>(display_mode)); | 321 base::Value mode(static_cast<int>(display_mode)); |
322 | 322 |
323 int64_t primary_id = display::Screen::GetScreen()->GetPrimaryDisplay().id(); | 323 int64_t primary_id = display::Screen::GetScreen()->GetPrimaryDisplay().id(); |
324 std::unique_ptr<base::ListValue> js_displays(new base::ListValue); | 324 std::unique_ptr<base::ListValue> js_displays(new base::ListValue); |
325 for (const display::Display& display : displays) { | 325 for (const display::Display& display : displays) { |
326 const display::ManagedDisplayInfo& display_info = | 326 const display::ManagedDisplayInfo& display_info = |
327 display_manager->GetDisplayInfo(display.id()); | 327 display_manager->GetDisplayInfo(display.id()); |
328 auto js_display = base::MakeUnique<base::DictionaryValue>(); | 328 auto js_display = base::MakeUnique<base::DictionaryValue>(); |
329 js_display->SetString("id", base::Int64ToString(display.id())); | 329 js_display->SetString("id", base::Int64ToString(display.id())); |
330 js_display->SetString("name", | 330 js_display->SetString("name", |
331 display_manager->GetDisplayNameForId(display.id())); | 331 display_manager->GetDisplayNameForId(display.id())); |
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
386 display::DisplayManager* display_manager = GetDisplayManager(); | 386 display::DisplayManager* display_manager = GetDisplayManager(); |
387 bool disable_multi_display_layout = | 387 bool disable_multi_display_layout = |
388 base::CommandLine::ForCurrentProcess()->HasSwitch( | 388 base::CommandLine::ForCurrentProcess()->HasSwitch( |
389 chromeos::switches::kDisableMultiDisplayLayout); | 389 chromeos::switches::kDisableMultiDisplayLayout); |
390 bool ui_enabled = display_manager->num_connected_displays() <= 2 || | 390 bool ui_enabled = display_manager->num_connected_displays() <= 2 || |
391 !disable_multi_display_layout; | 391 !disable_multi_display_layout; |
392 bool unified_enabled = display_manager->unified_desktop_enabled(); | 392 bool unified_enabled = display_manager->unified_desktop_enabled(); |
393 bool mirrored_enabled = display_manager->num_connected_displays() == 2; | 393 bool mirrored_enabled = display_manager->num_connected_displays() == 2; |
394 | 394 |
395 web_ui()->CallJavascriptFunctionUnsafe( | 395 web_ui()->CallJavascriptFunctionUnsafe( |
396 "options.BrowserOptions.enableDisplaySettings", | 396 "options.BrowserOptions.enableDisplaySettings", base::Value(ui_enabled), |
397 base::FundamentalValue(ui_enabled), | 397 base::Value(unified_enabled), base::Value(mirrored_enabled)); |
398 base::FundamentalValue(unified_enabled), | |
399 base::FundamentalValue(mirrored_enabled)); | |
400 } | 398 } |
401 | 399 |
402 void DisplayOptionsHandler::HandleDisplayInfo( | 400 void DisplayOptionsHandler::HandleDisplayInfo( |
403 const base::ListValue* unused_args) { | 401 const base::ListValue* unused_args) { |
404 SendAllDisplayInfo(); | 402 SendAllDisplayInfo(); |
405 } | 403 } |
406 | 404 |
407 void DisplayOptionsHandler::HandleMirroring(const base::ListValue* args) { | 405 void DisplayOptionsHandler::HandleMirroring(const base::ListValue* args) { |
408 DCHECK(!args->empty()); | 406 DCHECK(!args->empty()); |
409 bool is_mirroring = false; | 407 bool is_mirroring = false; |
(...skipping 171 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
581 if (!args->GetBoolean(0, &enable)) | 579 if (!args->GetBoolean(0, &enable)) |
582 NOTREACHED(); | 580 NOTREACHED(); |
583 | 581 |
584 GetDisplayManager()->SetDefaultMultiDisplayModeForCurrentDisplays( | 582 GetDisplayManager()->SetDefaultMultiDisplayModeForCurrentDisplays( |
585 enable ? display::DisplayManager::UNIFIED | 583 enable ? display::DisplayManager::UNIFIED |
586 : display::DisplayManager::EXTENDED); | 584 : display::DisplayManager::EXTENDED); |
587 } | 585 } |
588 | 586 |
589 } // namespace options | 587 } // namespace options |
590 } // namespace chromeos | 588 } // namespace chromeos |
OLD | NEW |