)]}'
{
  "log": [
    {
      "commit": "91e88122cf28a48fd2e2260da7d3d87dd437227a",
      "tree": "b448f50dfd296574e5dabc6a9393624ad4a39868",
      "parents": [
        "bd029f64f2c695d49ea169f4c5c107e8172a1de5"
      ],
      "author": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Mon Jul 18 11:11:42 2011 +0900"
      },
      "committer": {
        "name": "satok",
        "email": "satok@google.com",
        "time": "Tue Jul 19 04:59:48 2011 +0900"
      },
      "message": "Enable IMEs to set additional subtypes in background\n\nBug: 4591792\n\nChange-Id: I7e61a576c56d1a3a56001bdf2fd51ad3801add01\n"
    },
    {
      "commit": "49062e3b4cae08e41a0fee5002eee50d58a827db",
      "tree": "eb8604fd9bf218162192b52ebd363aa2e667af30",
      "parents": [
        "c1df573aedd20e9ac862765d068cc4e8fcdda953",
        "b9eba866b203b28e58f35598023f49b4b58a0635"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Thu Jul 14 13:28:00 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jul 14 13:28:00 2011 -0700"
      },
      "message": "Merge \"Fix aidl to cope with multiple collection types per method.\""
    },
    {
      "commit": "37b3cc3bbe33df61f227bcf253aa67a4be441233",
      "tree": "a8886da36bc5f28705379761e7912f62d2ae5b58",
      "parents": [
        "fd909a774cb384b139c5e360cadb2681c3f48c29",
        "9163a4a686fc25fefc77d5b41c24a4538486a48e"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Wed Jul 13 14:53:54 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jul 13 14:53:54 2011 -0700"
      },
      "message": "am 9163a4a6: am aa4b1d8b: am d292d2a0: Merge 36a3a392 from mr1.\n\n* commit \u00279163a4a686fc25fefc77d5b41c24a4538486a48e\u0027:\n  Merge 36a3a392 from mr1.\n"
    },
    {
      "commit": "b9eba866b203b28e58f35598023f49b4b58a0635",
      "tree": "f32811a7b51001e4cd6e85fa44b0f199bf1e8a55",
      "parents": [
        "4a6d113ba0f33ce5dc14e59463e928ba309e1c2e"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Jul 13 12:10:30 2011 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Wed Jul 13 12:10:30 2011 -0700"
      },
      "message": "Fix aidl to cope with multiple collection types per method.\n\nBug: http://code.google.com/p/android/issues/detail?id\u003d18497\nChange-Id: I152416022524d2860cb16b46c4812c5be6bdcbad\n"
    },
    {
      "commit": "96131eef3869f2be1300e1620f5c3874b41bb534",
      "tree": "8c378e7302477213510655ec5b9bae290de9f744",
      "parents": [
        "0a49635b171f3ba366b1a7ebf28791c4661829bd"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Jul 12 12:35:50 2011 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Jul 12 12:35:50 2011 -0700"
      },
      "message": "LayoutLib: updated fake accessbility manager and ensure there\u0027s an InputMethodManager\n\nWe had replaced the accessibility Manager but it lacked some new API. Obvisouly\nthis is fragile and should be fixed, but this works for now.\n\nAfter fixing this there was another issue with the lack of InputMethodManager.\nTo fix this I had to create an implementation of IInputMethodManager which\nnormally comes from a binder object.\n\nI may want to do a similar trick with the accessibility manager later.\n\nChange-Id: I28c6494e333f39072f348d0199124efac93256a5\n"
    },
    {
      "commit": "0a49635b171f3ba366b1a7ebf28791c4661829bd",
      "tree": "5130ff1f492eb1b37beac8a72b1075099738cec4",
      "parents": [
        "77eaa10949dd47532e262f8e74ad5a1536a4952e"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Jul 12 11:39:27 2011 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Jul 12 11:49:22 2011 -0700"
      },
      "message": "LayoutLib: Delegate for Display and IWindowManager implementation.\n\nThis allows ViewConfiguration to be properly implemented which is now\nrequired for the rendering to happen.\n\nChange-Id: I55629689fa8f5f874b43fcac2aa0789ce02d58f4\n"
    },
    {
      "commit": "77eaa10949dd47532e262f8e74ad5a1536a4952e",
      "tree": "217612fa0ac7d51f66e235974287976be8e0a11a",
      "parents": [
        "5623b074977d55a61f29099f44670916c6282e51"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Mon Jul 11 14:32:26 2011 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Mon Jul 11 14:40:48 2011 -0700"
      },
      "message": "new button graphics for layoutlib.\n\nChange-Id: I12a6bf9df87552321452ca3344449814cd3102bb\n"
    },
    {
      "commit": "9163a4a686fc25fefc77d5b41c24a4538486a48e",
      "tree": "5ceb5620392bb3ffa4072e5899cb8a95a2a318d0",
      "parents": [
        "3b219a51a9d692807d3fb0f516df81609ca6e4fc",
        "aa4b1d8ba9d5e317b67638b764d92d17fb810aa0"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Mon Jul 11 12:46:07 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jul 11 12:46:07 2011 -0700"
      },
      "message": "am aa4b1d8b: am d292d2a0: Merge 36a3a392 from mr1.\n\n* commit \u0027aa4b1d8ba9d5e317b67638b764d92d17fb810aa0\u0027:\n  Merge 36a3a392 from mr1.\n"
    },
    {
      "commit": "d292d2a03134eaca8b51b6313610b4b78de53c83",
      "tree": "a9ab3c83b1b5b5ff11d3d5a8d65aac5b922fb288",
      "parents": [
        "3f3b8cbfa775f2ebff985c069300f8daaeb7a84c"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Fri Jul 08 11:55:00 2011 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Mon Jul 11 12:02:51 2011 -0700"
      },
      "message": "Merge 36a3a392 from mr1.\n\nProtect against OOB index in BridgeTypedArray.\n\nChange-Id: I40be1e039f9eb36c182b6522bd50d6ed98e15b5c\n"
    },
    {
      "commit": "b02367778d451e38509ca1fc3fbc1d01dce6af1e",
      "tree": "f12ac14175b927f9bf93b6bd95822c908f5aba97",
      "parents": [
        "996bdbaaf0b532c77c10a1efea3b17eb50f416db",
        "f9705ef6d3f1502991dd312bfdbfb93cb07fe672"
      ],
      "author": {
        "name": "Raphael Moll",
        "email": "ralf@android.com",
        "time": "Thu Jun 23 14:30:25 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jun 23 14:30:25 2011 -0700"
      },
      "message": "am f9705ef6: am 2b5f2d01: am e2b41b0d: Merge \"Laoutlib_creator: keep original of delegate methods.\"\n\n* commit \u0027f9705ef6d3f1502991dd312bfdbfb93cb07fe672\u0027:\n  Laoutlib_creator: keep original of delegate methods.\n"
    },
    {
      "commit": "f9705ef6d3f1502991dd312bfdbfb93cb07fe672",
      "tree": "d140e69c031dc236ed383df4b4fb091b79ba4fe9",
      "parents": [
        "4333de2a8e878b319c0e779942b87c042804d352",
        "2b5f2d01558ba338042f486c754f63873c4061fe"
      ],
      "author": {
        "name": "Raphael Moll",
        "email": "ralf@android.com",
        "time": "Wed Jun 22 18:05:22 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jun 22 18:05:22 2011 -0700"
      },
      "message": "am 2b5f2d01: am e2b41b0d: Merge \"Laoutlib_creator: keep original of delegate methods.\"\n\n* commit \u00272b5f2d01558ba338042f486c754f63873c4061fe\u0027:\n  Laoutlib_creator: keep original of delegate methods.\n"
    },
    {
      "commit": "2b5f2d01558ba338042f486c754f63873c4061fe",
      "tree": "17b56eb49a6383f0ca1d1f626a31bc85f1db0129",
      "parents": [
        "9e5d0de9a333683533a021e9733e824cac666d18",
        "e2b41b0d5c8db85a60cd190c7094052db61114b2"
      ],
      "author": {
        "name": "Raphael Moll",
        "email": "ralf@android.com",
        "time": "Wed Jun 22 17:44:29 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Jun 22 17:44:29 2011 -0700"
      },
      "message": "am e2b41b0d: Merge \"Laoutlib_creator: keep original of delegate methods.\"\n\n* commit \u0027e2b41b0d5c8db85a60cd190c7094052db61114b2\u0027:\n  Laoutlib_creator: keep original of delegate methods.\n"
    },
    {
      "commit": "98e1e18c1cc1ec98a20dbdf0e6497614aacf3d0a",
      "tree": "25d41dabda547c9e2a1a060d8720e8d3ee4de2be",
      "parents": [
        "8969d9924c662ab4cdacc342bbdc33756db730be"
      ],
      "author": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Wed Jun 22 11:35:11 2011 -0700"
      },
      "committer": {
        "name": "Brian Carlstrom",
        "email": "bdc@google.com",
        "time": "Wed Jun 22 11:35:11 2011 -0700"
      },
      "message": "Fix build.\n\ngit cherry-pick --no-commit  22a614142aacce13fc46a0e524dbfb6ca56bf237\n\nChange-Id: I1409bc3dd1f1b3027c12355e8b6aeffa2d857c83\n"
    },
    {
      "commit": "e86c5b2e9fe79f2a6f4187b6a4f2769c0b64168b",
      "tree": "607c8bedafd3f300962d776b97ee84a209917690",
      "parents": [
        "157c74e7ace77ae026cb59f48e400fb4ffe3c529",
        "fc511683b6647295cb645a0118d1b0afd575b3c3"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Jun 21 12:19:07 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jun 21 12:19:07 2011 -0700"
      },
      "message": "Merge \"Add missing delegate to the layoutlib.\""
    },
    {
      "commit": "3523325159c083140ba51d36f46270f6adddad77",
      "tree": "59e5bd628f656bd4adbc4d96b26cc517fd0c7836",
      "parents": [
        "31e92e4f19367bd791c1d962a2627f59eab2ab86",
        "01f0fd84d085f90ca73e9091618ab3d98b5e1c4a"
      ],
      "author": {
        "name": "Brett Chabot",
        "email": "brettchabot@android.com",
        "time": "Tue Jun 21 11:27:29 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Tue Jun 21 11:27:29 2011 -0700"
      },
      "message": "Merge \"Include testdata in layoutlib-tests.\""
    },
    {
      "commit": "fc511683b6647295cb645a0118d1b0afd575b3c3",
      "tree": "14d0c9916008cf406dc45c64ffd10f6e0c319de6",
      "parents": [
        "e2b801e5a437d75151d70a90e73f5f110d8732dd"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Jun 21 11:03:29 2011 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Jun 21 11:03:29 2011 -0700"
      },
      "message": "Add missing delegate to the layoutlib.\n\nChange-Id: I8de5c1093052c40c0cd327a4d02b01651d3b76b5\n"
    },
    {
      "commit": "45ccfa5870517374d06e1eec9f61947d8c00cb0d",
      "tree": "eade784b108e83e2ab5f6076b6ae897ca655b3ef",
      "parents": [
        "df02afe8355e1e7a6f8f02549f41a166c3ee6932"
      ],
      "author": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Mon Jun 20 15:41:08 2011 -0700"
      },
      "committer": {
        "name": "Ying Wang",
        "email": "wangying@google.com",
        "time": "Mon Jun 20 15:41:08 2011 -0700"
      },
      "message": "Output Proguard options for also overlay layouts.\n\nChange-Id: I7bfac476247bd7b532510e295cb1a3e61e9af88b\n"
    },
    {
      "commit": "865c3bef54228a353fd449a093b0c8d155618296",
      "tree": "c93e90facdad4fbabb288960427874bd6e7dd2bf",
      "parents": [
        "94062517ae5573f9a1a877a83fe7d8e6d1a2c350"
      ],
      "author": {
        "name": "Raphael Moll",
        "email": "ralf@android.com",
        "time": "Fri Jun 17 17:12:52 2011 -0700"
      },
      "committer": {
        "name": "Raphael Moll",
        "email": "ralf@android.com",
        "time": "Fri Jun 17 19:07:13 2011 -0700"
      },
      "message": "Laoutlib_creator: keep original of delegate methods.\n\nFor specific methods, Layoublib_create can rewrite the implementation\nof a method to invoke a delegate instead of the original code. This\nallows layoutlib to implement native code or override existing behavior.\n\nThis patch also \u0027saves\u0027 the original implementation of a rewritten\nmethod so that the delegate can access the original implementation\nas needed. Obviously this is only done for non-native methods.\n\nGiven a non-native SomeClass.MethodName, we generate 2 methods:\n- A copy of the original method named \"SomeClass.MethodName_original\".\n  The content is the original method as-is from the reader.\n- A brand new implementation of SomeClass.MethodName which calls to a\n  non-existing method named \"SomeClass_delegate.MethodName\".\n  The implementation of this \u0027delegate\u0027 method is done in layoutlib_brigde.\n\nChange-Id: I5ca2cd3ac55991a8e8a51c417e75ee447bf9e9e6\n"
    },
    {
      "commit": "01f0fd84d085f90ca73e9091618ab3d98b5e1c4a",
      "tree": "c87cda4143344bc8aa8dd7efab63432c9910611c",
      "parents": [
        "576715c75987b64eff120f8800862815753b0c8a"
      ],
      "author": {
        "name": "Brett Chabot",
        "email": "brettchabot@android.com",
        "time": "Fri Jun 17 17:03:20 2011 -0700"
      },
      "committer": {
        "name": "Brett Chabot",
        "email": "brettchabot@android.com",
        "time": "Fri Jun 17 17:03:20 2011 -0700"
      },
      "message": "Include testdata in layoutlib-tests.\n\nChange-Id: I79fff895a13d171079b59db54d4b9d2bec555b3c\n"
    },
    {
      "commit": "4bd44535feac75fffd2c941183de02c983523f43",
      "tree": "cab8c964d724ce31c440cb0e728da86a880b5155",
      "parents": [
        "e472fd2b31bef91eb7f66d8ae0b78144b1a2928e",
        "810dc5980c504a89974c07fcbd28a2b5dffb47de"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jun 16 14:57:59 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jun 16 14:57:59 2011 -0700"
      },
      "message": "am 810dc598: am f1c5dbbd: am abd4dffc: Merge \"New orientation handling.  Only impacts SDK (aapt dump badging).\" into honeycomb-mr2\n\n* commit \u0027810dc5980c504a89974c07fcbd28a2b5dffb47de\u0027:\n  New orientation handling.  Only impacts SDK (aapt dump badging).\n"
    },
    {
      "commit": "810dc5980c504a89974c07fcbd28a2b5dffb47de",
      "tree": "7c8fa7a76e24224320d1a6c1d0cf14c686a0acc1",
      "parents": [
        "9bf1a0c3c7e3c26df170519867c5daeee959791e",
        "f1c5dbbd457bb14d3673508aaba497cdc328a1ef"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jun 16 14:55:01 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jun 16 14:55:01 2011 -0700"
      },
      "message": "am f1c5dbbd: am abd4dffc: Merge \"New orientation handling.  Only impacts SDK (aapt dump badging).\" into honeycomb-mr2\n\n* commit \u0027f1c5dbbd457bb14d3673508aaba497cdc328a1ef\u0027:\n  New orientation handling.  Only impacts SDK (aapt dump badging).\n"
    },
    {
      "commit": "abd4dffc86202d48e50bd21807574fa861854dca",
      "tree": "614575f50f679c7eff2edda86886519a6cece22b",
      "parents": [
        "6b93f976c0cec32be39b3a17ea8195c4ac6b8052",
        "f77ae6e65a7ab47e7ab0ee1536d708b6e56fe45b"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jun 16 14:47:53 2011 -0700"
      },
      "committer": {
        "name": "Android (Google) Code Review",
        "email": "android-gerrit@google.com",
        "time": "Thu Jun 16 14:47:53 2011 -0700"
      },
      "message": "Merge \"New orientation handling.  Only impacts SDK (aapt dump badging).\" into honeycomb-mr2"
    },
    {
      "commit": "9340ab4a213093bd59c79159011d131c9cd6996f",
      "tree": "69475f53306882ab8fcafba7dcb94cbade1c6cc2",
      "parents": [
        "da672372253002f06085ec6eace38b2fafe0f256",
        "0be8522b430aca8d90023d7c7e5ef510aa48adc7"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Thu Jun 16 14:04:18 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jun 16 14:04:18 2011 -0700"
      },
      "message": "am 0be8522b: am d1abd94f: am 04ce8111: Bring in more layout lib changes from hc-mr1.\n\n* commit \u00270be8522b430aca8d90023d7c7e5ef510aa48adc7\u0027:\n  Bring in more layout lib changes from hc-mr1.\n"
    },
    {
      "commit": "0be8522b430aca8d90023d7c7e5ef510aa48adc7",
      "tree": "e9b8f0d0cb62dd30d41334c8699e365eb94de257",
      "parents": [
        "241b65aca93e263f0869c5bec4ad1dbda0dec6db",
        "d1abd94f57c0162186c57aea98790e8fa281e0a2"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Thu Jun 16 13:55:30 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jun 16 13:55:30 2011 -0700"
      },
      "message": "am d1abd94f: am 04ce8111: Bring in more layout lib changes from hc-mr1.\n\n* commit \u0027d1abd94f57c0162186c57aea98790e8fa281e0a2\u0027:\n  Bring in more layout lib changes from hc-mr1.\n"
    },
    {
      "commit": "04ce81113107d2bfa0b8248b13145b4cf24cb943",
      "tree": "a9715c622a2b04360a8f47fb3a166fd5047b193f",
      "parents": [
        "8e18668d14adf601cbe5973030c310ec23d88461"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Thu Jun 09 19:14:06 2011 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Thu Jun 16 13:23:53 2011 -0700"
      },
      "message": "Bring in more layout lib changes from hc-mr1.\n\nfe051bb2 : Change the way the layoutlib instantiate its XmlPullParser.\n\nA lot of the init code was duplicated so I made a ParserFactory class.\n\nAlso created an extension of the KXmlPullParser to override toString().\nThis allows easier debugging when dealing with multiple parsers (which\nis always the case).\n\nAlso added some (disabled) debugging printf to deal with parser stack\nas it can be tricky figuring out which parsers are in the stack at\nwhich point.\n\n8969147c : Fix case where the int[] attrs doesn\u0027t directly match a styleable.\n\nIn the case of the FastScroller the int[] is a custom mix of attr\ninstead of a int[] that exists as R.styleable.foo.\n\nThis makes our reflection based mechanism used to find the styleable\nfail, so instead we search for each attribute separately (like\nwe probably should have done from the beginning).\n\n0c264b35: Fix various cases of getDimension to report error if unit is missing.\n\nif getDimention###() is called for a string that has no unit,\nthen an error is output through LayoutLog, but the rendering keeps\ngoing by using dp as a default.\n\n0beb7eea: Make (Bridge)TypedArray.getInteger() call out to getInt()\n\nOnly getInt() resolved attribute flags/enum and I\u0027m not sure why\nthere\u0027s two to begin with.\n"
    },
    {
      "commit": "f77ae6e65a7ab47e7ab0ee1536d708b6e56fe45b",
      "tree": "05debb40d686a7085287f9e8eeacb7ab89794813",
      "parents": [
        "8e18668d14adf601cbe5973030c310ec23d88461"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jun 16 11:11:23 2011 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jun 16 11:13:20 2011 -0700"
      },
      "message": "New orientation handling.  Only impacts SDK (aapt dump badging).\n\nThis is a new way of determining whether an application requires\nspecific orientations, done by looking at any requirements in its\nactivity tags.  Note that this won\u0027t catch all possible issues,\nbecause applications can still force an orientation through Java\nAPIs, but the vast majority of applications that actually require\na specific orientation should be doing it this way because it the\neasiest way and the only way to cleanly launch into the app from\na different orientation without doing some serious activity tricks.\n\nChange-Id: I11d32104f6bc3d2a72aeeff1ca150b8f1c9f5588\n"
    },
    {
      "commit": "66743a1ec0dddadec7cd8f026f9b6a2239f515be",
      "tree": "58668aa8482b43977d7eb5f36d3c3d2c5ea2eee1",
      "parents": [
        "f71e5469441286c6f466043e64a7f6492557cbd9"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Wed Jun 15 14:43:42 2011 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Wed Jun 15 14:43:42 2011 -0700"
      },
      "message": "Fix changed native method delegates in layoutlib for ICS.\n\nChange-Id: I49306868cd8a41b6b7d919c3e8b108d5c014530e\n"
    },
    {
      "commit": "711516d140390aeec9e3eefb8fdb2681c3454980",
      "tree": "f73caa003154567d63dfa36089d443f51bed52df",
      "parents": [
        "f0b517d9d287e86e6e57a372ddcb070cec1fe1c0",
        "77fc8b8066709a1d09a159901fd65c49b5e6eaa5"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Jun 14 12:17:35 2011 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Jun 14 12:17:35 2011 -0700"
      },
      "message": "resolved conflicts for merge of 77fc8b80 to master\n\nChange-Id: I014f9a886d6f05607d2a5d101ad2052a6841ee8d\n"
    },
    {
      "commit": "77fc8b8066709a1d09a159901fd65c49b5e6eaa5",
      "tree": "5a7b35359f2f30947331667e5acbddab9140d558",
      "parents": [
        "aabe5f46846a45163be874dca2d19910ce38c232",
        "6c0533f994e7991b3bd60cab48362e8e2e6d86f0"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Jun 14 11:40:06 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jun 14 11:40:06 2011 -0700"
      },
      "message": "am 6c0533f9: am c5193c62: Merge \"Add new landscape and portrait orientation features.\" into honeycomb-mr2\n\n* commit \u00276c0533f994e7991b3bd60cab48362e8e2e6d86f0\u0027:\n  Add new landscape and portrait orientation features.\n"
    },
    {
      "commit": "e289bff0ec2b1af4ba773e0c8d49d5fd46eb9921",
      "tree": "4103ae9dc1838be1f61c0562fadbff9039949b50",
      "parents": [
        "fd63814abe8e81d5e1e0eb75b5a5a18034e9b4c6"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon Jun 13 19:33:22 2011 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue Jun 14 11:23:52 2011 -0700"
      },
      "message": "Add new landscape and portrait orientation features.\n\nUpdates aapt to know about these.  Also updates aapt badging to:\n\n- No longer crash due to the change to how we match unspecified\nconfiguration resources.\n- Report the new \"smallest screen\" supported screen configs.\n- Infer old screen size buckets based on new smallest width attrs.\n- Report all of the different labels and icons in an app.\n\nChange-Id: I7376042b817391bd070f549cebbc7f03be4635c8\n"
    },
    {
      "commit": "ef42dace44f7009b99afe532be2a6fffc802bc41",
      "tree": "fc4d431841ef349145f98d67ba336bdaacd1f847",
      "parents": [
        "e14674d51555e7c270fb10e465e906fc1b0cd607",
        "f14dff1219d2a87340dccad657f666f5451d8c6e"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jun 10 14:08:41 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jun 10 14:08:41 2011 -0700"
      },
      "message": "am f14dff12: am c6adfed6: am f795e9a8: Okay *now* really enforce the limit on non-public styles.\n\n* commit \u0027f14dff1219d2a87340dccad657f666f5451d8c6e\u0027:\n  Okay *now* really enforce the limit on non-public styles.\n"
    },
    {
      "commit": "173e4c79b4eced0e155c8b31496eb3815ed3571c",
      "tree": "e8f06602b2a1ff072bd00150eb916bedce8d861a",
      "parents": [
        "32ed8448d20b7b69afc2590eed60163d80e818fe",
        "9980043e930f877c4cd066de2b3d57dce4fc926e"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jun 10 13:00:41 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jun 10 13:00:41 2011 -0700"
      },
      "message": "am 9980043e: am 820caf7b: am 8821ba86: Ummm...  f*, stop breaking the build.\n\n* commit \u00279980043e930f877c4cd066de2b3d57dce4fc926e\u0027:\n  Ummm...  f*, stop breaking the build.\n"
    },
    {
      "commit": "6b592723c9a9fc816a8ab75c935e8cd20ff65a0e",
      "tree": "00b93945a1c8051172316575208f14c355e663c3",
      "parents": [
        "08b992c88e60a95b629a70cd197b3d3b9b27fb8d",
        "f51ded0f8f593d17af82946eb65c05fc04f688b4"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jun 10 12:45:36 2011 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jun 10 12:45:36 2011 -0700"
      },
      "message": "resolved conflicts for merge of f51ded0f to master\n\nChange-Id: Ida356524a68aeb2b9b0013dfbb6ab4bd11e616e2\n"
    },
    {
      "commit": "2dcb6e80b999d93409e66bbd01b94a419c22013c",
      "tree": "445f90a614ca22ef16487caa717226ddb7387885",
      "parents": [
        "8c6d777da0e96b9ed5f0e2c1e643e767b17cb9e1",
        "48305f327ff3839ddbfa5a6fb42a57150a69480c"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Fri Jun 10 10:31:52 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jun 10 10:31:52 2011 -0700"
      },
      "message": "am 48305f32: am 2e0f7118: am 8ee28811: Merge changes Idbb70f53,I10426a3f into honeycomb-mr2\n\n* commit \u002748305f327ff3839ddbfa5a6fb42a57150a69480c\u0027:\n  Merge 06942bc4 from hc-mr1.\n  Merge 988eeeb5 from hc-mr1.\n"
    },
    {
      "commit": "f14dff1219d2a87340dccad657f666f5451d8c6e",
      "tree": "32b39d7d93170aed01c11e7353afc53a2b306cb4",
      "parents": [
        "9980043e930f877c4cd066de2b3d57dce4fc926e",
        "c6adfed6dcea8482e482db58bd396ea8de08426a"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri Jun 10 07:45:38 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri Jun 10 07:45:38 2011 -0700"
      },
      "message": "am c6adfed6: am f795e9a8: Okay *now* really enforce the limit on non-public styles.\n\n* commit \u0027c6adfed6dcea8482e482db58bd396ea8de08426a\u0027:\n  Okay *now* really enforce the limit on non-public styles.\n"
    },
    {
      "commit": "9980043e930f877c4cd066de2b3d57dce4fc926e",
      "tree": "75a6babdf701437e03d87c98e02f6ffb706ba8ff",
      "parents": [
        "f51ded0f8f593d17af82946eb65c05fc04f688b4",
        "820caf7b04f1e5c83599437e9e783e91322eb4f9"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jun 09 16:18:07 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jun 09 16:18:07 2011 -0700"
      },
      "message": "am 820caf7b: am 8821ba86: Ummm...  f*, stop breaking the build.\n\n* commit \u0027820caf7b04f1e5c83599437e9e783e91322eb4f9\u0027:\n  Ummm...  f*, stop breaking the build.\n"
    },
    {
      "commit": "f795e9a86d4f62e5314ef95978c3ea17d90975db",
      "tree": "6823d69078ce14eb0aeffd2fd774cea163a52263",
      "parents": [
        "8821ba860693f5206c56ae727a4231e4d6f0a735"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jun 09 16:17:53 2011 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jun 09 16:17:53 2011 -0700"
      },
      "message": "Okay *now* really enforce the limit on non-public styles.\n\nChange-Id: Ie8df6acf7cc3dec00f615b2fa9a5122ec79a0aae\n"
    },
    {
      "commit": "8821ba860693f5206c56ae727a4231e4d6f0a735",
      "tree": "e9184a6f581738ecd6ffc406b73fda17d3625309",
      "parents": [
        "220cd77de62956eb76c5084e1d1341d69bfd214a"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jun 09 11:29:08 2011 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jun 09 16:09:15 2011 -0700"
      },
      "message": "Ummm...  f*, stop breaking the build.\n\nChange-Id: I6a42cb60e7cebda6d17222e6af1f327889323c40\n"
    },
    {
      "commit": "f51ded0f8f593d17af82946eb65c05fc04f688b4",
      "tree": "32b39d7d93170aed01c11e7353afc53a2b306cb4",
      "parents": [
        "5a8455c3c625201f3ae6b9ce32913bf97ba61cc8",
        "a8d7ea067cf22baeee2ff0a33e5a8c5a35936942"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jun 09 16:06:07 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jun 09 16:06:07 2011 -0700"
      },
      "message": "am a8d7ea06: am 220cd77d: Merge \"Enforce public resource restriction on bag parents.\" into honeycomb-mr2\n\n* commit \u0027a8d7ea067cf22baeee2ff0a33e5a8c5a35936942\u0027:\n  Enforce public resource restriction on bag parents.\n"
    },
    {
      "commit": "426431adcc220b6adfbe1d9530247f897e60fa36",
      "tree": "e9dd34ae5151de5bf9f57edb3055d0d228e1f006",
      "parents": [
        "1d3173c3dc93bb4f2efc5b059fec8e7577b3258a"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jun 09 11:29:08 2011 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jun 09 15:27:39 2011 -0700"
      },
      "message": "Enforce public resource restriction on bag parents.\n\nNeed to put some more styles in the SDK to avoid breaking apps.\n\nAlso, welcome Android 3.2.\n\nChange-Id: Ia31d07c9b1b91ad868d8630437fdc1b5ae24f37d\n"
    },
    {
      "commit": "48305f327ff3839ddbfa5a6fb42a57150a69480c",
      "tree": "49aebd86c071ec847afedabd909a4080ca30c56e",
      "parents": [
        "e668c0b69896996040f394e0a95f71dd4b9c6257",
        "2e0f71181792780b55826bcc562ae79951e76f1b"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Thu Jun 09 12:49:55 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Jun 09 12:49:55 2011 -0700"
      },
      "message": "am 2e0f7118: am 8ee28811: Merge changes Idbb70f53,I10426a3f into honeycomb-mr2\n\n* commit \u00272e0f71181792780b55826bcc562ae79951e76f1b\u0027:\n  Merge 06942bc4 from hc-mr1.\n  Merge 988eeeb5 from hc-mr1.\n"
    },
    {
      "commit": "45b662e1bcff23dc59fb3a47bc32c99e63b2ac35",
      "tree": "43cf38fd15a568b875a029c83a4c15f9a6280abe",
      "parents": [
        "beb5fb622b71693c21b6fab562a98e7000c64273"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Jun 07 17:48:35 2011 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Wed Jun 08 17:11:40 2011 -0700"
      },
      "message": "Merge 06942bc4 from hc-mr1.\n\nLayoutlib - use the new getParser callback when possible.\n\nChange-Id: Idbb70f5391addd539afa5c2f5b55c70beefed223\n"
    },
    {
      "commit": "beb5fb622b71693c21b6fab562a98e7000c64273",
      "tree": "2363646dabecde6e300f2483625e5b0d401f4e0a",
      "parents": [
        "cea03df201dc6659654234bc5fbfebf1b6a06e42"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Jun 07 17:03:10 2011 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Wed Jun 08 17:10:11 2011 -0700"
      },
      "message": "Merge 988eeeb5 from hc-mr1.\n\nSupport for custom declare-styleable attr with enum/flag in layoutlib.\n\nChange-Id: I10426a3f2c76bed207c03fab7885b4269337a70f\n"
    },
    {
      "commit": "f18e311ee5d35db0cae96f0b216a88e5b42604dc",
      "tree": "60ddaf1c2c9936d4711c93a82705cdd325e1fa53",
      "parents": [
        "c8307c885f8462f2baf9f06c9916d1521f7fdcfb",
        "abc838716816107754ab0479242d03807ce79fc2"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Jun 07 17:17:11 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue Jun 07 17:17:11 2011 -0700"
      },
      "message": "am abc83871: am f6e47999: am 2a6dc7f1: Merge \"Import the Layoutlib from hc-mr1.\" into honeycomb-mr2\n\n* commit \u0027abc838716816107754ab0479242d03807ce79fc2\u0027:\n  Import the Layoutlib from hc-mr1.\n"
    },
    {
      "commit": "abc838716816107754ab0479242d03807ce79fc2",
      "tree": "bef8829598097960aa0fe3714e98fad27bb141ef",
      "parents": [
        "cf3036ebef2929f84bc4e34ed1e9d96eefd6a5e7",
        "f6e479993e7c85265692829990ceb3879fbce424"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Mon Jun 06 18:11:33 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jun 06 18:11:33 2011 -0700"
      },
      "message": "am f6e47999: am 2a6dc7f1: Merge \"Import the Layoutlib from hc-mr1.\" into honeycomb-mr2\n\n* commit \u0027f6e479993e7c85265692829990ceb3879fbce424\u0027:\n  Import the Layoutlib from hc-mr1.\n"
    },
    {
      "commit": "67f09cd090adae6365ca36546b0a517e51255876",
      "tree": "b791f629d87bd1d47f4c5494a3183b27a9496de5",
      "parents": [
        "ab3f5779aecb46d7ddfb141f9b0ff8fc0eaed17f",
        "d6ce6791f26fd0a7cf89ded2847011a4894013e1"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Mon Jun 06 18:08:40 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jun 06 18:08:40 2011 -0700"
      },
      "message": "am d6ce6791: Merge \"Cherrypick d1ed33c4 from hc-mr1. do not merge.\" into gingerbread\n\n* commit \u0027d6ce6791f26fd0a7cf89ded2847011a4894013e1\u0027:\n  Cherrypick d1ed33c4 from hc-mr1. do not merge.\n"
    },
    {
      "commit": "ab3f5779aecb46d7ddfb141f9b0ff8fc0eaed17f",
      "tree": "4c4f5f9996e54d578e17146a26686d630c5872ce",
      "parents": [
        "fbef58faad5a31faf36294e4d160cbd148ed5458",
        "ee1b497648a0c3c03b09c4739619f23315d491fb"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Mon Jun 06 18:08:32 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Jun 06 18:08:32 2011 -0700"
      },
      "message": "am ee1b4976: Merge changes I035c48b9,Ib302af47,Iebda5ea6 into gingerbread\n\n* commit \u0027ee1b497648a0c3c03b09c4739619f23315d491fb\u0027:\n  Cherrypick 5b61ea6b from hc-mr1\n  LayoutLib: enable the LAYOUT_ONLY capability.\n  Merge dba35f1b from honeycomb-mr1. do not merge.\n"
    },
    {
      "commit": "fb93ce9684120a36862b5b5e67b1865a652907e9",
      "tree": "41238180f5a041996b7f7f8204c2b33f3d8ef20a",
      "parents": [
        "bd754205d0b59315582855329649dad925a04b82"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Fri Jun 03 19:38:03 2011 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Fri Jun 03 19:38:14 2011 -0700"
      },
      "message": "Import the Layoutlib from hc-mr1.\n\nThis is squash commit of all the missing patches.\n\nChange-Id: Ie081c46a173290646deddbde503a720d50c4400f\n"
    },
    {
      "commit": "156a211b21fbaeb6391162a056390b9cd8748fae",
      "tree": "8160f75bb58fa7317256f1ba09530573686ef9f9",
      "parents": [
        "21726044a934f3f4f9827a05bbc8db2477220fa1"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Fri Jun 03 17:25:48 2011 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Fri Jun 03 18:37:09 2011 -0700"
      },
      "message": "Cherrypick d1ed33c4 from hc-mr1. do not merge.\n\nFix zombie threads in the Layoutlib.\n\nSome widgets can create (indirectly) HandlerThread which are started\nbut never stopped.\n\nThis patch use the delegate methods to override the thread run method\nto record which threads are started to be able to call quit() on them\nafter a render.\n\nNote that we should really fix layoutlib_create to be able to call\nthe default implementation from a delegate to remove code duplication.\n\nChange-Id: Iaf5432623e9704bb3114a8e0583c8553282c205e\n"
    },
    {
      "commit": "21726044a934f3f4f9827a05bbc8db2477220fa1",
      "tree": "0ac69160ec926901c026f6990983931fb12495bf",
      "parents": [
        "f174cd86bd70c1f1322cc15f42d5fd87223933a0"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Fri Jun 03 15:21:53 2011 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Fri Jun 03 16:02:12 2011 -0700"
      },
      "message": "Cherrypick 5b61ea6b from hc-mr1\n\nFix drawCircle in layoutlib.\n\nChange-Id: I035c48b925cad246ed821e9e59a93d37174982ef\n"
    },
    {
      "commit": "8a7d44e8248cf7078da6094068b039dacc0a3971",
      "tree": "dbb6847bc8af2033321069e3ff1a2e0506f0ba14",
      "parents": [
        "0e5e16a656b0002f377f1bcda2e43a97206e4046",
        "54cb63e26e41b80c013b8665878b9c7c7fb328c1"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jun 02 16:44:52 2011 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu Jun 02 16:44:52 2011 -0700"
      },
      "message": "resolved conflicts for merge of 54cb63e2 to master\n\nChange-Id: I5b741a1781e3f76c03fc1534ffce871117effd10\n"
    },
    {
      "commit": "f174cd86bd70c1f1322cc15f42d5fd87223933a0",
      "tree": "774eca350a4429c0d87f693c229766eb8e39370b",
      "parents": [
        "8f17523dcac41f5a8962cfb61265c71ad0c0e463"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Thu Jun 02 16:38:38 2011 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Thu Jun 02 16:38:38 2011 -0700"
      },
      "message": "LayoutLib: enable the LAYOUT_ONLY capability.\n\nChange-Id: Ib302af47d2a83a7ac3def6256bf0b892823f594f\n"
    },
    {
      "commit": "8f17523dcac41f5a8962cfb61265c71ad0c0e463",
      "tree": "71e8272a956bc8245222c361ae731e08cf8e09bc",
      "parents": [
        "0aa1017f9183bca752c95af72f73120e102ab2d3"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Wed Jun 01 17:39:32 2011 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Wed Jun 01 18:32:57 2011 -0700"
      },
      "message": "Merge dba35f1b from honeycomb-mr1. do not merge.\n\nChange-Id: Iebda5ea67fd40cac76a8ca3fe3c3cd4ee95ddebe\nLayoutLib: Properly configure KXmlParser to read UTF8\n"
    },
    {
      "commit": "54cb63e26e41b80c013b8665878b9c7c7fb328c1",
      "tree": "a3c15960d5aef66a6df3370cb5ad0b12a9fa1dee",
      "parents": [
        "da9837fb61c8aa53c67921682016d97655332089",
        "528c49f112dce5f9687f30a9751e783196eca0c6"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri May 27 14:27:46 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri May 27 14:27:46 2011 -0700"
      },
      "message": "am 528c49f1: am b96cbbd1: Add \"tv\" density for 720p screens.\n\n* commit \u0027528c49f112dce5f9687f30a9751e783196eca0c6\u0027:\n  Add \"tv\" density for 720p screens.\n"
    },
    {
      "commit": "b96cbbd11c4590bec846212c33361e02293f18b5",
      "tree": "ac02f12136339bb608c07d8b26eaae1cddccf792",
      "parents": [
        "ff7622992f39d8e401ab23c5ce6a84f318906e52"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri May 27 13:40:26 2011 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri May 27 13:40:26 2011 -0700"
      },
      "message": "Add \"tv\" density for 720p screens.\n\nChange-Id: I028969b007f2fceea66947d77a2ae31ef1d1a630\n"
    },
    {
      "commit": "7d0fb57044576fd4bbaf9683997bab288c3b759c",
      "tree": "e5a83713aaaf0d82170bba4da24f32b5f7465f39",
      "parents": [
        "4e3ba25cc718bbc6db0a332c4105debc4b3552d3",
        "16330e249663fed890df0e95fce4016c2971120a"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Wed May 25 14:42:06 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed May 25 14:42:06 2011 -0700"
      },
      "message": "am 16330e24: am 94e838f6: Merge \"Improve VelocityTracker numerical stability. (DO NOT MERGE)\" into honeycomb-mr2\n\n* commit \u002716330e249663fed890df0e95fce4016c2971120a\u0027:\n  Improve VelocityTracker numerical stability. (DO NOT MERGE)\n"
    },
    {
      "commit": "228e4716278f450a95be5addacc3c6c940668493",
      "tree": "9401dd7577be6c74c5eff3028a46be42e80fcbc9",
      "parents": [
        "af83d4ecff0ad1638a1a0f3a3f9805468ed710b4",
        "34f5991ebe8b203f1720caf95889c15dd131d86e"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue May 24 12:28:38 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue May 24 12:28:38 2011 -0700"
      },
      "message": "am 34f5991e: Merge 6103e22c from honeycomb-mr1. do not merge.\n\n* commit \u002734f5991ebe8b203f1720caf95889c15dd131d86e\u0027:\n  Merge 6103e22c from honeycomb-mr1. do not merge.\n"
    },
    {
      "commit": "e2c7715c772d5121397591b532d04a31b3ffcc99",
      "tree": "a528b89349ba2b367aeae8b442b5c696a7c8c99e",
      "parents": [
        "6895c4994350bc10a06481ecf42c4ba8abb3eedb",
        "bbca81334e3603c7328dc526bd63032b23d5261d"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue May 24 11:27:11 2011 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Tue May 24 11:27:11 2011 -0700"
      },
      "message": "resolved conflicts for merge of bbca8133 to master\n\nChange-Id: I81493674dceab848e41d380a77a37e5a9be06db6\n"
    },
    {
      "commit": "34f5991ebe8b203f1720caf95889c15dd131d86e",
      "tree": "373d328201332a614bf871f051505d9d00a6bcdc",
      "parents": [
        "c7b87766b21fe5cf2f644efa8753b936d413dc9a"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Mon May 23 19:07:18 2011 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue May 24 10:55:30 2011 -0700"
      },
      "message": "Merge 6103e22c from honeycomb-mr1. do not merge.\n\nLayoutLib: custom styles override the default style instead of replacing it.\n\nIntead of reading either the custom or the default style for a widget, we\nread both and use the values from the custom style if it exists, or\nfrom the default style otherwise.\n\nChange-Id: Ibcec2e9b1e8a95295ab26ede145c287ff2f30be4\n"
    },
    {
      "commit": "af83d4ecff0ad1638a1a0f3a3f9805468ed710b4",
      "tree": "1710ee0a1548b01ce34f9b0d95ce3c8004c52950",
      "parents": [
        "a38fad37c21a13ddf1cc14e5a960f395af558ee8",
        "c7b87766b21fe5cf2f644efa8753b936d413dc9a"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue May 24 10:54:35 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Tue May 24 10:54:35 2011 -0700"
      },
      "message": "am c7b87766: Merge 2402ad60 from honeycomb-mr1. do not merge.\n\n* commit \u0027c7b87766b21fe5cf2f644efa8753b936d413dc9a\u0027:\n  Merge 2402ad60 from honeycomb-mr1. do not merge.\n"
    },
    {
      "commit": "c7b87766b21fe5cf2f644efa8753b936d413dc9a",
      "tree": "4655c3dcd0de4b9466d4e7e3eb77c12d1deb422e",
      "parents": [
        "4e4ad34159dc1c720a3e6145bb9f14c60fb1a3f7"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Mon May 23 16:43:57 2011 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Mon May 23 17:51:22 2011 -0700"
      },
      "message": "Merge 2402ad60 from honeycomb-mr1. do not merge.\n\nLayoutLib: Fix Canvas_Delegate.native_concat().\n\nChange-Id: I863c43d65a929816ac7c9e69addcc647dac1878b\n"
    },
    {
      "commit": "5b2b4d9c0a56c4b5e869c828a6c36a1b9e27d61b",
      "tree": "0e00adeba7368949783dd598b57b70a4936f8e9b",
      "parents": [
        "96ad3979f328a1aa098917ca1c35575e85345526"
      ],
      "author": {
        "name": "Jeff Brown",
        "email": "jeffbrown@google.com",
        "time": "Mon Mar 14 19:39:54 2011 -0700"
      },
      "committer": {
        "name": "Jeff Brown",
        "email": "jeffbrown@android.com",
        "time": "Mon May 23 17:19:59 2011 -0700"
      },
      "message": "Improve VelocityTracker numerical stability. (DO NOT MERGE)\n\nReplaced VelocityTracker with a faster and more accurate\nnative implementation.  This avoids the duplicate maintenance\noverhead of having two implementations.\n\nThe new algorithm requires that the sample duration be at least\n10ms in order to contribute to the velocity calculation.  This\nensures that the velocity is not severely overestimated when\nsamples arrive in bursts.\n\nThe new algorithm computes the exponentially weighted moving\naverage using weights based on the relative duration of successive\nsample periods.\n\nThe new algorithm is also more careful about how it handles\nindividual pointers going down or up and their effects on the\ncollected movement traces.  The intent is to preserve the last\nknown velocity of pointers as they go up while also ensuring\nthat other motion samples do not count twice in that case.\n\nBug: 4086785\nChange-Id: I95054102397c4b6a9076dc6a0fc841b4beec7920\n"
    },
    {
      "commit": "bbca81334e3603c7328dc526bd63032b23d5261d",
      "tree": "c29dd1ed7c2119cd50bbc4e56be9ee36d89891c7",
      "parents": [
        "98a8231e838d7d624c5862d81d1975ef4f8d0d57",
        "4bb78889d04594c01a6af7f6d38c1764e9f575f9"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon May 23 16:16:54 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon May 23 16:16:54 2011 -0700"
      },
      "message": "am 4bb78889: am 40277df7: Merge \"Add \"television\" mode.\" into honeycomb-mr2\n\n* commit \u00274bb78889d04594c01a6af7f6d38c1764e9f575f9\u0027:\n  Add \"television\" mode.\n"
    },
    {
      "commit": "e360bb6bd8ea84b8d37604fc11dfc744b18fb0de",
      "tree": "7e833a630e8108be1345d8595438eea5a30e7173",
      "parents": [
        "1b144e625fb0d34cd680c44cbcfb2deb8a76d4c6"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri May 20 16:11:04 2011 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Mon May 23 15:11:08 2011 -0700"
      },
      "message": "Add \"television\" mode.\n\nChange-Id: Ida1fdb61b036a8b489dbeda196fb4bc82e651b2b\n"
    },
    {
      "commit": "5b9ec6871afaf40325abe602cd1d29ddbd88cbb9",
      "tree": "bf01111cc496cf7a819b903fb157dd5fdd6c1143",
      "parents": [
        "041fd74beade4e95cff6157af9dadbf9a99b7fcf",
        "4c1e73b69a13a4f24a8fc123f599a9e9d8505525"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Mon May 23 09:52:55 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon May 23 09:52:55 2011 -0700"
      },
      "message": "am 4c1e73b6: Merge e57aa434 from honeycomb-mr1. do not merge.\n\n* commit \u00274c1e73b69a13a4f24a8fc123f599a9e9d8505525\u0027:\n  Merge e57aa434 from honeycomb-mr1. do not merge.\n"
    },
    {
      "commit": "041fd74beade4e95cff6157af9dadbf9a99b7fcf",
      "tree": "859be7bdb276321a9bc76e04b82e98c984533f6f",
      "parents": [
        "9d9a7466cd051748ba656acd39265099294c4153",
        "f791863f0ac67ab6abd7410d5807d716cffc5b72"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Mon May 23 09:52:52 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon May 23 09:52:52 2011 -0700"
      },
      "message": "am f791863f: Merge \"Merge 05b7b69c from honeycomb-mr1. do not merge.\" into gingerbread\n\n* commit \u0027f791863f0ac67ab6abd7410d5807d716cffc5b72\u0027:\n  Merge 05b7b69c from honeycomb-mr1. do not merge.\n"
    },
    {
      "commit": "9d9a7466cd051748ba656acd39265099294c4153",
      "tree": "169fdf062bd009c1d46fab2492641681e481ef9f",
      "parents": [
        "d1735ef91af201ff140f8d954dd07eff80836d20",
        "bb43828aa749e71d4e52ba69db01b83c83a755b5"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Mon May 23 09:52:41 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon May 23 09:52:41 2011 -0700"
      },
      "message": "am bb43828a: Merge \"Merge 2fae858d from Honeycomb-mr1. do not merge.\" into gingerbread\n\n* commit \u0027bb43828aa749e71d4e52ba69db01b83c83a755b5\u0027:\n  Merge 2fae858d from Honeycomb-mr1. do not merge.\n"
    },
    {
      "commit": "4c1e73b69a13a4f24a8fc123f599a9e9d8505525",
      "tree": "8f4ce5d09c152fee925aec054df1411294f65558",
      "parents": [
        "f791863f0ac67ab6abd7410d5807d716cffc5b72"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Thu May 19 20:34:28 2011 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Fri May 20 14:50:45 2011 -0700"
      },
      "message": "Merge e57aa434 from honeycomb-mr1. do not merge.\n\nLayoutLib: Fix issue where \u003cinclude\u003e with no layout params wouldn\u0027t display.\n\nThe issue is that the layout params from the root element of the included\nlayout should be used but this failed because loading the layout params\nfrom the \u003cinclude\u003e tag didn\u0027t throw a RuntimeException in our modified\ncode (BridgeTypedArray).\n\nBecause we don\u0027t want to throw exception in general we only throw it\nwhen reading the layout params of an include node which is pretty crappy,\nbut works for now.\n\nChange-Id: I83ccf956e8b476f34dfc9a70aebae2288d53746e\n"
    },
    {
      "commit": "161e67ff3ba26408eea09221734ad2e29a1eed11",
      "tree": "6e98ff836fb5f134e01a7e9ef420ec35a78ad5d2",
      "parents": [
        "9e735541beed238d3b99d4bd284af1fc953c3775",
        "06a8ceacb0dc2713cb0bb2c93d2a750f2a58db68"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu May 19 21:44:52 2011 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu May 19 21:44:52 2011 -0700"
      },
      "message": "resolved conflicts for merge of 06a8ceac to master\n\nChange-Id: Id51574c825affddfac14ad7214c5496d6a3d6e69\n"
    },
    {
      "commit": "06a8ceacb0dc2713cb0bb2c93d2a750f2a58db68",
      "tree": "14cda7bbbdc5e6cabb492d7af1977a2f5548062b",
      "parents": [
        "90177e59e5211dd9ab33761ce800e8a86a49d1e2",
        "c851ea5672f6e042c2e89b2a2ce4a2467e1fcd2a"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu May 19 19:34:21 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu May 19 19:34:21 2011 -0700"
      },
      "message": "am c851ea56: am 69cb8757: Add new \"-swNNNdp\" resource qualifier.\n\n* commit \u0027c851ea5672f6e042c2e89b2a2ce4a2467e1fcd2a\u0027:\n  Add new \"-swNNNdp\" resource qualifier.\n"
    },
    {
      "commit": "69cb87576ba163b61bb0e6477a3b7c57a9b11d40",
      "tree": "a44be0af3d008409403be133358bdcd628741c01",
      "parents": [
        "b9537db8d9ee27efb4a98415ad2d6b50c1806e5d"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu May 19 18:13:32 2011 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu May 19 18:23:29 2011 -0700"
      },
      "message": "Add new \"-swNNNdp\" resource qualifier.\n\nChange-Id: I0101e88ca9d8d44138bdcaf571f24b0352f4f6ce\n"
    },
    {
      "commit": "d9af22e204e7f4c364c346b6c1bac900a2c4ccca",
      "tree": "836e63535ac4ccdf3428f43b76e2f2a67f1ce538",
      "parents": [
        "e172a3fc23412ebc79d6bd93e6d43d4b1c58354b"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Mon May 16 16:29:03 2011 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Thu May 19 16:52:41 2011 -0700"
      },
      "message": "Merge 05b7b69c from honeycomb-mr1. do not merge.\n\nChange-Id: I1aca5774dec2e18ab5f9e860f6fd90b481b2857c\nLayoutLib: support the new baseline/margin query API.\n"
    },
    {
      "commit": "e172a3fc23412ebc79d6bd93e6d43d4b1c58354b",
      "tree": "7dd7aad58530ef14f09d47f1d43b0e5dcedba703",
      "parents": [
        "8dd85f80ba9c463f5616b47eceb620fe21203f4f"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Mar 29 11:58:02 2011 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Thu May 19 16:52:29 2011 -0700"
      },
      "message": "Merge 2fae858d from Honeycomb-mr1. do not merge.\n\nChange-Id: I648f9ffa9745331ce4104dc4772f78ed933a4909\nLayoutLib: implement data binding for most AdapterView\n"
    },
    {
      "commit": "9f23e60b20f0419e6ca5ff55db9d6282596e7fe8",
      "tree": "23a6eb48e40b80341dcc2b13b9556b770c88d2ec",
      "parents": [
        "ba43d4282c82e55b5a5c01771f028e6266dbc781",
        "a13462a947e634a6893119146a7271369e509586"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Thu May 19 08:58:18 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu May 19 08:58:18 2011 -0700"
      },
      "message": "am a13462a9: am 582841e7: am b18e700c: am aa0834e3: Merge \"LayoutLib: support the new baseline/margin query API.\" into honeycomb-mr1\n\n* commit \u0027a13462a947e634a6893119146a7271369e509586\u0027:\n  LayoutLib: support the new baseline/margin query API.\n"
    },
    {
      "commit": "a13462a947e634a6893119146a7271369e509586",
      "tree": "691fdc829584f2f229c5a497e0ea909ba8afaf8d",
      "parents": [
        "a8939e0d48c9bdda2e3dcb1b8c55aa23e8b78b40",
        "582841e734bc85b247df64ac85b6ee09f7375f44"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Wed May 18 17:51:31 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed May 18 17:51:31 2011 -0700"
      },
      "message": "am 582841e7: am b18e700c: am aa0834e3: Merge \"LayoutLib: support the new baseline/margin query API.\" into honeycomb-mr1\n\n* commit \u0027582841e734bc85b247df64ac85b6ee09f7375f44\u0027:\n  LayoutLib: support the new baseline/margin query API.\n"
    },
    {
      "commit": "b18e700cb9c1d7090904449fc6878b8eae1d4693",
      "tree": "31bc717aa584a1b3650110c48bed3969e3f8ed92",
      "parents": [
        "d148a499c27145e0473f89ece0500ebed38f875f",
        "aa0834e3e6c3ceef6f78e3e03d1d27046e5237a0"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Wed May 18 17:40:08 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed May 18 17:40:08 2011 -0700"
      },
      "message": "am aa0834e3: Merge \"LayoutLib: support the new baseline/margin query API.\" into honeycomb-mr1\n\n* commit \u0027aa0834e3e6c3ceef6f78e3e03d1d27046e5237a0\u0027:\n  LayoutLib: support the new baseline/margin query API.\n"
    },
    {
      "commit": "05b7b69c6c5d418e18db644feed1ec2ca83291cc",
      "tree": "08a87ebb428cff4cc15ee9ebb10cfbc9621068be",
      "parents": [
        "2fae858db55fc6984ef923a6226b9408c37c72cb"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Mon May 16 16:29:03 2011 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Mon May 16 16:29:03 2011 -0700"
      },
      "message": "LayoutLib: support the new baseline/margin query API.\n\nChange-Id: I856489df655960820b8eaa4c6179515a5c069b00\n"
    },
    {
      "commit": "8c2f85d94145a96f53e9041c609e283be7412a0f",
      "tree": "c86bfd0b8703eeb6e6bafd98d76b2dd0e129b179",
      "parents": [
        "ba4990c77cbc643809f1d0e74fabe5a1d1d1c3dc",
        "d00541603fbbb4e38264e75a2b6abf8705efeb49"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Fri May 13 16:43:37 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri May 13 16:43:37 2011 -0700"
      },
      "message": "am d0054160: am 6d040a7f: am 738c5e60: am 2fae858d: LayoutLib: implement data binding for most AdapterView\n\n* commit \u0027d00541603fbbb4e38264e75a2b6abf8705efeb49\u0027:\n  LayoutLib: implement data binding for most AdapterView\n"
    },
    {
      "commit": "d00541603fbbb4e38264e75a2b6abf8705efeb49",
      "tree": "1cf40315482edfaccf99d3a09d283ea426591238",
      "parents": [
        "71da32074ce729fe170de2d6c348b110fb6625cc",
        "6d040a7f20de29a9667dd81bd4de40a9e56fd341"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Fri May 13 16:36:16 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri May 13 16:36:16 2011 -0700"
      },
      "message": "am 6d040a7f: am 738c5e60: am 2fae858d: LayoutLib: implement data binding for most AdapterView\n\n* commit \u00276d040a7f20de29a9667dd81bd4de40a9e56fd341\u0027:\n  LayoutLib: implement data binding for most AdapterView\n"
    },
    {
      "commit": "738c5e6072459c772064c96233cf59639bbfe2fd",
      "tree": "bd4e27994cf0feb9f0266ebb525f3650f4721d7e",
      "parents": [
        "6121f06ed5847d1edd22b23c3b28bf3b3e3af602",
        "2fae858db55fc6984ef923a6226b9408c37c72cb"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Fri May 13 16:30:44 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri May 13 16:30:44 2011 -0700"
      },
      "message": "am 2fae858d: LayoutLib: implement data binding for most AdapterView\n\n* commit \u00272fae858db55fc6984ef923a6226b9408c37c72cb\u0027:\n  LayoutLib: implement data binding for most AdapterView\n"
    },
    {
      "commit": "2fae858db55fc6984ef923a6226b9408c37c72cb",
      "tree": "b408f9da8f855228b8b865189e672abe3bcf0700",
      "parents": [
        "edab852fe11f12ad5a0a66f79462ed7474ba9e5a"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Mar 29 11:58:02 2011 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Fri May 13 15:55:49 2011 -0700"
      },
      "message": "LayoutLib: implement data binding for most AdapterView\n\nChange-Id: I27be96ed2c37573eb22cfbb391d96b6137b3df8c\n"
    },
    {
      "commit": "2e4a3236a7634d17f89288e9739a438ecbea0471",
      "tree": "45e1c4c61f4eb9775572d94a55dd91b071b84916",
      "parents": [
        "15f8a6a726658bfb195924bd5d7bb86684a22de0",
        "46a282f323bc05606e4fe1eba795bd9ac7c99819"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Fri May 13 11:21:26 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Fri May 13 11:21:26 2011 -0700"
      },
      "message": "am 46a282f3: am 0ed2e845: Merge \"DO NOT MERGE.  Integrate add new screen width/height in \"dp\" configs.\" into honeycomb-mr2\n\n* commit \u002746a282f323bc05606e4fe1eba795bd9ac7c99819\u0027:\n  DO NOT MERGE.  Integrate add new screen width/height in \"dp\" configs.\n"
    },
    {
      "commit": "ebff8f92f13513ce37bd74759eb1db63f2220590",
      "tree": "909da02ab7ff47483e227f032828dbdbe7f959af",
      "parents": [
        "a8138732a01b92f0a40f72050b74a3bd4cf6d215"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu May 12 18:07:47 2011 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Thu May 12 18:39:51 2011 -0700"
      },
      "message": "DO NOT MERGE.  Integrate add new screen width/height in \"dp\" configs.\n\nYou can now specify resource configuration variants \"wNNNdp\"\nand \"hNNNdp\".  These are the minimum screen width/height in \"dp\"\nunits.  This allows you to do things like have your app adjust\nits layout based only on the about of horizontal space available.\n\nThis introduces a new configuration change flag for screen size.\nNote that this configuration change happens each time the orientation\nchanges.  Applications often say they handle the orientation change\nto avoid being restarted at a screen rotation, and this will now\ncause them to be restarted.  To address this, we assume the app can\nhandle this new config change if its target SDK version is \u003c ICS.\n\nChange-Id: I4acb73d82677b74092c1da9e4046a4951921f9f4\n"
    },
    {
      "commit": "779fa1515d0b6cf17a449dc79f83a7c4e70ff0fe",
      "tree": "ea179e8e6bf4ecce4bae884571189df3aaf661ba",
      "parents": [
        "f0556bb90ff38be96c6099f5efafe386cd7f1083",
        "4a4d96e7ee682167861434cba05531f04642bf97"
      ],
      "author": {
        "name": "Conley Owens",
        "email": "cco3@android.com",
        "time": "Wed Apr 27 13:48:45 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Apr 27 13:48:45 2011 -0700"
      },
      "message": "am 4a4d96e7: Merge changes I0ab47e2f,Ib8016996\n\n* commit \u00274a4d96e7ee682167861434cba05531f04642bf97\u0027:\n  Remove errant tag terminator\n  Normalize output of XMLtree content\n"
    },
    {
      "commit": "4a4d96e7ee682167861434cba05531f04642bf97",
      "tree": "ff08d11397463faa91448545c8d961b89fae1423",
      "parents": [
        "86d1d74762e65b6f64c2d4758aa5fd4af6275696",
        "0cd48ae3de0609089b8adf532d947a41fc418786"
      ],
      "author": {
        "name": "Conley Owens",
        "email": "cco3@android.com",
        "time": "Wed Apr 27 13:06:46 2011 -0700"
      },
      "committer": {
        "name": "Android Code Review",
        "email": "code-review@android.com",
        "time": "Wed Apr 27 13:06:46 2011 -0700"
      },
      "message": "Merge changes I0ab47e2f,Ib8016996\n\n* changes:\n  Remove errant tag terminator\n  Normalize output of XMLtree content\n"
    },
    {
      "commit": "461fa8b05dfb4fd334980365e27002a7520e866e",
      "tree": "19238dece6998ee2121503d18b4548163e9e2704",
      "parents": [
        "d3a6956a6d69d7399931c403cd31cb0236278fc6",
        "18490fb93e206fd899c3258096cc32f293373c92"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Tue Apr 12 12:51:08 2011 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Tue Apr 12 12:51:08 2011 -0700"
      },
      "message": "resolved conflicts for merge of 18490fb9 to master\n\nChange-Id: I6c68e6fb0f9c1182a955689bbffc161a8f30bd37\n"
    },
    {
      "commit": "18490fb93e206fd899c3258096cc32f293373c92",
      "tree": "e45db3abacf59a0cba4604cde390c310e38e4153",
      "parents": [
        "0b9b8711a1a2107dc913cc751b7d981fce4f3082",
        "87b3c0dcc45223ff9d5ab2e39d7b9a6953e03f50"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Tue Apr 12 10:27:15 2011 -0700"
      },
      "committer": {
        "name": "Kenny Root",
        "email": "kroot@google.com",
        "time": "Tue Apr 12 10:27:15 2011 -0700"
      },
      "message": "resolved conflicts for merge of 87b3c0dc to honeycomb-plus-aosp\n\nChange-Id: Ia1a0024aabf531438203eb9fea3a10dd15eabe53\n"
    },
    {
      "commit": "87b3c0dcc45223ff9d5ab2e39d7b9a6953e03f50",
      "tree": "8c64414e6f079c9511163657f200d2ee132309f4",
      "parents": [
        "4430670f48f75661293371dab8db55865f5f56e0",
        "08d9d9a46250c4fad66e9b637e8898a3524c4286"
      ],
      "author": {
        "name": "Kenny Root",
        "email": "kroot@android.com",
        "time": "Mon Apr 11 15:33:19 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Mon Apr 11 15:33:19 2011 -0700"
      },
      "message": "am 08d9d9a4: Merge \"Runtime resource overlay, iteration 1.\"\n\n* commit \u002708d9d9a46250c4fad66e9b637e8898a3524c4286\u0027:\n  Runtime resource overlay, iteration 1.\n"
    },
    {
      "commit": "7c94b34b5241b548d68a1cb03d10f697386aac65",
      "tree": "7247f0e9de9a79b6eb1758b807544a3344f3acf9",
      "parents": [
        "ca7ad44a8b6764b5935143bfe55700cbddb0d990"
      ],
      "author": {
        "name": "Shachar Shemesh",
        "email": "lingnu@gmail.com",
        "time": "Mon Apr 11 13:32:19 2011 +0300"
      },
      "committer": {
        "name": "Shachar Shemesh",
        "email": "lingnu@gmail.com",
        "time": "Mon Apr 11 13:32:19 2011 +0300"
      },
      "message": "Normalize output of XMLtree content\n\nMake the output from aapt dump xmltree normalized, so that it is unambigously\ndisplayed regardless of the content of the strings. Previous patch left out\nhandling of XML element content.\n\nChange-Id: Ib8016996c769f3dde7a87f7ecbdf850333f2426a\n"
    },
    {
      "commit": "515a08b01851a1ab9386f85dee6d9fd7b65ee7ad",
      "tree": "549fcb535c70f46ac97e0a369ef507c05323aa68",
      "parents": [
        "b25181aaccb00fee405251bf3575ce1d40badf46"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Wed Apr 06 17:03:31 2011 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Thu Apr 07 12:02:31 2011 -0700"
      },
      "message": "Merge 59aad78e from master. do not merge.\n\nLayoutLib: don\u0027t render when shader\u0027s local matrix is set to 0 scale.\n\nChange-Id: I02c0ddd856026357f468dcc8b81e0520470118de\n"
    },
    {
      "commit": "4754c79a77dc09259dee7e018710a96fe167bb8e",
      "tree": "f26fcd18d855e08a3af0e42231d45d0e727b4c44",
      "parents": [
        "efa98a29e01dbb4c700fd6af3353413afcb344d9",
        "59aad78eae14939c169876b2f632d005f382cf7d"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Wed Apr 06 19:08:11 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Apr 06 19:08:11 2011 -0700"
      },
      "message": "am 59aad78e: LayoutLib: don\\\u0027t render when shader\\\u0027s local matrix is set to 0 scale.\n\n* commit \u002759aad78eae14939c169876b2f632d005f382cf7d\u0027:\n  LayoutLib: don\u0027t render when shader\u0027s local matrix is set to 0 scale.\n"
    },
    {
      "commit": "efa98a29e01dbb4c700fd6af3353413afcb344d9",
      "tree": "4c36104f201a9b447fef24553c9aab1f9fa122fb",
      "parents": [
        "9645081cc7f31e1151fedbcd5932a100719e91e4",
        "8a18dba48c354fc47056b07ddec8a32fda266b6a"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Wed Apr 06 19:08:02 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Apr 06 19:08:02 2011 -0700"
      },
      "message": "am 8a18dba4: Merge c5aeac7f from honeycomb.\n\n* commit \u00278a18dba48c354fc47056b07ddec8a32fda266b6a\u0027:\n  Merge c5aeac7f from honeycomb.\n"
    },
    {
      "commit": "59aad78eae14939c169876b2f632d005f382cf7d",
      "tree": "1c1637f9315d503a67119818379c15f9e9e2be1c",
      "parents": [
        "8a18dba48c354fc47056b07ddec8a32fda266b6a"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Wed Apr 06 17:03:31 2011 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Wed Apr 06 17:03:31 2011 -0700"
      },
      "message": "LayoutLib: don\u0027t render when shader\u0027s local matrix is set to 0 scale.\n\nChange-Id: I7726d87f3dd0475ac662f535a08c6435b8b9ed1f\n"
    },
    {
      "commit": "8a18dba48c354fc47056b07ddec8a32fda266b6a",
      "tree": "8dd9444bbe6c1c812d54e336f9fd2d5dcc738c63",
      "parents": [
        "43707a83ec12957fb84a406276a38fbaf4e23fd3"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Apr 05 20:19:17 2011 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Wed Apr 06 14:24:59 2011 -0700"
      },
      "message": "Merge c5aeac7f from honeycomb.\n\nLayoutLib: Fix issue with rendering mode.\n\nWhen the layout content is embedded inside a decor layout\nto emulate system bar (top or bottom) and title bar (or action bar)\nthen the code computing the full required size based on the RenderingMode\nwould fail because the decor layout would prevents the content layout to\ntake as much room as possible.\nThere is also an issue with the way we know render dialogs as the\ndialogs usually as a frame with some padding and the previous measurements\nwould not take into account the dialog padding when increasing the\nscreen size.\n\nThis fix makes the code measure the size of the content layout in the\nnormal rendering, and then separately from the root layout with the proper\nMeasureSpec to let the content grown. The difference in size is then added\nto the screen size.\n\nBug: http://code.google.com/p/android/issues/detail?id\u003d15892\n\nChange-Id: Ie9a6c5e254b16785f817dcb9fae755d4936880aa\n"
    },
    {
      "commit": "b4af69605410efb51a3669e7fcd47891d0695ec0",
      "tree": "bf7b84dece0da70ebc6af773883f016f443fb069",
      "parents": [
        "85b65f2008e7eb8ef492a63cba80555f58915769",
        "d7765e353cdc6f0bb4156841a8436ea28eb20eea"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Wed Apr 06 13:19:57 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Wed Apr 06 13:19:57 2011 -0700"
      },
      "message": "am d7765e35: am 73dc2602: am c5aeac7f: LayoutLib: Fix issue with rendering mode.\n\n* commit \u0027d7765e353cdc6f0bb4156841a8436ea28eb20eea\u0027:\n  LayoutLib: Fix issue with rendering mode.\n"
    },
    {
      "commit": "3fc982f41fda1f254bfbc35490d81cd82a0ed90a",
      "tree": "6f9ba92dc2c9001a156f298c37dcdef9c9552600",
      "parents": [
        "fb84ce0df6b2db84981e4efa4530397a85240d4a"
      ],
      "author": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Mar 30 16:20:26 2011 -0700"
      },
      "committer": {
        "name": "Dianne Hackborn",
        "email": "hackbod@google.com",
        "time": "Wed Apr 06 11:00:37 2011 -0700"
      },
      "message": "Add new resource configurations for screen width/height in \"dp\".\n\nYou can now specify resource configuration variants \"wNNNdp\"\nand \"hNNNdp\".  These are the minimum screen width/height in \"dp\"\nunits.  This allows you to do things like have your app adjust\nits layout based only on the about of horizontal space available.\n\nThis introduces a new configuration change flag for screen size.\nNote that this configuration change happens each time the orientation\nchanges.  Applications often say they handle the orientation change\nto avoid being restarted at a screen rotation, and this will now\ncause them to be restarted.  To address this, we assume the app can\nhandle this new config change if its target SDK version is \u003c ICS.\n\nChange-Id: I22f8afa136b4f274423978c570fa7c9855040496\n"
    },
    {
      "commit": "c5aeac7f157e3cb9e29ab8c126f74e26493501f5",
      "tree": "7767282c829748563f5dbb1026972395ec0a2052",
      "parents": [
        "e4cafabbcc4b69479217d1a167926b79c37e5ded"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Apr 05 20:19:17 2011 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Tue Apr 05 20:45:48 2011 -0700"
      },
      "message": "LayoutLib: Fix issue with rendering mode.\n\nWhen the layout content is embedded inside a decor layout\nto emulate system bar (top or bottom) and title bar (or action bar)\nthen the code computing the full required size based on the RenderingMode\nwould fail because the decor layout would prevents the content layout to\ntake as much room as possible.\nThere is also an issue with the way we know render dialogs as the\ndialogs usually as a frame with some padding and the previous measurements\nwould not take into account the dialog padding when increasing the\nscreen size.\n\nThis fix makes the code measure the size of the content layout in the\nnormal rendering, and then separately from the root layout with the proper\nMeasureSpec to let the content grown. The difference in size is then added\nto the screen size.\n\nBug: http://code.google.com/p/android/issues/detail?id\u003d15892\n\nChange-Id: Ibb9ca2a67c6c450d10d9f9a8050536e094650f8b\n"
    },
    {
      "commit": "57f4b77c89bafedf9468f9a636561c0c193405c9",
      "tree": "9e73065411411858c9c6ae350c5ee8ffe14598c3",
      "parents": [
        "c6b22e2727bd3730edd5ad72831a9bb4670d00f3"
      ],
      "author": {
        "name": "Mårten Kongstad",
        "email": "marten.kongstad@sonyericsson.com",
        "time": "Thu Mar 17 14:13:41 2011 +0100"
      },
      "committer": {
        "name": "Kenneth Andersson",
        "email": "kenneth.andersson@sonyericsson.com",
        "time": "Fri Apr 01 14:12:10 2011 +0200"
      },
      "message": "Runtime resource overlay, iteration 1.\n\nRuntime resource overlay allows unmodified applications to appear\nas if they had been compiled with additional resources defined. See\nlibs/utils/README for more information.\n\nThis commit is the first iteration of runtime resource overlay. It\nprovides the actual overlay modifications and loading of trusted overlay\npackages (ie residing in /vendor) targeting framework-res.apk.\n\nThis commit loads exactly one overlay package. The overlay,\nif present, must target framework-res.apk and be located at\n/vendor/overlay/framework/framework-res.apk.\n\nChange-Id: If26ee7754813004a96c043dba37fbe99fa3919db\n"
    },
    {
      "commit": "3a90ec4e6b4973f56dae825c967bbee69e6239cf",
      "tree": "e09c157bed5ecc30564298b084ea5871948eef0c",
      "parents": [
        "a5b68f39e2936a83eac0b995992724cd5de6905d",
        "c7c8c599a636a105db0d2eac3b8b332532a7a40f"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Thu Mar 17 16:21:20 2011 -0700"
      },
      "committer": {
        "name": "Android Git Automerger",
        "email": "android-git-automerger@android.com",
        "time": "Thu Mar 17 16:21:20 2011 -0700"
      },
      "message": "am c7c8c599: Merge 67450db0 from honeycomb. Do not merge.\n\n* commit \u0027c7c8c599a636a105db0d2eac3b8b332532a7a40f\u0027:\n  Merge 67450db0 from honeycomb. Do not merge.\n"
    },
    {
      "commit": "c7c8c599a636a105db0d2eac3b8b332532a7a40f",
      "tree": "f2ba035079a3faaa7d2c34f70f37551856577fe5",
      "parents": [
        "5982bf66d4fdea38105d91ff0f9d38660ac87581"
      ],
      "author": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Thu Mar 17 14:11:23 2011 -0700"
      },
      "committer": {
        "name": "Xavier Ducrohet",
        "email": "xav@android.com",
        "time": "Thu Mar 17 14:24:50 2011 -0700"
      },
      "message": "Merge 67450db0 from honeycomb. Do not merge.\n\nChange-Id: I0ca140dd6d9279ff313f930739ad40fbbed4f335\nLayoutLib: TypedArray.getDimensionPixelSize can actually return \u003c0\n"
    }
  ],
  "next": "f0da151e78d5a48bb5170e41e5919e4bf5ecb055"
}
