Improvements to ListFragment.

Now deals correctly with a content view containing just a list,
and adds a lot more built-in functionality: ability to show
custom text for an empty list, and indeterminant progress while
populating the list.

In addition, reworks transaction committing to be more aggressive
about committing the transactions as the containing activity
moves between its states (rather than waiting for the activity's
handler to process the transaction message whenever that may
finally happen).  And fixed a bug with saving/restoring state of
transaction replace operations.

Change-Id: I9617a0c4f248b50a61b319910323639b6de24f73
diff --git a/core/java/android/app/Activity.java b/core/java/android/app/Activity.java
index 4a47b66..91ff0a5 100644
--- a/core/java/android/app/Activity.java
+++ b/core/java/android/app/Activity.java
@@ -4036,6 +4036,7 @@
     
     final void performStart() {
         mCalled = false;
+        mFragments.execPendingActions();
         mInstrumentation.callActivityOnStart(this);
         if (!mCalled) {
             throw new SuperNotCalledException(
@@ -4074,6 +4075,8 @@
     final void performResume() {
         performRestart();
         
+        mFragments.execPendingActions();
+        
         mLastNonConfigurationInstances = null;
         
         // First call onResume() -before- setting mResumed, so we don't
@@ -4091,6 +4094,7 @@
         mCalled = false;
         
         mFragments.dispatchResume();
+        mFragments.execPendingActions();
         
         onPostResume();
         if (!mCalled) {