summaryrefslogtreecommitdiffstats
path: root/WebCore/plugins/android/PluginViewAndroid.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Adds missing ENABLE(TOUCH_EVENTS) guards to Android-specific codeSteve Block2010-05-181-0/+2
| | | | | | | This will allow us to build with touch events disabled once we've merged https://bugs.webkit.org/show_bug.cgi?id=39222 Change-Id: Ia665e5e6c3b4169b6c5576aa26721d95e72934e9
* Merge Webkit at r58956: Update plugin code to use C99 types. See ↵Ben Murdoch2010-05-141-1/+1
| | | | | | http://trac.webkit.org/changeset/58590 Change-Id: I73f3f008a88e69962de831a98d40e8d23c3cce30
* Merge Webkit at r58956: Add bool parameter to Widget::setFocus. See ↵Ben Murdoch2010-05-141-2/+2
| | | | | | http://trac.webkit.org/changeset/58821 Change-Id: I3ab2eb4fdb14e32106c4b2ef51b889f2ffcd3661
* Merge webkit.org at r58033 : Use new PluginView::platformGetValue() and ↵Steve Block2010-05-111-15/+25
| | | | | | | | platformStaticGetValue() See http://trac.webkit.org/changeset/55432 Change-Id: I21b1185ce5a86d902c7a5de3f7866e82c6fe3ee8
* suppress compiler warnings in plugin codeCary Clark2010-04-061-0/+3
| | | | Change-Id: I0cadbf8946193ed7a4a7fe0cdeff82a2495d9ef9
* Make sure html plugin element supports focus so thatGrace Kloba2010-03-311-5/+3
| | | | | | | | | | plugin can call focus() on it. By default, only nodes can be tabbed through supports focus. We make plugin element like frame element where it always supports focus. In Android, plugin has a focused mode, so it requires this change. Fix http://b/issue?id=2539608
* cherry-pick 74f79778892548221468d075f949acb3d4064368 to froyoGrace Kloba2010-03-301-17/+18
| | | | | | | | | | In Android, as we always remap the plugin from page space to view space, we do want to update when the rect in the page space changed. This should fix the bug where the plugin is inside a fixed position. So even its page coordinate changed when scrolling, its window coordinate didn't change. We missed the update. Fix http://b/issue?id=2542934
* Allowing native code access to the application context as long asDerek Sollenberger2010-03-231-4/+15
| | | | | | | | | | there is at least one valid instance of the webviewcore class. This change allows plugins access to the application context when the plugin package is loaded, prior to any instances of the plugin being created. Change-Id: I74a58cf76cc3c2d0ef7bca19346f13f58f616830
* To enable per file log, only need to define PLUGIN_DEBUG_LOCALGrace Kloba2010-03-161-1/+1
|
* Ensure a plugin is not shown if it is completely obscured by otherDerek Sollenberger2010-03-161-3/+4
| | | | | | html content. Change-Id: Iffcc30d47428708842ac5dddee41cc611d879c1c
* If the plugin is in an IFrame we need to reposition the plugins surfaceDerek Sollenberger2010-03-151-5/+18
| | | | | | every time the IFrame changes position within the document. Change-Id: I03090bda439c3a3cac95dce42b3ea37901dc42f8
* If we do change to document focus in mouse down,Grace Kloba2010-03-091-3/+4
| | | | | | | | set default handled so that EventHandler won't try to change the document focus. This should address the problem Adobe saw when tapping on a object may cause both GainFocus and LostFocus life cycle events.
* Only call plugin touch code if it is in full screenLeon Scroggins2010-03-091-25/+10
| | | | | | | | | | | | | mode or it is the document focused node. Remove Android special code added to support prevent default for double tap and long press. Long press and double tap needs to call preventDefault if it is needed. Remove Android special code added to pass event time. Need a separate CL for android_npapi.
* fix to ensure plugins are not shown when they are marked hidden by the DOM.Derek Sollenberger2010-03-091-5/+19
| | | | Change-Id: Ic32359b699d71dcd1603ac9295c95100014fc484
* fixing problem were plugin surfaces are not created.Derek Sollenberger2010-03-021-0/+8
| | | | | | | | | | The problem occurs when a page containing a plugin is refreshed or the plugin is loaded using javascript. If the window size is set before the plugin view has its parent sent then the plugin surfaces were not being initialized. This change ensures that if that happens the surfaces will still be created. see bug #2476059.
* am 4e409302: am a506357e: Adding logging to android\'s plugin view.Derek Sollenberger2010-03-021-6/+17
|\ | | | | | | | | | | | | Merge commit '4e409302db5afdfb18231bd3e1a86f85302a2599' * commit '4e409302db5afdfb18231bd3e1a86f85302a2599': Adding logging to android's plugin view.
| * Adding logging to android's plugin view.Derek Sollenberger2010-03-021-6/+17
| |
| * Pass touch event time from Java to WebKitGrace Kloba2010-02-021-1/+1
| |
* | Pass touch event time from Java to WebKitGrace Kloba2010-02-031-3/+3
| | | | | | merge from https://android-git.corp.google.com/g/#change,39356
* | absoluteToLocal works with a page co-ordinate that is relative to the top ↵Ben Murdoch2010-01-261-3/+3
| | | | | | | | | | | | | | | | left of the containing frame's document, so fix a bug in the WebCore touch event handler where the wrong page co-ordinates were being passed to the Touch construtor. This part of the change should be upstreamed to webkit. Also fix a crash when a touchCancel event is sent to a plugin because touchCancel, like touchend is not guaranteed to have data in touches, but will have data in changedTouches. Change-Id: I5345d7baf4e4325b24fbc5fbe60132dafb80e006
* | am 53e1af87: am 2eb76d0b: Add logging for all plugin events and their return ↵Derek Sollenberger2010-01-251-3/+3
|\ \ | |/ | | | | | | | | | | | | | | values. Merge commit '53e1af87fa4f19eac50b3d6fb45a3a386d156cd0' * commit '53e1af87fa4f19eac50b3d6fb45a3a386d156cd0': Add logging for all plugin events and their return values.
| * Add logging for all plugin events and their return values.Derek Sollenberger2010-01-251-3/+3
| |
* | resolved conflicts for merge of 9dabd572 to masterGrace Kloba2010-01-201-15/+34
|\ \ | |/
| * Changing plugin setwindow() to use page coordinateGrace Kloba2010-01-201-25/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | instead of frame as it is what Flash expects. For other port like Mac, it passes the window coordinate to the plugin. In Android, plugin always sees the full page and we use the visible screen rect to indicate whether it is visible. Change to use page coordinate across PluginView and PluginWidget for consistency. This should fix the problem Ben saw with plugin inside iframe (which is caused by a race condition) and the cnnn ad problem Adobe has.
* | Refactor our touch event code to use the version submitted to webkit.org by ↵Ben Murdoch2010-01-201-10/+17
|/ | | | | | the Qt team. Change-Id: I2953472cee68aadf18f9dd740e9b3f69ad729cf0
* consolidating to only use one surface per plugin. give plugin access to java ↵Derek Sollenberger2010-01-111-1/+7
| | | | | | context. There is a companion commit in frameworks/base.
* register the eventinterface with our dispatcher listMike Reed2009-12-171-0/+2
|
* Implement the full screen WebView plugin.Grace Kloba2009-12-161-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Use a NoTitleBar_Fullscreen dialog to implement the full screen plugin. This runs in the same thread as WebView (UI in the Browser case). One catch is that the SurfaceView provided by the plugin needs to be opaque if it doesn't want to see through the WebView. The PluginFullScreenHolder translates the events to the underline WebView. Special treatment in the touch case as it needs to translate the coordinates. WebView can't be panned, or double tap to zoom, or long press to trigger the context menu while having a full screen plugin. Inside webkit, we also give the plugin element focus when it goes to the full screen so that it takes key events. While handling key events, we don't let it loose focus or scroll out. Todo: When a plugin goes to full screen, we should make sure the embedded plugin is fully visible. Otherwise when we translate the touch events back, they will be outside of the visible rect and will be ignored. This is part 2 of 2-project check in.
* Enable longpress and doubletap to WebKit as touchGrace Kloba2009-12-091-3/+18
| | | | event if it is requested.
* Refactoring plugins to use new java interfaces.Derek Sollenberger2009-11-301-6/+0
| | | | | | | This change contains extensive cleanup as we now keep track of a pointer to the plugin's java entry point (WebkitPlugin.class). Also given that we track this object and changes to plugin packaging we nolonger need to pass additional parameters in quite a few methods.
* Fixes license headers for all Android-specific JavaScriptCore and WebCore ↵Steve Block2009-11-131-4/+5
| | | | | | | | | | | | | | | | | | | | | | files not yet upstreamed to webkit.org. WebKit requires either a BSD-style or LGPL 2.1 license for all code. We use a BSD-style 2-clause license for Android-specific files that will be upstreamed to webkit.org. - For most files, I've fixed the names of copyright holders in the license text to 'THE COPYRIGHT HOLDERS' and cleaned up formatting in the existing BSD-style license. - For Makefiles and the following files in WebCore/platform/graphics/android/, I've changed from an Apache 2.0 license to the BSD-style license. - WebCore/platform/graphics/android/BitmapAllocatorAndroid.cpp - WebCore/platform/graphics/android/BitmapAllocatorAndroid.h - WebCore/platform/graphics/android/SharedBufferStream.cpp - WebCore/platform/graphics/android/SharedBufferStream.h - For the following files, I've changed from an LGPL licese to the BSD-style license. - WebCore/platform/graphics/android/FontPlatformData.h - WebCore/platform/graphics/android/FontPlatformDataAndroid.cpp - WebCore/plugins/android/PluginDataAndroid.cpp Change-Id: Ic4c3e5610afc58637b7a9b81b1d0d1f17f4f4cb1
* Allow plugins to load java classes from their apk.Derek Sollenberger2009-11-091-3/+9
| | | | | | | | Relocate ANPSystemInterface into its own file and provide the ability to call into java and load a plugin's java class from their apk. see http://b/2215696
* changing how plugins gain/lose focus.Derek Sollenberger2009-10-271-1/+17
| | | | | | | | | | Previously we were keeping our own state in the UI thread to determine when to send events to the plugin. This change removes that logic and uses the document focus to determine when events are to be sent. This also fixes problems with the plugins occasionally not receiving lose focus events. see bug http://b/2033843
* Merge webkit.org at R49305 : Stub out PluginView::halt and PluginView::restart.Steve Block2009-10-201-0/+8
| | | | | | See http://trac.webkit.org/changeset/49060 Change-Id: I1af14254d03b1a06c37c1081b12eddaab73fd5ab
* Merge webkit.org at R49305 : PluginView::init and destructor have been moved ↵Steve Block2009-10-201-45/+5
| | | | | | | | to common code. See http://trac.webkit.org/changeset/47966 and http://trac.webkit.org/changeset/47967 Change-Id: If5b9594b032d5a7d456fe3bb6092eafef3655c34
* When mouse down or plugin handles touch down, set the pluginGrace Kloba2009-09-231-0/+13
| | | | | | to be the focus of the document so that it can receive key events. This has the same logic as in PluginViewMac.cpp's handleMouseEvent().
* renaming setJavaClass_ANPSetValue and ensuring memory is freed on subsequent ↵Derek Sollenberger2009-09-211-2/+2
| | | | | | calls Change-Id: I7881e711af7ec905e5c120e8e2fd4b0b7ba5e840
* First pass at replacing native plugin views with java.Derek Sollenberger2009-09-151-0/+7
| | | | Change-Id: I637275c9766202a4358ef25af01ee92c85c48e7f
* Fix the last of the linker errors !Ben Murdoch2009-08-171-0/+5
|
* Fix first set of linker errors.Ben Murdoch2009-08-171-49/+0
|
* Add SystemInterface to the android_npapi so that we can expose system relatedGrace Kloba2009-08-051-0/+2
| | | | properties. Currently it only has getApplicationDataDirectory.
* Fixing mouse and touch coordinates inside iframes.Derek Sollenberger2009-08-031-26/+17
|
* fixing plugin event handling for touch to return the correct value.Derek Sollenberger2009-07-281-1/+1
|
* removing visibleRect event and tracking rectangles instead.Derek Sollenberger2009-07-201-2/+1
|
* Adding plugin support for an RGBA surface view.Derek Sollenberger2009-07-171-8/+4
|
* Ensuring the plugin maintains control of the nav keys until it explicity ↵Derek Sollenberger2009-07-081-3/+20
| | | | releases them.
* plugins are now sent the correct coordinates even when the page is scrolled.Derek Sollenberger2009-07-071-6/+16
|
* added gain/loose focus support for plugins. (focus = eligible to receive ↵Derek Sollenberger2009-07-021-6/+1
| | | | user events)
* Adding support for plugins to request the keyboard.Derek Sollenberger2009-06-291-2/+3
|
* Adding mouse events to the plugin APIDerek Sollenberger2009-06-261-3/+10
|