691 Commits

Author SHA1 Message Date
Dianne Hackborn
1f377298e2 am 58e0eefe: Improve power tracking of WIFI use.
Merge commit '58e0eefeb5e2e270e2b04369bbf29fc22abda8d5' into gingerbread-plus-aosp

* commit '58e0eefeb5e2e270e2b04369bbf29fc22abda8d5':
  Improve power tracking of WIFI use.
2010-09-17 15:20:10 -07:00
Dianne Hackborn
58e0eefeb5 Improve power tracking of WIFI use.
We now distribute "wifi started" time across all apps that are
holding WIFI locks that cause it to be started.  But only when
WIFI would not normally be running.  Also have a mechanism to
distribute other WIFI work that has happened across those processes
based on their use.

Also fixed a bug where we were not retaining the CPU speed step
stats across boots...!

Change-Id: I00e3153b98429166273750512cc37e7975211ab9
2010-09-17 15:14:57 -07:00
Joe Onorato
d35186ce18 am 7747795a: Merge "These are not javadoc tags, they are annotations in sample code. Escape them properly." into gingerbread
Merge commit '7747795af508354b3792e497e6a7b4bc749b4007' into gingerbread-plus-aosp

* commit '7747795af508354b3792e497e6a7b4bc749b4007':
  These are not javadoc tags, they are annotations in sample code. Escape them properly.
2010-09-16 09:27:42 -07:00
Joe Onorato
0d903bcd78 These are not javadoc tags, they are annotations in sample code. Escape them properly.
Change-Id: Ic3b9f2738a1f8ae8aa6a2a278f1d4ba3a7727b51
2010-09-16 11:55:35 -04:00
Dianne Hackborn
53686433a9 am 7e9f4eb2: Track client requests through location manager.
Merge commit '7e9f4eb2608148436cef36c9969bf8a599b39e72' into gingerbread-plus-aosp

* commit '7e9f4eb2608148436cef36c9969bf8a599b39e72':
  Track client requests through location manager.
2010-09-13 14:34:22 -07:00
Dianne Hackborn
7e9f4eb260 Track client requests through location manager.
This fixes a problem where applications could ask the location
manager to do very heavy-weight things (like...  say... update
location every minute), which would get accounted against the
system instead of the application because ultimately it is the
system making the heavy calls (wake locks, etc).

To solve this, we introduce a new class WorkSource representing
the source of some work.  Wake locks and Wifi locks allow you
to set the source to use (but only if you are system code and thus
can get the permission to do so), which is what will be reported
to the battery stats until the actual caller.

For the initial implementation, the location manager keeps track
of all clients requesting periodic updates, and tells its providers
about them as a WorkSource param when setting their min update time.
The network location provider uses this to set the source on the
wake and wifi locks it acquires, when doing work because of the
update period.

This should also be used elsewhere, such as in the GPS provider,
but this is a good start.

Change-Id: I2b6ffafad9e90ecf15d7c502e2db675fd52ae3cf
2010-09-13 14:20:48 -07:00
Jeff Brown
fb8116f736 am c891d2b3: Merge "Fix PointerLocationView when pointer ids are not zero-based." into gingerbread
Merge commit 'c891d2b3529b9cf24ef4781a585cd4784815e711' into gingerbread-plus-aosp

* commit 'c891d2b3529b9cf24ef4781a585cd4784815e711':
  Fix PointerLocationView when pointer ids are not zero-based.
2010-09-12 20:47:50 -07:00
Jeff Brown
d1e0c371a6 Fix PointerLocationView when pointer ids are not zero-based.
Since we support using driver-provided pointer ids (ABS_MT_TRACKING_ID)
there is no guarantee that pointer ids will necessarily start from 0
or be contiguous.

Change-Id: I9609b7a3bb238d7edbcbd68cc839dd6d14baf9df
2010-09-12 20:40:51 -07:00
Kenny Root
1361a5bd1e am 07a9e8d3: Merge changes Ie3648509,I53db73c3 into gingerbread
Merge commit '07a9e8d39f818e54f0feccff10c99b9629007a64' into gingerbread-plus-aosp

* commit '07a9e8d39f818e54f0feccff10c99b9629007a64':
  Move native library removal function to helper
  Initialize native library path in PackageSetting
2010-09-12 18:02:47 -07:00
Kenny Root
8f7cc02c7c Move native library removal function to helper
Moves the remoteNativeLibrariesLI call to NativeLibraryHelper to prepare
for being able to symlink the /data/data/<package>/lib dir to the ASEC
container.

