Commit Graph

68558 Commits

Author SHA1 Message Date
Evan Rosky
f114667f2d Merge "Allow ToolbarActionBar to pass-through unhandled keyShortcuts" into oc-dev 2017-03-30 16:46:27 +00:00
TreeHugger Robot
8386603230 Merge "Fix getting wrong instance when restoring non-config" into oc-dev 2017-03-30 16:27:41 +00:00
TreeHugger Robot
dfbc8517ee Merge "Rename ACTION_VOICEMAIL_SMS_RECEIVED" into oc-dev 2017-03-30 01:51:56 +00:00
TreeHugger Robot
ce3cf36652 Merge "Make public getFragments() and onGetLayoutInflater() methods" into oc-dev 2017-03-30 01:26:13 +00:00
TreeHugger Robot
4e7bc119ae Merge "Add new internal API: enableOptionalCodecs()/disableOptionalCodecs()" into oc-dev 2017-03-30 01:17:23 +00:00
Evan Rosky
7ac3fb2282 Merge "Expose initial focus feature flag for testing" into oc-dev 2017-03-30 01:02:28 +00:00
Evan Rosky
37af93ad1c Merge "Allow cluster navigation to jump into touchscreenBlocksFocus" into oc-dev 2017-03-30 00:22:40 +00:00
Evan Rosky
c46203785c Allow ToolbarActionBar to pass-through unhandled keyShortcuts
It was consuming all keyShortcuts which broke system hotkeys
like shift+tab.

In order to prevent the decor/phonewindow from creating menus,
this creates a dummy view in onCreatePanelView.

This also includes a change to Activity to not send KEYCODE_TAB
keystrokes to the defaulthandler. This was preventing keyboard
navigation from working on any activity that had a default
search fallback.

