Commit Graph

53506 Commits

Author SHA1 Message Date
Dianne Hackborn
1d4247c4cc Merge "Improve tracking of screen on reasons." into mnc-dev 2015-07-15 17:11:12 +00:00
Dianne Hackborn
280a64e793 Improve tracking of screen on reasons.
- New screen on app op to record the last time each app has
  caused the screen to be turned on.
- New battery stats event that tells us the reason the screen
  has been asked to turn on.
- Propagate out power manager API to specify the reason a caller
  is asking to have the screen turned on.

Note that currently the window flag to turn the screen on bypasses
much of this because it is being handled in the window manager by
just directly telling the power manager to turn the screen on.  To
make this better we need a new API where it can specify who it is
calling the API for.

Change-Id: I667e56cb1f80508d054da004db667efbcc22e971
2015-07-15 09:59:07 -07:00
George Mount
503ad9ee0d Merge "Fix input pause without resume." into mnc-dev 2015-07-15 14:12:28 +00:00
Adam Powell
18709f9a00 Merge "Relax strict ActionMode instance checking when finishing action modes" into mnc-dev 2015-07-15 02:31:21 +00:00
Adam Powell
c3cb6c9b22 Relax strict ActionMode instance checking when finishing action modes
In previous platform versions, finishing an action mode would clean up
the current action mode even if it was not the same ActionMode
instance. Some common shared code inadvertently relied on this
behavior, so stay bug-compatible with it based on targetSdkVersion.
New apps will get the stricter behavior.

Bug 22265882

Change-Id: Id5d6341aefc07a3cb788d5d6d0b531816f761e42
2015-07-14 19:08:39 -07:00
Dianne Hackborn
f1f8b9cc3f Merge "Fix issue #21626564: MMS should be receivied while Dozing" into mnc-dev 2015-07-15 01:45:44 +00:00
Fyodor Kupolov
4044440d2c Merge "Require ACCESS_COARSE_LOCATION for ACTION_FOUND broadcast" into mnc-dev 2015-07-15 01:34:43 +00:00
Dianne Hackborn
fd854ee58c Fix issue #21626564: MMS should be receivied while Dozing
We now place whoever is receiving the MMS on the temporary
whitelist while doing so, so they can get network access to
download it.

There was also an issue that needed to be fixed where we
were no longer updating the list of allowed uids while
dozing based on their proc states...  we now do that.

Also did a bit of optimization of the temp white list update
path do the network policy manager, instead of going through
a broadcast we now directly call in to the network policy
manager.  This also allows us to have a synchronous version
of updating the list, so we can know the app has network access
before we tell it to do anything.

Finally added battery stats events for things going on and off
the whitelist so we can diagnose the behavior there.

Change-Id: Ic7fe010af680034d9f8cb014bb135b2addef7455
2015-07-14 18:33:08 -07:00
Fyodor Kupolov
987241265b Merge "Added sendBroadcastMultiplePermissions method" into mnc-dev 2015-07-15 00:48:40 +00:00
Adam Lesinski
267240f2dd Merge "BatteryStats: Clear power use when removing a UID from uid_cputime kernel module" into mnc-dev 2015-07-15 00:30:20 +00:00
Fyodor Kupolov
d4fd8c766d Added sendBroadcastMultiplePermissions method
Added Context.sendBroadcastMultiplePermissions(Intent intent, String[]
receiverPermissions) method, which allows an array of required permissions
to be enforced.

Bug: 21852542
Change-Id: I27c9130e8f004b428452501ebc8a36aabde1f343
2015-07-14 17:25:42 -07:00
Adam Lesinski
bdb0273455 BatteryStats: Clear power use when removing a UID from uid_cputime kernel module
Bug:22461683
Change-Id: Iffb847268d2872bd2a843e28dc41fa22b1e36828
2015-07-14 16:51:53 -07:00
Adam Lesinski
d4c1861a53 Merge "BatteryStats: Fix units in wakelock distribution calculation" into mnc-dev 2015-07-14 23:00:24 +00:00
Yin-Chia Yeh
b42cb352a3 Merge "Camera: clarify largest JPEG dimension expectation" into mnc-dev 2015-07-14 22:53:11 +00:00
Fyodor Kupolov
4a817924ec Merge "Revert "Allow array of required permissions in sendBroadcast"" into mnc-dev 2015-07-14 22:43:47 +00:00
Fyodor Kupolov
e37520b49d Revert "Allow array of required permissions in sendBroadcast"
This reverts commit b4e7283c9a.

