1. Now we are asking the user to grant permission to the service to enable
touch exploration only the first time this service is enabled. If the
service was uninstalled and then later installed we ask the user again.
This avoids the scenario in which rebooting the device or upgrading an
accessibility service leaves the device in a state in which the user
cannot interact with.
bug:6582088
Change-Id: I51d24e4892b3b48c9fb11dfb09ec1118502ba526
It is possible for 2 different threads to poke the mStreamControls at the same time,
causing the monkey bug mentioned in the bug report below.
Bug: 6411852
Couldn't think of any other reason Stream type 3 (MUSIC) wouldn't exist in the list.
It's possible that a programmatic call came in at the same time as the volume key press.
Synchronizing blocks where the mStreamControls are populated and accessed.
Change-Id: Ifedec6b0f8bad9634cb9e079fda785c433bdb7a7
Animations to show/hide the ActionBar and StatusBar were very slow, given
the size of the objects and the distances covered by the sliding animations.
Also, the ActionBar animation was sometimes hiccuppy as it faded in/out.
This change eliminates the ActionBar fade (which is unnecessary) and speeds
up the animations (smaller durations and steeper interpolation curves). Also,
it eliminates the startDelay on the ActionBar show animation.
Issue #6564089 Options menu should slide in much quicker (nakasi/JB)
Change-Id: I2c8298301f7bf26bbbc94444e715420a2c029ba0
...activity ComponentInfo{com.google.android.googlequicksearchbox
/com.google.android.googlequicksearchbox.SearchActivity}
Add check for a situation where we are saving the state of a
fragment with a -1 index, and fail early in that case with more
debug information.
Change-Id: I03a928dde521fa06664d0036dd9f90eef3247afc
Being on SD card and being forward-locked are package-wide flags that
shouldn't depend on an APK having an <application> stanza.
Bug: 6563724
Change-Id: If5f2159cd8e3fa136f959b656d82b05ea6bdfae5
AudioService is currently notified of wired headset and A2DP
sink connection states via broadcast intents from WiredAccessoryObserver
and BluetoothA2dpService. This is a problem as there is no guaranty that
AudioService can take actions upon the change before other apps are notified.
For instance, the Play On feature requires the UI to be refreshed when a device
is inserted/removed and we must guaranty that the UI component can read
new A2DP enable state from AudioManager after it receives a device connection state
change intent.
- Added hidden methods to AudioManager so that WiredAccessoryObserver
and BluetoothA2dpService can notify AudioService of device connection directly.
- The wired accessories connection intents are now sent by AudioService.
- The A2DP state change intent is delayed by BluetoothA2DPService when
ACTION_AUDIO_BECOMING_NOISY is sent by AudioService
- ACTION_AUDIO_BECOMING_NOISY intent is not sent when disconnecting A2DP
while a wired headset is present and vice versa.
Bug 6485897.
Change-Id: Ie160b3ee5f451132065530772b868593c90afd94
This makes it possible to retrieve the account list in the order of creation,
if we want to display them in the account settings screen in that order.
Bug: 6579937
Change-Id: I2025aaa8b770fbb78be978dfde64ef95823fd5aa
- Smaller right_icons
- Higher-contrast text colors
- Dividers between actions
- Dividers above actions and overflows
- Consistent 8dp gutter on left of content
- BigTextStyle should not show line3 unless there is a subtext.
- Collapse summary ("overflow") text into line3. This is a
little wild because now the contentText, subText, and
summaryText all share this spot, but the various
variables all have different times when they're
expressed so you have greater control over what shows
where in the 1U and the expanded form.
- Do not show contentText in BigText's line3. If you have
subtext or summarytext, show that; otherwise suppress
line3 entirely.
Bug: 6558134 // line3
Bug: 6508804 // other visuals
Change-Id: Ib79e818a332d17000e9a8fce333eff8f8cf043aa
This fixes a bug where sometimes the handle wasn't visble in the
incoming call screen. The problem was that the animation was
interrupted on its transition from alpha = 0 to alpha = 1 by reset()
and the new handle animation wasn't started.
Change-Id: I3ab4259db1115da20e7f54b91bbfe3b496940214
...device from JRN59D to JRN60
Deal correctly with multiprocess content providers that need to
be loaded into a secondary process; wasn't correctly detecting the
case where the IContentProvider returned by the activity manager
is null. (installProvider used to be given the direct IContentProvider,
now it gets the ContentProviderHolder and much check whether the
provider inside is null.)
Change-Id: I888622e275a459031ab849952941f39cf9c02ee0
This fixes a few recent regressions caused by other bug fixes:
- add new flags to animateCollapse() so we can selectively close panels. Fixes regression caused by attempt to close recent apps from startAssistActivity() which had the side effect of closing the search panel before the animation completes.
- adds tuneable holdoff delay for responding to home key press.
- minor tweaks to MultiWaveView animations.
Change-Id: Ia48434b8d59e7b0290a5e9783960c2f684068218
1. We use a delayed callback to throttle the amount of accessibility
scroll events fired by the view tree. The callback to do so was
not properly reset when removed putting the view tree in a bad
state resulting in no scroll events being fired at all.
bug:6549005
Change-Id: Ibf72d7e009e4545a336c9471f46015910290703e
1. This attribute specifies whether a view can take accessibility
focus. It has three values: 1) auto - the system determines
based on whether the view is actionable and has actionable
predecessor. Accessibility services can put accessibility focus
on such a node at will; 2) yes ; this view always takes access
focus; 3) no - the view cannot takes accessibility focus and
accessibility services cannot put accessibility focus on it.
Change-Id: I2ebf4e7c75bf6b39e1742b6868b37ccdd4cc7d28
1. Iterators were skipping content on reversing direction.
2. The cursor was positioned at the beginning of the next text segment
when moving forward and at end of the previous text segment when moving
backwards. This is incorrect and now the cursor is positioned at the
end of the segment when moving forward and at the beginning when moving
backward.
3. The cursor position was not properly set when reaching the end/start
of the text.
4. The iterators were reporting strictly the next/previous segment even
if the cursor is within such a segment. Thus, when traversing some
content may be skipped. Now moving forward moves the selection to
the next segment end and the start position is either the old index
if it was within a segment or the start of the segment. Same in
reverse.
bug:6575099
Change-Id: Ib48a649cec53910339baf831a75e26440be6e576