Index: ui/events/event_utils.cc |
diff --git a/ui/events/event_utils.cc b/ui/events/event_utils.cc |
index 8a3ba6699fedc37c674b88f900a9286aedceac50..e5a319e10f15bf0daab6633f98588eb86fd0b272 100644 |
--- a/ui/events/event_utils.cc |
+++ b/ui/events/event_utils.cc |
@@ -26,18 +26,22 @@ base::TimeDelta EventTimeForNow() { |
} |
bool ShouldDefaultToNaturalScroll() { |
+ return GetInternalDisplayTouchSupport() == |
+ gfx::Display::TOUCH_SUPPORT_AVAILABLE; |
+} |
+ |
+gfx::Display::TouchSupport GetInternalDisplayTouchSupport() { |
gfx::Screen* screen = gfx::Screen::GetScreenByType(gfx::SCREEN_TYPE_NATIVE); |
+ // No screen in some unit tests. |
if (!screen) |
- return false; |
+ return gfx::Display::TOUCH_SUPPORT_UNKNOWN; |
const std::vector<gfx::Display>& displays = screen->GetAllDisplays(); |
for (std::vector<gfx::Display>::const_iterator it = displays.begin(); |
it != displays.end(); ++it) { |
- const gfx::Display& display = *it; |
- if (display.IsInternal() && |
- display.touch_support() == gfx::Display::TOUCH_SUPPORT_AVAILABLE) |
- return true; |
+ if (it->IsInternal()) |
+ return it->touch_support(); |
} |
- return false; |
+ return gfx::Display::TOUCH_SUPPORT_UNAVAILABLE; |
} |
} // namespace ui |