<?xml version="1.0" encoding="UTF-8"?>
<commits type="array">
  <commit>
    <parents type="array">
      <parent>
        <id>46e07bc437e1cb2eb7718bf4153ad7673c63e004</id>
      </parent>
    </parents>
    <author>
      <name>Jeff Verkoeyen</name>
      <email>jverkoey@gmail.com</email>
    </author>
    <url>http://github.com/facebook/three20/commit/06f4b4e794cfd123c8a1d4da87cec41e7c38d05a</url>
    <id>06f4b4e794cfd123c8a1d4da87cec41e7c38d05a</id>
    <committed-date>2009-12-11T12:50:38-08:00</committed-date>
    <authored-date>2009-12-10T01:54:37-08:00</authored-date>
    <message>[Dependencies] Complete dependency teardown.

All files now pull in the minimum number of header files. This leads to
cleaner dependencies and fewer files being pulled in on average. Hacking
on Three20 files should now be much faster and not involve building a large
tree of dependencies.</message>
    <tree>2a99e42193e2b6162e8386a51eea4a5797ad44ee</tree>
    <committer>
      <name>Jeff Verkoeyen</name>
      <email>jverkoey@gmail.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>2ad4af093ca7aefdb1736554e60008efc6d137eb</id>
      </parent>
    </parents>
    <author>
      <name>Jeff Verkoeyen</name>
      <email>jverkoey@gmail.com</email>
    </author>
    <url>http://github.com/facebook/three20/commit/167eaa6e3a758dbfee7d2d46ccc8bed09feea5b8</url>
    <id>167eaa6e3a758dbfee7d2d46ccc8bed09feea5b8</id>
    <committed-date>2009-12-10T16:22:20-08:00</committed-date>
    <authored-date>2009-12-10T13:09:48-08:00</authored-date>
    <message>Use // instead of /** for license headers.

