Move to a Fragment world.

1) Start breaking the UI out into Fragments.
2) Switch to Cursor loaders from managed cursors.
3) Switch to inflated menu resources.
4) Break out some basic functionality into helper classes.
This commit is contained in:
Moxie Marlinspike
2012-07-18 15:35:13 -07:00
parent b93bb69c28
commit 3d9475676f
20 changed files with 1709 additions and 1173 deletions

View File

@@ -0,0 +1,13 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<fragment
android:id="@+id/fragment_content"
android:name="org.thoughtcrime.securesms.ConversationListFragment"
android:layout_width="fill_parent"
android:layout_height="fill_parent" />
</LinearLayout>

View File

@@ -0,0 +1,15 @@
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical">
<ListView android:id="@android:id/list"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:drawSelectorOnTop="false"
android:scrollbarStyle="insideOverlay"
android:fadingEdgeLength="16dip"/>
</LinearLayout>

View File

@@ -5,43 +5,12 @@
android:layout_height="fill_parent"
android:orientation="vertical">
<EditText android:id="@+id/search_text"
android:layout_height="wrap_content"
android:capitalize="sentences"
android:autoText="true"
android:singleLine="true"
android:hint="Search"
android:paddingRight="50dip"
android:layout_margin="10dip"
android:layout_width="fill_parent"
android:layout_alignParentBottom="true"
android:visibility="gone"/>
<ImageView android:id="@+id/search_close"
android:layout_height="wrap_content"
android:layout_width="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignParentBottom="true"
android:layout_marginRight="16dip"
android:layout_marginBottom="20dip"
android:src="@android:drawable/btn_dialog"
android:visibility="gone"
/>
<ListView android:id="@android:id/list"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:drawSelectorOnTop="false"
android:scrollbarStyle="insideOverlay"
android:fadingEdgeLength="16dip"
android:layout_alignParentTop="true"
android:layout_above="@id/search_text" />
<ProgressBar android:id="@+id/search_progress"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:indeterminate="true"
android:layout_centerInParent="true"
android:visibility="gone" />
android:layout_alignParentTop="true"/>
</RelativeLayout>

View File

@@ -0,0 +1,13 @@
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:title="Batch Mode"
android:id="@+id/menu_batch_mode"
android:icon="@android:drawable/ic_menu_share" />
<item android:title="Search"
android:id="@+id/menu_search"
android:icon="@drawable/ic_menu_search_holo_dark"
android:actionViewClass="android.widget.SearchView"
android:showAsAction="ifRoom|collapseActionView" />
</menu>

View File

@@ -0,0 +1,20 @@
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:title="Normal Mode"
android:id="@+id/menu_normal_mode"
android:icon="@android:drawable/ic_menu_set_as" />
<item android:title="Delete Selected"
android:id="@+id/menu_delete_selected"
android:icon="@drawable/ic_menu_trash_holo_dark"
android:showAsAction="ifRoom" />
<item android:title="Select All"
android:id="@+id/menu_select_all"
android:icon="@android:drawable/ic_menu_add" />
<item android:title="Unselect All"
android:id="@+id/menu_unselect_all"
android:icon="@android:drawable/ic_menu_revert" />
</menu>

View File

@@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:title="View Thread"
android:id="@+id/menu_context_view" />
<item android:title="Delete Thread"
android:id="@+id/menu_context_delete" />
</menu>

View File

@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:title="Batch Mode"
android:id="@+id/menu_batch_mode"
android:icon="@android:drawable/ic_menu_share" />
</menu>

View File

@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:title="Unlock"
android:id="@+id/menu_unlock"
android:showAsAction="ifRoom" />
</menu>

View File

@@ -0,0 +1,29 @@
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:title="New Message"
android:id="@+id/menu_new_message"
android:icon="@drawable/ic_menu_msg_compose_holo_dark"
android:showAsAction="ifRoom" />
<item android:title="Settings"
android:id="@+id/menu_settings"
android:icon="@android:drawable/ic_menu_preferences" />
<item android:title="Import/Export"
android:icon="@android:drawable/ic_menu_save">
<menu>
<item android:title="Import"
android:id="@+id/menu_import"
android:icon="@android:drawable/ic_menu_revert" />
<item android:title="Export"
android:id="@+id/menu_export"
android:icon="@android:drawable/ic_menu_save" />
</menu>
</item>
<item android:title="Clear Passphrase"
android:id="@+id/menu_clear_passphrase"
android:icon="@android:drawable/ic_menu_close_clear_cancel" />
</menu>