)]}'
{
  "log": [
    {
      "commit": "0c8ce322a3107933d16082e00c77fbe501dc3c07",
      "tree": "987445c8ecb1b6c74e78214c78aac2f4471857f8",
      "parents": [
        "8d114ef8ae7d3671ad12c2f6f1b3570d81b37c5f"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Fri Mar 23 13:54:22 2018 -0700"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Mon Mar 26 11:55:31 2018 -0700"
      },
      "message": "Integrate autofill session lifecycle with URL bar changes when on compat mode.\n\nThe contents of a browser URL bar is typically changed for 2 reasons:\n\n1.User entered a new URL.\n2.Form was submitted and the URL changed.\n\nOn scenario #1, the current session should be canceled, while on #2 it should be\ncommitted. Scenario #2 is already handled when the service sets a SaveInfo, so\nthis CL handles the other cases:\n\n1.Focus on URL bar is ignored so it does not trigger a new partition.\n2.If URL bar changed and service didn\u0027t set a SaveInfo, the session is canceled.\n\nFixes: 76027553\n\nTest: manual test with Chrome\nTest: new tests on VirtualContainerActivityCompatModeTest:\n      testFocusOnUrlBarIsIgnored()\n      testUrlBarChangeIgnoredWhenServiceCanSave()\n      testUrlBarChangeCancelsSessionWhenServiceCannotSave\n      testUrlBarChangeCancelsSessionWhenServiceReturnsNullResponse\nTest: atest CtsAutoFillServiceTestCases\n\nChange-Id: I19d2aa4c8b25def0d5eca1c59cfdc2ffe33dd388\n"
    },
    {
      "commit": "63df4e248accfb3e74214fe5dda803b524e3134b",
      "tree": "84cc1cdb424235ccb2dc780e31aebafd1fecf248",
      "parents": [
        "d4115f501dd1cc23546dd53df1c4393bfe43a419",
        "da9ea34c029df809e6b833a483408662e13ca9a1"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Fri Mar 23 05:48:26 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 23 05:48:26 2018 +0000"
      },
      "message": "Merge \"Improved autofill logging and dumping.\" into pi-dev"
    },
    {
      "commit": "0cdac33f8f0d8d7d53cb4d286a99b4ed8008e3e9",
      "tree": "ba0705a67c08f02153bb1b7bd68814a8870e89ea",
      "parents": [
        "2df6aa4178a70e967c690db53399fbd0a7bab8db",
        "4f74a018c8ee9801f1d5ce2c7ec726251efc4fbf"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Fri Mar 23 01:05:29 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Mar 23 01:05:29 2018 +0000"
      },
      "message": "Merge \"Always set FLAG_SAVE_ON_ALL_VIEWS_INVISIBLE on SaveInfo when on compat mode.\" into pi-dev"
    },
    {
      "commit": "da9ea34c029df809e6b833a483408662e13ca9a1",
      "tree": "0bbc342431cb9c694c660ee04885bf173517c7e9",
      "parents": [
        "4e561f83cbfc1c05955f724db73c72366ad816eb"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Thu Mar 22 15:19:51 2018 -0700"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Thu Mar 22 16:43:28 2018 -0700"
      },
      "message": "Improved autofill logging and dumping.\n\nBug: 76027553\nTest: adb shell dumpsys autofill\n\nChange-Id: I19ef88c71334c62292ed982e43d7a7e89b35f10e\n"
    },
    {
      "commit": "3a31f6c5ccd9c8e490ecb475262059e7f52717b3",
      "tree": "ab865e7c61b8978a96e2e68fce26181e8dbcfa9f",
      "parents": [
        "6affc07065083468c5580b04d3572ef6acbb138c",
        "88b745cce3555c3c29acec29aa71240f3b71b22c"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Mar 22 22:22:30 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 22 22:22:30 2018 +0000"
      },
      "message": "Merge \"Removed urlBarResourceId.\" into pi-dev"
    },
    {
      "commit": "9bea50471f1ed7d6357ce454f8cab88b78139ac8",
      "tree": "eb65d2b7608ec2f86e09e989681fc426187a9dfc",
      "parents": [
        "a43de8b61a73b8a5e47703e4b3b052d7b2b521e7",
        "1c6b60581f877743f12d6a379724f978a9f2366d"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Thu Mar 22 21:20:34 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 22 21:20:34 2018 +0000"
      },
      "message": "Merge \"Enable Autofill Field Classification by default.\" into pi-dev"
    },
    {
      "commit": "4f74a018c8ee9801f1d5ce2c7ec726251efc4fbf",
      "tree": "e3afd283f6da07a87d49453215e2ab49c8d157ed",
      "parents": [
        "b630550ed19798ad89d8e10b750c72f899ad3e92"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Tue Mar 20 18:17:34 2018 -0700"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Thu Mar 22 13:30:59 2018 -0700"
      },
      "message": "Always set FLAG_SAVE_ON_ALL_VIEWS_INVISIBLE on SaveInfo when on compat mode.\n\nTest: atest CtsAutoFillServiceTestCases:VirtualContainerActivityCompatModeTest\n\nBug: 76027553\n\nChange-Id: I432b4321801ca90a55a24e5e896578d5b2d63014\n"
    },
    {
      "commit": "88b745cce3555c3c29acec29aa71240f3b71b22c",
      "tree": "f92270f1d59ed4ab108859bab14af749ac3bac97",
      "parents": [
        "4e561f83cbfc1c05955f724db73c72366ad816eb"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Wed Mar 21 20:02:42 2018 -0700"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Thu Mar 22 11:44:06 2018 -0700"
      },
      "message": "Removed urlBarResourceId.\n\nIt will be removed before the final P build.\n\nTest: atest FrameworksServicesTests:AutofillManagerServiceTest CtsAutoFillServiceTestCases\nFixes: 74445943\n\nChange-Id: I9bc243a3c1ae78f2c385dbb907d362d8ab16b34c\n"
    },
    {
      "commit": "4e561f83cbfc1c05955f724db73c72366ad816eb",
      "tree": "edc5d7507a4f03f4991fbba1ae288e6d0bbdb84c",
      "parents": [
        "8055aa2434f0163163fd07bbb8027fa2ee4ebb25",
        "fd4003bf0949a4a33200621d0c6f33dbebfa14d3"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Thu Mar 22 16:24:53 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Mar 22 16:24:53 2018 +0000"
      },
      "message": "Merge \"Renamed AUTOFILL_COMPAT_MODE_ALLOWED_PACKAGES.\" into pi-dev"
    },
    {
      "commit": "1c6b60581f877743f12d6a379724f978a9f2366d",
      "tree": "5517b53f5c588a4fb41d9709b51556f72e06168b",
      "parents": [
        "2f81559d293e09e6db706334b6b15a289ff1689a"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Thu Mar 22 09:08:31 2018 -0700"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Thu Mar 22 09:09:27 2018 -0700"
      },
      "message": "Enable Autofill Field Classification by default.\n\nBug: 76028992\nTest: locally changed FieldsClassificationTest to not set it\n\nChange-Id: I842124852f76f599a8ac1cb06271ebc3324c36c9\n"
    },
    {
      "commit": "fd4003bf0949a4a33200621d0c6f33dbebfa14d3",
      "tree": "f51dbec3783fed2d2f7eb0587dca40f4be3e5d4e",
      "parents": [
        "655877cd84d274ff66bc29f5889dec554a439312"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Tue Mar 20 17:12:17 2018 -0700"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Wed Mar 21 16:36:25 2018 -0700"
      },
      "message": "Renamed AUTOFILL_COMPAT_MODE_ALLOWED_PACKAGES.\n\nThe syntax of that setting changed from P Developer Preview1 to the final P, so\nit\u0027s safer to use a new name than risk breaking devices during the update.\n\nBug: 74458004\nTest: atest CtsAutoFillServiceTestCases:VirtualContainerActivityCompatModeTest\\\nFrameworksCoreTests:SettingsBackupTest\n\nChange-Id: I1c507e8eae20f598dfe259178667ae6c2bc892ff\n"
    },
    {
      "commit": "2568de06640518210f3bc4df479474ddc95e82b7",
      "tree": "2c97a70488e1191bbf4eae61a4ad6633aa6385cb",
      "parents": [
        "40bf2b0fd1e23cf667b36b474dc4ccc6efcca065"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Wed Mar 21 08:52:14 2018 -0700"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Wed Mar 21 09:03:08 2018 -0700"
      },
      "message": "Set FIELD_AUTOFILL_NUM_DATASETS to -1 when service return no response.\n\nTest: adb shell logcat -b events | grep sysui | grep \u0027757,907\u0027\n     # while running LoginActivityTest#testAutoFillNoDatasets\n\nBug: 70241978\n\nChange-Id: I611bd4fa8407b16491f1ae7b859564233fa6ba81\n"
    },
    {
      "commit": "a594510bdca5829a1422909c5230735cacba75d5",
      "tree": "c6a3eeba4dbc77e7eec5bea36d360910da76214b",
      "parents": [
        "4cda02f25f87f6163fdd873a727dad02687d6e7b"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Mon Mar 19 17:06:16 2018 -0700"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Mon Mar 19 17:42:30 2018 -0700"
      },
      "message": "Fixed Save logic so it\u0027s not triggered when field was not autofilled.\n\nTest: atest CtsAutoFillServiceTestCases:VirtualContainerActivityTest#testSaveNotShown_initialValues_noUserInput_serviceDatasets\\\nCtsAutoFillServiceTestCases:VirtualContainerActivityCompatModeTest#testSaveNotShown_initialValues_noUserInput_serviceDatasets\nTest: atest CtsAutoFillServiceTestCases\nTest: manual verification with Chrome in compat mode\n\nFixes: 75333153\n\nChange-Id: I344755ce0f5937180b4647fa47269eca5c93c980\n"
    },
    {
      "commit": "4cd1ae0cb14c53d4a5c374a00a9a5208e8fd98cb",
      "tree": "abdb8e76efeaa9746ab2e87444cb996557a0836e",
      "parents": [
        "2d76c3ce8216f18c0a81eb53c8479887581cc43c"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Thu Mar 15 15:55:05 2018 -0700"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Thu Mar 15 16:00:26 2018 -0700"
      },
      "message": "Cosmetic changes on Field Classification TODOs and docs.\n\nTest: in TreeHugger we trust!\nBug: 73648631\n\nChange-Id: I9390fb570e18e9636da2de27e2bc6186d5958e41\n"
    },
    {
      "commit": "86e9405b422de5c5d72a2149d839551ae2251efc",
      "tree": "ecb897f6a5349b196eb80cc7035c650aae062d44",
      "parents": [
        "1c7eb0c8eb156c4656f2d3e1b97929797e4e7ec9"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Mon Mar 12 10:28:42 2018 -0700"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Mon Mar 12 10:32:45 2018 -0700"
      },
      "message": "Add default URL bar resource id for autofill compat mode.\n\nThese ids used to be defined at the manifest but now are defined on settings,\nso we need to provide default values until the settings are fixed.\n\nTest: atest FrameworksServicesTests:AutofillManagerServiceTest\n\nBug: 74445943\n\nChange-Id: I050a96d73cb9e008179865381c6abc3041e82844\n"
    },
    {
      "commit": "1c7eb0c8eb156c4656f2d3e1b97929797e4e7ec9",
      "tree": "33fa99c5535ffe39482f0f29ca37c18c6ba6263c",
      "parents": [
        "5f6980af6e988670bef921956815c644d1a9c7e8"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Fri Mar 09 14:13:18 2018 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Mon Mar 12 10:11:20 2018 -0700"
      },
      "message": "Moved urlBarResourceId from autofill service manifest to whitelist settings.\n\nThe manifest attribute is still public as it might have been used by autofill\nservices deployed against P DP1; it will be removed after the next developer\nprevis is branched out. We also need to assumie a default value for the buttons\nif not specified by settings, but that will be done in a separate change so it\ncan be easily reverted.\n\nAlso implemented support for multiple buttons, and added unit tests.\n\nTest: atest CtsAutoFillServiceTestCases:VirtualContainerActivityCompatModeTest \\\nCtsAutoFillServiceTestCases:VirtualContainerActivityTest \\\nFrameworksServicesTests:AutofillManagerServiceTest\n\nBug: 74445943\nBug: 72811561\nFixes: 73786629\n\nChange-Id: I066ecf40fde2c5318dd8633a659fca8b7af8aecd\n"
    },
    {
      "commit": "8c55e8c306ceb26c9c177b745ea855ac3e4c1372",
      "tree": "592362423a94ff91115697a0116ca0831cf502fe",
      "parents": [
        "a4d970ea4022998bb55ef4f50cfc576cc2ca76fa",
        "385ee5393d5790b0c1a38f9aab7bec51b9d0caf1"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Mar 07 21:24:46 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 07 21:24:46 2018 +0000"
      },
      "message": "Merge \"DO NOT MERGE - Disable warning on blocking one-way call from autofill server.\" into pi-dev"
    },
    {
      "commit": "f99b1d8fd998b75200b0ce27cf22c49671f7a3cf",
      "tree": "35f0b44e8196fe691e4c2eb1536b24304644a032",
      "parents": [
        "1a1dc60ff5776a13ae719bfdb831e6092b39cd42",
        "54cc68370cc3c8e16a54da29e2ea0018d9098f39"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Mar 07 19:40:55 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 07 19:40:55 2018 +0000"
      },
      "message": "Merge \"Implemented notifyViewClicked() on compat mode.\" into pi-dev"
    },
    {
      "commit": "385ee5393d5790b0c1a38f9aab7bec51b9d0caf1",
      "tree": "99fd6d5737e5c9c7915b06255d75ebfb0a55b1dd",
      "parents": [
        "74cfe5674202a85f2779d5e8c9092edcf0ebd4db"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Wed Mar 07 09:56:41 2018 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Wed Mar 07 19:24:45 2018 +0000"
      },
      "message": "DO NOT MERGE - Disable warning on blocking one-way call from autofill server.\n\nThis behavior existed since autofill was introduced on O and it won\u0027t be fixed\non P, so there\u0027s no point on warning. In fact, the warning is often a red\nherring for other issues, not to mention a big logcat spammer.\n\nBug: 35708678\nTest: manual verification looking at logcat\n\nChange-Id: I40be4ce25abc5b097ea67e5cb34bb9c4237f0826\n"
    },
    {
      "commit": "54cc68370cc3c8e16a54da29e2ea0018d9098f39",
      "tree": "228885190bdb975f3705209cf296349aab7e9399",
      "parents": [
        "0db51ad50ef0791b196c33759f3ad2c59b2d9395"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Tue Mar 06 12:54:31 2018 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Wed Mar 07 09:27:02 2018 -0800"
      },
      "message": "Implemented notifyViewClicked() on compat mode.\n\nTest: atest CtsAutoFillServiceTestCases:android.autofillservice.cts.VirtualContainerActivityCompatModeTest#testSave_submitButtonClicked\n\nFixes: 73649008\n\nChange-Id: Icf6a8b617e06055c58e38c5b7208c7f3ef3121ee\n"
    },
    {
      "commit": "d71f90266d0e361ed5f814b4a7c4dbe3bdf3b913",
      "tree": "40d364741c58a52754ebe16b68d9e0891ad6d7ba",
      "parents": [
        "0db51ad50ef0791b196c33759f3ad2c59b2d9395"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Mon Feb 26 13:17:39 2018 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Mon Mar 05 13:59:09 2018 -0800"
      },
      "message": "Destroy fill UI when app dies.\n\nThis is a regression caused by the autofill compat feature change, as the\nFill UI window was changed from a sub-panel which is auto managed by the window\nmanager to an overlay, to ensure the fill UI covers all app windows, so compat\nmode would work for apps without app changes.\n\nTest: atest CtsAutoFillServiceTestCases:SessionLifecycleTest#testDatasetGoesAwayWhenAutofilledAppIsKilled\nTest: atest CtsAutoFillServiceTestCases:SessionLifecycleTest#testSaveRemainsWhenAutofilledAppIsKilled\nTest: atest CtsAutoFillServiceTestCases # usual flakiness\nTest: manual verification by adb shell kiling an app while UI is shown\n\nFixes: 73566982\n\nChange-Id: I42f0acbaf3d0b19c081b8cb3613bebb01ceb487a\n(cherry picked from commit 57dae0b6f0678d2c43e4556fe7a9efee5214dbd8)\n"
    },
    {
      "commit": "cd11321e8e5606d366366a78078461c3c0046837",
      "tree": "c929d336da0562cebdbc57dc970e5173e4212d45",
      "parents": [
        "13b4d509b8a3c42018e232e153c98a668f5374fc",
        "11353c8d9f724d6131c4cf54defef9e1addbcae7"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Mar 03 03:14:57 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Mar 03 03:14:57 2018 +0000"
      },
      "message": "Merge \"Added cmd to change number of visible datasets on Autofill dataset picker.\""
    },
    {
      "commit": "b0fa378f9d390d27ab2a2f83eb6fa16f2b5cbb97",
      "tree": "43413817e97fb7f86dfdc4bc6b3515e0cb2a84ed",
      "parents": [
        "bf6edacac900e4f889dde292474e0e3fecb8d689"
      ],
      "author": {
        "name": "Dake Gu",
        "email": "dake@google.com",
        "time": "Mon Feb 26 12:25:14 2018 -0800"
      },
      "committer": {
        "name": "Dake Gu",
        "email": "dake@google.com",
        "time": "Wed Feb 28 16:10:07 2018 -0800"
      },
      "message": "autofill: touch on IME should not close autofill\n\nag/3434666 causes a regression:\nBefore ag/3434666, autofill gets touch event after IME, autofill\nclose itself if it gets ACTION_OUTSIDE touch event.\nBut after ag/3434666, autofill intercepts touch events before IME, if\nuser touches within IME, autofill still gets ACTION_OUTSIDE event,\nand close itself unexpectedly.\n\nThe fix moves the closing code to ViewRootImpl.EarlyPostImeStage\naround the same place closing tooltip.\n\nIf user taps outside autofill window, we will force to close window,\neven last autofillid that requestShowUi does not match.\n\nBug: 73796497\nTest: atest CtsAutoFillServiceTestCases\nTest: Added LoginActivityTest.testAutofillTapOutside\nTest: manually tested using IME and sample app\nTODO: need a fake IME service to dispatch given key upon touch.\n\nChange-Id: I10fc0d29dc30d29a48b2118264ec1c4375062deb\n"
    },
    {
      "commit": "63ed15bd3ec1f3b4c41bbe813103e7ab4fcd7b7d",
      "tree": "2d10adac02bf59a477950be19f321b788727a365",
      "parents": [
        "daa44c28d63eb344894eeae28a992593126b7a96",
        "fddb86a80c1a9411cc9075f3bd95742cda11ed28"
      ],
      "author": {
        "name": "Tetsutoki Shiozawa",
        "email": "tetsutoki.shiozawa@sony.com",
        "time": "Wed Feb 28 00:24:18 2018 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Feb 28 00:24:18 2018 +0000"
      },
      "message": "Merge \"Fix: Double-free error on RemoteFillService\" am: 5b04f89343 am: b23ec4eaa7\nam: fddb86a80c\n\nChange-Id: I87de2e6bc8f446dc0cddf41cb3e40d76cdc55d98\n"
    },
    {
      "commit": "fddb86a80c1a9411cc9075f3bd95742cda11ed28",
      "tree": "1f8d4f4fa2a856becf4f29a8db24ab1e525cafe8",
      "parents": [
        "5e87e7c98347698e7173687bff03ebdbb5efa863",
        "b23ec4eaa7941a7a624a3c8c3a8bed38d4f19199"
      ],
      "author": {
        "name": "Tetsutoki Shiozawa",
        "email": "tetsutoki.shiozawa@sony.com",
        "time": "Wed Feb 28 00:12:33 2018 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Feb 28 00:12:33 2018 +0000"
      },
      "message": "Merge \"Fix: Double-free error on RemoteFillService\" am: 5b04f89343\nam: b23ec4eaa7\n\nChange-Id: I3acedf1add384730df6f987b0f20edb77b250228\n"
    },
    {
      "commit": "11353c8d9f724d6131c4cf54defef9e1addbcae7",
      "tree": "49cf32c028d48903743204d824eeb51ff31744dd",
      "parents": [
        "0ec75beab7fd5ffb86cd8193eb77db9930b220e8"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Mon Feb 26 18:30:15 2018 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Mon Feb 26 18:36:15 2018 -0800"
      },
      "message": "Added cmd to change number of visible datasets on Autofill dataset picker.\n\nBug: 73796644\n\nTest: adb shell cmd autofill set max_visible_datasets 5\nTest: adb shell cmd autofill get max_visible_datasets\n\nChange-Id: I3d86ada028354a4329c054c773d12bc7913fd61d\n"
    },
    {
      "commit": "26c93c94c90f1f84fa607bdec40e6aff7555cf83",
      "tree": "4c441e6ea80ce091c139b6ab6b2ad5009cc2b334",
      "parents": [
        "cb0714332d5b60b6c852395c62a11f6a0251ba4a"
      ],
      "author": {
        "name": "Tetsutoki Shiozawa",
        "email": "tetsutoki.shiozawa@sony.com",
        "time": "Fri Feb 23 13:16:56 2018 +0900"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Mon Feb 26 18:16:21 2018 +0000"
      },
      "message": "Fix: Double-free error on RemoteFillService\n\nSymptom:\nRemoteFillService was crashed due to IllegalArgumentException\n\"Service not registered:\" at onServiceConnected.\n\nRoot cause:\nRemoteFillService#onServiceConnected tries to unbind the connection\nif mDestroyed is flagged or mBinding is not flagged. It always fails\nwith IllegalArgumentException.\nBoth mDestroyed and !mBinding mean the connection was unbound.\nYou can\u0027t unbind the unbound connection. It\u0027s not allowed.\n\nFixes: 73864601\nFixes: 69905688\n\nChange-Id: If5481468ddac7be41accad63e9d5382bc6c029fd\n"
    },
    {
      "commit": "e05cd3ddbe28754e61b0ab6a690c53bd01088e9d",
      "tree": "1de61699f69421bd7a7314a8c34f910ee8208507",
      "parents": [
        "97c5a8586e31061c0e30cf18b577d6e18f1a535e",
        "3e813b420d0ea79b87b72c243a616cc0470afaba"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Feb 23 06:10:21 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 23 06:10:21 2018 +0000"
      },
      "message": "Merge \"Reset compat mode settings on settings change.\""
    },
    {
      "commit": "09571f89435f3639a747cf4a7a0705b494c7a93e",
      "tree": "6d4fdf2861a6ab7addb31bbfcc6d1df2c430d3d0",
      "parents": [
        "f09c8c168db25ad7fd01f7ad3b64f548fce296f1",
        "6a20a194dd965c66d620d6e6dd0abbabd9ca6360"
      ],
      "author": {
        "name": "Dake Gu",
        "email": "dake@google.com",
        "time": "Fri Feb 23 01:35:55 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 23 01:35:55 2018 +0000"
      },
      "message": "Merge \"autofill: pass keyevent from fillui to app\""
    },
    {
      "commit": "3e813b420d0ea79b87b72c243a616cc0470afaba",
      "tree": "40eacf1d60a7853a5cb5d24a0f2f824acb83cc09",
      "parents": [
        "53f259280f76c6d34ca08d32f67ada5d212e434e"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Thu Feb 22 16:03:43 2018 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Thu Feb 22 16:06:26 2018 -0800"
      },
      "message": "Reset compat mode settings on settings change.\n\nTest: manual verification\nTest: atest CtsAutoFillServiceTestCases:VirtualContainerActivityCompatModeTest\n\nBug: 73786629\n\nChange-Id: Id77084fe38e75eaedba828d8737e6e465c015400\n"
    },
    {
      "commit": "6a20a194dd965c66d620d6e6dd0abbabd9ca6360",
      "tree": "fdaebd969792d8094007059dab1b06bd93dc25e0",
      "parents": [
        "961b465ac469d9f596e8bd1d6a3bba10a63ba2d8"
      ],
      "author": {
        "name": "Dake Gu",
        "email": "dake@google.com",
        "time": "Thu Feb 08 12:09:30 2018 -0800"
      },
      "committer": {
        "name": "Dake Gu",
        "email": "dake@google.com",
        "time": "Wed Feb 21 13:56:39 2018 -0800"
      },
      "message": "autofill: pass keyevent from fillui to app\n\nSince autofill window was made to have window focus, app lost the\nability to accept physical keyboard typing. User can no longer\ntype on physical keyboard to filter autofill result.\n\nThis CL dispatches unhandled keyevent(e.g. A/B/C) from autofill\nwindow to app ViewRootImpl in a similar way InputMethodService\ndispatches keyevent to app\u0027s ViewRoot.\n\nThe unhandled key is sent to app window\u0027s ViewRootImpl\nPreImeStage so that the keystroke could be translated to CJK by IME.\n\nThis CL does not affect fullscreen autofill window for TV  where app\nwindow is fully covered: user has to close fullscreen autofill window\nfirst.\n\nBug: 72951156\nTest: atest CtsAutoFillServiceTestCases:LoginActivityTest\n\nChange-Id: I8e50cfdfe8d5691d2b248d85f924c38488ca30f4\n"
    },
    {
      "commit": "e2e3b77aad14cda12894593b91069381bc2d1667",
      "tree": "e4fa5aa96636dff972e3215a41afe4e459e241cb",
      "parents": [
        "00ddbbc8c38396d46fb838d7199e69303c989448",
        "9f1921f9ffc20544f22e76dd412523b53cb68a14"
      ],
      "author": {
        "name": "Eugene Susla",
        "email": "eugenesusla@google.com",
        "time": "Wed Feb 21 21:32:42 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Feb 21 21:32:42 2018 +0000"
      },
      "message": "Merge \"Use PooledLambda in autofill code\""
    },
    {
      "commit": "9f1921f9ffc20544f22e76dd412523b53cb68a14",
      "tree": "874ee97c594b2e5fff45bddc65c0b87e4f071a57",
      "parents": [
        "4ab3a172950a12221f9f9218654887a8f6cd1718"
      ],
      "author": {
        "name": "Eugene Susla",
        "email": "eugenesusla@google.com",
        "time": "Mon Feb 12 14:33:15 2018 -0800"
      },
      "committer": {
        "name": "Eugene Susla",
        "email": "eugenesusla@google.com",
        "time": "Wed Feb 21 19:47:18 2018 +0000"
      },
      "message": "Use PooledLambda in autofill code\n\nThis replaces the usage of handler message types with PooledLambda\n\nBug: 73648631\nTest: atest CtsAutoFillTestCases\nChange-Id: I3be0870116489c0c831353fe4ab9abed3cac3a93\n"
    },
    {
      "commit": "607223f3b7a1c4dc3ac995f742f8d2da50d85ffc",
      "tree": "4ca0d3ae8d23bd2056481ddcb7199e75012ed041",
      "parents": [
        "944836c6c70bb91e1520434149c630313d0b8699"
      ],
      "author": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Mon Feb 19 14:09:02 2018 +0000"
      },
      "committer": {
        "name": "Narayan Kamath",
        "email": "narayan@google.com",
        "time": "Mon Feb 19 14:12:01 2018 +0000"
      },
      "message": "Remove uses of libcore.util.Objects.hashCode / equals.\n\nUse public API in java.util.Objects instead.\n\nTest: make\nChange-Id: I413280f254743a2efa2640a2194693aeb5980605\n"
    },
    {
      "commit": "0c200baed436c2c9d4e842f6ca47e4f9d52b2f14",
      "tree": "4b2f7c13b63da01286a413e99622e4c7a45eb0fe",
      "parents": [
        "722d3e581cf9bbee0e084f6f6b5fa75053ff2f44",
        "47b37aa03480837a7cbbce8a1201554e102fd781"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Feb 17 11:17:05 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Feb 17 11:17:05 2018 +0000"
      },
      "message": "Merge \"Minor autofill changes to support compat mode CTS tests.\""
    },
    {
      "commit": "58f166826f5c452cbe36d4d014e099a9c7c4954f",
      "tree": "b745af2f9f1c7d268f4a6f095e6b9968d356add3",
      "parents": [
        "8b0012bc2c7eefff6d9ee73791a6c83d22130e5a",
        "1e132a4c1d733b5149257821ad0cf08b41ac1f5e"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Feb 17 03:21:04 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Feb 17 03:21:04 2018 +0000"
      },
      "message": "Merge \"Address comments for ag/3587350\""
    },
    {
      "commit": "fee7bd20752892575903c9bfceb78e705cdb085d",
      "tree": "7b3843826fae7c9d186cb7902708ebe89f3fa954",
      "parents": [
        "cde189e333097b7655df921b3110ca124db19a86",
        "6ef61b82a07d9c6bc7d19a95a22bad438457291d"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Feb 17 02:55:01 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Feb 17 02:55:01 2018 +0000"
      },
      "message": "Merge \"Another Autofill counter metric fix (plus some minor doc touches).\""
    },
    {
      "commit": "47b37aa03480837a7cbbce8a1201554e102fd781",
      "tree": "7955c0a160b52fa803eb7c67065638ccca5314cd",
      "parents": [
        "385ccb10b29656e8cfdab261236f6101af53ac68"
      ],
      "author": {
        "name": "Svet Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Fri Feb 16 00:11:39 2018 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Fri Feb 16 18:01:17 2018 -0800"
      },
      "message": "Minor autofill changes to support compat mode CTS tests.\n\nBug: 72811561\nTest: atest CtsAutoFillServiceTestCases:VirtualContainerActivityCompatModeTest\n\nChange-Id: I6ec2563cea75afc77a1598805988d8e6c433c574\n"
    },
    {
      "commit": "1e132a4c1d733b5149257821ad0cf08b41ac1f5e",
      "tree": "625637788390974b81f5d291667bef68e2293d26",
      "parents": [
        "020731e9a28ada751209adf2538c9be08c0c6ad6"
      ],
      "author": {
        "name": "Svet Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Fri Feb 16 09:34:22 2018 -0800"
      },
      "committer": {
        "name": "Svet Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Fri Feb 16 09:34:25 2018 -0800"
      },
      "message": "Address comments for ag/3587350\n\nTest: cts-tradefed run cts -m CtsAutoFillServiceTestCases\n\nChange-Id: I2d46e1234b8455e3f925bc1be29e6c2fbe19c252\n"
    },
    {
      "commit": "75f5f239bc0d5de963d4ef382523fdfe3a7ae006",
      "tree": "df822c2dd9f6f6723b367916fae3af59e9d3924b",
      "parents": [
        "2144158a263607555b3ba556b411b576f78c5884",
        "020731e9a28ada751209adf2538c9be08c0c6ad6"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Fri Feb 16 16:04:17 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 16 16:04:17 2018 +0000"
      },
      "message": "Merge \"Revert an incorrectly changed API call\""
    },
    {
      "commit": "020731e9a28ada751209adf2538c9be08c0c6ad6",
      "tree": "a6d0e050cca382bfa2207e6d509f02bf7b1132f2",
      "parents": [
        "7d5beeb25530ec016557f37bb900b201ba4d498c"
      ],
      "author": {
        "name": "Svet Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Fri Feb 16 00:11:39 2018 -0800"
      },
      "committer": {
        "name": "Svet Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Fri Feb 16 00:11:43 2018 -0800"
      },
      "message": "Revert an incorrectly changed API call\n\nTest: cts-tradefed run cts -m CtsAutoFillServiceTestCases\n\nbug:73508533\n\nChange-Id: Ie103814294230177ffddf957ce8c5adcb84686c3\n"
    },
    {
      "commit": "6ef61b82a07d9c6bc7d19a95a22bad438457291d",
      "tree": "ef297184823620ac00dc3c8a81d87582ebb297c8",
      "parents": [
        "aacda9d287b882bf7da41429402543a74b7d442a"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Thu Feb 15 16:26:02 2018 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Thu Feb 15 16:27:30 2018 -0800"
      },
      "message": "Another Autofill counter metric fix (plus some minor doc touches).\n\nTest: in TH we trust\n\nBug: 71863561\n\nChange-Id: I06e2a2915a26b80acb31e82b41b0f075ab105171\n"
    },
    {
      "commit": "a2d250e98cbf66825d3037ed3f0e874ec2ab1785",
      "tree": "3a4736286c13c2b2447923f4336ea0b827217296",
      "parents": [
        "5f8b250f1a2dc69eac726d4011d66322f8f192f7"
      ],
      "author": {
        "name": "Dake Gu",
        "email": "dake@google.com",
        "time": "Thu Feb 15 15:26:53 2018 -0800"
      },
      "committer": {
        "name": "Dake Gu",
        "email": "dake@google.com",
        "time": "Thu Feb 15 15:29:15 2018 -0800"
      },
      "message": "Autofill: failing testClickCustomButton caused by fullscreen CL\n\nLast fullscreen CL moved onClickListener from decor view to\nRemoteView, that causes a regression in testClickCustomButton where\nit sets a click listener on the RemoteView too.\n\nBug: N/A\nTest: atest CtsAutoFillServiceTestCases:LoginActivityTest#testClickCustomButton\nChange-Id: I5f9fe1383004476ddd1db224d937c99889725813\n"
    },
    {
      "commit": "eb46f6fc32715666f5b03482f0008c9645feb780",
      "tree": "2e939880c501a2671e3a4e89be9bacd18f287f2d",
      "parents": [
        "15d81021112c330bc3c3a9d557bb6dbae80988e7",
        "9f879a2da4cd633629bfa91060a511929e83262a"
      ],
      "author": {
        "name": "Dake Gu",
        "email": "dake@google.com",
        "time": "Thu Feb 15 20:39:24 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Feb 15 20:39:24 2018 +0000"
      },
      "message": "Merge \"autofill: render autofill ui in fullscreen for tv\""
    },
    {
      "commit": "e9aa338817ed0a7ab1668e4d4fe176311b6476b9",
      "tree": "475c73271b139014c775b9cfbc39104eeafad305",
      "parents": [
        "1751ab9c11cc241cc92ce453ae20c5a727788436",
        "febb733c1b170ccba0668e50beef1e230dc51eda"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Feb 15 08:06:45 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Feb 15 08:06:45 2018 +0000"
      },
      "message": "Merge \"Autofill Field Classification improvements.\""
    },
    {
      "commit": "febb733c1b170ccba0668e50beef1e230dc51eda",
      "tree": "240268a216c80cedb01f0d64ed647080a8738982",
      "parents": [
        "90f285ba517995f391494279d12a7cdb4bd024c2"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Mon Feb 12 18:12:55 2018 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Wed Feb 14 20:27:55 2018 -0800"
      },
      "message": "Autofill Field Classification improvements.\n\n* Changed the remoteId -\u003e userValue API to userValue -\u003e categoryId so the\n  category could map to multiple values (for example,\n  \"email\" -\u003e \"email1\", \"email2\")\n* Added method and settings for maximum number of category ids.\n* Tuned the default value of some settings.\n\nBug: 70407264\n\nTest: atest CtsAutoFillServiceTestCases:UserDataTest \\\n            CtsAutoFillServiceTestCases:FieldsClassificationTest \\\n\t    SettingsBackupTest\n\nChange-Id: I27f348c500077937c0f4bf65db6a899fa3c41cf6\n"
    },
    {
      "commit": "a6ebff0f0ba66274b333a157c3f15d7c38527fe5",
      "tree": "fb10019dd93ba87154a4843d51d9e4b3e08f84e8",
      "parents": [
        "581576efef1b25efedc4a7657e8ea84a26a7fe2f"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Wed Feb 14 14:07:02 2018 -0800"
      },
      "committer": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Wed Feb 14 18:18:41 2018 -0800"
      },
      "message": "Don\u0027t hold the autofill lock when looking up fill compat packages\n\nTest: cts-tradefed run cts-dev -m CtsAutoFillServiceTestCases\n\nBug:73072565\n\nChange-Id: I773e1e2f4ceedbe45c9389a065dc7f6fb0ab65b1\n"
    },
    {
      "commit": "9f879a2da4cd633629bfa91060a511929e83262a",
      "tree": "8d888dbbec84c1d057cef4aa6ce32902089b8788",
      "parents": [
        "e5844ce13be5996bf22507342874f092a7928b44"
      ],
      "author": {
        "name": "Dake Gu",
        "email": "dake@google.com",
        "time": "Thu Jan 25 18:08:08 2018 -0800"
      },
      "committer": {
        "name": "Dake Gu",
        "email": "dake@google.com",
        "time": "Wed Feb 14 13:02:52 2018 -0800"
      },
      "message": "autofill: render autofill ui in fullscreen for tv\n\nWhen IME and autofill are both showing on TV, it\u0027s confusing which\nwindow has the input focus. This CL changes autofill window to\nfull screen for TV.\n\nBug: 72122929\nTest: Manual tested on TV with github example. Manually tested on\nphone that UI doesn\u0027t change.\n\nChange-Id: Id97b6389523b2ee744d02f5bc7847b307b0b29e4\n"
    },
    {
      "commit": "185de72695f4e442febf4f83f79e9a7bba1a1980",
      "tree": "4cb6f36d7952993a8e2dd3c76e4d9a0dac64528b",
      "parents": [
        "90f285ba517995f391494279d12a7cdb4bd024c2"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Tue Feb 13 17:25:44 2018 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Wed Feb 14 09:43:21 2018 -0800"
      },
      "message": "Add support for url_bar sanitization on autofill compat mode.\n\nBrowsers typically use a standard class (like EditView) to hold the URL of the\npage being loaded, and the content of that view is sanitized in the initial\nautofill request. So, when running in compat mode, we need a mechanism to let\nservices tell which view contains the URL, so we can convert its contents to\na sanitized webScheme + webDomain pair or properties.\n\nTest: manual verification\nFixes: 72994424\n\nChange-Id: I8be5f3533d6c31f81f28036dc51d5de10a528079\n"
    },
    {
      "commit": "5f5211676278f911890527aeeca11fd2ce50cb47",
      "tree": "0fc3ee8c5fb686a9ddc49a9bc36c9dfe7a598ac8",
      "parents": [
        "e14ff3799ab8e14f73a7d251b5164d8527b6e35a"
      ],
      "author": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Tue Feb 06 11:37:49 2018 -0800"
      },
      "committer": {
        "name": "Andreas Gampe",
        "email": "agampe@google.com",
        "time": "Wed Feb 07 20:28:54 2018 -0800"
      },
      "message": "Frameworks: Annotate trivial @GuardedBy in services/autofill\n\nAdd @GuardedBy for simple functions that require a single lock\nand are named XYZLocked.\n\nDerived by errorprone.\n\nBug: 73000847\nTest: m\nTest: m javac-check-framework RUN_ERROR_PRONE\u003dtrue\nChange-Id: I76889beb0a992dbd3e638e224111749814d2fe7b\n"
    },
    {
      "commit": "44ba81cc4ffc0a83a662fbd804a96b2625bfe4a7",
      "tree": "2de851a1c8801133efedad0fd15ff4fdcfdd2dc3",
      "parents": [
        "c6fa68a972cc057cf3289dadba0ad728053e5eb9",
        "2f184df0f5301edd66f1290d5d00f876af45ad72"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Feb 06 18:02:36 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 06 18:02:36 2018 +0000"
      },
      "message": "Merge \"Improved logging on Autofill Save.\""
    },
    {
      "commit": "d1d0e4ae1a57bc9b0966c6b90706278fffbe7418",
      "tree": "547479b48209e4e8cb4c6a15a3941326aa74fc3f",
      "parents": [
        "066b551e894c7bffe1f91d744f74690aafc5450a"
      ],
      "author": {
        "name": "felipeal",
        "email": "felipeal@google.com",
        "time": "Mon Feb 05 15:45:41 2018 +0100"
      },
      "committer": {
        "name": "felipeal",
        "email": "felipeal@google.com",
        "time": "Mon Feb 05 15:51:17 2018 +0100"
      },
      "message": "Dump autofill compat packages.\n\nTest: manual verification\nBug:72811034\n\nChange-Id: Iee815a84e4ff9fa1ace9301b5da7c883d4e753b8\n"
    },
    {
      "commit": "24c90450fe3fe097a7bca51edd6a4cffd8fd13aa",
      "tree": "714ff2893629304fb66a812c488eeb5318f3c931",
      "parents": [
        "94baed8b7c4fcf1d0fcc2f10468bf22475b5be00"
      ],
      "author": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Wed Dec 27 15:17:14 2017 -0800"
      },
      "committer": {
        "name": "Svetoslav Ganov",
        "email": "svetoslavganov@google.com",
        "time": "Fri Feb 02 19:34:26 2018 -0800"
      },
      "message": "Autofill compatibility mode.\n\nAutofill helps users fill credentials, addresses, payment methods,\nemails, etc without manually typing. When focus lands on a fillable\nelement the platform captures a snapshot of the screen content and\nsends it to an autofill service for analysis and suggestions. The\nscreen snapshot is a structured representation of the screen content.\nIf this content is composed of standard widgets, autofill works\nout-of-the-box. However, some apps do their own rendering and\nthe content in this case looks like a single view to the platform\nwhile it may have semantic structure. For example, a view may render\na login page with two input test fields.\n\nThe platform exposes APIs for apps to report virtual view structure\nallowing autofill services to handle apps that have virtual content.\nAs opposed to apps using standard widgets, this case requires the app\ndeveloper to implement the new APIs which may require a fair amount\nof code and could be seen as a processes that could take some time.\nThe most prominent typs of apps that fall into this category are\nbrowsers.\n\nUntil most apps rendering virtual content and specifically browsers\ndon\u0027t implement the virutal APIs, autofill providers need to fall-\nback to using the accessibliity APIs to provide autofill support\nfor these apps. This requires developers to work against two sets\nof APIs - autofill and accessibility - which is incovenient and error\nprone. Also, users need to enable two plugins - autofill and\naccessibility which is confusing. Additionally, the privacy and\nperfomance impact of using the accessibility APIs cannot be addressed\nwhile autofill providers need to use thes APis.\n\nThis change adds an autofill compatibility mode that would allow\nautofill services to work with apps that don\u0027t implement the\nvirtual structure autofill APIs. The key idea is to locally enable\naccessibility for the target package and remap accessibility to\nautofill APIs and vise versa. This way an autofill provider codes\nagainst a single set of APIs, the users enable a single plugin,\nthe privacy/performance implications of using the accessibility\nAPIs are addressed, the target app only takes a performance hit\nsince accessibility is enabled locally which is still more efficient\ncompared to the performance hit it would incur if accessibility is\nenabled globally.\n\nTo enable compatibility mode an autofill service declares in its\nmetadata which packages it is interested in and also what is\nthe max version code of the package for which to enable compat\nmode. Targeted versioning allows targeting only older versions of\nthe package that are known to not support autofill while newer\nversions that are known to support autofill would work in normal\nmode.\n\nSince compatibility mode should be used only as a fallback we\nhave a white list setting with the packages for which this mode\ncan be requested. This allows applying policy to target only\napps that are known to not support autofill.\n\nTest:\n     cts-tradefed run cts-dev -m CtsAutoFillServiceTestCases\n     cts-tradefed run cts-dev -m CtsAccessibilityServiceTestCases\n\nbug:72811034\n\nChange-Id: I11f1580ced0f8b4300a10b3a5174a1758a5702a0\n"
    },
    {
      "commit": "b7158102ba903b65586e0cbd4a745967e17bf8f8",
      "tree": "ca2573cd73a6dc3a4e04421a0c95e374f3e5fcc4",
      "parents": [
        "1810393c5a5fa0d9f8579e0eeabd7b334482163c",
        "09d58a4e3b374609601182c1dccb71a297bc97c8"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 31 19:32:37 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 31 19:32:37 2018 +0000"
      },
      "message": "Merge \"Changed dataset methods that take a Pattern filter to accept null.\""
    },
    {
      "commit": "09d58a4e3b374609601182c1dccb71a297bc97c8",
      "tree": "40f7405eedb4c3fce517b8c86de4b0a3217c6308",
      "parents": [
        "6fa646ab95de0967a79bb9a136e75623de2cc808"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Tue Jan 30 14:04:03 2018 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Wed Jan 31 17:47:12 2018 +0000"
      },
      "message": "Changed dataset methods that take a Pattern filter to accept null.\n\nIn this case, null means the field should not be filterable, which is useful\nin the cases where it represents a non-authenticated value like a password.\n\nTest: atest CtsAutoFillServiceTestCases:LoginActivityTest#filterTextDisabledUsingNullRegex\nTest: atest CtsAutoFillServiceTestCases:LoginActivityTest\n\nBug: 71359055\nFixes: 72711778\n\nChange-Id: Idc8248f6c95fdb50b934840689616e42ddd6378c\n"
    },
    {
      "commit": "8fe62bea0bdd8bebbf937351d02fdca7b1e81401",
      "tree": "cd10188d064b48d0acd9224d27f8f880255361c1",
      "parents": [
        "0f613004fe98760fa2a7937b2f78aea3a6504e20",
        "c8c0a82f56a5ef0cb3c8f749006d3a3b3e501849"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 31 03:02:41 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 31 03:02:41 2018 +0000"
      },
      "message": "Merge \"New autofill APIs: DateTransformation and DateValueSanitizer.\""
    },
    {
      "commit": "c8c0a82f56a5ef0cb3c8f749006d3a3b3e501849",
      "tree": "747c753222a6f8e8c59f864caad7c090eed1bb7e",
      "parents": [
        "44acfc0a363fe33beb9c496b022162b33d299e3a"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Fri Jan 26 15:51:56 2018 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Mon Jan 29 15:26:26 2018 -0800"
      },
      "message": "New autofill APIs: DateTransformation and DateValueSanitizer.\n\nThese APIs are useful when an app uses a date value for a credit card\nexpiration date.\n\nTest: atest CtsAutoFillServiceTestCases:DateValueSanitizerTest \\\n            CtsAutoFillServiceTestCases:DateTransformationTest \\\n            CtsAutoFillServiceTestCases:CustomDescriptionDateTest\n\nFixes: 72450441\n\nChange-Id: Ie17ab17aa07e0401f4dbba3faa80cc2cc2e7d783\n"
    },
    {
      "commit": "f0baef7460f578428e3dff5eed1ea4602dbb165b",
      "tree": "83fa1de54d147cb8db6e9531f90b2a74fcad34ed",
      "parents": [
        "6fa646ab95de0967a79bb9a136e75623de2cc808"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Fri Jan 26 14:39:39 2018 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Mon Jan 29 11:10:22 2018 -0800"
      },
      "message": "New Autofill APIs for UserData id.\n\nTest: atest CtsAutoFillServiceTestCases:FieldsClassificationTest CtsAutoFillServiceTestCases:UserDataTest\n\nBug: 70407264\n\nChange-Id: Id49efc88e1ccbfa2634bcb6ccaa3371f6fd2ed4e\n"
    },
    {
      "commit": "463b307de856a139baabb8c15d1b00e3b9d077c0",
      "tree": "bca8905edf0222f0a134919776ce043d29d91b6e",
      "parents": [
        "2a5a43d61cba5d57e367f74dff51743ab0cded37"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Wed Jan 24 13:16:44 2018 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Wed Jan 24 13:18:19 2018 -0800"
      },
      "message": "Fixed AUTOFILL_SERVICE_DISABLED_APP and AUTOFILL_SERVICE_DISABLED_ACTIVITY.\n\nThese metric were using the RESERVED_FOR_LOGBUILDER_COUNTER and hence were not\nbeing picked up.\n\nBug: 71863561\n\nTest:  adb shell logcat -b events | grep sysui | egrep \u0027(1231|1232)\u0027\n\nChange-Id: I34136ac3423e819b37fc3c14c1821171af1868d9\n"
    },
    {
      "commit": "e53c1a1b6bb37e9356121d5d3a6e979c125432ff",
      "tree": "2c596b918a4821ccc0c17e4df6c847f86b757828",
      "parents": [
        "1da5ab0183978be836cd08db833d68ad964fbc54",
        "2418109cf186c71d10c38257cd25f16157402adb"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Wed Jan 24 18:31:55 2018 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jan 24 18:31:55 2018 +0000"
      },
      "message": "Merge \"Fixed AUTOFILL_UI_LATENCY metric.\" into oc-mr1-dev am: 5e687224bd\nam: 2418109cf1\n\nChange-Id: I3d8b0e3b785d8427dc6bca9168e7a4b7553cb22f\n"
    },
    {
      "commit": "2418109cf186c71d10c38257cd25f16157402adb",
      "tree": "d2e1e75ddae2c90e530a31227d8dcf8c26d7f701",
      "parents": [
        "9d3738232c4f902855bf6aa37a3240568ac1a197",
        "5e687224bd7ce718bef4fee62811c6550f9ec5be"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Wed Jan 24 18:23:48 2018 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Jan 24 18:23:48 2018 +0000"
      },
      "message": "Merge \"Fixed AUTOFILL_UI_LATENCY metric.\" into oc-mr1-dev\nam: 5e687224bd\n\nChange-Id: I23817abcefde8700c101b756ee6a39d153ea7af5\n"
    },
    {
      "commit": "5e687224bd7ce718bef4fee62811c6550f9ec5be",
      "tree": "a3e53fde3041dc40e3f2105df03e2e8e20a5444a",
      "parents": [
        "2eeab61b4c049501b014f44452bb6193ddf7fdb9",
        "b659adb3f3d13049ca1c08fcec2d419ffd7a386b"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Jan 24 18:13:25 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 24 18:13:25 2018 +0000"
      },
      "message": "Merge \"Fixed AUTOFILL_UI_LATENCY metric.\" into oc-mr1-dev"
    },
    {
      "commit": "fe05a529885281ebfb103d1a3ad6bfb862281268",
      "tree": "e9582f47226a0d0fc04fd5509e02cc554f25b2cc",
      "parents": [
        "f80ebafa34b3531f73b8d42942f625e334433a6d"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Tue Jan 23 15:57:49 2018 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Tue Jan 23 17:49:26 2018 -0800"
      },
      "message": "Don\u0027t crash the app when the assist structure cannot be retrieve.\n\nWhen an app trigger autofill, system_server will eventually call back into the\napp to lazy load the contents of the AssistStructure used for autofill. If that\nbinder transaction fails, we should simple ignore it, rather than crash the app.\n\nTest: atest CtsAutoFillServiceTestCases\nTest: locally changed code to force WTFs and called \u0027adb shell dumpsys autofill\u0027\n\nBug: 72398988\n\nChange-Id: I490ad877b067fb37997b734718b90b00f9d318c8\n"
    },
    {
      "commit": "d11a66220c424c030542aca5c47de059d4a308cc",
      "tree": "6559eb78701cc5a92533d9d95b5e37a8dfa6809d",
      "parents": [
        "e4ac740e39589e3dd3c1696782a39fa8e74764ee"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Thu Jan 18 13:38:24 2018 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Fri Jan 19 12:16:21 2018 -0800"
      },
      "message": "Minor API changes on Autofill Field Classification:\n\n- Removed Scores class and use float[][] directly.\n- Created constant for metadata keys.\n- Removed getAlgorithName() from FieldClassification.\n\nBug: 70291841\n\nTest: m -j update-api\nTest: atest CtsAutoFillServiceTestCases\n\nChange-Id: I62abf93c4f6f0804d838c7fb183c0b8bcb88a136\n"
    },
    {
      "commit": "e4ac740e39589e3dd3c1696782a39fa8e74764ee",
      "tree": "caca6f3659bee527151c53177383e2daea559873",
      "parents": [
        "bf2d3fa9b98c0deb05333c6779ee714e49130452"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Tue Jan 16 19:37:00 2018 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Fri Jan 19 09:39:38 2018 -0800"
      },
      "message": "Implemented getAlgorithm() and getDefaultAlgorithm() using manifest metadata.\n\nBug: 70939974\nTest: atest CtsAutoFillServiceTestCases:FieldsClassificationTest\n\nChange-Id: I8b7028c0acfef164b84821a9e4c99817acc838f8\n"
    },
    {
      "commit": "e30dcb50ec6bd92bbdfc7e1eed4d7ee438e3670f",
      "tree": "4fcf8497ca3a1ec8a2d5fe5d0f283009b204c341",
      "parents": [
        "25be4e0461229fcf206a75fa342e576ca9361e17"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Thu Jan 18 15:57:18 2018 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Thu Jan 18 15:58:03 2018 -0800"
      },
      "message": "Fixed method name that was changed in a previous CL.\n\nBug: 70939974\nTest: nope, build is broken, must fix ASAP\n\nChange-Id: I88cf6ccacb5baa097cea26c859b774738bd9b428\n"
    },
    {
      "commit": "b659adb3f3d13049ca1c08fcec2d419ffd7a386b",
      "tree": "1c587ce35e05bd43c136c877079ed0073ee9f622",
      "parents": [
        "ed6f463636f172dc2c2e5d4a71688d0cb94ab666"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Thu Jan 18 15:21:36 2018 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Thu Jan 18 15:34:59 2018 -0800"
      },
      "message": "Fixed AUTOFILL_UI_LATENCY metric.\n\nThis metric was using the RESERVED_FOR_LOGBUILDER_COUNTER and hence was not\nbeing picked up.\n\nBug: 71863561\nFixes: 72175011\n\nTest: adb shell logcat -b events | grep sysui | grep 1136\nTest: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases\n\nChange-Id: I34f701ff5336a413477fd14172d16d8d1e5403ad\n"
    },
    {
      "commit": "6047bf4f0dcf64f5c7b23f7cfcf9236ce45361a7",
      "tree": "4c8096ff03ea825fcf591cc745a843c5ce102d97",
      "parents": [
        "db6b0fecb4765c2117f9d8b43e5941c0b8f183af",
        "afe65dc28a087cf3089593a8dd825136c9f37f9e"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 18 23:34:00 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 18 23:34:00 2018 +0000"
      },
      "message": "Merge \"Implemented shell cmd to get field classification score.\""
    },
    {
      "commit": "db6b0fecb4765c2117f9d8b43e5941c0b8f183af",
      "tree": "17c1b7bfc225543a89edab0580457cd4d6f9ac5e",
      "parents": [
        "9e1afde8cd41fb27a613c980cf4e0031b6dda2cb",
        "bc055b0ef1c11337b8ec5f681097e7b51e84b9c4"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Thu Jan 18 23:33:44 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 18 23:33:44 2018 +0000"
      },
      "message": "Merge \"Moved Field Classification score logic to ExtServices.\""
    },
    {
      "commit": "afe65dc28a087cf3089593a8dd825136c9f37f9e",
      "tree": "5d0e9000ce65422c1414c23f5b496d8f12e18b47",
      "parents": [
        "bc055b0ef1c11337b8ec5f681097e7b51e84b9c4"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Wed Jan 17 15:12:17 2018 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Thu Jan 18 10:48:17 2018 -0800"
      },
      "message": "Implemented shell cmd to get field classification score.\n\nBug: 70939974\nTest: adb shell cmd autofill get fc_score half kale\n\nChange-Id: Idd5d79500e915f61920865f7b721eddfb580d319\n"
    },
    {
      "commit": "bc055b0ef1c11337b8ec5f681097e7b51e84b9c4",
      "tree": "bc2348a03853306ec0d4b1358f188d843d0385c1",
      "parents": [
        "d67e50eb805239fddedd5bbb5d21b8f78aba26e5"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Fri Jan 05 17:04:10 2018 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Thu Jan 18 10:40:30 2018 -0800"
      },
      "message": "Moved Field Classification score logic to ExtServices.\n\nBug: 70939974\nTest: atest CtsAutoFillServiceTestCases:FieldsClassificationTest \\\n            CtsAutoFillServiceTestCases:UserDataTest\nTest: atest CtsAutoFillServiceTestCases\n\nChange-Id: I75fd59b5d7530fcd7095b26f6e592d7459c7d235\n"
    },
    {
      "commit": "67decfa7f80c06f3405d1e868bc40cb18dd1460a",
      "tree": "7d25219ffc5201a1a7e778ddd74ad1b9ca7a9be1",
      "parents": [
        "66af0e8295812ed4f01ca3b61c502ddde5e5f8f9"
      ],
      "author": {
        "name": "Dake Gu",
        "email": "dake@google.com",
        "time": "Wed Dec 27 11:48:08 2017 -0800"
      },
      "committer": {
        "name": "Dake Gu",
        "email": "dake@google.com",
        "time": "Wed Jan 17 14:42:16 2018 -0800"
      },
      "message": "autofill: support dpad/keyboard\n\nTo make autofill works on non-touch device such as TV, allow\nfill ui window to gain window focus. Fill ui window does not\nneed IME. When IME and fill ui window are both shown, fill ui\nwindow will intercept keyevent before IME.\n\nSince autofill window will steal window focus from app window,\nwe no longer uses View.onWindowFocused() for enter/exit event.\nSwitched to use Activity onResume/onPause. When view\nnotifyViewEntered or notifyViewExited called when Activity is paused,\nit will be ignored. Before Activity goes to pause state,\nnotifyViewExited() is fired on focus view, after Activity leaves\npause state, notifyViewEntered() is fired on focus view.\n\nIn CTS testDatasetAuthTwoFieldsUserCancelsFirstAttempt,  the\nauthentication activity finishes itself in onCreate() which will not\nproduce onPause/onResume in app activity, but it will produce window\nfocus loss/gain event. Since we switch from window focus to activity\nonResume/onPause, we will be missing a show fill ui when return from\nthe never shown authentication activity. To solve this problem,\nwe added special code when receive ActivityResult from authentication\nactivity where we check if the authenticate activity never causes\nonStop event, where we should issue an extra ACTION_VIEW_ENTERED\nevent to show fill ui.\n\nTest: passed all existing autofilltest CTS on sailfish\n      atest CtsAutoFillServiceTestCases\nBug: 70181616\n\nChange-Id: Iafe4dca3be8f049fa6dfd34bac13ccb030c583b6\n"
    },
    {
      "commit": "2f184df0f5301edd66f1290d5d00f876af45ad72",
      "tree": "f9c9c920f8d1aa18634ba6cf44be9c945ac2b920",
      "parents": [
        "c9c82958ab21cb987be8c57b69a1e43037c30543"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Thu Dec 07 15:54:27 2017 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Thu Jan 11 12:49:42 2018 -0800"
      },
      "message": "Improved logging on Autofill Save.\n\nTest: looked at adb logcat while running CTS tests\nTest: atest CtsAutoFillServiceTestCases\n\nBug: 70348203\n\nChange-Id: I115d639dacaeb85792ddaab2465dd0187fd1d362\n"
    },
    {
      "commit": "67ca6c5d68bb035b9ed738850b8414b72ce86b32",
      "tree": "f973779af0248d2537f656a03bbf6e0d7e6237da",
      "parents": [
        "be97bb8467091a7d3d9b18daa40f4010464ca667"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Fri Jan 05 11:23:39 2018 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Fri Jan 05 17:07:32 2018 -0800"
      },
      "message": "YAAFFFCR - Yet Another Android Autofill Framework Field Classification Refactoring.\n\nThe field classification service is moving to another process, hence we need\nto get the scores in a batch and handle the results in a callback.\n\nTest: atest CtsAutoFillServiceTestCases:FillEventHistoryTest \\\n            CtsAutoFillServiceTestCases:FieldsClassificationTest\nBug: 70939974\n\nChange-Id: I0de91f18828872c455abd1609d3a3890ddc3bd4f\n"
    },
    {
      "commit": "1e8a6d36bcc99aed82f9d788750f103f8b74fa43",
      "tree": "4d8cc8bc9e10ba6d10addc5b86a7c65842ee24ca",
      "parents": [
        "fe214f5cc8a5e7a6fb3537ad6048a1078137e84d",
        "27f4573d136949abeacb00f7246ff9911e9cb105"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 04 19:00:40 2018 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 04 19:00:40 2018 +0000"
      },
      "message": "Merge \"Refactored Field Classification score logic so it can be moved to ExtServices.\""
    },
    {
      "commit": "27f4573d136949abeacb00f7246ff9911e9cb105",
      "tree": "cba4af848dbe68029ef20d06f4553a938db55a2b",
      "parents": [
        "c0f8195b3a437b69aaa54ecf697b301e6eedb8c0"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Fri Dec 22 09:05:22 2017 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Wed Jan 03 09:27:51 2018 -0800"
      },
      "message": "Refactored Field Classification score logic so it can be moved to ExtServices.\n\nBug: 70939974\nTest: atest CtsAutoFillServiceTestCases:FieldsClassificationTest \\\n            CtsAutoFillServiceTestCases:UserDataTest\nTest: atest CtsAutoFillServiceTestCases\n\nChange-Id: If584ab3a55744a62f427065bfd44c8c219df83e9\n"
    },
    {
      "commit": "3cb35f37607cdb429734de905706c05957843da6",
      "tree": "b93644282e1e1efa6eb81908512f863aa3852af2",
      "parents": [
        "0a1421d9748b79c532963e05ff592b78526e0d1c",
        "c0f8195b3a437b69aaa54ecf697b301e6eedb8c0"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Dec 23 01:22:35 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Dec 23 01:22:35 2017 +0000"
      },
      "message": "Merge \"Moved  logContextCommitted() logic to the handler...\""
    },
    {
      "commit": "c0f8195b3a437b69aaa54ecf697b301e6eedb8c0",
      "tree": "dad41fa894ac0b72e4914af3426ecd7f73345d68",
      "parents": [
        "9d51240f037916d9fb309b43595f04152068649d"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Thu Dec 21 17:01:25 2017 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Thu Dec 21 17:23:24 2017 -0800"
      },
      "message": "Moved  logContextCommitted() logic to the handler...\n\n...so it does not block showSaveUi.\n\nBug: 70939974\nTest: atest CtsAutoFillServiceTestCases:FieldsClassificationTest\n\nChange-Id: I64bb20c1c617790e7281f287c567cb5c13178a6e\n"
    },
    {
      "commit": "285eb8a804e9bbf474d235761140ebe6631093f3",
      "tree": "60a04cc11d552e65494131364a5a3e59f45834a2",
      "parents": [
        "aa9347980e2362f46090db7466da07f0c108e305",
        "96a3e516305c18c18a70d57d0de0f4a886cd17e2"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Dec 22 01:07:05 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 22 01:07:05 2017 +0000"
      },
      "message": "Merge \"Always call start a new fill response when the user manually request autofill.\""
    },
    {
      "commit": "96a3e516305c18c18a70d57d0de0f4a886cd17e2",
      "tree": "45a769207519cf729654b3053c87bda69c86a55e",
      "parents": [
        "f7314652ed15cac317f7ddc8ddb034f77600e666"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Thu Dec 21 14:43:19 2017 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Thu Dec 21 14:45:22 2017 -0800"
      },
      "message": "Always call start a new fill response when the user manually request autofill.\n\nTest: atest CtsAutoFillServiceTestCases:LoginActivityTest#testAutofillManuallyAlwaysCallServiceAgain\nTest: atest CtsAutoFillServiceTestCases\n\nFixes: 69318180\n\nChange-Id: I67f63f57f249bb109ca764bd2d0911ad6f5c4065\n"
    },
    {
      "commit": "0ce51f60b46bc1e8db4803ef901dcabba1398e3a",
      "tree": "2378c4963c0c48ff24a58d3d124e5aef9f41765d",
      "parents": [
        "d7dd779ec2ad2fd7aab3eb6dd7eb1e8292ac7f47",
        "bbfed90230a77b5714fafa5f829cf4f992467eed"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Dec 21 17:12:12 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 21 17:12:12 2017 +0000"
      },
      "message": "Merge \"Added @TestApi on new Autofill settings for field classification.\""
    },
    {
      "commit": "bbfed90230a77b5714fafa5f829cf4f992467eed",
      "tree": "37698b1df08c6725f8ef41b117be29566c108581",
      "parents": [
        "f7314652ed15cac317f7ddc8ddb034f77600e666"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Wed Dec 20 15:54:33 2017 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Wed Dec 20 16:16:45 2017 -0800"
      },
      "message": "Added @TestApi on new Autofill settings for field classification.\n\nTest: atest CtsAutoFillServiceTestCases:FieldsClassificationTest CtsAutoFillServiceTestCases:UserDataTest\n\nBug: 70407264\n\nChange-Id: Ia4413e5aa8973bafa0149093c6c17602dd498ae5\n"
    },
    {
      "commit": "23c75ffdaec2ab116b5a43f6d0b4ff527047a5dc",
      "tree": "3ad4165ada765c5fda1824162e6bdcdeb311e3a7",
      "parents": [
        "dfee3c8fd4f9774ca61144be37106d06f7639544"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Thu Dec 14 13:27:44 2017 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Wed Dec 20 14:02:17 2017 -0800"
      },
      "message": "New Autofill API:AutofillManager.getAutofillServiceComponentName()\n\nAlso minor fixes on isFieldClassificationEnabled() to make sure it\u0027s ignored\nwhen not called by the service app and its calls are properly synchronized.\n\nTest: atest CtsAutoFillServiceTestCases:LoginActivityTest#testGetAutofillServiceComponentName\n\nFixes: 70678279\n\nChange-Id: I58ccb313d22c30af907f3da62f727f067240fa66\n"
    },
    {
      "commit": "51f6cd70316cdd0662e40ad7b0109effab9cd9ad",
      "tree": "7734feb8eb1033825e2c6249a550f860e7ea9ca8",
      "parents": [
        "01232ca55c7b911b4aa1db582014e67dc407e70c"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Mon Dec 18 09:30:53 2017 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Mon Dec 18 09:31:11 2017 -0800"
      },
      "message": "Implemented multiple matches on FieldClassification.getMatches()\n\nTest: atest CtsAutoFillServiceTestCases:FieldsClassificationTest\n\nBug:70291841\n\nChange-Id: Icc015d7c76f0f11e398c3093b4ea070c8f35f589\n"
    },
    {
      "commit": "78172e70f4c5d776678551965db7c167ee11703e",
      "tree": "8f85ca29bf3c9f340153ef6b107f88112ca7e156",
      "parents": [
        "a629e4c393e5ac52c07598a5d3b4ed120115c97d"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Fri Dec 08 17:01:15 2017 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Thu Dec 14 19:48:26 2017 -0800"
      },
      "message": "Made Autofill Field Classification API public and documented it.\n\nTest: mmm frameworks/base/:doc-comment-check-docs\nTest: atest FrameworksCoreTests:SettingsBackupTest\nTest: m -j 100 update-api\n\nFixes: 67867469\n\nChange-Id: Iedf56a2bbcde3826eb22f5ed7a96d6ed70b968f4\n"
    },
    {
      "commit": "a30443b141902dbb0ae1d1b092ff26f813e937e3",
      "tree": "c5b21dc9842cd6b517c3daf7f82e6fa7a59c41f5",
      "parents": [
        "3d89874bb5720f6a7c97334f92822b046fb3a027",
        "f2eddf8df9474e7806e9df3693c9dc03fb09a9eb"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Thu Dec 14 01:43:23 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Thu Dec 14 01:43:23 2017 +0000"
      },
      "message": "Merge \"Proper autofill fix to let phone process autofill Settings activity.\" into oc-mr1-dev\nam: f2eddf8df9\n\nChange-Id: I7603e96214ca4e97985b6678cb0e75b7e36d0880\n"
    },
    {
      "commit": "0688ef866818c5ff2d4ac98c3b0b873c90545225",
      "tree": "e9be2a4d756a802cf19a25d117609f3d4e9c61aa",
      "parents": [
        "061bc75d49b07e919d6187714a066bc8b838fe3c",
        "b8500d47714e964cb1a8fce1647aae1a33358cd1"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Dec 13 01:08:56 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Wed Dec 13 01:08:56 2017 +0000"
      },
      "message": "Merge \"Convert services to Android.bp\" am: 5319777274\nam: b8500d4771\n\nChange-Id: Idcfeb088fa73e679d18de2ce2dc2ba58cdc78af7\n"
    },
    {
      "commit": "eb652a47a180092b397ec40c718dfc13935f7fb6",
      "tree": "9af0e5fbe2002dca0a1ec816b51b56bdcb81418a",
      "parents": [
        "f2ed7683daee70d4330306ded96d657ffc826b3e"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Dec 05 09:46:29 2017 -0800"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Dec 12 23:22:25 2017 +0000"
      },
      "message": "Convert services to Android.bp\n\nSee build/soong/README.md for more information.\n\nTest: m checkbuild\nChange-Id: I417409281c928ea667d937090d2a0d9d72a449a2\nMerged-In: I417409281c928ea667d937090d2a0d9d72a449a2\nExempt-From-Owner-Approval: trivial conversion\n(cherry-picked from commit e0b2ee52d2f274a2d46b2e6695e42d2764c39fa7)\n"
    },
    {
      "commit": "92b5d2783a1b97bee476f04754481403839b4e45",
      "tree": "495b4c7f692752736df0dfa36b6be7981f650fb3",
      "parents": [
        "ed6f463636f172dc2c2e5d4a71688d0cb94ab666"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Mon Dec 11 14:37:35 2017 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Tue Dec 12 19:36:07 2017 +0000"
      },
      "message": "Proper autofill fix to let phone process autofill Settings activity.\n\nTest: adb shell am start com.android.settings/.RadioInfo\nBug: 69981710\nFixes: 70506888\n\nChange-Id: Id29bad2d20b621f7379eb6144c95dcc819949b3d\nMerged-In: Id29bad2d20b621f7379eb6144c95dcc819949b3d\n(cherry picked from commit 97f16a76db29269619d9a1b45d4cea49026a5b6a)\n"
    },
    {
      "commit": "2a580d18f6b18da97465c46099f779d0f8d6d36f",
      "tree": "b182f728a38715737acdadf3bdef2c7c03e21363",
      "parents": [
        "1fa458fd7f19b1d9b2f778ca294c9579d50b7f0f"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Mon Dec 11 14:37:35 2017 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Mon Dec 11 16:19:48 2017 -0800"
      },
      "message": "Proper autofill fix to let phone process autofill Settings activity.\n\nTest: adb shell am start com.android.settings/.RadioInfo\nFixes: 70506888\n\nChange-Id: Id29bad2d20b621f7379eb6144c95dcc819949b3d\n"
    },
    {
      "commit": "70668582a8e2afae38a976819ec692ec0f8edf16",
      "tree": "dad4ce4b2ff59dfd1fed2915f53ddb6c8cd185da",
      "parents": [
        "e5634eeba63e975f8d69f7673596a5dc59908438"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Mon Dec 11 10:45:59 2017 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Mon Dec 11 11:50:19 2017 -0800"
      },
      "message": "Temporaly ignoring UID check when caller is a system app.\n\nThe Settings app runs some of its activities in another process, which would\ncrash it in some cases due to a recent security fix on Autofill.\n\nThis CL temporarily fixes the problem by skipping the security check when the\ncaller is a system app.\n\nTest: manual verification using System.out statements, as it cannot be\n      reproduced by CTS because the CTS app is an user app.\nBug: 70506888\n\nChange-Id: I08e8a370d93d3473ec5e025afaf3bc6f456e0ab9\n"
    },
    {
      "commit": "c22e7735c31b711f8bf598c07fc872baba9af0dd",
      "tree": "3f42648425403f971789189dc9971f555091d94d",
      "parents": [
        "03cdd32ad906b50e4dfe7ef33f930355cbfb70b3",
        "e0b2ee52d2f274a2d46b2e6695e42d2764c39fa7"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Dec 08 21:00:58 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 08 21:00:58 2017 +0000"
      },
      "message": "Merge \"Convert services to Android.bp\""
    },
    {
      "commit": "e0b2ee52d2f274a2d46b2e6695e42d2764c39fa7",
      "tree": "b108622b940a6d004b50b2768f6738fecbb4dfb8",
      "parents": [
        "23627fbff5f13629e997a00b006a1ebdc423e735"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Tue Dec 05 09:46:29 2017 -0800"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Fri Dec 08 21:00:15 2017 +0000"
      },
      "message": "Convert services to Android.bp\n\nSee build/soong/README.md for more information.\n\nTest: m checkbuild\nExempt-From-Owner-Approval: trivial conversion\nChange-Id: I417409281c928ea667d937090d2a0d9d72a449a2\n"
    },
    {
      "commit": "7c3716792a023e46724843ff6a76b5102540c452",
      "tree": "1da94bc909640ffb8b066ebb69bee51524c6a030",
      "parents": [
        "a7cfd1e93dad0d233205f05988c787522b465a27",
        "613d0cd8fbdd76f8c4e210aedde66051cbc4c497"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Fri Dec 08 18:18:49 2017 +0000"
      },
      "committer": {
        "name": "android-build-merger",
        "email": "android-build-merger@google.com",
        "time": "Fri Dec 08 18:18:49 2017 +0000"
      },
      "message": "Merge \"Make sure apps cannot forge package name on AssistStructure used for Autofill.\" into oc-mr1-dev\nam: 613d0cd8fb\n\nChange-Id: Iee0adf135a684e5338250628f35b754a3e69b3d0\n"
    },
    {
      "commit": "5e04720ca79801e2f8c76f5ba61a9b925e37df54",
      "tree": "cc761886347be29520ed884bf383c15e3dbeb2c8",
      "parents": [
        "ab39cc5797ae7d2298b25f543cbb2e175356ebe7"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Tue Dec 05 16:30:06 2017 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Thu Dec 07 18:00:04 2017 -0800"
      },
      "message": "Autofill metrics improvements:\n\n* Added new metrics:\n  - AUTOFILL_USERDATA_UPDATED\n  - AUTOFILL_FIELD_CLASSIFICATION_MATCHES\n  - FIELD_AUTOFILL_MATCH_SCORE\n  - FIELD_AUTOFILL_NUM_FIELD_CLASSIFICATION_IDS\n* Fixed how FIELD_CLASS_NAME is set for AUTOFILL_SERVICE_DISABLED_ACTIVITY\n* Added extra info on some existing metrics:\n  - FIELD_FLAGS on AUTOFILL_SESSION_STARTED\n  - TYPE_CLOSE on AUTOFILL_REQUEST to indicate a null response from service\n  - FIELD_AUTOFILL_NUM_FIELD_CLASSIFICATION_IDS on AUTOFILL_REQUEST to indicate the number of ids in a\n    field classfification request\n\nBug: 70241978\nTest: verified output of \u0027adb shell logcat -b events | grep sysui\u0027 while\n      running CTS tests associated with the changes\n\nChange-Id: I05d8d0325e9b338dd3d874e5b95a08cedf4b271c\n"
    },
    {
      "commit": "24d583df4d1d7761dc26e0b9aaab25525c0310b0",
      "tree": "09d8622071c043ba0fbf45893140d97c32419794",
      "parents": [
        "ec01312262978d2abe0cf72dd7aaaf5b436ac026",
        "996e03e562f29101a1ed0bce7964191420c389cc"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Dec 08 00:51:00 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 08 00:51:00 2017 +0000"
      },
      "message": "Merge \"Fix NPE on logContextCommitted()\""
    },
    {
      "commit": "996e03e562f29101a1ed0bce7964191420c389cc",
      "tree": "be1b39e5475e670faedaba10f627c9698f106719",
      "parents": [
        "33203ffd18e71e6b397b4dd8befffc6cedd8e5f5"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Thu Dec 07 14:31:44 2017 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Thu Dec 07 14:33:08 2017 -0800"
      },
      "message": "Fix NPE on logContextCommitted()\n\nTest: atest CtsAutoFillServiceTestCases:FillEventHistoryTest\n\nBug: 68045531\n\nChange-Id: Ieaf9f615ed3a203939713e48db808ff0d00ed059\n"
    },
    {
      "commit": "ac74dc42f78267a63bcea1740c00e20a6122cc4b",
      "tree": "63b95d27d9d71476c0466f57f05cd1fbde1b4d2a",
      "parents": [
        "1c23197543562fb7662abfe24fea60498de8d892",
        "637e05ee0f5077f2cda8f0defaf29baeb251ad75"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Dec 07 21:05:59 2017 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 07 21:05:59 2017 +0000"
      },
      "message": "Merge \"Further improvements when app forges package info for autofill:\""
    },
    {
      "commit": "23e61a9086a34405e277868474e003b37ed1b711",
      "tree": "1d511c477b84f3a3ead44472a4cef13fb67e157a",
      "parents": [
        "92609c7db1c2c78135fc4564d0caa8d57279cdfd"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Thu Nov 30 17:41:57 2017 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Thu Dec 07 10:04:56 2017 -0800"
      },
      "message": "Make sure apps cannot forge package name on AssistStructure used for Autofill.\n\nTest: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases -t android.autofillservice.cts.VirtualContainerActivityTest#testAppCannotFakePackageName\nTest: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases\n\nBug: 69981710\n\nChange-Id: Id6036cddb51dd8dd0c9128b7212d573f630d693f\nMerged-In: Id6036cddb51dd8dd0c9128b7212d573f630d693f\n"
    },
    {
      "commit": "637e05ee0f5077f2cda8f0defaf29baeb251ad75",
      "tree": "3859db1b2445b2a388004187ab44dca601765554",
      "parents": [
        "6798bc300e311c633c90ff67ccff09f7bb679c21"
      ],
      "author": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Wed Dec 06 12:09:37 2017 -0800"
      },
      "committer": {
        "name": "Felipe Leme",
        "email": "felipeal@google.com",
        "time": "Wed Dec 06 16:58:13 2017 -0800"
      },
      "message": "Further improvements when app forges package info for autofill:\n\n- Dont create a session if the component is not owned by the calling UID.\n- Log metrics for forged attempts.\n- Avoid possible NPEs on AutofillManager when context or client is null.\n\nTest: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases -t android.autofillservice.cts.VirtualContainerActivityTest#testAppCannotFakePackageName\nTest: cts-tradefed run commandAndExit cts-dev -m CtsAutoFillServiceTestCases\n\nBug: 69981710\n\nChange-Id: I9695bc046f3eb8aeecfe44f80fd0366f68b2c635\n"
    }
  ],
  "next": "329d04097e1db9b6f801972d94f56c5b56c09e8a"
}
