views:

99

answers:

2

I've written a web-app in HTML and Javascript for iPhone and Android which involves the dragging and dropping images.

You initiate the drag by holding your finger over the image for about a second. However, Android then pops up the message giving me the option to save the image, set it as wallpaper etc.

How can I prevent Android from doing this? Is there a metatag I can use? Some javascript?

A: 

Javascript has a function to prevent the default action of a browser for the event in question.

In your javascript try:

event.preventDefault();

See: https://developer.mozilla.org/en/DOM/event.preventDefault

Dale
To what event though? Nothing seems to fire until you pick your finger up.
How are you assigning the mouseup/click/longpress event? That is where you define it. All user specified function attached to events will fire before the browsers. In other words, putting event.preventDefault(); in your function for your long press event should fire before androids function. Can we see a little more code?
Dale
All I want is so that when you press and hold on an image the Android dialog doesn't popup.
...and as far as I can see there is no longpress event.
A: 

In your activity that shows the webview, try extending GestureDetector.SimpleOnGestureListener. Then override the onLongPress(MotionEvent e) method and doing nothing.

If that doesn't work, you might have to create a custom webview that inherets from webview and overrides onLongPress there.

Or maybe you could try


WebView wv =(WebView) findViewById()
wv.setClickable(false)

Falmarri
It's a webpage, not an Android App.
Oh, I misunderstood. I thought you were writing an android app to interface with your web app. I'm not sure you're going to be able to prevent android from longpressing like that.
Falmarri