)]}'
{
  "log": [
    {
      "commit": "5c3296af2d2b9717065b632c1848a45b514540a2",
      "tree": "2e122dd84b80e74d3cb3ba9c9d74e797ea38c1cb",
      "parents": [
        "0ff7a642dae1c3a0d4116fff591860b1cbcd788a"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Dec 13 17:52:26 2017 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Dec 14 15:29:21 2017 -0800"
      },
      "message": "Improve testibility of applicatin switches.\n\nThings can be flaky, because window focus changes are\ndispatched to the window on a separate path from input events,\nand the window will drop events if it gets them before it sees\nthe focus change.  I am trying to mitigate this some by noting\nASAP what the next upcoming focus state will be, so we can check\nthat and dispatch it before dispatching a key event if needed.\n\nThis definitely makes things better, but not perfect.  ctate\nsuggested that maybe we should be dispatching window focus events\nthrough the input system, which at a glance sounds like a really\nreally good idea to me...  so maybe we can look at that later.\n\nAlso changed the wm command to just be a shell wrapper around\nall of the implementation that is now in WindowManagerShellCommand.\n\nAnd fixed a few places where we write debug info to streams that\nwould trigger strict mode violations that we really don\u0027t care\nabout.\n\nTest: manual\nChange-Id: I5235653bcec5522ab84c7f2e1de96d86f2f59326\n"
    },
    {
      "commit": "6c1688850eb7b3ada9cd9e191bf31c4153ea01fd",
      "tree": "c441779f39476523ca38538a249ef8791daa531e",
      "parents": [
        "8f380ab29c8606bca861ba21eee52cedfbc99f46"
      ],
      "author": {
        "name": "George Burgess IV",
        "email": "gbiv@google.com",
        "time": "Sat Nov 04 15:58:58 2017 -0700"
      },
      "committer": {
        "name": "George Burgess IV",
        "email": "gbiv@google.com",
        "time": "Sun Nov 05 01:07:30 2017 -0700"
      },
      "message": "cmds: add #!s\n\nWithout this, exec()ing these fails.\n\nFound with `grep -L bin/sh $(grep -Rl Script)`\n\nBug: None\nTest: exec()ed each of these scripts; I no longer get \"exec format\nerror\" for any of them.\nChange-Id: I47db5007e5cc14ab91eb846b7bffecb925d37874\n"
    },
    {
      "commit": "241ae10b2189f449e57d8d660235ac56d8fb1b80",
      "tree": "a6048e4406bff9ffc789c5a9af53a0eeea0718a6",
      "parents": [
        "d4f9d37424752a0774cdf9190dc12887c70daec2"
      ],
      "author": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Wed Nov 02 21:57:33 2016 -0700"
      },
      "committer": {
        "name": "Jorim Jaggi",
        "email": "jjaggi@google.com",
        "time": "Wed Nov 23 16:27:35 2016 +0100"
      },
      "message": "Add explicit method to dismiss Keyguard\n\nThe flag is a bit clunky for most cases, and a method is more\nclear.\n\nTest: cts/hostsidetests/services/activityandwindowmanager/util/run-test\nandroid.server.cts.KeyguardTests\n\nTest: cts/hostsidetests/services/activityandwindowmanager/util/run-test\nandroid.server.cts.KeyguardLockedTests\n\nTest: runtest systemui -c\ncom.android.systemui.keyguard.DismissCallbackRegistryTest\n\nBug: 30961403\nBug: 27422134\nChange-Id: I39de90c7cfecd99350a74f72cd76418e337f2b79\n"
    },
    {
      "commit": "58c3437228b8b7b2ab4e5a80e6406f9c39309053",
      "tree": "837c66922cba8f45f30bf94025d5c8f3976d3bfc",
      "parents": [
        "68e5c9e93a8f1542cd988ac01ba1d98381ff4893"
      ],
      "author": {
        "name": "Robert Carr",
        "email": "racarr@google.com",
        "time": "Thu Sep 15 12:49:06 2016 -0700"
      },
      "committer": {
        "name": "Robert Carr",
        "email": "racarr@google.com",
        "time": "Mon Sep 19 11:19:51 2016 -0700"
      },
      "message": "Pass SurfaceTrace through WM command in binary format.\n\nMaybe we could add a pretty printer later, this is mostly,\nintended for consumption by the test framework though, so for\nnow we defer parsing until that part.\n\nTest: cts-tradefed run singleCommand cts -o --module CtsWindowManagerHostTestCases --test android.server.cts.SurfaceViewMovementTests#testSurfaceMovesWithParent\nChange-Id: I75add6a9644cd4bbbb9d06aab97b9bf9f016655b\n"
    },
    {
      "commit": "3b716249cc2f94aa9842576b618998c28593be90",
      "tree": "d4621c132d21655fe67852975c63d858d5998c59",
      "parents": [
        "fcdcf7f636ada244a635328e25fdc03959468c8e"
      ],
      "author": {
        "name": "Robert Carr",
        "email": "racarr@google.com",
        "time": "Tue Aug 16 16:02:21 2016 -0700"
      },
      "committer": {
        "name": "Robert Carr",
        "email": "racarr@google.com",
        "time": "Mon Sep 19 11:19:31 2016 -0700"
      },
      "message": "WindowManager RemoteSurfaceTrace infrastructure\n\nAdd \"wm surface-trace\" command which enables tracing of surface\ncommands to be switched on at runtime. Primarily intended for use\nby WM CTS tests. First target in CTS will be to use show/hide\nevents to eliminate polling in WM tests and increase speed. Next up\nlooking at things like verifying various transitions and relaunch\nscenarios are flicker free. Later we may want to look at a smarter\nor more structured format...but it\u0027s really not much hassle to parse\nthe commands off a pipe so I wanted to get us started.\n\nTest: cts-tradefed run singleCommand cts -o --module CtsWindowManagerHostTestCases --test android.server.cts.SurfaceViewMovementTests#testSurfaceMovesWithParent\nChange-Id: I1ff912c405a6cb9996ee9b6e2c465d57706191ba\n"
    },
    {
      "commit": "df3a7cab8f534584bcef83e222372e1be9be12c5",
      "tree": "5b6d8bdbaac79157728cec29e84d7c0b4782cfcf",
      "parents": [
        "a2153e6246138d303fe824d99aadf28886767743"
      ],
      "author": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Tue Sep 06 17:13:41 2016 -0400"
      },
      "committer": {
        "name": "Alan Viverette",
        "email": "alanv@google.com",
        "time": "Tue Sep 06 17:13:41 2016 -0400"
      },
      "message": "Change density for the correct user\n\nBug: 30839993\nChange-Id: I5368accddfc4a03b8025a257b4155fcdc6197f11\n"
    },
    {
      "commit": "f40c66d1a13b7cf88ba06cff10f6343471afd840",
      "tree": "fcb5ac5eaa34631b60acf1fbc0fac74ba8dfc427",
      "parents": [
        "1aadfc2bc46a14b6c95dc45ec11c4191cac5062d"
      ],
      "author": {
        "name": "Tim Kilbourn",
        "email": "tkilbourn@google.com",
        "time": "Thu Jul 23 14:51:41 2015 -0700"
      },
      "committer": {
        "name": "Tim Kilbourn",
        "email": "tkilbourn@google.com",
        "time": "Thu Jul 23 14:51:41 2015 -0700"
      },
      "message": "Add a wm command to dismiss the keyguard.\n\nIf the user has a screen lock, the user is prompted to authenticate.\nOtherwise the keyguard is dismissed.\n\nBug: 22694837\nChange-Id: I783fc6f08fb21977aa4f1e884b0a4354a3154805\n"
    },
    {
      "commit": "f5ad42f4324bfb7aa28f0967e2fcc89f55d6e91f",
      "tree": "a58068f3c2d1b97ae143c930c12a002beea076ab",
      "parents": [
        "de1e281bbc062410a9079d2640b760271bde1043"
      ],
      "author": {
        "name": "Wale Ogunwale",
        "email": "ogunwale@google.com",
        "time": "Fri Jun 12 13:59:03 2015 -0700"
      },
      "committer": {
        "name": "Wale Ogunwale",
        "email": "ogunwale@google.com",
        "time": "Tue Jun 23 09:08:29 2015 -0700"
      },
      "message": "Update surfaces secure flag on screen capture setting change\n\nAlso, added \u0027wm screen-capture [userId] [true|false]\u0027\ncommand.\n\nBug: 20934462\nChange-Id: I14711003d7691fc4495428c12c9ff3457cd3773c\n"
    },
    {
      "commit": "d46747a1c64b6ca3282e8841833980ab91829436",
      "tree": "feca484f9f10ee91399a12b41a524fb7f20a3eb5",
      "parents": [
        "10acf6d3efde60977d2d2e82b90c53d722d9d357"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Wed Apr 15 19:02:36 2015 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Wed Apr 15 19:02:36 2015 -0700"
      },
      "message": "Add support for disabling display scaling for development.\n\nAdded two new options to the wm command.\n\n1. Set the screen size based on dips rather than pixels using the\ncurrent screen density.\n\neg. adb shell wm size 320dpx320dp\n\n2. Disable automatic scaling of the contents of the display.\nWhen combined with the previous command, this is useful for seeing\nhow the UI would behave if the screen remained at its current density\nbut changed physical size.\n\neg. adb shell wm scaling off\n\nBug: 19899223\nChange-Id: I545f893ba4861494e995cf0457ebeba1050d28dc\n"
    },
    {
      "commit": "79f7ec70ebd5758ce54fd5b6fcd60fd27457cba6",
      "tree": "6bc7542adfb792659a153a5000fb94a3ed6abb6a",
      "parents": [
        "bab9687e6473072d6ff4f7ea5a7b21bcfbf95744"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Apr 04 18:50:23 2013 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Apr 08 13:08:37 2013 -0700"
      },
      "message": "Have audio service clean up new receivers in crashing processes.\n\nThe new media button receiver with only a pending intent (no\ncomponent name) could be left hanging if the process that\nregistered it went away.  These semantically need to be tied\nto the calling process\u0027s lifetime; we now clean them up when\nthe calling process goes away.\n\nAlso added some additional cleanup of media button receivers\nwhen packages change (updated, cleared).\n\nAnd on top of that, a new \"media\" command for doing media\nthings.  Currently lets you send media keys and monitor\nremote display data.\n\nOh and finally added a new BaseCommand base class for\nimplementing these command line utilities.\n\nChange-Id: Iba1d56f10bab1eec4a94a7bb1d1c2ae614c8bcf5\n"
    },
    {
      "commit": "672cf45de7aa5ad6fd1f75512ee5a451a16c0b39",
      "tree": "1a684fbeadc913b4544c65c12b334e0dc6f93181",
      "parents": [
        "7c566bf3e4a10d74588b3e92ea3f6af310930f37"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Mar 26 15:24:24 2013 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Mar 26 15:24:24 2013 -0700"
      },
      "message": "Change wm commands to return size and density info.\n\nChange-Id: Id25722fe5f0cd9470d04d657f067e5ad29927c98\n"
    },
    {
      "commit": "33c29b0e16a98753aecad894cbc344a87a6307a5",
      "tree": "1ea25e19fe365591e86513617833f56a6519d3c4",
      "parents": [
        "f9b9ead5d4f7bee34ec8a6b083065b624a7f6809"
      ],
      "author": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Tue Feb 19 16:42:16 2013 -0800"
      },
      "committer": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Tue Feb 19 16:42:16 2013 -0800"
      },
      "message": "Use BUILD_PREBUILT to install the shell script\n\nNOTICE files will be picked up automatically.\n\nChange-Id: Ia4938aff013f1c010cbbfceacf5685722c86c39a\n"
    },
    {
      "commit": "c652de8141f5b8e3c6bcf8916842b6e106413b1a",
      "tree": "d3be73e9b665365bdacd01cfc66faa24054f5a9c",
      "parents": [
        "736ef1e9dedbdd0c24e27f170034f2f869fd083f"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Feb 15 16:32:56 2013 -0800"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Feb 19 12:08:58 2013 -0800"
      },
      "message": "Implement display overscan support.\n\nThe window manager now keeps track of the overscan of\neach display, with an API to set it.  The overscan impacts\nhow it positions windows in the display.  There is a new set\nof APIs for windows to say they would like to go into the\noverscan region.  There is a call into the window manager to\nset the overscan region for a display, and it now has a\nconcept of display settings that it stores presistently.\n\nAlso added a new \"wm\" command, moving the window manager\nspecific commands from the \"am\" command to there and adding\na new now to set the overscan region.\n\nChange-Id: Id2c8092db64fd0a982274fedac7658d82f30f9ff\n"
    }
  ]
}
