/** * Load chapter for external url (not hosted in Baka-Tsuki). Used local cache if available * (wac/mht). * * @param pageModel * @param refresh */ public void loadExternalUrl(PageModel pageModel, boolean refresh) { try { // check if .wac available String url = pageModel.getPage(); String wacName = Util.getSavedWacName(url); final NonLeakingWebView wv = (NonLeakingWebView) findViewById(R.id.webViewContent); if (!Util.isStringNullOrEmpty(wacName) && !refresh) { client.setExternalNeedSave(false); String[] urlParts = url.split("#", 2); if (urlParts.length == 2) { executeLoadWacTask(wacName, urlParts[1], url); } else executeLoadWacTask(wacName, "", url); } else { if (refresh) { Toast.makeText(this, "Refreshing WAC: " + wacName, Toast.LENGTH_SHORT).show(); Log.i(TAG, "Refreshing WAC: " + wacName); } else { Log.w(TAG, "WAC not available: " + wacName); } client.setExternalNeedSave(true); setWebViewSettings(); wv.loadUrl(url); Intent currIntent = this.getIntent(); currIntent.putExtra(Constants.EXTRA_PAGE, url); currIntent.putExtra(Constants.EXTRA_PAGE_IS_EXTERNAL, true); } setChapterTitle(pageModel); buildTOCMenu(pageModel); content = null; } catch (Exception ex) { Log.e(TAG, "Cannot load external content: " + pageModel.getPage(), ex); } }