Commit Graph

10315 Commits

Author SHA1 Message Date
Felipe Leme
bb567ae6c0 Sets AutofillClient on attachBaseContext()
When an activity overrides attachBaseContext(), the attached context must share
the same AutofillCient, otherwise it will break autofill in the activity.

Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases -t android.autofillservice.cts.AttachedContextActivityTest
Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases

Fixes: 67350639

Change-Id: I6b0c4c2fab5fa68eb6ee0714e107ca0816efb2cb
2017-10-04 12:23:23 -07:00
Phil Weaver
4dfeb4f0e4 Merge "Add null check in a11y callback" into oc-mr1-dev 2017-09-26 19:22:51 +00:00
TreeHugger Robot
8e5e30c5eb Merge "Hide autofill popup if anchor removed" into oc-mr1-dev 2017-09-25 22:24:25 +00:00
Jan Althaus
34aa294b96 Fixed bug in handling of OTHER as terminal
This bug resulted in a tap on a non-default action mode item to get logged
as OTHER, followed by ABANDON.

Bug: 64914512
Test: Manually tested that logs are correct.
Change-Id: I3cdba7ccff896939e22c567843f335c54d4a97f3
2017-09-25 09:56:21 +02:00
Svet Ganov
77150c5fbb Hide autofill popup if anchor removed
Test: Manual
Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases

bug:64601372

Change-Id: Ic55dabb99cd5015d318ab3be1231b6aa5c67294e
2017-09-23 10:13:06 -07:00
Phil Weaver
05a2982f0c Add null check in a11y callback
Bug: 65475473
Test: Verified it still builds
Change-Id: I9ad1249c44cb73153066f67164c90333779d284e
2017-09-22 20:09:14 +00:00
Felipe Leme
650f7abc3f Remove finished sessions on ACTION_CLOSE_SYSTEM_DIALOGS.
Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases -t android.autofillservice.cts.SimpleSaveActivityTest#testTapHomeWhileSaveUiIsShowing
Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases -t android.autofillservice.cts.SimpleSaveActivityTest#testTapHomeWhileDatasetPickerUiIsShowing
Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases

Fixes: 65414762

Change-Id: I7dc9fd8f40341164e0ca320ff49b99cf8614fdbf
2017-09-20 17:19:29 -07:00
TreeHugger Robot
7a59a62276 Merge "Fix window visibility during layout" into oc-mr1-dev 2017-09-20 03:17:44 +00:00
TreeHugger Robot
2748ffcef7 Merge "Autofill optimization: don't contact server when session is finished." into oc-mr1-dev 2017-09-19 22:47:16 +00:00
Felipe Leme
c7b4529aa9 Autofill optimization: don't contact server when session is finished.
Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases
Bug: 65414762

Change-Id: I214a7835727c3ff71de9dc65c8d6fe54507265fb
2017-09-19 11:49:29 -07:00
TreeHugger Robot
d4f72ac3c4 Merge "Added more metrics for Autofill:" into oc-mr1-dev 2017-09-18 21:05:44 +00:00
Felipe Leme
f3d30a2139 Clarified how to set for autofill views representing creditcard expiration dates.
Test: mmm -j108 frameworks/base/:doc-comment-check-docs
Fixes: 65673410

Change-Id: I0ebf452dff401d0863d841d714fc1350f73c2542
2017-09-15 13:38:56 -07:00
Felipe Leme
b22d635dad Added more metrics for Autofill:
- AUTOFILL_VALUE_RESET
- FIELD_AUTOFILL_PREVIOUS_LENGTH
- AUTOFILL_DATASET_AUTHENTICATED
- AUTOFILL_INVALID_DATASET_AUTHENTICATION
- AUTOFILL_INVALID_AUTHENTICATION
- FIELD_AUTOFILL_SAVE_TYPE
- AUTOFILL_SAVE_CUSTOM_DESCRIPTION
- AUTOFILL_SAVE_CUSTOM_SUBTITLE
- AUTOFILL_SAVE_LINK_TAPPED
- AUTOFILL_SAVE_VALIDATION
- AUTOFILL_PENDING_SAVE_UI_OPERATION

