blob: 02f20b3e803c20926eac1e5a970013df0f8e1928 [file] [log] [blame]
/* Copyright (c) 2012 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.
*/
/**
* This file defines the <code>PPB_KeyboardInputEvent_Dev</code> interface,
* which provides access to USB key codes that identify the physical key being
* pressed.
*/
label Chrome {
M19 = 0.1
};
/**
* The <code>PPB_KeyboardInputEvent_Dev</code> interface is an extension to the
* PPB_KeyboardInputEvent</code> interface that provides
*/
[version=0.1, macro="PPB_KEYBOARD_INPUT_EVENT_DEV_INTERFACE"]
interface PPB_KeyboardInputEvent_Dev {
/**
* This sets a USB key code in the given <code>PP_Resource</code>. It is
* intended that this method be called immediately after any call to
* <code>Create</code>.
*
* @param[in] key_event A <code>PP_Resource</code> created by
* <code>PPB_KeyboardInputEvent</code>'s <code>Create</code> method.
*
* @param[in] usb_key_code The USB key code to associate with this
* <code>key_event</code>.
*
* @return <code>PP_TRUE</code> if the USB key code was set successfully.
*/
PP_Bool SetUsbKeyCode([in] PP_Resource key_event,
[in] uint32_t usb_key_code);
/**
* GetUsbKeyCode() returns the USB key code associated with this keyboard
* event.
*
* @param[in] key_event The key event for which to return the key code.
*
* @return The USB key code field for the keyboard event. If there is no
* USB scancode associated with this event, or if the PP_Resource does not
* support the PPB_InputEvent_API (i.e., it is not an input event), then
* a 0 is returned.
*/
uint32_t GetUsbKeyCode([in] PP_Resource key_event);
};