From ec977eb2884ac053daaadd06a8eb9b7deb32b5bc Mon Sep 17 00:00:00 2001 From: Philipp Schaefer Date: Fri, 14 Jun 2013 01:04:29 +0200 Subject: [PATCH 1/4] commit change of JSInterface too --- mobile/src/com/cradle/iitc_mobile/IITC_JSInterface.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mobile/src/com/cradle/iitc_mobile/IITC_JSInterface.java b/mobile/src/com/cradle/iitc_mobile/IITC_JSInterface.java index 284d624a..bbb5a7eb 100644 --- a/mobile/src/com/cradle/iitc_mobile/IITC_JSInterface.java +++ b/mobile/src/com/cradle/iitc_mobile/IITC_JSInterface.java @@ -76,8 +76,8 @@ public class IITC_JSInterface { } @JavascriptInterface - public void dialogOpened(String id) { - ((IITC_Mobile) context).dialogOpened(id); + public void dialogOpened(String id, boolean open) { + ((IITC_Mobile) context).dialogOpened(id, open); } // get layers and list them in a dialog From a7a25098c947f03a99d7b43065874ec0e27e558b Mon Sep 17 00:00:00 2001 From: Philipp Schaefer Date: Fri, 14 Jun 2013 01:32:38 +0200 Subject: [PATCH 2/4] don't remove dialog onBackPressed from dialogStack since it is done via JS_Interface callback --- mobile/src/com/cradle/iitc_mobile/IITC_Mobile.java | 1 - 1 file changed, 1 deletion(-) diff --git a/mobile/src/com/cradle/iitc_mobile/IITC_Mobile.java b/mobile/src/com/cradle/iitc_mobile/IITC_Mobile.java index ea741bd5..da0ae4d1 100644 --- a/mobile/src/com/cradle/iitc_mobile/IITC_Mobile.java +++ b/mobile/src/com/cradle/iitc_mobile/IITC_Mobile.java @@ -271,7 +271,6 @@ public class IITC_Mobile extends Activity { if (!dialogStack.isEmpty()) { int last = dialogStack.size() - 1; String id = dialogStack.get(last); - dialogStack.remove(last); iitc_view.loadUrl("javascript: " + "var selector = $(window.DIALOGS['" + id + "']); " + "selector.dialog('close'); " + From 855b7c22af72e81b2ee57721abb89987c97e2490 Mon Sep 17 00:00:00 2001 From: Philipp Schaefer Date: Fri, 14 Jun 2013 11:21:44 +0200 Subject: [PATCH 3/4] fixed portal long tab issue --- code/smartphone.js | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/code/smartphone.js b/code/smartphone.js index 59acb7af..3c38940f 100644 --- a/code/smartphone.js +++ b/code/smartphone.js @@ -92,10 +92,9 @@ window.runOnSmartphonesAfterBoot = function() { $(this._container).on('taphold', function() { if (typeof android !== 'undefined' && android && android.portalLongPressed) { android.portalLongPressed(); - } else { - window.renderPortalDetails(guid); - window.smartphone.sideButton.click(); } + window.renderPortalDetails(guid); + window.smartphone.sideButton.click(); }); }); }); From cc44392d03d164c8fc6236c50cd7aa40d370bf2d Mon Sep 17 00:00:00 2001 From: Philipp Schaefer Date: Fri, 14 Jun 2013 12:02:03 +0200 Subject: [PATCH 4/4] reload page after login --- code/smartphone.js | 5 +++-- .../com/cradle/iitc_mobile/IITC_WebViewClient.java | 12 ++++++++++++ 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/code/smartphone.js b/code/smartphone.js index 3c38940f..cde15ab1 100644 --- a/code/smartphone.js +++ b/code/smartphone.js @@ -90,11 +90,12 @@ window.runOnSmartphonesAfterBoot = function() { // this is a hack, accessing Leaflet’s private _container is evil $(this._container).on('taphold', function() { + window.renderPortalDetails(guid); if (typeof android !== 'undefined' && android && android.portalLongPressed) { android.portalLongPressed(); + } else { + window.smartphone.sideButton.click(); } - window.renderPortalDetails(guid); - window.smartphone.sideButton.click(); }); }); }); diff --git a/mobile/src/com/cradle/iitc_mobile/IITC_WebViewClient.java b/mobile/src/com/cradle/iitc_mobile/IITC_WebViewClient.java index 39dfcd54..94d948fa 100644 --- a/mobile/src/com/cradle/iitc_mobile/IITC_WebViewClient.java +++ b/mobile/src/com/cradle/iitc_mobile/IITC_WebViewClient.java @@ -140,9 +140,21 @@ public class IITC_WebViewClient extends WebViewClient { */ @Override public void onReceivedLoginRequest(WebView view, String realm, String account, String args) { + Log.d("iitcm", "Login requested: " + realm + " " + account + " " + args); ((IITC_Mobile) context).onReceivedLoginRequest(this, view, realm, account, args); } + @Override + public void onPageFinished(WebView view, String url) { + if (url.contains("accounts.google.com")) { + Log.d("iitcm", "reload after login"); + IITC_Mobile main_activity = ((IITC_Mobile) context); + main_activity.loadUrl(main_activity.intel_url); + return; + } + super.onPageFinished(view, url); + } + // parse all enabled iitc plugins // returns a string containing all plugins without their wrappers public String parsePlugins() {