Commit Graph

2704 Commits

Author SHA1 Message Date
Dianne Hackborn
6885d577cb am 8715dc14: am 4213e68f: am 3a7d5f71: Merge "Replace SEAndroid with SELinux."
* commit '8715dc1401557f5ec068f9214ab0712291a3b403':
  Replace SEAndroid with SELinux.
2013-09-25 11:48:40 -07:00
Dianne Hackborn
8715dc1401 am 4213e68f: am 3a7d5f71: Merge "Replace SEAndroid with SELinux."
* commit '4213e68f67d59c0912d2a8729fcec4539197756a':
  Replace SEAndroid with SELinux.
2013-09-25 11:45:38 -07:00
Dianne Hackborn
4213e68f67 am 3a7d5f71: Merge "Replace SEAndroid with SELinux."
* commit '3a7d5f71456b57f712b0f878beb5317f0ce6d564':
  Replace SEAndroid with SELinux.
2013-09-25 11:42:07 -07:00
Mike Lockwood
488bb0ed6a Cleanup Binder interface between sensorservice and BatteryStats
Change-Id: I6ba542cea242e252864d562ba62f3b8136f09f90
2013-09-25 09:27:18 -07:00
Dianne Hackborn
23ff9f6128 am 9b7d1484: am 5f86b90b: Merge "Fix issue #10848916: "Always" button is not working." into klp-dev
* commit '9b7d148466b1aedb24187294e0c59718afb104a0':
  Fix issue #10848916: "Always" button is not working.
2013-09-24 14:51:06 -07:00
Dianne Hackborn
6d8dfbd814 Fix issue #10848916: "Always" button is not working.
The problem was that the ResolverActivity filters some activities
out of the list it shows, but it uses that display list as the
list of components the preference is set against when ultimately
setting it on the package manager...  but that filtered list is *not*
the right component set, since it is not the same as the package
manager's view on it.

The fix here is to retain the original set of matching components
and use that when setting the preferred activity.  Note that this
does mean that in very unusual cases where filtering is happeing
(such as one of the activities not being exported but being seen
as a possible completion from another app), then you will be setting
the preference for the complete set.  Ultimately we probably need
to have the package manager apply these filtering rules up-front so
this is all consistent, but this is a very rare case so not that
important.

And then most of the change here is just improving the debug
output for intent resolution.

Change-Id: Ie35ac2c05a45946439951bbf41433c8b7de79c05
2013-09-24 14:16:38 -07:00
Chet Haase
e4039cc6bc am 5c69fd7d: am cfdc0369: Merge "Disable ActionBar usage of transitions" into klp-dev
* commit '5c69fd7d36af2d186fa3b654cf8b3e6eeb5596b9':
  Disable ActionBar usage of transitions
2013-09-24 14:04:01 -07:00
Chet Haase
d8d7c38533 Disable ActionBar usage of transitions
Various artifacts across apps were coming from ActionBar's use of
the new transitions framework. Disabling transitions for now to get
things back to a more stable state.

Also, fixed some related bugs in transitions themselves, including
a change in TextChange to account for text selection, which was causing
errors in Keep's SearchView.

Issue #10860557 TextChange animator may old stale value
Issue #10819685 sometimes icons are lighter
Issue #10750525 Share and Settings icons overlap when stopping slideshow
Issue #10839551 Sometimes the search text box is right-aligned in Keep
Issue #10727484 Cursor incorrectly positioned after entering first letter during search action in keep app

Change-Id: Iad7cbf3297e18018308b8148b3519b032e63dace
2013-09-23 14:49:39 -07:00
Jim Miller
3f943b1143 am f3d1ef00: am af638c4f: Merge "Add camera affordance to navigation bar on phones" into klp-dev
* commit 'f3d1ef00c571657bd0464d157905c6b4fae2136f':
  Add camera affordance to navigation bar on phones
