Commit Graph

62444 Commits

Author SHA1 Message Date
Adam Powell
eba13dd07f Prevent duplicate loader onLoadFinished calls on config change
Loaders report entering the started state in two places, once from
their host callbacks and once when moving into their host fragment's
starting state. In the former, we will also deliver load results if
we're finishing a retained cycle.

In practice, the individual fragment start happens first which clears
the report-next-start flag, then the finishRetain step sees that flag
is cleared and dispatches the finished load results again. Change
reportStart to only call onLoadFinished if we are not finishing up a
retain step.

Bug 28074512

Change-Id: I85b848f7d7b239c8fac5aec8f0c91e4eea6bcebf
2016-04-11 14:26:58 -07:00
Benjamin Franz
3f7fdaaa76 Merge "Revert "Throw security exception for non-parent aware APIs"" into nyc-dev 2016-04-11 14:32:49 +00:00
Lorenzo Colitti
b89d33ee44 Merge changes Ic2c84de7,I379aef92 into nyc-dev
* changes:
  Remove duplicated code in NetworkStateTrackerHandler.
  Improve Tethering and NativeDaemonConnector logging.
2016-04-11 14:27:31 +00:00
Benjamin Franz
a26c626564 Revert "Throw security exception for non-parent aware APIs"
This reverts commit bd7ae782ed.

Bug: 28107853

Change-Id: Ic286d9a181e96b8eb9826dab9ed297e0e4dfa6de
2016-04-11 12:43:17 +00:00
Yohei Yukawa
a8c81c1a80 Merge "Fix inefficient CursorAnchorInfo#hashCode()." into nyc-dev 2016-04-11 09:49:23 +00:00
Clara Bayarri
738ab04fd9 Merge "Expose the Keyboard Shortcuts Helper in Activity" into nyc-dev 2016-04-11 09:43:16 +00:00
Lorenzo Colitti
cd63d247f0 Improve Tethering and NativeDaemonConnector logging.
1. Deduplicate the Tethering message numbers, and use MessageUtils
   to convert them to strings.
2. Add a warning to NativeDaemonConnector when an unsolicited
   event is more than 500ms late or takes more than 500ms to
   process.

Bug: 27857665
Change-Id: I379aef9257027d1ccf30906e79c6389ef1f95420
2016-04-11 17:40:21 +09:00
Yohei Yukawa
b7edebc8ad Fix inefficient CursorAnchorInfo#hashCode().
It turns out that the current CursorAnchorInfo#equals() is quite
inefficient because our CursorAnchorInfo#hashCode() tries to use almost
all the fields.  Even worse, as Matrix#hashCode() is hard-coded to 44,
we get the same hashCode() when comparing two CursorAnchorInfo objects
that are different only in transformation Matrix after such a complex
hash calculation.

In the real world scenarios, most likely calculation hash code only from
Matrix and composing text would be good enough for our use case, because
the former can cover UI scrolling scenario and the latter can cover the
text typing scenario.  More complex hash calculation is probably
inefficient.

With this CL, CursorAnchorInfo#hashCode() is pre-calculated only from
those two fields, and carefully reorder comparisons in
CursorAnchorInfo#equals() to improve the likelihood of returning false
with fewer comparisons.

Bug: 28105733
Change-Id: Id896adeab5ffe87ceddb2c2762d6d91475e28ec4
2016-04-11 01:38:23 -07:00
Jeff Sharkey
2e3ce4ca46 Merge "Use inode numbers for CE storage." into nyc-dev 2016-04-11 06:12:37 +00:00
Jeff Sharkey
f06de20835 Merge "Relax SparseMappingTable Slog.wtf()." into nyc-dev 2016-04-11 05:50:41 +00:00
Jeff Sharkey
04b70fc63a Relax SparseMappingTable Slog.wtf().
When it's triggered, it happens with such frequency that it can DoS
the system server.

Bug: 28104329

