4910 Commits

Author SHA1 Message Date
Johannes Carlsson
73fef3c7c0 am b5a8654d: Clear reference to the IIntentReceiver in order to avoid memory leak
* commit 'b5a8654dea9ea8443b41f8ff3668ae4074e13a07':
  Clear reference to the IIntentReceiver in order to avoid memory leak
2011-01-05 19:13:29 -08:00
Johannes Carlsson
b5a8654dea Clear reference to the IIntentReceiver in order to avoid memory leak
When using sendOrderedBroadcast(..) with a BroadcastReceiver the
BroadcastReceiver instance was not released. The reason for this was that
the resultTo field in the BroadcastRecord kept a reference until it was pushed
out of the mBroadcastHistory. This reference in turn kept a reference to the
process side IIntentReceiver (implemented in ReceiverDispatcher$InnerReceiver).
This in turn had a strong reference (through mStrongRef) to the Context.

In order to keep the debug output the resultTo is also kept as a String in the
new resultToString variable.

Change-Id: I4382a22a541c27b3694fb2b78a04ee820b235f8f
2011-01-05 18:59:07 -08:00
Dianne Hackborn
4302886f8f am c91f9fe5: Merge "Avoiding cyclic references when unbinding from a service" into gingerbread
* commit 'c91f9fe542fd1ca9d6da432faeba60d35c4d5c49':
  Avoiding cyclic references when unbinding from a service
2011-01-05 18:55:57 -08:00
Stan Chesnutt
3d1db8672a Allow bumpDns() to execute correctly before boot has completed
Change-Id: I5c2cf023e555f49d7e29592f9d1439b3ac367e3d
2011-01-05 17:14:03 -08:00
Mattias Petersson
3996b41610 Avoiding cyclic references when unbinding from a service
Cyclic references can occur between a Service object held by an
application and a ServiceRecord object held by the system server.
A part of the problem is that binders are leaked and since many binders
are implemented by inner classes of services these services are also leaked.
This causes low memory problems. The solution is: When a Service is beeing
destroyed, go through the ServiceRecord's all IntentBindRecord and set its
binder references to null. This allows the binder and the service object to
be garbage collected.

Change-Id: I5a257521964851f34c08ffb3908feaad96b1bafe
2011-01-05 15:34:11 -08:00
Jeff Brown
e0f9552cc1 Merge "Only allow touch events from one device at a time." 2011-01-05 13:44:05 -08:00
Jason parks
ac1325bcd3 Merge "Add decryption support to MountService." 2011-01-05 11:56:42 -08:00
Jason parks
5af0b916f8 Add decryption support to MountService.
* Implement the decryptStorage() method on the Mount Service.
  This method makes the calls into vold to decrypt the encrypted
  volumes and mount them.

Change-Id: I4f6e07a111cf0b36611d590debf9f6579c5ac5f7
2011-01-05 12:32:49 -06:00
Jeff Brown
9571285066 Only allow touch events from one device at a time.
Reject movements from other devices when one device is already down.
This fixes jittery behavior when the user moves the mouse and touches
the screen at the same time.

Change-Id: I99151c8f2596a3139720f776bcbc559d4b314878
2011-01-04 19:41:59 -08:00
Jeff Brown
b4ff35df5c Mouse pointer integration.
Added support for loading the pointer icon from a resource.

Moved the system server related bits of the input manager out
of libui and into libinput since they do not need to be linked into
applications.

Change-Id: Iec11e0725b3add2b905c51f8ea2c3b4b0d1a2d67
2011-01-04 17:31:24 -08:00
Dianne Hackborn
6d978d6d2e Merge "Few little fragment, wm tweaks." 2011-01-04 11:40:14 -08:00
Dianne Hackborn
352cc98b46 Few little fragment, wm tweaks.
Deal with fragments being restored when their containing view is
gone.

Try to put in a black background during rotation.  Currently commented
out because it appears to cause surface flinger to hang.

Change-Id: I150d061e64488356d17513f4e2d124d7c3d04f6b
2011-01-04 11:34:18 -08:00
Robert Greenwalt
e32e812b11 Always file DUN requests for tethering.
A bit of a hack so that first trySetupData call uses the proper APN in
strange edge cases.  Made a new startUsingNetworkFeature string
that ConnectivityService knows means always pass the request to telephony
even if telephony connections are not currently available.

