Index: win8/metro_driver/display_properties.cc |
diff --git a/win8/metro_driver/display_properties.cc b/win8/metro_driver/display_properties.cc |
index 7eb557f6a9164b1caf727fd470080d94490f9730..e1b7ed5e7e03764dfcaa51fd19fe68f1ae6fbfdd 100644 |
--- a/win8/metro_driver/display_properties.cc |
+++ b/win8/metro_driver/display_properties.cc |
@@ -9,19 +9,22 @@ |
#include <wrl\wrappers\corewrappers.h> |
#include <windows.foundation.h> |
#include <windows.graphics.display.h> |
+#include "base/win/windows_version.h" |
#include "ui/gfx/win/dpi.h" |
#include "winrt_utils.h" |
float GetModernUIScale() { |
- Microsoft::WRL::ComPtr< |
- ABI::Windows::Graphics::Display::IDisplayPropertiesStatics> |
- display_properties; |
- if (SUCCEEDED(winrt_utils::CreateActivationFactory( |
- RuntimeClass_Windows_Graphics_Display_DisplayProperties, |
- display_properties.GetAddressOf()))) { |
- ABI::Windows::Graphics::Display::ResolutionScale resolution_scale; |
- if (SUCCEEDED(display_properties->get_ResolutionScale(&resolution_scale))) |
- return static_cast<float>(resolution_scale) / 100.0f; |
+ if (base::win::GetVersion() >= base::win::VERSION_WIN8) { |
+ Microsoft::WRL::ComPtr< |
+ ABI::Windows::Graphics::Display::IDisplayPropertiesStatics> |
+ display_properties; |
+ if (SUCCEEDED(winrt_utils::CreateActivationFactory( |
+ RuntimeClass_Windows_Graphics_Display_DisplayProperties, |
+ display_properties.GetAddressOf()))) { |
+ ABI::Windows::Graphics::Display::ResolutionScale resolution_scale; |
+ if (SUCCEEDED(display_properties->get_ResolutionScale(&resolution_scale))) |
+ return static_cast<float>(resolution_scale) / 100.0f; |
+ } |
} |
- return 1.0f; |
+ return gfx::GetDPIScale(); |
} |