OLD | NEW |
1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 "ui/display/chromeos/output_configurator.h" | 5 #include "ui/display/chromeos/output_configurator.h" |
6 | 6 |
7 #include "base/bind.h" | 7 #include "base/bind.h" |
8 #include "base/logging.h" | 8 #include "base/logging.h" |
9 #include "base/strings/string_number_conversions.h" | 9 #include "base/strings/string_number_conversions.h" |
10 #include "base/strings/stringprintf.h" | 10 #include "base/strings/stringprintf.h" |
(...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
91 x_offset(0.0), | 91 x_offset(0.0), |
92 y_scale(1.0), | 92 y_scale(1.0), |
93 y_offset(0.0) {} | 93 y_offset(0.0) {} |
94 | 94 |
95 OutputConfigurator::DisplayState::DisplayState() | 95 OutputConfigurator::DisplayState::DisplayState() |
96 : display(NULL), | 96 : display(NULL), |
97 touch_device_id(0), | 97 touch_device_id(0), |
98 selected_mode(NULL), | 98 selected_mode(NULL), |
99 mirror_mode(NULL) {} | 99 mirror_mode(NULL) {} |
100 | 100 |
101 OutputConfigurator::DisplayState::~DisplayState() {} | |
102 | |
103 bool OutputConfigurator::TestApi::TriggerConfigureTimeout() { | 101 bool OutputConfigurator::TestApi::TriggerConfigureTimeout() { |
104 if (configurator_->configure_timer_.get() && | 102 if (configurator_->configure_timer_.get() && |
105 configurator_->configure_timer_->IsRunning()) { | 103 configurator_->configure_timer_->IsRunning()) { |
106 configurator_->configure_timer_.reset(); | 104 configurator_->configure_timer_.reset(); |
107 configurator_->ConfigureOutputs(); | 105 configurator_->ConfigureOutputs(); |
108 return true; | 106 return true; |
109 } else { | 107 } else { |
110 return false; | 108 return false; |
111 } | 109 } |
112 } | 110 } |
(...skipping 261 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
374 if (client_protection_requests_[client_id].size() == 0) | 372 if (client_protection_requests_[client_id].size() == 0) |
375 client_protection_requests_.erase(client_id); | 373 client_protection_requests_.erase(client_id); |
376 } | 374 } |
377 } else { | 375 } else { |
378 client_protection_requests_[client_id][display_id] = desired_method_mask; | 376 client_protection_requests_[client_id][display_id] = desired_method_mask; |
379 } | 377 } |
380 | 378 |
381 return true; | 379 return true; |
382 } | 380 } |
383 | 381 |
| 382 void OutputConfigurator::GetAvailableColorCalibrationProfiles( |
| 383 int64 display_id, |
| 384 std::vector<ui::ColorCalibrationProfile>* profiles) { |
| 385 for (size_t i = 0; i < cached_outputs_.size(); ++i) { |
| 386 if (cached_outputs_[i].display && |
| 387 cached_outputs_[i].display->display_id() == display_id) { |
| 388 native_display_delegate_->GetAvailableColorCalibrationProfiles( |
| 389 *cached_outputs_[i].display, profiles); |
| 390 return; |
| 391 } |
| 392 } |
| 393 } |
| 394 |
384 bool OutputConfigurator::SetColorCalibrationProfile( | 395 bool OutputConfigurator::SetColorCalibrationProfile( |
385 int64 display_id, | 396 int64 display_id, |
386 ui::ColorCalibrationProfile new_profile) { | 397 ui::ColorCalibrationProfile new_profile) { |
387 for (size_t i = 0; i < cached_outputs_.size(); ++i) { | 398 for (size_t i = 0; i < cached_outputs_.size(); ++i) { |
388 if (cached_outputs_[i].display && | 399 if (cached_outputs_[i].display && |
389 cached_outputs_[i].display->display_id() == display_id) { | 400 cached_outputs_[i].display->display_id() == display_id) { |
390 std::vector<ColorCalibrationProfile>::const_iterator iter = | |
391 std::find(cached_outputs_[i].available_color_profiles.begin(), | |
392 cached_outputs_[i].available_color_profiles.end(), | |
393 new_profile); | |
394 if (iter == cached_outputs_[i].available_color_profiles.end()) | |
395 return false; | |
396 | |
397 return native_display_delegate_->SetColorCalibrationProfile( | 401 return native_display_delegate_->SetColorCalibrationProfile( |
398 *cached_outputs_[i].display, new_profile); | 402 *cached_outputs_[i].display, new_profile); |
399 } | 403 } |
400 } | 404 } |
401 | 405 |
402 return false; | 406 return false; |
403 } | 407 } |
404 | 408 |
405 void OutputConfigurator::PrepareForExit() { | 409 void OutputConfigurator::PrepareForExit() { |
406 configure_display_ = false; | 410 configure_display_ = false; |
(...skipping 610 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1017 float width_ratio = static_cast<float>(mirror_mode_info->size().width()) / | 1021 float width_ratio = static_cast<float>(mirror_mode_info->size().width()) / |
1018 static_cast<float>(native_mode_info->size().width()); | 1022 static_cast<float>(native_mode_info->size().width()); |
1019 float height_ratio = static_cast<float>(mirror_mode_info->size().height()) / | 1023 float height_ratio = static_cast<float>(mirror_mode_info->size().height()) / |
1020 static_cast<float>(native_mode_info->size().height()); | 1024 static_cast<float>(native_mode_info->size().height()); |
1021 | 1025 |
1022 area_ratio = width_ratio * height_ratio; | 1026 area_ratio = width_ratio * height_ratio; |
1023 return area_ratio; | 1027 return area_ratio; |
1024 } | 1028 } |
1025 | 1029 |
1026 } // namespace ui | 1030 } // namespace ui |
OLD | NEW |