Index: views/widget/root_view.cc |
diff --git a/views/widget/root_view.cc b/views/widget/root_view.cc |
index ba60fbccae1fc24eaf8a60975460543af71272df..01237b4e1a9a50de5a82188120f59b7b3aae932e 100644 |
--- a/views/widget/root_view.cc |
+++ b/views/widget/root_view.cc |
@@ -6,9 +6,14 @@ |
#include <algorithm> |
+#if defined(TOUCH_UI) && defined(HAVE_XINPUT2) |
+#include <gdk/gdkx.h> |
+#endif |
+ |
#include "base/logging.h" |
#include "base/message_loop.h" |
#include "gfx/canvas_skia.h" |
+#include "gfx/gtk_util.h" |
#include "ui/base/dragdrop/drag_drop_types.h" |
#include "ui/base/keycodes/keyboard_codes.h" |
#include "views/focus/view_storage.h" |
@@ -18,6 +23,9 @@ |
#if defined(TOUCH_UI) |
#include "views/touchui/gesture_manager.h" |
+#if defined(HAVE_XINPUT2) |
+#include "views/touchui/touch_factory.h" |
+#endif |
#endif |
#if defined(OS_LINUX) |
@@ -794,6 +802,13 @@ void RootView::SetActiveCursor(gfx::NativeCursor cursor) { |
static_cast<WidgetGtk*>(GetWidget())->window_contents(); |
if (!native_view) |
return; |
+ |
+#if defined(TOUCH_UI) && defined(HAVE_XINPUT2) |
+ if (!TouchFactory::GetInstance()->IsCursorVisible()) { |
+ cursor = gfx::GetCursor(GDK_BLANK_CURSOR); |
+ } |
+#endif |
+ |
gdk_window_set_cursor(native_view->window, cursor); |
#endif |
} |