Change-Id: Ie3648509c6b6293a8d9bdd815610ab408df5047f
2010-09-12 09:04:56 -07:00
Dianne Hackborn
8615fdc151 am 506d724c: Merge "DO NOT MERGE. I like\'d ctate\'s change so much I\'m doin it myself!" into gingerbread
Merge commit '506d724cc356a7ba73995ef2929c65062277c83d' into gingerbread-plus-aosp

* commit '506d724cc356a7ba73995ef2929c65062277c83d':
  DO NOT MERGE.  I like'd ctate's change so much I'm doin it myself!
2010-09-09 23:14:46 -07:00
Dianne Hackborn
618b8c1e98 DO NOT MERGE. I like'd ctate's change so much I'm doin it myself!
Change-Id: If571d3ff5e73252a0653c30ec40178ec1591ddd9
2010-09-09 23:10:38 -07:00
Dianne Hackborn
195dc210cb am a4ce31f5: Merge "Small fixes to battery stats." into gingerbread
Merge commit 'a4ce31f5e080eae6c97e6f37040db0c7f0fc78f2' into gingerbread-plus-aosp

* commit 'a4ce31f5e080eae6c97e6f37040db0c7f0fc78f2':
  Small fixes to battery stats.
2010-09-09 21:34:33 -07:00
Dianne Hackborn
a4ce31f5e0 Merge "Small fixes to battery stats." into gingerbread 2010-09-09 21:30:52 -07:00
Dianne Hackborn
b8071d790a Small fixes to battery stats.
Change-Id: Ibbf7c548a8e787a046de3659094cea64908e3deb
2010-09-09 16:45:15 -07:00
Mathias Agopian
3fa7d8af65 am 9bfb060a: Merge "Force wallpaper surface to 565." into gingerbread
Merge commit '9bfb060ac4e30c82ec2c269b78cc758a6cb5daf8' into gingerbread-plus-aosp

* commit '9bfb060ac4e30c82ec2c269b78cc758a6cb5daf8':
  Force wallpaper surface to 565.
2010-09-08 16:46:46 -07:00
Mathias Agopian
9bfb060ac4 Merge "Force wallpaper surface to 565." into gingerbread 2010-09-08 16:43:42 -07:00
Mathias Agopian
62bf4a0283 Force wallpaper surface to 565.
This is to maintain backward compatibility with badly programmed
GL wallpapers. Wallpapers can call SurfaceHolder.setFormat() to
request a different format.

Change-Id: Ib42b0cf6c7040d1300cad239c3acfd5c4c6cd326
2010-09-08 16:32:27 -07:00
Dianne Hackborn
5fdacb8a28 am ee455f5a: Merge "People holding partial wake locks now get blamed for CPU usage." into gingerbread
Merge commit 'ee455f5a9572bc0d23c3328f6c22da91dc109a50' into gingerbread-plus-aosp

* commit 'ee455f5a9572bc0d23c3328f6c22da91dc109a50':
  People holding partial wake locks now get blamed for CPU usage.
2010-09-08 14:34:41 -07:00
Dianne Hackborn
0d903a84d0 People holding partial wake locks now get blamed for CPU usage.
For the duration of the wake lock, 50% of all CPU usage is now
accounted against the app(s) holding partial wake locks, evenly
distributed between them.  This is only while the device is on
battery and screen off.

Change-Id: I3e5c978b792b6ef17bf8540705bfe8343dadd464
2010-09-08 12:41:24 -07:00
Dianne Hackborn
75f0024cf4 am 6e86915e: Merge "Fixes to battery stats debug output." into gingerbread
Merge commit '6e86915e8f5dfffa60ae5d1a4ca9aa74912fd026' into gingerbread-plus-aosp

* commit '6e86915e8f5dfffa60ae5d1a4ca9aa74912fd026':
  Fixes to battery stats debug output.
2010-09-07 14:15:17 -07:00
Dianne Hackborn
b5e3165129 Fixes to battery stats debug output.
Change-Id: I32e7cad9633b8c517a74573069e426d9f835a83d
2010-09-07 14:09:36 -07:00
Brian Carlstrom
41e9953863 am 17510863: New Java-based SamplingProfiler
Merge commit '1751086360056bc60d00f2ed2988bc82be9e7bd9' into gingerbread-plus-aosp

* commit '1751086360056bc60d00f2ed2988bc82be9e7bd9':
  New Java-based SamplingProfiler
