package io.github.mthli.Bitocle.WebView; import android.content.Context; import android.content.Intent; import android.content.SharedPreferences; import android.os.AsyncTask; import android.os.Bundle; import android.view.View; import android.webkit.WebSettings; import android.webkit.WebView; import com.devspark.progressfragment.ProgressFragment; import io.github.mthli.Bitocle.R; import org.eclipse.egit.github.core.client.GitHubClient; public class WebViewFragment extends ProgressFragment { private String repoOwner; private String repoName; private String fileName; private String sha; private GitHubClient gitHubClient; private WebView webView; private WebViewTask webViewTask; @Override public void onActivityCreated(Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); setContentView(R.layout.webview_fragment); setContentShown(true); View view = getContentView(); webView = (WebView) view.findViewById(R.id.webview_fragment); /* Do something */ WebSettings webSettings = webView.getSettings(); webSettings.setBuiltInZoomControls(true); webSettings.setJavaScriptEnabled(true); webSettings.setLayoutAlgorithm(WebSettings.LayoutAlgorithm.NARROW_COLUMNS.NORMAL); webSettings.setLoadWithOverviewMode(true); webSettings.setLoadsImagesAutomatically(true); webSettings.setSupportMultipleWindows(true); webSettings.setSupportZoom(true); webSettings.setUseWideViewPort(true); SharedPreferences sharedPreferences = getActivity().getSharedPreferences(getString(R.string.login_sp), Context.MODE_PRIVATE); String oAuth = sharedPreferences.getString(getString(R.string.login_sp_oauth), null); gitHubClient = new GitHubClient(); gitHubClient.setOAuth2Token(oAuth); Intent intent = getActivity().getIntent(); repoOwner = intent.getStringExtra(getString(R.string.content_intent_repoowner)); repoName = intent.getStringExtra(getString(R.string.content_intent_reponame)); fileName = intent.getStringExtra(getString(R.string.content_intent_filename)); sha = intent.getStringExtra(getString(R.string.content_intent_sha)); webViewTask = new WebViewTask(WebViewFragment.this); webViewTask.execute(); } public String getRepoOwner() { return repoOwner; } public String getRepoName() { return repoName; } public String getFileName() { return fileName; } public String getSha() { return sha; } public GitHubClient getGitHubClient() { return gitHubClient; } public WebView getWebView() { return webView; } public void setWebViewTask(WebViewTask webViewTask) { this.webViewTask = webViewTask; } public void cancelAllTasks() { if (webViewTask != null && webViewTask.getStatus() == AsyncTask.Status.RUNNING) { webViewTask.cancel(true); } } }