)]}'
{
  "log": [
    {
      "commit": "31b90a368fa0c9bf22e65384d8a8f5e23d92bb29",
      "tree": "11af5367e3bc54fb2e15ce2fbaa57a99258f3dfa",
      "parents": [
        "5bb420627520412a621121f5c21da123f6a4cb1c"
      ],
      "author": {
        "name": "Jean Chalard",
        "email": "jchalard@google.com",
        "time": "Fri Aug 10 11:26:40 2012 +0900"
      },
      "committer": {
        "name": "Jean Chalard",
        "email": "jchalard@google.com",
        "time": "Fri Aug 10 11:26:40 2012 +0900"
      },
      "message": "Support a syntax to add whitelist entries in shortcuts\n\nBug: 6906525\nChange-Id: Ie33586c07973bf76e38390766175ba424d72d655\n"
    },
    {
      "commit": "5bb420627520412a621121f5c21da123f6a4cb1c",
      "tree": "2d9682588261e87bfa97a5b8f312bd028dc61f39",
      "parents": [
        "04a89132e939db174079d155e25714d7f616ca8b"
      ],
      "author": {
        "name": "Ken Wakasa",
        "email": "kwakasa@google.com",
        "time": "Fri Aug 10 00:40:34 2012 +0900"
      },
      "committer": {
        "name": "Ken Wakasa",
        "email": "kwakasa@google.com",
        "time": "Fri Aug 10 00:46:20 2012 +0900"
      },
      "message": "Use more JNI Region calls\n\nChange-Id: I371db517ff4749c0b7e5bdb4362e6310c91a24dc\n"
    },
    {
      "commit": "04a89132e939db174079d155e25714d7f616ca8b",
      "tree": "541c8b48b50cbaa5babec28dfe09f7c893e24871",
      "parents": [
        "9e0c711a6230af1db0753af401804c95e4bee69d"
      ],
      "author": {
        "name": "Ken Wakasa",
        "email": "kwakasa@google.com",
        "time": "Thu Aug 09 23:23:35 2012 +0900"
      },
      "committer": {
        "name": "Ken Wakasa",
        "email": "kwakasa@google.com",
        "time": "Thu Aug 09 23:27:58 2012 +0900"
      },
      "message": "Use GetStringUTFRegion for filename\n\nChange-Id: I2e9ad092ccf4c23c1c6b71916c962994314d37b6\n"
    },
    {
      "commit": "9e0c711a6230af1db0753af401804c95e4bee69d",
      "tree": "f4cd9db5df639ea875fe13465bfe9ad698eb7ecf",
      "parents": [
        "805ac949d22946e60cbe311676e32d1f4f02ced3"
      ],
      "author": {
        "name": "Ken Wakasa",
        "email": "kwakasa@google.com",
        "time": "Thu Aug 09 22:26:58 2012 +0900"
      },
      "committer": {
        "name": "Ken Wakasa",
        "email": "kwakasa@google.com",
        "time": "Thu Aug 09 22:28:57 2012 +0900"
      },
      "message": "Stop using STL string in additional_proximity_chars\n\nChange-Id: Ic016fd5983b8855b0fd9506a17b205db86af3a2f\n"
    },
    {
      "commit": "805ac949d22946e60cbe311676e32d1f4f02ced3",
      "tree": "3ffed5534e5efe192b8a736677b15447f9c97393",
      "parents": [
        "71b379df51de95dfb0071506b4eb6a64eadd8832"
      ],
      "author": {
        "name": "Ken Wakasa",
        "email": "kwakasa@google.com",
        "time": "Thu Aug 09 19:32:03 2012 +0900"
      },
      "committer": {
        "name": "Ken Wakasa",
        "email": "kwakasa@google.com",
        "time": "Thu Aug 09 19:36:58 2012 +0900"
      },
      "message": "Fix string.compare() logic.  It happens to be working luckily.\n\nChange-Id: I262c6d5779124e5b09ad1a66ca3c9ddb2fc6d7d5\n"
    },
    {
      "commit": "71b379df51de95dfb0071506b4eb6a64eadd8832",
      "tree": "0fe3d80d7a956155b64c1f1153042a863b8e2943",
      "parents": [
        "9d29871605515ac0f6071882213a90bc75dfd9ba",
        "015114592460cca82e5196f2c2e2eff23f9d97ae"
      ],
      "author": {
        "name": "Ken Wakasa",
        "email": "kwakasa@google.com",
        "time": "Thu Aug 09 02:54:37 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Aug 09 02:54:38 2012 -0700"
      },
      "message": "Merge \"Use GetStringUTFRegion\" into jb-mr1-dev"
    },
    {
      "commit": "9d29871605515ac0f6071882213a90bc75dfd9ba",
      "tree": "e9ee781a36a026562880562dfcf1e99829ed1653",
      "parents": [
        "877157e1f5ed44d6490eaf8fab430f9a73caf34d"
      ],
      "author": {
        "name": "Satoshi Kataoka",
        "email": "satok@google.com",
        "time": "Thu Aug 09 12:42:12 2012 +0900"
      },
      "committer": {
        "name": "Satoshi Kataoka",
        "email": "satok@google.com",
        "time": "Thu Aug 09 17:49:19 2012 +0900"
      },
      "message": "Add reset method for dic travserse session\n\nChange-Id: Ia3dd924f92549da2cf8302ef77c629902d4f275b\n"
    },
    {
      "commit": "877157e1f5ed44d6490eaf8fab430f9a73caf34d",
      "tree": "a6fdef975a2bfaba8e3eaaa92dd9beea570b655d",
      "parents": [
        "f40a666902719fac076231b655444b8168cfb755"
      ],
      "author": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Thu Aug 09 15:25:01 2012 +0900"
      },
      "committer": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Thu Aug 09 16:44:11 2012 +0900"
      },
      "message": "Optimize keyboard drawing code a bit\n\n * Remove useless boolean flag.\n * Use invalidate(int,int,int,int).\n * Don\u0027t draw background when hardware acceleration is enabled.\n\nChange-Id: Id560ac84f33b5151437a42a4ff22736284d71e2d\n"
    },
    {
      "commit": "f40a666902719fac076231b655444b8168cfb755",
      "tree": "55136c0dbb429e26928eaec0066185b2ace35bdf",
      "parents": [
        "ccd8ed53b33a5f91961f40d576abd0a91b87a66d",
        "2be2d776649c9c0b3914135794ab7a7e92e753f9"
      ],
      "author": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Thu Aug 09 00:12:47 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Aug 09 00:12:48 2012 -0700"
      },
      "message": "Merge \"Update dictionary availability at onStartInputView\" into jb-mr1-dev"
    },
    {
      "commit": "2be2d776649c9c0b3914135794ab7a7e92e753f9",
      "tree": "7b2770f96f6034c11ab66a28abc1c476e0827fd2",
      "parents": [
        "9abea49dd4f3428acb60f35ea7a8ff53aa2e2af7"
      ],
      "author": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Thu Aug 09 16:09:54 2012 +0900"
      },
      "committer": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Thu Aug 09 16:09:54 2012 +0900"
      },
      "message": "Update dictionary availability at onStartInputView\n\nThis is a follow up of I7901c0f9489b4deb79314c2c903b138611bfd78e\n\nChange-Id: I38c22e886db247c402a964e3ddd10b09a461151c\n"
    },
    {
      "commit": "015114592460cca82e5196f2c2e2eff23f9d97ae",
      "tree": "fb92f52814f6739d91ecc3c63a7750dc3e84aa61",
      "parents": [
        "ccd8ed53b33a5f91961f40d576abd0a91b87a66d"
      ],
      "author": {
        "name": "Ken Wakasa",
        "email": "kwakasa@google.com",
        "time": "Thu Aug 09 15:58:15 2012 +0900"
      },
      "committer": {
        "name": "Ken Wakasa",
        "email": "kwakasa@google.com",
        "time": "Thu Aug 09 16:05:54 2012 +0900"
      },
      "message": "Use GetStringUTFRegion\n\nChange-Id: I56ad66af4ee42ed32a6fd909a9a34d601874783a\n"
    },
    {
      "commit": "ccd8ed53b33a5f91961f40d576abd0a91b87a66d",
      "tree": "2bccbc6730a237c62770114ccd8e882d9eab9d00",
      "parents": [
        "9abea49dd4f3428acb60f35ea7a8ff53aa2e2af7"
      ],
      "author": {
        "name": "Jean Chalard",
        "email": "jchalard@google.com",
        "time": "Thu Aug 09 13:33:16 2012 +0900"
      },
      "committer": {
        "name": "Jean Chalard",
        "email": "jchalard@google.com",
        "time": "Thu Aug 09 14:25:13 2012 +0900"
      },
      "message": "Support stdin and stdout for compress/uncompress\n\nThis will improve flexibility in dictionary generation by\nallowing pipelined commands.\n\nChange-Id: Ia07bdc82c8bd740b5dfee6b5fd1a067f4b8b7ba5\n"
    },
    {
      "commit": "9abea49dd4f3428acb60f35ea7a8ff53aa2e2af7",
      "tree": "217196eaa01c111e48e05774b5e6f23a5116bf7e",
      "parents": [
        "60d4961f346dadf274f49e0f15c87dcffe8f5820",
        "8335c59ea7715f3dbc6625f128a7a038f314a89f"
      ],
      "author": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Wed Aug 08 20:00:18 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Aug 08 20:00:19 2012 -0700"
      },
      "message": "Merge \"Fix NPE and don\u0027t call UI API from non-UI thread\" into jb-mr1-dev"
    },
    {
      "commit": "8335c59ea7715f3dbc6625f128a7a038f314a89f",
      "tree": "97df9113b76753b823ec9330007a661797b542e6",
      "parents": [
        "732f27984e3e9c98748aee4726dc9eaed7a14776"
      ],
      "author": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Wed Aug 08 11:41:58 2012 +0900"
      },
      "committer": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Thu Aug 09 11:55:41 2012 +0900"
      },
      "message": "Fix NPE and don\u0027t call UI API from non-UI thread\n\nThis change also reverts I29ec3e9f10484f30288fac76f0c45b3707bc2259\n\nBug: 6956969\nBug: 6891020\nBug: 6947253\nChange-Id: I7901c0f9489b4deb79314c2c903b138611bfd78e\n"
    },
    {
      "commit": "60d4961f346dadf274f49e0f15c87dcffe8f5820",
      "tree": "7d44d96911d1fd19e00ab6841ad4761c9f0fbb91",
      "parents": [
        "bb005f787f4e00bd832e6a78797be10af2994061",
        "9127811493b9288a0ca385e75db68520b197dea2"
      ],
      "author": {
        "name": "Satoshi Kataoka",
        "email": "satok@google.com",
        "time": "Wed Aug 08 07:50:43 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Aug 08 07:50:44 2012 -0700"
      },
      "message": "Merge \"Pass traverse session\" into jb-mr1-dev"
    },
    {
      "commit": "9127811493b9288a0ca385e75db68520b197dea2",
      "tree": "e20c77d26b960313c8e6f1583f2718ab4a952f60",
      "parents": [
        "c4e4dfe17dd60d200b851d228ce718543900a1fc"
      ],
      "author": {
        "name": "Satoshi Kataoka",
        "email": "satok@google.com",
        "time": "Wed Aug 08 21:23:25 2012 +0900"
      },
      "committer": {
        "name": "Satoshi Kataoka",
        "email": "satok@google.com",
        "time": "Wed Aug 08 23:30:31 2012 +0900"
      },
      "message": "Pass traverse session\n\nChange-Id: I84bfaaa406e3f51421c08a7ee8f9576ebdba54d4\n"
    },
    {
      "commit": "bb005f787f4e00bd832e6a78797be10af2994061",
      "tree": "6889b4afce3413fa621d80c605bdf2f3baf62a66",
      "parents": [
        "181567f9c76a0b03250211bf7b53a66473bf704e"
      ],
      "author": {
        "name": "Ken Wakasa",
        "email": "kwakasa@google.com",
        "time": "Wed Aug 08 20:43:47 2012 +0900"
      },
      "committer": {
        "name": "Ken Wakasa",
        "email": "kwakasa@google.com",
        "time": "Wed Aug 08 21:06:52 2012 +0900"
      },
      "message": "Start using JNI\u0027s Get\u003cType\u003eArrayRegion()\n\nChange-Id: Iaa1014efe639dd79540835b0d5201093dbd8dab8\n"
    },
    {
      "commit": "181567f9c76a0b03250211bf7b53a66473bf704e",
      "tree": "199adc1d708b1d1b266dfcc53d1bb8a0c9c80a01",
      "parents": [
        "8d7e3a51f039dc0a2e46e33d688aac813b46a2ce",
        "c4e4dfe17dd60d200b851d228ce718543900a1fc"
      ],
      "author": {
        "name": "Satoshi Kataoka",
        "email": "satok@google.com",
        "time": "Wed Aug 08 04:40:36 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Aug 08 04:40:36 2012 -0700"
      },
      "message": "Merge \"Add traverse session\" into jb-mr1-dev"
    },
    {
      "commit": "c4e4dfe17dd60d200b851d228ce718543900a1fc",
      "tree": "31c58789b91f8fd04ce3e74fa5682d41b42db3c4",
      "parents": [
        "4ed69eed006c3e8a0b1ad8f3b0e23cd1cfb49679"
      ],
      "author": {
        "name": "Satoshi Kataoka",
        "email": "satok@google.com",
        "time": "Wed Aug 08 19:40:44 2012 +0900"
      },
      "committer": {
        "name": "Satoshi Kataoka",
        "email": "satok@google.com",
        "time": "Wed Aug 08 20:39:43 2012 +0900"
      },
      "message": "Add traverse session\n\nBug: 6942265\n\nChange-Id: I384cf701f5ee44c4b1037e5b8ddfa3d570286f55\n"
    },
    {
      "commit": "8d7e3a51f039dc0a2e46e33d688aac813b46a2ce",
      "tree": "ab253f908d2b2dd5f135f721421b5cd7a783d284",
      "parents": [
        "9b392364b7c59a143e66a8ef1d1149a47843d124",
        "4c573f3c649201b3e0a8198b6aefc0f69c158611"
      ],
      "author": {
        "name": "Jean Chalard",
        "email": "jchalard@google.com",
        "time": "Wed Aug 08 02:15:20 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Aug 08 02:15:20 2012 -0700"
      },
      "message": "Merge \"Rename dicttool to dicttool_aosp and split commands\" into jb-mr1-dev"
    },
    {
      "commit": "4c573f3c649201b3e0a8198b6aefc0f69c158611",
      "tree": "516d0cc0d4e2d18050ae9203a3a702fc0d7421d0",
      "parents": [
        "4ed69eed006c3e8a0b1ad8f3b0e23cd1cfb49679"
      ],
      "author": {
        "name": "Jean Chalard",
        "email": "jchalard@google.com",
        "time": "Wed Aug 08 17:15:58 2012 +0900"
      },
      "committer": {
        "name": "Jean Chalard",
        "email": "jchalard@google.com",
        "time": "Wed Aug 08 17:15:58 2012 +0900"
      },
      "message": "Rename dicttool to dicttool_aosp and split commands\n\nChange-Id: I83d948be2db5cd0203e876f019697e1d5e038818\n"
    },
    {
      "commit": "9b392364b7c59a143e66a8ef1d1149a47843d124",
      "tree": "90bd66e5659dc7b0cb4ab363b5cd735b0d1cdf2e",
      "parents": [
        "732f27984e3e9c98748aee4726dc9eaed7a14776"
      ],
      "author": {
        "name": "Ken Wakasa",
        "email": "kwakasa@google.com",
        "time": "Wed Aug 08 16:46:16 2012 +0900"
      },
      "committer": {
        "name": "Ken Wakasa",
        "email": "kwakasa@google.com",
        "time": "Wed Aug 08 17:12:09 2012 +0900"
      },
      "message": "Cleanup headers.\n\nChange-Id: Ied1bedb8ba5fae590987ea23bed32f4db1a60d77\n"
    },
    {
      "commit": "732f27984e3e9c98748aee4726dc9eaed7a14776",
      "tree": "fd29ef6c91cc4a91d28a9654cd8b69eebfbe482e",
      "parents": [
        "2bcd913e56ecbfd3f146b73ec3b1c77f83683c7e",
        "35336cf83a434514c60d79389ceb818cba642506"
      ],
      "author": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Wed Aug 08 00:08:10 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Aug 08 00:08:13 2012 -0700"
      },
      "message": "Merge \"Add toString() method to Keyboard\" into jb-mr1-dev"
    },
    {
      "commit": "2bcd913e56ecbfd3f146b73ec3b1c77f83683c7e",
      "tree": "b7458d085e65e4eb527f5c6522474b3435f62580",
      "parents": [
        "a890de42155c85d8af5c6da10fea1bc0574480f9",
        "79eefda0d3ab5e03c2d012ed8ea1898004781871"
      ],
      "author": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Wed Aug 08 00:07:56 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Aug 08 00:07:57 2012 -0700"
      },
      "message": "Merge \"Add SuggestInitializationListener to BinaryDictionary.resetMainDict()\" into jb-mr1-dev"
    },
    {
      "commit": "35336cf83a434514c60d79389ceb818cba642506",
      "tree": "c7ff0790982bf53bdb34386764be61f901fbcef9",
      "parents": [
        "4ed69eed006c3e8a0b1ad8f3b0e23cd1cfb49679"
      ],
      "author": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Wed Aug 08 15:59:56 2012 +0900"
      },
      "committer": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Wed Aug 08 15:59:56 2012 +0900"
      },
      "message": "Add toString() method to Keyboard\n\nChange-Id: I74c8f006323ed78ec67414fd17849ab40966968e\n"
    },
    {
      "commit": "a890de42155c85d8af5c6da10fea1bc0574480f9",
      "tree": "50872660fef09bdb7c1f55ae596cb3347ffb1a13",
      "parents": [
        "4ed69eed006c3e8a0b1ad8f3b0e23cd1cfb49679",
        "7ae1fd02d40c8c026a411f1037753725868c611e"
      ],
      "author": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Tue Aug 07 23:56:29 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Aug 07 23:56:29 2012 -0700"
      },
      "message": "Merge \"Use ArrayList to implement PointerTrackerQueue\" into jb-mr1-dev"
    },
    {
      "commit": "79eefda0d3ab5e03c2d012ed8ea1898004781871",
      "tree": "140d9beb457ecbc19dc4355a2d548373c7197546",
      "parents": [
        "4ed69eed006c3e8a0b1ad8f3b0e23cd1cfb49679"
      ],
      "author": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Wed Aug 08 15:55:26 2012 +0900"
      },
      "committer": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Wed Aug 08 15:55:26 2012 +0900"
      },
      "message": "Add SuggestInitializationListener to BinaryDictionary.resetMainDict()\n\nChange-Id: I4c01f172ddb2ca60fa6e604384610c90b76e5457\n"
    },
    {
      "commit": "7ae1fd02d40c8c026a411f1037753725868c611e",
      "tree": "4c101faecda18414bd5fb33bb954c324c74ef050",
      "parents": [
        "0cc425bd9c476d3cb6708554282a3242019eb317"
      ],
      "author": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Tue Aug 07 14:30:28 2012 +0900"
      },
      "committer": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Wed Aug 08 14:18:30 2012 +0900"
      },
      "message": "Use ArrayList to implement PointerTrackerQueue\n\nChange-Id: Ie386e6c7869df4df940e09fccffc5cd661134557\n"
    },
    {
      "commit": "4ed69eed006c3e8a0b1ad8f3b0e23cd1cfb49679",
      "tree": "c0d87da7bcce6a38d1d48d1e11851f98b0732734",
      "parents": [
        "7bf5415bfe69e4485c8a80fb473ecbc98d9f85e3",
        "04cccea2951ce052c568f242729cb7f527e38098"
      ],
      "author": {
        "name": "Jean Chalard",
        "email": "jchalard@google.com",
        "time": "Tue Aug 07 17:03:31 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Aug 07 17:03:32 2012 -0700"
      },
      "message": "Merge \"Move makedict to live under dicttool (A5)\" into jb-mr1-dev"
    },
    {
      "commit": "7bf5415bfe69e4485c8a80fb473ecbc98d9f85e3",
      "tree": "beedf02bdce4c2a606dbe0dbf6902000d630bbe0",
      "parents": [
        "0cc425bd9c476d3cb6708554282a3242019eb317"
      ],
      "author": {
        "name": "Baligh Uddin",
        "email": "baligh@google.com",
        "time": "Tue Aug 07 15:05:45 2012 -0700"
      },
      "committer": {
        "name": "Baligh Uddin",
        "email": "baligh@google.com",
        "time": "Tue Aug 07 15:05:45 2012 -0700"
      },
      "message": "Import translations. DO NOT MERGE\n\nChange-Id: I48e2fcef3c0384fb745f6329b8877a8c1a1cd815\nAuto-generated-cl: translation import\n"
    },
    {
      "commit": "0cc425bd9c476d3cb6708554282a3242019eb317",
      "tree": "b5036e5e7e915094c6eca25861c2c53a68b6dc00",
      "parents": [
        "27e48447a449d2eb534dfa2dc07060727e1a8fb0"
      ],
      "author": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Tue Aug 07 14:45:06 2012 +0900"
      },
      "committer": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Tue Aug 07 16:56:41 2012 +0900"
      },
      "message": "Add PointerTrackerQueue unit tests\n\nThis is a groundwork to elminate LinkedList from PointerTrackerQueue.\n\nChange-Id: Ib77780537ceb0b4273fb8e483977ab76124c5ce7\n"
    },
    {
      "commit": "27e48447a449d2eb534dfa2dc07060727e1a8fb0",
      "tree": "c21fc907f7ab10e206c3368e3e1173244a86eb24",
      "parents": [
        "2a0975be66cc899a065b802f410877c659d84035"
      ],
      "author": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Tue Aug 07 11:48:10 2012 +0900"
      },
      "committer": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Tue Aug 07 13:54:42 2012 +0900"
      },
      "message": "Lingering gesture floating preview text a bit\n\nBug: 6936095\nChange-Id: I873343e9aa6afdf6bdb223795f03232509b012a7\n"
    },
    {
      "commit": "2a0975be66cc899a065b802f410877c659d84035",
      "tree": "f540740566547a86a7f6e2f7d1d93ffafeaf0da8",
      "parents": [
        "7a13975700574c42ff1e9cfff5934f00ffb3c802"
      ],
      "author": {
        "name": "Baligh Uddin",
        "email": "baligh@google.com",
        "time": "Mon Aug 06 13:35:01 2012 -0700"
      },
      "committer": {
        "name": "Baligh Uddin",
        "email": "baligh@google.com",
        "time": "Mon Aug 06 13:35:01 2012 -0700"
      },
      "message": "Import translations. DO NOT MERGE\n\nChange-Id: I8cb76298b75155a9d2d4726127759ad9542a93fc\nAuto-generated-cl: translation import\n"
    },
    {
      "commit": "7a13975700574c42ff1e9cfff5934f00ffb3c802",
      "tree": "a74fb4e14c1f596461a6958fae3de731534878c7",
      "parents": [
        "dba77186f78a9c8b449cc0def5153586ef3f81f9"
      ],
      "author": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Mon Aug 06 17:28:33 2012 +0900"
      },
      "committer": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Mon Aug 06 17:28:33 2012 +0900"
      },
      "message": "Cleanup unused import and dead code\n\nChange-Id: Ife877620561d29a8f25602916420741186104617\n"
    },
    {
      "commit": "dba77186f78a9c8b449cc0def5153586ef3f81f9",
      "tree": "3690281108e9a8d0b930ddc10e2d177a98480be5",
      "parents": [
        "b27959741a25b900641a6acbf927625dbc68ddd3"
      ],
      "author": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Mon Aug 06 17:08:38 2012 +0900"
      },
      "committer": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Mon Aug 06 17:08:38 2012 +0900"
      },
      "message": "Fix duplicate getSuggestions() call for main dictionary\n\nChange-Id: I092480063452505cdf03dbd83b9c64e535822931\n"
    },
    {
      "commit": "b27959741a25b900641a6acbf927625dbc68ddd3",
      "tree": "1dcb0b3875216f05cd1d520bd46cdb8d7ffad1d5",
      "parents": [
        "44f12ed900f57af7318884347d9e1c434422a3ca"
      ],
      "author": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Mon Aug 06 16:50:43 2012 +0900"
      },
      "committer": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Mon Aug 06 16:50:43 2012 +0900"
      },
      "message": "Fix Utils.getStackTrace()\n\nChange-Id: Iaf160af32bb77b3ad5929cb5ee8eccd01165bdf6\n"
    },
    {
      "commit": "44f12ed900f57af7318884347d9e1c434422a3ca",
      "tree": "46b81ede4283078220736110f15f1e8faee0c856",
      "parents": [
        "e2a6badf601e7b637a709a11e430bd21bb46f6f9",
        "0a524de3df86e3039acba40b69ccba67ec484a41"
      ],
      "author": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Sun Aug 05 22:45:48 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Aug 05 22:45:49 2012 -0700"
      },
      "message": "Merge \"Separate updateSuggestionStrip from commitTyped\" into jb-mr1-dev"
    },
    {
      "commit": "0a524de3df86e3039acba40b69ccba67ec484a41",
      "tree": "91bb7c640119d01a326b13e39d0d902bc037ffa7",
      "parents": [
        "4e9e6cd1544f59be2ae02536af62fe5301e0cebb"
      ],
      "author": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Mon Aug 06 13:05:39 2012 +0900"
      },
      "committer": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Mon Aug 06 14:31:01 2012 +0900"
      },
      "message": "Separate updateSuggestionStrip from commitTyped\n\nThe commitTyped() called updateSuggestionStrip(), and that led to call\nSuggest.getSuggestedWordsForTypingInput() even after a batch input was\nstarted because WordComposer.commitWord() reset the batch input state.\n\nBug: 6932442\nChange-Id: If645b1ef0343aa1e21ca71a9275b40c6c3be13df\n"
    },
    {
      "commit": "e2a6badf601e7b637a709a11e430bd21bb46f6f9",
      "tree": "936ce1ce8e27966ac8497326f7486a39dee21311",
      "parents": [
        "4e9e6cd1544f59be2ae02536af62fe5301e0cebb",
        "586b0ca1a27c68c29583c496a453e811451d9359"
      ],
      "author": {
        "name": "Ken Wakasa",
        "email": "kwakasa@google.com",
        "time": "Sun Aug 05 19:34:23 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Sun Aug 05 19:34:23 2012 -0700"
      },
      "message": "Merge \"Show results in the native code.\" into jb-mr1-dev"
    },
    {
      "commit": "586b0ca1a27c68c29583c496a453e811451d9359",
      "tree": "464173b6b5713b1b288231b0d930c343b186be7d",
      "parents": [
        "77e8e81ad95cfc1eb8f8407fc872674b8d08bbe9"
      ],
      "author": {
        "name": "Satoshi Kataoka",
        "email": "satok@google.com",
        "time": "Mon Aug 06 11:20:54 2012 +0900"
      },
      "committer": {
        "name": "Satoshi Kataoka",
        "email": "satok@google.com",
        "time": "Mon Aug 06 11:26:13 2012 +0900"
      },
      "message": "Show results in the native code.\n\nChange-Id: I712ba49cf4a89a36836fbf49cd72e7eef218e61f\n"
    },
    {
      "commit": "4e9e6cd1544f59be2ae02536af62fe5301e0cebb",
      "tree": "20556cfa9012e9e3124cd830198dcda5b4f7a04b",
      "parents": [
        "0ef87868c2a1f0cb0249cfc0e53c357f04ea9366"
      ],
      "author": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Mon Aug 06 10:50:19 2012 +0900"
      },
      "committer": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Mon Aug 06 11:09:50 2012 +0900"
      },
      "message": "Fix IllegalStateException of KeyDetector\n\nA KeyDetector without Keyboard may exist in some rare cases. This\nchange eliminates throwing IllegalStateException and checks explicitly\nagainst null.\n\nBug: 6891020\nChange-Id: I29ec3e9f10484f30288fac76f0c45b3707bc2259\n"
    },
    {
      "commit": "0ef87868c2a1f0cb0249cfc0e53c357f04ea9366",
      "tree": "fd83003fca8125b1053768c6be18ea8562fdc4ae",
      "parents": [
        "3598053d41d1becf7b6d6b5d35bc6a4ec95f9884",
        "3d5a0b90f8f22e9c9af1df49de8c96dc109a08be"
      ],
      "author": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Fri Aug 03 14:35:16 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Aug 03 14:35:17 2012 -0700"
      },
      "message": "Merge \"Import translations. DO NOT MERGE\" into jb-mr1-dev"
    },
    {
      "commit": "3d5a0b90f8f22e9c9af1df49de8c96dc109a08be",
      "tree": "c5c2b457aff83ca48a6601c73e571b005d878496",
      "parents": [
        "15b28432bab6b530d82ba01e0ef6a19cd1a4c698"
      ],
      "author": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Fri Aug 03 14:25:41 2012 -0700"
      },
      "committer": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Fri Aug 03 14:25:41 2012 -0700"
      },
      "message": "Import translations. DO NOT MERGE\n\nChange-Id: I9510061c7ae1f4020cd5c5d24ed75348556ee085\nAuto-generated-cl: translation import\n"
    },
    {
      "commit": "04cccea2951ce052c568f242729cb7f527e38098",
      "tree": "589356d41290857daab52d16d2a06aa6c606aaf4",
      "parents": [
        "3598053d41d1becf7b6d6b5d35bc6a4ec95f9884"
      ],
      "author": {
        "name": "Jean Chalard",
        "email": "jchalard@google.com",
        "time": "Fri Aug 03 20:53:28 2012 +0900"
      },
      "committer": {
        "name": "Jean Chalard",
        "email": "jchalard@google.com",
        "time": "Sat Aug 04 02:14:13 2012 +0900"
      },
      "message": "Move makedict to live under dicttool (A5)\n\nThis removes the makedict directory and makes a new target\nto replace it. The old command is still working the same\nway it used to.\n\nChange-Id: Ie73b12a7ef101dd2b282e0cb4206ac263af1093e\n"
    },
    {
      "commit": "3598053d41d1becf7b6d6b5d35bc6a4ec95f9884",
      "tree": "fe3d2aa99ce1ad46c50a3f203205511bef534ca8",
      "parents": [
        "5284a1e3d3472e7ec91802409eae5de3d2860919"
      ],
      "author": {
        "name": "Jean Chalard",
        "email": "jchalard@google.com",
        "time": "Fri Aug 03 20:46:40 2012 +0900"
      },
      "committer": {
        "name": "Jean Chalard",
        "email": "jchalard@google.com",
        "time": "Sat Aug 04 01:55:33 2012 +0900"
      },
      "message": "Move dicttool tests and make a script to run them (A4)\n\nChange-Id: If582e81741c5edaf345dcb55517dcad0baa64c9e\n"
    },
    {
      "commit": "5284a1e3d3472e7ec91802409eae5de3d2860919",
      "tree": "748c62673a553e5e8adee48b6ea34e18c99aad6f",
      "parents": [
        "15b28432bab6b530d82ba01e0ef6a19cd1a4c698"
      ],
      "author": {
        "name": "Jean Chalard",
        "email": "jchalard@google.com",
        "time": "Sat Aug 04 01:48:17 2012 +0900"
      },
      "committer": {
        "name": "Jean Chalard",
        "email": "jchalard@google.com",
        "time": "Sat Aug 04 01:48:17 2012 +0900"
      },
      "message": "Fix the build\n\nChange-Id: I0d6570332bcf569d8c43b3edd8b3ab52263ef179\n"
    },
    {
      "commit": "15b28432bab6b530d82ba01e0ef6a19cd1a4c698",
      "tree": "0224459d8d6e693eb44e79b364465427caf6d116",
      "parents": [
        "54e84a00fc032ba566cbda41feafa71de77e1c43",
        "8ee4b35c7010c6e8f792e49a88dc4e908f7230fc"
      ],
      "author": {
        "name": "Jean Chalard",
        "email": "jchalard@google.com",
        "time": "Fri Aug 03 09:32:25 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Aug 03 09:32:27 2012 -0700"
      },
      "message": "Merge \"Cleanup unused code\" into jb-mr1-dev"
    },
    {
      "commit": "8ee4b35c7010c6e8f792e49a88dc4e908f7230fc",
      "tree": "4e327ac668cc689452e72b00b3c214b72964a9ba",
      "parents": [
        "1644a3c7323ae33063774d32ce2e0f8698ff712d"
      ],
      "author": {
        "name": "Jean Chalard",
        "email": "jchalard@google.com",
        "time": "Sat Aug 04 01:15:04 2012 +0900"
      },
      "committer": {
        "name": "Jean Chalard",
        "email": "jchalard@google.com",
        "time": "Sat Aug 04 01:15:04 2012 +0900"
      },
      "message": "Cleanup unused code\n\nThe Italian dictionary has been amended to contain words that\ninclude apostrophes, and accordingly the apostrophe is now\nexcluded from word separators in Italian.\nThis code was only used for Italian, and in the general case\nit does the wrong thing; it was only needed by limitations of\nthe old dictionary.\n\nBug: 6929108\nChange-Id: I7ff4615e01899a1cebed2c4c51679cd0746740fe\n"
    },
    {
      "commit": "54e84a00fc032ba566cbda41feafa71de77e1c43",
      "tree": "e7f058ff1039572b8318955131a8a8003479b4a6",
      "parents": [
        "1644a3c7323ae33063774d32ce2e0f8698ff712d"
      ],
      "author": {
        "name": "Jean Chalard",
        "email": "jchalard@google.com",
        "time": "Fri Aug 03 17:05:41 2012 +0900"
      },
      "committer": {
        "name": "Jean Chalard",
        "email": "jchalard@google.com",
        "time": "Sat Aug 04 01:11:46 2012 +0900"
      },
      "message": "Make a makedict command for dicttool (A3)\n\nThis behaves exactly as the old makedict command. Further\nchanges will redirect the calls to makedict to this, so as\nto consolidate similar code.\n\nGroundwork for\nBug: 6429606\n\nChange-Id: Ibeadbf48bec70f988a15ca36ebf5d1ce3b5b54ea\n"
    },
    {
      "commit": "1644a3c7323ae33063774d32ce2e0f8698ff712d",
      "tree": "e32f87cff4431443337d8fa174f9ad9746848547",
      "parents": [
        "3f80541844672a7625eb298adc6141ecf14bb883",
        "beccb6e573737fcc39565bbb0d1babb95eaf875d"
      ],
      "author": {
        "name": "Jean Chalard",
        "email": "jchalard@google.com",
        "time": "Fri Aug 03 08:07:57 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Aug 03 08:07:58 2012 -0700"
      },
      "message": "Merge \"Update French and Italian separators.\" into jb-mr1-dev"
    },
    {
      "commit": "beccb6e573737fcc39565bbb0d1babb95eaf875d",
      "tree": "4bf95edad71daefaea29cceebe1dabed13d98434",
      "parents": [
        "77e8e81ad95cfc1eb8f8407fc872674b8d08bbe9"
      ],
      "author": {
        "name": "Jean Chalard",
        "email": "jchalard@google.com",
        "time": "Fri Aug 03 21:21:09 2012 +0900"
      },
      "committer": {
        "name": "Jean Chalard",
        "email": "jchalard@google.com",
        "time": "Sat Aug 04 00:04:13 2012 +0900"
      },
      "message": "Update French and Italian separators.\n\nFrench and Italian separators used to be decided this way\nbecause of how the old dictionaries were made.\nHowever, the new dictionaries actually do include the\ncomposite words, and in both French and Italian, apostrophes\nand dashes shouldn\u0027t be treated as separators any more.\n\nChange-Id: If11c42625c819e223502a76749dbe797163d3c18\n"
    },
    {
      "commit": "3f80541844672a7625eb298adc6141ecf14bb883",
      "tree": "375f3e8a6ccbc955d9dba380d8e36af3ac12fcb6",
      "parents": [
        "a777a86f4b311ccdf1443faf0d1759e445ef138e",
        "4c976aceeef7238cabbbb29f5793b4e805d087e5"
      ],
      "author": {
        "name": "Jean Chalard",
        "email": "jchalard@google.com",
        "time": "Fri Aug 03 07:17:37 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Aug 03 07:17:37 2012 -0700"
      },
      "message": "Merge \"Fix an OOB exception\" into jb-mr1-dev"
    },
    {
      "commit": "a777a86f4b311ccdf1443faf0d1759e445ef138e",
      "tree": "61d368bea1f398891b7ff3c7c74f0918b406f38c",
      "parents": [
        "68966c7e0ec89ccb0d2e1f285917163ea9e7b5ee",
        "82cd20ee9836060d352c031de4556becd3415cac"
      ],
      "author": {
        "name": "Jean Chalard",
        "email": "jchalard@google.com",
        "time": "Fri Aug 03 07:15:46 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Aug 03 07:15:47 2012 -0700"
      },
      "message": "Merge \"Simplification (A2)\" into jb-mr1-dev"
    },
    {
      "commit": "68966c7e0ec89ccb0d2e1f285917163ea9e7b5ee",
      "tree": "7d50a9f888a419b91c5873d688f937412969f51c",
      "parents": [
        "6242564c91d47885075bf2bd1e1bb0760de76c10",
        "77c8c738374c5f63cad0ef015904d37b7591a203"
      ],
      "author": {
        "name": "Jean Chalard",
        "email": "jchalard@google.com",
        "time": "Fri Aug 03 07:14:22 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Aug 03 07:14:23 2012 -0700"
      },
      "message": "Merge \"Remove arity from dicttool commands (A1)\" into jb-mr1-dev"
    },
    {
      "commit": "4c976aceeef7238cabbbb29f5793b4e805d087e5",
      "tree": "29be39325d6f509e7dae55e2651fe7c805ec5689",
      "parents": [
        "77e8e81ad95cfc1eb8f8407fc872674b8d08bbe9"
      ],
      "author": {
        "name": "Jean Chalard",
        "email": "jchalard@google.com",
        "time": "Fri Aug 03 22:47:17 2012 +0900"
      },
      "committer": {
        "name": "Jean Chalard",
        "email": "jchalard@google.com",
        "time": "Fri Aug 03 23:10:47 2012 +0900"
      },
      "message": "Fix an OOB exception\n\nNot sure exactly how this can happen, but at least this should\nprevent us from crashing.\n\nBug: 6920884\nChange-Id: I451864756b48c5cb5e98b06edee917d88766d77f\n"
    },
    {
      "commit": "82cd20ee9836060d352c031de4556becd3415cac",
      "tree": "3c694083b2d78bfde7a08edde1e0d25491e8ded0",
      "parents": [
        "77c8c738374c5f63cad0ef015904d37b7591a203"
      ],
      "author": {
        "name": "Jean Chalard",
        "email": "jchalard@google.com",
        "time": "Fri Aug 03 17:24:18 2012 +0900"
      },
      "committer": {
        "name": "Jean Chalard",
        "email": "jchalard@google.com",
        "time": "Fri Aug 03 23:02:39 2012 +0900"
      },
      "message": "Simplification (A2)\n\nA single command at a time and no arity gives opportunity to simplify\nthe argument parsing code.\n\nChange-Id: Iff7bab78ede7448a662092f221c590a9eedae2a5\n"
    },
    {
      "commit": "77c8c738374c5f63cad0ef015904d37b7591a203",
      "tree": "2e006e049647289ad6e7549dcc7fe5c34bb505c1",
      "parents": [
        "77e8e81ad95cfc1eb8f8407fc872674b8d08bbe9"
      ],
      "author": {
        "name": "Jean Chalard",
        "email": "jchalard@google.com",
        "time": "Thu Aug 02 23:15:17 2012 +0900"
      },
      "committer": {
        "name": "Jean Chalard",
        "email": "jchalard@google.com",
        "time": "Fri Aug 03 23:02:06 2012 +0900"
      },
      "message": "Remove arity from dicttool commands (A1)\n\nThis unnecessarily complicates and limits commands.\nIt\u0027s simpler to just have one command by invocation.\n\nGroundwork for\nBug: 6429606\n\nChange-Id: I24cf267a9cbc937a5ba53942b29e28e7095d2fd2\n"
    },
    {
      "commit": "6242564c91d47885075bf2bd1e1bb0760de76c10",
      "tree": "c41c56497866329f89ba561de5820ce32ff6dc61",
      "parents": [
        "1d8a246e392e0ab4b1e7c8a60e67c00fca05c93c",
        "622d6a5b1b3d6a9140765b868abf1cdf412bc4f3"
      ],
      "author": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Fri Aug 03 04:47:32 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Aug 03 04:47:33 2012 -0700"
      },
      "message": "Merge \"Using hardware accelerated drawing\" into jb-mr1-dev"
    },
    {
      "commit": "622d6a5b1b3d6a9140765b868abf1cdf412bc4f3",
      "tree": "cb351551ff9faf7f4bd0c3b485d5e0ca5a10d5de",
      "parents": [
        "77e8e81ad95cfc1eb8f8407fc872674b8d08bbe9"
      ],
      "author": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Thu Aug 02 16:39:27 2012 +0900"
      },
      "committer": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Fri Aug 03 20:46:10 2012 +0900"
      },
      "message": "Using hardware accelerated drawing\n\nWhen Canvas has been hardware accelerated, don\u0027t use offscreen bitmap.\n\nBug: 6872994\nChange-Id: I1121f76377991692bc29ebeedbfbfa1b2a12dbb7\n"
    },
    {
      "commit": "1d8a246e392e0ab4b1e7c8a60e67c00fca05c93c",
      "tree": "980e398ca7f063ab4242e92788e6f65b6feeff87",
      "parents": [
        "77e8e81ad95cfc1eb8f8407fc872674b8d08bbe9"
      ],
      "author": {
        "name": "Ken Wakasa",
        "email": "kwakasa@google.com",
        "time": "Fri Aug 03 17:59:26 2012 +0900"
      },
      "committer": {
        "name": "Ken Wakasa",
        "email": "kwakasa@google.com",
        "time": "Fri Aug 03 18:37:58 2012 +0900"
      },
      "message": "Header cleanup\n\nChange-Id: I1aa91708d0de01ca3e84e69ec8d3a3832c386ca8\n"
    },
    {
      "commit": "77e8e81ad95cfc1eb8f8407fc872674b8d08bbe9",
      "tree": "7bb46286f51ff0a1349577cc741940d21e918603",
      "parents": [
        "ffe36cdc6d41d0ad1031e7d9f8acf6b6f1008970"
      ],
      "author": {
        "name": "Ken Wakasa",
        "email": "kwakasa@google.com",
        "time": "Thu Aug 02 19:48:08 2012 +0900"
      },
      "committer": {
        "name": "Ken Wakasa",
        "email": "kwakasa@google.com",
        "time": "Thu Aug 02 20:19:39 2012 +0900"
      },
      "message": "Header cleanup.  Moved a couple of functions from .h to .cpp.\n\nChange-Id: Ifd12a7632f75395bd0ef5e394d5c2abd6cbe28c6\n"
    },
    {
      "commit": "ffe36cdc6d41d0ad1031e7d9f8acf6b6f1008970",
      "tree": "ed0ed5dfdfa448b198cdf82fcfa3cb94bb92814f",
      "parents": [
        "76c242a1f6ac2f4d50f23214dd8652e398194da9",
        "8344259fc9ae1de7e46a5d8846eaaa312070dcec"
      ],
      "author": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Thu Aug 02 01:04:04 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Aug 02 01:04:05 2012 -0700"
      },
      "message": "Merge \"Small cleanup for keyboard drawing code\" into jb-mr1-dev"
    },
    {
      "commit": "8344259fc9ae1de7e46a5d8846eaaa312070dcec",
      "tree": "555dfbe160b872dcd178de8abfea00f6fb6b4cbd",
      "parents": [
        "fb955693d4bb0c8d39092250a4208e385b8a31a7"
      ],
      "author": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Thu Aug 02 15:10:59 2012 +0900"
      },
      "committer": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Thu Aug 02 16:50:31 2012 +0900"
      },
      "message": "Small cleanup for keyboard drawing code\n\nChange-Id: I8b562e03b30f82dddae311b49d316402e867cd31\n"
    },
    {
      "commit": "76c242a1f6ac2f4d50f23214dd8652e398194da9",
      "tree": "c96e55be2f0de2acce74e5ca1883a8ba726c7c56",
      "parents": [
        "fb955693d4bb0c8d39092250a4208e385b8a31a7",
        "44972bcdb6f6dd0e4f02a26f31c7effaf0525403"
      ],
      "author": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Wed Aug 01 23:45:22 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Aug 01 23:45:24 2012 -0700"
      },
      "message": "Merge \"Fix multi-touch input in auto-caps field\" into jb-mr1-dev"
    },
    {
      "commit": "fb955693d4bb0c8d39092250a4208e385b8a31a7",
      "tree": "60445a8d7179d851de8ba539ff8dacdfc8143bad",
      "parents": [
        "2ca0f2623751cb12c6b9a94af1a73e6a04db0b08"
      ],
      "author": {
        "name": "Ken Wakasa",
        "email": "kwakasa@google.com",
        "time": "Thu Aug 02 13:25:17 2012 +0900"
      },
      "committer": {
        "name": "Ken Wakasa",
        "email": "kwakasa@google.com",
        "time": "Thu Aug 02 15:11:31 2012 +0900"
      },
      "message": "Enable hardware accelerated drawing for SoftInputWindow of LatinIME\n\nTaking advantage of Ib6a8bda46223ce1153f32834daf02a820d16136e\n\nbug: 6872994\nChange-Id: I799b25b6509980dd9f039bead9bc926b42cbb040\n"
    },
    {
      "commit": "2ca0f2623751cb12c6b9a94af1a73e6a04db0b08",
      "tree": "250e5b6feafac98c274728de0b02ebc962ed60b4",
      "parents": [
        "74fb957e49e7d9ff5af47f35d062aa7c7f97a8fc"
      ],
      "author": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Wed Aug 01 14:58:52 2012 -0700"
      },
      "committer": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Wed Aug 01 14:58:52 2012 -0700"
      },
      "message": "Import translations. DO NOT MERGE\n\nChange-Id: Ifdbe0c41f5e01c4afc155ea68c05d50d483e5749\nAuto-generated-cl: translation import\n"
    },
    {
      "commit": "44972bcdb6f6dd0e4f02a26f31c7effaf0525403",
      "tree": "e7309f75203657a9790645a4153748acc3c67f73",
      "parents": [
        "195605084ed156b58f0bae002f121d98c1ace867"
      ],
      "author": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Wed Aug 01 18:55:02 2012 +0900"
      },
      "committer": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Wed Aug 01 18:56:11 2012 +0900"
      },
      "message": "Fix multi-touch input in auto-caps field\n\nBug: 6905194\nChange-Id: I7f9f61f36b7f3aa2b40c126a68232a947976aad2\n"
    },
    {
      "commit": "74fb957e49e7d9ff5af47f35d062aa7c7f97a8fc",
      "tree": "63883ae577a565e3f969dcac7e220904e2e4de07",
      "parents": [
        "195605084ed156b58f0bae002f121d98c1ace867"
      ],
      "author": {
        "name": "Ken Wakasa",
        "email": "kwakasa@google.com",
        "time": "Wed Aug 01 18:03:55 2012 +0900"
      },
      "committer": {
        "name": "Ken Wakasa",
        "email": "kwakasa@google.com",
        "time": "Wed Aug 01 18:46:07 2012 +0900"
      },
      "message": "Header cleanup\n\nChange-Id: Idaf19de3dc75367d49bc01e84e5a9f057c1f8dba\n"
    },
    {
      "commit": "195605084ed156b58f0bae002f121d98c1ace867",
      "tree": "c5743ae7eee028a3c68220151a26c1728b3ba617",
      "parents": [
        "8ec8c5fedac52352a4086fd05922fa57466b4dee"
      ],
      "author": {
        "name": "Jean Chalard",
        "email": "jchalard@google.com",
        "time": "Tue Jul 31 23:45:32 2012 +0900"
      },
      "committer": {
        "name": "Jean Chalard",
        "email": "jchalard@google.com",
        "time": "Wed Aug 01 00:23:52 2012 +0900"
      },
      "message": "Move flags belonging to BinaryFormat to the right place.\n\nThese masks and flags are constants that are an integral part\nof the format. They belong in BinaryFormat and have nothing to\ndo in UnigramDictionary.\nThis needs I6751dda4 to not break the build\n\nBug: 6429243\nChange-Id: Ic1c842b3245f7fdc25aa8d1459c5bb07b262e265\n"
    },
    {
      "commit": "8ec8c5fedac52352a4086fd05922fa57466b4dee",
      "tree": "789823bd0d618e5b70f32d1682b414f0631a6950",
      "parents": [
        "bf505d98995d496dee7fde297852e44098a00226",
        "d2173b5737bf791a65f6b1e2980f26ebd94369c5"
      ],
      "author": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Tue Jul 31 04:03:14 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jul 31 04:03:15 2012 -0700"
      },
      "message": "Merge \"Cancel the while-typing timer when user hits the spacebar\" into jb-mr1-dev"
    },
    {
      "commit": "bf505d98995d496dee7fde297852e44098a00226",
      "tree": "6793e693b2df6dbac9d25f12a7ca29db4c58dddf",
      "parents": [
        "f1008c550168e50f930ea1e043000b395ce0f129"
      ],
      "author": {
        "name": "Ken Wakasa",
        "email": "kwakasa@google.com",
        "time": "Tue Jul 31 19:53:31 2012 +0900"
      },
      "committer": {
        "name": "Ken Wakasa",
        "email": "kwakasa@google.com",
        "time": "Tue Jul 31 19:53:31 2012 +0900"
      },
      "message": "Add \u003cuses-sdk\u003e in manifest files of test apks\n\nChange-Id: If5d0aeba8fadb25f67bcd9132dd6c56e5bf9899e\n"
    },
    {
      "commit": "d2173b5737bf791a65f6b1e2980f26ebd94369c5",
      "tree": "9658b9c7a89eb2651b19153ec72ee74f3902dee6",
      "parents": [
        "71c472ed8c8383df6c63bf9136812e7197f416bd"
      ],
      "author": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Tue Jul 31 18:51:58 2012 +0900"
      },
      "committer": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Tue Jul 31 19:39:52 2012 +0900"
      },
      "message": "Cancel the while-typing timer when user hits the spacebar\n\nBug: 6689079\nChange-Id: I6b366acdcefb8b2c0d973a4f2a12329fc12eb5c5\n"
    },
    {
      "commit": "f1008c550168e50f930ea1e043000b395ce0f129",
      "tree": "51bddaf6e8186a084a9e48d35fcdac670c8fb513",
      "parents": [
        "71c472ed8c8383df6c63bf9136812e7197f416bd"
      ],
      "author": {
        "name": "Ken Wakasa",
        "email": "kwakasa@google.com",
        "time": "Tue Jul 31 17:56:40 2012 +0900"
      },
      "committer": {
        "name": "Ken Wakasa",
        "email": "kwakasa@google.com",
        "time": "Tue Jul 31 18:45:26 2012 +0900"
      },
      "message": "Cleanup headers\n\nChange-Id: I9124366b2000cad54966fb6936bb4691bbf115a3\n"
    },
    {
      "commit": "71c472ed8c8383df6c63bf9136812e7197f416bd",
      "tree": "c60c953998e22933cdf656f2ef06110aa89b0f4a",
      "parents": [
        "6492a2f31df8e8c5ee70ca4b4269c9d03ed5f492",
        "f6235167b75ea096eef2485c13890be469a05df0"
      ],
      "author": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Tue Jul 31 00:43:21 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jul 31 00:43:22 2012 -0700"
      },
      "message": "Merge \"Add language switch key to 10\" tablet\" into jb-mr1-dev"
    },
    {
      "commit": "f6235167b75ea096eef2485c13890be469a05df0",
      "tree": "9ec6b325eca5387bfc9d9f3ca47e78e87cf36fee",
      "parents": [
        "2b077a65769409f45570a4eeb0fed8fd982cc95a"
      ],
      "author": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Tue Jul 31 15:39:56 2012 +0900"
      },
      "committer": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Tue Jul 31 16:40:30 2012 +0900"
      },
      "message": "Add language switch key to 10\" tablet\n\nBug: 6637175\nChange-Id: Ife9c9a6d35bd3cb4de406b388c504846b35059e7\n"
    },
    {
      "commit": "6492a2f31df8e8c5ee70ca4b4269c9d03ed5f492",
      "tree": "5a1ce606c88d0f15f4c1198f6802ab736e2a168c",
      "parents": [
        "2b077a65769409f45570a4eeb0fed8fd982cc95a",
        "8573223442e0b84c7d2e23c58d966781dfef3958"
      ],
      "author": {
        "name": "Ken Wakasa",
        "email": "kwakasa@google.com",
        "time": "Tue Jul 31 00:12:36 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jul 31 00:12:37 2012 -0700"
      },
      "message": "Merge \"Add a \u003cuses-sdk\u003e element in the LatinIME\u0027s manifest\" into jb-mr1-dev"
    },
    {
      "commit": "8573223442e0b84c7d2e23c58d966781dfef3958",
      "tree": "eaab1f0c0de73c6f09be68e3edfa2f42ad7a9278",
      "parents": [
        "b98b9574243e0684efb1bb9e71d397b089c1ffeb"
      ],
      "author": {
        "name": "Ken Wakasa",
        "email": "kwakasa@google.com",
        "time": "Tue Jul 31 15:59:56 2012 +0900"
      },
      "committer": {
        "name": "Ken Wakasa",
        "email": "kwakasa@google.com",
        "time": "Tue Jul 31 16:06:18 2012 +0900"
      },
      "message": "Add a \u003cuses-sdk\u003e element in the LatinIME\u0027s manifest\n\nChange-Id: I8354677e271fc73865aabffe0df489e52c85c1eb\n"
    },
    {
      "commit": "2b077a65769409f45570a4eeb0fed8fd982cc95a",
      "tree": "dd1e13e9e4d8888dd316aac012616d540f5cbb29",
      "parents": [
        "b98b9574243e0684efb1bb9e71d397b089c1ffeb",
        "b8afd540d9ae0bec057f7fd3370c7b0af87b7dd4"
      ],
      "author": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Mon Jul 30 23:42:01 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 30 23:42:01 2012 -0700"
      },
      "message": "Merge \"Add android::supportsRtl\u003d\"true\"\" into jb-mr1-dev"
    },
    {
      "commit": "b8afd540d9ae0bec057f7fd3370c7b0af87b7dd4",
      "tree": "f9e88ca2dbc7c656900464580cf05f4f009c0be4",
      "parents": [
        "ff2bec1ce668b743eef3e62a0728502698001022"
      ],
      "author": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Tue Jul 31 14:44:16 2012 +0900"
      },
      "committer": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Tue Jul 31 15:18:12 2012 +0900"
      },
      "message": "Add android::supportsRtl\u003d\"true\"\n\nBug: 6904817\n\nChange-Id: I1176e239d001d8eb5ae79ed345660b22be68b137\n"
    },
    {
      "commit": "b98b9574243e0684efb1bb9e71d397b089c1ffeb",
      "tree": "13bd8f30f9427d0fbe26b5bd9fe5c8ef9f8b17fc",
      "parents": [
        "ff2bec1ce668b743eef3e62a0728502698001022"
      ],
      "author": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Tue Jul 31 12:43:45 2012 +0900"
      },
      "committer": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Tue Jul 31 13:19:11 2012 +0900"
      },
      "message": "Fix east slavic keyboard layouts\n\nThis change affects Ukrainian, Belarusian, Kyrgyz, and Russian\nkeyboard. The followings are the layout changes for each language\nrespectively.\n\n[Ukrainian]\n * Replace useless CYRILLIC LETTER E with CYRILLIC LETTER UKRAINIAN IE.\n * Replace useless CYRILLIC LETTER HARD SIGN with CYRILLIC LETTER YI\n   on 10-inch tablet.\n * Add CYRILLIC LETTER GHE WITH UPTURN as more keys of CYRILLIC LETTER\n   GHE.\n\n[Belarusian]\n * Add CYRILLIC LETTER IO as more keys of CYRILLIC LETTER IE.\n * Replace useless CYRILLIC LETTER HARD SIGN with CYRILLIC LETTER IE\n   on 10-inch tablet.\n\n[Kyrgyz]\n * Add CYRILLIC LETTER IO as more keys of CYRILLIC LETTER IE.\n * Remove CYRILLIC LETTER HARD SIGN from more keys of CYRILLIC LETTER\n   HA because CYRILLIC LETTER SOFT SIGN has it.\n\n[Russian]\n * Remove CYRILLIC LETTER HARD SIGN from more keys of CYRILLIC LETTER\n   HA because CYRILLIC LETTER SOFT SIGN has it.\n\nThis change also replace misspelled \"more_keys_for_cyrillic_ye\" text\nname with \"more_keys_for_cyrillic_ie\".\n\nBug: 6881007\nChange-Id: I9e88c4e27f66225e1676f2b286a7e55b9f2cbf5b\n"
    },
    {
      "commit": "ff2bec1ce668b743eef3e62a0728502698001022",
      "tree": "b236308588e6fbe595189ed00e93ecc4ece060af",
      "parents": [
        "f68fe7a9c9262a3591eeba61f34a91855a34c930"
      ],
      "author": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Mon Jul 30 14:54:31 2012 -0700"
      },
      "committer": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Mon Jul 30 14:54:31 2012 -0700"
      },
      "message": "Import translations. DO NOT MERGE\n\nChange-Id: I4495669f10f41c2c7c3877c65b061df6a2c9f196\nAuto-generated-cl: translation import\n"
    },
    {
      "commit": "f68fe7a9c9262a3591eeba61f34a91855a34c930",
      "tree": "0a4f69acae66ca6f9916d154086862fd5be3dc8a",
      "parents": [
        "ca57f5ba40b587a7a7f8a023aca65e1b2127b2a6"
      ],
      "author": {
        "name": "Jean Chalard",
        "email": "jchalard@google.com",
        "time": "Sat Jul 28 00:49:43 2012 +0900"
      },
      "committer": {
        "name": "Jean Chalard",
        "email": "jchalard@google.com",
        "time": "Tue Jul 31 01:48:10 2012 +0900"
      },
      "message": "Don\u0027t forward phantom space state on stripper input\n\nBug: 6890540\nChange-Id: I923b24e3bc17e7b923be4940ad739b58dca24a1f\n"
    },
    {
      "commit": "ca57f5ba40b587a7a7f8a023aca65e1b2127b2a6",
      "tree": "1e38ced59fac7824f785d1f00a11a07bb51f1703",
      "parents": [
        "6b9677d84ba199780b0e8282bf89b04cb618f868"
      ],
      "author": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Mon Jul 30 16:06:19 2012 +0900"
      },
      "committer": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Mon Jul 30 20:10:48 2012 +0900"
      },
      "message": "Move gesture preview parameters to KeyboardView attributes\n\nChange-Id: Iff9d6b485e202656fc869f3ff4d94575ad2c186f\n"
    },
    {
      "commit": "6b9677d84ba199780b0e8282bf89b04cb618f868",
      "tree": "e173b321383b21237d819c1eb370c711d2184e55",
      "parents": [
        "b9770cb7f7b6d51b651a60d753949208a9742974",
        "edf7990e84bd05adefd1d9585dc1b3baf223cdd6"
      ],
      "author": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Mon Jul 30 01:48:58 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 30 01:48:59 2012 -0700"
      },
      "message": "Merge \"Small fix to KeyboardView\" into jb-mr1-dev"
    },
    {
      "commit": "b9770cb7f7b6d51b651a60d753949208a9742974",
      "tree": "768f62d6da811bcebd30dd356028a592fb0a720b",
      "parents": [
        "f0211161ab256c7340c3718e0bb437737ab3b72f",
        "4731b67629e72d6c7cb391e3d188df78ceaff1e7"
      ],
      "author": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Mon Jul 30 00:50:23 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 30 00:50:25 2012 -0700"
      },
      "message": "Merge \"Add device form factor to KeyboardId\" into jb-mr1-dev"
    },
    {
      "commit": "edf7990e84bd05adefd1d9585dc1b3baf223cdd6",
      "tree": "9d32ec8c6d4ea0b1c70454872ed7dff380b7875a",
      "parents": [
        "efd8b838ee9415ba4ed692ecf136a918cfa02c54"
      ],
      "author": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Mon Jul 30 16:50:03 2012 +0900"
      },
      "committer": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Mon Jul 30 16:50:03 2012 +0900"
      },
      "message": "Small fix to KeyboardView\n\nChange-Id: Ifb7500ec2e55b50bb7951aa847fd4fbf49e32f4e\n"
    },
    {
      "commit": "f0211161ab256c7340c3718e0bb437737ab3b72f",
      "tree": "aafcb58680597ac14ea690354eebac89b14dd950",
      "parents": [
        "293f062c264c1aff8b6ccaefe0c6fd8ff4608f0a",
        "5460ea389d83722ac98abaef8a2bb9900fb571e7"
      ],
      "author": {
        "name": "Ken Wakasa",
        "email": "kwakasa@google.com",
        "time": "Mon Jul 30 00:37:59 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 30 00:37:59 2012 -0700"
      },
      "message": "Merge \"Misc cleanups\" into jb-mr1-dev"
    },
    {
      "commit": "5460ea389d83722ac98abaef8a2bb9900fb571e7",
      "tree": "6a1f33b3f41e00ee2b658ebe024a0eb0067ddcc3",
      "parents": [
        "efd8b838ee9415ba4ed692ecf136a918cfa02c54"
      ],
      "author": {
        "name": "Ken Wakasa",
        "email": "kwakasa@google.com",
        "time": "Mon Jul 30 16:27:44 2012 +0900"
      },
      "committer": {
        "name": "Ken Wakasa",
        "email": "kwakasa@google.com",
        "time": "Mon Jul 30 16:27:44 2012 +0900"
      },
      "message": "Misc cleanups\n\nChange-Id: I28308f12c3064299acefc346b72279036c3726a7\n"
    },
    {
      "commit": "293f062c264c1aff8b6ccaefe0c6fd8ff4608f0a",
      "tree": "8f6bbd98c25eef846f857ae3d22b901946998009",
      "parents": [
        "75fb3ce1be3c879bb614097a2534f791c833dd7c",
        "47e2bf329882ea45294ea6e6dd80b4d4eb3789e6"
      ],
      "author": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Mon Jul 30 00:22:40 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Mon Jul 30 00:22:41 2012 -0700"
      },
      "message": "Merge \"Add advanced options to turn on/off the gesture trail and text preview\" into jb-mr1-dev"
    },
    {
      "commit": "47e2bf329882ea45294ea6e6dd80b4d4eb3789e6",
      "tree": "83a9496ae3e7a1387cfad4f8279c8232a7312c40",
      "parents": [
        "d157bb0d557aff7982ae55f69753b58cca95bda1"
      ],
      "author": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Fri Jul 27 15:32:29 2012 +0900"
      },
      "committer": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Mon Jul 30 15:54:27 2012 +0900"
      },
      "message": "Add advanced options to turn on/off the gesture trail and text preview\n\nBug: 6883053\nChange-Id: I601718afb37289108b45ef68626c7c315edca35d\n"
    },
    {
      "commit": "75fb3ce1be3c879bb614097a2534f791c833dd7c",
      "tree": "ff08f23bc39126d631c4f5f9230c68b3631d2ccb",
      "parents": [
        "efd8b838ee9415ba4ed692ecf136a918cfa02c54"
      ],
      "author": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Mon Jul 30 15:51:41 2012 +0900"
      },
      "committer": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Mon Jul 30 15:51:41 2012 +0900"
      },
      "message": "More readable Key.toString() and MoreKeySpec.toString()\n\nChange-Id: Iee3c33dedd0c00ba259aa55e8b0c1c57b84eccdd\n"
    },
    {
      "commit": "4731b67629e72d6c7cb391e3d188df78ceaff1e7",
      "tree": "0e1d22d2c1788c750e5466a3cfe07bfbb3f0fa68",
      "parents": [
        "efd8b838ee9415ba4ed692ecf136a918cfa02c54"
      ],
      "author": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Mon Jul 30 13:35:06 2012 +0900"
      },
      "committer": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Mon Jul 30 15:33:17 2012 +0900"
      },
      "message": "Add device form factor to KeyboardId\n\nThis is a groundword for optimizing keyboard parsing.\n\nBug: 6860259\nChange-Id: Ie65aa502b18c920e25cf2998b79120b3cc835952\n"
    },
    {
      "commit": "efd8b838ee9415ba4ed692ecf136a918cfa02c54",
      "tree": "52f625bfbe5a88a09c12468e2ed602bd9f913531",
      "parents": [
        "d157bb0d557aff7982ae55f69753b58cca95bda1"
      ],
      "author": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Mon Jul 30 15:04:27 2012 +0900"
      },
      "committer": {
        "name": "Tadashi G. Takaoka",
        "email": "takaoka@google.com",
        "time": "Mon Jul 30 15:06:26 2012 +0900"
      },
      "message": "Add MoreKeySpec.toString() method for debugging\n\nChange-Id: Icf9c6e15521849ffc51911c1e256c9815c1960f4\n"
    },
    {
      "commit": "d157bb0d557aff7982ae55f69753b58cca95bda1",
      "tree": "647bf4af6cb102dced173aad19628652520c57c6",
      "parents": [
        "bb52fe6f06241529c3ae5917f4ef7bc56e100c43"
      ],
      "author": {
        "name": "Ken Wakasa",
        "email": "kwakasa@google.com",
        "time": "Sat Jul 28 21:24:29 2012 +0900"
      },
      "committer": {
        "name": "Ken Wakasa",
        "email": "kwakasa@google.com",
        "time": "Sat Jul 28 21:24:29 2012 +0900"
      },
      "message": "Just a cosmetic cleanup\n\nChange-Id: Ie32fb8474b502220bdca9dbce30094bf5fb08e00\n"
    },
    {
      "commit": "bb52fe6f06241529c3ae5917f4ef7bc56e100c43",
      "tree": "360955d172599b2972e28140436e3dc247f3da70",
      "parents": [
        "79d4c70b93577c73f7570db94fd92b9ecc1ee5cb",
        "0f5411b28f0e23585348ce574c133027f5ce3d36"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Fri Jul 27 15:45:48 2012 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jul 27 15:45:48 2012 -0700"
      },
      "message": "am 0f5411b2: Reconcile with jb-release\n\n* commit \u00270f5411b28f0e23585348ce574c133027f5ce3d36\u0027:\n"
    },
    {
      "commit": "0f5411b28f0e23585348ce574c133027f5ce3d36",
      "tree": "9f4f6ff804f1966b3d75a995a3c2518e6def5c69",
      "parents": [
        "76533ab5926089ffde286cd34090eddfc5b9d947",
        "46d43390028893bad3cbc9a1ab1616784645754f"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Fri Jul 27 14:53:17 2012 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Fri Jul 27 14:53:17 2012 -0700"
      },
      "message": "Reconcile with jb-release\n\nChange-Id: Ifd10621e6d78fd5df0e3e6b01b8e80a65e5503fe\n"
    },
    {
      "commit": "79d4c70b93577c73f7570db94fd92b9ecc1ee5cb",
      "tree": "360955d172599b2972e28140436e3dc247f3da70",
      "parents": [
        "78ee77ad08ca408b4a3e5abfd9b08bc108427605",
        "e7c471a52f38c48cd38e412d88901bddb6f903a9"
      ],
      "author": {
        "name": "Jean Chalard",
        "email": "jchalard@google.com",
        "time": "Fri Jul 27 09:12:00 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 27 09:12:01 2012 -0700"
      },
      "message": "Merge \"Don\u0027t auto-correct when there are digits.\" into jb-mr1-dev"
    },
    {
      "commit": "e7c471a52f38c48cd38e412d88901bddb6f903a9",
      "tree": "10ed39c2ce768f615b2dfbd53f5d301a334090f4",
      "parents": [
        "e3f26dd21e16a7d8c23a95a5084947e54ba598e1"
      ],
      "author": {
        "name": "Jean Chalard",
        "email": "jchalard@google.com",
        "time": "Fri Jul 27 23:13:28 2012 +0900"
      },
      "committer": {
        "name": "Jean Chalard",
        "email": "jchalard@google.com",
        "time": "Sat Jul 28 00:15:54 2012 +0900"
      },
      "message": "Don\u0027t auto-correct when there are digits.\n\nBug: 6667462\nChange-Id: I796655f57c71c9f50ae6e38dd08b71df3998dbcf\n"
    },
    {
      "commit": "78ee77ad08ca408b4a3e5abfd9b08bc108427605",
      "tree": "0cbb736f4a3831b88e6b34afa8ad98da8dc808f7",
      "parents": [
        "d148c23a33905382d2fe2302821fe702aa1bdf74",
        "6fc72cae206b67e2dbcc4c6a853a355995d068be"
      ],
      "author": {
        "name": "Jean Chalard",
        "email": "jchalard@google.com",
        "time": "Fri Jul 27 05:19:47 2012 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 27 05:19:48 2012 -0700"
      },
      "message": "Merge \"Fix a bug with autocaps\" into jb-mr1-dev"
    },
    {
      "commit": "6fc72cae206b67e2dbcc4c6a853a355995d068be",
      "tree": "01e3b7fb9a2dbb401634c74e705c44b6744d4d1e",
      "parents": [
        "e3f26dd21e16a7d8c23a95a5084947e54ba598e1"
      ],
      "author": {
        "name": "Jean Chalard",
        "email": "jchalard@google.com",
        "time": "Fri Jul 27 03:45:42 2012 +0900"
      },
      "committer": {
        "name": "Jean Chalard",
        "email": "jchalard@google.com",
        "time": "Fri Jul 27 21:09:25 2012 +0900"
      },
      "message": "Fix a bug with autocaps\n\nPort of Iece016f4\n\nBug: 6886405\nChange-Id: I148c296d8a3841c40b6748e73ed2b0fff473b627\n"
    }
  ],
  "next": "d148c23a33905382d2fe2302821fe702aa1bdf74"
}
