3807 Commits

Author SHA1 Message Date
Alan Viverette
3f7360df82 Invalidate SubtitleView during setText()
Ensures that even if layout does not change, the view is redrawn.

Bug: 19277437
Change-Id: I078ee3176c2bac6c754a0e2f378f97370ecef76a
2015-02-05 09:58:49 -08:00
Christopher Ferris
95b1048d39 Fix wrap property creation when truncating.
If a property name gets truncated, make sure it doesn't end in a '.'
since that makes the name illegal.

Bug: 19196358
Bug: https://code.google.com/p/android/issues/detail?id=82947

(cherry picked from commit e32df45fe1a8cb7286bfdad392a0d36e0ddcf8e7)

Change-Id: I126a40ffae76ee6a06926e770ca015fb063a334b
2015-01-29 15:54:40 -08:00
Svetoslav
a1ac6a0925 Accessibility: Ignore overlapping siblings when computing a click location
To click a view we were computing a click location by ignoring overlapping
views that are actionable. However, detection whether a view is actionable
is not always possible as the view may handle touch events directly. This
leads to unhandled edge cases. We are taking a conservative approach and
ignore all overlapping siblings regardless if clickable. This is also has
limitations but hopefully less frequent edge cases.

bug:18889611

Change-Id: Icea0b7b3e2d4ed53e50e01cb6a99b880be560b14
2015-01-23 16:13:43 -08:00
Svetoslav
42a13865a4 Merge "Accessibilty: Cannot click on views in a scrollable container covered by the toolbar." into lmp-mr1-dev 2015-01-23 22:22:18 +00:00
Lorenzo Colitti
78d51c2292 Merge "Use the proper IpPrefix and LinkAddress constructors in VPN code." into lmp-mr1-dev 2015-01-23 05:57:38 +00:00
Lorenzo Colitti
b205311456 Use the proper IpPrefix and LinkAddress constructors in VPN code.
This simplifies the code, and also makes it possible for
users to point multicast routes at the VPN. The LinkAddress
objects we were previously using to construct the RouteInfo do
not accept these, but IpPrefix objects do.

Bug: 18485968
Change-Id: Ie914a2eb359b78161810ee473df725059f944f4e
2015-01-23 14:30:22 +09:00
Svetoslav
41fceb462b Accessibilty: Cannot click on views in a scrollable container covered by the toolbar.
In accessibility mode we calculate a point where to click in the accessibility
focused view as a bridge-gap solution before switching to accessibility click
actions. We cannot detect whether a view is covered by another one that consumes
all touch events, and therefore we may click on the wrong target. This was the
case with the toolbar. As a result a partially scrolled view in a scrollable
container covered by a toolbar cannot be activated and this is not an edge case.

bug:18986806

Change-Id: Ib41470c39806cec13e9b00b319879cd7f3412ab5
2015-01-22 18:51:47 -08:00
Nicolas Prevot
ad44f7448f Merge "Never set "Work" or "Personal apps" as prefered activities." into lmp-mr1-dev 2015-01-22 10:22:08 +00:00
Svetoslav
76ff4dd0de AlertActivity now behaves as a dialog for accessibility purposes.
AlertActivity is intended to look like a dialog but for accessibility
purposes it was populated as an activity. As a result the content of
the "dialog" was not properly announced to the user.

bug:18865632

Change-Id: I27166fc74678981f4f3ad71d6d25727b5110340c
2015-01-21 18:28:03 +00:00
Nicolas Prevot
daf92066db Never set "Work" or "Personal apps" as prefered activities.
In ResolverActivity: when the user chooses work or personal:
Do not set them as prefered activities.

BUG:19091836

Change-Id: Ibe0081eb16e58cc25decb3f25b7fd50b5403d5fc
2015-01-21 17:53:11 +00:00
Kenny Guy
2b43c73e66 Only hide cross profile disclosure when showing resolver.
Hiding the cross profile discoloure for all system apps
also meant it wasn't shown for CALL_PRIVILEGED intents.

Bug: 18702461
Change-Id: I8129bc4b07573b547aefe2dbcc6938a60305c216
2015-01-20 19:27:38 +00:00
Wink Saville
1a6dd2985e Merge "StateMachine.dump produces no output sometimes." into lmp-mr1-dev 2015-01-14 00:52:08 +00:00
Wink Saville
54b1b1a07a StateMachine.dump produces no output sometimes.
If the content to dump is large no output is produced by dump. Change
back to using a loop and flush.

