| Index: ash/wm/ash_native_cursor_manager.cc
|
| diff --git a/ash/wm/ash_native_cursor_manager.cc b/ash/wm/ash_native_cursor_manager.cc
|
| index e78eb94db29f6d1ca950131e205bb7b10f10b04b..7c7a00ea13f26f45e888c6a6cf9f0d887a24d701 100644
|
| --- a/ash/wm/ash_native_cursor_manager.cc
|
| +++ b/ash/wm/ash_native_cursor_manager.cc
|
| @@ -7,12 +7,12 @@
|
| #include "ash/display/cursor_window_controller.h"
|
| #include "ash/display/display_controller.h"
|
| #include "ash/shell.h"
|
| -#include "ash/wm/image_cursors.h"
|
| #include "base/logging.h"
|
| #include "ui/aura/env.h"
|
| #include "ui/aura/window_event_dispatcher.h"
|
| #include "ui/aura/window_tree_host.h"
|
| #include "ui/base/cursor/cursor.h"
|
| +#include "ui/base/cursor/image_cursors.h"
|
|
|
| namespace ash {
|
| namespace {
|
| @@ -54,7 +54,7 @@ void NotifyMouseEventsEnableStateChange(bool enabled) {
|
|
|
| AshNativeCursorManager::AshNativeCursorManager()
|
| : native_cursor_enabled_(true),
|
| - image_cursors_(new ImageCursors) {
|
| + image_cursors_(new ui::ImageCursors) {
|
| }
|
|
|
| AshNativeCursorManager::~AshNativeCursorManager() {
|
| @@ -72,7 +72,12 @@ void AshNativeCursorManager::SetNativeCursorEnabled(bool enabled) {
|
| void AshNativeCursorManager::SetDisplay(
|
| const gfx::Display& display,
|
| ::wm::NativeCursorManagerDelegate* delegate) {
|
| - if (image_cursors_->SetDisplay(display))
|
| + DCHECK(display.is_valid());
|
| + // Use the platform's device scale factor instead of the display's, which
|
| + // might have been adjusted for the UI scale.
|
| + const float scale_factor = Shell::GetInstance()->display_manager()->
|
| + GetDisplayInfo(display.id()).device_scale_factor();
|
| + if (image_cursors_->SetDisplay(display, scale_factor))
|
| SetCursor(delegate->GetCursor(), delegate);
|
| #if defined(OS_CHROMEOS)
|
| Shell::GetInstance()->display_controller()->cursor_window_controller()->
|
|
|