)]}'
{
  "log": [
    {
      "commit": "10acd4aac7068bbbaf2074a918307adc951fcda4",
      "tree": "d7e1517ecc9e9cc5ccad5e64547e08c8496f3738",
      "parents": [
        "2f2b4072a4d030a293f25cabbc260d90b5041e1e"
      ],
      "author": {
        "name": "Siarhei Vishniakou",
        "email": "svv@google.com",
        "time": "Wed Apr 12 11:01:15 2023 -0700"
      },
      "committer": {
        "name": "Siarhei Vishniakou",
        "email": "svv@google.com",
        "time": "Wed Apr 12 11:02:07 2023 -0700"
      },
      "message": "Update input event type to enum class\n\nThe native definitions for event type were changed to enum class. Update\nthe usages here.\n\nBug: 274073185\nTest: m checkinput\nChange-Id: If80dc6fc568da2d195606b5fbece7b7b5975e061\n"
    },
    {
      "commit": "481a250e0b93df31a8848fb27ff808f1d057830d",
      "tree": "6e8b5585267fc55dd388667a377563ef49c944e6",
      "parents": [
        "75741877907d5fee20ca5fcd8f7334b4a6f20f05",
        "9ccba9558cb238b8e99b264b0d809d7d3912bb51"
      ],
      "author": {
        "name": "Jahin Imtiaz",
        "email": "jahinimtiaz@google.com",
        "time": "Fri Mar 31 23:54:28 2023 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri Mar 31 23:54:28 2023 +0000"
      },
      "message": "Merge \"Include module dependencies under `data`\" am: 932fe8ac1d am: 042455c19f am: 9ccba9558c\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2486137\n\nChange-Id: Iddbfc519912e4dcd7d7c82da387145506861fdc7\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "d8b1dda042a6d7447cb40caa920d2479647b7bf9",
      "tree": "a8cf1ec2280413da73454cd2dd491305829227c7",
      "parents": [
        "a59180a4ca8442179c0b76145e3d285240d12e69"
      ],
      "author": {
        "name": "jahinimtiaz",
        "email": "jahinimtiaz@google.com",
        "time": "Mon Mar 13 23:53:08 2023 +0000"
      },
      "committer": {
        "name": "jahinimtiaz",
        "email": "jahinimtiaz@google.com",
        "time": "Thu Mar 30 21:22:34 2023 +0000"
      },
      "message": "Include module dependencies under `data`\n\nBug: 269138674\nTest: Presubmit\nChange-Id: Ibd1a18f6369396c4ae7b0263baab84f25c88ce06\n"
    },
    {
      "commit": "d1be50bcbece8fb938efacc78815cff28230a7a3",
      "tree": "a804acf419fc52f98a64323f4c35884ff0c1b4b5",
      "parents": [
        "7871be0c9765b28aa3c400a0e0a7a940a38050f3"
      ],
      "author": {
        "name": "Siarhei Vishniakou",
        "email": "svv@google.com",
        "time": "Tue Nov 01 14:40:03 2022 -0700"
      },
      "committer": {
        "name": "Cherrypicker Worker",
        "email": "android-build-cherrypicker-worker@google.com",
        "time": "Tue Mar 28 13:25:52 2023 +0000"
      },
      "message": "Use enum class for tool type\n\nUpdate jni code to use enum class\n\nBug: 198472780\nTest: compile\n(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:d873b263ee5937ba93a2252424148c0552312332)\nMerged-In: Ia129a28593c4f7a5ae0326a1aabdd5e6d0b67b82\nChange-Id: Ia129a28593c4f7a5ae0326a1aabdd5e6d0b67b82\n"
    },
    {
      "commit": "732442f47186060fd862c731bbdfeb791fb96204",
      "tree": "4bc870544b419fd4be2596e4c0334241d8c6285f",
      "parents": [
        "83b5bfc0eba7d0bd329c95cd21a8ffb99a85a872"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu Mar 16 14:28:50 2023 -0400"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu Mar 16 14:29:16 2023 -0400"
      },
      "message": "setExtendedBrightness ALOGE -\u003e FATAL\n\nBug: 272103317\nTest: make\nChange-Id: I155d818a3e473525c7cccd372978ae44912ffe58\n"
    },
    {
      "commit": "ed3f29135507e954d3cc12e4c16f7a3447677720",
      "tree": "10fbcdd42fc4b9602b628acc765740c4a1940c14",
      "parents": [
        "57ed8e3f4df6db7e10ecf2230529ae3c5ed5a16d",
        "a40ad03c58141d919e5dfbb2ba65d6ca8e86460d"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue Feb 14 19:55:01 2023 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 14 19:55:01 2023 +0000"
      },
      "message": "Merge \"Add extended range brightness APIs\""
    },
    {
      "commit": "a40ad03c58141d919e5dfbb2ba65d6ca8e86460d",
      "tree": "743d15cd750e293ea82ac93516fd3474b36fc2d2",
      "parents": [
        "c86397fddfd743ae0f7896982039539d60d9ebef"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Feb 13 10:20:24 2023 -0500"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Tue Feb 14 14:37:58 2023 +0000"
      },
      "message": "Add extended range brightness APIs\n\nSurfaceControl \u0026 Display APIs to enable\narbitrary RANGE_EXTENDED HDR handling\n\nBug: 241001465\nTest: make \u0026\u0026 silkfx demo\nChange-Id: I1002910bc020f7177e82b3d77559103c1c2732cc\n"
    },
    {
      "commit": "08409e237bc61f1235ba5847ffdf6413f773836d",
      "tree": "fa77c9a93f75a9833d0e3d4ff7037e7db129fc71",
      "parents": [
        "ab3b2e356524407c6674a16cd109fcdd759c9fdb"
      ],
      "author": {
        "name": "Kevin Lubick",
        "email": "kjlubick@google.com",
        "time": "Tue Feb 14 14:29:25 2023 +0000"
      },
      "committer": {
        "name": "Kevin Lubick",
        "email": "kjlubick@google.com",
        "time": "Tue Feb 14 14:30:29 2023 +0000"
      },
      "message": "Fix Skia includes around codecs\n\nIn https://skia-review.googlesource.com/c/skia/+/642658 we are\ncleaning up Skia includes. These changes are necessary to address\nissues from that CL or are pre-emptive for future include refactoring.\n\nChange-Id: I8af0c7979d62f779df74065d5dd548bbc2ce31b5\n"
    },
    {
      "commit": "2ddc0b227ec60e48401e8ec7288feed96d3d4ebf",
      "tree": "d699ce83377cd0fe6a346d31a269fa8d599d071a",
      "parents": [
        "a9530eeb38ec2f8ed1ee9db48dad21f9b230693b",
        "54fe60932a6848c68f7d64f11be548137a09e1e9"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Fri Feb 10 02:17:44 2023 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Feb 10 02:17:44 2023 +0000"
      },
      "message": "Merge changes from topic \"psc-ndk\"\n\n* changes:\n  NDK attached choreographer tests\n  NDK attached Choreographer from SurfaceControl.\n"
    },
    {
      "commit": "712f58a6f6a628c009e0cf548b33c9e11d9415de",
      "tree": "c1d2f6459c58f3bdb066fee0a68eb1d7000439f2",
      "parents": [
        "9c64b1bcf61c2bd732a5c0c99c32fcdb2372aafe"
      ],
      "author": {
        "name": "Matt Buckley",
        "email": "mattbuckley@google.com",
        "time": "Tue Feb 07 02:10:58 2023 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 07 02:10:58 2023 +0000"
      },
      "message": "Revert \"Use \"SessionHint\" enum in ndk API\"\n\nRevert submission 21161765-sessionhint_api\n\nReason for revert: this broke the main-finalization-1 build... somehow. see b/268111957\n\nReverted changes: /q/submissionid:21161765-sessionhint_api\n\nChange-Id: I23ca8da4957aa030d7788d22fc946259e34ee3cf\n"
    },
    {
      "commit": "93d2d0b43ec3e07cfe6b8c32a900f8d433b5f6d5",
      "tree": "0d1a000757c3a51b2a29d3c5988d83b8e62667c6",
      "parents": [
        "18f2966f065e6942677d38b20b1f258bc245e245"
      ],
      "author": {
        "name": "Rachel Lee",
        "email": "rnlee@google.com",
        "time": "Fri Jan 06 14:06:29 2023 -0800"
      },
      "committer": {
        "name": "Rachel Lee",
        "email": "rnlee@google.com",
        "time": "Thu Feb 02 18:28:11 2023 -0800"
      },
      "message": "NDK attached Choreographer from SurfaceControl.\n\nThe API to get a native attached choreographer from\nASurfaceControl.\n\nBug: 255838011\nTest: atest ChoreographerTests\nTest: atest ChoreographerNativeTest\nChange-Id: I7ed0ebea9f735e102f2285edb3a1cc35b338c3c9\n"
    },
    {
      "commit": "9c64b1bcf61c2bd732a5c0c99c32fcdb2372aafe",
      "tree": "a98750ff92ab5b3fde524cb245f851a99fb00517",
      "parents": [
        "a536e5697e00ad059699d50e51bb1386e44a444d"
      ],
      "author": {
        "name": "Matt Buckley",
        "email": "mattbuckley@google.com",
        "time": "Tue Jan 31 21:22:15 2023 +0000"
      },
      "committer": {
        "name": "Matt Buckley",
        "email": "mattbuckley@google.com",
        "time": "Wed Feb 01 23:06:42 2023 +0000"
      },
      "message": "Use \"SessionHint\" enum in ndk API\n\nChange NDK to use \"SessionHint\" enum consistently across definitions.\n\nBug: 266596626\nTest: manual\nChange-Id: I87b157f54d68115c0f972f6fb33153375858fe2e\n"
    },
    {
      "commit": "7ed6de3e90e509ac8822f357822ea3934eeb3fd4",
      "tree": "95b960fd8266420a4dfd3d1f0205cda4f95970c0",
      "parents": [
        "e088c448dcfc19b0a95b74c87df9eb98006ac7a1"
      ],
      "author": {
        "name": "Peiyong Lin",
        "email": "lpy@google.com",
        "time": "Thu Jan 26 00:52:54 2023 +0000"
      },
      "committer": {
        "name": "Peiyong Lin",
        "email": "lpy@google.com",
        "time": "Thu Jan 26 00:52:54 2023 +0000"
      },
      "message": "Use pid_t instead of not int32_t.\n\nBug: b/266595015\nTest: atest PerformanceHintManagerTest\nChange-Id: I51e0c2190117f9b439088e5a094dc3c74f5deeab\n"
    },
    {
      "commit": "7b0dd23cebfa2642f85a3db4889d8977e62dda93",
      "tree": "8bbe431233d0aa6887a5656b722b62014660b849",
      "parents": [
        "e4241197f5fb3aa1474d806bf82ec1994c9b10c0",
        "06bf285193b534f7fca340c4346045248dc58370"
      ],
      "author": {
        "name": "Spandan Das",
        "email": "spandandas@google.com",
        "time": "Fri Jan 20 01:14:41 2023 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri Jan 20 01:14:41 2023 +0000"
      },
      "message": "Merge \"Replace #apex with #systemapi\" am: 2dd8933868 am: fda52cfa61 am: 06bf285193\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2395614\n\nChange-Id: Ib94756d7b8c9382ae7d1815a2bed6db185348caa\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "d950d379907e960ca3ae5bfbf49abf66e819da4d",
      "tree": "aba806af36139b8c25e928f6b752cf04e57f19e0",
      "parents": [
        "729a9c2b727cbe0fa32b8760c6de6d21e58a5610"
      ],
      "author": {
        "name": "Spandan Das",
        "email": "spandandas@google.com",
        "time": "Thu Jan 19 18:39:01 2023 +0000"
      },
      "committer": {
        "name": "Spandan Das",
        "email": "spandandas@google.com",
        "time": "Thu Jan 19 18:44:21 2023 +0000"
      },
      "message": "Replace #apex with #systemapi\n\nThe intended use is\n- #apex is APEX-visible symbols provided by apex libraries\n- #systemapi is APEX-visible symbols provided by platform libraries\n\nSince libandroid is a platform library, update the annotation to\nsytemapi.\n\nBug: 239274367\nBug: 265485106\nTest: TH\nChange-Id: I28db5cd0d3a76afa1a7ecac042ee02dd74faa2f1\n"
    },
    {
      "commit": "7be84b8a5623f4cb7cb430a74c0159545d56a08b",
      "tree": "090a9e05aed636926b354126cba437dc73db1427",
      "parents": [
        "fb2c001684ab8415f310d69ff4f6628833fea856",
        "02d8919614b7920aa2c5c3820be77bba8c54846f"
      ],
      "author": {
        "name": "Yurii Zubrytskyi",
        "email": "zyy@google.com",
        "time": "Wed Jan 18 00:11:47 2023 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 18 00:11:47 2023 +0000"
      },
      "message": "Merge \"[res] Add the grammatical gender qualifier\""
    },
    {
      "commit": "02d8919614b7920aa2c5c3820be77bba8c54846f",
      "tree": "4289b8107216c4cda8d8148dc4feec520e0f0466",
      "parents": [
        "dac535a74a970aaf4569ac7116c9cf08765306a3"
      ],
      "author": {
        "name": "Yurii Zubrytskyi",
        "email": "zyy@google.com",
        "time": "Wed Jan 04 08:44:34 2023 -0800"
      },
      "committer": {
        "name": "Yurii Zubrytskyi",
        "email": "zyy@google.com",
        "time": "Fri Jan 13 17:21:00 2023 -0800"
      },
      "message": "[res] Add the grammatical gender qualifier\n\nBug: 237579711\nTest: UTs + build + boot\n\nChange-Id: Id0919799a8a364f109ff351974f02e4f151f23cd\n"
    },
    {
      "commit": "f3f5205c1916955912d3f70c4a1b4bb70e50e0dd",
      "tree": "eefa865833bbd2d0362240590b1159f8725f370e",
      "parents": [
        "6eeffa9f49e77eacd92132d01fddd170d28b0bfa",
        "7ef81116f49d0835175de0c277c1c4a72b7e74fb"
      ],
      "author": {
        "name": "Harry Cutts",
        "email": "hcutts@google.com",
        "time": "Fri Jan 13 13:36:34 2023 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 13 13:36:34 2023 +0000"
      },
      "message": "Merge \"Add pinch classification and scale factor axis\""
    },
    {
      "commit": "7c6023ec98dec332118b2eb412322905efb19e22",
      "tree": "67f4aa5f1fee8a5aa0be343ccd24e4f1b4f69f04",
      "parents": [
        "7cc40702af9f5a0ea3b858d12102f887b59ad977"
      ],
      "author": {
        "name": "Mateusz Zbikowski",
        "email": "zbikowski@google.com",
        "time": "Thu Jan 05 12:30:05 2023 +0000"
      },
      "committer": {
        "name": "Mateusz Zbikowski",
        "email": "zbikowski@google.com",
        "time": "Wed Jan 11 11:05:58 2023 +0000"
      },
      "message": "Add CtsSdkSandboxWebkitTestCases to WebView TEST_MAPPING.\n\nBug: 262697818\nTest: atest --test-mapping frameworks/base/core/java/android/webkit\nChange-Id: Id9d28a5156439985d63676f4e863bfa85868d4f9\n"
    },
    {
      "commit": "7ef81116f49d0835175de0c277c1c4a72b7e74fb",
      "tree": "ffcca0849770a301e9db7d53f6896cc5c57b964d",
      "parents": [
        "e4df12d23490bf8cbaebb18186153f8dce7a5144"
      ],
      "author": {
        "name": "Harry Cutts",
        "email": "hcutts@google.com",
        "time": "Tue Dec 20 11:04:20 2022 +0000"
      },
      "committer": {
        "name": "Harry Cutts",
        "email": "hcutts@google.com",
        "time": "Mon Jan 09 15:03:44 2023 +0000"
      },
      "message": "Add pinch classification and scale factor axis\n\nBug: 251196347\nTest: check events received by a custom tester app, and touches shown by\n      pointer location overlay\nTest: atest inputflinger_tests\nChange-Id: I0cb7ade63139ab35025ff1e12609e2b411b1f5f8\n"
    },
    {
      "commit": "e2da4084a12368d022a217490af146bb9e3f5388",
      "tree": "31f71211bb7a47f34027a0d44aabad98b0f1f747",
      "parents": [
        "484653442b7f93c407eec64a02a3a0176d8d4b1b"
      ],
      "author": {
        "name": "Harry Cutts",
        "email": "hcutts@google.com",
        "time": "Fri Dec 02 17:24:34 2022 +0000"
      },
      "committer": {
        "name": "Harry Cutts",
        "email": "hcutts@google.com",
        "time": "Wed Jan 04 12:58:57 2023 +0000"
      },
      "message": "Add MULTI_FINGER_SWIPE motion classification\n\nBug: 251196347\nTest: check events received by a custom tester app, and touches shown by\n      pointer location overlay\nChange-Id: Ice71843404400e73f8170ae108e2e2c89cc1d9bd\n"
    },
    {
      "commit": "095de769a6a821dffb5b6a5f59b4600671fe7c3f",
      "tree": "9597754c28bfe245970e10869fd7792612a3b8f5",
      "parents": [
        "13101fe9d27c41856fe09acb2831c88ebd729756"
      ],
      "author": {
        "name": "Peiyong Lin",
        "email": "lpy@google.com",
        "time": "Fri Nov 11 18:28:12 2022 +0000"
      },
      "committer": {
        "name": "Peiyong Lin",
        "email": "lpy@google.com",
        "time": "Sat Dec 17 01:21:31 2022 +0000"
      },
      "message": "Implement setThreads APIs for PerformanceHintManager.Session.\n\nPreviously the list of threads of a Session was only determined when the\nSession was created. This means newly forked threads from existing\nthreads of the Session will not get the benefit and the clients have to\ncreate new Session for that.\n\nThis patch adds a new method to allow clients to update the threads of\nthe Session.\n\nBug:b/244216750\nTest: atest PerformanceHintManagerTest\nTest: atest PerformanceHintNativeTest\nTest: atest HintManagerServiceTest\n\nChange-Id: Iae8cbb4ce86a44a7cd9d6e68673c48800bed3a4e\n"
    },
    {
      "commit": "c5b20b44dadc4ceaa20f5e58ab1828f907ab7905",
      "tree": "3b70c358b3e320121434aa815c120372cc5dcfde",
      "parents": [
        "21f7512b85a523fd65026784f5e55799b7673993",
        "61726a38043baea5627019d947cd83029c11e616"
      ],
      "author": {
        "name": "Matt Buckley",
        "email": "mattbuckley@google.com",
        "time": "Fri Dec 16 19:00:12 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Dec 16 19:00:12 2022 +0000"
      },
      "message": "Merge \"Make sendHint private in platform\""
    },
    {
      "commit": "61726a38043baea5627019d947cd83029c11e616",
      "tree": "c8873e9667074db813bfe9b417d7e78d52a06b08",
      "parents": [
        "7c5817e876c62f3237a2b94622c55b21340e846e"
      ],
      "author": {
        "name": "Matt Buckley",
        "email": "mattbuckley@google.com",
        "time": "Tue Dec 06 23:44:45 2022 +0000"
      },
      "committer": {
        "name": "Matt Buckley",
        "email": "mattbuckley@google.com",
        "time": "Thu Dec 15 18:14:52 2022 +0000"
      },
      "message": "Make sendHint private in platform\n\n * Convert PerformanceHintManager sendHint to a private API\n * Have HWUI depend on private implementation\n\nBug: b/261640114\nTest: atest PerformanceHintNativeTestCases\nTest: atest FrameworksCoreTests:android.os.PerformanceHintManagerTest\n\nChange-Id: Ic65eef1fbd1c26040e86ddf3cf7c59581fee4374\n"
    },
    {
      "commit": "56093a77a950660d0c281ecc7c5de57af88ae397",
      "tree": "8c9fd4c2601217ef0d3feb0b198f70e93efa0a0d",
      "parents": [
        "7c5817e876c62f3237a2b94622c55b21340e846e"
      ],
      "author": {
        "name": "Matt Buckley",
        "email": "mattbuckley@google.com",
        "time": "Mon Nov 07 21:50:50 2022 +0000"
      },
      "committer": {
        "name": "Matt Buckley",
        "email": "mattbuckley@google.com",
        "time": "Sat Dec 03 03:45:41 2022 +0000"
      },
      "message": "Add rate limiter to sendHint API call\n\nAdds a rate limiter to the HintSession.sendHint API for safety, and\nupdate tests to reflect this.\n\nBug: b/243973548\nTest: atest PerformanceHintNativeTestCases\nTest: atest FrameworksCoreTests:android.os.PerformanceHintManagerTest\nChange-Id: Ic68683bacf7df3e11efc3d59689b5470c3fa4274\n"
    },
    {
      "commit": "7e72d299ffcd6dbf29d4b8a9b4b4922f0d011f26",
      "tree": "77526f331557cf6214fce101ccbce371127d4791",
      "parents": [
        "9cae44ac78960208dbc1a8885e748a0d70a66b6c",
        "00feb50078fc971412667c0598f91144dd0aa645"
      ],
      "author": {
        "name": "Wei Wang",
        "email": "wvw@google.com",
        "time": "Thu Dec 01 19:34:24 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 01 19:34:24 2022 +0000"
      },
      "message": "Merge \"PerformanceHint: optimize rate limit\""
    },
    {
      "commit": "3ddd6e2774894b3c4af03e07ab1e41b89e317717",
      "tree": "c4f4ac385cf150ebb669dea062ec8d5054d3f3e9",
      "parents": [
        "498e07e9ca00c04ab6a3624bceb962e69d6953ea",
        "4e29c9d09b3d4ddec27475e1498c03363b8f9836"
      ],
      "author": {
        "name": "Bart Van Assche",
        "email": "bvanassche@google.com",
        "time": "Wed Nov 30 19:45:21 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Nov 30 19:45:21 2022 +0000"
      },
      "message": "Merge \"Switch to C++20\" am: a7acd5d5a7 am: b1dfb7b9d7 am: 4e29c9d09b\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2307908\n\nChange-Id: I2901bb4bc990b35e3c2b0f8c264ef4d34a160d21\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "b1dfb7b9d7670ae6f2c716d450a0c118b50fddc9",
      "tree": "e758d38c943568533f918b9f83687931ae1cc229",
      "parents": [
        "733e58eccbd6605527e56c146e3472977a41d9fb",
        "a7acd5d5a7aa273be82972d5663c5fe2242e66c2"
      ],
      "author": {
        "name": "Bart Van Assche",
        "email": "bvanassche@google.com",
        "time": "Tue Nov 29 20:24:48 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Nov 29 20:24:48 2022 +0000"
      },
      "message": "Merge \"Switch to C++20\" am: a7acd5d5a7\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2307908\n\nChange-Id: I06ab1e1d7a9db21f14ac33f2eebf84ef6875d02f\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "b66923ab2d0deb82ca35dcdcb7f577bb0b887372",
      "tree": "cbee1721b8723b26d90f7ed1fba2d26cba04d566",
      "parents": [
        "282a29b8ba28ccd5c10409809ee3cab8b27b7e6f"
      ],
      "author": {
        "name": "Bart Van Assche",
        "email": "bvanassche@google.com",
        "time": "Mon Nov 21 15:49:17 2022 -0800"
      },
      "committer": {
        "name": "Bart Van Assche",
        "email": "bvanassche@google.com",
        "time": "Tue Nov 29 09:42:48 2022 -0800"
      },
      "message": "Switch to C++20\n\nPrepare for using std::array\u003c\u003e and std::span\u003c\u003e in headers included from\nthis library. Remove the AFont constructors to prevent that the build\nfails as follows:\n\nframeworks/base/native/android/system_fonts.cpp:265:35: error: no matching member function for call to \u0027insert\u0027\n                            fonts.insert(\n                            ~~~~~~^~~~~~\n\nRemoving these constructors is necessary because of the following rule:\n\"An aggregate is one of the following types [...] class type (struct or\nunion) that has [...] no user-declared or inherited constructors (since\nC++20)\". Source:\nhttps://en.cppreference.com/w/cpp/language/aggregate_initialization.\n\nBug:  260725458\nChange-Id: I384d05f5d3e471f8f58294119d04eb8ab16697ba\nSigned-off-by: Bart Van Assche \u003cbvanassche@google.com\u003e\n"
    },
    {
      "commit": "00feb50078fc971412667c0598f91144dd0aa645",
      "tree": "4c784e57c0a154da795c2b44301c038f9d8c0dae",
      "parents": [
        "88068450164377695e2e196244c5c1980b6bab68"
      ],
      "author": {
        "name": "Wei Wang",
        "email": "wvw@google.com",
        "time": "Tue Oct 18 10:56:59 2022 -0700"
      },
      "committer": {
        "name": "Wei Wang",
        "email": "wvw@google.com",
        "time": "Wed Nov 23 03:15:39 2022 +0000"
      },
      "message": "PerformanceHint: optimize rate limit\n\nSkip rate limit when first hit target.\nAlso for 1st frame boost\n\nBug: 254293108\nTest: Build\nSigned-off-by: Wei Wang \u003cwvw@google.com\u003e\nChange-Id: I0268de156ba2c34723c1593c76a64331016cc87c\n"
    },
    {
      "commit": "80c690554a9dc6aa01245d4c769785c2518324e8",
      "tree": "f46a451aaa460871330665c4d414ae53511d0d15",
      "parents": [
        "54423db18513cd9a6c30e0d3a037efb4538f1daf",
        "23af702a13a10b4558419e70c539c66ffd00d356"
      ],
      "author": {
        "name": "Bo Liu",
        "email": "boliu@google.com",
        "time": "Mon Nov 14 21:07:31 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Nov 14 21:07:31 2022 +0000"
      },
      "message": "Merge \"Rename SC ndk jni API\""
    },
    {
      "commit": "23af702a13a10b4558419e70c539c66ffd00d356",
      "tree": "e1b0205ca2155942b981ef21fcfbb4315dd70940",
      "parents": [
        "4e72b9846ee983b8886ed3bfba8d85f04398d152"
      ],
      "author": {
        "name": "Bo Liu",
        "email": "boliu@google.com",
        "time": "Fri Nov 11 15:00:19 2022 -0500"
      },
      "committer": {
        "name": "Bo Liu",
        "email": "boliu@google.com",
        "time": "Fri Nov 11 15:01:01 2022 -0500"
      },
      "message": "Rename SC ndk jni API\n\nRename to ASurfaceControl_fromJava / ASurfaceTransaction_fromJava.\n\nTest: Compiles\nBug: 258245761\nChange-Id: Ic9cedd83bad3facb46947ecdac6324f4318d8db6\n"
    },
    {
      "commit": "b091fb85defafbcb065c6cb60db7270ca2174585",
      "tree": "852adcfcc8e7970cd208e7864e7b86272613e904",
      "parents": [
        "cf6cd188b78aaf1bc150f0cee633088d0427a278",
        "354cc0a1403ec47a48d26732444a044d5035c76e"
      ],
      "author": {
        "name": "Matt Buckley",
        "email": "mattbuckley@google.com",
        "time": "Fri Nov 11 17:54:42 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Nov 11 17:54:42 2022 +0000"
      },
      "message": "Merge \"Add support for ADPF HintSession sendHint to JNI\""
    },
    {
      "commit": "354cc0a1403ec47a48d26732444a044d5035c76e",
      "tree": "15f96b5fb178f24c53f8420f8ea481b928374c5f",
      "parents": [
        "4624189b1f80bc1d6904e0cade60eba0f5e03ab6"
      ],
      "author": {
        "name": "Matt Buckley",
        "email": "mattbuckley@google.com",
        "time": "Wed Sep 28 20:54:46 2022 +0000"
      },
      "committer": {
        "name": "Matt Buckley",
        "email": "mattbuckley@google.com",
        "time": "Wed Nov 09 01:49:41 2022 +0000"
      },
      "message": "Add support for ADPF HintSession sendHint to JNI\n\n * Add sendHint API to HintManagerService and PerformanceHintManager\n * Plumb relevant calls through the existing implementation\n * Extend existing tests to cover new API calls\n * Update the relevant build files to use power API v4\n\nBug: b/243973548\nTest: atest PerformanceHintNativeTestCases\nTest: atest FrameworksCoreTests:android.os.PerformanceHintManagerTest\nTest: atest HintManagerServiceTest\n\nChange-Id: Ice7ed8f32e877bd845afad77fcc6ae16f1a1b78c\n"
    },
    {
      "commit": "f38eee4014a7173f35b93ed0d5eb357f76c662d1",
      "tree": "3c80f661a41f6afaa8e3f3d2cd3a364304d03c09",
      "parents": [
        "07d58c6de36dbc0c0ac2c1a96e6f0226a8c9896c"
      ],
      "author": {
        "name": "Leon Scroggins III",
        "email": "scroggo@google.com",
        "time": "Fri Nov 04 12:18:34 2022 -0400"
      },
      "committer": {
        "name": "Leon Scroggins III",
        "email": "scroggo@google.com",
        "time": "Fri Nov 04 12:24:36 2022 -0400"
      },
      "message": "Add Dichen to cc\u0027s for imagedecoder_fuzzer\n\nDichen is taking over my image decoding responsibilities, so add him to\ncc. Leave myself in cc so I can provide context when needed.\n\nBug: 257475598\nTest: N/A\nChange-Id: I2adf43d61d214b3f7352d528ba1af32c0ce4bf32\n"
    },
    {
      "commit": "dd89c3b56e496ec23329891670dec8d5f6499d64",
      "tree": "4f88b405b4be2cfc6af2cd7912761cad4b3b04b4",
      "parents": [
        "c14454d6e03150b4ba9758692e05807cf6b1db24"
      ],
      "author": {
        "name": "Bo Liu",
        "email": "boliu@google.com",
        "time": "Tue Oct 11 20:26:31 2022 -0400"
      },
      "committer": {
        "name": "Bo Liu",
        "email": "boliu@google.com",
        "time": "Wed Oct 12 13:08:35 2022 +0000"
      },
      "message": "SurfaceControl ndk-jni API review\n\nASurfaceControl_fromSurfaceControl should acquire a reference before\nreturning.\n\nAbort if the arguments are invalid, make the return code nonnull.\n\nTest: ASurfaceControlTest#testSurfaceControl_fromSurfaceControl\n      and ASurfaceControlTest#testSurfaceTransaction_fromTransaction\nBug: 253053203\nChange-Id: If48ff4a534c5765c4831e518e44f77d0429e8981\n"
    },
    {
      "commit": "88fa84315b8ad582b90011e512917709a050adad",
      "tree": "36740e255452d9923a34e3771c5d299b8ddd7741",
      "parents": [
        "f48bbc6357650f3552f0c50712b09ed0c26cc1f5",
        "9f4876b6a613d2bb7528c955535d1bb4a8c0d263"
      ],
      "author": {
        "name": "Rob Carr",
        "email": "racarr@google.com",
        "time": "Fri Sep 30 18:05:08 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri Sep 30 18:05:08 2022 +0000"
      },
      "message": "Merge \"surface_control NDK: Track frameworks/native changes\" into tm-qpr-dev am: 1d3ecebe6c am: 9f4876b6a6\n\nOriginal change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/20058993\n\nChange-Id: I31c393482d6f285809d033a168f57cef07993697\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "9f4876b6a613d2bb7528c955535d1bb4a8c0d263",
      "tree": "9648f6031a6f80cc7ad18d182f7fd056ad1089fa",
      "parents": [
        "7ea23a9b1e4e84a6d52dd74943be068617a821f0",
        "1d3ecebe6ce2a81d7b504133165e9dad49bab800"
      ],
      "author": {
        "name": "Rob Carr",
        "email": "racarr@google.com",
        "time": "Fri Sep 30 17:32:06 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri Sep 30 17:32:06 2022 +0000"
      },
      "message": "Merge \"surface_control NDK: Track frameworks/native changes\" into tm-qpr-dev am: 1d3ecebe6c\n\nOriginal change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/20058993\n\nChange-Id: I46d358e2f2334f224292ccd774f5b57055c37f70\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "a74a1546b8c077f0c19730f651ec8bf49df44f87",
      "tree": "89c8bfbb89a5b07007cc382e7851662843356da4",
      "parents": [
        "b802258d0105b6df113543209dfbdc2b3d8e8c6c",
        "68099d357bf36d637028699540a1511088f9e69d"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Sep 28 02:52:25 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Sep 28 02:52:25 2022 +0000"
      },
      "message": "Merge changes Ifd00d8d4,Id8db2858 am: eb3651fe72 am: a2ba909c39 am: 71db43c5e2 am: 419f137b85 am: 68099d357b\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2212407\n\nChange-Id: If0d77d1808f215970bd6bd63aad66794d482e16d\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "76d971d0d67c2078dfbf0ef3d69b6a295644627a",
      "tree": "f4ee750c09892c4b88280f7e7a7fccfaa32ed6d2",
      "parents": [
        "fb6602dcf62eaa5731697469b1039ae6d5e8bfc9"
      ],
      "author": {
        "name": "Spandan Das",
        "email": "spandandas@google.com",
        "time": "Thu Sep 08 21:20:07 2022 +0000"
      },
      "committer": {
        "name": "Spandan Das",
        "email": "spandandas@google.com",
        "time": "Tue Sep 27 16:58:15 2022 +0000"
      },
      "message": "Declare the headers of the ndk_library\n\nThis creates a dependency edge between the ndk_library and its headers,\nwhich should be a no-op in regular Soong builds. This dependency edge\nwill be used in the Multi-tree project to export the relevant .h files into a well\nknown location\n\nThe headers are in a different git project (frameworks/native)\n\nTest: m nothing\nBug: 239044713\nChange-Id: Ifd00d8d4d3771b2dbd924cea4f2ade0bafc15ed6\n"
    },
    {
      "commit": "7c70373e2549ec1065dac07062e34dda8ff99291",
      "tree": "e6e7c9a25e366431880fe16c5e3f3a4fc1328fd7",
      "parents": [
        "df2bdd51358e353bd4a261cc3fb8b260c2f83237"
      ],
      "author": {
        "name": "Rob Carr",
        "email": "racarr@google.com",
        "time": "Tue Sep 27 00:57:27 2022 +0000"
      },
      "committer": {
        "name": "Rob Carr",
        "email": "racarr@google.com",
        "time": "Tue Sep 27 01:00:08 2022 +0000"
      },
      "message": "surface_control NDK: Track frameworks/native changes\n\nA BBQ changes requires adding an additional member to\nSurfaceControlStats which requires updating this destructuring\nassignment.\n\nBug: 247246160\nTest: Existing tests pass\nChange-Id: Ic485fe3ae97c4243ab9993717c674c66b28c7fee\n"
    },
    {
      "commit": "2d6d757b00b968ac0c1f2639d214ec9df84407fc",
      "tree": "f6ae10d445f1a1593d8c2e409e02dd6792878996",
      "parents": [
        "8423d20db7fc1cc0aa3b54f9f86a3406bde6439b",
        "ee431fc08bb25c18e858c2988596af28aefa5f58"
      ],
      "author": {
        "name": "Harry Cutts",
        "email": "hcutts@google.com",
        "time": "Mon Sep 26 14:41:15 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Sep 26 14:41:15 2022 +0000"
      },
      "message": "Merge \"Add input owners of native/android/input.cpp\""
    },
    {
      "commit": "ee431fc08bb25c18e858c2988596af28aefa5f58",
      "tree": "a38c23e988ee94223475a72b8596802f0ac28f3b",
      "parents": [
        "b91f96a938e964d69d7888188a260d384eef7b5f"
      ],
      "author": {
        "name": "Harry Cutts",
        "email": "hcutts@google.com",
        "time": "Mon Sep 26 14:31:02 2022 +0000"
      },
      "committer": {
        "name": "Harry Cutts",
        "email": "hcutts@google.com",
        "time": "Mon Sep 26 14:33:56 2022 +0000"
      },
      "message": "Add input owners of native/android/input.cpp\n\nTest: none\nChange-Id: Ieee0ab493130eba7d825d463cfbdae4369db165c\n"
    },
    {
      "commit": "339b0ee4f7d5c2a15d0f7f62a7faa15bc0e5db49",
      "tree": "712497e5e81e15c772d2de9c0c53d213d120890b",
      "parents": [
        "a053e98abdc301acdf7a01f38e8bea24f141775a",
        "7013c869e6f78d03ad626b5d29315dda9ee84fb9"
      ],
      "author": {
        "name": "Harry Cutts",
        "email": "hcutts@google.com",
        "time": "Mon Sep 26 14:19:40 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Sep 26 14:19:40 2022 +0000"
      },
      "message": "Merge \"Add CLASSIFICATION_TWO_FINGER_SCROLL for touchpad scrolling\""
    },
    {
      "commit": "7013c869e6f78d03ad626b5d29315dda9ee84fb9",
      "tree": "243ff48b9b179731a9c6ce264e6ee365ead94360",
      "parents": [
        "b91f96a938e964d69d7888188a260d384eef7b5f"
      ],
      "author": {
        "name": "Harry Cutts",
        "email": "hcutts@google.com",
        "time": "Thu Sep 15 13:59:09 2022 +0000"
      },
      "committer": {
        "name": "Harry Cutts",
        "email": "hcutts@google.com",
        "time": "Fri Sep 23 13:38:21 2022 +0000"
      },
      "message": "Add CLASSIFICATION_TWO_FINGER_SCROLL for touchpad scrolling\n\nThis will be used to denote the single-finger touches that\nTouchInputMapper creates to simulate scrolling when the user makes\ntwo-finger swipes on the touchpad.\n\nBug: 246758376\nTest: check new value is sent to a test app when scrolling on a touchpad\nChange-Id: Id93cba764522e36d850f7013ab8a117f64716fac\n"
    },
    {
      "commit": "789103b97a56f39926bf62fde2ff8ccabbda156d",
      "tree": "b7d78ceb26714e88557f84919ecc044ce8f1894a",
      "parents": [
        "b354fe08c8bed141bf30560836a9199d964271e2"
      ],
      "author": {
        "name": "Bo Liu",
        "email": "boliu@google.com",
        "time": "Thu Sep 15 16:24:31 2022 -0400"
      },
      "committer": {
        "name": "Bo Liu",
        "email": "boliu@google.com",
        "time": "Sat Sep 17 16:17:08 2022 -0400"
      },
      "message": "NDK methods to get SurfaceControl/Transction from java\n\nTest: ASurfaceControlTest#testSurfaceControl_fromSurfaceControl\n      and ASurfaceControlTest#testSurfaceTransaction_fromTransaction\nChange-Id: Ic15bfaae22b50f70c1c82c8945c09b749654a00f\n"
    },
    {
      "commit": "4bfeeb4ec5cdb5bc5057f3d53d8f3418dd797ba1",
      "tree": "798a0d0d1d75c66f1f7f0b4fec2f50b3e59cb6dd",
      "parents": [
        "da7e89fd5d9eb9e2f2a3c15f5f6dd33353ffa41c"
      ],
      "author": {
        "name": "Kriti Dang",
        "email": "kritidang@google.com",
        "time": "Thu Aug 11 15:15:36 2022 +0200"
      },
      "committer": {
        "name": "Kriti Dang",
        "email": "kritidang@google.com",
        "time": "Fri Aug 26 16:29:25 2022 +0200"
      },
      "message": "Add Surface.clearFrameRate API\n\nThis API is same as using setFrameRate with 0 as frame-rate value. But\nthis causes confusion, as the remaining two arguments are ignored, when\nframe-rate is 0.\n\nBug: 241096917\nTest: android.graphics.cts.SetFrameRateTest#testClearFrameRate\nChange-Id: I1324c64ac75dacb78a733df2b91d7a5b46fc7455\n"
    },
    {
      "commit": "1e62e215d426408b9b7e978d2185dff9854c3d46",
      "tree": "6b43166020433a545568ea9db973cb55339c921a",
      "parents": [
        "4d83b1589f353bc6562905b5df62ed65f536940c"
      ],
      "author": {
        "name": "Kohsuke Yatoh",
        "email": "kyatoh@google.com",
        "time": "Thu Aug 18 00:16:44 2022 +0000"
      },
      "committer": {
        "name": "Kohsuke Yatoh",
        "email": "kyatoh@google.com",
        "time": "Sat Aug 20 03:50:57 2022 +0000"
      },
      "message": "Consolidate getFamilyAt() calls to minikin.\n\n- Typeface: Use FontCollection::createCollectionWithFamilies() instead\n  of creating fallback list inside hwui.\n- system_fonts: Use SystemFonts::getFontSet() intead of getFontMap().\n\nBug: 174672300\nTest: atest CtsGraphicsTestCases:android.graphics.cts.TypefaceTest\nTest: atest CtsGraphicsTestCases:android.graphics.fonts.NativeSystemFontTest\nChange-Id: I940f8de441b7bd102eca2d08bc5dd4d0fc4a2685\n"
    },
    {
      "commit": "146c6a93d722ba9e8e259650646394f159f5e352",
      "tree": "0a377fd1a8583938b6aeacddaf1125fce3d3ea1b",
      "parents": [
        "ff3ab034fecf84e1082f247ecc6b0185caa7987b"
      ],
      "author": {
        "name": "Kohsuke Yatoh",
        "email": "kyatoh@google.com",
        "time": "Sat Jul 16 00:15:41 2022 +0000"
      },
      "committer": {
        "name": "Kohsuke Yatoh",
        "email": "kyatoh@google.com",
        "time": "Wed Jul 20 21:48:22 2022 +0000"
      },
      "message": "Replace getFamilies() with getFamilyAt().\n\nFollowing minikin signature change.\n\nBug: 174672300\nTest: m libhwui\nTest: m libandroid\nChange-Id: I25c5d27c406f49b5ee91a7f4390484296d4a6c7f\n"
    },
    {
      "commit": "e1cf4b7601a537f715988a1a83e3c6a780a588d2",
      "tree": "ecb028e840acf040bffea96bb553fbcb6359f235",
      "parents": [
        "4c0305947ffff122990a91a5eded78287bcee5a7",
        "92a6873890d657422e9894ed923d456a01a19570"
      ],
      "author": {
        "name": "Jimmy Shiu",
        "email": "jimmyshiu@google.com",
        "time": "Wed Apr 20 14:55:04 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Apr 20 14:55:04 2022 +0000"
      },
      "message": "Merge \"Send the hint immediately when actual \u003e target\" into tm-dev am: 49c95b1618 am: 92a6873890\n\nOriginal change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/17011864\n\nChange-Id: I3b5d080d3acc0b0908ee70be7d6818d9b6b81058\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "9f174f4bbbf9a3ec26f8b4ab72d933b28601c8a1",
      "tree": "9482a113fa3c0d6c8294a47b160ffa689b245edd",
      "parents": [
        "43f42ced370338f4139c42a6aed3493d5ddcdb5e"
      ],
      "author": {
        "name": "Wei Wang",
        "email": "wvw@google.com",
        "time": "Thu Nov 11 22:56:05 2021 -0800"
      },
      "committer": {
        "name": "jimmyshiu",
        "email": "jimmyshiu@google.com",
        "time": "Tue Apr 19 17:19:54 2022 +0000"
      },
      "message": "Send the hint immediately when actual \u003e target\n\nSend the hint immediately when actual duration is longer than target\nduration.\n\nTest: boot\nBug: 198379880\nSigned-off-by: Wei Wang \u003cwvw@google.com\u003e\nChange-Id: I6c80940b27d65a1e34e40f61eef3f81990957711\n"
    },
    {
      "commit": "36b55bc2acc8a7aa9a8ba41a9c7a21aa0626b0f7",
      "tree": "13028589e08988734aacfd604afd8183e23201b6",
      "parents": [
        "4fed9b4544a6f8e1819dfde45bc6d8eeeb89aa2e"
      ],
      "author": {
        "name": "Huihong Luo",
        "email": "huisinro@google.com",
        "time": "Tue Mar 08 14:50:45 2022 -0800"
      },
      "committer": {
        "name": "Huihong Luo",
        "email": "huisinro@google.com",
        "time": "Thu Apr 07 20:53:48 2022 +0000"
      },
      "message": "Sync with ISurfaceComposerClient changes\n\nISurfaceComposerClient in libgui is migrated to AIDL interface.\n\nBug: 172002646\nTest: atest libgui_test\nChange-Id: I5301a710a84bcf90ca4a789e184748e889115045\n"
    },
    {
      "commit": "4fed9b4544a6f8e1819dfde45bc6d8eeeb89aa2e",
      "tree": "dcf73180f84113956c94a0317c079db7df98e286",
      "parents": [
        "fd71eebcd3a60a1e0f1dfaf76ae738ef8315a616"
      ],
      "author": {
        "name": "Huihong Luo",
        "email": "huisinro@google.com",
        "time": "Thu Mar 03 15:10:33 2022 -0800"
      },
      "committer": {
        "name": "Huihong Luo",
        "email": "huisinro@google.com",
        "time": "Tue Apr 05 15:20:02 2022 -0700"
      },
      "message": "Sync with FrameTimelineInfo aidl migration\n\nlibgui FrameTimelineInfo has been converted to aidl  parcelable.\n\nBug: 222537482\nTest: atest libgui_test libsurfaceflinger_unittest SurfaceFlinger_test\nChange-Id: I6bf8433d7786485faef61633917659cca5d7f512\n"
    },
    {
      "commit": "562bef09f2e104df9c54ab16d20322eb547891b8",
      "tree": "e9b85c28d4ba57b0318c2407989cb5e5ca5b9e37",
      "parents": [
        "2fbf52a8bc8b8983d94bc68de2ebfa7fe3ff9d05",
        "72d6df3c6f2efb392b8a6c2fe035eaf9f74c4dc2"
      ],
      "author": {
        "name": "Ken Chen",
        "email": "cken@google.com",
        "time": "Thu Mar 31 04:19:44 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu Mar 31 04:19:44 2022 +0000"
      },
      "message": "Merge \"Update data type and comments on tagSocket/untagSocket APIs\" am: ef89731cd3 am: aa82affbc0 am: 292d5f01ec am: 72d6df3c6f\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2049804\n\nChange-Id: I223848fa1800c332ebb751191139da604f78ba4f\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "72d6df3c6f2efb392b8a6c2fe035eaf9f74c4dc2",
      "tree": "f8ba2528c0c81ebe992e4625c13a6f567ae5d0b5",
      "parents": [
        "fe4da14a9f9ba83c773da99f212dd8c9c0a44516",
        "292d5f01ec54c27ea3997dfae0b723b9313ba4b0"
      ],
      "author": {
        "name": "Ken Chen",
        "email": "cken@google.com",
        "time": "Thu Mar 31 04:10:28 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu Mar 31 04:10:28 2022 +0000"
      },
      "message": "Merge \"Update data type and comments on tagSocket/untagSocket APIs\" am: ef89731cd3 am: aa82affbc0 am: 292d5f01ec\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2049804\n\nChange-Id: Id759de693eb64fe729c99b141d267790767a806c\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "9c315eb11fbdcaf3d3d3676ab310c6d64d9fa2c0",
      "tree": "31f7731b7e0b66d4ea4683031ead1304b4dac4e1",
      "parents": [
        "2e6b40a8839a470cc6e69e8efee4ec16fe61acac"
      ],
      "author": {
        "name": "Ken Chen",
        "email": "cken@google.com",
        "time": "Thu Mar 31 00:02:39 2022 +0800"
      },
      "committer": {
        "name": "Ken Chen",
        "email": "cken@google.com",
        "time": "Thu Mar 31 00:28:15 2022 +0800"
      },
      "message": "Update data type and comments on tagSocket/untagSocket APIs\n\n- Fix comment in version script to say LL-NDK, not NDK\n- Use uint32_t for tag\n\nBug: 223423155\nTest: CtsNetTestCases:android.net.TrafficStatsTest\nTest: CtsNativeNetPlatformTestCases\nChange-Id: Ifb819ed0adeb8f173b98c3f131a4bf2e0715dd4e\n"
    },
    {
      "commit": "f3dfe9fa668a785ddeffb60fd50d5999ab5fbe40",
      "tree": "3ada86c2f823e88b871647951a69bd71a8eb1ece",
      "parents": [
        "b2fb991d3c190f95efd8c7109651caf2fc91be55",
        "45081ab6a096bbecd8828eb015def7df1807a654"
      ],
      "author": {
        "name": "Austin Borger",
        "email": "borgera@google.com",
        "time": "Tue Mar 29 22:11:51 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Tue Mar 29 22:11:51 2022 +0000"
      },
      "message": "Merge changes from topics \"b124224342\", \"change_procstate_flag\" into tm-dev am: 45081ab6a0\n\nOriginal change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/16994323\n\nChange-Id: Ifd340dfba8a24ea83678b8ce7359faa846bb7222\nSigned-off-by: Automerger Merge Worker \u003candroid-build-automerger-merge-worker@system.gserviceaccount.com\u003e\n"
    },
    {
      "commit": "db9165baf2c2649048d8cc31d55d643cfd251df8",
      "tree": "df34040299c14a41f421e21c3d12c636c0b59c26",
      "parents": [
        "177d5bb18756ddca6e9f9e8caa0338ae07f21c92"
      ],
      "author": {
        "name": "Austin Borger",
        "email": "borgera@google.com",
        "time": "Thu Feb 17 00:22:33 2022 +0000"
      },
      "committer": {
        "name": "Austin Borger",
        "email": "borgera@google.com",
        "time": "Mon Mar 28 19:46:45 2022 -0700"
      },
      "message": "Add new onUidProcAdjChanged callback to be consumed by the camera\nservice.\n\nThe camera service needs to know when individual process oom adj scores\nare changed in order to address bug #124224342. When two separate\nprocesses are displayed in split screen and focus is switched between\nthem, both proc states will remain the same while their oom scores\nchange. This is a problem if both have access to the camera - we want\nonly one owner of the camera stream at any given time and for the app\nin focus to be the one to own it.\n\nThis patch adds a new IUidObserver registration level for individual\nprocess oom score changes. In addition a new callback has been added to\nIUidObserver to track these changes.\n\nChange-Id: I68d964f474d20f819f54b614a4e314ce00aac8fb\nBug: 124224342\nTest: -- ActivityManagerServiceTest\n      -- ActivityManagerProcessStateTest\n      -- ActivityManagerFgsBgStartTest\n      -- UidObserverControllerTest\n      -- NetworkPolicyManagerServiceTest\n      -- ShortcutManagerTest2\n      -- HintManagerServiceTest\n      -- VibrationSettingsTest\n      -- CameraEvictionTest#testCamera2AccessCallbackInSplitMode (x100)\n"
    },
    {
      "commit": "c3046ab2d4ba92f7c0ffc650874cf8e3e36c06b6",
      "tree": "8b31edf7bb47566369c05d18ae689be7842142d0",
      "parents": [
        "26d63530ac67fd8f82a7bee7e5ee7b81c9f50f22",
        "1175dc00a8888c90a920aacbfdaeeceb385e9823"
      ],
      "author": {
        "name": "Kevin Lubick",
        "email": "kjlubick@google.com",
        "time": "Mon Mar 07 20:03:58 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Mar 07 20:03:58 2022 +0000"
      },
      "message": "Merge \"Fix transitive dependencies on SkImageEncoder\""
    },
    {
      "commit": "4fb38d5fc34ab95203a03dfe38a37bba9358521c",
      "tree": "1a516168c0b88eca93094467e32dd6d517bb9e3b",
      "parents": [
        "788fe7cdb61189ff7cf4df4c943b22f4980b93bb",
        "089a351d31b65b25816bc1b241310bf1a15dfeb0"
      ],
      "author": {
        "name": "Eric Biggers",
        "email": "ebiggers@google.com",
        "time": "Fri Mar 04 22:11:49 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri Mar 04 22:11:49 2022 +0000"
      },
      "message": "Merge \"Remove broken code for mounting encrypted OBB files\" am: a4f24f08b0 am: 56c37e5778 am: 089a351d31\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2003052\n\nChange-Id: I87cbb67af5e1dc62ddbb8ff7d58a256ee4569b44\n"
    },
    {
      "commit": "56c37e577884c9013f3739b543ac8c9c3f05f52e",
      "tree": "1c29b20b9d3bb58f745f27f38c05a45145b3a0a9",
      "parents": [
        "e502cbe5dbb6045399c37f9ceb99e022215f0e43",
        "a4f24f08b0b57470f78c570ea4b6840f45437527"
      ],
      "author": {
        "name": "Eric Biggers",
        "email": "ebiggers@google.com",
        "time": "Fri Mar 04 21:27:43 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Fri Mar 04 21:27:43 2022 +0000"
      },
      "message": "Merge \"Remove broken code for mounting encrypted OBB files\" am: a4f24f08b0\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/base/+/2003052\n\nChange-Id: Id027c555af21e46922a1c0ce29195d95bb7bb876\n"
    },
    {
      "commit": "1175dc00a8888c90a920aacbfdaeeceb385e9823",
      "tree": "d76066d67378e8d87ca3b75fc77dcb921f12ecf5",
      "parents": [
        "cadf8b5ed82b1d70645dc449bfa6659582ef496e"
      ],
      "author": {
        "name": "Kevin Lubick",
        "email": "kjlubick@google.com",
        "time": "Mon Feb 28 12:41:27 2022 -0500"
      },
      "committer": {
        "name": "Kevin Lubick",
        "email": "kjlubick@google.com",
        "time": "Fri Mar 04 10:37:49 2022 -0500"
      },
      "message": "Fix transitive dependencies on SkImageEncoder\n\nIn https://skia-review.googlesource.com/c/skia/+/512416,\nwe would like to decouple SkImage and SkImageEncoder. This CL\nwas created by searching for use of these objects:\n - SkEncodedImageFormat\n - SkStream\n - SkData\n - SkBitmap\n - SkPixmap\n\nand making sure those files followed the Include What You Use\n(IWYU) guidelines.\n\nSigned-off-by: Kevin Lubick \u003ckjlubick@google.com\u003e\nChange-Id: I8edbcd1c9a526b8084d7e2c023895d1ad2f8c9b1\n"
    },
    {
      "commit": "8bc9340b4c186a77dfd467c0e4e5106df77be06e",
      "tree": "1b84ac22e318a35ceef1d02b68d09173238e2a47",
      "parents": [
        "7ee20f28301596f1825e7ff8fedef3ee700e6d08"
      ],
      "author": {
        "name": "Eric Biggers",
        "email": "ebiggers@google.com",
        "time": "Tue Mar 01 21:19:10 2022 +0000"
      },
      "committer": {
        "name": "Eric Biggers",
        "email": "ebiggers@google.com",
        "time": "Fri Mar 04 04:51:54 2022 +0000"
      },
      "message": "Remove broken code for mounting encrypted OBB files\n\nMounting encrypted OBB files has never worked reliably across devices,\npartly due to its reliance on Twofish encryption support in the kernel.\nThis is because Twofish support (CONFIG_CRYPTO_TWOFISH) has never been\nrequired or even recommended for Android.  It has never been enabled in\nGKI, but even before GKI it wasn\u0027t required or recommended.  Moreover,\nthis is now the only Android feature that still uses dm-crypt\n(CONFIG_DM_CRYPT), and some devices don\u0027t have that enabled either.\n\nTherefore, it appears that this feature is unused.  That\u0027s perhaps not\nsurprising, considering that the documentation for OBBs\n(https://developer.android.com/google/play/expansion-files) says that\nthey are deprecated, and also it explains OBBs as being app files that\nare opaque to the platform; the ability of the platform to mount OBBs\nthat happen to be in a particular format is never mentioned.  That means\nthat OBB mounting is probably rarely used even with unencrypted OBBs.\nFinally, the usefulness of OBBs having their own encryption layer (in\naddition to what the platform already provides via FBE) is not clear\neither, especially with such an unusual choice of cipher.\n\nTo avoid the confusion that is being caused by having the broken code\nfor mounting encrypted OBBs still sitting around, let\u0027s remove it.\n\nTest: atest StorageManagerTest # on Cuttlefish\nTest: atest StorageManagerIntegrationTest # on Cuttlefish\nBug: 216475849\nChange-Id: I6e6a6462ab8343299dc5e0145b87dc28b16b0bc1\n"
    },
    {
      "commit": "92553f3ce8ba071ee383ec1b41e8f502d0c156f4",
      "tree": "b4dc4baef664074618320af11df18980026d2145",
      "parents": [
        "96d93b543096b6f2e49daf818b787605220f0037",
        "b6c93aa78970a823c2f9575f5646a60b30ca0e9e"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Mar 02 19:17:38 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Mar 02 19:17:38 2022 +0000"
      },
      "message": "Merge \"Use start time in SurfaceControl setFrameTimeline.\" into tm-dev"
    },
    {
      "commit": "9acc558c29cd48d0f1a540d7fb02f87b3e385a5d",
      "tree": "cc35ea7e9a48bda88bd696cdf18ec608f6daec27",
      "parents": [
        "4d897c6ad0f07d78765c67424c61f9521be4f28a"
      ],
      "author": {
        "name": "Bo Liu",
        "email": "boliu@google.com",
        "time": "Thu Feb 17 16:47:32 2022 -0500"
      },
      "committer": {
        "name": "Bo Liu",
        "email": "boliu@google.com",
        "time": "Tue Mar 01 12:04:06 2022 -0500"
      },
      "message": "adpf: Use one client token per process for all hint sessions\n\nSo it doesn\u0027t leak when gc is delayed in service process.\n\nUpdate HintManagerService to allow multiple sessions tied to the same\ntoken.\n\nBug: 218129784\nTest: chrome no longer gets killed\nChange-Id: I67a66041cc67d01e4cfcd3ded303a1bed6050f60\n"
    },
    {
      "commit": "b6c93aa78970a823c2f9575f5646a60b30ca0e9e",
      "tree": "25a3a0e3aaeaec1c06fcb295ebb05c4b015331bd",
      "parents": [
        "34435473c82c2d179b776b906fbcbc5793336197"
      ],
      "author": {
        "name": "Rachel Lee",
        "email": "rnlee@google.com",
        "time": "Tue Feb 22 15:48:28 2022 -0800"
      },
      "committer": {
        "name": "Rachel Lee",
        "email": "rnlee@google.com",
        "time": "Sat Feb 26 01:23:00 2022 +0000"
      },
      "message": "Use start time in SurfaceControl setFrameTimeline.\n\nUsers of the API will see in the \"Actual Timeline\" the actual start time\nrather than expected start time.\n\nBug: 210043506\nTest: perfetto log of with \u0026 w/o CL, using Chromium apk, bug 198192946\nChange-Id: I013bf6e28de32c82c9d645cc4cacf0cc01e0dd9f\n"
    },
    {
      "commit": "a52e963d380ee40825deda5ee738fe9b7da247d3",
      "tree": "3b10a0aeb047a18c019844402e3bf3a3aba6de67",
      "parents": [
        "ef2b4cb545addcc89c4ec0ea7f4f5041f97d0c25",
        "1a44c62b74c4d8a5e5b7dc41e3a55ef91839b12c"
      ],
      "author": {
        "name": "Rachel Lee",
        "email": "rnlee@google.com",
        "time": "Thu Feb 17 19:49:55 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Feb 17 19:49:55 2022 +0000"
      },
      "message": "Merge \"Rename to VsyncCallback \u0026 presentation time.\""
    },
    {
      "commit": "1a44c62b74c4d8a5e5b7dc41e3a55ef91839b12c",
      "tree": "cb938c8b784cfacfc1ba60f6daa383eedeb1c35a",
      "parents": [
        "f1adf08738ef0cd73b9c9113db66e33384d62491"
      ],
      "author": {
        "name": "Rachel Lee",
        "email": "rnlee@google.com",
        "time": "Tue Feb 15 18:12:01 2022 -0800"
      },
      "committer": {
        "name": "Rachel Lee",
        "email": "rnlee@google.com",
        "time": "Tue Feb 15 18:25:11 2022 -0800"
      },
      "message": "Rename to VsyncCallback \u0026 presentation time.\n\nBug: 217370454\nTest: atest ChoreographerNativeTest\nChange-Id: Icf460a82c1f59e930bdfc456e4a75ae341ce4394\n"
    },
    {
      "commit": "e85c348731e0364c3e3acdf1b76cd402ee25de71",
      "tree": "6c9bb609f6054da9232d632a64bdd2395831d7a3",
      "parents": [
        "db33f67f8ddbfb29acbe6fb57763cc2f029ec83b"
      ],
      "author": {
        "name": "Vaibhav",
        "email": "vdevmurari@google.com",
        "time": "Fri Feb 11 17:50:41 2022 +0530"
      },
      "committer": {
        "name": "Vaibhav Bhaveshkumar Devmurari",
        "email": "vdevmurari@google.com",
        "time": "Mon Feb 14 16:19:45 2022 +0000"
      },
      "message": "Add implementation for new NDK functions added to input.h\n\nAdded new methods for getActionButton and getClassification in input.h.\nIn this CL we are adding implementations for the corresponding functions\n\nTest: atest android.view.cts.MotionEventTest\n\nBug: 213266814\n\nChange-Id: Ia7c7b83fe19bac7d5e5c7c107e86328e160ba2b5\n"
    },
    {
      "commit": "5ad6db77423479d027abb791ad3c02da39513a2c",
      "tree": "dc6795e28a87f950bed7f5ce2bc483eb693c0907",
      "parents": [
        "2fc6632ea61d3186dfd66dc3303ad2258c37c572",
        "9efe853815ac78d1c4b5639686b8e41778b8d9ae"
      ],
      "author": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Fri Feb 11 07:25:43 2022 +0000"
      },
      "committer": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Fri Feb 11 07:25:43 2022 +0000"
      },
      "message": "Merge sc-v2-dev-plus-aosp-without-vendor@8084891\n\nBug: 214455710\nMerged-In: I8cfa435bb6233818adb9cc99dadeeb06a03443d5\nChange-Id: Ib93992d88fd1704179009a3872798b9e7b83a6d1\n"
    },
    {
      "commit": "5f7f72779e52f15bb905ed8dea2ed3cf8951e531",
      "tree": "6db4619e35bc61a22324f6959b95b4d78cdbc3e2",
      "parents": [
        "bc661bfc3e406c4e4776171bf11e628c15abeb6a",
        "62e15f0a20500a3d14896c2612af94104faa1c4b"
      ],
      "author": {
        "name": "Ady Abraham",
        "email": "adyabr@google.com",
        "time": "Thu Feb 10 18:29:24 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Feb 10 18:29:24 2022 +0000"
      },
      "message": "Merge \"surface_control: handle acquire fence on BLAST callbacks\""
    },
    {
      "commit": "5c816689a93ebc279f03fe057ce5375dde4d5b6c",
      "tree": "8ff2e9b69db52caadb0622db8a3075b0eba40e59",
      "parents": [
        "db48e2b6a57516c3d83716c483f3b6f511a31e6f",
        "8fb92de72b95b22e6ea66e237a81bfc108661356"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Feb 10 17:58:08 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu Feb 10 17:58:08 2022 +0000"
      },
      "message": "Merge \"Adjust base/native/android OWNERs\" am: d8f74421fb am: 82e8873cba am: e7eb1dce20 am: 8fb92de72b\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1977192\n\nChange-Id: I6ddf92eed85ae95a902fc1d1781e67d157b5d2d8\n"
    },
    {
      "commit": "8fb92de72b95b22e6ea66e237a81bfc108661356",
      "tree": "405ec963ee50f320b01a042b7cd56b333445acc4",
      "parents": [
        "965f6b8900b2fb30046f47279ac0c7003ede00c4",
        "e7eb1dce207458c974f49b98b770a85818a2384b"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Feb 10 17:37:21 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu Feb 10 17:37:21 2022 +0000"
      },
      "message": "Merge \"Adjust base/native/android OWNERs\" am: d8f74421fb am: 82e8873cba am: e7eb1dce20\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1977192\n\nChange-Id: I19f032cabc787356be291a500e639d223ddf41a2\n"
    },
    {
      "commit": "e7eb1dce207458c974f49b98b770a85818a2384b",
      "tree": "ae172b868dce0b3fd89c9cc29036cdbb1abbeca1",
      "parents": [
        "9107933dc6f9af20b85f5141bcf2c44e636594a3",
        "82e8873cbada07fab602b4d307b688a256b93cdb"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Feb 10 17:22:13 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu Feb 10 17:22:13 2022 +0000"
      },
      "message": "Merge \"Adjust base/native/android OWNERs\" am: d8f74421fb am: 82e8873cba\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1977192\n\nChange-Id: Ifc576cf8e977102786755a7abeb0c8686ae5c9c5\n"
    },
    {
      "commit": "f91696e2c3c4a29e3cdbb7cf8e1f7ed592bac245",
      "tree": "1e3e639a2979b423805e9ddb2d8e131dfa92b56f",
      "parents": [
        "ba28bb57adf01a95f048fe178ed91a895dd13240"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed Feb 09 10:11:08 2022 -0500"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Wed Feb 09 10:11:56 2022 -0500"
      },
      "message": "Adjust base/native/android OWNERs\n\nTest: N/A\nChange-Id: Ieb263e6b57b5e4495d45e6c22ac1f97cb1ca7913\n"
    },
    {
      "commit": "13ca5df169b2d55ac5787189c12b70df5c19b18d",
      "tree": "90b71d5ddc3432b73ac1435b443fce18724bf16e",
      "parents": [
        "34c22039a24bce7531f2312aa91b15cb844632ad"
      ],
      "author": {
        "name": "Erik Staats",
        "email": "estaats@google.com",
        "time": "Fri Feb 04 06:39:24 2022 -0800"
      },
      "committer": {
        "name": "Erik Staats",
        "email": "estaats@google.com",
        "time": "Tue Feb 08 14:20:32 2022 -0800"
      },
      "message": "Add ASensorManager_getDynamicSensorList.\n\nBug: 217890463\nTest: Used uhid-sample to add a dynamic sensor and verified it can be\n used with sensor_test.\nChange-Id: Ia930c6993c97527381d30e33f817f37632cb8396\n"
    },
    {
      "commit": "7096d45f59a05b7ed265ad6189252fb354dad159",
      "tree": "c2ca3bc49811fed1bb8cf04deee7af5d16266fae",
      "parents": [
        "d30c9c99927d8e4794cd09be1c19b72e5378b902",
        "4bc8cb7628c39324e02972fae17daa6de6e86a7a"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Feb 02 16:45:01 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Feb 02 16:45:01 2022 +0000"
      },
      "message": "Merge \"Really expose the new NDK socket tagging functions added in T.\" am: cba72fc987 am: fd5bb81c8a am: f30f967e5a am: 4bc8cb7628\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1967301\n\nChange-Id: Ia93a3556b209aa214233952b838c2e0ca3aeaddb\n"
    },
    {
      "commit": "4bc8cb7628c39324e02972fae17daa6de6e86a7a",
      "tree": "a29d80528db1a1b45674e306eff7f5f1cd8bd2a4",
      "parents": [
        "55416ed3fa562c24c4c7470a6d1227f0812522d0",
        "f30f967e5a1c5434f228bf12e13279d51088de9d"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Feb 02 16:24:42 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Feb 02 16:24:42 2022 +0000"
      },
      "message": "Merge \"Really expose the new NDK socket tagging functions added in T.\" am: cba72fc987 am: fd5bb81c8a am: f30f967e5a\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1967301\n\nChange-Id: Ibf59d43165b336b52030103a3e9e3b95872197c8\n"
    },
    {
      "commit": "f30f967e5a1c5434f228bf12e13279d51088de9d",
      "tree": "91e89cc22af6af38e53724e7adbd7189f91af2b4",
      "parents": [
        "619adece62f7694e2d45de4aac094eef6584c5dc",
        "fd5bb81c8aeca52381c2f17c3cf50c0061d5b035"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Wed Feb 02 16:09:35 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Wed Feb 02 16:09:35 2022 +0000"
      },
      "message": "Merge \"Really expose the new NDK socket tagging functions added in T.\" am: cba72fc987 am: fd5bb81c8a\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1967301\n\nChange-Id: Ifd16b2ccf8a2fd85d963aa08243385e094aa7c9b\n"
    },
    {
      "commit": "2b9e8860ec6a2c0bed0c976f430fa865bc5af649",
      "tree": "ebaf6ac2a2e7b5b8afa5480afeb81768c7ee908c",
      "parents": [
        "27c75f17a677a4cffd4e1a925e2ee910a0bae360"
      ],
      "author": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Wed Feb 02 11:33:10 2022 +0900"
      },
      "committer": {
        "name": "Lorenzo Colitti",
        "email": "lorenzo@google.com",
        "time": "Wed Feb 02 11:59:41 2022 +0000"
      },
      "message": "Really expose the new NDK socket tagging functions added in T.\n\nThese functions were already exposed as part of libandroid_net,\nbut that is not really part of the NDK.\n\nExpose them in libandroid as well, so apps can actually use them.\nThis is consistent with all the other native networking APIs,\nwhich are exposed in both libandroid_net and libandroid.\n\nTest: atest CtsNativeNetPlatformTestCases\nTest: strings out/target/product/bramble/system/lib64/libandroid.so | grep android_tag\nChange-Id: I2273cdd48b30a88b82eb3af838031d9fe8897442\n"
    },
    {
      "commit": "6193b1f6591763902977e208e01ca03aa12eebd6",
      "tree": "5ba532207226525ef56ad11a92b941b9e32ff1d0",
      "parents": [
        "7d6a92400cfecf258a199d0e740a296c6ee5a45a",
        "1efd0a5df616c0b2efe8035f1d2af2e97ca08638"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Sat Jan 29 17:51:09 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sat Jan 29 17:51:09 2022 +0000"
      },
      "message": "Merge \"Expose 1010102 config for bitmap\""
    },
    {
      "commit": "77f35083d1c2813aecc6c81e2fc5e647ed5e58aa",
      "tree": "b174c02d3ec26bf34c273d1b141f18141de16bc8",
      "parents": [
        "826af4aac9a883b8c88ecab7f5bc217d749ae61e",
        "2b739bbb63857888fb96bdcbfdf6da1f0e79bb8a"
      ],
      "author": {
        "name": "Bo Liu",
        "email": "boliu@google.com",
        "time": "Fri Jan 28 18:57:27 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jan 28 18:57:27 2022 +0000"
      },
      "message": "Merge \"Performance hint ndk APIs\""
    },
    {
      "commit": "1efd0a5df616c0b2efe8035f1d2af2e97ca08638",
      "tree": "16289748fde6e05d8ee2674e4088fcd0bddb21c1",
      "parents": [
        "230b32ceb6c143eed852d298dfbb3bdd3a801adc"
      ],
      "author": {
        "name": "Alec Mouri",
        "email": "alecmouri@google.com",
        "time": "Thu Jan 20 13:58:23 2022 -0800"
      },
      "committer": {
        "name": "Alec Mouri",
        "email": "alecmouri@google.com",
        "time": "Thu Jan 27 22:55:18 2022 +0000"
      },
      "message": "Expose 1010102 config for bitmap\n\nBug: 200307898\nTest: CtsGraphicsTestCases\nChange-Id: I33153e080292a95c0cc3d6edada8b274f0b06ac7\n"
    },
    {
      "commit": "abe5a0016f433199f5c50baf4898e1879b7c83af",
      "tree": "d2a52c4ef991bd4b2d65b5d90bc4fdf73843beba",
      "parents": [
        "7656a21d814132a8bdacdef740f32894c4932d1b",
        "5ad064f0173cb9e9f19ab14537abcba06e28d82b"
      ],
      "author": {
        "name": "Rachel Lee",
        "email": "rnlee@google.com",
        "time": "Mon Jan 24 19:54:35 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jan 24 19:54:35 2022 +0000"
      },
      "message": "Merge changes from topic \"scdocs\"\n\n* changes:\n  Use AVsyncId typedef in hwui.\n  Use AVsyncId typedef.\n"
    },
    {
      "commit": "62e15f0a20500a3d14896c2612af94104faa1c4b",
      "tree": "fb77a944e4d1f42b1c633a51330d32961dcf934e",
      "parents": [
        "a2b8c40161fad3e7de95f518205b2fcbf3a76ec9"
      ],
      "author": {
        "name": "Ady Abraham",
        "email": "adyabr@google.com",
        "time": "Fri Jan 21 17:00:50 2022 -0800"
      },
      "committer": {
        "name": "Ady Abraham",
        "email": "adyabr@google.com",
        "time": "Fri Jan 21 17:01:03 2022 -0800"
      },
      "message": "surface_control: handle acquire fence on BLAST callbacks\n\nWhen latching unsignaled buffers, the acquire fence is\nnot signaled by the time BLAST callback is invoked. In\nthat case pass a fence instead. For latch signaled, we still\npass the acquire time itself to avoid sending file descriptors\nover binder.\n\nBug: 198190384\nTest: TBD\nChange-Id: I949fd396ec36ee759327a952239509d10259be1b\n"
    },
    {
      "commit": "7e47b3dd7d7f348859f8a23c1abcec8b18d55270",
      "tree": "c44851b53081ff0f4586731fef6755564e9783b8",
      "parents": [
        "ffe4331a9b0ab36f29276dc43f3fc6cceed4a01e"
      ],
      "author": {
        "name": "Rachel Lee",
        "email": "rnlee@google.com",
        "time": "Wed Jan 12 14:28:26 2022 -0800"
      },
      "committer": {
        "name": "Rachel Lee",
        "email": "rnlee@google.com",
        "time": "Fri Jan 14 15:38:18 2022 -0800"
      },
      "message": "Use AVsyncId typedef.\n\nTest: atest ASurfaceControlTest\nBug: 214063411\nChange-Id: I5dd6a0e467f3acc46bf4ce65dde0df265b590697\n"
    },
    {
      "commit": "4832a69444f67e1c934b591f31a7749e6bdb34d4",
      "tree": "cd9a7e1e8e49a4a4603cbd82c0bed322099f9e9d",
      "parents": [
        "24f7505d0b15bc83b1245ced45ab023dd3a25472",
        "3712a2a7c0a8fa19c5ce01b3c8946b4ca9f48889"
      ],
      "author": {
        "name": "Rachel Lee",
        "email": "rnlee@google.com",
        "time": "Thu Jan 13 22:44:31 2022 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jan 13 22:44:31 2022 +0000"
      },
      "message": "Merge changes from topic \"achoreonanos\"\n\n* changes:\n  Update hwui with renamed AChoreographer method.\n  Update libandroid renamed AChoreographer methods.\n"
    },
    {
      "commit": "545adcd1f77b89edc56f94508c5d43bd3edda66a",
      "tree": "ffb89300413ffc84f9330d707b5bc8c1445f37ed",
      "parents": [
        "ffe4331a9b0ab36f29276dc43f3fc6cceed4a01e"
      ],
      "author": {
        "name": "Rachel Lee",
        "email": "rnlee@google.com",
        "time": "Wed Jan 12 17:27:32 2022 -0800"
      },
      "committer": {
        "name": "Rachel Lee",
        "email": "rnlee@google.com",
        "time": "Thu Jan 13 14:14:25 2022 -0800"
      },
      "message": "Update libandroid renamed AChoreographer methods.\n\nTest: atest ChoreographerNativeTest\nBug: 214303753\nChange-Id: I32d9703c669b2408dddd199c678fca0564668142\n"
    },
    {
      "commit": "29795b0bf203f54488a3a562cc19532ee59587c5",
      "tree": "bc8b6aa35760123bb50d22cef780c901bbea971f",
      "parents": [
        "8ba50e5ce4452da819f1e54c43c9af55f8704944",
        "2a30ec9975740d6c5fb5e34a4960a262ccc00e59"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 13 06:39:20 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu Jan 13 06:39:20 2022 +0000"
      },
      "message": "Merge \"Add tagSocket/untagSocket NDK APIs\" am: d992ee2925 am: 358573e8a3 am: cfdc49a491 am: 2a30ec9975\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1938795\n\nChange-Id: If5f98e651be5b59753c15dd19fdedf2d67d034e5\n"
    },
    {
      "commit": "2a30ec9975740d6c5fb5e34a4960a262ccc00e59",
      "tree": "e027bb0137012d15b9e15191d02f87d3d7d20395",
      "parents": [
        "bd805bbc243d5763959fdb879d3f89ec5decdadd",
        "cfdc49a4917c931025aa4e7a0a6b0d52cc7f37cc"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 13 06:24:56 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu Jan 13 06:24:56 2022 +0000"
      },
      "message": "Merge \"Add tagSocket/untagSocket NDK APIs\" am: d992ee2925 am: 358573e8a3 am: cfdc49a491\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1938795\n\nChange-Id: I1c005cbc1d888310e17c6105c0dd2457d4cc1c86\n"
    },
    {
      "commit": "cfdc49a4917c931025aa4e7a0a6b0d52cc7f37cc",
      "tree": "5afdf0962a78aeeffeb830fea1a645050248b152",
      "parents": [
        "205bda070b1f190e8815f2c1dd47219d69a57f37",
        "358573e8a307dd41a9d1d77a5575f62d695facaf"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Jan 13 06:10:44 2022 +0000"
      },
      "committer": {
        "name": "Automerger Merge Worker",
        "email": "android-build-automerger-merge-worker@system.gserviceaccount.com",
        "time": "Thu Jan 13 06:10:44 2022 +0000"
      },
      "message": "Merge \"Add tagSocket/untagSocket NDK APIs\" am: d992ee2925 am: 358573e8a3\n\nOriginal change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1938795\n\nChange-Id: Id17914c8247e754e74c9434a6e6843b703ca2daf\n"
    },
    {
      "commit": "a4a35a92eada672c41e238103eed332b4d262a44",
      "tree": "ac6ef094162eeaefce8a9f61b2a4a767ca1d8e0e",
      "parents": [
        "b0c148971a7221f51ef394853cce026e16cbce30"
      ],
      "author": {
        "name": "Ken Chen",
        "email": "cken@google.com",
        "time": "Thu Jan 06 10:21:26 2022 +0800"
      },
      "committer": {
        "name": "Ken Chen",
        "email": "cken@google.com",
        "time": "Wed Jan 12 23:21:17 2022 +0800"
      },
      "message": "Add tagSocket/untagSocket NDK APIs\n\nProvide native APIs to tag the various sockets used for network\ntransfer, which helps apps tracking down data usage inside their app.\n\nWe\u0027ve had equivalent Java APIs since API level 14.\nhttps://developer.android.com/reference/android/net/TrafficStats.html#tagSocket(java.net.Socket)\nhttps://developer.android.com/reference/android/net/TrafficStats.html#untagSocket(java.net.Socket)\n\nGiven that these Java APIs are implemented in native side, providing\nNDK APIs directly will be easier for native users to use it.\n\nBug: 29761778\nBug: 202086915\nTest: Tests in change Ic6554d9b98cef9b41b7eae06315d284c574c0a45\nChange-Id: I802ce62f82199ce087bf8feb03afb26de1ce526e\n"
    },
    {
      "commit": "df7c72558630e4b9e3fa50e3fda4ff8a5bed22e8",
      "tree": "e4555ee399390e39562cedbcd33de9b19014af67",
      "parents": [
        "86643bc7116ebb09430c80588590a16f1ef8afbc"
      ],
      "author": {
        "name": "Robert Carr",
        "email": "racarr@google.com",
        "time": "Sat Jan 01 19:17:48 2022 -0800"
      },
      "committer": {
        "name": "Rob Carr",
        "email": "racarr@google.com",
        "time": "Sun Jan 02 21:55:41 2022 +0000"
      },
      "message": "DO NOT MERGE: Track SurfaceComposerClient changes\n\nsurfaceControlStats now includes the acquire count.\n\nBug: 197269223\nBug: 212846697\nTest: Existing tests pass\nChange-Id: I29f2e9ba1c100a831be5eddce2c2a442d136d98e\n"
    },
    {
      "commit": "a1320c0a3ac4ead5849ba432571153503c809168",
      "tree": "4e8f1a03014369703891e39c0100de046cdd8ea6",
      "parents": [
        "8d7fb9d8a6f0ec85fa4ce7764218f054ea851c59",
        "d0c5dbabd5a8b918b2590514a05da50ff84caf18"
      ],
      "author": {
        "name": "TreeHugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Thu Dec 16 17:58:05 2021 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Dec 16 17:58:05 2021 +0000"
      },
      "message": "Merge \"Pass JNIEnv explicitly into AInputQueue_fromJava\""
    },
    {
      "commit": "d0c5dbabd5a8b918b2590514a05da50ff84caf18",
      "tree": "b2f0b48b8fef191427ee6112b0f57f2492c473b0",
      "parents": [
        "ca3f277231d61755a060bb60cc91fc41397d2dd8"
      ],
      "author": {
        "name": "Prabir Pradhan",
        "email": "prabirmsp@google.com",
        "time": "Thu Dec 16 03:22:38 2021 -0800"
      },
      "committer": {
        "name": "Prabir Pradhan",
        "email": "prabirmsp@google.com",
        "time": "Thu Dec 16 03:37:20 2021 -0800"
      },
      "message": "Pass JNIEnv explicitly into AInputQueue_fromJava\n\nInstead of assuming a JNIEnv*, the method should have the env passed\ninto it, which is the standard practice for native APIs.\n\nBug: 210727635\nTest: atest InputQueueTest\nChange-Id: Iae5fc5bd39c758c530185694751d6d79715ce31b\n"
    },
    {
      "commit": "7834d38d952c4fda055bf56a4e3a052460939df0",
      "tree": "ea414e1706f8562d7a69a30885a5991d13f907ab",
      "parents": [
        "d9366c342105dd639ed427f0704e2fd8dd172338",
        "4fa7484510833ca11c79059ec8994417315a7d49"
      ],
      "author": {
        "name": "Rachel Lee",
        "email": "rnlee@google.com",
        "time": "Wed Dec 15 20:02:30 2021 +0000"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Dec 15 20:02:30 2021 +0000"
      },
      "message": "Merge changes from topic \"surfacectrl\"\n\n* changes:\n  Pass start time from HWUI canvas context.\n  Implement timeline in libandroid ASurfaceControl.\n"
    },
    {
      "commit": "e1e77cca8a44e85c5cf0ab1b3038a510c40a19c0",
      "tree": "afe1c909107bdd64c244d812ff3a6978a4622be7",
      "parents": [
        "caeabe22ad1a8471119fbcdae4c8085548c3ae5c"
      ],
      "author": {
        "name": "Rachel Lee",
        "email": "rnlee@google.com",
        "time": "Tue Oct 19 16:40:41 2021 -0700"
      },
      "committer": {
        "name": "Rachel Lee",
        "email": "rnlee@google.com",
        "time": "Thu Dec 09 16:04:06 2021 -0800"
      },
      "message": "Implement timeline in libandroid ASurfaceControl.\n\nAs part of choreographer project.\n\nBug: 198192003\nTest: atest ASurfaceControlTest\nChange-Id: I36fdeae1d2bc07fdbd487fc0a40324fe48baca09\n"
    },
    {
      "commit": "7f55b131828e477b73d8b5a2bc52311540c0922a",
      "tree": "6af59e249c3b6627872d87b9c7f0d72c8382f8e2",
      "parents": [
        "4f2b375c12e54bae851fb8a0bf3c9f143e7b5fed"
      ],
      "author": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Mon Sep 20 14:42:29 2021 -0400"
      },
      "committer": {
        "name": "John Reck",
        "email": "jreck@google.com",
        "time": "Thu Dec 09 17:15:11 2021 -0500"
      },
      "message": "Reduce SurfaceControl feature gap to NDK API\n\nBug: 200697201\nTest: atest android.view.cts.SurfaceControlTest\n\nChange-Id: I1d0cff355714acb5668952b3d7f6fc0c15952523\n"
    },
    {
      "commit": "10d9972786b9f564365b1f01af23b9df2ec00117",
      "tree": "9ca125a8245bdbd608c4e999b9ba287dcdd3bfcb",
      "parents": [
        "d353c81c5c50494d66c8b4bce3294b3b8c86a38b",
        "0f473ac71a8dcefa15f377fe44c4f6003b6a518b"
      ],
      "author": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Thu Nov 18 17:00:37 2021 +0000"
      },
      "committer": {
        "name": "Xin Li",
        "email": "delphij@google.com",
        "time": "Thu Nov 18 17:00:37 2021 +0000"
      },
      "message": "Merge sc-qpr1-dev-plus-aosp-without-vendor@7810918\n\nBug: 205056467\nMerged-In: I13199bc39e9445929195f3d15579cbffe94e92b0\nChange-Id: I35fa3c6c2abf679c51033f1395a08d511ed8739f\n"
    },
    {
      "commit": "2b739bbb63857888fb96bdcbfdf6da1f0e79bb8a",
      "tree": "892b60318cfe6f9bbe2676c8e27f6df508c04af4",
      "parents": [
        "e469cfaef5e37bbbbcc6d237cb138b67760caf18"
      ],
      "author": {
        "name": "Bo Liu",
        "email": "boliu@google.com",
        "time": "Wed Nov 10 19:20:03 2021 -0500"
      },
      "committer": {
        "name": "Bo Liu",
        "email": "boliu@google.com",
        "time": "Wed Nov 10 19:22:22 2021 -0500"
      },
      "message": "Performance hint ndk APIs\n\nTest: atest PerformanceHintNativeTestCases\nChange-Id: I8f410cf5ee8cee90465d1ce48a42c9ff8bbe80c4\n"
    }
  ],
  "next": "86df7e4214a208632b1be0882e00b7d0a70ec317"
}
