)]}'
{
  "log": [
    {
      "commit": "dfac814c18f73dd7289f9927edca3e3b6ec6bc00",
      "tree": "386ca04866a3e7be79ae621582222a8f2b09ceda",
      "parents": [
        "506821b406181ff9b9a10c2fc078d16b79a8cf92"
      ],
      "author": {
        "name": "Alex Sakhartchouk",
        "email": "alexst@google.com",
        "time": "Thu Jul 15 11:33:03 2010 -0700"
      },
      "committer": {
        "name": "Alex Sakhartchouk",
        "email": "alexst@google.com",
        "time": "Thu Jul 15 14:02:54 2010 -0700"
      },
      "message": "Populate java objects with native data from a3d file.\nRemove legacy constructor from programraster\nMake a3d object creation synchronous\n\nChange-Id: Ic7d7547cf6eee6f9a7c6e3ee12cd104e80056a7b\n"
    },
    {
      "commit": "506821b406181ff9b9a10c2fc078d16b79a8cf92",
      "tree": "b0beb74aa98228fb9e2b6b6ec5c1d883313005a4",
      "parents": [
        "e80c4925468ce84b662eadba7a13435ff4f2eba8",
        "288c8711a64893acb3f4a31caf69153be9809d17"
      ],
      "author": {
        "name": "Jim Shuma",
        "email": "jshuma@google.com",
        "time": "Thu Jul 15 13:43:52 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 15 13:43:52 2010 -0700"
      },
      "message": "Merge \"Making Program*.Builder classes\u0027 setters return \u0027this\u0027\""
    },
    {
      "commit": "288c8711a64893acb3f4a31caf69153be9809d17",
      "tree": "4349a0c89d71bfcdd08b70590cd864325ee2f9f5",
      "parents": [
        "d0d5c072aa8aa30cde3213af8b022104aabb51a5"
      ],
      "author": {
        "name": "Jim Shuma",
        "email": "jshuma@google.com",
        "time": "Wed Jul 07 14:24:21 2010 -0700"
      },
      "committer": {
        "name": "Jim Shuma",
        "email": "jshuma@google.com",
        "time": "Thu Jul 15 13:42:02 2010 -0700"
      },
      "message": "Making Program*.Builder classes\u0027 setters return \u0027this\u0027\n\nThis is for better correspondence with the Builder pattern.\nSee also: Effective Java, 2nd edition.\n\nChange-Id: Iecccd42be49dea2ed8e4b8cc38ce96379cf3c11c\n"
    },
    {
      "commit": "82e2b4cb51e869a5c2014f56e5b0cf38569ff09a",
      "tree": "ded73881ae106cc8539fe0729889884738ed3127",
      "parents": [
        "892681e56ee6da6e8d4fb9ec41e75e814ae9e099",
        "4fd416880e53c172bac4a51b2eafea699b58badf"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Thu Jul 15 11:54:15 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jul 15 11:54:15 2010 -0700"
      },
      "message": "am 4fd41688: am 5352d237: am 38137d7a: Merge \"docs: lots of additions to the resources docs new drawable resources add \u003cmerge\u003e and \u003cinclude\u003e to layout resource update drawable class descriptioons to point to resources guide add ID resource type\" into froyo\n\nMerge commit \u00274fd416880e53c172bac4a51b2eafea699b58badf\u0027\n\n* commit \u00274fd416880e53c172bac4a51b2eafea699b58badf\u0027:\n  docs: lots of additions to the resources docs\n"
    },
    {
      "commit": "4fd416880e53c172bac4a51b2eafea699b58badf",
      "tree": "65ba0abf51ee25e98fed39e60beeb9936a44f7eb",
      "parents": [
        "b068b47c6d0214256116a0c661740bddf7acc18c",
        "5352d2378d2f92ebe0657e4caedb4498492fc404"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Thu Jul 15 11:23:08 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jul 15 11:23:08 2010 -0700"
      },
      "message": "am 5352d237: am 38137d7a: Merge \"docs: lots of additions to the resources docs new drawable resources add \u003cmerge\u003e and \u003cinclude\u003e to layout resource update drawable class descriptioons to point to resources guide add ID resource type\" into froyo\n\nMerge commit \u00275352d2378d2f92ebe0657e4caedb4498492fc404\u0027 into gingerbread-plus-aosp\n\n* commit \u00275352d2378d2f92ebe0657e4caedb4498492fc404\u0027:\n  docs: lots of additions to the resources docs\n"
    },
    {
      "commit": "5352d2378d2f92ebe0657e4caedb4498492fc404",
      "tree": "60073a489242a14269654f6ac8cb06b82f24bc86",
      "parents": [
        "d6a85a21418338a7797bff731fa7a551f62a9e86",
        "38137d7a27b037611c70a9d900aa53b4c15563bf"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Thu Jul 15 11:20:32 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jul 15 11:20:32 2010 -0700"
      },
      "message": "am 38137d7a: Merge \"docs: lots of additions to the resources docs new drawable resources add \u003cmerge\u003e and \u003cinclude\u003e to layout resource update drawable class descriptioons to point to resources guide add ID resource type\" into froyo\n\nMerge commit \u002738137d7a27b037611c70a9d900aa53b4c15563bf\u0027 into gingerbread\n\n* commit \u002738137d7a27b037611c70a9d900aa53b4c15563bf\u0027:\n  docs: lots of additions to the resources docs\n"
    },
    {
      "commit": "172b79e9df9a5689681cf0355921ec2445bc9f6f",
      "tree": "9c5d643f03c7a8b170945dbf0ae8e36fc8070e62",
      "parents": [
        "0d60b96a8fecae55907bb07f49a267c23965617e",
        "98704f14eaeef6c9bcb73fea162f4941dd9bbd87"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Jul 14 16:39:42 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jul 14 16:39:42 2010 -0700"
      },
      "message": "am 98704f14: am 38eea8bf: Merge \"Remove the YV16 format for simplicity\\\u0027s sake.\" into gingerbread\n\nMerge commit \u002798704f14eaeef6c9bcb73fea162f4941dd9bbd87\u0027\n\n* commit \u002798704f14eaeef6c9bcb73fea162f4941dd9bbd87\u0027:\n  Remove the YV16 format for simplicity\u0027s sake.\n"
    },
    {
      "commit": "98704f14eaeef6c9bcb73fea162f4941dd9bbd87",
      "tree": "72bcea6d022ed0f607becdb9ae69c68946cb9363",
      "parents": [
        "50576fa8152557a25e1a231c66d694fffbab34d6",
        "38eea8bf990540360b45b963195a7766c30b55d2"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Jul 14 16:35:55 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jul 14 16:35:55 2010 -0700"
      },
      "message": "am 38eea8bf: Merge \"Remove the YV16 format for simplicity\\\u0027s sake.\" into gingerbread\n\nMerge commit \u002738eea8bf990540360b45b963195a7766c30b55d2\u0027 into gingerbread-plus-aosp\n\n* commit \u002738eea8bf990540360b45b963195a7766c30b55d2\u0027:\n  Remove the YV16 format for simplicity\u0027s sake.\n"
    },
    {
      "commit": "058d0390a44f68b67788021bae9ca1775812997b",
      "tree": "23b97aa83da730d4057a68647f8fd09a37fe636f",
      "parents": [
        "36ff93aa1f489e6af6c2acce38beb0bffd6b8f8a"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Jul 07 14:53:13 2010 -0700"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Jul 14 15:12:05 2010 -0700"
      },
      "message": "Remove the YV16 format for simplicity\u0027s sake.\n\nChange-Id: Iee03d100933ba0c67b13d51e0435be3b4cd953cf\n"
    },
    {
      "commit": "e5e285509fdba2b996006e610e0d2888450230f0",
      "tree": "70b2bf2fbc26e37fb9cfd4325e46961fd285d1bf",
      "parents": [
        "e2ce2616743e83a765893eaf93952e5bc1cc23e0",
        "594f4065141a53427cad6f4fc89219d2f27e1a7d"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Tue Jul 13 17:42:00 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jul 13 17:42:00 2010 -0700"
      },
      "message": "Merge \"Enable 32-bits only assets.\""
    },
    {
      "commit": "594f4065141a53427cad6f4fc89219d2f27e1a7d",
      "tree": "0b162df7ee27b40e519c5471f7ce0743617ecd73",
      "parents": [
        "46c076d193fe91721912d3bfa8e5a6d24707b5bc"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Tue Jul 13 17:41:31 2010 -0700"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Tue Jul 13 17:41:31 2010 -0700"
      },
      "message": "Enable 32-bits only assets.\n\nGo away dithering!\n\nChange-Id: Iee5ee2e9430606e732d9b0abb3adc9f68275bd6d\n"
    },
    {
      "commit": "f35c96bb498ffa7b3348b4bf17e9e7475f6bb324",
      "tree": "fe020499af2bf0bcb539b04f8115069e2aa8529f",
      "parents": [
        "c9cf223dd004cf411235508e4fb0b7199910c1c7",
        "f7cb1f75fdaedf996cab7c4690b080adc7bc5b97"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Tue Jul 13 13:51:24 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jul 13 13:51:24 2010 -0700"
      },
      "message": "Merge \"Support bidi/shaping for getTextPath\""
    },
    {
      "commit": "250fd1144f238ce40ba7c40c7ad4d77c20a44695",
      "tree": "2b713cfa4967af2c25c6af5a9d8e1e678de90654",
      "parents": [
        "72c37ff17ad04a199cceb41dec3d1c003fa17c89",
        "80a4c2cd34aedb4f1a2e5e7d1ac26a9aeebe41ae"
      ],
      "author": {
        "name": "Alex Sakhartchouk",
        "email": "alexst@google.com",
        "time": "Tue Jul 13 12:46:36 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jul 13 12:46:36 2010 -0700"
      },
      "message": "Merge \"Work on synchronizing a3d created files and java layer. Adding culling to ProgramRaster\""
    },
    {
      "commit": "6926c72e25b8dec3dd4b84af0819fa1937ae7296",
      "tree": "b59a3b01ddbc9ae8c0b5f11eaa6fcf27a9f9511d",
      "parents": [
        "260e102162322958cf17dbd895cd6bd30dc87e32"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Mon Jul 12 20:20:03 2010 -0700"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Mon Jul 12 20:20:03 2010 -0700"
      },
      "message": "Correctly support pre-multiplied alpha, optimizations, more stuff.\n\nAdd support for the following drawing functions:\n- drawBitmap(int[]...)\n- drawPaint()\n\nOptimizes shader state changes by enabling/disabling attribute arrays\nonly when needed.\n\nAdds quick rejects when drawing trivial shapes to avoid unnecessary\nOpenGL operations.\n\nChange-Id: Ic2c6c2ed1523d08a63a8c95601a1ec40b6c7fbc9\n"
    },
    {
      "commit": "80a4c2cd34aedb4f1a2e5e7d1ac26a9aeebe41ae",
      "tree": "1add64a0dee5bf0ac1c98b63bd3b43648ca7af50",
      "parents": [
        "cefd8d9588230577356d24597acc04ce1e276582"
      ],
      "author": {
        "name": "Alex Sakhartchouk",
        "email": "alexst@google.com",
        "time": "Mon Jul 12 15:50:32 2010 -0700"
      },
      "committer": {
        "name": "Alex Sakhartchouk",
        "email": "alexst@google.com",
        "time": "Mon Jul 12 15:50:32 2010 -0700"
      },
      "message": "Work on synchronizing a3d created files and java layer.\nAdding culling to ProgramRaster\n\nChange-Id: I58ccc82d37edc9539289d5eba44ea0e720874af5\n"
    },
    {
      "commit": "f7cb1f75fdaedf996cab7c4690b080adc7bc5b97",
      "tree": "6f2fb5f1d5bdea5c385e1902a1f981b34323b326",
      "parents": [
        "c801768e4d29667a2608695449ebc2833ba0f200"
      ],
      "author": {
        "name": "Doug Felt",
        "email": "dougfelt@google.com",
        "time": "Thu Jul 01 16:20:43 2010 -0700"
      },
      "committer": {
        "name": "Doug Felt",
        "email": "dougfelt@google.com",
        "time": "Mon Jul 12 13:50:08 2010 -0700"
      },
      "message": "Support bidi/shaping for getTextPath\n\nMove layout-related code into separate class since it\u0027s needed by both\ncanvas and paint.\n\nChange-Id: Iba89a1d94d7cca650255ffa3cbc952b988a51b54\n"
    },
    {
      "commit": "3a70b20ee5aa2c0d451f1d2a5701bf9c43c8ca6f",
      "tree": "54c7d438c9388fb38eb0a4fd8e34a92d82231854",
      "parents": [
        "4670268f47d38e10c76a9b6bdd9b22f423cd33ab",
        "cc3ec6cdb2b892eb29513e72d8b205acbe997b25"
      ],
      "author": {
        "name": "Gilles Debunne",
        "email": "debunne@google.com",
        "time": "Fri Jul 09 16:22:30 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Fri Jul 09 16:22:30 2010 -0700"
      },
      "message": "Merge \"New cursor controller in TextViews.\""
    },
    {
      "commit": "cc3ec6cdb2b892eb29513e72d8b205acbe997b25",
      "tree": "e57aa48666ef30f527898aed11ce4ce1b3110c0f",
      "parents": [
        "a6935ab00923edeb5291a24b2363262b7fa37e85"
      ],
      "author": {
        "name": "Gilles Debunne",
        "email": "debunne@google.com",
        "time": "Wed Jun 23 10:30:27 2010 -0700"
      },
      "committer": {
        "name": "Gilles Debunne",
        "email": "debunne@google.com",
        "time": "Fri Jul 09 16:20:21 2010 -0700"
      },
      "message": "New cursor controller in TextViews.\n\nEditable TextView now display a cursor controller under the insertion\npoint so that it can be precisely moved.\n\nChange-Id: Ia2e6ddc57d249647ff6683e10e4226db3df27223\n"
    },
    {
      "commit": "53a93d5e917038504ba4422e4ad346ae37131365",
      "tree": "87e761cec60c13650f753382148ce10e64d18321",
      "parents": [
        "82164ad543b4eb6c11937b2a81891443317709cc"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Fri Jul 09 15:34:32 2010 -0700"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Fri Jul 09 15:34:32 2010 -0700"
      },
      "message": "Remove points from fixed function.\nAdd basic GL performance test.\n\nChange-Id: I421a41b6683b2c5f70045cdd0f610a6939105fee\n"
    },
    {
      "commit": "f26d01a7cede78d1c865f56b0b526db20710c3a4",
      "tree": "102dcf9a2418b0c25beb861060acfc35f6c4fbfe",
      "parents": [
        "07b236edce31c9ae836e689f5266327138883f3a",
        "0b9a22cf782ab8f837161bf3357e08471ff5b9f2"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Wed Jul 07 18:52:03 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jul 07 18:52:03 2010 -0700"
      },
      "message": "Merge \"Add boolean support for setVar.\""
    },
    {
      "commit": "deba785f122a47915756ffd991f5540d952cf937",
      "tree": "6ac5b344722fd29c3ccc90a5be3aa7edcf489de1",
      "parents": [
        "290357aca828854cb3b327eaac45a3ff13821d4a"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Wed Jul 07 17:54:48 2010 -0700"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Wed Jul 07 17:55:03 2010 -0700"
      },
      "message": "Add support to draw 9patches in OpenGL.\n\nThis change only adds the necessary API and stubs. The implementation\nwill be added in another change.\n\nChange-Id: Ie50b8aff5868e78796cee331df15bdbf990d2ea1\n"
    },
    {
      "commit": "0b9a22cf782ab8f837161bf3357e08471ff5b9f2",
      "tree": "c271ab5e3b01f3260056d4d740e26bc87a16bfad",
      "parents": [
        "9bf225ef7b82b5eacee1907155a8a8bbb6aa7f42"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Fri Jul 02 15:35:19 2010 -0700"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Wed Jul 07 17:08:07 2010 -0700"
      },
      "message": "Add boolean support for setVar.\n\nChange-Id: Id64f3b2e43e19fc2a2d5fd81bb98d9ca67aae843\n"
    },
    {
      "commit": "4beb8ff7175ebd14b96942724a658f407d0b9951",
      "tree": "b50e89ce99b9d56839e711268819cce565374767",
      "parents": [
        "3038f47d1c716f9385cf0befc08e708c65f069bb"
      ],
      "author": {
        "name": "Doug Felt",
        "email": "dougfelt@google.com",
        "time": "Wed Jun 09 13:53:24 2010 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed Jul 07 14:58:03 2010 -0700"
      },
      "message": "Support bidi layout for drawTextOnPath.\n\nChange-Id: Ie5867fdb66fe15336774e20d65fa63e0d05bf6fe\n"
    },
    {
      "commit": "8287a9bc5e184f1bbb91866591c4358a3a9eb168",
      "tree": "55126bd3dfa3cbdb2ccea11476cb55cb7cc8dde8",
      "parents": [
        "704aba52a8732ac6fffe9551756f86e76864e0a7"
      ],
      "author": {
        "name": "Alex Sakhartchouk",
        "email": "alexst@google.com",
        "time": "Fri Jul 02 12:14:26 2010 -0700"
      },
      "committer": {
        "name": "Alex Sakhartchouk",
        "email": "alexst@google.com",
        "time": "Fri Jul 02 12:14:26 2010 -0700"
      },
      "message": "Cleanup pass on the mesh api change.\nRemoved all the simple mesh related calls and temporary objects.\n\nChange-Id: Ic64a72a894e0314f216f10e1cfc0d45b17e2e182\n"
    },
    {
      "commit": "164aaedf7f24827c3da84acc733325ae985930d6",
      "tree": "20e8d0a291b527ce31dc91dd3a32e32ab69a5ad8",
      "parents": [
        "738639ccd0f12b06d17df3d3b3ee68f506311331"
      ],
      "author": {
        "name": "Alex Sakhartchouk",
        "email": "alexst@google.com",
        "time": "Thu Jul 01 16:14:06 2010 -0700"
      },
      "committer": {
        "name": "Alex Sakhartchouk",
        "email": "alexst@google.com",
        "time": "Thu Jul 01 16:14:12 2010 -0700"
      },
      "message": "Start of mesh API cleanup.\nSwitched all native code to go through Mesh class.\nRemoved SimpleMesh\nAdded java Mesh class\nWill need to port all existing code to use java Mesh, then remove java SimpleMesh.\n\nChange-Id: Idb9c03d0b06b4ef87db28dffcffa1881d39120e5\n"
    },
    {
      "commit": "ce0537b80087a6225273040a987414b1dd081aa0",
      "tree": "31682a01c12091c552217186604fca32f43e98ff",
      "parents": [
        "81ea83d10883886013bc95eac2fe032acf1e7aa9"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Tue Jun 29 21:05:21 2010 -0700"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Wed Jun 30 15:21:01 2010 -0700"
      },
      "message": "Add hooks for drawBitmap().\n\nChange-Id: I58e962c3a8b2bc75c2605fe369ad3002579d86e0\n\nAdd texture cache.\n\nChange-Id: I1c0e5581d228869e114438258a1014e33e024ad7\n"
    },
    {
      "commit": "c7d53494f1fbd9f9d74af89053ff9fdb1ccbac6c",
      "tree": "e9fa1c80906aa67991fea69f664fdddc94897327",
      "parents": [
        "5b7e333cf2f91c94e37dbb7024fa38da3db34619"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Fri Jun 25 13:41:57 2010 -0700"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Fri Jun 25 13:41:57 2010 -0700"
      },
      "message": "Implement quickReject() and drawRect().\n\nThe OpenGL ES 2.0 renderer can now draw colored rectangles. At least there\u0027s\nsomething on screen now.\n\nChange-Id: I80a13ccc1dd56784edf74f2670a364f30700234a\n"
    },
    {
      "commit": "9b949fce39f0f39ce9275b71d7c347210775e7a8",
      "tree": "76b739126b5b3f10e8fd0bc63071dd22a105e227",
      "parents": [
        "8f31bd6b68c796d4a4176721a6e13bfdba2166e0"
      ],
      "author": {
        "name": "Alex Sakhartchouk",
        "email": "alexst@google.com",
        "time": "Thu Jun 24 17:15:34 2010 -0700"
      },
      "committer": {
        "name": "Alex Sakhartchouk",
        "email": "alexst@google.com",
        "time": "Thu Jun 24 17:15:34 2010 -0700"
      },
      "message": "Adding freetype font rendering to renderscript.\n\nChange-Id: I3a10ffe27092a41df156341c9cb3f7aa19c49f19\n"
    },
    {
      "commit": "8f31bd6b68c796d4a4176721a6e13bfdba2166e0",
      "tree": "d2643807f6a18e1afd7577048b4d0aef914e3242",
      "parents": [
        "b6ca72314211e5f23cb2a4b3f17acc54ab6e8b87",
        "fae3f6b4153ff39c4f9e00dcf635b413d0ae4e85"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Thu Jun 24 14:51:28 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 24 14:51:28 2010 -0700"
      },
      "message": "Merge \"Add matrix ops to RSH headers.\""
    },
    {
      "commit": "fae3f6b4153ff39c4f9e00dcf635b413d0ae4e85",
      "tree": "e6c793e1ce30c43fa90c82601d9f65959b89c63c",
      "parents": [
        "0ebd5690b8a9eb55dc940b670267c11600cf7380"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Thu Jun 24 13:54:11 2010 -0700"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Thu Jun 24 13:54:11 2010 -0700"
      },
      "message": "Add matrix ops to RSH headers.\n\nChange-Id: I7e2843983a12e0155114b4a18813799e4341d26f\n"
    },
    {
      "commit": "f6a11b8a9e25ff9861bbba19251bea84d8a5daf2",
      "tree": "c44f214f59f2206de152585d97b23e2bfaa1b3b0",
      "parents": [
        "bb9524b6bdddc7ac77d8628daa8b366b8a7be4a4"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Wed Jun 23 17:47:49 2010 -0700"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Wed Jun 23 17:47:49 2010 -0700"
      },
      "message": "Add support for transformations.\n\nThis change adds partial support for the following transforms:\n- scale()\n- translate()\n- rotate()\n- setMatrix()\n- getMatrix()\n\nThe transform is stored in a snapshot and saved/restored as needed.\nThe transform is currently not applied to the clip rect and is not\nmapped to the vertex shader.\n\nChange-Id: Id48993453311200804149917d0c126a4d0471226\n"
    },
    {
      "commit": "03f0292744094ec107ffce71301c394503a31ded",
      "tree": "cd01b60e4ed28aef6b5e9abc7b86d90dcaba83e1",
      "parents": [
        "84d000e3c4d8883afec1e47662f719c6119cfefc"
      ],
      "author": {
        "name": "Gilles Debunne",
        "email": "debunne@google.com",
        "time": "Wed Jun 09 14:11:45 2010 -0700"
      },
      "committer": {
        "name": "Gilles Debunne",
        "email": "debunne@google.com",
        "time": "Wed Jun 23 10:43:00 2010 -0700"
      },
      "message": "New XmlDocumentProvider class.\n\nMinor changes in the Adapters.java helper class.\n\nExtracts data out of a XML document using an XPath-like syntax.\n\nChange-Id: I0617b0783f11c86118b42cd8485d54440810c805\n"
    },
    {
      "commit": "85bf02fc16784d935fb9eebfa9cb20fe46ff7951",
      "tree": "7d8cb5d36bca58555a33e8647afd8f0e00647b7b",
      "parents": [
        "102fb89b9a4d2a6620f88b247405f853d78a09b6"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Tue Jun 22 13:11:24 2010 -0700"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Tue Jun 22 13:11:24 2010 -0700"
      },
      "message": "Fix the simulator build.\n\nChange-Id: Ie404f7c2c308f0657f273af19a56e8c039b61898\n"
    },
    {
      "commit": "9e2b0c505af55a56171db0d025368e7ea6c15458",
      "tree": "83dce0177d8b6c1284dd5d76da7c157c51fe8633",
      "parents": [
        "f110d4b787b91dabe968a812e76e5c1f8d953487"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Mon Jun 21 18:30:02 2010 -0700"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Mon Jun 21 18:30:02 2010 -0700"
      },
      "message": "Fix build error.\n\nChange-Id: Ife0ec056c33654a56f270a5673f614820cfc2e29\n"
    },
    {
      "commit": "f110d4b787b91dabe968a812e76e5c1f8d953487",
      "tree": "65d71a0acb1441510240bec336535898a27d59e7",
      "parents": [
        "3ac8da87bba83de254e612ff8387db23e6434119"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Mon Jun 21 17:42:41 2010 -0700"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Mon Jun 21 17:42:41 2010 -0700"
      },
      "message": "Move ImageProcessing and ModelViewer to reflected files.\nImplement boolean support.\n\nChange-Id: Iac2dc28067ac430b3e413fc651dfaa0b96214e2e\n"
    },
    {
      "commit": "dfe5c204403bc56c29bb36410574eab8b1950417",
      "tree": "b02e0a861ae98ea200407fd0209f51c03bcf50dd",
      "parents": [
        "457738e628ee4d165014996bcf4e8d1983ac5929"
      ],
      "author": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Tue Jun 08 15:54:52 2010 -0700"
      },
      "committer": {
        "name": "Scott Main",
        "email": "smain@google.com",
        "time": "Mon Jun 21 15:19:23 2010 -0700"
      },
      "message": "docs: lots of additions to the resources docs\nnew drawable resources\nadd \u003cmerge\u003e and \u003cinclude\u003e to layout resource\nupdate drawable class descriptioons to point to resources guide\nadd ID resource type\n\nChange-Id: I733eec50bb2671f28c9e6dd7dec14eb6586f5193\n"
    },
    {
      "commit": "020bb7b5ac26a6e2d2f6852952a84bb246445fcf",
      "tree": "08c4aba55203bfc5957efed75b426b35d3082bb5",
      "parents": [
        "9cf3dc480f53b55674e547aaf08835d433b92879"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Thu Jun 17 15:55:00 2010 -0700"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Thu Jun 17 15:55:00 2010 -0700"
      },
      "message": "Add skip to field packer.\nremove hsb functions from env headers.\nadd RS_PACKED define for packed structures.\n\nChange-Id: Idc661edff85c0047baa201f43e0839ac82c74593\n"
    },
    {
      "commit": "d4824c256cc510cedb8d50e84767d1122886b547",
      "tree": "e6c86fe5768f24630e9a8fa6dd6ea18b8772829c",
      "parents": [
        "cb8e982754c1532feaa835e443a1d4aa9dff9e2d",
        "0bbae0836426ba2704e38e7f90a9d0ca502ab71d"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Tue Jun 15 18:06:47 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jun 15 18:06:47 2010 -0700"
      },
      "message": "Merge \"Add new API to check whether a Bitmap was modified.\""
    },
    {
      "commit": "0bbae0836426ba2704e38e7f90a9d0ca502ab71d",
      "tree": "1c10bf9a0585a027b38d85683ebc8c3aae8790e0",
      "parents": [
        "7e28c0108b2926832f29503682f950ab7506f684"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Tue Jun 15 18:03:40 2010 -0700"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Tue Jun 15 18:03:40 2010 -0700"
      },
      "message": "Add new API to check whether a Bitmap was modified.\n\nBitmap.getGenerationId() can be used by caches to find out if a Bitmap has been\nmodified. This simply exposes an existing Skia API.\n\nThis change also adds a small test app for Canvas hardware acceleration. The new\nBitmap API is required to implement a texture cache.\n\nChange-Id: I8547b146cd14c8afe1a2327fcd6d71b1b1cb68fc\n"
    },
    {
      "commit": "96ed4cfa62dd09aafb3f9da01e047661b4fe3c95",
      "tree": "fdf2cc680ff2af9a4e9e9052200dea65cfac7cd9",
      "parents": [
        "56985cea7759fa1e72085ec851fafa2d9a450dd7"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Tue Jun 15 12:15:57 2010 -0700"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Tue Jun 15 12:15:57 2010 -0700"
      },
      "message": "Remove InvokeData and add ContextFinish to generate a sync point.\n\nChange-Id: I27da8bf5fba2c8a428964cb6a5e66dd7a94958d8\n"
    },
    {
      "commit": "0c702b88c5d0d4380930b920f5be6e66dd95a0d8",
      "tree": "69bce2976a8f21b6a13c6dfd53941326166dbef9",
      "parents": [
        "a9aaf8ffcecf294c8da9785b5c5e1f055ee4d245"
      ],
      "author": {
        "name": "Doug Felt",
        "email": "dougfelt@google.com",
        "time": "Fri May 14 10:55:42 2010 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Thu Jun 10 14:03:22 2010 -0700"
      },
      "message": "Move shaping to native.\n\nAdd internal API (getTextRunAdvances) to Paint, use when measuring.\nAdd internal API (getTextRunCursor) to Paint, use when determining\nvalid cursor positions.\n\nRemove java-level shaping code.  Remove \u0027prep\u0027 code in TextLine\n(except for replacement text) since shaping now is done on the fly as\nneeded in native.\n\nProvide explicit shaping context bounds to internal text measuring,\ncursor movement, and rendering APIs.\n\nUpdate for to changes in external API in ushape.h.\n\nChange-Id: I146958b624802ce8553125e5c3c6c03031bc9608\n"
    },
    {
      "commit": "2d6145993e19d2bb664766dbaf3c1e9ad3d12cdc",
      "tree": "a4d7a5bacb0b6c423a89e9a520185109117ffcff",
      "parents": [
        "1d46191d88ee9262ea05b868d2db5b44ad85fa43"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Wed Jun 09 18:21:37 2010 -0700"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Wed Jun 09 18:27:08 2010 -0700"
      },
      "message": "Move OpenGL support out of ViewRoot into a new HardwareRenderer class.\n\nChange-Id: Iffaed924a5defc3c4df26223c390dc27eee115b1\n"
    },
    {
      "commit": "cbe4a73fef42602f68c698462ecc2e4b358d91b6",
      "tree": "d454f0dc937af5a54c06cb134f141366d2d6ef4d",
      "parents": [
        "30bb8f89ada3f4484fc5e3bb977667282f3b8a9d",
        "e29f3e74f71ea730519ff8ae1d8dd4c1630bbaf9"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Tue Jun 08 15:43:57 2010 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jun 08 15:43:57 2010 -0700"
      },
      "message": "Merge \"Begin using reflected files.\""
    },
    {
      "commit": "e29f3e74f71ea730519ff8ae1d8dd4c1630bbaf9",
      "tree": "48ca5c2daefa4ff854f48db7366045657f1db9de",
      "parents": [
        "0b0255bcdebb3c50a44327a931a7223f0770287a"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Tue Jun 08 15:40:48 2010 -0700"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Tue Jun 08 15:40:48 2010 -0700"
      },
      "message": "Begin using reflected files.\n\nChange-Id: I5307a0eac9c206b85c0cf7451d3f8300134bf8e3\n"
    },
    {
      "commit": "d994dcbd816d5431dfaa59de7457e28bdfc8f523",
      "tree": "bd6540287768fd1c350b3d2dbe5771e7fd51529e",
      "parents": [
        "9258ad7d7865dc854889ef24d274717296a60446",
        "cefdedc369a1bdf8fb1bf5c58f3de7b0afee0cc4"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Mon Jun 07 16:45:04 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jun 07 16:45:04 2010 -0700"
      },
      "message": "am cefdedc3: merge from froyo-plus-aosp\n"
    },
    {
      "commit": "c1038e778ff9f1efe6334ca71b74df5f720e6970",
      "tree": "487c97fa19467613b9c6b58d2dd3b4f971469398",
      "parents": [
        "7ad843d66d3ebb9250f00e836f0e8e9502d7287b",
        "6af5a9ea4d7efb16c859467389c9e3cb9352eaa6"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Mon Jun 07 16:37:22 2010 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Mon Jun 07 16:37:22 2010 -0700"
      },
      "message": "merge from open-source master\n\nChange-Id: I1a36964a723bce72139f1bc2402520b7f8d5e47b\n"
    },
    {
      "commit": "aae74ad6144470c66e72b075ac3afeddb186fa98",
      "tree": "b8dbb72f6fd23eef520f4330288e9113f0d2036e",
      "parents": [
        "e407a608b0e2c7aad5cd6321426ec85d35f3bafa"
      ],
      "author": {
        "name": "Alex Sakhartchouk",
        "email": "alexst@google.com",
        "time": "Fri Jun 04 10:06:50 2010 -0700"
      },
      "committer": {
        "name": "Alex Sakhartchouk",
        "email": "alexst@google.com",
        "time": "Fri Jun 04 10:06:50 2010 -0700"
      },
      "message": "Creating the jni and java layer to integrate a3d\n\nChange-Id: I438359633bae59bf9188cd2c4664a92ca16c5f37\n"
    },
    {
      "commit": "92ce5734b52ef014c80cc6335112a027188b3eb6",
      "tree": "4e1b24f0c038d278009202b6882e5f6adc92c43e",
      "parents": [
        "e99c012503bbd205cbaa9f16f9894ca5ffeaaf76"
      ],
      "author": {
        "name": "Erik Faye-Lund",
        "email": "kusmabite@googlemail.com",
        "time": "Wed Jun 02 23:47:01 2010 +0200"
      },
      "committer": {
        "name": "Erik Faye-Lund",
        "email": "kusmabite@googlemail.com",
        "time": "Wed Jun 02 23:47:01 2010 +0200"
      },
      "message": "Canvas.drawVertices: correct color range-check\n\nThe range-check in drawVertices previously checked that the color\ncount was equal to the vertex count. However, the vertex count is\nspecified in array elements, and there\u0027s two array elements per\nvertex for the positions, but only one array element per vertex\nfor the colors.\n\nCorrect the code so the check is consistent with the element count.\n\nChange-Id: Id043f1003f9245f18adc91bac49dc33727ca765e\n"
    },
    {
      "commit": "8cb39de03aef6097a90033600d11a60ae000a6e4",
      "tree": "cc9eb5fa87de5e14713684e7e177368d10550384",
      "parents": [
        "c9d0a87d504b3f0322b43f971f9cb4838ee521fb"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Tue Jun 01 15:47:01 2010 -0700"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Tue Jun 01 15:47:01 2010 -0700"
      },
      "message": "Remove RS_KIND from vertex arrays types.\nLegacy vertex programs now bind by name just like the user programs.\nThis removes the need for two different ways of declairing the same\ninformation.\n\nChange-Id: I0178c0962842a1bbffb6726984ae1b8f5bb7529c\n"
    },
    {
      "commit": "d79b2e9f8b0fa43f6734aaa5e9d0d389d5da5109",
      "tree": "e2eb06363ce3d83f447bac87e385835a4314d7ac",
      "parents": [
        "d52498a64ff0bef28cd48ed28acd84a680a1d9b5"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Wed May 19 17:22:57 2010 -0700"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Wed May 19 17:23:08 2010 -0700"
      },
      "message": "Begin naming cleanup for renderscript runtime.\nPrefix functions with \"rs\" or \"rsg\".\n\nChange-Id: I4435b486831bfab1ea473ccfad435b404e68f1c9\n"
    },
    {
      "commit": "1de0b87168837cfcd9318bec5c97d2e7d78d3293",
      "tree": "6b6cd8ea2a55597e3fd3573072cb85af892be731",
      "parents": [
        "38a9544825c6f3482237f9e29cddee58ebc093c3"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Mon May 17 14:55:34 2010 -0700"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Mon May 17 14:55:34 2010 -0700"
      },
      "message": "Remove more pieces of setRoot.  Add pointer to allocation lookup for scripts.\n\nChange-Id: I2c3075d2056f02bb834bfad403dc72da991f3156\n"
    },
    {
      "commit": "b42315d37ab22e64ef88d3aed38ed75fd7071eed",
      "tree": "83bf21d63651d54b4c30bfa6badbd854d000460e",
      "parents": [
        "f603d212552485c634e25f3556f847dc2b022bd5"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Fri May 14 16:29:20 2010 -0700"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Fri May 14 16:29:20 2010 -0700"
      },
      "message": "Delete old createFromClass methods.\nIt no longer makes sense to create type info from Java since this\ncannot be exported to scripts.  The new flow is in the opposite direction.\n\nChange-Id: I9b46e3f57abf84c01326bd9b9b834f3ff0f7c504\n"
    },
    {
      "commit": "54db59c3594e887a412a24713fc3daa1c2404593",
      "tree": "cd78b514370d0e9b60e3711417395601824e8270",
      "parents": [
        "f5523645a97643874840e029b4a7e9a4e4220806"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Thu May 13 18:30:11 2010 -0700"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Thu May 13 18:35:01 2010 -0700"
      },
      "message": "Rename ProgramFragmentStore to ProgramStore.\n\nChange-Id: Ia8ad9ac856944838ced38a2f1e8f07387050bdfd\n"
    },
    {
      "commit": "f47d7405bbcb25d7cdf89ebb059f41520fe9ab87",
      "tree": "2108636a739716d0e6fddde6f75225686c322aab",
      "parents": [
        "d937420996f43534eafce474eeeb81c7045dbf9d"
      ],
      "author": {
        "name": "Doug Felt",
        "email": "dougfelt@google.com",
        "time": "Wed Apr 21 16:01:52 2010 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Wed May 12 18:50:02 2010 -0700"
      },
      "message": "Modify Canvas drawText to run bidi and shape.\n\nAdds drawTextRun as internal API on Canvas and GraphicsOperations.\nAdds implementation to implementors of GraphicsOperations.\n\nAdds state and API on Paint to control the bidi algorithm when used\nby Canvas.  This API is currently hidden.\n\nThe drawText changes are incomplete since shaping is not yet available\nin the native code.\n\nChange-Id: I4368048aef9545df0953a349381771603e04b619\n"
    },
    {
      "commit": "4d3399337d18ef04116bc8a2e5799274655d0c30",
      "tree": "a264ecb82632516adb510a2ca49d3cac750d54d0",
      "parents": [
        "810f5ccb99a8a05a6d1617b19a4efb2399450318"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Tue May 11 14:03:58 2010 -0700"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Tue May 11 14:03:58 2010 -0700"
      },
      "message": "Convert renderscript from using ACC to LLVM for its compiler.\n\nThis will also require application to be updated to support\nthe new compiler and data passing models.\n\nChange-Id: If078e3a5148af395ba1b936169a407d8c3ad727f\n"
    },
    {
      "commit": "6430c943f9c32ea1503c6723302a944dcb18dac5",
      "tree": "d7166b6380b6a4f4edc5bca91d35b8aa9bba0a53",
      "parents": [
        "026ed0f93dcc5c9d54e93e93e3c5922b7773812b"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Thu May 06 18:07:40 2010 -0700"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Thu May 06 18:07:40 2010 -0700"
      },
      "message": "Set a layered drawable\u0027s child callback to be the container.\n\nChange-Id: I959ad03883931d727d464f384073926e8fa9e2d2\n"
    },
    {
      "commit": "79a63f7ddb5bfb32a37dfbfd3e7748389c5076ad",
      "tree": "a4444f0b799084fbb2b57ff0d6977ec11b74bb8d",
      "parents": [
        "26723fc89d9f6396d5a38a6f6f9976d59d2a17e4"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Thu May 06 17:58:17 2010 -0700"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@google.com",
        "time": "Thu May 06 17:58:17 2010 -0700"
      },
      "message": "Make sure that a drawable replacing a layer in a LayerDrawable gets a callback.\n\nChange-Id: Iefac7d280b3c16e05f45688da655e17e21a3098b\n"
    },
    {
      "commit": "417675cab0f8f2fb73ff067071b5347186a81c19",
      "tree": "8ac66b9c7420b646edae790a1b268ff9e99cc2e3",
      "parents": [
        "5a870fee53ca94c7575503c72574ca0f068d52c7"
      ],
      "author": {
        "name": "Peter Eliasson",
        "email": "peter.eliasson.x@sonyericsson.com",
        "time": "Mon Apr 26 12:32:40 2010 +0200"
      },
      "committer": {
        "name": "Johan Redestig",
        "email": "johan.redestig@sonyericsson.com",
        "time": "Mon Apr 26 12:32:40 2010 +0200"
      },
      "message": "Improved error handling when font loading fails.\n\nWithout this patch, an application could trigger a platform crash\nby calling:\n\n  Typeface typeface \u003d Typeface.createFromFile(\"\");\n  boolean isbold \u003d typeface.isBold();\n\nThe crash occurs since the Skia error that occurs when font loading\nfails is not propagated.\nWith this patch, the Typeface constructor throws an\nIllegalStateException when Skia fails to load the font (i.e. when\nthe native instance is null).\n\nChange-Id: I1002b37b7b32840cb7eeef6819d2982cb18c9003\n"
    },
    {
      "commit": "d404d6f162cfd4071c8ff3a2d44b1077307e2102",
      "tree": "ae844589928e44aea9910938bd2e9148b56fb8cf",
      "parents": [
        "c096a9aead60717fc106ceb259bf954a578d3c54"
      ],
      "author": {
        "name": "Mike Reed",
        "email": "reed@google.com",
        "time": "Wed Apr 14 14:46:46 2010 -0400"
      },
      "committer": {
        "name": "Mike Reed",
        "email": "reed@google.com",
        "time": "Wed Apr 14 14:46:46 2010 -0400"
      },
      "message": "update dox for FILL_AND_STROKE style\n\nChange-Id: I7835068a376dfa4d8c18d8bb20d97941a058e89f\nhttp://b/issue?id\u003d2590047\n"
    },
    {
      "commit": "1e91b3fde0a1a76388c7f2a7fd67562c66818f2e",
      "tree": "9f1402ecefb02420ec0f31006929f31ca3debd33",
      "parents": [
        "20fc9bfe3ad16c5f36026fc43c85d0647b75cc40"
      ],
      "author": {
        "name": "Gilles Debunne",
        "email": "debunne@google.com",
        "time": "Mon Apr 12 16:28:24 2010 -0700"
      },
      "committer": {
        "name": "Gilles Debunne",
        "email": "debunne@google.com",
        "time": "Mon Apr 12 17:09:14 2010 -0700"
      },
      "message": "Added documentation in Drawable.\n\nDocumentation on the ConstantState added.\nRemoved all warnings in Eclipse.\n\nChange-Id: Ib1daf7eef1aff5660e805483f9dcae6fcd5a595e\n"
    },
    {
      "commit": "20fc9bfe3ad16c5f36026fc43c85d0647b75cc40",
      "tree": "13476e05d4eb577f74abddb6dc85ec98e99b8a71",
      "parents": [
        "1477798b4fd9b6798266f92cfa87a3fed597f779"
      ],
      "author": {
        "name": "Gilles Debunne",
        "email": "debunne@google.com",
        "time": "Mon Apr 12 14:21:26 2010 -0700"
      },
      "committer": {
        "name": "Gilles Debunne",
        "email": "debunne@google.com",
        "time": "Mon Apr 12 15:33:49 2010 -0700"
      },
      "message": "Fixed links in MipmapDrawable documentation.\n\nFix for 78aaa97b77d56e35e994611406deb398eb9005db\n\nChange-Id: I3b4a3b987560d5d3934776cdc7ae98c954bfab32\n"
    },
    {
      "commit": "78aaa97b77d56e35e994611406deb398eb9005db",
      "tree": "d05c6e91cc38a4518413e0c30c0aa07f1feeca7e",
      "parents": [
        "75b84a2d04964c3c42db0e66ee27c0f96f82bfea"
      ],
      "author": {
        "name": "Gilles Debunne",
        "email": "debunne@google.com",
        "time": "Fri Apr 09 15:37:19 2010 -0700"
      },
      "committer": {
        "name": "Gilles Debunne",
        "email": "debunne@google.com",
        "time": "Mon Apr 12 11:12:32 2010 -0700"
      },
      "message": "New MipmapDrawable class.\n\nThis Drawable holds different scaled version of a Drawable and use the appropriate one\ndepending on its actual bounds to minimize scaling artifacts.\n\nChange-Id: I4ced045d73c1ddd8982d9aaf39c3599b3ac58a16\n"
    },
    {
      "commit": "bb2890d40bba7f690055bf8ee7bda749171a3a53",
      "tree": "83e998dee1e5411e3ce2602c4ab8ce1b1abae25e",
      "parents": [
        "fc2583e107aaaf8eed181e6f0dfc8da476c2c6f1"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Fri Apr 02 15:48:46 2010 -0700"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Fri Apr 02 15:48:46 2010 -0700"
      },
      "message": "Add Overlay mode to the PorterDuff list of supported modes.\n\nChange-Id: I2ec03b9a1039db3e3c16786222e4fde4782ed67e\n"
    },
    {
      "commit": "b7248b7b810ed501d0a07ce762aee597f3b1c1a2",
      "tree": "8385618329b1f6180301082d6b7f091461a71e19",
      "parents": [
        "98d2e4fcec7869ff264bec821a374fd494a223d6",
        "26fe7d27ee69148905496ebb2fd6347bc51f7b87"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Mar 30 11:13:47 2010 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Mar 30 11:13:47 2010 -0700"
      },
      "message": "merge from open-source master\n\nChange-Id: Iad50c5ab4915d0868b3f79ea6ba0d657a6f98525\n"
    },
    {
      "commit": "758e8d1d1daaa20fe65e9ff31153e657343aa011",
      "tree": "61bbc602e733f3b9fbe24648ade0f1ca7269f289",
      "parents": [
        "d646f69c4e7cf0ad06bd2687a31b5cbb4441230c",
        "2438894df093f91125f4a217ea98e759fa5c8616"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Mon Mar 29 11:21:39 2010 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Mar 29 11:21:39 2010 -0700"
      },
      "message": "am 2438894d: am 5849606d: merge from open-source master\n"
    },
    {
      "commit": "5849606df71fb3d5ce88b966cff8382deccd56b6",
      "tree": "3f1b8743614ef924bd3a5a8cd82972480e91365c",
      "parents": [
        "c89704a77f9c51ebd8c1cc6863e15ff402a56c86",
        "5f3445dc609fb3dd64b023c1ba9c1ee3ba95b868"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Mon Mar 29 11:04:30 2010 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Mon Mar 29 11:04:30 2010 -0700"
      },
      "message": "merge from open-source master\n\nChange-Id: I6a7542e696e69bc8788f3b3b77fcec50512ba81c\n"
    },
    {
      "commit": "5f3445dc609fb3dd64b023c1ba9c1ee3ba95b868",
      "tree": "44ef55293edfea68138d4cd900eb9a7f6bee09dc",
      "parents": [
        "69f789a12888b3a3a1711fcc8ce2489cdfd1437f"
      ],
      "author": {
        "name": "David Hoover",
        "email": "karma@deadmoose.com",
        "time": "Sun Mar 28 08:48:55 2010 -0700"
      },
      "committer": {
        "name": "David Hoover",
        "email": "karma@deadmoose.com",
        "time": "Sun Mar 28 08:49:49 2010 -0700"
      },
      "message": "Fix typos in comment.\n\nChange-Id: Ia2a9ea0802bcc5773bb4fd52d7e07f9492242bfd\n"
    },
    {
      "commit": "2d71bc7b4c46a32cead32a35e6e137d13e8315ea",
      "tree": "a4079693d1f451c058392d961ea6cf2b562b2129",
      "parents": [
        "a70f416c9cf2fc6cc5e132c1d656ce07441d6b82"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Fri Mar 26 16:06:43 2010 -0700"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Fri Mar 26 16:08:09 2010 -0700"
      },
      "message": "Update Script java classes and llvm samples.\n\nChange-Id: I05c8d63fcca095d4fea6abb1ff5736ab9d78a3e6\n"
    },
    {
      "commit": "a70f416c9cf2fc6cc5e132c1d656ce07441d6b82",
      "tree": "2738fc0a8eefb95c041f0f158f18d73b45d0f342",
      "parents": [
        "c1d726c2d62424867ec14f2cde16b00fe0ddfee1"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Fri Mar 26 15:33:42 2010 -0700"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Fri Mar 26 15:34:30 2010 -0700"
      },
      "message": "Checkin new types for RS.\n\nChange-Id: I3d7a1a91c45cc1c97c60f3615f32e54e98e12f91\n"
    },
    {
      "commit": "8e10a7b7c82209bf52ab8545d21777ea1728f81e",
      "tree": "0a1cc5fd950d41541a2d949210f183fe78d91514",
      "parents": [
        "53d7c234432c8d2cca5b6e2ac08ab859b062f892",
        "1be46d7920dbdce24f878d6f4889ea8591ab75c6"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu Mar 25 16:39:32 2010 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu Mar 25 16:39:32 2010 -0700"
      },
      "message": "merge from open-source master\n\nChange-Id: I4d8f34986fd9e16ead8a22909263069dbb819d3e\n"
    },
    {
      "commit": "54900e8c05e92a0783e8468ad7c4513eb66adc80",
      "tree": "f2b5e4ccb120565bf505750087527d83ed116689",
      "parents": [
        "1c9f1c6323ec9663ec534d4ef41bed00678b8d04"
      ],
      "author": {
        "name": "Mike Reed",
        "email": "reed@google.com",
        "time": "Thu Mar 25 14:02:40 2010 -0400"
      },
      "committer": {
        "name": "Mike Reed",
        "email": "reed@google.com",
        "time": "Thu Mar 25 14:02:40 2010 -0400"
      },
      "message": "update dox that we ignore the exact parameter on computeBounds\n\nChange-Id: I6051210ea2a73b4d1c6cd631a285209ab130b4e5\n"
    },
    {
      "commit": "1be46d7920dbdce24f878d6f4889ea8591ab75c6",
      "tree": "3866ace5e0f98d13de91553c3540c9b9008fa73f",
      "parents": [
        "a2d776b2d36b38d94a30fc5692fd71ce9697fe9c"
      ],
      "author": {
        "name": "viral.vkm",
        "email": "viral.vkm@gmail.com",
        "time": "Thu Mar 25 17:50:57 2010 +0530"
      },
      "committer": {
        "name": "viral.vkm",
        "email": "viral.vkm@gmail.com",
        "time": "Thu Mar 25 17:50:57 2010 +0530"
      },
      "message": "setCornerRadii should be called when either of corners radius is specified\nas 0dp and thus while checking for condition, it should be ORed and not ANDed.\n\nIt solves Android Issue: 939\nhttp://code.google.com/p/android/issues/detail?id\u003d939\n\nChange-Id: Ic18fae769480972f763f634e7462c6ed3853220b\n"
    },
    {
      "commit": "a8551b1efa89841c01d3b6a01ac65e57084a3234",
      "tree": "abda2576af298685b46619a5da65ab49430faa20",
      "parents": [
        "e182a92ae408f27f46d15de01c8a263cfe6f9246"
      ],
      "author": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Wed Mar 10 22:11:50 2010 -0800"
      },
      "committer": {
        "name": "Romain Guy",
        "email": "romainguy@android.com",
        "time": "Wed Mar 10 22:11:50 2010 -0800"
      },
      "message": "Fix the build.\n\nChange-Id: I0caef1fd522d231d803e0fd9e0b8fdf3272db168\n"
    },
    {
      "commit": "76d1e01d5e65c4631c827831e98ad4e300d99eab",
      "tree": "04b3cd4637ef340332d1bb9c38d85c93949e4909",
      "parents": [
        "43dcdb2ec5aaad592e16555f9b5ddc037fa71902"
      ],
      "author": {
        "name": "Mike Reed",
        "email": "reed@google.com",
        "time": "Fri Mar 05 17:42:30 2010 -0500"
      },
      "committer": {
        "name": "Mike Reed",
        "email": "reed@google.com",
        "time": "Mon Mar 08 08:53:23 2010 -0500"
      },
      "message": "hidden api sameAs() to compare the pixels of 2 bitmaps for equality\n"
    },
    {
      "commit": "8a64743f37ed35af7c2204acd18bb3d62d8f66d5",
      "tree": "13222fdd1021b6af52f78d1d3576b0139b724ee1",
      "parents": [
        "c2908e60c9b021fb4bb69acff8d49981dd4dade8"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Mon Mar 01 15:31:04 2010 -0800"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Mon Mar 01 15:31:04 2010 -0800"
      },
      "message": "Add support for linking to a skia bitmap rather than always copying the data from the bitmap.\n"
    },
    {
      "commit": "c2908e60c9b021fb4bb69acff8d49981dd4dade8",
      "tree": "7b719d7ca8dc804e2906df1d38022ea4f9c22c50",
      "parents": [
        "7eecbf2085bcfe475daf68090a1a4f47fbb6ec72"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Tue Feb 23 17:44:28 2010 -0800"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Tue Feb 23 17:44:28 2010 -0800"
      },
      "message": "Support defered generation of mipmaps.  With this change we support mipmap generation when the texture is uploaded to GL without requiring RS to retain the full chain.\n"
    },
    {
      "commit": "a696f5d667227365da732481770767dcb330dd23",
      "tree": "0a89f08df3f88daea3f29948c8d5cdd7675a3fff",
      "parents": [
        "be8af08cf4cf9384b3fa13c853c40d761211ceed"
      ],
      "author": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Wed Feb 17 17:53:09 2010 -0800"
      },
      "committer": {
        "name": "Mathias Agopian",
        "email": "mathias@google.com",
        "time": "Thu Feb 18 15:32:47 2010 -0800"
      },
      "message": "Add ImageFormat.java and move the Camera/YUV constants from PixelFormat to it.\n\nPixelFormat\u0027s corresponding constansts are now deprecated.\n"
    },
    {
      "commit": "35d2621b3a62e8ab0a19bb9f760346838f9680dd",
      "tree": "418f43fadec2a88b83565b59564edb39999b4ae7",
      "parents": [
        "eba3bb06a8018bc12510a266cadc267d2163e949",
        "7df951595fa99bb4ead7891a2d70e3281314c51e"
      ],
      "author": {
        "name": "Mike Reed",
        "email": "reed@google.com",
        "time": "Thu Feb 18 06:11:39 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Feb 18 06:11:39 2010 -0800"
      },
      "message": "Merge \"update dox\""
    },
    {
      "commit": "2b95c2413838c2e2b127ebab8fb4fead7d52e460",
      "tree": "152840f97e63ab28962c5f351217fa8088686f13",
      "parents": [
        "6a70d7d1e28bd0b98d03e7ecab3fd08ea5973e34"
      ],
      "author": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Mon Feb 08 17:40:30 2010 -0800"
      },
      "committer": {
        "name": "Jeff Sharkey",
        "email": "jsharkey@android.com",
        "time": "Wed Feb 17 15:03:32 2010 -0800"
      },
      "message": "Added more @RemotableViewMethod methods, mutate ImageView.\n\nCatch some View methods missed during the first pass of\nmarking with @RemotableViewMethod annotation.  Also adds new\nImageView.setColorFilter(int) to match the android:tint XML\nattribute.\n\nWhen ImageView touches ColorFilter or alpha, mutate the\nunderlying Drawable. Fix NPE in StateListDrawable.mutate().\n"
    },
    {
      "commit": "7df951595fa99bb4ead7891a2d70e3281314c51e",
      "tree": "5540bb744e91d47f7e1d17d953a4609e1c2e2f06",
      "parents": [
        "51e43a348158c343d6da4ff7bccf91de9bacdf42"
      ],
      "author": {
        "name": "Mike Reed",
        "email": "reed@google.com",
        "time": "Wed Feb 17 14:03:59 2010 -0500"
      },
      "committer": {
        "name": "Mike Reed",
        "email": "reed@google.com",
        "time": "Wed Feb 17 14:03:59 2010 -0500"
      },
      "message": "update dox\n"
    },
    {
      "commit": "79b646ffe51c532f00b69dc4967ee51ca28986cf",
      "tree": "64dc779a8ee4d21f322499bbefa11e5972741be3",
      "parents": [
        "1e90ab542d675616e9370ab7e5add99d7af12587",
        "0b9bbb6dc5d7dabecf23e8c6bb4a267ba8c34fe8"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Fri Feb 12 11:27:01 2010 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Feb 12 11:27:01 2010 -0800"
      },
      "message": "am 0b9bbb6d: DO NOT MERGE. Merge Froyo renderscript to Eclair to support live wallpapers on droid.  This gives the necessary CPU reduction to allow the wallpapers to work on the slower CPU.\n\nMerge commit \u00270b9bbb6dc5d7dabecf23e8c6bb4a267ba8c34fe8\u0027 into eclair-plus-aosp\n\n* commit \u00270b9bbb6dc5d7dabecf23e8c6bb4a267ba8c34fe8\u0027:\n  DO NOT MERGE. Merge Froyo renderscript to Eclair to support live wallpapers on droid.  This gives the necessary CPU reduction to allow the wallpapers to work on the slower CPU.\n"
    },
    {
      "commit": "0b9bbb6dc5d7dabecf23e8c6bb4a267ba8c34fe8",
      "tree": "12057a18bb056620ed374ad79ea08b8b16e31ef9",
      "parents": [
        "c1eba82ba479006045c1d7a4c8ceba116a9602d1"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Thu Feb 11 18:16:21 2010 -0800"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Thu Feb 11 18:16:21 2010 -0800"
      },
      "message": "DO NOT MERGE. Merge Froyo renderscript to Eclair to support live wallpapers on droid.  This gives the necessary CPU reduction to allow the wallpapers to work on the slower CPU.\n\n Committer: Jason Sams \u003crjsams@android.com\u003e\n\n On branch droid\n Changes to be committed:\n   (use \"git reset HEAD \u003cfile\u003e...\" to unstage)\n\n\tmodified:   libs/rs/rsAllocation.cpp\n\tmodified:   libs/rs/rsAllocation.h\n\tmodified:   libs/rs/rsContext.cpp\n\tmodified:   libs/rs/rsContext.h\n\tmodified:   libs/rs/rsProgram.cpp\n\tmodified:   libs/rs/rsProgram.h\n\nDelete the old rollo sample which is obsolete.\n\nFix film init\n\nBegin gl2 support.  Renderscript still uses GL1.1 by default.  However, 2.0 can be enabled and will render most tests correctly.\n\nFix film\n\nBeging GL2 user shaders.  Switch master to using GL2 by default.\n\nImplement RS tracked defered texture and buffer object uploads.\n\n Committer: Jason Sams \u003crjsams@android.com\u003e\n\n On branch droid\n Changes to be committed:\n   (use \"git reset HEAD \u003cfile\u003e...\" to unstage)\n\n\tmodified:   libs/rs/rsAllocation.cpp\n\tmodified:   libs/rs/rsAllocation.h\n\tmodified:   libs/rs/rsContext.h\n\tmodified:   libs/rs/rsProgramFragment.cpp\n\tmodified:   libs/rs/rsSimpleMesh.cpp\n\nRemove check for surface valid that is no longer valid.\n\nContinue development of es2.0 user shader support for renderscript.  This change cleans up ProgramVertex creation and adds support for passing input, output, and constant type info.\n\nContinue es2 shader dev\n\nConflicts:\n\n\tgraphics/java/android/renderscript/Program.java\n\tgraphics/java/android/renderscript/ProgramVertex.java\n\nPlace shader logging behind prop to declutter logs.\n\nFix emulated glColor in es2 mode.\n\nFix live wallpaper many.  Z coordinate was being ignored for draw quad call.\n\nAdd argument checking to sampler builder to disallow illegal modes.\n\nMove texture bindings to base program object.  Change ProgramFragment creation to require a texture format in 1.0 mode.\n\nElement restructuring.  Add support for new basic Element types including the RS objects and vectors(2-4).  In theory this paves the way for maintaining type info for RS objects, passing elements for GLSL uiforms/attribs/varyings, and supporting nested structures.\n\nThis will break some apps, checkings for other projects will follow to unbreak them.\n\nDisable excessive RS logging.\n\nAdd RS support for generic attribs as input to vertex programs.\n\nMore complete support for named attribs.  Adds user typed attribs as available to programVertex.  Non user attribs are not treated like user for GL2 for simplicity.\n\nSupport npot on es 2.0 HW.\n\nChange user attribs to look for empty slot rather than using them in order.  Prevents conflict with numbered legacy slots.\n\nFix npot but where mipmap level sizes were rounding in the wrong direction.  Should always be floor.\n\nImplement type generation for user uniforms in vertex shader.\n\nRemove excessive logging, fix error in GLSL uniform generation.\n\nFix RS mipmap generation for 8 bit alpha textures.\n\nCleanup seperation of Legacy and user attribs.  All user programs now use the new names.  Legacy vertex attribs are given default names.\n\nFix some minor bugs with GL state setup that were exposed by Droids driver.\n\nImplement drawSpriteCropped on es2.0\n"
    },
    {
      "commit": "3941411a21b0ccbfb2843dd8c7c7fbe9f8e85abb",
      "tree": "e19dd952cf8c80039bbc8bb5c751d6433ae96222",
      "parents": [
        "777db0c08a1bee45acc2ca3fcc62ef1db6d0e221",
        "1e90ab542d675616e9370ab7e5add99d7af12587"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu Feb 11 11:20:40 2010 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Feb 11 11:20:40 2010 -0800"
      },
      "message": "am 1e90ab54: merge from open-source master\n\nMerge commit \u00271e90ab542d675616e9370ab7e5add99d7af12587\u0027\n\n* commit \u00271e90ab542d675616e9370ab7e5add99d7af12587\u0027:\n  Fixs the incorrect message for SecurityException\n  Default RotateDrawable\u0027s pivot set to (50%, 50%)\n"
    },
    {
      "commit": "1e90ab542d675616e9370ab7e5add99d7af12587",
      "tree": "ba207d9049c64f2acd4dcf02ba177be38a05a3bb",
      "parents": [
        "61bb25f2f92af10b685d6bd1452bc5505995c64e",
        "27f3de6bac93140452ce131cbbd8c6df33e25a94"
      ],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu Feb 11 10:03:02 2010 -0800"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Thu Feb 11 10:03:02 2010 -0800"
      },
      "message": "merge from open-source master\n"
    },
    {
      "commit": "d2391faa5d21a7513f321c03da0945277e291ad7",
      "tree": "dc2fb8997d99da6d48f3388a02e9ee6241df1998",
      "parents": [
        "ca35953c9064114cb09181e8bffddb2f7c2d8d53"
      ],
      "author": {
        "name": "Wei-Ta Chen",
        "email": "weita@google.com",
        "time": "Fri Feb 05 16:58:25 2010 +0800"
      },
      "committer": {
        "name": "Wei-Ta Chen",
        "email": "weita@google.com",
        "time": "Wed Feb 10 23:15:37 2010 +0800"
      },
      "message": "Modify the API of YuvImage, so that callers do not need to deal with\nthe yuv format when specifying a rectangle region.\n\nBug: 2285598\n"
    },
    {
      "commit": "704ff64b099406bb328898a7443921f22dbffd6d",
      "tree": "f5ec300c4d3bd6cdb6225909b4435d44a4a226dd",
      "parents": [
        "5bec3aa2c6bcde7f81ca77b0887296bf05a745c8"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Tue Feb 09 16:05:07 2010 -0800"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Tue Feb 09 16:05:07 2010 -0800"
      },
      "message": "Preview seperating RenderScript into RenderScript and RenderScriptGL\n"
    },
    {
      "commit": "b81b1447d2cfa9dc5bcc02c8a1b7193400a97ab6",
      "tree": "dc6bc0f013a7a637ab7dc9cd4365e31e49bfba73",
      "parents": [
        "b09ef7b4fa388c1399a6359e239789ca0137aaac"
      ],
      "author": {
        "name": "Cyril Mottier",
        "email": "cyrilmottier@gmail.com",
        "time": "Sat Feb 06 00:36:40 2010 +0100"
      },
      "committer": {
        "name": "Cyril Mottier",
        "email": "cyrilmottier@gmail.com",
        "time": "Sat Feb 06 00:36:40 2010 +0100"
      },
      "message": "Default RotateDrawable\u0027s pivot set to (50%, 50%)\n\nIn order to define the pivot in an XML-instanciated RotateDrawable, android:pivotX\nand android:pivotY had to be set in your XML. Forgetting to set those attributes\nended up in a NullPointerException (tv \u003d null) that were caught by the Resources.getDrawable()\nmethod (caught as an Exception). As a result a not-very-accurate message was logged:\n\"Resource not found ...\". Defining a default pivot value seems like a great fix.\nSome other fixes would be to modify the documentation or notify the user with a better\nexplanation than \"Resource not found ...\".\n"
    },
    {
      "commit": "57405b93f194851eb2187a8ed3362be18a483a17",
      "tree": "d6bdccb9482128df482c359c6769831761c32125",
      "parents": [
        "b66802b3b50824447b175007f28da3d92bc7205d",
        "42d6c9e1e794713022d1370ba844ce05c7b2793f"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Tue Feb 02 15:46:50 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 02 15:46:50 2010 -0800"
      },
      "message": "Merge \"Hide field packer.\""
    },
    {
      "commit": "42d6c9e1e794713022d1370ba844ce05c7b2793f",
      "tree": "8363213f210076adfed887a51a1b51a0aa9de2eb",
      "parents": [
        "25430d0734d12d12ca2d2d7a9d18c0cf3c5bdc4e"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Tue Feb 02 15:45:58 2010 -0800"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Tue Feb 02 15:45:58 2010 -0800"
      },
      "message": "Hide field packer.\n"
    },
    {
      "commit": "2a594b1a240d40db70fd41140d3e29b9828d5274",
      "tree": "8baefa16ab86a394e4558fdbf89b235a5b3456f2",
      "parents": [
        "37b22176001d4bd69d2b276d212d7a12eafaaf15",
        "25430d0734d12d12ca2d2d7a9d18c0cf3c5bdc4e"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Tue Feb 02 15:28:03 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Feb 02 15:28:03 2010 -0800"
      },
      "message": "Merge \"Implement holders for Matrix and Vector data.\""
    },
    {
      "commit": "25430d0734d12d12ca2d2d7a9d18c0cf3c5bdc4e",
      "tree": "71d43c3e77e12054d4ed7b5c82ec4dd368743f74",
      "parents": [
        "5dbfe93b3f15f3a837836d024958635fd8f9ad14"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Tue Feb 02 15:26:40 2010 -0800"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Tue Feb 02 15:26:40 2010 -0800"
      },
      "message": "Implement holders for Matrix and Vector data.\n"
    },
    {
      "commit": "c58ffe8253ca76160908d153242d8150f668ea32",
      "tree": "c4ff7cd483a091453a63c57146cc82cd4856355a",
      "parents": [
        "f9e573ec337e79043a5ee74fe3c03d97b31e11e6"
      ],
      "author": {
        "name": "Wei-Ta Chen",
        "email": "weita@google.com",
        "time": "Wed Jan 27 16:16:17 2010 +0800"
      },
      "committer": {
        "name": "Wei-Ta Chen",
        "email": "weita@google.com",
        "time": "Thu Jan 28 15:48:54 2010 +0800"
      },
      "message": "Unhide YuvImage, which supports compressing a YUV rectangle region to JPEG.\n\nBug: 2285598\n"
    },
    {
      "commit": "5dbfe93b3f15f3a837836d024958635fd8f9ad14",
      "tree": "7a86155c3054d0b7fe0d655e2f2dd21754b05330",
      "parents": [
        "445cc0e4bfd5b9460fb1cdccd22d8d54a49e5da1"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Wed Jan 27 14:41:43 2010 -0800"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Wed Jan 27 14:41:43 2010 -0800"
      },
      "message": "Fix some minor bugs with GL state setup that were exposed by Droids driver.\n"
    },
    {
      "commit": "bca2d613e0d6d2630fedd302c0d779b7610adbcf",
      "tree": "53db21dd1839b4dd602d07ef8d7c7cb61e7d4759",
      "parents": [
        "c597b188bd0cf461231dac008b6e9eb8efde6ada"
      ],
      "author": {
        "name": "Wei-Ta Chen",
        "email": "weita@google.com",
        "time": "Mon Nov 30 17:52:05 2009 +0800"
      },
      "committer": {
        "name": "Wei-Ta Chen",
        "email": "weita@google.com",
        "time": "Wed Jan 27 11:41:34 2010 +0800"
      },
      "message": "Add a Java API that converts yuv data to a jpeg.\n\nThe compression is done in the native layer via calling libjpeg.\n\nBug: 2285598\n"
    },
    {
      "commit": "ab4a0c164b5a44d5bfd37069cfe499db31e7620c",
      "tree": "56b7bb3091cbd7c3c376fac80c1284c3863f8cf6",
      "parents": [
        "111d0367d75e0bba6558e4464a7662dc95825ba4"
      ],
      "author": {
        "name": "Mike Reed",
        "email": "reed@google.com",
        "time": "Tue Jan 26 10:13:53 2010 -0500"
      },
      "committer": {
        "name": "Mike Reed",
        "email": "reed@google.com",
        "time": "Tue Jan 26 10:18:32 2010 -0500"
      },
      "message": "add API to change default config on image decoders.\n\nMay be called by the browser to get high-quality images when running in a 32bit window\n"
    },
    {
      "commit": "6dc9232c1c9a7ddffba24d4bd218e46894f8414d",
      "tree": "8aca139fa31fb04685cd61cdfc2075d9956cb615",
      "parents": [
        "48edf7c00201f2bc6186e07dbc614976642682e4",
        "a66baccc8fa9f6fa5f1630845e3c6370cb3418eb"
      ],
      "author": {
        "name": "Mike Reed",
        "email": "reed@google.com",
        "time": "Wed Jan 20 18:35:24 2010 -0800"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jan 20 18:35:24 2010 -0800"
      },
      "message": "am a66baccc: Merge \"Do not merge\" into eclair\n\nMerge commit \u0027a66baccc8fa9f6fa5f1630845e3c6370cb3418eb\u0027 into eclair-plus-aosp\n\n* commit \u0027a66baccc8fa9f6fa5f1630845e3c6370cb3418eb\u0027:\n  Do not merge\n"
    },
    {
      "commit": "12bcbdc681c3195069f55bd9abda900da0886c70",
      "tree": "7a5fc1154eb1c37e5f601896ac96aa2a7f082d67",
      "parents": [
        "9f954cf27e9e2bb94c836b1686c0e07500234b27"
      ],
      "author": {
        "name": "Mike Reed",
        "email": "reed@google.com",
        "time": "Wed Jan 20 09:38:04 2010 -0500"
      },
      "committer": {
        "name": "Mike Reed",
        "email": "reed@google.com",
        "time": "Wed Jan 20 16:27:36 2010 -0500"
      },
      "message": "Do not merge\n\nport stretchy from master\n"
    },
    {
      "commit": "ea87e96959895ef94cc3aa9576f41a660d2bbf03",
      "tree": "651c5131fada7c1a2ab55c71e3d6b71901f0832c",
      "parents": [
        "917cd4fcda61c63429d73639284f34bb85c97f37"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Tue Jan 12 12:12:28 2010 -0800"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Tue Jan 12 12:12:28 2010 -0800"
      },
      "message": "Implement type generation for user uniforms in vertex shader.\n"
    },
    {
      "commit": "6d7b907ab5c4580542426aa3ebd8ff275077c7c4",
      "tree": "4a3900f509891d950e649d06e81206c8beff9c6f",
      "parents": [
        "0caa13b257935d2ed436ed0b05f6144c5f48a23c",
        "74e02ef2000ff2783e526d6916e2f0b5d517593e"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Wed Jan 06 17:25:32 2010 -0800"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Wed Jan 06 17:25:32 2010 -0800"
      },
      "message": "Merge \"Support npot on es 2.0 HW.\""
    },
    {
      "commit": "74e02ef2000ff2783e526d6916e2f0b5d517593e",
      "tree": "cd25a361e97f0991b8222096623b23c2e58b2775",
      "parents": [
        "5e3f6caeb08c54fb79f427a528e084711652bbdb"
      ],
      "author": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Wed Jan 06 15:10:29 2010 -0800"
      },
      "committer": {
        "name": "Jason Sams",
        "email": "rjsams@android.com",
        "time": "Wed Jan 06 15:10:29 2010 -0800"
      },
      "message": "Support npot on es 2.0 HW.\n"
    }
  ],
  "next": "9027696bf01d712658db9ff3003d0c11a89ddc2a"
}