Change-Id: I5c58e5f5bf4d88af2cb6215bcfddf35704e22eaa
2016-04-10 23:46:12 -06:00
Jeff Sharkey
4288419787 Use inode numbers for CE storage.
Certain operations, such as clearing/destroying app data, or just
counting on-disk size, require us to know the CE storage directory
of a particular app.  To facilitate these operations, offer a method
to get the inode of a CE directory, and accept that inode number
for later operations.  Collect and store the inode number in
PackageUserState for future use when that user's CE storage is
still locked.  This design means it's safe to clear/destroy app
data in both CE/DE storage at the same time.

Move most installd-related methods to a uniform calling convention
that accepts a single parent PackageParser.Package, and internally
fans out to handle all "leaf" packages under that parent.

In previous releases, we started installing apps using a new
directory-based layout, where all app code, unpacked native libraries,
and optimized code is bundled together.  So now we only have a single
path to measure for code size.  This fixes several outstanding bugs
that were causing sizes to be miscounted for apps supporting multiple
architectures.

Fix a subtle bug in PackageSettings that would cause "notLaunched"
to be parsed incorrectly.

Bug: 27828915, 27197819
Change-Id: Ia582cf3550553292bde4bb4313367111332913ec
2016-04-10 23:26:09 -06:00
Yohei Yukawa
d39ae85482 Shift+Meta+Space should reverse-rotate subtypes.
This is a follow up CL to my previous CL [1], which added a new key
binding Meta+Space to rotate enabled IME subtypes.  With this CL,
Shift+Meta+Space starts reverse-rotating enabled IME subtypes as
originally planed.

 [1]: I4005692215edfcf8bed3e86b1e07000148f986f5
      ae61f7118a

Bug: 25753404
Bug: 28103839
Change-Id: I3694edd80be6dfe18b90360e24ae4d451b331928
2016-04-10 20:28:40 -07:00
Yohei Yukawa
757224008e Revert "Customizes input extract edit view for Wear"
This reverts commit 880602eb64 [1],
which was committed with a wrong author email address and lacked license
notice in some files.  To avoid confusion, this we decided to
temporarily revert that CL so that we can commit it with proper license
notice and author address again.

 [1]: I16226ce393f2d15065d08e66a36d008eb1a0c8a1

Bug: 22512982
Bug: 28098677
Change-Id: I3dd3c7bf0ee9634fc4f3bf433bf5023675873e46
2016-04-09 15:24:02 -07:00
Jorim Jaggi
c3769ae3f3 Merge "Disable snap targets that make apps <220dp" into nyc-dev 2016-04-09 07:07:02 +00:00
Jorim Jaggi
19cf297258 Disable snap targets that make apps <220dp
- Make minimal task size 220dp.
- Disable upper and lower targets if they result in less
than 220dp task size.
- If even the middle target doesn't allow 220dp task size,
disable entering split screen altogether.

Bug: 26451260
Change-Id: I06e358c9b3da0172c5def75cdadf975f87f9fa57
2016-04-09 00:02:49 -07:00
Jorim Jaggi
fe52f91f0c Merge "Only force drawing status bar background if target >= N" into nyc-dev 2016-04-09 04:04:35 +00:00
Jorim Jaggi
8f5701bd9f Only force drawing status bar background if target >= N
Since forcing it all the time has the potential of breaking
compatibility with apps, we don't want to do this.

Instead, we only force it if the app targets >= N.

We communicate this to window manager with
PRIVATE_FLAG_FORCE_DRAW_STATUS_BAR_BACKGROUND.

We introduced this for 2-up split-screen. If we have an app
that doesn't draw the status bar background by itself, we
just force the whole bar to be black.

The same applies for windows that used translucent status
bar - we also force the whole bar to be black

Bug: 27285627
Change-Id: I7f1ceaa364f8a4e851935f77aa5e8d913bf11791
2016-04-08 20:49:20 -07:00
Jack Yu
2e062ab8de Merge "Excluded certain APNs (e.g. IMS) from mobile data usage." into nyc-dev 2016-04-09 03:30:31 +00:00
Jorim Jaggi
b2005a0217 Fix BackdropFrameRenderer leak
Make sure to stop the thread when the window gets detached. When dismissing
the docked/fullscreen stack with the divider, we stop the activity while
we are still in resizing mode.

