This CL adds the monitoring logic that was removed from the Browser
in a companion CL. This allows applications other than the Browser
to use special features offered by YouTube and plugins. Additionally,
the pluginManager was refactored to prevent code duplication between
the manager and WebView.
Change-Id: Ie37f248c8edd9d06ae1fd6675dd5f06f04774b09
http://b/2834603
This reverts commit 6083d81ce4d67ec632962270fda64ebb9db0d5b1.
Reverting this because it causes runtime to reboot in a loop
if connected to a Bluetooth Headset.
copyFrom() needs to check for the introduced bit too.
Because the standard Looper.loop code calls Message#recycle it is
imperative that Handler#handleMessage code not attempt to resue
a message it receives. If allowed to do so it will cause bugs that
could be difficult to diagnois.
This change adds Message#flags and uses one bit to reliably detect
a message is in use and throws an error in MessageQueue#enqueueMessage.
This allows early detection of this bug.
Note: This is not new functionality, but the current implementation does
not detect messages that are in use because it uses Message#when != 0
as the detection mechanism. The problem is that a Message#when value of 0
is valid value used to place a message at the front of the queue and is
thus unreliable.
Another option is to change the setting of Message#when in Message#enqueueMessage
so that it is never 0, although that does change subtly a publicly accessible
field.
Yet another option would be to use other fields but all candidates have
similar problems as when in that they are publicly accessible or even
settable such as Message#target.
Change-Id: I2df600537700a3fe206678f38bcae7329751c4e5
Merge commit 'bbe5fb2b73172a6b42b3406354a3556bd53916e1'
* commit 'bbe5fb2b73172a6b42b3406354a3556bd53916e1':
Fix for a Resource system bug that displayed the wrong name for missing asset.
Merge commit '1f4421048206ca1745ddd6366588759c9c5c38f9'
* commit '1f4421048206ca1745ddd6366588759c9c5c38f9':
Improve orientation sensing when waking up while flat.
- DialogFragment now has an option to not show a dialog, so you can
use your UI somewhere else.
- Deprecated show() versions that were tied to activities.
- Added documentation to DialogFragment class.
- Added documentation to onSaveInstanceState() to explain how the
time it is called is different than Activity's version.
- Fixed some java doc warnings.
Change-Id: If026744c368e2443030d2d9e0a9c808d820857df
Use the layout xml attribute splitMotionEvents="true" or the ViewGroup
method setMotionEventSplittingEnabled(true) to enable motion event
splitting. Rules for splitting are as follows:
* Splitting is enabled per ViewGroup. When splitting is enabled any
MotionEvent dispatched to that ViewGroup can potentially be split
into several and dispatched to children independently.
* Each pointer is assigned a target child view when the ACTION_DOWN or
ACTION_POINTER_DOWN event is received. That will be the pointer's
target until it goes up, the target returns false from onTouchEvent,
or the MotionEvents are intercepted.
* Multiple pointers may be assigned to the same target. All pointer
data sent to a target are bundled into a single MotionEvent. Child
views do not need to be aware that splitting has occurred.
Change-Id: I993f838e2f6b455da9812f4742a016dfcd1c4cc9
Merge commit '97a56269d06770712f9da7a2a29385012ec9714e' into gingerbread-plus-aosp
* commit '97a56269d06770712f9da7a2a29385012ec9714e':
Add camera fps range API.
Original preview frame rate API assumes the frame rate
is fixed. It does not not work with auto frame rate camera.
Change-Id: I38f7122ac8ec844ffd63558dc0763ffa17b0926a
This is needed for https://android-git.corp.google.com/g/#change,62114.
inputStreamForAndroidResource returns an InputStream for a given url
readFromStream is a static method that just reads from a given stream, and catches any exceptions
Change-Id: I4f744bfe851c6d13e16c8eb7f89981cf306d175c
Merge commit '581f78615a9dc65ee264b3619ef6cdd0b0e8355c' into gingerbread-plus-aosp
* commit '581f78615a9dc65ee264b3619ef6cdd0b0e8355c':
DO NOT MERGE Refactor find and select dialogs
(Merged by hand from master, based on
https://android-git.corp.google.com/g/#change,53490 )
In WebView:
- Remove the select mode, so that while text is selected,
the view may respond to scroll or zoom gestures.
- Remove the getFindIsUp() method -- let the host application
track if the dialog is visible.
- Map long press to select text if the host application does
not already intercept it.
- Draw find 'extras' during zoom animation.
- Draw select 'extras' during animation and scrolling as well.
- Distinguish between selecting text and pressing a shift key
(the shift key is still a possible select text shortcut)
- Add more public (but hidden) interfaces: setUpSelect, selectAll, etc.
In WebChromeClient, add interfaces to allow WebView to tell the host
application that selection has started or finished. A long press on
a part of the view that does not trigger a host context menu may
start the selection (if text is underneath the press), and clicking
the trackball or tapping away from the current selection may
end the selection.
Companion changes in external/webkit and packages/apps/Browser
Change-Id: I2d41662acbdb8bdaa8219b35f18a9276e34636a7
http://b/262451
Merge commit 'd018a0ce72124f668d859b19fe3e73f5637d3c7c' into gingerbread-plus-aosp
* commit 'd018a0ce72124f668d859b19fe3e73f5637d3c7c':
Text selection without trackball.