summaryrefslogtreecommitdiffstats
path: root/WebKit/android/jni/WebViewCore.h
Commit message (Collapse)AuthorAgeFilesLines
* Line up text with WebTextView.Leon Scroggins2011-01-211-2/+19
| | | | | | | | | | | | | Bug:3321608 Bug:3085564 Scroll the UI layer for a <textarea> when scrolling the WebTextView. When clicking on a <textarea>, send the scroll point so the click happens properly. Requires a change to frameworks/base. Change-Id: I3b32a53db350b6c49fdbf8dd177c34854aae66b4
* Trigger OnScreen events when the page loads.Derek Sollenberger2011-01-191-1/+4
| | | | | bug: 3368632 Change-Id: I13dbf1c809f32887f5d659e6fead60a61110eddd
* Passing WebSettings cacheMode to the chrome load_flagsKristian Monsen2011-01-191-0/+3
| | | | | | Fixes a few CTS tests Change-Id: I1b72813b828a6aa24522e9ffb2ff17a3e364f7bf
* Merge "b/3133123 Pass touch point ids to WebKit" into honeycombHuahui Wu2011-01-131-1/+1
|\
| * b/3133123 Pass touch point ids to WebKitHuahui Wu2011-01-131-1/+1
| | | | | | | | | | | | | | | | | | This is the CL in WebKit side and it needs the framwork CL: https://android-git.corp.google.com/g/#change,89630 Notice some changes touch open source WebKit's code, so b/3351313 is filed to keep track of that. Change-Id: I0ac5d75c4a90f14afeb2e3fc2dc5b1c437c631f8
* | Do not open the keyboard if 'click' came from a keypress.Leon Scroggins2011-01-121-3/+5
| | | | | | | | | | | | | | | | Bug:3344162 Requires a change in frameworks/base. Change-Id: Id6fddcb2f179695998ef9372b8bca36bebbb54a3
* | Use float to preserve scales' accuracy.Shimeng (Simon) Wang2011-01-111-1/+1
|/ | | | | | | | | | | This change helps page navigation, since the restored scale is accurate. This change has a corresponding change in frameworks/base. https://android-git.corp.google.com/g/#change,88121 issue: 3225233 Change-Id: I7e5601e8412e8b81e7f32c9ffb9e6c114db95169
* bug:3325039 Making the cursor ring movement send accessibility events.Svetoslav Ganov2011-01-071-0/+17
| | | | | | | | | | | | | | | | | | | | | | | | | 1. Added a mechanism to select the cursor ring content if accessibility is enabled - This is achieved by sending an event to the WebCore thread (if accessibility is enabled) to select the content of the cursor when the latter moves. Added code in WebViewCore to select the given node and notify the UI thread for the selection markup which is delivered of the accessibility injector which manages sending accessibility events. This is relevant for adding accessibility to WebView if JavaScript is not enabled. (If JS is enabled we inject a screenreader written in JS). 2. Fixed the event delegation to the accessibility injector since it should be able to consume key events of interest and perform some action which leads to sending appropriate accessibility event. In the previous implementation it was possible that the injector consumes the event but the latter was bubbled up. 3. Added function to scroll the selection into view while moving it around based on user commands. Note: This is a two project change. Change-Id: Ica27f317e194474d4e38aba5d7a2c0acc9f05a33
* Add full-screen support for OpenGL based plugins.Derek Sollenberger2011-01-041-0/+3
| | | | | bug: 3321891 Change-Id: Ife1bbeed91b3285277bfe47c71f523d477891b98
* extract anchor href and image src separatelyCary Clark2010-12-151-1/+7
| | | | | | | | | | | | | Long pressing a link may return an anchor, an image, or an image in an anchor. Sometimes we want one, sometimes the other. Make both available so the context menu can choose. Companion changes are in packages/apps/Browser, frameworks/base bug:3282745 bug:3263340 Change-Id: I422db224ad67147f0cbacc4078df305b1cf8564d
* Fix for <select> elements.Leon Scroggins2010-12-071-4/+4
| | | | | | | | | | | | Bug:3230016 Allow webkit to handle the click on a <select> element if it is a RenderMenuList. Implement PopupMenu class, using PopupMenuClient to interact with the <select> element. Change-Id: I9611c23304fc2fc3eb01ecbd7a46fa02cd52df9a
* Use one WebRequestContext per WebViewSteve Block2010-12-011-5/+9
| | | | | | | | | | | | This change switches from using a pair of WebRequestContexts (one for private browsing, one for regular browsing) to using one WebRequestContext per WebView. This is required to allow us to set the userAgent on each WebView. The WebRequestContext is now owned by the WebView. Bug: 3113804 Change-Id: Iba2b1490e7ce4ff65c08a04a310963fa2c7e4f83
* pass the x and y to retrieve anchor dataCary Clark2010-12-011-3/+3
| | | | | | | | | | | During a long press, the original pointer to the node and frame may change. Pass the location instead to attempt to find the anchor. companion change in frameworks/base bug:3240869 Change-Id: Idf5eb67e2cb544dfa312e41f9224813c6ca80563
* Send the AutoFill Preview string java side.Ben Murdoch2010-11-051-1/+1
| | | | | | | | | | | When we have determined that the form can be autofilled, send a preview string over to Java so that we can display it in the drop down box. Requires a change in frameworks/base: https://android-git.corp.google.com/g/#change,77127 Change-Id: Ia0dd899d659c6e5710155f33749255058d7c3faf
* Update the layers onlyNicolas Roard2010-11-011-0/+11
| | | | | | | | C++ counterpart to https://android-git.corp.google.com/g/#change,77500 Bug:2975990 Change-Id: I3b8fd27f991d6776059a15eef36d0c9a7b44f9bb
* Only AV formats should be handled by MediaPlayer (C++ side)Iain Merrick2010-10-271-1/+1
| | | | | | Fixing JNI bindings. See Java-side change for details (Id39b770b). Change-Id: I50da7599475476ebaaf9609f44e13fbdf212c90e
* For non user-scrolled scroll, don't send scroll event.Shimeng (Simon) Wang2010-10-221-1/+1
| | | | | | | | This is in conjunction with Java side CL: https://android-git.corp.google.com/g/75647 issue: 3063945 Change-Id: I3f0bb11e25ee4ea7615980e2bc6cefb2064d4d9d
* Rename DeviceOrientationManager to DeviceMotionAndOrientationManagerSteve Block2010-10-151-3/+3
| | | | | | | Requires a corresponding change in frameworks/base ... https://android-git.corp.google.com/g/74335 Change-Id: I8158a8a65e83fa1d0a80233250921dae2c2b4d76
* Implement DeviceMotionEventSteve Block2010-10-081-0/+1
| | | | | | | | Requires a corresponding change in frameworks/base ... https://android-git.corp.google.com/g/72907 Bug: 2495651 Change-Id: I8ba07a0280b96379b3717a707184d719da6266bf
* Implement supportsType in MediaPlayerPrivateAndroid.Shimeng (Simon) Wang2010-10-061-0/+3
| | | | | | | Use Java API to obtain this info. issue: 2816278 Change-Id: Ia525cc84f9a18ad2f9868d9f13d3671da527e5e0
* Hide the soft keyboard when a blur happens.Leon Scroggins2010-09-281-0/+8
| | | | | | | | Bug: 2953257 Requires a change in frameworks/base. Change-Id: Ib0e7976cd5eb585be991b265087bff9ee7c4f4fd
* Bug: 2372180Huahui Wu2010-09-271-1/+1
| | | | | | | | | | | | | | | This CL adds support to pass multi-touch event from browser to webkit. PlatformTouchEvent.h and PlatformTouchEventAndroid.cpp: changed the android constructor to take multiple touch points. PlatformTouchPoint.h and PlatformTouchPointAndroid.cpp: changed the android constructor to take a touch point ID. WebViewCore.h and WebViewCore.cpp: 1. Updated handleTouchEvent(), HandleTouchEvent(), and jni interface to take multiple points. 2. Added support of action MotionEvent.ACTION_POINTER_DOWN & MotionEvent.ACTION_POINTER_UP. Change-Id: I79cffdba12a60ced9a571b4c1fd5b520a0fb6074
* Integrate AutoFill with WebTextView in Java.Ben Murdoch2010-09-231-0/+1
| | | | | | | | | | | | | | | Adds the necessary JNI hooks so that when the user focuses a form field that AutoFill has identified as "autofillable", the Java side WebTextView will show an option in the auto complete drop down box that when selected will call back to AutoFill in native code and actually fill out the form. AutoFill is still disabled at compile time by default. To test the feature set ENABLE_AUTOFILL=true and rebuild WebKit. Needs a corresponding frameworks/base change. Change-Id: Ie76ff9cbf0b44f3f3644079ed64ce71bfbc9859a
* Accessibility support for WebViewsSvetoslav Ganov2010-09-131-3/+33
| | | | Change-Id: Ia63a74b0de66d40acb08ec0ea6f39dc85adac9be
* Allow WebKit to scroll selection on screen.Leon Scroggins2010-09-101-0/+3
| | | | | | | | | Requires a change to frameworks/base Bug 2679411 Bug 2659028 Change-Id: I482cefadc24c620c6d07cbce44acc216bdb9b8df
* communicate drawing pause to webkit to pause gif animationCary Clark2010-08-241-0/+2
| | | | | | | | | | | | | | Gif frames continue even if the webkit changes aren't drawn. When we suspend drawing, suspend the gif animation as well. This is accomplished by fooling webkit into thinking the browser window is offscreen. When the webkit drawing is resumed, invalidate the entire content so the gif animations start up once more. requires companion change in frameworks/base Change-Id: I78846214048b038cd8d0401dad103d451cd5a269 http://b/2621902
* Implement DeviceOrientationSteve Block2010-08-191-0/+2
| | | | Change-Id: I12d5632b37db581065db9bcbd49f3dc28ecd7719
* Remove calls to change the state of the focus controller.Leon Scroggins2010-08-181-1/+1
| | | | | | | | | | | Bug: 2582455 Never modify the focused state of the focus controller. A corresponding java change make the active state get changed only when the webview gains/loses focus. Change-Id: I6f17f82c772ea4410c0209bf57d251c9bd384e6c
* Merge WebKit at r65072: String class has moved to the WTF namespace.Ben Murdoch2010-08-131-16/+15
| | | | | | See http://trac.webkit.org/changeset/65021 Change-Id: I779a8ec0c3e1e0aed8f8d1894cfc1e5ca33ee549
* Hook up DeviceOrientationClientMockSteve Block2010-08-101-0/+5
| | | | Change-Id: Ie21024238a88252cd668cbddb98643b142728cf1
* Combine base PictureSet with composite layers intoGrace Kloba2010-07-091-13/+7
| | | | | | | | | | | | | | | | | | | | | | | | one SkLayer tree. The BaseLayerAndroid is the root of the composite layers and it has the PictureSet as its base content. Before, WebViewCore uses m_contentMutex and both UI and WebCore threads access the m_content. Now we use the layer approach. When WebCore thread updates its content in recordContent, it creates a new BaseLayerAndroid and copy both PictureSet and composite layers into it. Then it is sent to be consumed by UI thread. Clean up sync layer in both ChromeClientAndroid and GraphicsLayerAndroid. splitContent can be a little tricky with this change. Now UI has its own copy of PictureSet. When it takes too long to draw, it will send a request to WebCore to split the PictureSet. When it is done, a copy of the new PictureSet will be sent back to UI. There is a matching change in framework/base
* Detect if we're a webapp from the meta tag and send a message throughBen Murdoch2010-06-301-0/+2
| | | | | | | | | | to java land if that is the case. Requires a frameworks/base change. b/2766917 Change-Id: I6d4034e6316e27c31a36a06063b5968c654fc756
* Code clean up, http://b/issue?id=2724743Grace Kloba2010-05-281-12/+5
| | | | | | | | | | | | | | | | | | | | | | | | Change Widget:screenWidth() to Widget:textWrapWidth() as the text wrap width may be different than the screen width after pinch zoom. Change AndroidWebHistoryBridge's m_screenWidthScale to m_textWrapScale to reflect its meaning. Remove unused screenWidth/screenHeight in PlatformBridge. Merge two restore methods to one. There is a matching CL in framework/base. Only setUseFixedLayout if layout width is different than screen width. Change from Node* to Ref<Node> to avoid a crash. Fix http://b/issue?id=2660396
* Added getTouchHighlightRects for the fat point.Grace Kloba2010-05-271-0/+3
| | | | There is another matching CL in framework/base.
* Adding a mechanism for injecting accessibility in WebViews with disabled ↵Svetoslav Ganov2010-05-151-0/+12
| | | | | | JavaScript. Change-Id: If0d8fc9cffcd00356dffe46af094b65488b3ff5a
* am 5c6e2c78: am 34a423ba: am 22804c07: Pass scroll mode to Java so that we ↵Grace Kloba2010-04-151-0/+5
|\ | | | | | | can handle overflow on html and body correctly.
| * Pass scroll mode to Java so that we can handleGrace Kloba2010-04-131-0/+5
| | | | | | | | | | overflow on html and body correctly. Fix http://b/issue?id=2512549
* | Remove the TouchStationary state from PlatformTouchPoint.Ben Murdoch2010-04-141-1/+0
|/ | | | | | This is being tracked upstream at webkit.org in https://bugs.webkit.org/show_bug.cgi?id=37609 Change-Id: Ideb26d7457e27799564e8db9b3308a703a1110e2
* Revert "Mark positioned elements as needing a relayout when checking for hit ↵Nicolas Roard2010-04-061-3/+0
| | | | | | | | | | | test." Not needed anymore. This reverts commit 84b2cee4185865d37e64bb3cc7a9e1bd6051eb7c. Bug:2457215 Change-Id: I945e6ebe520b1490f4bf62809b4f375750f5c597
* Mark positioned elements as needing a relayout when checking for hit test.Nicolas Roard2010-03-241-0/+3
| | | | | | | | | | This is necessary when using composited fixed layers, as the layers position may have moved UI-side, while the webkit's related position of those layers may not have been updated yet. Fix Bug:2457215 Change-Id: If4f0e9c3d1a4786b29dcc7c2dc3510ba090b6a36
* Allowing native code access to the application context as long asDerek Sollenberger2010-03-231-0/+4
| | | | | | | | | | 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
* Pass selection data along with message to open the keyboard.Leon Scroggins2010-03-181-1/+2
| | | | | | | | Fixes http://b/issue?id=2431351 Requires a change to frameworks/base Change-Id: I7f703746bdd00aaae2607a6a41ac4916f43d37b1
* Compute the position of the fixed elements to be relative to theNicolas Roard2010-03-171-0/+1
| | | | | | | | screen and not the virtual viewport. This fixes Bug:2515587 and Bug:2457215 Change-Id: Ib987787cf9bf74b760b857dbbb397f85af334dce
* Clean up full-screen mode plugins now that they handle touchDerek Sollenberger2010-03-151-4/+1
| | | | | | | | in their java view. There is a matching commit in frameworks/base Change-Id: Ibe76eb22c2b5ccc7fb80e4807edcbbc4d25e4793
* Add requestCenterFitZoom to android_npapi so thatGrace Kloba2010-03-121-0/+4
| | | | | Flash can trigger the smart-zoom Fix http://b/issue?id=2510670
* set the cached focus state when a node is in a fixed layerCary Clark2010-03-111-0/+2
| | | | | | | | | The newly built nav cache needs the layer information set before it attempts to set the focus so the nodes' bounds are set correctly. Change-Id: I72ff03988c267388da5921ac85b0ac0f6fb2374a http://2503096
* Only call plugin touch code if it is in full screenLeon Scroggins2010-03-091-1/+1
| | | | | | | | | | | | | 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.
* Set the proper frame's focus controller to active and focused.Leon Scroggins2010-03-051-1/+5
| | | | | | | When editing text, set the FocusController to both active and focused, and use the FocusController associated with the focus. Fixes http://b/issue?id=2251399
* refactor drawing to support layersCary Clark2010-02-241-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Drawing elements that appear atop or below layers need to be drawn both in the proper order and with the correct canvas to respect clipping and the matrix. Drawing the find results, text selection, or the cursor ring, interleaves with any layers that may be drawn. The main picture is treated as owned by a LayerAndroid so each component can decide when to draw. This change leave the main picture in WebViewCore.cpp, and draws everything else in WebView.cpp -- in the future, additional refactoring can put all drawing in one place. The logic of what to draw is still in WebView.java, but the actual drawing calls are now triggered inside the layer code. Android.mk - Add rule to trigger building without layers from buildspec.mk. LayerAndroid.* - Replace FindOnPage reference with abstract DrawExtra class to draw adornments in the layers' canvas context. - Add a LayerAndroid constructor to create a dummy layer with a SkPicture* and a uniqueId==-1 so that extras can detect when they are drawn by the main picture. android_graphics.* - Move cursor ring drawing out of WebView.cpp to here. - Separate cursor ring setup from actual drawing. - Get the cursor ring metrics in local coordinates. ChromeClientAndroid.cpp - Fix compiler warnings. WebViewCore.* - Move updateCursorBounds from WebView.cpp. This permits it to be called from CursorRing::setup. CachedFrame.* CachedNode.* CachedLayer.* - Add local bounds getters. CachedRoot.h - Move class FindCanvas to the android namespace. DrawExtra.h - Add an abstract class called by LayerAndroid to optionally draw extra elements in its canvas context. FindCanvas.* SelectText.* - Refactor drawing to draw in layers context. WebView.cpp - Move drawing from WebView.java. - Remove selection code to SelectText.cpp. - Use inverseScale to simplify viewPort metrics. - Simplify layer root so java doesn't need to know about it. Requires companion change in frameworks/base http://b/2457316 http://b/2454127 http://b/2454149
* Simplify the layer code:Nicolas Roard2010-02-241-1/+7
| | | | | | | * Rename setRootLayer to setUIRootLayer * Fixed some logs in GraphicsLayerAndroid * Added back the diagonal drawing debug code in LayerAndroid * Simplified ChromeClientAndroid, removed compositingLayerSync()