Bug: 18965342
Change-Id: Ibc33da8bfffd5f998a78df0e2d70ed8e8a0aa137
2015-01-13 22:35:25 +00:00
Adam Powell
69c22e82e9 Merge "Add API for nested pre-processing of a11y events; fix ResolverDrawerLayout" into lmp-mr1-dev 2015-01-13 18:57:33 +00:00
Dianne Hackborn
54f9b1eedc Merge "Fix issue #18942959: Phone getting stuck then restarts after unplugging from Audi" into lmp-mr1-dev 2015-01-09 19:08:50 +00:00
Dianne Hackborn
b3d4cb369e Fix issue #18942959: Phone getting stuck then restarts after unplugging from Audi
FastPrintWriter needs to have its own lock for each instance, or
else one getting blocked can cause others to block and whacky deadlocks
result.

Also:

- Improve error reporting of SystemConfig to tell you which config
  file is the problem.
- Fix CoreSettingsProvider to not spew errors if a setting is not
  defined (it should just use a default value).
- Get rid of noisy init output of ConditionProviders.
- Reduce log noise of starting a process; move some of that information
  to ProcessRecord to print on demand.

Change-Id: I1032d141ddd449968b74ab7b88ab36f2d228ad1a
2015-01-09 09:54:06 -08:00
Dianne Hackborn
29cd7f1962 Fix issue #18827122: system server crashed on broadcasting...
...an intent with invalid or null package uri

Also tweak battery stats to record in the history when we shut
down, to understand when restarts are due to clean shutdowns or
crashes.

Change-Id: I6443dafc23e356be9f569906f6081152d4f92d2b
2015-01-08 10:58:45 -08:00
Adam Powell
b6ab098bad Add API for nested pre-processing of a11y events; fix ResolverDrawerLayout
Add API for handling nested pre-processing of accessibility events
similar to nested pre-scroll or pre-fling. This allows custom views to
delegate a nested scroll to a parent via the accessibility system.

Use this functionality to allow opening the ResolverDrawerLayout via
accessibility commands.

Bug 18827274

Change-Id: Icd5a502605b78a861bb03e7b11923841a72eb9ab
2015-01-07 17:00:12 -08:00
Paul Miller
a517e81e2b Merge "Fix crash on pasting text in a WebView" into lmp-mr1-dev 2015-01-07 01:08:35 +00:00
Paul Miller
f6bf1d7b30 Fix crash on pasting text in a WebView
WindowDecorActionBar and Chrome's ContentViewCore each have their own ActionMode
reference. ActionModeImpl.finish() nulls WindowDecorActionBar's reference and
calls mCallback.onDestroyActionMode() to null ContentViewCore's reference. But
if the callback is deferred, there is a period when the ActionMode is finished
(and mCallback is null), but ContentViewCore doesn't know. ContentViewCore may
try to invalidate() the ActionMode, which will crash on the null mCallback.

Make ActionModeImpl more permissive so that calling invalidate() during this
period does nothing.

BUG:18758329
Change-Id: I407fa0e0cd3cffa217e165caed83130d44760316
2015-01-06 11:32:02 -08:00
Dianne Hackborn
2980719512 Merge "Fix issue #18901214: APR: Frequent crash in android" into lmp-mr1-dev 2015-01-05 23:03:48 +00:00
Dianne Hackborn
b182955a1e Fix issue #18901214: APR: Frequent crash in android
The ShutdownActivity was implemented in the system server
code, which is no longer part of the boot class path.  This would
work fine when requesting a shutdown from the primary user, since
in that case the activity would be loaded in to the main system
process which also has the system service code loaded.

However, when executed from a secondary user, we need to spin up
a new system process for it; that system process is just a regular
app process, without the system service code, so *boom*.

To fix this, move ShutdownActivity to the framework jar.

Change-Id: Icb831cd6ed619da5feede5605c45ef177a892fbc
2015-01-05 14:40:24 -08:00
Alan Viverette
5c2d8f7d51 Don't override dialog icon drawable unless valid resource ID was set
Fixes a regression where Builder.setIcon(Drawable) would get overridden
even when Builder.setIcon(int) had never been called and was still 0.
Fixes attribute id to respect all valid resource IDs (e.g. non-zero).
Updates documentation to reflect the long-standing override behavior.

BUG: 18904762
Change-Id: I905703993a59910555d5a858e0aaecab63221a02
2015-01-05 12:56:45 -08:00
Adam Powell
f0af0ea33b Fix touch intercept bug in ResolverDrawerLayout
ResolverDrawerLayout could get into a state where it thought a drag
was in progress, but since there was no distance to drag it would
return false from onTouchEvent for ACTION_DOWN. This would cause it to
intercept all future touch events, blocking interaction with
ResolverDrawerLayout child views. This would only happen if none of
the child views wanted the initial ACTION_DOWN event and it ended up
being processed in the ResolverDrawerLayout itself, such as in
response to touching in empty space or on the title text, and if all
available options fit in view without needing to expand the drawer.

