diff options
author | dmichael@chromium.org <dmichael@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-07-20 18:53:59 +0000 |
---|---|---|
committer | dmichael@chromium.org <dmichael@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2011-07-20 18:53:59 +0000 |
commit | 38d035e33fc2fac4f5c23819c6974afe2caff47b (patch) | |
tree | 82ecf8f419fbc6aafda5a068c03af0b1dd5acc75 /ppapi/api | |
parent | e43145482ea2623ef59ff8c4cc5c10ccad8302a9 (diff) | |
download | chromium_src-38d035e33fc2fac4f5c23819c6974afe2caff47b.zip chromium_src-38d035e33fc2fac4f5c23819c6974afe2caff47b.tar.gz chromium_src-38d035e33fc2fac4f5c23819c6974afe2caff47b.tar.bz2 |
Revert 93223 - Reland http://codereview.chromium.org/7452002/
Update chromoting input events. (Clang caught this. Thanks, Clang!)
Note I'm leaving in temporary backwards-compatibility.
brettw, just need a rubber-stamp. This is the same as the last CL. awong/garykac/sergeyu, looking for someone on chromoting team to glance at my changes and make sure I didn't do anything you don't like. This is a high priority for 14, so please look if you can.
BUG=None
TEST=ppapi tests
Review URL: http://codereview.chromium.org/7466002
TBR=dmichael@chromium.org
Review URL: http://codereview.chromium.org/7471006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@93229 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ppapi/api')
-rw-r--r-- | ppapi/api/ppp_instance.idl | 45 |
1 files changed, 37 insertions, 8 deletions
diff --git a/ppapi/api/ppp_instance.idl b/ppapi/api/ppp_instance.idl index aeb95b1..da8f7a9 100644 --- a/ppapi/api/ppp_instance.idl +++ b/ppapi/api/ppp_instance.idl @@ -9,7 +9,7 @@ */ label Chrome { - M14 = 1.0 + M14 = 0.5 }; /** @@ -161,13 +161,11 @@ interface PPP_Instance { * An instance's default condition is that it will not have focus. * * <strong>Note:</strong>Clicks on instances will give focus only if you - * handle the click event. Return <code>true</code> from - * <code>HandleInputEvent</code> in <code>PPP_InputEvent</code> (or use - * unfiltered events) to signal that the click event was handled. Otherwise, - * the browser will bubble the event and give focus to the element on the page - * that actually did end up consuming it. If you're not getting focus, check - * to make sure you're returning true from the mouse click in - * <code>HandleInputEvent</code>. + * handle the click event. Return <code>true</code> from HandleInputEvent to + * signal that the click event was handled. Otherwise the browser will bubble + * the event and give focus to the element on the page that actually did end + * up consuming it. If you're not getting focus, check to make sure you're + * returning true from the mouse click in <code>HandleInputEvent</code>. * * @param[in] instance A <code>PP_Instance</code> indentifying the instance * receiving the input event. @@ -181,6 +179,37 @@ interface PPP_Instance { [in] PP_Bool has_focus); /** + * HandleInputEvent() handles input events, such as keyboard events. This + * function returns <code>PP_TRUE</code> if the event was handled or + * <code>PP_FALSE</code> if it was not. + * + * If the event was handled, it will not be forwarded to the web page or + * browser. If it was not handled, it will bubble according to the normal + * rules. So it is important that a module respond accurately with whether + * event propagation should continue. + * + * Event propagation also controls focus. If you handle an event like a mouse + * event, typically the instance will be given focus. Returning false means + * that the click will be given to a lower part of the page and your module + * will not receive focus. This allows an instance to be partially + * transparent, where clicks on the transparent areas will behave like clicks + * to the underlying page. + * + * @param[in] instance A <code>PP_Instance</code> indentifying one instance + * of a module. + * + * @param[in] event The input event. + * + * @return <code>PP_TRUE</code> if <code>event</code> was handled, + * <code>PP_FALSE</code> otherwise. + */ + PP_Bool HandleInputEvent( + /* A PP_Instance indentifying one instance of a module. */ + [in] PP_Instance instance, + /* The event. */ + [in] PP_InputEvent event); + + /** * HandleDocumentLoad() is called after initialize for a full-frame * module that was instantiated based on the MIME type of a DOMWindow * navigation. This situation only applies to modules that are pre-registered |