From 957f71184c0e535794763fc73102fe3289cf47ed Mon Sep 17 00:00:00 2001 From: Marius Gavrilescu Date: Wed, 6 Mar 2013 00:32:22 +0200 Subject: [PATCH] Let user change server hostname/port --- res/xml/prefs.xml | 2 ++ .../fonbot/FonBotPreferenceActivity.java | 32 +++++++++++++++++++ .../fonbot/SendHttpMessageAsyncTask.java | 5 ++- 3 files changed, 38 insertions(+), 1 deletion(-) diff --git a/res/xml/prefs.xml b/res/xml/prefs.xml index b289fc9..a962a76 100644 --- a/res/xml/prefs.xml +++ b/res/xml/prefs.xml @@ -6,4 +6,6 @@ + + \ No newline at end of file diff --git a/src/ro/ieval/fonbot/FonBotPreferenceActivity.java b/src/ro/ieval/fonbot/FonBotPreferenceActivity.java index 848a436..8754825 100644 --- a/src/ro/ieval/fonbot/FonBotPreferenceActivity.java +++ b/src/ro/ieval/fonbot/FonBotPreferenceActivity.java @@ -10,6 +10,7 @@ import android.content.Intent; import android.content.pm.ApplicationInfo; import android.os.Bundle; import android.preference.CheckBoxPreference; +import android.preference.EditTextPreference; import android.preference.Preference; import android.preference.Preference.OnPreferenceChangeListener; import android.preference.PreferenceActivity; @@ -137,6 +138,37 @@ public final class FonBotPreferenceActivity extends PreferenceActivity { return true; } }); + + final EditTextPreference hostnamePreference=(EditTextPreference) findPreference("hostname"); + hostnamePreference.setSummary(hostnamePreference.getText()); + hostnamePreference.setOnPreferenceChangeListener(new OnPreferenceChangeListener() { + @Override + public boolean onPreferenceChange(final @Nullable Preference preference, final @Nullable Object newValue) { + if(newValue==null) + return false; + + hostnamePreference.setSummary(newValue.toString()); + return true; + } + }); + + final EditTextPreference portPreference=(EditTextPreference) findPreference("port"); + portPreference.setSummary(portPreference.getText()); + portPreference.setOnPreferenceChangeListener(new OnPreferenceChangeListener() { + @Override + public boolean onPreferenceChange(final @Nullable Preference preference, final @Nullable Object newValue) { + if(newValue==null) + return false; + + try{ + Integer.parseInt(newValue.toString()); + } catch (NumberFormatException e){ + return false; + } + portPreference.setSummary(newValue.toString()); + return true; + } + }); } @Override diff --git a/src/ro/ieval/fonbot/SendHttpMessageAsyncTask.java b/src/ro/ieval/fonbot/SendHttpMessageAsyncTask.java index a40f7ed..e278481 100644 --- a/src/ro/ieval/fonbot/SendHttpMessageAsyncTask.java +++ b/src/ro/ieval/fonbot/SendHttpMessageAsyncTask.java @@ -14,6 +14,7 @@ import org.eclipse.jdt.annotation.Nullable; import android.content.Context; import android.content.Intent; import android.os.AsyncTask; +import android.preference.PreferenceManager; import android.util.Log; /* @@ -127,7 +128,9 @@ public final class SendHttpMessageAsyncTask extends AsyncTask