Merge commit 'd301c90446644f63cda9b9263f83332676065bb4' into eclair-mr2
* commit 'd301c90446644f63cda9b9263f83332676065bb4':
Delay 500ms between each registering each SDP record using sdptool.
Merge commit 'f836acf241f10d943d72d439fa425fda73a6d56b' into eclair-mr2
* commit 'f836acf241f10d943d72d439fa425fda73a6d56b':
Fix issue #2179931: Power key to wake up frequently ignored when in dock app
This is to workaround an issue where SDP records will fail to register using
sdptool. When we run SystemService.start() it forks sdptool, so if we do this
four times in a row these forked processes can run in parallel, and one or
more of them fails. There is probably some thready safety issue in sdptool
or Bluez that makes it unsafe to run sdptool in parallel.
As a workaround, delay 500ms between each run of sdptool to register SDP
records when starting Bluetooth.
Before this fix it was easy to reproduce problems with service record
registration. If you turn BT off/on multiple times you can see that sometimes
one or more service records are missing. Repro rate is about 20% in my tests.
Result is that remote devices cannot connect to the missing service.
After this fix I am unable to reproduce any missing SDP records, after 30+
cycles of BT on/off. Motorola BT team also ran stress tests overnight with this
fix and were unable to reproduce the missing SDP records.
This is a low risk fix. It does delay some records from being registered
by an additional 1.5 seconds (on top of the 3 second delay we already had),
so if you try and very quickly connect a BT service after turning BT on it
won't work the first time.
Do not merge. (I will use a less hacky fix for MR2/Master)
Change-Id: I305c181c3194e8ce25e3825320cc2e1ef6d3d3cc
Bug: 2180800
DrNo: eastham
Joke: Why can't you play cards in the jungle? Because there's too many cheetas!
Select plugin using focusCandidate rather than cursor
calls. This allows the detecting plugin objects that
have received focus but don't have the cursor ring
on them.
Remove 'inval rect' from debugging printfs, since it
happens a lot, and allow 'request keyboard' to be
visible.
TokenWatcher.acquire() synchronizes on mTokens, not this,
so we need to synchronize on mKeyguardDisabled in disableKeyguard()
to synchronize properly with reenableKeyguard().
This should fix b/2180142 (Stuck in enable keyguard when receiving phone call)
Change-Id: Iad66a2748c7fbf2c516fdb8a00988696719ea80c
Signed-off-by: Mike Lockwood <lockwood@android.com>
Merge commit '6dc3f4e553d333b9f115a222a9a684bb2aa55b5e' into eclair-mr2
* commit '6dc3f4e553d333b9f115a222a9a684bb2aa55b5e':
Now that Eclair has been defined as API revision 5 mark Build.VERSION_CODES.ECLAIR as such.
Merge commit 'ee110be02256b816ac6d863e39cb8b11b8071baa' into eclair-mr2
* commit 'ee110be02256b816ac6d863e39cb8b11b8071baa':
Fix issue #2179891: Need to update 5.xml
The dock app is forcing the screen to a particular brightness level. This
causes the window manager to often call into the power manager with the
new brightness. This causes us to go in to updateLightsLocked() to figure
out and apply the real brightness to use. When the screen is off the
real brightness always remains 0, but even if it didn't change from the
last one we would start an animation which would when done put the system
to sleep and fight with the user trying to turn the device on.
Now, if the new target brightness is the same as the last one, we leave the
animation as-is -- either running or not as appropriate.
Change-Id: I067d55ea2b39e294c5d5291587a4d8727c0b8083
The ViewRoot is responsible for calculating the current view's surface's
transparent region and reporting this to the window server, which in
turn notifies Surface Flinger.
To minimize cross-process traffic, ViewRoot keeps track of the
most recent transparent region that it has reported to the window
server, and only sends updates when the region shape changes.
ViewRoot is effectively shadowing the internal state of the window
server, and usually this works fine, because ViewRoot is usually the
only thing that changes this value.
But when the surface is recreated, the window server resets the
transparent region to empty. So in order to properly update the window
server we need to reset our copy of its state to empty too.
Fixes issue #2133090: GL Gears runs at half speed in some cases
Merge commit 'c08efb2712fbcc25ce9c208f3c9d7c0935e209d4' into eclair-mr2
* commit 'c08efb2712fbcc25ce9c208f3c9d7c0935e209d4':
Import revised translations. DO NOT MERGE
Note that refactor is still on-going. Some changes done now may be
reverted in the future.
- Move reusable constants from VCardComposer to Constants.
- Make ContactStruct appropriately refers to Constants.
- Move PBAP-related code at the bottom of vCard composer
- Remove some redundant code.
Internal issue number: 2160039
Implement java side of file upload. Requires changes to external/
webkit to not break; requires changes to packages/apps/Browser
before it actually is used.
Fix http://b/issue?id=675743
Merge commit '98e0b146b80670b52805b4b210ef5582dad6bb68' into eclair-mr2
* commit '98e0b146b80670b52805b4b210ef5582dad6bb68':
Make PhoneStateListeners not call TelephonyManager
Since the StatusBarPolicy is run in the System Process and shouldn't therefore call into
the Telephony process we decided to make sure all the needed info was passed along with the
original notifications.
bug: 2173053
Merge commit '6903d5cedcffa005818c497f672cf16c2dff619c' into eclair-mr2
* commit '6903d5cedcffa005818c497f672cf16c2dff619c':
Add LAST_KMSG_KB variable, used to tune the size of /proc/last_kmsg uploads.
along with the tests
Make test code not only check the validity of VCardParser but also check
the validity of the data insertion part of ContactStruct class, using
MockContentResolver/MockContentProvider. With these tests, we are now really sure
vCard side appropriately sends vCard data into the resolver.
Fix ContactStruct so that it properly handles ORG property and TITLE property,
though it still does not see Group information. There's no vCard found which
uses Group and ORG and TITLE in convolted orders...
e.g. Current implementation misinterprets the following case, but we're not sure
whether any exporter emits data in this kind of complicated form...
group2.ORG:ComparyA
group1.ORG:CompanyB
group1.TITLE:TitleForA
group2.TITLE:TitleForB
Expected: CompanyA + TitleForA, CompanyB + TitleForB
Actual: CompanyA + TitleForB, CompanyB + TitleForA
Also change the parser part a little, so that some component can be reused via
the other part of vCard code.
Added several additional files for the tests, which ensures that
- ORG/TITLE properties are handled as we expect.
- PREF is appropriately handled and passed to the resolver as "IS_PRIMARY" flag.
-- We discarded the code which ensures that "IS_PRIMARY" is added to only one
field in each type, after the local discussion (the duplication or no primary
state should be handled by the resolver).
Internal Issue number: 2160039