2013-09-20 11:21:11 -07:00
Dianne Hackborn
9bef5b67dc resolved conflicts for merge of 20021b30 to master
Change-Id: Ie758de25a277ed0a25bf08e4cd2c57c9519bd52d
2013-09-20 10:40:34 -07:00
Jim Miller
af638c4f9d Merge "Add camera affordance to navigation bar on phones" into klp-dev 2013-09-20 01:33:28 +00:00
Jim Miller
caf24fc2c4 Add camera affordance to navigation bar on phones
This adds a camera button on phones that can be used to show
and launch the camera.

- Minor refactoring of touch event dispatch in PagedView.
- Disables usability hints when keyguard loads.
- Only add a touch handler for camera icon once during layout.
- Update after review.
- Updated with latest UX camera and camera background assets

Change-Id: I09cd5cb0e501fd0f4659bea96d00c92b07f805c4
2013-09-19 17:14:59 -07:00
Dianne Hackborn
3bc8f78d7a Implement issue #10691475: Kill cached processes if about to...
...be uncached and too large

When the device is in a low RAM state, when we go to pull a cached
process out to use for some background operation, we can now kill
the current process if we consider its size to be too large.

Note that the current implementation for killing processes is to
just use the same killUnneededProcessLocked() method that we already
have for other things like too many cached processes.  This is a
little wrong here, though, because in this case we are at the
point where the caller is actually looking for a process to use.
This current code is not actually removing or cleaning up the
process, so we still need to return the now killed ProcessRecord
and let things fall out from there, which typically means the caller
trying to make an IPC on it and failing and falling into its "oh
no the process died unexpectedly" path.  All code using this
*should* be able to handle this correctly, anyway, since processes
really can be killed at any time.

At some point we may to make this implementation cleaner, where it
actually tears down the process right in the call and returns a
null ProcessRecord.  That is very dangerous however (we'd need to
go through all paths into this to make sure they are going to be
okay with process state changing on them like that), and I'm not
sure it is really worthwhile.  This intention is that killing
processes like this is unusual, due to processes being too large,
and anyway as I wrote all of our incoming code paths must already
be able to handle the process being killed at this point and one
could argue this is just another way to excercise those code paths.
Really, the main negative to this is that we will often have spam
in the log with exceptions about processes dying unexpectedly.
If that is the only issue, we could just add some conditions to
quiet that up at in this case.

We don't want to compute the size of the process each time we try
to evaluate it here (it takes 10s or ms to do so), so there is now
a new field associated with the process to give us the last pss
size we computed for it while it was in the cached state.

To be able to have better cached pss data when we now need it, the
timing for computing process pss has been tuned to use a much
shorter delay for the situations when the process has first switch
into a new state.  This may result in us having a fair amount more
pss data overall, which is good, as long as it doesn't cause us to
be computing pss excessively and burning cpu.

Procstats now also has new state to keep track of the number of
times each process has been killed by this new system, along with
the min, avg, max pss of all the times it has happened.  This has
slightly changed the checkin format to include this additional data
at the end of pkgkills/prockills lines.

Other changes here:

- Fixed a problem where GPU RAM was not being seen when dumping
  the full RAM details of a process.  This was because in that
  case the system would ask the process to compute its own MemInfo,
  which it returned, but the process doesn't have permission to
  access the files containing the GPU RAM data.  So now the system
  always computes the MemInfo and hands it to the app.

- Improved broadcast delays to not apply the delay if the next receiver
  of the broadcast is going to run in the same process as the last
  one.  A situation I was seeing was an application that had two
  receivers, one of which started a service; we are better off letting
  the second receiver run while the service is running.

- Changed the alarm manager's TIME_TICK broadcast to be a foreground
  broadcast.  This really should have been anyway (it is supposed to
  go out even minute, on the minute, very accurately, for UI elements
  to update), and is even more important now that we are doing more
  things to delay background broadcasts.