Bug: 32482282
Bug: 18021345
Test: Added a CTS test (ToolbarTest#testKeyShortcuts) for toolbar
      keyShortcuts. Verified Tab-navigation works in Play Store.
Change-Id: I5c732a2b21219157818bed49576debd20d5a8178
(cherry picked from commit b22faf524e)
2017-03-29 23:41:47 +00:00
TreeHugger Robot
84eecd2532 Merge "Expose ACCESSIBILITY_CAPTIONING_* to Instant Apps" into oc-dev 2017-03-29 23:25:57 +00:00
TreeHugger Robot
6c3e92bbe9 Merge "Mention <intent> can't have string resources." into oc-dev 2017-03-29 23:24:42 +00:00
Pavlin Radoslavov
011597b5a9 Add new internal API: enableOptionalCodecs()/disableOptionalCodecs()
This API can be used to enable the optional codecs, or disable them
and use only the mandatory SBC.
Internally, it is implemented by raising the SBC priority to
highest (so SBC will be used/selected), or reducing the SBC priority
to its default value (lowest).

Test: A2DP streaming and enabling/disabling/selecting optional codecs
Bug: 35873828
Change-Id: Ia82036ac33590a3a402b1f5a36102264d47a9029
(cherry picked from commit 61075105ca)
2017-03-29 15:58:25 -07:00
TreeHugger Robot
ee40a2652c Merge "Add HidlSupport.java for utility methods for HIDL." into oc-dev 2017-03-29 22:20:33 +00:00
Evan Rosky
18b886e8b2 Allow cluster navigation to jump into touchscreenBlocksFocus
Adds an exception to touchscreenBlocksFocus ViewGroups which
are also keyboardNavigationClusters. The behavior we want is
that cluster navigation can jump into touchscreenBlocksFocus
clusters but normal keyboard navigation can't. Once focus is
in a touchscreenBlocksFocus cluster; however, we allow focus
navigation to move freely within that cluster. It remains in
that cluster until a subsequent cluster navigation brings it
back out.

Adds back the touchscreenBlocksFocus attributes to Toolbar
and actionbar so that they behave like they did before.

Bug: 34363323
Test: Added CTS test. Verified desired behavior in a test app

Change-Id: I555bf5570b16a57f0d4c8a020ae509a1e1b33910
(cherry picked from commit aee802f3bc)
2017-03-29 22:18:56 +00:00
George Mount
5dd7c9af6d Fix getting wrong instance when restoring non-config
Bug 36679897

When restoring the non-config fragments, the wrong index was
being used to lookup the fragment fromt the list of active
fragment states.

Test: Ic862fd9670408dab09ab5817cdec21e91aef001b
Change-Id: Ic5a8e723041949e6d01d4f5ddc6d54e491143b59
2017-03-29 15:17:44 -07:00
Evan Rosky
01f46a29ce Expose initial focus feature flag for testing
Bug: 34520588
Test: View_FocusHandlingTest
Change-Id: I7a20a6e9c57fc61bd2562307f4e7f8dee1979a40
(cherry picked from commit 9a0ea38671)
2017-03-29 22:11:34 +00:00
George Mount
c7146beabe Make public getFragments() and onGetLayoutInflater() methods
Bug 34703669
Test: I846ef668e3dd7d664cfb56d2b9400467ba9b79f4
Change-Id: Ie202960ada86b25e964f98a639b5f5740c8fdb79
2017-03-29 14:58:42 -07:00
Makoto Onuki
03169cddf6 Mention <intent> can't have string resources.
Test: build
Bug 34046756

Change-Id: I761b246d6aba5df4a836af3d0b3bef8f977be5ec
2017-03-29 21:07:15 +00:00
Yifan Hong
d658f1c02b Add HidlSupport.java for utility methods for HIDL.
The old .equals code uses Objects.deepEquals,
which does not handle for, e.g. ArrayList<byte[]>.
Create our own recursive HidlSupport.deepEquals
and deepHashCode method to handle these edge cases.

Bug: 36454147
Test: hidl_test_java
Change-Id: I56dc48985486b561263c260cf43aa90f30d581d0
2017-03-29 13:07:15 -07:00
TreeHugger Robot
dd83c2006b Merge "TextClassifier: Switch model based on locale" into oc-dev 2017-03-29 19:17:36 +00:00
TreeHugger Robot
5301d9e6d3 Merge "Do not use many FDs in FontManagerService." into oc-dev 2017-03-29 19:11:41 +00:00
Tima Vaisburd
e4776416d4 Merge "TextClassifier: add API to WebView" into oc-dev 2017-03-29 18:50:07 +00:00
TreeHugger Robot
94696c5ac5 Merge "Fix bad Java docs in View.java" into oc-dev 2017-03-29 18:33:11 +00:00
TreeHugger Robot
36bceefafa Merge "Fix problem with ListView accessibility focus" into oc-dev 2017-03-29 17:47:13 +00:00
TreeHugger Robot
ddb280b1ac Merge "Reserve space for preference icon." into oc-dev 2017-03-29 17:34:08 +00:00
Seigo Nonaka
c0cf4f09f4 Do not use many FDs in FontManagerService.
Currently there are over 170 font files are installed in system directory.
Opening 170+ files and keep them is not unacceptable. Pass URI instead.

At the same time, this CL hides full font path from FontConfig since
/system/fonts directory will be deprecated in future.

Bug: 36660849
Test: android.text.cts.FontManagerTest passed
Change-Id: I1d216dc9c6dec702a4ce3b946bfda6dcbe12b7fe
(cherry picked from commit 455f1bfc05)
2017-03-29 17:01:16 +00:00
Rob Carr
76d779374a Merge "SurfaceView: Make surfaceRedrawNeededAsync work with WM bypass." into oc-dev 2017-03-29 16:44:41 +00:00
Philip P. Moltmann
dc90922f78 Fix bad Java docs in View.java
Test: Used intelliJ to warn about bad docs
Change-Id: Idb119aff8ce0f2370f66707bd583e2d131fb0751
(cherry picked from commit f4946e7f15)
2017-03-29 16:29:22 +00:00
Abodunrinwa Toki
c39006a1cd TextClassifier: Switch model based on locale
Test: cts-tradefed run cts-dev -m CtsViewTestCases -t
android.view.textclassifier.cts.TextClassificationManagerTest

Change-Id: I91f814fc47bd75922c0e42a774dc7376daf65366
2017-03-29 17:12:56 +01:00
Phil Weaver
ec66fb8f99 Fix problem with ListView accessibility focus
A scrap view was retaining accessibility focus, leading to
a confusing experience for screen reader users.

Part of the problem is that views can change even when the
adapter has stable ids. This change tightens the condition
for restoring a11y focus to the same view.

AbsListView also allowed scrap views to maintain a11y focus.
While this may make sense if the views will be reused, it is
wrong if the views are not reused.

Bug: 29403113
Test: Verified that a11y focus stays put when toggling the
preference: Settings -> System -> Language & input ->
Virtual keyboards -> Advanced -> Symbol for physical keyboard

Change-Id: Ie4a15027088f158d9ed4bb3f3eeff5a288c25832
(cherry picked from commit ab4717aa2a)
2017-03-29 15:34:30 +00:00
Tony Mak
ec319aba34 Introduce AMS.getLastResumedActivityUserId to fix work profile icon issue
Problem:
Work profile status bar icon feeature is relied on two callbacks
1. onForegroundProfileSwitch  (AMS.setResumedActivityLocked)
2. appTransitionStarting (WMS)

We assume callback 1 is always called before 2, but it is not the case.
These two callbacks are triggered by two handlers in two different threads,
and hence race condition happens.

Solution:
Not rely on onForegroundProfileSwitch to update mManagedProfileFocused
flag anymore. Query getLastResumedActivityUserId in appTransitionStarting.
Also, make sure mLastResumedActivity is updated before sending message
to WMS in setResumedActivityLocked.

Test: Start a work app, observe that the work icon is shown.
Test: Start a personal app, observe that work icon is gone.
Test: Dock the work app, tap on it (give it focus), observe that work
      icon is shown.
Test: Start a work app, switch user, can see the icon is gone. Switch back,
      icon is back.

Bug: 34159089

Change-Id: I2cee141d18e8b7d5607b26dd7a2fd5bc9cd0ebb3
2017-03-29 10:03:39 +00:00
TreeHugger Robot
76c32a35a9 Merge "Allow apps to process ProxyFDCallback asynchrnously." into oc-dev 2017-03-29 04:41:44 +00:00
Chad Brubaker
9408d51fbe Expose ACCESSIBILITY_CAPTIONING_* to Instant Apps
Fixes settings issues seen in Webview startup.
Bug: 34087569
Test: SecurityExceptions go away

Change-Id: I0e3c55e7dc1c17f445d9dc514682e12dad9dc247
2017-03-28 18:34:38 -07:00
Jeff Tinker
79a973f643 Revert "Make public getFragments() and onGetLayoutInflater() methods"
This reverts commit 599be3d01e.

This change is being reverted because it broke git_master build.

Change-Id: I54ab9cd3d9e08dcf870f472fda08cc44e57986d0
bug: 34703669
2017-03-29 01:25:06 +00:00
Tianjie Xu
b25b2f2dab Merge "Merge "improve the format of locale argument when calling recovery" am: 032c7a0a18 am: 1cd3a93288 am: bc0865bc78" into oc-dev 2017-03-29 00:29:06 +00:00
Daichi Hirono
812c95d37d Allow apps to process ProxyFDCallback asynchrnously.
Previously callback methods of ProxyFileDescriptorCallback were invoked
on a background thread prepared in the framework. So all methods were
invoked and processed synchronously. This was problem because if it took
time to fetch bytes of one file, operations for other files were also
blocked.

The CL changes ProxyFileDescriptorCallback methods to be invoked on
Handler passed by apps. Now application can prepare a Handler per file
so that one file does not block others.

Bug: 35229514
Test: cts-tradefed run cts -m CtsOsTestCases -t android.os.storage.cts.StorageManagerTest#testOpenProxyFileDescriptor_async
Change-Id: Ibadc4aad4c0373a3da586459a8f775e40288c895
(cherry picked from commit 4f156065c8)
2017-03-29 00:14:16 +00:00
TreeHugger Robot
c8d8c27c68 Merge "Make public getFragments() and onGetLayoutInflater() methods" into oc-dev 2017-03-28 23:43:23 +00:00
Doris Ling
9ed53e35ed Reserve space for preference icon.
Add an attribute to Preference to specify whether the space of the icon
view should be reserved when no preference icon is provided.

Bug: 36448695
Test: manual
Change-Id: I03b49fe93d54bb9106cf167a677a9ea544a3e3a1
2017-03-28 22:47:18 +00:00
Tianjie Xu
b1b38b322c Merge "improve the format of locale argument when calling recovery" am: 032c7a0a18 am: 1cd3a93288
am: bc0865bc78

Change-Id: I65bc4945d0701ecc10fd41f827c4566dfea912f9
(cherry picked from commit ee45a1f3ab)
2017-03-28 22:25:10 +00:00
Makoto Onuki
e56bfe0012 Merge "Log a warning if a dispatch on UiThread takes more than" into oc-dev 2017-03-28 22:03:08 +00:00
Makoto Onuki
9957151661 Log a warning if a dispatch on UiThread takes more than
a certain amount of time.

Bug: 34961340
Test: Boot and launch several apps.
Change-Id: I38bd85a1dd9c572242d04f550df4a979f5f3bea5
2017-03-28 21:49:51 +00:00
TreeHugger Robot
36e2483663 Merge "Add Configuration param to onMovedToDisplay" into oc-dev 2017-03-28 21:36:40 +00:00
Tima Vaisburd
cf49a23b3c TextClassifier: add API to WebView
Delegate the actions to WebViewProvider, by default they are no-ops.

Bug: 34780392
Test: Existing tests should be enough
Change-Id: Iefb1045b44a6e8cee5d1cc2c9b194b392d33f36d
2017-03-28 14:24:16 -07:00
TreeHugger Robot
61ae34afe3 Merge "Intercept direct launch of instant app installer" into oc-dev 2017-03-28 20:47:09 +00:00
TreeHugger Robot
1b782bffdf Merge "make MATCH_FACTORY_ONLY @SystemAPI" into oc-dev 2017-03-28 20:46:44 +00:00
TreeHugger Robot
01d69aae3a Merge "Add extra flag to ApplicationInfoFlags" into oc-dev 2017-03-28 20:46:21 +00:00
TreeHugger Robot
f0fb78b95d Merge "Add ACTION_EPHEMERAL_RESOLVER_SETTINGS" into oc-dev 2017-03-28 20:45:26 +00:00
Todd Kennedy
b21be12d9d Intercept direct launch of instant app installer
The instant app installer is not designed to be launched directly
by 3p apps. Instead, intercept the launch and make it look like
a "normal" instant app launch.
cherry-picked from I89c9b8c56865e260a2b92f8c2312a305a74f9cf5

Bug: 33073524
Test: Built and notice poorly behaving apps [*cough* keep *cough*] now launch instant apps
Change-Id: I5401aa8423042f54f1478409065b0d6b25cebe89
2017-03-28 13:43:21 -07:00
Todd Kennedy
ea2529df19 make MATCH_FACTORY_ONLY @SystemAPI
cherry-picked from I9e2046b62cb20c5b6651e91f833aff04d45d9800

Bug: 35946061
Test: None; just added an annotation
Change-Id: I604f962b9826700c335eeda9682d3354f6260c40
2017-03-28 13:42:00 -07:00
Todd Kennedy
b65c36a034 Add extra flag to ApplicationInfoFlags
MATCH_DISABLED_COMPONENTS should be part of ApplicationInfoFlags.
cherry-picked from If6a925c156192ee4663f0cb66d82fc03a86940d6

Change-Id: I048635ff0938f2772d5702de7eb4bc4812ece605
Fixes: 34969805
Test: None; updating annotation
2017-03-28 13:40:02 -07:00
Shunta Sato
ec2952bc4a Don't allow the negative height of ListPopupWindow
Symptom:
If an application set a negative height to the popup list,
surfaceflinger is crashed with SIGABRT.

Root cause:
WindowManagerService dose not expect negative
height of ListPopupWindow. If it's negative,
WindowManagerService set the negative value to GraphicBufferAlloc,
but GraphicBufferAlloc handle the value as unsigned int,
then surfaceflinger is crashed with SIGABRT.

Solution:
Setting a negative height is a developer error.
We should throw an IAE from setHeigh(int).

Bug: 33441454

Author: Kazuki Nakayama <kazuki.x.nakayama@sonymobile.com>
Change-Id: I5887674d302e567abfe66147de4819cfdf0ef97b
2017-03-28 13:36:36 -07:00