2010-09-01 10:44:56 -07:00
Brian Carlstrom
1751086360 New Java-based SamplingProfiler
Summary:
- libcore: new Java based SamplingProfiler
- dalvik: remove old SamplingProfiler native bits
- frameworks/base: New placeholder SamplingProfilerIntegration
- vendor/google: remove old profiler snapshot parsing code

Details:

libcore

   A new 100% Java SamplingProfiler. While it has more overhead that
   the old native one, the new one can actually collect more than the
   current PC and frame pointer, so you can get useful context of
   where your app is spending time. It currently provides ASCII hprof
   format output for use with tools like PerfAnal
	dalvik/src/main/java/dalvik/system/SamplingProfiler.java

    Unit test for the new SamplingProfiler
	dalvik/src/test/java/dalvik/system/SamplingProfilerTest.java

    Add core-tests-dalvik
	JavaLibrary.mk

dalvik

    Removing native code that supported the old SamplingProfiler
	vm/Dvm.mk
	vm/native/InternalNative.c
	vm/native/dalvik_system_SamplingProfiler.c

frameworks/base

  Placeholder SamplingProfilerIntegration. Later plans include
  generating EventStackTrace protobufs.

    New SamplingProfiler does not have a global instance, so
    SamplingProfilerIntegration provides one in INSTANCE. Old binary
    snapshot format is temporily replaced with ASCII hprof data.
	core/java/com/android/internal/os/SamplingProfilerIntegration.java

    Simplified interface for zygote profile snapshotting
	core/java/com/android/internal/os/ZygoteInit.java

    Current SamplingProfilerIntegration does not track event loop
    explicitly, but hprof information does include thread information.
	core/java/android/app/ActivityThread.java

vendor/google

    Removing code for parsing old SamplingProfiler snapshot format
	tools/samplingprofiler/Android.mk
	tools/samplingprofiler/NOTICE
	tools/samplingprofiler/profiler.iml
	tools/samplingprofiler/profiler.ipr
	tools/samplingprofiler/pull-snapshots.sh
	tools/samplingprofiler/sorttable.js
	tools/samplingprofiler/src/com/android/profiler/PrintHtml.java
2010-09-01 10:17:25 -07:00
Jeff Brown
36f0cb26cb am 8d60866e: Input device calibration and capabilities.
Merge commit '8d60866e2100db70ecf0502c14768a384514d7e9' into gingerbread-plus-aosp

* commit '8d60866e2100db70ecf0502c14768a384514d7e9':
  Input device calibration and capabilities.
2010-08-30 18:22:32 -07:00
Jeff Brown
8d60866e21 Input device calibration and capabilities.
Finished the input device capability API.
Added a mechanism for calibrating touch devices to obtain more
accurate information about the touch contact area.
Improved pointer location to show new coordinates and capabilities.
Optimized pointer location display and formatting to avoid allocating large
numbers of temporary objects.  The GC churn was causing the application to
stutter very badly when more than a couple of fingers were down).
Added more diagnostics.

Change-Id: Ie25380278ed6f16c5b04cd9df848015850383498
2010-08-30 18:16:43 -07:00
Kenny Root
8328578152 am 7046bd92: Merge "Allow native shared libraries in ASEC containers" into gingerbread
Merge commit '7046bd924f77c54585b9e0e0c95e5edd2ceb55a3' into gingerbread-plus-aosp

* commit '7046bd924f77c54585b9e0e0c95e5edd2ceb55a3':
  Allow native shared libraries in ASEC containers
2010-08-27 16:45:45 -07:00
Kenny Root
85387d7ba3 Allow native shared libraries in ASEC containers
This change moves the native library handling earlier in the package
installation process so that it may be inserted into ASEC containers
before they are finalized in the DefaultContainerService.

Note that native libraries on SD card requires that vold mount ASEC
containers without the "noexec" flag on the mount point.

Change-Id: Ib34b1886bf6f94b99bb7b3781db6e9b5a58807ba
2010-08-27 16:40:06 -07:00
Amith Yamasani
4b4114d155 am a90b7f01: Add methods to InputConnection: setComposingRegion() to select a region of text for correction, and getSelectedText() to return the selected text.
Merge commit 'a90b7f0125389b9e1040d2be82aad4ef74ea6071' into gingerbread-plus-aosp

* commit 'a90b7f0125389b9e1040d2be82aad4ef74ea6071':
  Add methods to InputConnection: setComposingRegion() to select a region of text for correction, and getSelectedText()