- Reworked how we maintain the LRU process list.  It is now divided
  into the two parts, the top always containing the processes holding
  activities.  This better matches the semantics we want (always try
  to keep those around modulated by the LRU order we interleave with
  other cached processes), and we now know whether a process is being
  moved on the LRU list because of an activity operation so we can
  only change the order of these activity processes when user operations
  happen.  Further, this just makes that common code path a lot simpler
  and gets rid of all the old complexity that doesn't make sense any
  more.

Change-Id: I04933ec3931b96db70b2b6ac109c071698e124eb
2013-09-19 14:35:53 -07:00
Jim Miller
8b7ea57f8e am cd87d0ab: am f4292478: Merge "Fix keyguard/Keystore storage issue" into klp-dev
* commit 'cd87d0ab9623d5028d767e8167923c57aa2bac0d':
  Fix keyguard/Keystore storage issue
2013-09-18 17:06:21 -07:00
Jim Miller
f429247867 Merge "Fix keyguard/Keystore storage issue" into klp-dev 2013-09-19 00:00:22 +00:00
Amith Yamasani
8f61c7e858 am b129e946: am a6f387a0: Merge "Don\'t handle click if the resolver is already finishing." into klp-dev
* commit 'b129e9466f9715d5729ad5bf6c96bae5164014c1':
  Don't handle click if the resolver is already finishing.
2013-09-18 14:26:41 -07:00
Amith Yamasani
a6f387a055 Merge "Don't handle click if the resolver is already finishing." into klp-dev 2013-09-18 20:35:12 +00:00
Amith Yamasani
07cd351b4a Don't handle click if the resolver is already finishing.
Fixes bug that double tapping on an entry in the intent disambig dialog
can result in the picked activity being launched twice.

Bug: 10770501
Change-Id: Ibb7c6bea5f3c25fa204a2f0e65c8044c2a2549f7
2013-09-18 13:16:00 -07:00
Dianne Hackborn
397196870e am 12b22479: am 222920c4: Merge "Maybe fix issue #10797796: IllegalStateException in ProcessState..." into klp-dev
* commit '12b224799626a506ff3cb3c01cdfdc5b66bce5e3':
  Maybe fix issue #10797796: IllegalStateException in ProcessState...
2013-09-17 17:39:32 -07:00
Dianne Hackborn
222920c460 Merge "Maybe fix issue #10797796: IllegalStateException in ProcessState..." into klp-dev 2013-09-18 00:34:02 +00:00
Dianne Hackborn
53459a7020 Maybe fix issue #10797796: IllegalStateException in ProcessState...
...caused runtime restart

There were some situations where the package list could be set
with process stats when it shouldn't.  Not sure if this is causing
the problem, since there is no repro.

Also some improvements to debug output -- new commands to clear
all stats, print full details of stats, and print a one-day
summary (which should match what the UI shows).

Change-Id: I9581db4059d7bb094f79f2fe06c1ccff3e1a4e74
2013-09-17 17:30:34 -07:00
Alan Viverette
379c21518a Merge "Fix default style attr in DialogPreference subclass constructors" 2013-09-17 21:19:45 +00:00
Adam Powell
34155c49a5 am f35621da: am 70aafea9: Merge "Action bar transitions - handle expanding/collapsing action views" into klp-dev
* commit 'f35621da26346e434d8144e5280707bddbdd5bff':
  Action bar transitions - handle expanding/collapsing action views
2013-09-17 13:52:32 -07:00
Adam Powell
70aafea91e Merge "Action bar transitions - handle expanding/collapsing action views" into klp-dev 2013-09-17 20:47:08 +00:00
Adam Powell
c46d33393f Action bar transitions - handle expanding/collapsing action views
Make sure we beginDelayedTransition when we expand and collapse action
views, specifically before any callbacks go out that might alter the
hierarchy.

Change-Id: Iffc286cccd9be83ad03aeede605870ac12cc6bab
2013-09-17 10:08:41 -07:00
Dianne Hackborn
5f318189f2 am bb7a51e1: am 8a7a93e2: Merge "Work on issue #10771346: runtime restart" into klp-dev
* commit 'bb7a51e1ef28e26a8ead2c0cf3d6880081526d52':
  Work on issue #10771346: runtime restart