Also tagged all metrics with FIELD_AUTOFILL_SERVICE, and added missing
package name on AUTOFILL_DATASET_APPLIED.

Test: CtsAutoFillServiceTestCases pass

Bug: 65118073
Bug: 65376559
Bug: 65697068

Change-Id: I678193c99d9d1b2dac56a62a88dcf20043d1b401
2017-09-15 13:08:24 -07:00
Jan Althaus
019389a638 New metrics fields for selection logs
Changes that affect logging:
- Switched to new category/actions/fields that are used exclusively by
  selection logging.
- Action types are now logged in the tron type (the information that was
  previously in the field could be derived from other fields).
- Entity types are now logged in the tron sub type.
- Delta time from previous event is now zero for first event (was time
  since epoch).
- The smart select model version is now written for all events after
  smart select has run. (i.e. better support for analysis based on
  terminal events alone)
- Restoring the logging removed in ag/2901629.

Internal only changes:
- Made debug statement conditional on DEBUG_LOG_ENABLED.
- Reduced logging tag length to fit into 23char limit.

Bug: 64914512
Test: Manually tested that logs are correct. Will follow up with automated tests.
Merged-In: If12daa2f206fb42be53587decbe2c4abfd689f41
Change-Id: Iec0f6cf1f9f2efdc8518133cf8551cd96b095ad8
2017-09-15 18:17:57 +02:00
Jan Althaus
ec3ded8686 Change default smart select range for logging to [0,0]
Bug: 64914512
Test: Manually tested that logs are correct. Will follow up with automated tests.
Change-Id: I5eb151f49f9dd665c6c76625ebb2b9c0be96a11d
2017-09-14 09:31:24 +02:00
Karthik Ravi Shankar
a59c3a5a3a Fix window visibility during layout
Avoid the conditional requestTransparentRegion() and make it more
precise in onAttachedToWindow().

Testing: 20 attempts to launch in TreasureHunt, never results in black
screen as compared to 2-3 attempts to get into black screen before.
Bug: 62235292

Suggested-By: racarr@google.com
Change-Id: If04c97670f24c10bf9e4ce95b9d33fb750053323
2017-09-11 17:38:57 -07:00
Abodunrinwa Toki
cd2497b534 Fix smart selection logging bugs.
- Fix count with selection start index inside a word
- Properly handle whitespace characters
- Set the model version tag

Bug: 64914512
Test: bit FrameworksCoreTests:android.widget.TextViewActivityTest
Test: bit CtsWidgetTestCases:android.widget.cts.TextViewTest
Test: Manually tested that logs are correct. Will follow up with automated tests.
Merged-In: Ib73b52ebce999f2cb6e5734e556cd09e47c89a29
Change-Id: Ib73b52ebce999f2cb6e5734e556cd09e47c89a29
2017-09-12 00:20:40 +01:00
Evan Rosky
c8b91ecbae Merge "Fixed some small keyboard nav bugs (TabHost, directional focus)" into oc-mr1-dev 2017-09-11 20:25:50 +00:00
TreeHugger Robot
a729236399 Merge "Revert "Remove a compat hack SurfaceView#setWindowType()"" into oc-mr1-dev 2017-09-10 05:31:42 +00:00
TreeHugger Robot
beff427903 Merge "Documented use of AutofillManager.notifyViewVisibilityChanged()" into oc-mr1-dev 2017-09-10 04:37:35 +00:00
Yohei Yukawa
9309c19513 Revert "Remove a compat hack SurfaceView#setWindowType()"
This CL reverts my previous CL [1] that aimed to get rid of
a nasty compatibility hack that was introduced for Bug 36345857.