2010-08-26 14:57:31 -07:00
Amith Yamasani
a90b7f0125 Add methods to InputConnection: setComposingRegion() to select a region of text for correction, and getSelectedText()
to return the selected text.

setComposingRegion:

The TextView may choose to highlight the text in some way (underline for now) to indicate
that the text is selected for correction, if the IME wants to provider alternatives.

Choosing an alternative in the IME can then call IC.commitText() to replace the highlighted
(not selected) text with a different candidate.

This change also ensures that any existing spans/styles are not wiped out. So we can now
correct rich text as well.

getSelectedText:

This is a convenience to get the selected text instead of using extracted text that is
more heavy weight. Existing getTextBeforeCursor() and getTextAfterCursor() fail to
retrieve the selected text, only what's before and after the selection.

Change-Id: Ieb5ecd5ff947ea04958589f501e7bd5228e00fb5
2010-08-26 14:53:39 -07:00
Brad Fitzpatrick
0b7b980761 am d132892a: Merge "Don\'t touch the VFS during window relayout." into gingerbread
Merge commit 'd132892a75532557bb18af14eab6081704b7fa6d' into gingerbread-plus-aosp

* commit 'd132892a75532557bb18af14eab6081704b7fa6d':
  Don't touch the VFS during window relayout.
2010-08-23 23:37:17 -07:00
Brad Fitzpatrick
9088100518 Don't touch the VFS during window relayout.
yaffs2 is single-threaded and any disk access during window drawing
(or animation in this case) can cause UI stutters / unresponsiveness
for hundreds of milliseconds.

BUG=2941119

Change-Id: Ifdce8337027ab25d1ea844934fa787ffe68263c4
2010-08-23 18:30:08 -07:00
Jean-Baptiste Queru
026231284c resolved conflicts for merge of 1ffd753e to gingerbread-plus-aosp
Change-Id: I2741766c359bed3040fa3b787d72483eb028fb6d
2010-08-23 14:20:47 -07:00
Dianne Hackborn
a3ece8bde3 am 32519259: Merge "Fix a few small battery stats problems:" into gingerbread
Merge commit '325192593b057f4360e1abddf490b4fae7d60b12' into gingerbread-plus-aosp

* commit '325192593b057f4360e1abddf490b4fae7d60b12':
  Fix a few small battery stats problems:
2010-08-20 14:13:22 -07:00
Dianne Hackborn
99d0452ddc Fix a few small battery stats problems:
- Actually aggregate discharge amounts.
- Actually print the unplugged battery info when currently plugged in.

Change-Id: I22dd6feb73ac1364eb169d3239ce403b0755bb6c
2010-08-20 13:43:00 -07:00
Mathias Jeppsson
8534a8e438 Crash when powering off.
Fixing a race condition. If "confirm" is true and the shutdown
dialog is shown it may take some time before the user presses the
ok button. During this time a new call to shutdown may be made with
confirm=false. When this happens the shutdown thread is started by
the second call, and later when the users presses the ok button. This
results in ShutdownThread.beginShutdownSequence() being called
twice. I.e., the beginShutdownSequence lacks the proper protection
for this error case.

Change-Id: Ib9b01c5a43f4dc23de09057f3fc1507000317faf
2010-08-17 13:33:09 +02:00
Dianne Hackborn
2e47052fc4 am 567722ee: Merge "Fix problems with determining when to kill apps for wake usage." into gingerbread
Merge commit '567722eee190f7cf88dc7ea95167db76d5514842' into gingerbread-plus-aosp

* commit '567722eee190f7cf88dc7ea95167db76d5514842':
  Fix problems with determining when to kill apps for wake usage.
2010-08-15 17:34:49 -07:00
Dianne Hackborn
1ebccf531d Fix problems with determining when to kill apps for wake usage.
Also improve debug printing of various times.

Change-Id: Ifcc288fd1bcbf44c069875ba97925b9e7ffe9a48
2010-08-15 17:27:29 -07:00
Dianne Hackborn
66b0343e9e am a8d9291d: Merge "Various battery info things:" into gingerbread
Merge commit 'a8d9291d7f93d1aa0d24d71d65c7de2894812177' into gingerbread-plus-aosp

* commit 'a8d9291d7f93d1aa0d24d71d65c7de2894812177':
  Various battery info things:
2010-08-13 16:00:44 -07:00
Dianne Hackborn
9adb9c3b10 Various battery info things:
- Now track wake locks in battery history.
- Now track sensors in battery history.
- Some filtering of sensory data.
- Fixes to some data that wasn't cleared when resetting battery stats.
- Print amount discharged since last charge.