2013-09-16 18:50:01 -07:00
Dianne Hackborn
50ef0b62f0 Work on issue #10771346: runtime restart
Haven't found the underlying cause, but this will give us more
information when we get into the bad state.

Change-Id: I9aebd3a025a7c0d931f43098461b64ee3c220746
2013-09-16 17:40:27 -07:00
Jim Miller
de1af08dd3 Fix keyguard/Keystore storage issue
Keystore stored keys broke when keyguard was moved out of the system process
due to Keystore enforcing the calling app to be in the system process.

The fix moves the critical code into LockSettingsService, which continues
to live in the system process.

Fixes bug 10201270

Change-Id: I16e2de018e85b01265634dcfbefd7f06740dafa8
2013-09-16 15:34:26 -07:00
Alan Viverette
599d2a49e8 Fix default style attr in DialogPreference subclass constructors
BUG: 10751709
Change-Id: Ia7fa91e52881b46d39711d2adc43330014234a55
2013-09-16 13:48:29 -07:00
Daniel Sandler
e0339ab5a3 am c1c5e117: am 311daf20: Merge "New platlogo for K." into klp-dev
* commit 'c1c5e1177d0ad675c151a7081bd42eef9b0872d2':
  New platlogo for K.
2013-09-16 13:14:00 -07:00
Daniel Sandler
80c3c4e960 New platlogo for K.
Bug: 10605145
Change-Id: I23f285ec24118982b10f5d801b75925b9dc81c64
2013-09-16 14:40:03 -04:00
Daniel Sandler
fe904ecc97 am 48591ef6: am 28ed00d3: Merge "Fix RenderScript crash." into klp-dev
* commit '48591ef67e92bbb80a2a263b6813a8afcd9c2788':
  Fix RenderScript crash.
2013-09-16 08:29:46 -07:00
Daniel Sandler
a30b7035ce Fix RenderScript crash.
Also lay the groundwork for a future checkin.

Bug: 10240151
Bug: 10505742
Change-Id: I62d61c9048188c93863c8c43839e713b75a65102
2013-09-16 11:19:15 -04:00
Dianne Hackborn
14520b79fa am 38743f2a: am e39ced0f: Merge "Maybe fix issue #10748810: Runtime restart: crash under..." into klp-dev
* commit '38743f2a67259d8eab55c70cee7709ad7aac6e8f':
  Maybe fix issue #10748810: Runtime restart: crash under...
2013-09-13 18:48:05 -07:00
Dianne Hackborn
a0332377e1 Maybe fix issue #10748810: Runtime restart: crash under...
...ActivityManagerService.setProcessTrackerState

And if not, at least we'll have a little more debug info
when it happens again.

Change-Id: I685f0f72c2e1b17608a8d069d6c7f2cff2fd0abd
2013-09-13 18:34:13 -07:00
Alan Viverette
d17e719da0 Merge "Clean up layout constructors, make them consistent" 2013-09-14 01:22:45 +00:00
Adam Powell
f206b5935e am 3cfc5995: am 3157e73f: Merge "Don\'t recycle action button views" into klp-dev
* commit '3cfc5995bfa5d9d4c9203991131d76947c572b58':
  Don't recycle action button views
2013-09-13 17:30:48 -07:00
Dianne Hackborn
1cd9a73ac0 am f3b4cf7d: am 28eeb420: Merge "Implement #10749688: Improve low memory reporting" into klp-dev
* commit 'f3b4cf7d01b68418dd652e201868d140de081bd8':
  Implement #10749688: Improve low memory reporting
2013-09-13 17:30:31 -07:00
Adam Powell
3157e73fb0 Merge "Don't recycle action button views" into klp-dev 2013-09-13 23:46:38 +00:00
Dianne Hackborn
8e69257a9c Implement #10749688: Improve low memory reporting
This significantly reworks the logging we do when
all cached processes are killed:

