6511 Commits

Author SHA1 Message Date
Jeff Brown
e9e860762b Merge "Improve input event consistency invariants." 2011-06-28 20:17:59 -07:00
Jeff Brown
8134681b25 Improve input event consistency invariants.
Fixed some issues where inconsistent streams of events could
be generated by the dispatcher, particularly when switching from
hovering with one device to hovering with another.

Fixed a bug where the touch pad would fail to generate a new
HOVER_MOVE following a tap event.  As a result, the hover event
stream would not resume until the user touched the touch pad
again.

Change-Id: I444dce84641fb12e56a0af84c931520771d6c493
2011-06-28 20:10:40 -07:00
Jeff Sharkey
4414cea139 Better network stats parsing, integer tags, async.
Change NMS parsing to handle extended /proc/ stats formats by pairing
values with header keys.  Move TrafficStats to integer tags to match
kernel internals, and offer well-known tags for system services.

Async policy event dispatch from NPMS, and update tests to block for
event dispatch.  Narrow app policy to exclude apps signed with system
key, which are usually critical.

Bug: 4948913, 4903489, 4585280

Change-Id: Idb357227ccaa617906411f309371cea18d7bc519
2011-06-28 17:59:00 -07:00
Isaac Levy
3541ce04dd Ping through default dns & ping settings changes
Changed DnsPinger to use the system default DNS if linkprops doesn't
have a dns.  This mirrors the behavior of the system overall.

Minor changes to wifiWatchdogService settings.

Change-Id: I8de73cf5bd24bc69343c7d9dc999d198195ec0ec
2011-06-28 17:27:07 -07:00
Dianne Hackborn
292f8bc9d1 Plumb information from the framework about asec container size.
Change-Id: Ie0ec3cb6d463aefa341a8cbea80be790451ba5e3
2011-06-28 15:02:44 -07:00
Dianne Hackborn
61b9fae046 Merge "Fix battery history management." 2011-06-28 14:34:51 -07:00
Jeff Brown
3ec7fb4bcf Merge "Hover and stylus API cleanup." 2011-06-28 13:58:44 -07:00
Jamie Gennis
3cf7cf5751 Merge changes I9fb59763,I8b2c6e00
* changes:
  SurfaceTexture: consume buffers after err checks
  SurfaceTexture: change onFrameAvailable behavior
2011-06-28 12:55:03 -07:00
Dianne Hackborn
ae3844527a Fix battery history management.
When rebooting the history time offset was not being handled
correctly, causing garbage data.

Change-Id: Ieca5a72c4c7c374bfe7f8673eed87354af148ef0
2011-06-28 12:34:40 -07:00
satok
7654b20e6c Merge "Fix the visibility of ongoing IME switcher" 2011-06-28 06:38:13 -07:00
satok
b6359414ad Fix the visibility of ongoing IME switcher
Change-Id: Ifbfda4b0a54b9fc6ff36a14d5e493d9272dfed0f
2011-06-28 20:21:56 +09:00
Svetoslav Ganov
b96a41136a Fatal system crash due to NullPointerException
1. Due to thread interleaving it was possible that
   two messages are sent for requesting dispatch of
   the same accessibility event and since the first
   one sends the event and removes it from the pending
   list the second message pulls null during the event
   lookup. Look at the patch's comments for a detailed
   scenario and rationale of the fix.

bug:4886129

Change-Id: If8b272ceaec7709c659ae502c3a730e63c939172
2011-06-28 03:05:10 -07:00
JP Abgrall
82155cfc88 Merge "NetworkStatsService: disabled by default" 2011-06-27 23:45:58 -07:00
JP Abgrall
d94585279f NetworkStatsService: disabled by default
For now, there is still too much breakage around the kernel's new
qtaguid netfilter.
So no netstats up front.

But enable on the device until wiped:

  ./vendor/google/tools/override-gservices secure:netstats_enabled=1
  adb reboot


Bug: 4903513

Change-Id: I230bd2d4efab85cac5c9abaa7d638c94f5e0c7d6
Signed-off-by: JP Abgrall <jpa@google.com>
2011-06-27 22:16:04 -07:00
Jeff Brown
53ca3f13e7 Hover and stylus API cleanup.
Added missing setOnHoverListener method.
Removed BUTTON_STATE_ERASER.

Change-Id: I5d820d0a8e47fe5fd2d88e9fd9fc3fc6ce0dea0d
2011-06-27 21:35:59 -07:00
Irfan Sheriff
ed0afe71f7 Merge "Fixing null pointer b/4962091" 2011-06-27 20:13:09 -07:00
Mathias Agopian
0dd593f223 PermissionCache caches permission checks
This is intended to absorb the cost of the IPC
to the permission controller.
Cached permission checks cost about 3us, while
full blown ones are two orders of magnitude slower.