And the big part -- keep track of wake locks held per process,
and kill processes that hold wake locks too much while they are in
the background.  This includes information in the battery stats
about the process being killed, which will be available to the
developer if the app is reported.

Change-Id: I97202e94d00aafe0526ba2db74a03212e7539c54
2010-08-13 15:17:49 -07:00
Kenny Root
f5ee5358c1 am ac9717ab: Merge "Move OBB file reading to DefaultContainerService" into gingerbread
Merge commit 'ac9717ab73afe0123b6dbb63c4dd2fc88143e53e' into gingerbread-plus-aosp

* commit 'ac9717ab73afe0123b6dbb63c4dd2fc88143e53e':
  Move OBB file reading to DefaultContainerService
2010-08-11 14:10:18 -07:00
Kenny Root
a02b8b05dd Move OBB file reading to DefaultContainerService
The system_server shouldn't touch files on the SD card. This change
moves the things that touch the SD card out to the
DefaultContainerService so that it will get killed if the SD card goes
away instead of the system_server.

Change-Id: I0aefa085be4b194768527195532ee6dddc801cfc
2010-08-11 11:20:53 -07:00
Dianne Hackborn
679ac09a5c am a5ae50cd: Merge "More native work." into gingerbread
Merge commit 'a5ae50cd838b5725c63ed485292aae4edd1a98cb' into gingerbread-plus-aosp

* commit 'a5ae50cd838b5725c63ed485292aae4edd1a98cb':
  More native work.
2010-08-11 00:47:51 -07:00
Dianne Hackborn
08d5b8fad8 More native work.
Implement save/restore of state, and add native APIs for
configuration information.

Change-Id: I2a3ddc2ba605db58d7c8b2b31b9215fb323f90b5
2010-08-11 00:29:59 -07:00
Brian Carlstrom
1b7e4d5adc am 4ae1e382: Merge "Tracking merge of dalvik-dev to gingerbread" into gingerbread
Merge commit '4ae1e382f4b6c5bb9e757f35f82ad48dc02c32af' into gingerbread-plus-aosp

* commit '4ae1e382f4b6c5bb9e757f35f82ad48dc02c32af':
  Tracking merge of dalvik-dev to gingerbread
2010-08-05 10:40:45 -07:00
Brian Carlstrom
3c7c351a62 Tracking merge of dalvik-dev to gingerbread
git cherry-pick --no-commit f77cf7f0
git cherry-pick --no-commit c8f503b5285e30c1a881d0ba860ba9021f57d113
git cherry-pick --no-commit 570bb561
git cherry-pick --no-commit e2417541
git cherry-pick --no-commit e4d81f25bd4dc1a5c909b56ab56a56406290da30
git cherry-pick --no-commit 5e8a587d

Change-Id: I101a385d43f3e0f4ce5352217f92ef67a3908c88
2010-08-04 23:47:38 -07:00
Chris Tate
9f6b16a29b am 5d46ce24: Merge "Enhanced VelocityTracker for > 5 pointers and fixed bugs." into gingerbread
Merge commit '5d46ce24cc46dc57d31f809302af916999114ced' into gingerbread-plus-aosp

* commit '5d46ce24cc46dc57d31f809302af916999114ced':
  Enhanced VelocityTracker for > 5 pointers and fixed bugs.
2010-08-03 12:25:29 -07:00
Jeff Brown
9e2ad36be8 Enhanced VelocityTracker for > 5 pointers and fixed bugs.
Improved PointerLocation tool to use VelocityTracker more efficiently
and correctly when multiple pointers are down.

Fixed a bug in TouchInputMapper where it was not correctly copying
the id to index map in the last touch data.  This could cause strange
behavior on secondary pointer up events.

Also added finished callback pooling in InputQueue.

Change-Id: Ia85e52ac2fb7350960ea1d7edfbe81a1b3e8267b
2010-07-30 20:08:29 -07:00
Romain Guy
ff74e22b59 am ce3ac5f0: Merge "Corrected buffer overflow when parsing /proc/wakelocks"
Merge commit 'ce3ac5f02970fcab91e16ecb573931d209b1985c' into gingerbread-plus-aosp

* commit 'ce3ac5f02970fcab91e16ecb573931d209b1985c':
  Corrected buffer overflow when parsing /proc/wakelocks
2010-07-29 14:32:34 -07:00
Romain Guy
ce3ac5f029 Merge "Corrected buffer overflow when parsing /proc/wakelocks" 2010-07-29 14:00:48 -07:00