For those who are interested in, what happenned are:

 1. @hide method SurfaceView#setWindowType() was removed [2].
 2. It broke some app (Bug 36345857).  We had to work around
    it by re-introducing SurfaceView#setWindowType()
    temporarily [3].
 3. Some app switched to the correct implementation when
    running on Android O devices.
 4. We removed that compatibility hack [1] (Bug 62054282).
 5. Android O MR1 is set to be "REL" [4].
 6. It broke some app, probably because of some unfortunate
    mistake in the version check logic in that app.
 7. We end up introducing the same hack again for O MR1.

 [1]: Icee198c554de558cfa4ffe0b264064969839654e
      7a1ad6d97c
 [2]: Ie56b6f7ab16f32d7fc459b8eba26594337ad55de
      d5c7dd6da8
 [3]: I5217f6417a73690ae8a978754218b7b089070fdd
      3b5011afc9
 [4]: I054e3ecff49803e61e7741753fe6764a567d72c4
      62a835d0ef89e51f4a97fecf8576224551b545a5

Bug: 36345857
Bug: 62054282
Fixes: 65508814
Test: Manually verified that Bug 65508814 is not reproducible
Change-Id: If8a3f726789daa22f73e1962e938f071d3c09414
2017-09-09 17:45:27 -07:00
Sujith Ramakrishnan
f8942c0c88 Make ASSIST launch VIS and add a new keycode for TV (ALL_APPS)
- KEYCODE_ASSIST: Looks for default VIS in system partition
      and launches it.
    - Ensure foreground activity assist context extras are collected
      and sent to VIS.
    - KEYCODE_ALL_APPS: Sends Intent.ACTION_ALL_APPS. For TV,
      this targets default launcher package in system partition.

Test: Manual: ASSIST: adb shell input keyevent 219
Test: Manual: ALL_APPS: adb shell input keyevent 284
Test: also tested with --longpress for these keys
Test: Manual: Checked with dummy app populating overridden
      onProvideAssistData()
Test: Keypresses after overriding ALL_APPS and ASSIST
      on Nexus Remote

Bug: 37950079
Bug: 38496261
Change-Id: I96d9de67d4a442a8c6cb7feec28fc9aeb0dcbc18
2017-09-07 16:19:53 -07:00
Felipe Leme
4ae4169f7b Documented use of AutofillManager.notifyViewVisibilityChanged()
Test: mmm -j108 frameworks/base/:doc-comment-check-docs
Bug: 38509603

Merged-Id: I83c7089b071a82b7d887cb48c18683b671b0c4d6

Change-Id: I83c7089b071a82b7d887cb48c18683b671b0c4d6
2017-08-31 14:10:46 -07:00
Abodunrinwa Toki
692b196cc1 Introduce SmartSelectionEventTracker.
This will be used for logging text selection interaction.

Bug: 64914512
Test: No test. Everything builds fine.
Change-Id: Idb28864e0fc969be05d81855b2e7cd8389bd835e
2017-08-30 13:38:51 +01:00
TreeHugger Robot
102520f88e Merge "Clear focused-in-cluster on focusability changes" into oc-mr1-dev 2017-08-29 21:01:05 +00:00
Felipe Leme
c24a56ae06 Hides the Save UI while handling a pending intent from CustomDescription.
When the AutofillService sets a PendingIntent to launch an activity when
clicking a chield view (for example, to lauch a web page displayign the terms
and conditions of saving something), the system must hide the Save UI and
restore it after the new activity is dismissed.

That sounds simple in the surface, but it requires a huge refactoring behind
the scenes, such as injecting a token in the activity intent and using that
token to hide / cancel the UI during some activity lifecycle events.

Test: lotta of brand-new shinning tests on CtsAutoFillServiceTestCases
Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases

Change-Id: Ie8ec7aeb2c63cab68467046c1a9dcf85dbcc24ec
Fixes: 64309238
2017-08-28 18:04:15 -07:00
Felipe Leme
ca03b3fbe6 Merge "Clarified that getAutofillValue() must return same value passed to autofill()." into oc-dev am: 7d29b6f2df
am: da31220015