bug:3133178
Change-Id: I2559b9cbaed4b4ec02bdf7ea78e6003ee2be64f2
2011-01-04 11:15:19 -08:00
Dianne Hackborn
7eab094722 Fix flicker issue in IME.
When IME is being moved as part of a window going away, it could flicker
as it immediately moves behind the window.  Fix this.

Also make the default soft input mode for PopupWindow to be to not change
the IME visibility, since it is a rare pop-up window that should cause your
IME to close.

Change-Id: I0b43e080ad012739e9a3e5842794c778c859ac1a
2011-01-01 13:32:30 -08:00
Svetoslav Ganov
03c5dd91a0 Merge "3304011 At times Talkback still works after disabling it." 2010-12-29 19:22:07 -08:00
Dianne Hackborn
dee9981c2a Merge "Don't let services in persistent processes be lost after crashing." 2010-12-29 16:50:24 -08:00
Dianne Hackborn
070783f6ea Don't let services in persistent processes be lost after crashing.
Special cases persistent processes to not allow their services to be
force stopped if the processes is crashing multiple times.  Avoid the
annoying issue with the system bar going away if it is sometimes crashing.

Change-Id: Icf421f45e389827d612d70638030da755a8d3344
2010-12-29 16:46:28 -08:00
Robert Greenwalt
d825ea4ff0 Cache the current value of background-data.
The writing of the persistent setting is async, but we should
still remember it so if somebody asks before the write completes
we give the right answer.  Makes the read faster too.

bug:3312848
Change-Id: I864cb5f8d496d5bf9cbf0af9a71ca84da078f7c6
2010-12-29 16:15:02 -08:00
Jeff Brown
8235404786 Merge "Add initial support for cursor-based pointing devices." 2010-12-29 13:22:08 -08:00
Jeff Brown
83c09685f2 Add initial support for cursor-based pointing devices.
Some parts stubbed out but you can plug in a mouse and move
a green cursor around to interact with the UI.

Change-Id: I80d597a7f11d3bd92041890f74b3c77326975e6e
2010-12-29 13:19:53 -08:00
Mike Lockwood
da03aaad78 Change libusbhost and libmtp from static to shared libraries
Change-Id: Iccc67db32400cdeb88aa33261c9e0cf73db992ca
Signed-off-by: Mike Lockwood <lockwood@android.com>
2010-12-29 09:12:15 -05:00
Svetoslav Ganov
f2245aa5d7 3304011 At times Talkback still works after disabling it.
Change-Id: If99ef28c6285a2d290d46518a07d69d5e22cca5b
2010-12-28 15:50:32 -08:00
Robert Greenwalt
55985bed7b Make sure the ProxyProperties is always present.
Lets people know that it's non-null, though the InetAddr inside may be.

bug:3305689
Change-Id: I0fe16a9ef1feba987680c419fa2dc0e00e400d91
2010-12-28 11:15:06 -08:00
Dianne Hackborn
550c2b7d39 am 536feda7: am 949fc0ef: Merge "frameworks/base: Fix to release references to previous live wallpaper"
* commit '536feda7b133b297d43ea62111979d150f222d88':
  frameworks/base: Fix to release references to previous live wallpaper
2010-12-28 10:57:51 -08:00
Dianne Hackborn
536feda7b1 am 949fc0ef: Merge "frameworks/base: Fix to release references to previous live wallpaper"
* commit '949fc0efc3203c580372e7713df5331818ae81f1':
  frameworks/base: Fix to release references to previous live wallpaper
2010-12-28 10:38:38 -08:00
Irfan Sheriff
bccc78ffa5 Merge "Enable networks on screen on" 2010-12-24 12:34:52 -08:00
Irfan Sheriff
8e86b89860 Enable networks on screen on
We now all configured networks on screen on.
Also, removed event logging for scanning and rssi polling

Bug: 2129037
Change-Id: I995893d77f8575a8d987d9d8604c8272f636d12d
2010-12-24 10:25:04 -08:00
Robert Greenwalt
1039872f59 Reduce the spinning while tethering.
Doing too much stuff - don't retry when we know we shouldn't.