Change-Id: Ie8390964bda5bdfa869cee8f46584043d8e7c664
2015-07-14 22:29:21 +00:00
Fyodor Kupolov
d69a82c107 Merge "Allow array of required permissions in sendBroadcast" into mnc-dev 2015-07-14 21:57:34 +00:00
Jeff Sharkey
d3719ab07a Merge "Better handling of storage paths." into mnc-dev 2015-07-14 20:53:16 +00:00
Chien-Yu Chen
6eec00ecf4 Merge "Camera: Reconnect after camera service crashes" into mnc-dev 2015-07-14 20:48:56 +00:00
Adam Lesinski
062e66cb15 BatteryStats: Fix units in wakelock distribution calculation
This is mostly for checkin stats, this is not used in any computation.

Bug:22468534
Bug:22391540
Change-Id: Ib3d0c86db5044092d3d76acf8f001337272af2ff
2015-07-14 20:27:20 +00:00
Andrew Solovay
353886b2dd am e67416ec: am 4859a612: Merge "docs: Clarified how to find out when a switch is toggled" into mnc-preview-docs
* commit 'e67416eccc6092e2fce3619b2244deda36fabd26':
  docs: Clarified how to find out when a switch is toggled
2015-07-14 20:22:59 +00:00
Adam Lesinski
92a3914fb3 Merge "BatteryStats: Remove uid_cputime Slog.wtf for high cpu times" into mnc-dev 2015-07-14 20:08:43 +00:00
Jeff Sharkey
983294596e Better handling of storage paths.
Give more details about why we failed to create storage paths, and
search for underlying volumes using canonical paths.

Bug: 22135060
Change-Id: I75d3584403ece310438b05f5b9fe72d94c9096c6
2015-07-14 13:08:22 -07:00
Andrew Solovay
e67416eccc am 4859a612: Merge "docs: Clarified how to find out when a switch is toggled" into mnc-preview-docs
* commit '4859a6125bcf967cf97339b19f30d9788b971e02':
  docs: Clarified how to find out when a switch is toggled
2015-07-14 20:08:00 +00:00
Fyodor Kupolov
b4e7283c9a Allow array of required permissions in sendBroadcast
Added Context.sendBroadcast(Intent intent, String[] receiverPermissions)
method, which allows an array of required permissions to be enforced.

Bug: 21852542
Change-Id: I3b8ff258fa9f3249c344bb8093b820b24eef00c0
2015-07-14 12:50:22 -07:00
Fyodor Kupolov
72f491dd86 Require ACCESS_COARSE_LOCATION for ACTION_FOUND broadcast
Receivers of ACTION_FOUND intent are now required to have
ACCESS_COARSE_LOCATION permission.

Bug: 21852542
Change-Id: I8306f7431f067ca36bfc568a912385153fa3d496
2015-07-14 11:38:58 -07:00
Adam Lesinski
67eea87e0d BatteryStats: Remove uid_cputime Slog.wtf for high cpu times
High cpu times are expected as multiple cores can be running at the
same time, so comparing against the time between samples is incorrect.

I am reasonable certain that the values we see now are correct, so disabling this
check. However, checking for negative values (overflows) is still enabled and
will remain enabled because there is no case where we will be ok with negative deltas.

Bug:22461683
Change-Id: If9c7cdbb75ceaed059d1e0f4dd83cfdd3e021a93
2015-07-14 11:33:53 -07:00
Marco Nelissen
3ced96178b Merge "Use original path if translated path doesn't exist" into mnc-dev 2015-07-14 17:30:06 +00:00
Craig Lafayette
2f0116fa3a Merge "Prevent null allowableAccounts from crashing" into mnc-dev 2015-07-14 17:25:40 +00:00
George Mount
80141d1c8b Fix input pause without resume.
Bug 22455206