CAVEAT: PermissionCache can only handle system
permissions safely for now, because the cache is
not purged upon global permission changes.

Change-Id: I8b8a5e71e191e3c01e8f792f253c379190eee62e
2011-06-27 17:42:15 -07:00
Jake Hamby
aa6bd940f0 Don't enable Bluetooth when booting into airplane mode.
When airplane mode is enabled and the phone is rebooted, Bluetooth
should not turn on. Previously the airplane mode setting was ignored
and only the Bluetooth enabled setting was used to determine whether
to enable Bluetooth at boot time. Now, both settings are checked.

Bug: 3404790
Change-Id: I5e3095a94e50825dd469addebef97a7c85041fca
2011-06-27 16:32:37 -07:00
Jamie Gennis
bd5404d031 SurfaceTexture: change onFrameAvailable behavior
This change alters the conditions under which the onFrameAvailable
callback gets called by the C++ SurfaceTexture class.  The new behavior
is to call the callback whenever a frame gets queued that will be
visible to the buffer consumer.  This means that buffers queued in
synchronous mode always trigger the callback, as those buffers will
remain pending until they are consumed.  Buffers queued in asynchronous
mode will only trigger the callback if there was not previously an
unconsumed buffer pending.

The new behavior means that a consumer should perform a draw operation
exactly once for every onFrameAvailable call that it recieves.  This
change also modifies SurfaceFlinger and the SurfaceTexture JNI to
support of the new behavior.

Change-Id: I8b2c6e00961d3d58b11c6af50b555b6e4c5f5b40
2011-06-27 15:45:39 -07:00
Isaac Levy
b1ef292b3d Fixing null pointer b/4962091
Fixing watchdog service bug, adding some extra dump logs.

Change-Id: I03d94a46fade6974f21931803f87fdd065750612
2011-06-27 15:36:21 -07:00
Iliyan Malchev
72d6d650f3 Merge "CameraService: Decouple dequeue and lock" 2011-06-27 14:19:53 -07:00
Wink Saville
bf731e7f90 am 7eff4bb3: am f49e4d3f: Merge "Temporary re-enabling iface name change handling on HO" into honeycomb-LTE
* commit '7eff4bb3f9c0cf0335dd1b2769bcb352b137dbaa':
  Temporary re-enabling iface name change handling on HO
2011-06-27 14:14:45 -07:00
Sundar Raman
ed9bbf27ba CameraService: Decouple dequeue and lock
Decouple lockBuffer from dequeueBuffer. Add lock_buffer to preview_stream_ops,
so HALs will be fully in charge of managing buffers.

Change-Id: I7b53487d618bdf08ba904c5a0f41af462a7ca773
Signed-off-by: Iliyan Malchev <malchev@google.com>
2011-06-27 13:48:50 -07:00
Mike J. Chen
04b9cafb32 Merge changes I0077e5e5,I42cbed69
* changes:
  Hookup interface status to other clients
  Revert "Revert "Propagate new link-status-change message to any NetworkManagementService""
2011-06-27 12:56:47 -07:00
Svetoslav Ganov
cf15bb6197 Merge "ArrayIndexOutOfBounds exception in TouchExplorer." 2011-06-27 12:07:27 -07:00
Svetoslav Ganov
51cccf0845 ArrayIndexOutOfBounds exception in TouchExplorer.
1. The explorer was injecting up/down touch events to
   click with the id of the last pointer that went up
   but the prototype i.e. last touch explore event may
   not contain this pointer. Since we click on the last
   touch explored location then using the action pointer
   index of that event is the right approach.

bug:4551506

Change-Id: I73428b09dc014417096a52e667f58768a2871dc8
2011-06-27 12:06:17 -07:00
Svetoslav Ganov
46bdc1ebbc Merge "Added scroll and text selection change accessibility events." 2011-06-27 11:41:25 -07:00
Wu-cheng Li
42419ce28a Add framework support for camcorder zoom.
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
2011-06-27 15:44:57 +08:00
Svetoslav Ganov
a0156177cd Added scroll and text selection change accessibility events.
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
2011-06-26 21:35:22 -07:00
Irfan Sheriff
dde052f4ba Merge "WifiWatchdogService - disable bad connections" 2011-06-25 11:20:54 -07:00
Robert Greenwalt
86994c1fc1 resolved conflicts for merge of 40717996 to master
Change-Id: Ie5c0f1f20c313d6c568b3b06f778f75223914ada
2011-06-24 16:10:06 -07:00
Isaac Levy
bc7dfb58bf WifiWatchdogService - disable bad connections
Complete rewrite of WifiWatchdogService.java.  Checking for connectivity and managing wifi upon failure detection.

