aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--common/system.h13
-rw-r--r--graphics/cursorman.h16
2 files changed, 27 insertions, 2 deletions
diff --git a/common/system.h b/common/system.h
index a8f3b1c903..5b3c208661 100644
--- a/common/system.h
+++ b/common/system.h
@@ -673,7 +673,18 @@ public:
*/
//@{
- /** Show or hide the mouse cursor. */
+ /**
+ * Show or hide the mouse cursor.
+ *
+ * Currently the backend is not required to immediately draw the
+ * mouse cursor on showMouse(true).
+ *
+ * TODO: We might want to reconsider this fact,
+ * check Graphics::CursorManager::showMouse for some details about
+ * this.
+ *
+ * @see Graphics::CursorManager::showMouse
+ */
virtual bool showMouse(bool visible) = 0;
/**
diff --git a/graphics/cursorman.h b/graphics/cursorman.h
index 4cbd5bea12..f019e37b04 100644
--- a/graphics/cursorman.h
+++ b/graphics/cursorman.h
@@ -36,7 +36,21 @@ public:
/** Query whether the mouse cursor is visible. */
bool isVisible();
- /** Show or hide the mouse cursor. */
+ /**
+ * Show or hide the mouse cursor.
+ *
+ * This function does not call OSystem::updateScreen, when visible is true.
+ * This fact might result in a non visible mouse cursor if the caller does
+ * not call OSystem::updateScreen itself after a showMouse(true) call.
+ *
+ * TODO: We might want to reconsider this behavior, it might be confusing
+ * for the user to call OSystem::updateScreen separately, on the other
+ * hand OSystem::updateScreen might as well display unwanted changes on
+ * the screen. Another alternative would be to let the backend worry
+ * about this on OSystem::showMouse call.
+ *
+ * @see OSystem::showMouse.
+ */
bool showMouse(bool visible);
/**