Previously, when an exit activity transition was created, the input
would be paused. This worked fine as long as the transition was
run. However, sometimes that transition wasn't run and this would
cause the input to fail to be started again.

This fix moves the input pause to when the transition is started.

Change-Id: I738d5471f7932f00b50897f87a8f8a71ecbc57e2
2015-07-14 10:03:06 -07:00
Yohei Yukawa
12952c7952 Merge "Allow FloatingToolbar to be outside of the attached window." into mnc-dev 2015-07-14 15:35:57 +00:00
Marco Nelissen
aa41103668 Use original path if translated path doesn't exist
Bug: 22376538
Change-Id: I2f6af4fa31c097e2e2d619a068cf83721091c450
2015-07-14 08:25:23 -07:00
Craig Lafayette
3c9c71d36e Prevent null allowableAccounts from crashing
The javadoc for newChooseAccountIntent says that a null
value for the allowableAccounts parameter is valid and
an acceptable default. This CL makes sure that when this
parameter is null, a NullPointerException is not thrown.

Bug: 22475546
Change-Id: Ieb0d67dd02628e1ae5629499b3be3c6382efc9aa
2015-07-14 11:09:58 -04:00
Yohei Yukawa
bafc908304 Allow FloatingToolbar to be outside of the attached window.
Currently PopupWindow used for the floating toolbar specifies
neither FLAG_LAYOUT_NO_LIMITS nor FLAG_LAYOUT_IN_SCREEN.
As a result, the floating toolbar can overlap the selected
text when the attached window does not have enough height.

Here is the repro code.

    final TextView textView = new TextView(this);
    textView.setLayoutParams(
            new ViewGroup.LayoutParams(
                    ViewGroup.LayoutParams.MATCH_PARENT,
                    ViewGroup.LayoutParams.WRAP_CONTENT));
    textView.setText("A test sentence.");
    textView.setTextIsSelectable(true);
    final AlertDialog dialog = new AlertDialog.Builder(this)
            .setView(textView)
            .create();
    dialog.getWindow().setGravity(Gravity.BOTTOM)
    dialog.show();

If you tap a word in the dialog, the floating toolbar
unintentionally overlaps the selected text due to the limited
height of the AlertDialog.

It also turns out that just calling
  PopupWindow.setClippingEnabled(false)