Fix this by only setting the dragging bit if we're going to claim the
rest of the touch events after ACTION_DOWN.

Bug 18563698

Change-Id: Iab2ec38528697c9ff36bbb08b1f1210a6879d5ef
2014-12-15 13:18:06 -08:00
Kenny Guy
b8a2df10c9 Don't show last used and profile button at same time.
UI for ResolverActivity doesn't support last used
activity and work/personal profile button at the
same time. So if work/personal button is present
disable last used.

Bug: 18730438
Change-Id: I7ae7319bbdeb9bcaab9d6d03f97dea17d07c6d7f
2014-12-12 17:04:08 +00:00
Esteban Talavera
c28fa2cdd4 Merge "Take into account other profiles when deciding whether to show ResolverActivity" into lmp-mr1-dev 2014-12-12 16:59:31 +00:00
Esteban Talavera
6de72663fa Take into account other profiles when deciding whether to show ResolverActivity
Show ResolverActivity even if there is only one target
on the current profile that listens to that intent,
if other profiles can also handle it.
Also, fix crash while trying to access out of bounds
element on the list.

BUG: 18701336,18713763
Change-Id: I3a5e9cc5c0eedb2792b8f6d8a5d4aa8ee9e1256b
2014-12-12 14:34:29 +00:00
Craig Mautner
7a17e0b601 Merge "Add put/getBoolean/Array to PersistableBundle" into lmp-mr1-dev 2014-12-10 16:56:15 +00:00
Patrick Tjin
e37030505e Add recovery kmsg to dropbox
Bug: 18642766

Change-Id: I10e4532904a3a8cac43bec7630b9a7a90c2424ba
Signed-off-by: Patrick Tjin <pattjin@google.com>
2014-12-10 05:16:33 +00:00
Craig Mautner
73bdf9761b Add put/getBoolean/Array to PersistableBundle
Due to popular demand the methods putBoolean(), getBoolean(),
putBooleanArray() and getBooleanArray() have been added to
PersistableBundle.

Fixes bug 18390436.

Change-Id: Id133ba902aca774f98529e36ce560e873b88ad5b
2014-12-09 18:10:20 -08:00
Jeff Sharkey
3256601f5e Offer to "merge" subscribers for data usage.
There are some cases where multiple subscriber identities (IMSI)
should be treated as "merged together" from a data usage
perspective.  This is done by extending the template used for
matching purposes to support multiple subscribers.

Then, when we query historical usage or set network policies, we
normalize the matching template to merge to any other identities
that should be included.  When normalizing, the "lowest" identity
is always used for equality and storage purposes, which allows
identities to come and go over time.

This change also fixes data usage recording for multi-SIM devices
by passing along the concrete subscriber identity for each network
interface.  Also correctly create default policies for multi-SIM
devices.  This change also drops setPolicyDataEnable() until it can
be wired up to the right underlying NetworkAgent.  (This means we
still bring up the network, and then rely on iptables rules to block
traffic when over the limit, instead of proactively disabling the
connection.)

Bug: 18012787
Change-Id: If6acf32009fdfea2b836f5aff8e2f3e5e0248b4a
2014-12-08 08:42:59 -08:00
Dianne Hackborn
1e01d16982 Fix issue #17323751: Additional items in aggregated battery stats
- Now aggregate number of times each process has crashed and ANRed.
- Now aggregate total number of connectivity changes.
- Now record connectivity changes in the history.

Crash and ANR counts are new entries at the end of "pr" in checkin.

Connectivity change counts is a new entry at the end of "m" in checkin.

Connectivity changes in the history checkin are Ecn and include the
type of connection and its state.

Change-Id: I0c01186446034cf6c3fb97d45f5e3b5c69a0438a
2014-12-05 13:54:24 -08:00
Wale Ogunwale
18795a2299 Add support from restoring recent's backup.
Bug: 15986349
Change-Id: I899f81d317fcd5277a75db7ba50ecca14112df26
2014-12-04 12:37:53 -08:00
Dianne Hackborn
ef44c0514d Merge "Work on issue #18572506: AppOps in-memory state is invalid after..." into lmp-mr1-dev 2014-12-03 18:03:27 +00:00
Dianne Hackborn
7b7c58b384 Work on issue #18572506: AppOps in-memory state is invalid after...
...uninstalling updates to a system app

Things seem to be working fine, however we were not as aggressive at
writing out the current state in this case as we probably should be.

Also introduce more features to the appops command, which are useful
for testing this.