Change-Id: I1ccd7b54c27ce65edcf9b1aceba7097bd8fc32e2
2017-08-25 21:54:45 +00:00
Felipe Leme
da31220015 Merge "Clarified that getAutofillValue() must return same value passed to autofill()." into oc-dev
am: 7d29b6f2df

Change-Id: Ibfabc9d32aa0da80e636a27eebf1b50bdd9692b3
2017-08-25 21:36:04 +00:00
TreeHugger Robot
f3b78305ff Merge "New haptic feedback constants" into oc-mr1-dev 2017-08-24 21:02:57 +00:00
Andrii Kulian
7ee92d5291 Merge "Apply API review comments for SHOW_WITH_INSECURE_KEYGUARD" into oc-mr1-dev 2017-08-24 19:59:08 +00:00
Yohei Yukawa
262dadf870 New haptic feedback constants
This CL introduces several haptic feedback constants that are ready
to be exposed to developers.

Test: checkbuild
Fixes: 64537070
Change-Id: If54d5bc6cab4e2c405615b7a40648c74a1097ea3
2017-08-24 10:51:00 -07:00
Jorim Jaggi
f1ef6ef742 Merge "Sleep activities with AOD" into oc-mr1-dev 2017-08-24 13:19:42 +00:00
Andrii Kulian
732a90a794 Apply API review comments for SHOW_WITH_INSECURE_KEYGUARD
Applied review comments but keeping the flag hidden for now.

Bug: 36555156
Test: android.server.cts.ActivityManagerDisplayTests
Test: #testExternalDisplayActivityTurnPrimaryOff
Test: #testLaunchExternalDisplayActivityWhilePrimaryOff
Test: #testShowWhenLockedPublicVirtualDisplay
Change-Id: I1aa1289424d0d778bc0668c9ec69bc56f47891e3
2017-08-23 15:42:16 -07:00
Andrii Kulian
0d008e3204 Merge "Track app visibility updates on the client" into oc-mr1-dev 2017-08-23 18:06:50 +00:00
Jorim Jaggi
f12ec0fb64 Sleep activities with AOD
Previously in the last release we started sleeping as soon as
the device was not interactive anymore. However, this caused
issues with ambiactive activites on Android Wear.

Instead, we introduce a new private flag on a window that signals
that all activities should be put to sleep. We use this flag in
SystemUI as soon as SystemUI is "dozing", which means its ambient
display is showing. This flag gets set before we request PWM to
wake-up, so it's ensured that this will not cause any spurious
lifecycle events.

Test: go/wm-smoke
Test: android.server.cts.KeyguardTests
Change-Id: I20f6dd4bfde220f945ef94d2ac1b89dd3694de32
Fixes: 64940094
2017-08-23 16:24:07 +02:00
Phil Weaver
c6c9e089db Merge "Place focus on window when a11y performs an action" into oc-mr1-dev 2017-08-22 16:42:13 +00:00
Andrii Kulian
74b561a1fc Track app visibility updates on the client
When client receives two consecutive app visibility updates
sometimes it might handle them in single traversal pass and
in ViewRootImpl#performTraversals it will not detect a
visibility change.
Server side in this case will be stuck waiting for relayout
call from the client and will not draw the app window. This
can also cause focus not being switched properly and WM
remain with no focused window.

Bug: 64517357
Test: android.server.cts.ActivityManagerPinnedStackTests
Test: #testEnterPipFromTaskWithMultipleActivities
Test: Run the test and check if there are no focused window logs
Change-Id: I714da72a881e2dee5cf8dafd62113fbb9f2f3f4d
2017-08-21 13:43:44 -07:00
Phil Weaver
5dc3ebcec6 Place focus on window when a11y performs an action
Bug: 62344706
Test: Now able to bring up keyboard in split-screen mode.
Also a11y CTS and unit tests pass.

