From afd656c6b4f4a77a65af2efc3e3a628bde802401 Mon Sep 17 00:00:00 2001 From: sponge-transport <sponge-transport@mail.i2p> Date: Thu, 4 Oct 2012 16:46:03 +0000 Subject: [PATCH] Fixes to peers webviewer --- custom_rules.xml | 23 ++++++++- res/raw/router_config | 14 +++--- res/values/strings.xml | 1 - res/xml/settings1.xml | 48 ++++++++++++------- .../router/activity/InitActivities.java | 10 ++-- .../router/activity/PeersActivity.java | 24 ++++++---- 6 files changed, 79 insertions(+), 41 deletions(-) diff --git a/custom_rules.xml b/custom_rules.xml index 66118f61b..66833a762 100644 --- a/custom_rules.xml +++ b/custom_rules.xml @@ -411,10 +411,23 @@ <copy file="LICENSE.txt" tofile="res/raw/license_app_txt" /> <copy file="licenses/LICENSE-Apache2.0.txt" tofile="res/raw/license_apache20_txt" /> <copy file="${i2pbase}/installer/resources/themes/console/images/i2plogo.png" todir="res/drawable/" /> + <!-- + + No, no, no. Wrong, wrong, wrong. Static web sources should be in + the assets directory. + <copy file="${i2pbase}/installer/resources/themes/console/images/outbound.png" todir="res/drawable/" /> <copy file="${i2pbase}/installer/resources/themes/console/images/inbound.png" todir="res/drawable/" /> <copy file="${i2pbase}/installer/resources/themes/console/light/images/header.png" todir="res/drawable/" /> - <copy file="${i2pbase}/installer/resources/themes/console/light/console.css" tofile="res/raw/console_css" /> + <copy file="${i2pbase}/installer/resources/themes/console/light/console.css" tofile="res/drawable/console_css" /> + --> + + <copy file="${i2pbase}/installer/resources/themes/console/images/i2plogo.png" todir="assets/themes/console/images/" /> + <copy file="${i2pbase}/installer/resources/themes/console/images/outbound.png" todir="assets/themes/console/images/" /> + <copy file="${i2pbase}/installer/resources/themes/console/images/inbound.png" todir="assets/themes/console/images/" /> + <copy file="${i2pbase}/installer/resources/themes/console/light/images/header.png" todir="assets/themes/console/light/images/" /> + <copy file="${i2pbase}/installer/resources/themes/console/light/console.css" todir="assets/themes/console/light/" /> + <copy file="${i2pbase}/installer/resources/blocklist.txt" tofile="res/raw/blocklist_txt" /> <copy file="${i2pbase}/installer/resources/hosts.txt" tofile="res/raw/hosts_txt" /> <copy file="${i2pbase}/licenses/LICENSE-ElGamalDSA.txt" tofile="res/raw/license_elgamaldsa_txt" /> @@ -446,6 +459,14 @@ <delete file="res/drawable/inbound.png" verbose="${verbose}"/> <delete file="res/drawable/header.png" verbose="${verbose}"/> <delete file="res/raw/console_css" verbose="${verbose}"/> + + <delete file="assets/themes/console/images/i2plogo.png" /> + <delete file="assets/themes/console/images/outbound.png" /> + <delete file="assets/themes/console/images/inbound.png" /> + <delete file="assets/themes/console/light/images/header.png" /> + <delete file="assets/themes/console/light/console.css" /> + + <delete file="res/raw/blocklist_txt" verbose="${verbose}" /> <delete file="res/raw/hosts_txt" verbose="${verbose}" /> <delete file="res/raw/license_app_txt" /> diff --git a/res/raw/router_config b/res/raw/router_config index b60f6c45c..c922bfd4c 100644 --- a/res/raw/router_config +++ b/res/raw/router_config @@ -20,7 +20,7 @@ time.disabled=false # # no external I2CP (7654) # -i2cp.disableInterface=true +i2cp.disableInterface=false # # hosts.txt should be more crash-proof than blockfile # Todo: implement a NamingService using the android native SQLite @@ -38,8 +38,8 @@ router.outboundPool.backupQuantity=0 router.outboundPool.length=2 router.outboundPool.lengthVariance=0 router.outboundPool.quantity=2 -router.maxParticipatingTunnels=0 -router.sharePercentage=10 +router.maxParticipatingTunnels=20 +router.sharePercentage=80 # ##### Transport # @@ -49,12 +49,12 @@ i2np.bandwidth.outboundKBytesPerSecond=100 # NTCP # i2np.ntcp.enable=true -i2np.ntcp.maxConnections=24 +i2np.ntcp.maxConnections=32 # # UDP # i2np.udp.enable=true -i2np.udp.maxConnections=24 +i2np.udp.maxConnections=32 # # # not on android @@ -69,8 +69,8 @@ i2np.upnp.enable=true # # Hidden by default, this turns off sharing, etc. -# -router.hiddenMode=true +# bad idea, reduces user experience. Paranoids should set this only. +router.hiddenMode=false # # Bad idea, disable it! diff --git a/res/values/strings.xml b/res/values/strings.xml index 225c90147..fa16c9bc5 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -5,7 +5,6 @@ <string name="welcome_new_install">Welcome to I2P! This app is ALPHA software and it does not provide strong anonymity. Please read the release notes and license information.</string> <string name="welcome_new_version">New version installed. Please read the release notes. Version:</string> <string name="settings_label_subscriptions">I2P Addressbook Settings</string> - <string name="hello_world">Hello world!</string> <string name="menu_settings">Settings</string> </resources> \ No newline at end of file diff --git a/res/xml/settings1.xml b/res/xml/settings1.xml index ed52d23d4..06222c6d9 100644 --- a/res/xml/settings1.xml +++ b/res/xml/settings1.xml @@ -16,7 +16,7 @@ --> <CheckBoxPreference android:key="i2cp.disableInterface" - android:defaultValue="true" + android:defaultValue="false" android:title="Disable i2cp interface" /> <!-- @@ -36,39 +36,51 @@ --> <com.hlidskialf.android.preference.SeekBarPreference android:key="i2np.bandwidth.outboundKBytesPerSecond" - android:defaultValue="30" + android:defaultValue="100" android:max="1000" android:title="Outbound speed" android:summary="Maximum outbound speed" android:dialogMessage="Maximum outbound speed" android:text=" KByets/sec" /> + + <CheckBoxPreference + android:key="i2np.ntcp.enable" + android:defaultValue="true" + android:title="Enable NTCP" + /> + + <!-- + i2np.udp.enable=false + I might hide this one... + --> + <CheckBoxPreference + android:key="i2np.udp.enable" + android:defaultValue="true" + android:title="Enable UDP" + android:summary="DO NOT DISABLE THIS" + /> + <!-- i2np.ntcp.maxConnections=24 --> <com.hlidskialf.android.preference.SeekBarPreference android:key="i2np.ntcp.maxConnections" - android:defaultValue="24" + android:defaultValue="32" android:max="250" android:title="Max NTCP connections" - android:summary="Maximum NTCP connections allowed" + android:summary="Maximum NTCP connections allowed (default=32)" android:dialogMessage="Maximum NTCP connections" android:text=" connections" - /> - <!-- - i2np.udp.enable=false - --> - <CheckBoxPreference - android:key="i2np.udp.enable" - android:defaultValue="false" - android:title="Enable UDP" + android:dependency="i2np.ntcp.enable" + android:shouldDisableView="true" /> <!-- i2np.udp.maxConnections=12 --> <com.hlidskialf.android.preference.SeekBarPreference android:key="i2np.udp.maxConnections" - android:defaultValue="24" + android:defaultValue="32" android:max="500" android:title="Max UDP connections" android:summary="Maximum UDP connections allowed" @@ -82,7 +94,7 @@ --> <CheckBoxPreference android:key="i2np.upnp.enable" - android:defaultValue="false" + android:defaultValue="true" android:title="Enable UPNP" /> @@ -100,10 +112,10 @@ --> <com.hlidskialf.android.preference.SeekBarPreference android:key="router.maxParticipatingTunnels" - android:defaultValue="0" + android:defaultValue="20" android:max="500" android:title="Max Participating Tunnels" - android:summary="Maximum tunnels to participate in (default=0)" + android:summary="Maximum tunnels to participate in (default=20)" android:dialogMessage="Maximum tunnels to participate in" android:text=" Tunnels" android:dependency="router.hiddenMode" @@ -113,10 +125,10 @@ --> <com.hlidskialf.android.preference.SeekBarPreference android:key="router.sharePercentage" - android:defaultValue="10" + android:defaultValue="80" android:max="100" android:title="Share Percentage" - android:summary="Percentage of bandwith to share (default=10)" + android:summary="Percentage of bandwith to share (default=80)" android:dialogMessage="Percentage of bandwith to share" android:text="%" android:dependency="router.hiddenMode" diff --git a/src/net/i2p/android/router/activity/InitActivities.java b/src/net/i2p/android/router/activity/InitActivities.java index fbc6ff8a0..1f41704d8 100644 --- a/src/net/i2p/android/router/activity/InitActivities.java +++ b/src/net/i2p/android/router/activity/InitActivities.java @@ -100,19 +100,19 @@ class InitActivities { File cssDir = new File(docsDir, "themes/console/light"); cssDir.mkdirs(); - copyResourceToFile(R.raw.console_css, "docs/themes/console/light/console.css"); - copyResourceToFile(R.raw.android_css, "docs/themes/console/light/android.css"); + //copyResourceToFile(R.raw.console_css, "docs/themes/console/light/console.css"); + //copyResourceToFile(R.raw.android_css, "docs/themes/console/light/android.css"); File imgDir = new File(docsDir, "themes/console/images"); imgDir.mkdir(); copyResourceToFile(R.drawable.i2plogo, "docs/themes/console/images/i2plogo.png"); copyResourceToFile(R.drawable.itoopie_sm, "docs/themes/console/images/itoopie_sm.png"); - copyResourceToFile(R.drawable.outbound, "docs/themes/console/images/outbound.png"); - copyResourceToFile(R.drawable.inbound, "docs/themes/console/images/inbound.png"); + //copyResourceToFile(R.drawable.outbound, "docs/themes/console/images/outbound.png"); + //copyResourceToFile(R.drawable.inbound, "docs/themes/console/images/inbound.png"); File img2Dir = new File(cssDir, "images"); img2Dir.mkdir(); - copyResourceToFile(R.drawable.header, "docs/themes/console/light/images/header.png"); + //copyResourceToFile(R.drawable.header, "docs/themes/console/light/images/header.png"); File certDir = new File(myDir, "certificates"); certDir.mkdir(); diff --git a/src/net/i2p/android/router/activity/PeersActivity.java b/src/net/i2p/android/router/activity/PeersActivity.java index 73aec24aa..395ec0280 100644 --- a/src/net/i2p/android/router/activity/PeersActivity.java +++ b/src/net/i2p/android/router/activity/PeersActivity.java @@ -8,6 +8,7 @@ import java.io.IOException; import java.io.StringWriter; import net.i2p.android.router.R; import net.i2p.android.router.service.RouterService; +import net.i2p.android.router.util.Util; import net.i2p.router.CommSystemFacade; public class PeersActivity extends I2PActivityBase { @@ -24,7 +25,7 @@ public class PeersActivity extends I2PActivityBase { super.onCreate(savedInstanceState); setContentView(R.layout.peers); WebView wv = (WebView) findViewById(R.id.peers_webview); - wv.getSettings().setLoadsImagesAutomatically(false); + wv.getSettings().setLoadsImagesAutomatically(true); // was false // http://stackoverflow.com/questions/2369310/webview-double-tap-zoom-not-working-on-a-motorola-droid-a855 wv.getSettings().setUseWideViewPort(true); _wvClient = new I2PWebViewClient(this); @@ -49,6 +50,7 @@ public class PeersActivity extends I2PActivityBase { private void update() { WebView wv = (WebView) findViewById(R.id.peers_webview); + wv.clearHistory(); // fixes having to hit back. CommSystemFacade comm = getCommSystem(); String data; if (comm != null) { @@ -57,7 +59,7 @@ public class PeersActivity extends I2PActivityBase { try { comm.renderStatusHTML(out, "http://thiswontwork.i2p/peers", 0); out.append(FOOTER); - data = out.toString(); + data = out.toString().replaceAll("/themes", "themes"); } catch (IOException ioe) { data = HEADER + "Error: " + ioe + FOOTER; } @@ -65,10 +67,11 @@ public class PeersActivity extends I2PActivityBase { data = HEADER + "No peer data available. The router is not running." + FOOTER; } try { - wv.loadData(data, "text/html", "UTF-8"); + // wv.loadData(data, "text/html", "UTF-8"); // figure out a way to get /themes/console/images/outbound.png to load - //String url = "file://" + _myDir + "/docs/"; - //wv.loadDataWithBaseURL(url, data, "text/html", "UTF-8", url); + // String url = "file://" + _myDir + "/docs/"; + String url = "file:///android_asset/"; + wv.loadDataWithBaseURL(url, data, "text/html", "UTF-8", url); } catch (Exception e) { } } @@ -79,10 +82,13 @@ public class PeersActivity extends I2PActivityBase { if ((keyCode == KeyEvent.KEYCODE_BACK)) { _wvClient.cancelAll(); wv.stopLoading(); - if (wv.canGoBack()) { - wv.goBack(); - return true; - } + + // We do not want to go back, or keep history... Theere is no need to. + // What we DO want to do is exit! + //if (wv.canGoBack()) { + // wv.goBack(); + // return true; + //} } return super.onKeyDown(keyCode, event); } -- GitLab