Added expert setting for direct search

Daniel Gultsch created

Change summary

src/main/java/eu/siacs/conversations/ui/StartConversationActivity.java | 10 
src/main/res/values/defaults.xml                                       |  1 
src/main/res/values/strings.xml                                        |  2 
src/main/res/xml/preferences.xml                                       |  5 
4 files changed, 17 insertions(+), 1 deletion(-)

Detailed changes

src/main/java/eu/siacs/conversations/ui/StartConversationActivity.java 🔗

@@ -7,6 +7,7 @@ import android.app.PendingIntent;
 import android.content.ActivityNotFoundException;
 import android.content.Context;
 import android.content.Intent;
+import android.content.SharedPreferences;
 import android.content.pm.PackageManager;
 import android.databinding.DataBindingUtil;
 import android.net.Uri;
@@ -283,7 +284,12 @@ public class StartConversationActivity extends XmppActivity implements XmppConne
 		mConferenceAdapter = new ListItemAdapter(this, conferences);
 		mContactsAdapter = new ListItemAdapter(this, contacts);
 		mContactsAdapter.setOnTagClickedListener(this.mOnTagClickedListener);
-		this.mHideOfflineContacts = getPreferences().getBoolean("hide_offline", false);
+
+		final SharedPreferences preferences = getPreferences();
+
+		this.mHideOfflineContacts = preferences.getBoolean("hide_offline", false);
+
+		final boolean startSearching = preferences.getBoolean("start_searching",getResources().getBoolean(R.bool.start_searching));
 
 		final Intent intent;
 		if (savedInstanceState == null) {
@@ -299,6 +305,8 @@ public class StartConversationActivity extends XmppActivity implements XmppConne
 		if (isViewIntent(intent)) {
 			pendingViewIntent.push(intent);
 			setIntent(createLauncherIntent(this));
+		} else if (startSearching && mInitialSearchValue.peek() == null) {
+			mInitialSearchValue.push("");
 		}
 	}
 

src/main/res/values/defaults.xml 🔗

@@ -44,4 +44,5 @@
     <string name="omemo_setting_default">default_on</string>
     <string name="default_font_size">small</string>
     <bool name="use_share_location_plugin">false</bool>
+    <bool name="start_searching">false</bool>
 </resources>

src/main/res/values/strings.xml 🔗

@@ -713,4 +713,6 @@
     <string name="copy_link">Copy web address</string>
     <string name="copy_jabber_id">Copy Jabber ID</string>
     <string name="p1_s3_filetransfer">HTTP File Sharing for S3</string>
+    <string name="pref_start_search">Direct Search</string>
+    <string name="pref_start_search_summary">At ‘Start Conversation’ screen open keyboard and place cursor in search field</string>
 </resources>

src/main/res/xml/preferences.xml 🔗

@@ -268,6 +268,11 @@
                     android:title="@string/pref_show_connection_options"/>
             </PreferenceCategory>
             <PreferenceCategory android:title="@string/pref_input_options">
+                <CheckBoxPreference
+                    android:defaultValue="@bool/start_searching"
+                    android:key="start_searching"
+                    android:summary="@string/pref_start_search_summary"
+                    android:title="@string/pref_start_search"/>
                 <CheckBoxPreference
                     android:defaultValue="@bool/enter_is_send"
                     android:key="enter_is_send"