| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
| |
Fixes http://b/issue?id=2201866
|
| |
|
|
| |
last change broke debugging code outside of the build
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Some of the fields in CachedNode are relevant only to input
fields and text areas. Move these into their own vector
so that we can add more data without making all CacheNodes
bigger.
Remove CacheNode entries that are no longer used, or can
be consolidated into the node type. Alphabetize some interfaces
and implementations. Update the debugging output.
part of http://b/2299660
|
| |
|
|
|
|
|
|
|
|
|
|
| |
When a text field or text area (or plugin) has another navable
element completely overlaying it, allow the trackball to move
from that inner element to the outer one.
Also, allow this to get a 'second chance' -- treat the case
when one element overlays another as a spacial nav and allow
it to retry in nav find algorithms.
fixes http://b/2266756
|
| |
|
|
|
|
|
|
|
|
|
|
| |
The nav cache attempts to take advantage of the order that
the dom is walked to know when multiple nodes have the same
parent. The old implementation doesn't always work, and a
simpler non-cached version makes more sense.
The algorithm now walks nodes until the parent has more than
one child, and assigns that parent as the 'parent group'. On
the other end, nodes with no parent group are never allowed
to get preferential matching treatment.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
These files have not yet been 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.
This change adds licenses where absent or simply fixes the names of copyright holders in the license
text to 'THE COPYRIGHT OWNER' and cleans up formatting.
Files in stl/ currently use licenses other than BSD-style and will require more careful treatment.
Change-Id: I67ad4b8932e432d3eaaeecdfeb0d09418496228d
|
| |
|
|
|
|
|
|
|
| |
Attempts to get the plugin to scroll when the ime
appears. Add debugging strings to help track events
to show plugin object. Add focusCandidate interfaces.
Tweak rectangles from plugin so they don't disappear.
Prefer found matches in nav cache that are later in
the document.
|
| |
|
|
|
|
|
|
|
|
|
| |
When a focused node is found while walking the DOM, the
CachedFrame tree doesn't have its parent pointer set.
Fix the focus index in the parent when fixing the parent pointer.
Also fix a debug statement so that it doesn't depend on
the focus parent.
Fixes http://b/issue?id=2048186
|
| |
|
|
|
|
|
|
| |
In CachedFrame, add methods to find the next textfield and to
determine which ImeAction should be associated with a given textfield.
In WebView, uses these apis to determine the ImeAction and jump
to the next textfield and scroll it on screen. Requires a change to
frameworks/base.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
WebViewCore.cpp:
Add parameter to CachedRoot::findAt to suppress check for
hidden nodes. This helps find a best match for newly built
nav caches.
Require that the new cursor node closely match the bounds
of the prior cursor node. This may need tuning.
CacheBuilder.cpp:
Remove isInput flag on cached nodes (no longer used)
CachedFrame.cpp:
Add hideCursor to complement clearCursor. Hide prevents
the cursor from drawing but does not move it. Clear removes
it altogether so that the next movement starts from the viewPort
edge.
CachedHistory.cpp:
Don't special case text fields when doing history navigation.
This special casing in part allowed setting the focus to
the homepage input, but since focus is no longer set by nav,
it is not required.
CachedNode.cpp:
Add hideCursor; clean up debugging
CachedRoot.cpp:
Use navBounds from history instead of cursor bounds to
determine next move. Clean up some obsolete code.
WebView.cpp:
Add hideCursor; call it when appropriate.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Older code treated the trackball as a four way dpad with
equivalents to moving up, down, left and right by generating
arrow key events. This change makes the trackball solely
generate mousemove events.
The old arrow keys in turn were mapped to be as close as
possible to tab-key events that moved the focus. The new
model leaves focus-changes to the DOM.
Clicking the dpad is distinguished from pressing the enter
key to be more compatible with desktop-authored web pages.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Check to see if the potentially larger hit-test bounds
can be used in place of the normal bounds, or if the
normal bounds can be used in place of the individual
text bounds.
Construct a region out of the individual focus ring
rectangles, then see if any text is drawn inside the
bounds but outside of the focus ring. If not, use one
rectangle instead of the rings.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If WebViewCore::sendFinalFocus is called from the UI thread,
postpone calls to WebViewCore::notifyFocusSet until after
the focus is set.
Don't allow WebViewCore::setSelection or
WebViewCore::passToJs to change the webkit
focus.
In WebView::notifyFocusSet, read the cache after it has been
updated.
In WebView::focusIsTextArea and WebView::nativeFindAll,
don't allow the new frame cache to fix the focus.
If CachedFrame::setFocus has already set the focus, don't
recompute its position.
Add/revise debugging.
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|