]> gitweb.stoutner.com Git - PrivacyBrowserAndroid.git/blobdiff - app/src/main/java/com/stoutner/privacybrowser/Webview.java
Create code to toggle Save Form Data, but disable it until database storage is implem...
[PrivacyBrowserAndroid.git] / app / src / main / java / com / stoutner / privacybrowser / Webview.java
index 138a35b0190494d151692b85f2f5b4de6989a0ae..154353f7ff7b120c5c46538481894e4ddcae8004 100644 (file)
@@ -65,8 +65,16 @@ public class Webview extends AppCompatActivity implements CreateHomeScreenShortc
     private String formattedUrlString;
     // homepage is used in onCreate and onOptionsItemSelected.
     private String homepage = "https://www.duckduckgo.com/";
-    // enableJavaScript is used onCreate and onOptionsItemSelected.
+    // enableJavaScript is used in onCreate, onCreateOptionsMenu, and onOptionsItemSelected.
     private boolean enableJavaScript;
+    // enableDomStorage is used in onCreate, onCreateOptionsMenu, and onOptionsItemSelected.
+    private boolean enableDomStorage;
+
+    /*  enableSaveFormData does nothing until database storage is implemented.
+    // enableSaveFormData is used in onCreate, onCreateOptionsMenu, and onOptionsItemSelected.
+    private boolean enableSaveFormData;
+    */
+
     // actionBar is used in onCreate and onOptionsItemSelected.
     private ActionBar actionBar;
 
@@ -255,14 +263,17 @@ public class Webview extends AppCompatActivity implements CreateHomeScreenShortc
 
         // Set JavaScript initial status.
         enableJavaScript = true;
-        if (enableJavaScript) {
-            mainWebView.getSettings().setJavaScriptEnabled(true);
-        } else {
-            mainWebView.getSettings().setJavaScriptEnabled(false);
-        }
+        mainWebView.getSettings().setJavaScriptEnabled(enableJavaScript);
+
+        // Set DOM Storage initial status.
+        enableDomStorage = true;
+        mainWebView.getSettings().setDomStorageEnabled(enableDomStorage);
 
-        // Enable DOM Storage.
-        mainWebView.getSettings().setDomStorageEnabled(true);
+        /* Save Form Data does nothing until database storage is implemented.
+        // Set Save Form Data initial status.
+        enableSaveFormData = true;
+        mainWebView.getSettings().setSaveFormData(enableSaveFormData);
+        */
 
         // Get the intent information that started the app.
         final Intent intent = getIntent();
@@ -287,13 +298,17 @@ public class Webview extends AppCompatActivity implements CreateHomeScreenShortc
         // Inflate the menu; this adds items to the action bar if it is present.
         getMenuInflater().inflate(R.menu.menu_webview, menu);
         MenuItem toggleJavaScriptMenuItem = menu.findItem(R.id.toggleJavaScript);
-
-        // Set the JavaScript menu item checkbox initial status.
-        if (enableJavaScript) {
-            toggleJavaScriptMenuItem.setChecked(true);
-        } else {
-            toggleJavaScriptMenuItem.setChecked(false);
-        }
+        MenuItem toggleDomStorageMenuItem = menu.findItem(R.id.toggleDomStorage);
+        /* toggleSaveFormData does nothing until database storage is implemented.
+        MenuItem toggleSaveFormDataMenuItem = menu.findItem(R.id.toggleSaveFormData);
+        */
+
+        // Set the initial status of the menu item checkboxes.
+        toggleJavaScriptMenuItem.setChecked(enableJavaScript);
+        toggleDomStorageMenuItem.setChecked(enableDomStorage);
+        /* toggleSaveFormData does nothing until database storage is implemented.
+        toggleSaveFormDataMenuItem.setChecked(enableSaveFormData);
+        */
 
         return true;
     }
@@ -314,21 +329,51 @@ public class Webview extends AppCompatActivity implements CreateHomeScreenShortc
                     enableJavaScript = false;
                     menuItem.setChecked(false);
                     mainWebView.getSettings().setJavaScriptEnabled(false);
-                    mainWebView.loadUrl(formattedUrlString);
+                    mainWebView.reload();
                 } else {
                     enableJavaScript = true;
                     menuItem.setChecked(true);
                     mainWebView.getSettings().setJavaScriptEnabled(true);
-                    mainWebView.loadUrl(formattedUrlString);
+                    mainWebView.reload();
                 }
                 return true;
 
+            case R.id.toggleDomStorage:
+                if (enableDomStorage) {
+                    enableDomStorage = false;
+                    menuItem.setChecked(false);
+                    mainWebView.getSettings().setDomStorageEnabled(false);
+                    mainWebView.reload();
+                } else {
+                    enableDomStorage = true;
+                    menuItem.setChecked(true);
+                    mainWebView.getSettings().setDomStorageEnabled(true);
+                    mainWebView.reload();
+                }
+                return true;
+
+            /* toggleSaveFormData does nothing until database storage is implemented.
+            case R.id.toggleSaveFormData:
+                if (enableSaveFormData) {
+                    enableSaveFormData = false;
+                    menuItem.setChecked(false);
+                    mainWebView.getSettings().setSaveFormData(false);
+                    mainWebView.reload();
+                } else {
+                    enableSaveFormData = true;
+                    menuItem.setChecked(true);
+                    mainWebView.getSettings().setSaveFormData(true);
+                    mainWebView.reload();
+                }
+                return true;
+            */
+
             case R.id.home:
                 mainWebView.loadUrl(homepage);
                 return true;
 
             case R.id.refresh:
-                mainWebView.loadUrl(formattedUrlString);
+                mainWebView.reload();
                 return true;
 
             case R.id.back: