add refresh in overflow to NewConversationActivity

fixes #4470
closes #4564
// FREEBIE
master
Jake McGinty 2015-11-16 15:25:39 -08:00 committed by Moxie Marlinspike
parent 040f8c81bf
commit 2ce2a0d5c3
6 changed files with 34 additions and 1 deletions

View File

@ -36,6 +36,8 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:paddingLeft="10dp"
android:paddingRight="10dp"
android:gravity="center">
<ImageView android:id="@+id/search_dialpad"

View File

@ -0,0 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item android:title="@string/new_conversation_activity__refresh"
android:id="@+id/menu_refresh"
app:showAsAction="never" />
</menu>

View File

@ -1104,6 +1104,8 @@
<!-- media_preview_activity -->
<string name="media_preview_activity__image_content_description">Image Preview</string>
<!-- new_conversation_activity -->
<string name="new_conversation_activity__refresh">Refresh</string>
<!-- redphone_audio_popup_menu -->
<string name="redphone_audio_popup_menu__handset">Handset</string>
<string name="redphone_audio_popup_menu__headset">Headset</string>

View File

@ -45,6 +45,7 @@
<item name="elevation">2dp</item>
<item name="logo">@drawable/actionbar_icon_holo_dark</item>
<item name="icon">@drawable/actionbar_icon_holo_dark</item>
<item name="popupTheme">@style/ThemeOverlay.AppCompat.Light</item>
<item name="titleTextStyle">@style/TextSecure.TitleTextStyle</item>
<item name="subtitleTextStyle">@style/TextSecure.SubtitleTextStyle</item>
<item name="android:textColorPrimary">@color/white</item>

View File

@ -143,6 +143,10 @@ public class ContactSelectionListFragment extends Fragment
swipeRefresh.setRefreshing(false);
}
public void setRefreshing(boolean refreshing) {
swipeRefresh.setRefreshing(refreshing);
}
public void reset() {
selectedContacts.clear();
getLoaderManager().restartLoader(0, null, this);

View File

@ -19,7 +19,10 @@ package org.thoughtcrime.securesms;
import android.content.Intent;
import android.os.Bundle;
import android.support.annotation.NonNull;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
import android.view.View;
import org.thoughtcrime.securesms.crypto.MasterSecret;
import org.thoughtcrime.securesms.database.DatabaseFactory;
@ -71,10 +74,24 @@ public class NewConversationActivity extends ContactSelectionActivity {
super.onOptionsItemSelected(item);
switch (item.getItemId()) {
case android.R.id.home: super.onBackPressed(); return true;
case android.R.id.home: super.onBackPressed(); return true;
case R.id.menu_refresh: handleManualRefresh(); return true;
}
return false;
}
private void handleManualRefresh() {
contactsFragment.setRefreshing(true);
onRefresh();
}
@Override
protected boolean onPrepareOptionsPanel(View view, Menu menu) {
MenuInflater inflater = this.getMenuInflater();
menu.clear();
inflater.inflate(R.menu.new_conversation_activity, menu);
super.onPrepareOptionsMenu(menu);
return true;
}
}