Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(162)

Unified Diff: ui/views/corewm/cursor_platform_delegate.h

Issue 12263050: Rework ash::CursorManager into a corewm object, to share code with desktop. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: General patch cleanup. Created 7 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: ui/views/corewm/cursor_platform_delegate.h
diff --git a/ui/views/corewm/cursor_platform_delegate.h b/ui/views/corewm/cursor_platform_delegate.h
new file mode 100644
index 0000000000000000000000000000000000000000..dc2856eb1db353e38484dd733f5ad89992a1960b
--- /dev/null
+++ b/ui/views/corewm/cursor_platform_delegate.h
@@ -0,0 +1,51 @@
+// Copyright (c) 2013 The Chromium Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+
+#ifndef UI_VIEWS_COREWM_CURSOR_PLATFORM_DELEGATE_H_
+#define UI_VIEWS_COREWM_CURSOR_PLATFORM_DELEGATE_H_
+
+#include "ui/views/corewm/cursor_manager_delegate.h"
+#include "ui/views/views_export.h"
+
+namespace views {
+namespace corewm {
+
+// Interface where platforms such as Ash or Desktop aura are notified of
+// requested changes to cursor state. When requested, implementer should tell
+// the CursorManager of any actual state changes performed through the
+// delegate.
+class VIEWS_EXPORT CursorPlatformDelegate {
+ public:
+ virtual ~CursorPlatformDelegate() {}
+
+ // A request to set the screen DPI. Can cause changes in the current cursor.
+ virtual void SetDeviceScaleFactor(
+ float device_scale_factor,
+ views::corewm::CursorManagerDelegate* delegate) = 0;
+
+ // A request to set the cursor to |cursor|. At minimum, implementer should
+ // call CursorManagerDelegate::CommitCursor() with whatever cursor is
+ // actually used.
+ virtual void SetCursor(gfx::NativeCursor cursor,
+ views::corewm::CursorManagerDelegate* delegate) = 0;
+
+ // A request to set the visibility of the cursor. At minimum, implementer
+ // should call CursorManagerDelegate::CommitVisibility() with whatever the
+ // visibility is.
+ virtual void SetVisibility(
+ bool visible,
+ views::corewm::CursorManagerDelegate* delegate) = 0;
+
+ // A request to set whether mouse events are disabled. At minimum,
+ // implementer should call CursorManagerDelegate::CommitMouseEventsEnabled()
+ // with whether mouse events are actually enabled.
+ virtual void SetMouseEventsEnabled(
+ bool enabled,
+ views::corewm::CursorManagerDelegate* delegate) = 0;
+};
+
+} // namespace corewm
+} // namespace views
+
+#endif // UI_VIEWS_COREWM_CURSOR_PLATFORM_DELEGATE_H_

Powered by Google App Engine
This is Rietveld 408576698