EditorInfo:
Add a flag to tell the InputMethodService to never go into fullscreen
mode.
InputMethodService:
When the new flag is set, onEvaluateFullscreenMode always returns
false.
WebTextView:
Use the new flag, along with IME_FLAG_NO_EXTRACT_UI. Fixes
http://b/issue?id=2358360
Calendar.roll() breaks the year at the beginning of the year, so
use add() instead, which changes larger fields.
Also, only use 4 bins, since the last bin's boundary is not relevant.
Lastly, no need to return Calendar in beginningOfDay.
Fixes http://b/issue?id=2361382
Fix for http://b/issue?id=2219166
Requires a change to external/webkit
Remove the old change to update the WebTextView when a key is pressed,
since the IME does not generate key events. Instead, when the focus
changes, and the IME is serving the WebTextView, immediately clear
the cursor and update the WebTextView, so the user can continue
typing.
This logic was lost when we switched back using FLASH
instead of RAM for the cache.
Add back the CACHE_MAX_SIZE to limit the maximum
cacheable file.
Fix http://b/issue?id=2346132
problem adobe run into.
When a child view is created, we first hide it if
the webview is not ready to draw yet. This will avoid
the multiple resizing notification.
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 1 of 2-project check in.
Pass point to click in three steps.
1) See if point corresponds to cached node.
2) If so,send a message to webkit to see if the node is good.
3) Call webkit with point, and good/bad info.
This is a two-part change with external/webkit.
Fixes http://b/2249425
Fix for http://b/issue?id=2178786
Provide strings for input types file, submit, and reset, and allow
them to be passed down to native.
Requires a change in external/webkit.
Ideally, I would like to allow Activities in the same package to intercept mime
types but there is no way to get the current Activity information from a generic
Context object. For now, skip resolved Activities that are in the same package.
Bug: 2314904
drag. It was added for the better performance of panning
while loading. But it does make sites using touch event
look bad as we don't have the display tree until touch up.
Fix http://b/issue?id=2310295
Move the change in position/size before the call to bring into view,
so that the properly positioned field will be brought into view. It
is also now before we check to see if it is the same textfield, so
it happens in both cases.
Also remove some code which checks the selection and then sets it
unnecessarily. It was originally surrounding some code which called
setRect, which had a side-effect of changing the selection. That
code was removed (rendering the remaining code useless), and setRect
no longer has the side effect (the side effect was a result of calling
reqestFocus, which it no longer does - further, the change in selection from
requestFocus no longer affects the textfield's text).
Help fix http://b/issue?id=2150538 and http://b/issue?id=1890360
Use the <input type> information to set the InputType, so that
the IME can show the correct options. Also consolidate setup
of WebTextView into setType().
Requires a change in external/webkit.
WebCore treats */*+xml as content that it can render. This prevents Activities
from intercepting those mime types. Check the same regular expression as
DOMImplementation and then use the PackageManager to look for a matching
Activity.
Requires a change to webcore.
Bug: 2256744
Partial fix for http://b/issue?id=2232001
We were calling obtainMessage with the node pointer as an argument. What we
really need to do is set arg1 to the node pointer. Also, avoid checking for
saved form data for password fields and fields whose names are blank.
If a touch event was targeted at a ScrollView child, the content would jump after
the user moved her finger by the required threshold. This is inconsistent with
ListView's behavior.
Fixes#2296622.
Fixes#2296601.
WebView and its related APIs are keeping static objects that hold references to
Context instance. This could cause applications to leak their first Activity
and all the associated resources.
This change adds 3 new interfaces for plugins to the framework. This
change also includes extensive cleanup as we consolidate internal plugin
functions into the pluginManager. Also using the new interfaces we no
longer need to pass additional parameters in quite a few methods.
We were previously calling nativeTextInputMotionUp, which was
intended to be faster than nativeMotionUp, which does more work.
However, as discussed in http://b/issue?id=2257787 , I think we
should simply call nativeMotionUp, which does everything the old
method did, while also correcting things if necessary. This fixes
the second problem listed in http://b/issue?id=2266756 , since
nativeMotionUp will recognize that the <select> element should
take the click.
Since I have removed a native method, this requires a change to
external/webkit.