From 5ac6d512898ee165c62a578d5dc4fd288d99e3dc Mon Sep 17 00:00:00 2001 From: str4d <str4d@mail.i2p> Date: Mon, 26 Aug 2013 04:18:02 +0000 Subject: [PATCH] Added support to SingleTextFieldPage for setting a default string --- .../android/i2ptunnel/activity/TunnelWizardModel.java | 2 ++ .../i2p/android/wizard/model/SingleTextFieldPage.java | 11 +++++++++++ .../android/wizard/ui/SingleTextFieldFragment.java | 8 +++++++- 3 files changed, 20 insertions(+), 1 deletion(-) diff --git a/src/net/i2p/android/i2ptunnel/activity/TunnelWizardModel.java b/src/net/i2p/android/i2ptunnel/activity/TunnelWizardModel.java index 15b9ae925..ee5852979 100644 --- a/src/net/i2p/android/i2ptunnel/activity/TunnelWizardModel.java +++ b/src/net/i2p/android/i2ptunnel/activity/TunnelWizardModel.java @@ -45,6 +45,7 @@ public class TunnelWizardModel extends AbstractWizardModel { .setDescription("If you know of any outproxies for this type of tunnel (either HTTP or SOCKS), fill them in. Separate multiple proxies with commas.") .setEqualAnyCondition(cClientType, "HTTP", "CONNECT", "SOCKS 4/4a/5", "SOCKS IRC"), new SingleTextFieldPage(this, "Target host") + .setDefault("127.0.0.1") .setDescription("This is the IP that your service is running on, this is usually on the same machine so 127.0.0.1 is autofilled.") .setEqualCondition(cClientType, "Streamr") .setEqualAnyCondition(cServerType, "Standard", "HTTP", "HTTP bidir", "IRC"), @@ -52,6 +53,7 @@ public class TunnelWizardModel extends AbstractWizardModel { .setDescription("This is the port that the service is accepting connections on.") .setEqualCondition(cTunnelType, "Server tunnel"), new SingleTextFieldPage(this, "Reachable on") + .setDefault("127.0.0.1") .setDescription("This limits what computers or smartphones can access this tunnel.") .setEqualAnyCondition(cClientType, "Standard", "HTTP", "IRC", "SOCKS 4/4a/5", "SOCKS IRC", "CONNECT") .setEqualAnyCondition(cServerType, "HTTP bidir", "Streamr"), diff --git a/src/net/i2p/android/wizard/model/SingleTextFieldPage.java b/src/net/i2p/android/wizard/model/SingleTextFieldPage.java index 4eafc93ff..c86bba6da 100644 --- a/src/net/i2p/android/wizard/model/SingleTextFieldPage.java +++ b/src/net/i2p/android/wizard/model/SingleTextFieldPage.java @@ -27,6 +27,8 @@ import java.util.ArrayList; * A page asking for a text field. */ public class SingleTextFieldPage extends Page { + // The null is checked in SingleTextFieldFragment + protected String mDef = null; protected String mDesc = ""; public SingleTextFieldPage(ModelCallbacks callbacks, String title) { @@ -48,6 +50,15 @@ public class SingleTextFieldPage extends Page { return !TextUtils.isEmpty(mData.getString(SIMPLE_DATA_KEY)); } + public SingleTextFieldPage setDefault(String def) { + mDef = def; + return this; + } + + public String getDefault() { + return mDef; + } + public SingleTextFieldPage setDescription(String desc) { mDesc = desc; return this; diff --git a/src/net/i2p/android/wizard/ui/SingleTextFieldFragment.java b/src/net/i2p/android/wizard/ui/SingleTextFieldFragment.java index 28ff223e0..59fe96678 100644 --- a/src/net/i2p/android/wizard/ui/SingleTextFieldFragment.java +++ b/src/net/i2p/android/wizard/ui/SingleTextFieldFragment.java @@ -70,7 +70,13 @@ public class SingleTextFieldFragment extends Fragment { mFieldView = ((TextView) rootView.findViewById(R.id.wizard_text_field)); mFieldView.setHint(mPage.getTitle()); - mFieldView.setText(mPage.getData().getString(Page.SIMPLE_DATA_KEY)); + if (mPage.getData().getString(Page.SIMPLE_DATA_KEY) != null) + mFieldView.setText(mPage.getData().getString(Page.SIMPLE_DATA_KEY)); + else if (mPage.getDefault() != null) { + mFieldView.setText(mPage.getDefault()); + mPage.getData().putString(Page.SIMPLE_DATA_KEY, mPage.getDefault()); + mPage.notifyDataChanged(); + } return rootView; } -- GitLab