Bug: 28054032
Change-Id: I2d5d0ffaa9bc47e4d5252414b9a045beaebb7a69
2016-04-09 01:07:34 +00:00
Amith Yamasani
0cc0381714 Merge "Improved javadoc for onLocalVoiceInteractionStopped" into nyc-dev 2016-04-09 00:47:23 +00:00
Zhijun He
b0fe2a9637 Merge "Camera2: update API per API council review" into nyc-dev 2016-04-08 23:30:41 +00:00
Zhijun He
0034743236 Camera2: update API per API council review
Per API concil recommendation, made below API change:
* change method name from createCaptureSessionByOutputConfiguration to
createCaptureSessionByOutputConfigurations
* Change method name from
createReprocessableCaptureSessionWithConfigurations to
createReprocessableCaptureSessionByConfigurations

Bug: 27950067
Change-Id: I8346d384210556a40bc2544c3660cc4819f304a1
2016-04-08 23:21:06 +00:00
Phil Weaver
af93306a3d Merge "Reduce unnecessary accessibility cache clearing." into nyc-dev 2016-04-08 22:33:33 +00:00
Tenghui Zhu
3cb5ba75b7 Merge "Update the documentation on createCircularReveal" into nyc-dev 2016-04-08 21:24:04 +00:00
Joe Onorato
e93fecf9a3 Merge "This assert is triggering when it shouldn't be. Disable it for now." into nyc-dev 2016-04-08 21:12:06 +00:00
Bryce Lee
196a05724d Merge "Add granular control over disabled effects." into nyc-dev 2016-04-08 20:59:10 +00:00
Mark Renouf
880602eb64 Customizes input extract edit view for Wear
Provides an alternate presentation of the extract edit area
of an input method window, designed for sub 250dp width screens.

An icon is used on a round material style button in place of a text
action, providing more horizontal space for the editing area.

BUG: 22512982
Change-Id: I16226ce393f2d15065d08e66a36d008eb1a0c8a1
(cherry picked from commit fd71a6a5d99bad5d3ab32edc328fb5b026b66215)
2016-04-08 16:56:25 -04:00
Julia Reynolds
3898db9e15 Merge "Allow the ranker to autobundle notifications." into nyc-dev 2016-04-08 20:13:45 +00:00
Phil Weaver
e37cfab6c6 Reduce unnecessary accessibility cache clearing.
Tracking if accessibility focus is being cleared because it is being
set to another view in the same window. In this case, leave
accessibility focus on the window.

This change greatly reduces the amount of cache re-indexing.
Previously we flushed the cache every time accessibility focus moved.

Bug: 28077283
Change-Id: If80899d36e7f58b22635f844bdd4ea37a55b875e
2016-04-08 13:06:44 -07:00
Jason Monk
aa336f8926 Merge "Allow mode of TileService to be changed" into nyc-dev 2016-04-08 19:37:55 +00:00
Dianne Hackborn
6827db3e5f Merge "Fix issue #28075893: Don't hold strong refs on to JobService" into nyc-dev 2016-04-08 19:28:42 +00:00
Adam Powell
fe5e1a75c1 Merge "Chooser filtering and caller direct share targets" into nyc-dev 2016-04-08 19:20:25 +00:00
Andrii Kulian
21400cb552 Merge "Fix multiple configuration changes in multiwindow" into nyc-dev 2016-04-08 19:05:20 +00:00
Andrii Kulian
701214b282 Fix multiple configuration changes in multiwindow
When in split-screen mode and activity handles configuration changes
it gets 2 onConfigurationChanged calls which originate from
ActivityManagerService#updateConfigurationLocked:
1. app.thread.scheduleConfigurationChanged calls to all process records
   send configuration of the whole screen for corresponding orientation,
   which leads to CONFIGURATION_CHANGED message in ActivityThread.
2. mStackSupervisor.resizeStackLocked call resizes both visible stacks and
   eventually ActivityThread receives ACTIVITY_CONFIGURATION_CHANGED
   message with correct configuration corresponding to space occupied in
   split-screen.

In this CL if component callback is an instance of Activity and it had
override config set - onConfigurationChanged will not be triggered unless
override config has changed.

