summaryrefslogtreecommitdiffstats
path: root/services/input/PointerController.h
diff options
context:
space:
mode:
Diffstat (limited to 'services/input/PointerController.h')
-rw-r--r--services/input/PointerController.h19
1 files changed, 13 insertions, 6 deletions
diff --git a/services/input/PointerController.h b/services/input/PointerController.h
index c7435ee..1c21db1 100644
--- a/services/input/PointerController.h
+++ b/services/input/PointerController.h
@@ -64,14 +64,21 @@ public:
/* Gets the absolute location of the pointer. */
virtual void getPosition(float* outX, float* outY) const = 0;
+ enum Transition {
+ // Fade/unfade immediately.
+ TRANSITION_IMMEDIATE,
+ // Fade/unfade gradually.
+ TRANSITION_GRADUAL,
+ };
+
/* Fades the pointer out now. */
- virtual void fade() = 0;
+ virtual void fade(Transition transition) = 0;
/* Makes the pointer visible if it has faded out.
* The pointer never unfades itself automatically. This method must be called
* by the client whenever the pointer is moved or a button is pressed and it
* wants to ensure that the pointer becomes visible again. */
- virtual void unfade() = 0;
+ virtual void unfade(Transition transition) = 0;
enum Presentation {
// Show the mouse pointer.
@@ -187,8 +194,8 @@ public:
virtual int32_t getButtonState() const;
virtual void setPosition(float x, float y);
virtual void getPosition(float* outX, float* outY) const;
- virtual void fade();
- virtual void unfade();
+ virtual void fade(Transition transition);
+ virtual void unfade(Transition transition);
virtual void setPresentation(Presentation presentation);
virtual void setSpots(SpotGesture spotGesture,
@@ -250,7 +257,7 @@ private:
Presentation presentation;
bool presentationChanged;
- bool pointerIsFading;
+ int32_t pointerFadeDirection;
float pointerX;
float pointerY;
float pointerAlpha;
@@ -274,7 +281,7 @@ private:
void startAnimationLocked();
void resetInactivityTimeoutLocked();
- void sendImmediateInactivityTimeoutLocked();
+ void removeInactivityTimeoutLocked();
void updatePointerLocked();
Spot* getSpotLocked(uint32_t id);