Data Fields
int32_t(* | LockMouse )(PP_Instance instance, struct PP_CompletionCallback callback) |
void(* | UnlockMouse )(PP_Instance instance) |
Detailed Description
The PPB_MouseLock
interface is implemented by the browser.
This interface provides a way of locking the target of mouse events to a single module instance and removing the cursor from view. This mode is useful for certain classes of applications, especially first-person perspective 3D applications and 3D modeling software.
Field Documentation
int32_t(* PPB_MouseLock::LockMouse)(PP_Instance instance, struct PP_CompletionCallback callback) |
LockMouse() requests the mouse to be locked.
While the mouse is locked, the cursor is implicitly hidden from the user. Any movement of the mouse will generate a PP_INPUTEVENT_TYPE_MOUSEMOVE
event. The GetPosition()
function in the PPB_MouseInputEvent
interface reports the last known mouse position just as mouse lock was entered. The GetMovement()
function provides relative movement information indicating what the change in position of the mouse would be had it not been locked.
The browser may revoke the mouse lock for reasons including (but not limited to) the user pressing the ESC key, the user activating another program using a reserved keystroke (e.g. ALT+TAB), or some other system event.
- Parameters:
[in] instance A PP_Instance
identifying one instance of a module.[in] callback A PP_CompletionCallback
to be called upon completion.
- Returns:
- An int32_t containing an error code from
pp_errors.h
.
void(* PPB_MouseLock::UnlockMouse)(PP_Instance instance) |
UnlockMouse() causes the mouse to be unlocked, allowing it to track user movement again.
This is an asynchronous operation. The module instance will be notified using the PPP_MouseLock
interface when it has lost the mouse lock.
- Parameters:
[in] instance A PP_Instance
identifying one instance of a module.
The documentation for this struct was generated from the following file: