am 2c0f89aa: Update SampleBrowserPlugin to show handling long press and double tap events.

Merge commit '2c0f89aaf61d62ac2f28ff3e46db6ba27983c6e5' into eclair-mr2-plus-aosp

* commit '2c0f89aaf61d62ac2f28ff3e46db6ba27983c6e5':
  Update SampleBrowserPlugin to show handling
This commit is contained in:
Grace Kloba
2009-12-09 16:01:30 -08:00
committed by Android Git Automerger

View File

@@ -72,6 +72,13 @@ BackgroundPlugin::BackgroundPlugin(NPP inst) : SurfaceSubPlugin(inst) {
test_domAccess(); test_domAccess();
test_javascript(); test_javascript();
test_loadJavaClass(); test_loadJavaClass();
//register for touch events
ANPEventFlags flags = kTouch_ANPEventFlag;
NPError err = browser->setvalue(inst, kAcceptEvents_ANPSetValue, &flags);
if (err != NPERR_NO_ERROR) {
gLogI.log(kError_ANPLogType, "Error selecting input events.");
}
} }
BackgroundPlugin::~BackgroundPlugin() { BackgroundPlugin::~BackgroundPlugin() {
@@ -170,7 +177,12 @@ int16 BackgroundPlugin::handleEvent(const ANPEvent* evt) {
} }
break; break;
case kTouch_ANPEventType: case kTouch_ANPEventType:
gLogI.log(kError_ANPLogType, " ------ %p the plugin did not request touch events", inst()); if (kDown_ANPTouchAction == evt->data.touch.action)
return kHandleLongPress_ANPTouchResult | kHandleDoubleTap_ANPTouchResult;
else if (kLongPress_ANPTouchAction == evt->data.touch.action)
browser->geturl(inst(), "javascript:alert('Detected long press event.')", 0);
else if (kDoubleTap_ANPTouchAction == evt->data.touch.action)
browser->geturl(inst(), "javascript:alert('Detected double tap event.')", 0);
break; break;
case kKey_ANPEventType: case kKey_ANPEventType:
gLogI.log(kError_ANPLogType, " ------ %p the plugin did not request key events", inst()); gLogI.log(kError_ANPLogType, " ------ %p the plugin did not request key events", inst());