Change-Id: Ifcb8b5d7e0112cbc2f2282d76fdc93ea15527a44
2011-06-24 15:48:10 -07:00
Mike J. Chen
f59c7d0f2a Hookup interface status to other clients
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>
2011-06-24 15:02:30 -07:00
Dianne Hackborn
06ca9b90e6 am fa5e3b65: am 2dafe771: Merge "DO NOT MERGE. Fix density compat mode." into honeycomb-mr2
* commit 'fa5e3b658f3f42eabec82c9f8e44d8a4cc565249':
  DO NOT MERGE.  Fix density compat mode.
2011-06-24 12:43:44 -07:00
Dianne Hackborn
fa5e3b658f am 2dafe771: Merge "DO NOT MERGE. Fix density compat mode." into honeycomb-mr2
* commit '2dafe771bb7ad4b15db6b740fd3ccb8f0fae836d':
  DO NOT MERGE.  Fix density compat mode.
2011-06-24 12:26:17 -07:00
Mike J. Chen
6143f5f739 Revert "Revert "Propagate new link-status-change message to any NetworkManagementService""
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>
2011-06-23 19:24:59 -07:00
Wink Saville
7eff4bb3f9 am f49e4d3f: Merge "Temporary re-enabling iface name change handling on HO" into honeycomb-LTE
* commit 'f49e4d3f182071081537dba3387db20cae27c427':
  Temporary re-enabling iface name change handling on HO
2011-06-23 18:25:38 -07:00
JP Abgrall
40e44467e2 Merge "NetworkStatsService: check kernel bandwidth support before enabling" 2011-06-23 15:06:55 -07:00
Kazuhiro Ondo
1ccb10e25d Temporary re-enabling iface name change handling on HO
Temporary accept interface name change in ConnectivityService.
See bug/4455071.

Bug: 4903011
Change-Id: I7f06c2ca83535b981f047cb671e08550aed7df1a
2011-06-23 14:58:50 -07:00
JP Abgrall
b851cc23c8 NetworkStatsService: check kernel bandwidth support before enabling
And catch the actual errors reported by the other side of NetworkManager.


Change-Id: I9a9393b659d6f896ee1bf40a8deaca7853ef8f94
Signed-off-by: JP Abgrall <jpa@google.com>
2011-06-23 14:13:28 -07:00
Dianne Hackborn
83e0bc18e0 DO NOT MERGE. Fix density compat mode.
Fix issue #4770360: older app compatibility mode is really tiny on ICS phones

We were applying the density compat mode scaling multiple times to
display metrics, causing bad values.

Change-Id: Iafafd9a5e94b9d774cd2715bf968e91602a1bd82
2011-06-23 12:29:03 -07:00
Dianne Hackborn
58b8684177 Merge "Fix issue #4770360: older app compatibility mode is really tiny on ICS phones" 2011-06-23 12:13:06 -07:00
Adam Powell
3187632e0a Fix bug 4904520 - Swap force close/report buttons
Make the force close dialogs consistent with both the new rules for
wizardy-button bar UI flows and the previous arrangement that people
are used to. Force close = negative/back/cancel, Report =
positive/next/ok.

Change-Id: I212ba172f8076238a1833100b025b6e25a538a65
2011-06-23 12:02:27 -07:00
Dianne Hackborn
2b31d53161 Fix issue #4770360: older app compatibility mode is really tiny on ICS phones
We were applying the density compat mode scaling multiple times to
display metrics, causing bad values.

Change-Id: Iafafd9a5e94b9d774cd2715bf968e91602a1bd82
2011-06-23 12:00:54 -07:00
Robert Greenwalt
0e0a759734 am 1d6ffd73: Merge "Restrict access to protected networks." into honeycomb-LTE
* commit '1d6ffd7339c3dfa53de19e27ca09e57233cc25ef':
  Restrict access to protected networks.
2011-06-23 08:19:48 -07:00
Eric Laurent
e2ac799dfc Merge "Added audio_bytes_per_sample() helper function" 2011-06-23 08:08:20 -07:00
Jeff Sharkey
ea5f51909b Merge "Enable bandwidth module from stats service." 2011-06-22 22:21:31 -07:00
Jeff Sharkey
0a9ee1272b Enable bandwidth module from stats service.
During systemReady(), tell netd to enable bandwidth tracking module,
which is used to provide detailed stats and controls.

Change-Id: Iecfd8b17a3b90f5a817d731fbe1c71777681ed6e
2011-06-22 21:44:12 -07:00
Conley Owens
1c5d9dec7b am 587e9563: am c1b62e3b: am bf5adfa5: Merge "Check if we are in daylight time when calculating timezone"
* commit '587e9563d61beaaa67090eddd99b737847561eb9':
  Check if we are in daylight time when calculating timezone
2011-06-22 17:37:19 -07:00
Robert Greenwalt
50393202f3 Restrict access to protected networks.
Some networks should only be brought up and controlled by system apps.

bug: 4585677
Change-Id: I61b1ee3dcfca0ee54387cecffe5198a0b010d98b
2011-06-22 16:35:12 -07:00