to specify FLAG_LAYOUT_NO_LIMITS is not sufficient and ends up
showing the toolbar on the NavBar because we have mistakenly
compared bounds in window-local coordinates
(e.g. FloatingActionModemContentRectOnWindow) with bounds in
screen coordinates (e.g. FloatingActionMode#mScreenRect).
Hence the confusion of window-local coordinates and screen
coordinates in FloatingToolbar and FloatingToolbar also needs
to be addresses.

To summarize here are the notable changes in this CL:
  - Specify FLAG_LAYOUT_NO_LIMITS so that the floating
    toolbar can be placed outside of the attached window.
    (We do this with PopupWindow#setClippingEnabled)
  - Switch to use screen coordinates from window-local
    coordiantes in FloatingToolbar and FloatingActionMode
    because some system components such as WindowManager
    prefer screen coordinates.
  - Put -OnScreen suffix for Rect and Point variables
    as long as they are in screen coordinates.

Bug: 22335001
Change-Id: I71a8d356e868dc7715b030ca1078da4ec39368c3
2015-07-14 05:59:05 -07:00
Andrei Stingaceanu
5396c131c0 Fix "Select All" in extracted mode
Stop calling onExtractTextContextMenuItem if "Select All"
is selected (the action does not modify text thus does
not need batch editing). Editor#finishBatchEdit reports
that text changed which in turn can stop the action mode
and the selection after it was started by onPreDraw.

Bug: 22059417
Change-Id: I5354cbe4bae374e0d5f3de39616336170ee33b92
2015-07-14 11:37:28 +01:00
Andrei Stingaceanu
a9b9907f3c Merge "Fix insertion handle disappearing in extract mode" into mnc-dev 2015-07-14 09:57:24 +00:00
Erik Kline
7761294027 Merge "Log NetworkRequestInfo to get more detailed history" into mnc-dev 2015-07-14 04:09:29 +00:00
Zach Johnson
569ff225a3 Fix BluetoothSocket file descriptor leak
Sockets accepted on a server socket didn't populate
the mPfd field, which is used to close out the java
end of the native-and-java communication socket when
the overall rfcomm socket is closed. #badnewsbears

b/21398841

Change-Id: I3adb0a9965f83d0f3006fa4f79ea4abeab5c9a17
2015-07-14 03:40:49 +00:00
Erik Kline
7523eb349e Log NetworkRequestInfo to get more detailed history
Bug: 21641983
Bug: 22235775
Bug: 22299819
Bug: 22358164
Change-Id: I48a2d162dd499a3590f06d805267a63822856969
2015-07-14 11:46:51 +09:00
Svet Ganov
8cee6587e0 Merge "Teach storage appops." into mnc-dev 2015-07-14 01:24:37 +00:00
Svet Ganov
6ee871e598 Teach storage appops.
For modern apps targeting M SDK and up the external storage state
is deterined by granted permissions. For apps targeting older SDK
the storage access is determined by app ops correspning to the
storage permissions as the latter are always granted.

When app ops change we do not remount as we kill the app process
in both cases enabling and disabling an app op since legacy code
is not prepared for dynamic behavior where an operation that failed
may next succeed. Hence, we remount when we start the app.

For modern apps we don't kill the app process on a permission
grant, therefore we synchronously remount the app storage.

bug:22104923

Change-Id: I601c19c764a74c2d15bea6630d0f5fdc52bf6a5a
2015-07-13 18:22:30 -07:00
Christopher Tate
288ecf98f1 Merge "Prioritize most-recently-enabled link-handling app" into mnc-dev 2015-07-14 00:56:58 +00:00
Chien-Yu Chen
0f69b4655f Camera: Reconnect after camera service crashes
Schedule a reconnection after camera service crashes if any client
registered a camera availability callback or torch status callback.

Bug: 407755
Change-Id: Iabe0bf713863898ca468cff59d4c97c66a802630
2015-07-13 17:46:04 -07:00
Christopher Tate
f0d6cb38c4 Prioritize most-recently-enabled link-handling app
In the case when multiple apps handle a given web-link action,
all of which have been marked as "launch the app instead of a
browser" and so are otherwise ambiguous, always prefer the app
that was most recently placed into the always-handle-links state.

Bug 22051035

Change-Id: I3f43c19b0d7b74e9843445e41971bb5433affb1c
2015-07-13 17:01:14 -07:00
John Reck
f96d9c5421 Merge "Improve resource loading by ~3x" into mnc-dev 2015-07-13 21:50:28 +00:00
John Reck
4feb326015 Improve resource loading by ~3x
Bug: 22392651

ColorStateLists were never cached because the lazy-create
of the constant state had a typo.

Resource caching in general was broken because ThemeKey did not
clone the hash code, so all keys in the cache had a hashCode
of 0 which did not match the real, uncloned ThemeKeys hash code
so the binary search in ArrayMap based off of hash code was failing.

Change-Id: I9df1628b226bfa797bed97875354c19bf64f41ad
2015-07-13 14:42:43 -07:00
Aravind Akella
37511e35ae Merge "Log full class name of the client activating sensors for better debugging." into mnc-dev 2015-07-13 18:21:37 +00:00
Chris Wren
208934ff01 Merge "fix build by restoring deleted enum" into mnc-dev 2015-07-13 17:41:49 +00:00
Julia Reynolds
fbd0a444e7 Merge "Remove personal/device group from sideloading screen." into mnc-dev 2015-07-13 17:34:20 +00:00
Chris Wren
8cba70fb05 fix build by restoring deleted enum
Bug: 21114836
Change-Id: Ied4a6e48c66f882f43343a21bce0b3ccccd81713
2015-07-13 12:59:01 -04:00