Force tags to be in portrait.
Ben Komalo [Fri, 21 Jan 2011 02:15:37 +0000 (18:15 -0800)]
This fixes a bug where rotations would drop the record.
Unfortunately, while fixing this, I discovered that the UI design just
doesn't work in landscape. There's a list halfway at the bottom of the
UI, and you can't put a ListView in a ScrollView, so the user has no way
of scrolling down to see the list contents.

Change-Id: Ic282c066789831ff02725895112e884ea7864c07

AndroidManifest.xml
res/layout/my_tag_activity.xml
src/com/android/apps/tag/EditTagActivity.java

index b38ce66..56cfd03 100644 (file)
@@ -34,6 +34,7 @@
     >
         <activity android:name="TagBrowserActivity"
             android:theme="@android:style/Theme.NoTitleBar"
+            android:screenOrientation="portrait"
         >
             <intent-filter>
                 <action android:name="android.intent.action.MAIN"/>
 
         <activity android:name="TagList" />
 
-        <activity android:name="MyTagList" />
+        <!-- TODO: lift the portrait restriction by re-working the list in the
+             layout. -->
+        <activity android:name="MyTagList"
+            android:screenOrientation="portrait" />
 
         <activity android:name="TagViewer"
             android:theme="@android:style/Theme.NoTitleBar"
index 8c91f45..d0f199f 100644 (file)
@@ -92,8 +92,6 @@ limitations under the License.
                 android:layout_width="wrap_content"
                 android:layout_height="wrap_content" />
 
-            <!-- TODO: green active image -->
-
         </RelativeLayout>
 
         <TextView
index c35b078..edaff80 100644 (file)
@@ -60,7 +60,7 @@ public class EditTagActivity extends Activity implements OnClickListener, EditCa
 
     private static final String LOG_TAG = "Tags";
 
-    protected static final String BUNDLE_KEY_OUTSTANDING_PICK = "outstanding-pick";
+    protected static final String BUNDLE_KEY_RECORD = "outstanding-pick";
     public static final String EXTRA_RESULT_MSG = "com.android.apps.tag.msg";
     public static final String EXTRA_NEW_RECORD_INFO = "com.android.apps.tag.new_record";
 
@@ -100,7 +100,12 @@ public class EditTagActivity extends Activity implements OnClickListener, EditCa
 
         mContentRoot = (ViewGroup) findViewById(R.id.content_parent);
 
-        resolveIntent();
+        if (savedState != null) {
+            mRecord = savedState.getParcelable(BUNDLE_KEY_RECORD);
+            refresh();
+        } else {
+            resolveIntent();
+        }
     }
 
     /**
@@ -158,7 +163,7 @@ public class EditTagActivity extends Activity implements OnClickListener, EditCa
     @Override
     protected void onSaveInstanceState(Bundle outState) {
         super.onSaveInstanceState(outState);
-        outState.putParcelable(BUNDLE_KEY_OUTSTANDING_PICK, mRecord);
+        outState.putParcelable(BUNDLE_KEY_RECORD, mRecord);
     }
 
     interface GetTagQuery {