+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see .
+ */
+
+package com.owncloud.android.ui.activity;
+
+import android.app.Activity;
+import android.content.Intent;
+import android.os.Bundle;
+import android.view.MenuItem;
+import android.view.Window;
+import android.webkit.WebChromeClient;
+import android.webkit.WebView;
+import android.webkit.WebViewClient;
+import android.widget.Toast;
+
+import com.owncloud.android.R;
+import com.owncloud.android.lib.common.utils.Log_OC;
+
+/**
+ * This activity shows an URL as a web view
+ */
+
+public class ExternalSiteWebView extends FileActivity {
+ private static final String TAG = ExternalSiteWebView.class.getSimpleName();
+
+ @Override
+ protected void onCreate(Bundle savedInstanceState) {
+ Log_OC.v(TAG, "onCreate() start");
+
+ // TODO get name, url, boolean showSidebar
+
+ // show progress
+ getWindow().requestFeature(Window.FEATURE_PROGRESS);
+
+ super.onCreate(savedInstanceState);
+
+ setContentView(R.layout.externalsite_webview);
+
+ WebView webview = (WebView) findViewById(R.id.webView);
+
+ // setup toolbar
+ setupToolbar();
+
+ // setup drawer
+ setupDrawer(R.id.nav_external);
+ getSupportActionBar().setTitle("About us");
+
+
+ // enable zoom
+ webview.getSettings().setBuiltInZoomControls(true);
+
+ // enable javascript
+ webview.getSettings().setJavaScriptEnabled(true);
+
+ final Activity activity = this;
+ webview.setWebChromeClient(new WebChromeClient() {
+ public void onProgressChanged(WebView view, int progress) {
+ activity.setProgress(progress * 1000);
+ }
+ });
+
+ webview.setWebViewClient(new WebViewClient() {
+ public void onReceivedError(WebView view, int errorCode, String description, String failingUrl) {
+ Toast.makeText(activity, getString(R.string.webview_error) + ": " + description, Toast.LENGTH_SHORT).show();
+ }
+ });
+
+ webview.loadUrl("http://nextcloud.com");
+ }
+
+ @Override
+ public boolean onOptionsItemSelected(MenuItem item) {
+ boolean retval;
+ switch (item.getItemId()) {
+ case android.R.id.home: {
+ if (isDrawerOpen()) {
+ closeDrawer();
+ } else {
+ openDrawer();
+ }
+ }
+
+ default:
+ retval = super.onOptionsItemSelected(item);
+ }
+ return retval;
+ }
+
+ @Override
+ public void showFiles(boolean onDeviceOnly) {
+ super.showFiles(onDeviceOnly);
+ Intent fileDisplayActivity = new Intent(getApplicationContext(),
+ FileDisplayActivity.class);
+ fileDisplayActivity.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
+ startActivity(fileDisplayActivity);
+ }
+}
diff --git a/src/main/res/layout/externalsite_webview.xml b/src/main/res/layout/externalsite_webview.xml
new file mode 100644
index 0000000000..2581202464
--- /dev/null
+++ b/src/main/res/layout/externalsite_webview.xml
@@ -0,0 +1,50 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/main/res/values/strings.xml b/src/main/res/values/strings.xml
index 2c2d649c10..f6818df3e7 100644
--- a/src/main/res/values/strings.xml
+++ b/src/main/res/values/strings.xml
@@ -619,6 +619,7 @@
No activity yet
This stream will show events like\nadditions, changes & shares
+ Error occurred