Change-Id: I177a9cc0e16e98b76fee0d052d742e06842bb3f9
2014-12-03 10:01:14 -08:00
Kweku Adams
d537987b17 Changing AUDIO_TURNED_ON constant.
Changed so that it's set to a different value from WIFI_MULTICAST_ENABLED.

Change-Id: Ied3a2c2bf891f887ec3c7b5249453af4524c099a
2014-12-02 19:18:13 +00:00
Christoph Studer
27ef018846 Merge "NoMan/SysUI: Clear LEDs only when entering the shade" into lmp-mr1-dev 2014-12-02 18:49:51 +00:00
Christoph Studer
1f32c65697 NoMan/SysUI: Clear LEDs only when entering the shade
Don't clear notification LEDs when seeing notifications on the
lockscreen.

Also fix a bug where the LED didn't continue flashing after
the screen turned off.

For devices with doze capability, ensure that the LED continuing
to flash after screen off doesn't cause an immediate pulses, but
delay the first pulse by 10s.

Bug: 15449039
Change-Id: Id34d51a2c91ceaf069e49add1ab690bb855f9638
2014-12-02 16:52:13 +01:00
Yigit Boyar
498c84e736 Merge "Don't wipe out explicit Toolbar nav icon when calling setSupportActionBar" into lmp-mr1-dev 2014-12-02 02:07:26 +00:00
Adam Powell
88831a2a6f Make work profile apps easier to pick in ResolverActivity
Pull the "Work" profile item up out of the main list and into the
header of the resolver drawer, making it easier to discover and access
without disrupting the sort order of the list.

Bug 17935301

Change-Id: Id2d081b61828352c998e517127132f883a20b7ef
2014-12-01 16:43:31 -08:00
Jim Miller
ab954546dc Make IKeyguardService interface asynchronous
Add a state callback so lockscreen reports back whenever its state
relevant for PhoneWindowManager changed, instead of synchronously
calling into SysUI which can lead to deadlocks. Directly use
LockPatternUtils for isSecure, and optimize the number of calls to
this method to optimize layout performance.

Bug: 17677097
Change-Id: I5d491fc8884d4f84d9562626b9ea0d5eaa5166fc
2014-11-25 23:22:52 +01:00
Dianne Hackborn
5bbb1af74a Merge "Work on issue #18486438: Reduce size of bugreport output" into lmp-mr1-dev 2014-11-24 17:53:50 +00:00
Jeff Brown
b5686d5596 am 3d110b23: Make WallpaperService watch the actual display state.
* commit '3d110b239153a6c7423a99f02ef859201205eee2':
  Make WallpaperService watch the actual display state.
2014-11-24 17:34:32 +00:00
Sreeram Ramachandran
45e2732717 Merge "Allow VPNs to specify their underlying networks." into lmp-mr1-dev 2014-11-24 17:24:04 +00:00
Adrian Roos
702d9e31b1 Merge "Fix DPM.resetPassword("")" into lmp-mr1-dev 2014-11-24 16:02:11 +00:00
Jeff Brown
3d110b2391 Make WallpaperService watch the actual display state.
Bug: 18471411
Change-Id: Ie9d2e70e4e105dfbb2cb4d9726f632bcf2cc0a31
2014-11-22 03:25:39 +00:00
Dianne Hackborn
d052a9416a Work on issue #18486438: Reduce size of bugreport output
Reduce how much stuff ProcessStats spews, and do collapsing of
repeated intent filter targets when dumping IntentResolvers.

Also add to pm's checkout output to include shared user ids,
and fix output formatting in a few places.

Change-Id: Ic9fc6731f0439101ba9343535e66cdbbad47e291
2014-11-21 15:23:13 -08:00
Yigit Boyar
24c2a7e736 Don't wipe out explicit Toolbar nav icon when calling setSupportActionBar
Bug: 18440924
Change-Id: I7221532d003fd0208cf91a5ffd9be24a7695bd3d
2014-11-21 15:19:43 -08:00
Sreeram Ramachandran
c2c0beab79 Allow VPNs to specify their underlying networks.
These are used when responding to getActiveNetworkInfo() (and cousins)
when an app is subject to the VPN.

Bug: 17460017
Change-Id: Ief7a840c760777a41d3358aa6b8e4cdd99c29f24
2014-11-21 09:26:18 -08:00
Adrian Roos
f8f56bce42 Fix DPM.resetPassword("")
While we're at it, also fix some multi-user issues in
LockPatternUtils.

Bug: 17496766
Change-Id: I8e557ea640fa589817c8f8f818c91463585d5ea7
2014-11-21 13:34:06 +01:00