bug:3293460
Change-Id: Ic7b0b6486b39377d74df7a35572059ac60d03fa0
2010-12-23 17:13:57 -08:00
Dianne Hackborn
fefe3f689b am cc43401c: am 6eef0ca5: Merge "frameworks/base: Fix to release references in ActivityManagerService" into gingerbread
* commit 'cc43401cd10c681238e0be01de8fe14f5da94fb1':
  frameworks/base: Fix to release references in ActivityManagerService
2010-12-23 14:29:36 -08:00
Dianne Hackborn
cc43401cd1 am 6eef0ca5: Merge "frameworks/base: Fix to release references in ActivityManagerService" into gingerbread
* commit '6eef0ca59438a15d14be8a72b6b29f01da91a5b8':
  frameworks/base: Fix to release references in ActivityManagerService
2010-12-23 14:22:32 -08:00
Dianne Hackborn
6eef0ca594 Merge "frameworks/base: Fix to release references in ActivityManagerService" into gingerbread 2010-12-23 14:19:03 -08:00
Dianne Hackborn
949fc0efc3 Merge "frameworks/base: Fix to release references to previous live wallpaper" 2010-12-23 14:17:54 -08:00
Vairavan Srinivasan
a207ce2aba frameworks/base: Fix to release references in ActivityManagerService
ServiceRecord's bindings is a hashmap to keep track of all active
bindings to the service. This is not cleared when the service is
brought down by activity manager. This adds up the references to
IntentBindRecords and its references to ServiceRecord. Fix is to
clear the bindings.

ServiceRecord's restarter is a reference to the service and is not
cleared when the service is brought down by activity manager. This
adds up the references to ServiceRecord. Fix is to set the reference
to null when the service is brought down by activity manager.

Change-Id: Ica448cd5f60192c8adb23209b5d0e2cf0c04e446
2010-12-23 14:16:56 -08:00
Vairavan Srinivasan
fdfc1b27fe frameworks/base: Fix to release references to previous live wallpaper
The service connection to the previous live wallpaper is unbound when
a new wallpaper is effective. Although the service connection is
unbound it is not disconnected and its reference to wallpaper's
service and engine is still effective. This adds up to the total
JNI references and causes dalvik (hosting system_server) to abort.
Fix is to release the references in clearWallpaperComponentLocked.

Change-Id: Idd2bab83a56d2e6c6dd7ab9be08d5e14887aa384
2010-12-23 14:05:44 -08:00
Vairavan Srinivasan
50b9b94411 frameworks/base: Fix to release references in ActivityManagerService
ServiceRecord's bindings is a hashmap to keep track of all active
bindings to the service. This is not cleared when the service is
brought down by activity manager. This adds up the references to
IntentBindRecords and its references to ServiceRecord. Fix is to
clear the bindings.

ServiceRecord's restarter is a reference to the service and is not
cleared when the service is brought down by activity manager. This
adds up the references to ServiceRecord. Fix is to set the reference
to null when the service is brought down by activity manager.

Change-Id: Ica448cd5f60192c8adb23209b5d0e2cf0c04e446
2010-12-23 13:51:48 -08:00
Jeff Brown
fa93584a4f am c6f2b3b3: Merge "Fix policy issues when screen is off. (DO NOT MERGE)" into gingerbread
* commit 'c6f2b3b302c06b8b7b81ec7e3a43a7df1813d0e0':
  Fix policy issues when screen is off. (DO NOT MERGE)
2010-12-23 12:43:48 -08:00
Dianne Hackborn
00ee5b4685 Merge "Fix issue #3299143: Problem report for Hanping Chinese Dictionary Pro" 2010-12-22 17:44:14 -08:00
Dianne Hackborn
3b99ede362 Fix issue #3299143: Problem report for Hanping Chinese Dictionary Pro
Let's not crash if there is no clip.

Change-Id: I295031adf37fdd0997c39a2cffc2c6f602d7694e
2010-12-22 17:37:34 -08:00
Dianne Hackborn
690d20bb53 Fix issue # 3227963: SecurityException: Neither user 10023 nor...
...current process has android.permission.WAKE_LOCK

When updating a system app, we would actually uninstall the package
of the system app, which also meant removing its uid...!  It was just
luck that we would get the same uid when installing the update after
that.  During that time, if anyone tried to do anything related to
that uid, it would be unknown.

