manmal/hn-android — pull request #92 by maltzj (2013-12-11 09:41:06+00:00)
Title: Add action bar DON'T MERGE INTO MASTER YET, PULL THIS BRANCH

Alright, so I took the liberty of doing most of this over the past couple of days, but finals are coming up, and if I don't submit this now I'll probably fail because I'll do no studying. I've outlined all the changes below. Let me know if you want to change any history because there are a lot of commits here.

What's here:
An integration of ActionBarCompat with all activities using Gradle/Android Studio. I used ABC because it's finally mature enough to handle all this and it is likely what other apps will start using going forward. Plus, all the documentation is pretty much identical for both of them.
Requisite cleanup of all layout files
Recreation of most of the features that were present on the old Action Bar

What's missing/broken:
Testing on pre-3.0 builds and real devices
Styling of the dropdown menus from the overflow menu (this is done by setting `DropDownListViewStyle` in the themes)
Styling the overflow icons appropriately. They show up blue when tapped. I'm not sure how to change this
Integration with Eclipse builds
For some reason the comment bubbles got huge with this. I think it is an issue with scaling, but I really couldn't lock it down.

Stuff that was lost:
You can no longer tap the action bar to scroll you up to the top of a comments list. I think this is just theoretically incompatible with the way custom views are added. I think that implementing one of the suggestions here: http://cyrilmottier.com/2013/01/09/back-to-top-android-vs-ios/ will be a good way to make up for this.

Further thoughts:
I'm not sure if having just the up arrow is the best way to go about things going forward, as it introduces some buginess with touch targets it seems. Maybe creating an icon and having a normal up arrow would be the way to go. As it stands now the app icon does a pretty bad job as a home icon though.

Anyway, I'll be around to support this however possible.