The /** license header blocks were being picked up as javadocs in
doxygen.</message>
    <tree>85ee82a322edf51d85650305fc7d58b5c4f5dd7e</tree>
    <committer>
      <name>Jeff Verkoeyen</name>
      <email>jverkoey@gmail.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>703697e7e7a2b861b84477528d1c21dc7dba4376</id>
      </parent>
    </parents>
    <author>
      <name>Jeff Verkoeyen</name>
      <email>jverkoey@gmail.com</email>
    </author>
    <url>http://github.com/facebook/three20/commit/58ebed0b153e72aacd265140239a22f0cf09d168</url>
    <id>58ebed0b153e72aacd265140239a22f0cf09d168</id>
    <committed-date>2009-12-05T17:43:06-08:00</committed-date>
    <authored-date>2009-12-03T17:05:16-08:00</authored-date>
    <message>Prepend the Apache license to every file.</message>
    <tree>0353d357566179ef94a8efa41f71e58fc16f6a9f</tree>
    <committer>
      <name>Jeff Verkoeyen</name>
      <email>jverkoey@gmail.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>2b0f3923b78e6672a2261f0aaffd5205a4a11c64</id>
      </parent>
    </parents>
    <author>
      <name>Joe Hewitt</name>
      <email>joe@joehewitt.com</email>
    </author>
    <url>http://github.com/facebook/three20/commit/dd27ba5beb1a4da0f6db9b06ba1bf6feb0672795</url>
    <id>dd27ba5beb1a4da0f6db9b06ba1bf6feb0672795</id>
    <committed-date>2009-08-10T16:41:24-07:00</committed-date>
    <authored-date>2009-08-10T16:41:24-07:00</authored-date>
    <message>* Helper function to check if keyboard is visible
* Method to show an activity label over photo viewer, for async photo operations
* Fixed: diffstrings.py ignores focus argument for merge command</message>
    <tree>552bdaf2f32b38c9e44694638dd9a4e33dc9ff19</tree>
    <committer>
      <name>Joe Hewitt</name>
      <email>joe@joehewitt.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>0ff252ec8ec602494edf57f130ff580558a798f9</id>
      </parent>
    </parents>
    <author>
      <name>Joe Hewitt</name>
      <email>joe@joehewitt.com</email>
    </author>
    <url>http://github.com/facebook/three20/commit/e1d70543cc3943ac2057415054418c95e8ee40a3</url>
    <id>e1d70543cc3943ac2057415054418c95e8ee40a3</id>
    <committed-date>2009-08-01T03:22:01-07:00</committed-date>
    <authored-date>2009-08-01T03:22:01-07:00</authored-date>
    <message>* Invalidate search models when user taps the scope button
* Increase padding in error view slightly
* Move the activity indicator in table more buttons to the left side
* Hide the table menu when the table disappears
* Support editing in table view controllers
* Add init methods to TTPhotoViewController
* Fixed: invalidateModel shouldn't create model if there was no prior model</message>
    <tree>5c1875933cc82995e0e0046c5dd6111eb7466425</tree>
    <committer>
      <name>Joe Hewitt</name>
      <email>joe@joehewitt.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>7cc9f7503231e6c93df7d07487e700054e5f3853</id>
      </parent>
    </parents>
    <author>
      <name>joehewitt</name>
      <email>joe@joehewitt.com</email>
    </author>
    <url>http://github.com/facebook/three20/commit/a56db52ad64c2be18b84ddffece0fb7b6b331851</url>
    <id>a56db52ad64c2be18b84ddffece0fb7b6b331851</id>
    <committed-date>2009-07-26T17:54:15-07:00</committed-date>
    <authored-date>2009-07-26T17:54:15-07:00</authored-date>
    <message>* Fixed: photo viewer didn't load more photos when you went past the last loaded photo
* New: you can style the photo viewer caption using a TTStyle
* New: TTTextStyle supports wrapping text to multiple lines
* Photo viewer activity indicator and status label cleaned up</message>
    <tree>311642ffce04f81e5520e5753318b817dd2dbd4b</tree>
    <committer>
      <name>joehewitt</name>
      <email>joe@joehewitt.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>f793bee0b8dbbdd97f038ff927b25107c91aacb9</id>
      </parent>
    </parents>
    <author>
      <name>Joe Hewitt</name>
      <email>joe@joehewitt.com</email>
    </author>
    <url>http://github.com/facebook/three20/commit/fff0e796d0d134a444be7d9d8508b4837b0946ce</url>
    <id>fff0e796d0d134a444be7d9d8508b4837b0946ce</id>
    <committed-date>2009-07-26T01:59:41-07:00</committed-date>
    <authored-date>2009-07-26T01:59:41-07:00</authored-date>
    <message>* Add userInfo property to alert view and action sheet controllers
* Add special delegate methods to action sheet and alert view controllers for handling URLs
* Support the model interface for deleting objects in the photo viewer
* Don't mess up the status bar style in popup view controllers</message>
    <tree>2a5e644387aa22a72cc6bdd74788df1ca09dd0ca</tree>
    <committer>
      <name>Joe Hewitt</name>
      <email>joe@joehewitt.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>a8eb1e5475756a2b8c5d29539e01f3780f62459a</id>
      </parent>
    </parents>
    <author>
      <name>joehewitt</name>
      <email>joe@joehewitt.com</email>
    </author>
    <url>http://github.com/facebook/three20/commit/f6cd8b575dabb34f76847e07108dbec6cb46e6a2</url>
    <id>f6cd8b575dabb34f76847e07108dbec6cb46e6a2</id>
    <committed-date>2009-07-24T21:14:10-07:00</committed-date>
    <authored-date>2009-07-24T21:14:10-07:00</authored-date>
    <message>* New class: TTPostController, derived from the Facebook's status update editor
* Cleaned up TTActivityLabel
* Added examples of how to use TTPostController to TTCatalog and TTNavigatorDemo
* Added examples of all TTActivityLabel styles to TTCatalog</message>
    <tree>b21cc4966bd6d6e2c7863755c471e544e6b0e25a</tree>
    <committer>
      <name>joehewitt</name>
      <email>joe@joehewitt.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>8a0a5788999c540d0898448e792f151684ef6056</id>
      </parent>
    </parents>
    <author>
      <name>Joe Hewitt</name>
      <email>joe@joehewitt.com</email>
    </author>
    <url>http://github.com/facebook/three20/commit/122b14a4662a51ed508d543747b26b6f1d8da79f</url>
    <id>122b14a4662a51ed508d543747b26b6f1d8da79f</id>
    <committed-date>2009-07-15T04:10:03-07:00</committed-date>
    <authored-date>2009-07-15T04:10:03-07:00</authored-date>
    <message>* MASSIVE REFACTORING of view controllers and data sources
* Broke TTViewController in half and created TTModelViewController
* Renamed TTLoadable to TTModel and provided default implementation
* Removed TTLoadable protocol from TTTableViewDataSource and replaced it with model property
* Renamed load:nextPage: to load:more:
* Renamed tableView:prepareCell:forRowAtIndexPath: to tableView:cell:willAppearAtIndexPath:
* Renamed tableView:search: to search:
* Got rid of TTPhotoSourceDelegate, replacing it with TTModelDelegate
* Git rid of loadPhotosFromIndex:, replacing it with load:more:
* Changed a bunch of other stuff - check the diff</message>
    <tree>7595ddd0761e9458f98015a41393c62b90df32ac</tree>
    <committer>
      <name>Joe Hewitt</name>
      <email>joe@joehewitt.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>a83a1137563e25ea4fdda93991dacbec37d6cef0</id>
      </parent>
    </parents>
    <author>
      <name>Joe Hewitt</name>
      <email>joe@joehewitt.com</email>
    </author>
    <url>http://github.com/facebook/three20/commit/8ecafd280cbb99fd710d35317af1bd8813d3bee3</url>
    <id>8ecafd280cbb99fd710d35317af1bd8813d3bee3</id>
    <committed-date>2009-04-08T17:08:54-07:00</committed-date>
    <authored-date>2009-04-08T17:08:54-07:00</authored-date>
    <message>* New vector rendering system
* Use vector rendering instead of bitmaps as often as possible
* New stylesheet system (still rudimentary)
* Support for styling spans of styled text
* New TTButton class with stylable states
* Set of common TTButton types
* Fix a bunch of memory leaks (found with Clang)
* While URL queue is suspended, don't resume queue after existing requests complete</message>
    <tree>1e964211db978496b0559c11560824d172a005a4</tree>
    <committer>
      <name>Joe Hewitt</name>
      <email>joe@joehewitt.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>cbea9a2fd89760ca7a6187f690007a4fe8853ea3</id>
      </parent>
    </parents>
    <author>
      <name>Joe Hewitt</name>
      <email>joe@joehewitt.com</email>
    </author>
    <url>http://github.com/facebook/three20/commit/18d0ffdd657dab1ee9628327bbf860e89e3d978e</url>
    <id>18d0ffdd657dab1ee9628327bbf860e89e3d978e</id>
    <committed-date>2009-03-23T02:11:02-07:00</committed-date>
    <authored-date>2009-03-23T02:11:02-07:00</authored-date>
    <message>* Rename some things for clarity
* Add a few bits of documentation</message>
    <tree>059e0f691bef404ff6cc12d6610d27b72d0ce029</tree>
    <committer>
      <name>Joe Hewitt</name>
      <email>joe@joehewitt.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>d8927e69cde4759a46784eeab46e57232de95714</id>
      </parent>
    </parents>
    <author>
      <name>Joe Hewitt</name>
      <email>joe@joehewitt.com</email>
    </author>
    <url>http://github.com/facebook/three20/commit/89d590b44e5d136c12b631c0a5dd1a07e38bffcc</url>
    <id>89d590b44e5d136c12b631c0a5dd1a07e38bffcc</id>
    <committed-date>2009-03-21T02:34:06-07:00</committed-date>
    <authored-date>2009-03-21T02:34:06-07:00</authored-date>
    <message>* Make navigation bar's space touchable when bars are hidden
* Don't make photo view set itself as a delegate, so others can be the delegate
* Make zoomEnabled actually work for scroll views
* Optionally support a cancel button in search bars
* Use the Search or Done return key for search fields depending on if search is automatic</message>
    <tree>f01ac75c003f30e3439c74b62b6598b52c0eb2ed</tree>
    <committer>
      <name>Joe Hewitt</name>
      <email>joe@joehewitt.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>0b396171f6c2d16c11b39b15d6c4263fb189f245</id>
      </parent>
    </parents>
    <author>
      <name>Joe Hewitt</name>
      <email>joe@joehewitt.com</email>
    </author>
    <url>http://github.com/facebook/three20/commit/4873b0bb1bd6456c998f423668e57b2711c8f8ef</url>
    <id>4873b0bb1bd6456c998f423668e57b2711c8f8ef</id>
    <committed-date>2009-03-06T23:23:49-08:00</committed-date>
    <authored-date>2009-03-06T23:23:49-08:00</authored-date>
    <message>* Rename TTBookView to TTScrollView
* Fix bug that caused nav buttons to get messed up when using search text field
* Better support for non-automatic searches in search text field
* Fix crashes when canceling url requests
* New layout algorithm for tab bar which is more flexible for long tab titles</message>
    <tree>d38f8101ae457036a75ed3d39c2bc55368785822</tree>
    <committer>
      <name>Joe Hewitt</name>
      <email>joe@joehewitt.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>102f71b550ffa744d121ce60b2b3b161ba512720</id>
      </parent>
    </parents>
    <author>
      <name>Joe Hewitt</name>
      <email>joe@joehewitt.com</email>
    </author>
    <url>http://github.com/facebook/three20/commit/17e7f77d5e07b37b150375dac2343ac869194115</url>
    <id>17e7f77d5e07b37b150375dac2343ac869194115</id>
    <committed-date>2009-02-17T17:54:39-08:00</committed-date>
    <authored-date>2009-02-17T17:54:39-08:00</authored-date>
    <message>* Rename TTScrollView to TTBookView</message>
    <tree>df8bd89bd50e726b25b6679e6e697fecf2d00d86</tree>
    <committer>
      <name>Joe Hewitt</name>
      <email>joe@joehewitt.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>9625aafb57d7c601bdfec8b7e7086be50a4e6161</id>
      </parent>
    </parents>
    <author>
      <name>Joe Hewitt</name>
      <email>joe@joehewitt.com</email>
    </author>
    <url>http://github.com/facebook/three20/commit/6394c48dd11728098c559f787ce6bf4d85b85232</url>
    <id>6394c48dd11728098c559f787ce6bf4d85b85232</id>
    <committed-date>2009-02-15T16:54:42-08:00</committed-date>
    <authored-date>2009-02-15T16:54:42-08:00</authored-date>
    <message>* Fixed bug @1026: Rename T3* to TT*</message>
    <tree>ad3ea0216ea8d8f156415dc5de9c8abce9261043</tree>
    <committer>
      <name>Joe Hewitt</name>
      <email>joe@joehewitt.com</email>
    </committer>
  </commit>
</commits>