This change tweaks how we go about replacing system apps by making
it more like normal apps -- to make this work, if we need to disable
the system app, we generate a new PackageSetting from the current
system app and replace it into our data structures, so we can update
that without trashing the current correct information about the (still
actually there) system app.

Also fixed a problem where we were not killing the currently running
app before installing, like we do when updating a normal application.

And fixed a problem where we were not deleting the /data .apk when
uninstalling a system app update.

And added a new option to the "pm" command to clear the data associated
with an app.

Change-Id: I0e879677849aa42950a3c360bf78ad820e87674b
2010-12-22 16:31:44 -08:00
Jeff Brown
eb9f7a01b0 Fix policy issues when screen is off. (DO NOT MERGE)
Rewrote interceptKeyBeforeQueueing to make the handling more systematic.
Behavior should be identical except:
- We never pass keys to applications when the screen is off and the keyguard
  is not showing (the proximity sensor turned off the screen).
  Previously we passed all non-wake keys through in this case which
  caused a bug on Crespo where the screen would come back on if a soft key
  was held at the time of power off because the resulting key up event
  would sneak in just before the keyguard was shown.  It would then be
  passed through to the dispatcher which would poke user activity and
  wake up the screen.
- We propagate the key flags when broadcasting media keys which
  ensures that recipients can tell when the key is canceled.
- We ignore endcall or power if canceled (shouldn't happen anyways).

Changed the input dispatcher to not poke user activity for canceled
events since they are synthetic and should not wake the device.

Changed the lock screen so that it does not poke the wake lock when the
grab handle is released.  This fixes a bug where the screen would come
back on immediately if the power went off while the user was holding
one of the grab handles because the sliding tab would receive an up
event after screen turned off and release the grab handles.

Bug: 3144874
Change-Id: Iebb91e10592b4ef2de4b1dd3a2e1e4254aacb697
2010-12-22 16:00:21 -08:00
Jaikumar Ganesh
15c7439acb Add TYPE_BLUETOOTH network interface for reverse tethering.
Change-Id: I2aa61ce15f57aea9e8fd3a4cb56799c8bc51e998
2010-12-22 15:24:18 -08:00
Mattias Petersson
658ecc1869 am 2f209e88: am 1622eee2: Improve performance of WindowState.toString()
* commit '2f209e885a86b8396fe1344043cf9858751fcb64':
  Improve performance of WindowState.toString()
2010-12-22 12:04:43 -08:00
Robert Greenwalt
efe5bd77eb am 46f98746: am 5d0fafe8: Merge "Be sure and report NO_CONNECTIVITY when needed." into gingerbread
* commit '46f987465c1df4ec984e725747d4d79fc592abb7':
  Be sure and report NO_CONNECTIVITY when needed.
2010-12-22 11:35:06 -08:00
Mattias Petersson
2f209e885a am 1622eee2: Improve performance of WindowState.toString()
* commit '1622eee2e48678b17a4668641957f09213f98905':
  Improve performance of WindowState.toString()
2010-12-22 11:25:32 -08:00
Mattias Petersson
1622eee2e4 Improve performance of WindowState.toString()
This fix improves the performance by caching the string that should
be returned, and reuse it next time if possible.
This will make it faster to switch between activities, approximately
half the time to create the new view when changing from landscape to
portrait. Also, the time for starting a new application is be reduced
as WindowState.toString is being called thousands of times in this
case.

Change-Id: I2b8b9bc1e251d1af43b6c85f049c01452f2573a2
2010-12-22 10:42:47 -08:00
Dianne Hackborn
eaa9e2750f Merge "Fix issue #3263026: Screen rotation animation is funky..." 2010-12-21 23:24:50 -08:00
Dianne Hackborn
5f4d643346 Fix issue #3263026: Screen rotation animation is funky...
...with more than one activity visible

Change-Id: I7695108a3540f5dd0a59b792ca3bc84c8f680872
2010-12-21 23:23:26 -08:00
satok
bb7dc3c855 Merge "Fix NPE when the shortcut subtype was not found." 2010-12-21 23:09:38 -08:00
satok
7599a7fb1a Fix NPE when the shortcut subtype was not found.
Bug: 3300904

Change-Id: I1bc2578b63bb842363d70e48c77e9f9fee8fac6b
2010-12-22 16:01:35 +09:00
Dianne Hackborn
f642c89964 Merge "Gah forgot this." 2010-12-21 19:21:41 -08:00