1. AccessibilityInjectorTest changes the key bindings and when done
restores the defatult ones. The restoreation was not working.
bug:4905620
Change-Id: I812bad0b748637ded0ce69ace12517511f62f726
The purpose of ICameraRecordingProxy and ICameraRecordingProxyListener is to
allow applications using the camera during recording.
Camera service allows only one client at a time. Since camcorder application
needs to own the camera to do things like zoom, the media recorder cannot
access the camera directly during recording. So ICameraRecordingProxy is a proxy
of ICamera, which allows the media recorder to start/stop the recording and
release recording frames. ICameraRecordingProxyListener is an interface that
allows the recorder to receive video frames during recording.
ICameraRecordingProxy
startRecording()
stopRecording()
releaseRecordingFrame()
ICameraRecordingProxyListener
dataCallbackTimestamp()
The camcorder app opens the camera and starts the preview. The app passes
ICamera and ICameraRecordingProxy to the media recorder by
MediaRecorder::setCamera(). The recorder uses ICamera to setup the camera in
MediaRecorder::start(). After setup, the recorder disconnects from camera
service. The recorder calls ICameraRecordingProxy::startRecording() and
passes a ICameraRecordingProxyListener to the app. The app connects back to
camera service and starts the recording. The app owns the camera and can do
things like zoom. The media recorder receives the video frames from the
listener and releases them by ICameraRecordingProxy::releaseRecordingFrame.
The recorder calls ICameraRecordingProxy::stopRecording() to stop the
recording.
The call sequences are as follows:
1. The app: Camera.unlock().
2. The app: MediaRecorder.setCamera().
3. Start recording
(1) The app: MediaRecorder.start().
(2) The recorder: ICamera.unlock() and ICamera.disconnect().
(3) The recorder: ICameraRecordingProxy.startRecording().
(4) The app: ICamera.reconnect().
(5) The app: ICamera.startRecording().
4. During recording
(1) The recorder: receive frames from ICameraRecordingProxyListener.dataCallbackTimestamp()
(2) The recorder: release frames by ICameraRecordingProxy.releaseRecordingFrame().
5. Stop recording
(1) The app: MediaRecorder.stop()
(2) The recorder: ICameraRecordingProxy.stopRecording().
(3) The app: ICamera.stopRecording().
bug:2644213
Change-Id: I15269397defc25cbbcae16abc071c8349c123122
1. Added scrolling accessibility event to provicde feedback
when a view is scrolled.
Note: We need scroll events for ICS since even though we have
touch exploration the user does not know when something
is scrollable and not feedback is provided while scrolling.
bug:4902097
2. Added a text selection change event to provide feedback
for selection changes including cursor movement.
Note: We need the text selection change events for ICS since
even though the IME supports navigation in text fields
the user receives no feedback for the current selection/
cursor position.
bug:4586186
3. Added a scrollable property to both AccessibilityEvent and
AccessibilityNodeInfo. The info has to describe the source
in terms of all properties that make sense for accessibility
purposes and the event has this property (kinda duplicated)
since clients will aways want to know if the source is
scrollable to provided clue to the user and we want to avoid
pulling the info of the source for every accessibility event.
Change-Id: I232d6825da78e6a12d52125f51320217e6fadb11
- enable OwnerInfo to appear in status1 if dedicated view not present.
- force all status lines to be singleline and marquee.
- fix justification in landscape layouts.
- use buttonBarStyle for buttons on all LockScreens.
- reduce the size of the clock to fit in landscape.
- no longer show "Draw a pattern to unlock" help message in LockPatternView.
Change-Id: I1ff51550e2180f9d912c8f710ad5e2fd2424d373
The repeatsMonthlyOnDayCount() function was returning true for events
like FREQ=MONTHLY;BYDAY=TU which actually appear weekly. This is not
the desired behavior of the function.
Bug 4522027
Change-Id: I03ef68b429828097c8bad7fcd374e7c9eb4c7b03
After unreverting the linkstate change patch, hook up notification handlers
that didn't exist when the first patch was created, like
EthernetDataTracker.java and Vpn.java.
For the observers that handle interfaceStatusChanged(), I made
interfaceLinkStatusChanged() call it so they both do the same thing.
Change-Id: I0077e5e5f48f3932ba98f5bf363243892f2de6cc
Signed-off-by: Mike J. Chen <mjchen@google.com>
Also clarified comments to indicate that this is only intended to be used
in list queries.
Bug: 4777097
Change-Id: I3c3e08d796755e2613a94a1e9b6dc2961f4483a3
This first patch implements all the APIs.
The APIs wil be made public soon. The data specification
API will be submited in another patchset.
Change-Id: I2462683b7e07380e2c42474b0036b34d03b4bed1
Bug: 4606210
If a WEBKIT_DRAW message came in after the WebView was paused,
it would fail to draw causing it to re-send the WEBKIT_DRAW message
which would lead to an infinite loop until the WebView is resumed.
Fix this by not re-sending the WEBKIT_DRAW message if webview is paused.
Change-Id: I3dd946e4e948cf3fd6af07ba6f7fdac2f967a631
With this, there is no synchronous destroy SurfaceTexture requirement any more.
Revert the previous change which only applies to the sync SurfaceTexture.
Change-Id: Id4790d38a27f2982d0c8ad471bc1107683d27ffc
This reverts commit 1a7e67190228a8ff3b92e7e5496a8db8ff306cca.
Bring back the changes from Stan Chesnutt regarding link-status-change
notifications. The comment from the original patch was:
Propagate new link-status-change message to any NetworkManagementService
observers. Also fix the syntax of the "interface-status-change" message. Add
a null handler in the ThrottleService and Tethering classes (plus fix names).
Change-Id: I42cbed692024de32275cad234f42ff23ab7e9d8d
Signed-off-by: Mike J. Chen <mjchen@google.com>
previous code was comparing to the unconverted CharSequence, so
it's never going to find a match if the string is mixed case
Change-Id: Ifd537d9781b7da1a2328f01b6f2f3229ca7d950b