Donnot make the bluetoothservice.getUuids call if the bluetooth
is not on. Also get rid of all the necessary locks on BluetoothService
for get property call. It had a lock on BluetoothAdapterProperty.
bug5472114
Change-Id: I383472ae6006fc1f0129c960c8a44ed0df027a43
Showing a congratulations screen after choosing face unlock backup lock
Once a backup lock has been chosen, it sends an intent to show a
congratulations screen. The moveTempGallery function has been moved
inside this new activity so it is no longer needed in LockPatternUtils.
Change-Id: I66868e6e3391b8b740f618fe633047ce388f55ca
LayoutTransition was making an incorrect assumption that there could
only be one transition animation on a child of a transitioning container.
But if multiple children are added/removed to/from that container, there would
be multiple calls to set up changing animations for each existing child
of that container. This meant that the child would have multiple, new
OnLayoutChangeListeners added to it as part of the setup process.
Meanwhile, we would cache only the latest listener in a hashmap that used
the child as a key for the listener. Then when we cleaned up the hashmap later,
we would remove only the latest listener from the child, leaving the rest there
for eternity.
The fix is to skip the setup entirely for children that already have listeners
set on them; they must, if that's the case, already have been set up and are
already listening for layout changes. Setting up the animation is redundant,
and adding another listener is a leak.
issue #5588509: memory leak in systemui
Change-Id: Ie2192593d84702be7243c18760dfdb3a027b761c
1. The dismiss method in a PopupWindow is first removing the
popup View from the WindowManager and then if the content
View differs from the popup View the former is removed from
the latter. Then dismiss() clears the dismissed flag so a
subsequent call to dismiss() is a NOP. However, removing
a View both from the WindowManager and from its parent
ViewGroup triggers stuff wich may lead to a subsequent call
to dismiss(). This leads to a stack overflow exception.
bug:5598944
Change-Id: I2aeeda591be3e9aa98fec1ee17ea8f0e746e6992
Also use the AlarmManager instead of messages so the delays
are consistent whether sleeping or not.
Bug: 5534004
Change-Id: I24118b30214dddf8183c1200a89555d6c528e606
It crashed due to the fact that we're committing a fragment change
after onSaveInstanceState() is called. Instead, commit without
storing the state - as the NfcFragment is something that needs
to be setup explicitly anyway, it is not something the user
expects to be restored.
Bug: 5540962
Change-Id: I5a8cd0e47306f2bbc14b592a0182083bb79cb21a
In order to completely mute the ringer (no vibrate), introduce an extra
state beyond mute, which mutes the vibrator as well, if it was enabled.
Bug: 5530217
Change-Id: Ib1f299ee6bbca56c1aa7e1100662591362d08307
On user-debug and eng builds, you can set the
"db.log.slow_query_threshold" system property to queries that
take longer than the specified number of milliseconds.
Set it to 0 to log all queries.
This property has been around for a while but it was implemented
poorly. In particular, it *changed* the behavior of the query
by calling getCount() while holding the Db connection.
In normal operation, the query will not actually run until later.
By putting the timing logic into fillWindow() instead, we ensure
that we only measure queries that actually ran. We also capture
cases where the cursor window gets filled multiple times.
Bug: 5520301
Change-Id: I174f5e1ea15831a1d22a36e9a804d7755f230b38
A recent patch taking scroll into account was applied at the wrong
level. isVisible() expects positions that already take scroll into
account. isOffsetVisible() is where the initial bug was.
Cherry pick of 144415 from master.
Change-Id: I06ceebfb3d7b24aa4adba886c24fcf9d8dd39d2e
Suppose applications call autoFocus in CAF picture mode. If
CAF is in the middle of scanning, the picture is very likely to
be blurry. Change focus callback to return when the scanning
finishes.
bug:5514415
Change-Id: Ibcb8f92a5263d7dbd7cce54df3617fb21c6255d4
Sometimes when headset service doesn't get bound, the auto
connection fails.
Based on a patch by: Chunho Park <chun.ho.park@samsung.com>
Change-Id: Ia24613b47487717f51895953c7e8bc52abffecb5
- Part of fix 5491362 (RelTeamHotIssue)
- Because the fix closes the camera early, this change is needed so
the black area isn't still hanging around while the camera fades
to the backup lock.
Change-Id: Iab7c264adab0fb05979fe2732048ccf2237e64c5
Bug 5387838
On WebView.rebuildWebTextView, setTextAndKeepSelection was
being called, erasing the selections. Changed it so that
when text is replaced with the exact same value, no replace
is done. Also, on the Google search, when a spelling change
was made, the final character was placed improperly. When
a single character is added, the javascript events for the
character are sent. When multiple characters are changed,
the entire value is replaced with no javascript key events
sent.
Change-Id: I791eeb3c96354cfe3cbfda7e8d05c81fcdeb152f
This is a cherry-pick in MR0 of CL 141388 from master.
Bug 5488537
In case the span has been removed from the text since the popup
was showed, the delete action is a no-op.
Change-Id: Iec2aeaf03becd82ad44715d5c08bfaa8f62aa3fe
1. Some obsolte logic was placing invalid index in the array of
scroll wheel items which was resulting in failure to look its
string representation from the cache causing a NPE.
2. While editing the current value via the IME the middle item
of the scroll wheel was partially visible i.e. the user was
able to see a dimmed version of the old value intermixed with
the new one.
3. The logic for hiding the IME while poking a button i.e. starting
to use another way of changing the current value, was incorrect.
bug:5480205
Change-Id: I1c2c96402bd38bac1dec64ccc6b550410332b9d7
This fixes a crash where we weren't hiding the view when there's
no registered media player. It now hides the view when AudioManager
tells it to clear the data.
It also avoids a possible race condition where a request can
come in from AudioManager before the callback is set.
Change-Id: I3360e775c75396e1eee11413d317df5b39ceb487
Since the feedback type is an integer the bits of which correspond to a given
feedback type, the AccessibilityNodeInfo#feedbackTypeToString should return a
string representation of all feedback types. The current implementation
incorrectly assumes that the argument had only one flag set. Note that this
is a new ICS API and we would like to have this fixed.
bug:5486933
Change-Id: I5e461c385e199cce4c3054907ff0acf5e9d92afc
It is no longer sufficient to check the value of
internal.R.bool.config_showNavigationBar to determine if a
navigation bar (separate from the status bar) is shown on a
device, because the emulator needs to be able to override
this value (now possible by setting qemu.hw.mainkeys to "1"
or "0", for navbar or no navbar, respectively).
This logic is now contained in PhoneWindowManager, and any
clients wishing to know whether the system has a software
nav bar should consult the new hasNavigationBar() method.
Bug: 5404945
Change-Id: I119d32a8c84b88b2ef46f63244e7f11dc5de0359
The code that initializes accessibility events was assuming the AdapterView
always has an adapter and this caused NPE. Now the right method of the view
is called to get the item count.
bug:5474162
Change-Id: I6c330dc2894477df9447a4ecfddc7bd62c575d59