- We now collect the list of processes in-place so we
  have a snapshot of exactly when the low memory situation
  happened.
- In that snapshot we include the key process state: oom
  adj, proc state, adj reasons.
- The report then asynchronously collects pss information
  for those processes.
- The ultimate data printed to the log looks like a mix
  between the "dumpsys meminfo" and "dumpsys activity"
  output.  This code no longer uses "dumpsys meminfo"
  itself, so some of that data is no longer included,
  in particular pss organized by allocation type.

In doing this, I realized that the existing code that is
supposed to run "procstats" is not currently working.  And
at that point I realized, really, when we are collecting
this pss data we'd really like to include all those native
processes using ghod-only-knows how much RAM.  And guess
what, we have a list of processes available in
ProcessCpuTracker.

So we now also collect and print information for native
processes, and we also do this for "dumpsys meminfo" which
really seems like a good thing when we are printing summaries
of all pss and such.

I also improved the code for reading /proc/meminfo to be
able to load all the interesting fields from there, and
am now printing that as well.

Change-Id: I9e7d13e9c07a8249c7a7e12e5433973b2c0fdc11
2013-09-13 16:02:01 -07:00
Adam Powell
76d915955f Don't recycle action button views
Recycling action button views interferes with transition
animations. Suppress menu item view recycling for them.

Change-Id: I69d7561e337be7e4a89b7cf30b6c9439f2d49cc2
2013-09-13 10:57:06 -07:00
Adam Powell
d488b785df am 179ba0c0: am a2906cb4: Merge "Show alternate menu panel on devices with menu key" into klp-dev
* commit '179ba0c04b446406d226cdfe866317d0d2bcecce':
  Show alternate menu panel on devices with menu key
2013-09-12 11:15:43 -07:00
Adam Powell
a2906cb4d9 Merge "Show alternate menu panel on devices with menu key" into klp-dev 2013-09-12 18:12:05 +00:00
Adam Powell
5fcf5b9fd3 Show alternate menu panel on devices with menu key
Provide a softer transition to the overflow-everywhere world for
devices with menu keys. The panel menu will still be used on these
devices in response to a menu key press even in the presence of an
action bar with overflow.

Fix a few lingering bugs around dispatching the open-overflow
transition that caused problems with this along the way.

Change-Id: I9d77c70f6d15c47160ac06292984101d619c44e6
2013-09-11 19:17:38 -07:00
Adam Powell
a395e70109 am 18149fcf: am 6847447d: Merge "Action bar refactoring and transitions" into klp-dev
* commit '18149fcf86eee3335b28b2c2373b585c4e18745a':
  Action bar refactoring and transitions
2013-09-11 17:23:37 -07:00
Adam Powell
ad79b90f21 Action bar refactoring and transitions
* Remove the extra occurrence of the Up caret view and reuse the
  standard home view.

* Use new transition APIs to animate changes in action bar content.

Change-Id: I7af3bb580ef4bff7d8dec9e21649b856fe73c77b
2013-09-10 18:09:03 -07:00
Alan Viverette
d6479ec5ee Clean up layout constructors, make them consistent
All constructors now flow through to each class's own 4-argument
constructor. This ensures that theme attributes are applied even
if a base AttributeSet is not provided.

BUG: 10680863
Change-Id: I727d2961bf017c6a5e0206367081670782583394
2013-09-10 17:03:02 -07:00
Alan Viverette
617feb99a0 Add View constructor that supplies a default style resource
Also updates the constructor of every class that extends View.

BUG: 10676369
Change-Id: Ifaf27bf82028d180afa4931c0e906df88d858ac3
2013-09-09 18:09:13 -07:00
Mindy Pereira
99cea983de Merge "Update default ramp up time for autoscroller." into klp-dev 2013-09-09 20:51:16 +00:00
Dianne Hackborn
80213addda Merge "Fix issue #10671878: Proc stats needs to remove old data structures" into klp-dev 2013-09-09 20:37:02 +00:00