Bug: 27948331
Change-Id: Ia73b045570b44eb5b351811bf6c4f63d78c3f909
2016-04-08 11:58:43 -07:00
Phil Weaver
ab4d5ffd12 Merge "Eliminate side effects of a11y window title." into nyc-dev 2016-04-08 18:22:02 +00:00
Doris Liu
0e89f98044 Merge "Improve error logging for parsing failures" into nyc-dev 2016-04-08 18:02:51 +00:00
Doris Liu
0a1a5167be Improve error logging for parsing failures
Bug: 27043594
Change-Id: I901b65f734c49444a78e0714e007e15e2340ab9d
2016-04-08 18:01:54 +00:00
Julia Reynolds
e46bb37acf Allow the ranker to autobundle notifications.
Bug: 26709317
Change-Id: I5017a471604e513a7b582cdc2f3472441e108fae
2016-04-08 13:55:03 -04:00
Bryce Lee
7219adadb0 Add granular control over disabled effects.
Currently, we can only wholesale disable effects outside of zen mode.
There are some devices that require long running suppression of features.
Effects disabling was added previously to support this. However, calling
suppression was broken recently on a device where we needed notification
suppression, but not calling suppression.

This CL remedies this problem by adding more granular disabled effects
hints. The NotificationManagerService has been updated to handle these
request types and present ZenModeHelper with a unified map of what should
be suppressed.

Bug: 27992763
Change-Id: I38b4706446dfd6e1c3eb97266dbc3332b250adda
2016-04-08 10:54:23 -07:00
Amith Yamasani
d8d967e425 Improved javadoc for onLocalVoiceInteractionStopped
Improved docs per API review: b/27365473

Change-Id: I8e2fd5291ecf3c41b4c1fa4df62b0dc69597c122
2016-04-08 09:57:01 -07:00
Jason Monk
97d2272be0 Allow mode of TileService to be changed
Since the mode of a tile service was set in onTileAdded, it couldn't
be controlled by developers if they updated their tile.  To handle
the mode has been moved to a boolean meta-data flag to indicate
a tile should be an active tile.

Bug: 28043969
Change-Id: I6403d34f8cb70809edc07769389d5a1f835c1ab3
2016-04-08 11:42:57 -04:00
Adam Powell
52c39215db Chooser filtering and caller direct share targets
Let apps invoking the system chooser specify components to filter out
such as themselves; this will prevent duplicate nonsensical UX where
it doesn't make sense for an app to share to itself.

Similarly, let apps provide their own Direct Share targets for when
they do want to let users share via their own internal services in the
same UI. These options can be used together.

Also fix a bug where a lingering binder reference from a remote
ChooserTargetService that hasn't been GC'd in the remote process could
keep an active reference to a ChooserActivity instance.

Bug 28073484

Change-Id: Ib613b1153b49dfedf79574b1af7c45379eceec24
2016-04-08 08:40:38 -07:00
John Reck
c724dcf23c Merge "Make stopped state a first-class thing" into nyc-dev 2016-04-08 15:09:42 +00:00
Gustav Sennton
1d16d773b0 Merge "Create WebViewUpdateServiceImpl to move implementation there." into nyc-dev 2016-04-08 14:25:59 +00:00
Benjamin Franz
5c1fbadb1a Merge "Throw security exception for non-parent aware APIs" into nyc-dev 2016-04-08 12:02:26 +00:00
Rubin Xu
1b2300b065 Merge "Relaunch previous activity after turning work profile on" into nyc-dev 2016-04-08 09:20:46 +00:00
Ruchi Kandoi
0f36ba81e7 Merge "batteryService: Add Charge Counter." into nyc-dev 2016-04-08 01:09:24 +00:00
Ruchi Kandoi
6361e22fea batteryService: Add Charge Counter.
Bug: 27174034
Change-Id: Ib8bc8f617288c0ad543c67e0fa609c5a0c87b5fd
Signed-off-by: Ruchi Kandoi <kandoiruchi@google.com>
2016-04-08 01:09:02 +00:00
Dianne Hackborn
0796e9fb3d Fix issue #28075893: Don't hold strong refs on to JobService
Change-Id: I822adaee953be9b14213def001b174d5c348fa14
2016-04-07 17:29:36 -07:00