Change-Id: Ic4340425680c89e8fc5e586aa1d363b01fd69763
2017-08-17 16:48:48 -07:00
Felipe Leme
a96f7af211 Clarified that getAutofillValue() must return same value passed to autofill().
Test: m doc-comment-check-docs
Bug: 64114048

Change-Id: I618cc3703db64315a848cc483f460f1b27fec98b
2017-08-17 16:18:44 -07:00
Casey Burkhardt
02f3b807db Make isAccessibilityButtonSupported public
Bug: 62342696
Test: Builds
Change-Id: I02082f2db349181473b2a7fd367fc8892d495fc1
2017-08-17 02:50:45 -07:00
TreeHugger Robot
10d176009d Merge "Revert "Dismiss Autofill Save UI when a new Activity is launched."" into oc-mr1-dev 2017-08-17 03:07:02 +00:00
Philip P. Moltmann
4c0e55d0fc Merge "Don't get struct of children of !laidout viewGroup" into oc-mr1-dev 2017-08-16 23:49:21 +00:00
Felipe Leme
cf1ff6ca3d Revert "Dismiss Autofill Save UI when a new Activity is launched."
This reverts commit 05ea98a3f9.

Bug: 64693551

Change-Id: I8e7a7b2c5f575cee28f977ae7f3c10752a15d49c
2017-08-16 23:34:06 +00:00
Evan Rosky
5b20e0942c Clear focused-in-cluster on focusability changes
Bug: 63424225
Test: Added CTS test. Checked that it fixes the issue in Docs

Change-Id: I3f986abbeed9473b5008662b53ce35cc183619ad
2017-08-16 22:03:54 +00:00
Romain Guy
010f082490 Hide shared buffer mode/auto refresh on Surface
Bug: 63858546
Test: Compile & boot

Change-Id: I34372593d4b47b143e65d30f669f883c69653f62
2017-08-16 10:02:10 -07:00
Philip P. Moltmann
083d8aace7 Don't get struct of children of !laidout viewGroup
Some view groups (e.g. the support.v4.viewPager) need to be laid out
to determine the order of it's children. As we need the order before
being able to collect the structure of the children we need to skip
their collection until they are laid out.

Fixes: 38198484
Test: cts-tradefed run cts-dev -m CtsAutoFillServiceTestCases
      cts-tradefed run cts-dev -m CtsAccessibilityTestCases
      cts-tradefed run cts-dev -m CtsAccessibilityServiceTestCases

Change-Id: I1f7bee1505edaf70c9d9a686be6f9a76d8aedd0b
2017-08-16 16:03:15 +00:00
Felipe Leme
05ea98a3f9 Dismiss Autofill Save UI when a new Activity is launched.
Test: manual verification using Settings
Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases -tandroid.autofillservice.cts.SimpleSaveActivityTest#testDismissSave_byLaunchingNewActivity
Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases -tandroid.autofillservice.cts.LoginActivityTest#testSaveGoesAwayWhenLaunchingNewActivity
Test: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases

Fixes: 64693551

Change-Id: I323031c7285a4b49f9f0ca06618425a0ab7833da
2017-08-14 17:56:30 -07:00
Cindy Kuang
61130c49a3 Merge "docs: replaced "i.e." to fix formatting error" into oc-dev am: 0580ac8a65
am: 07f5257b19

Change-Id: I0ac6fa46922bb2866cfb416763dfcfac10fdd909
2017-08-11 21:34:57 +00:00
Cindy Kuang
07f5257b19 Merge "docs: replaced "i.e." to fix formatting error" into oc-dev
am: 0580ac8a65

Change-Id: I094bd99bcaaf51633ac887d38a9323ed5fdc54e2
2017-08-11 21:01:15 +00:00
Phil Weaver
34f79a67ee Merge "Stop focusing views before layout." into oc-dr1-dev
am: a5dab05b61

Change-Id: I31f4ce541ac56887549a654b5e313e1f361152c3
2017-08-10 22:44:39 +00:00