Refactor the code to make all the Java files lint free.
[PrivacyBrowser.git] / app / src / main / java / com / stoutner / privacybrowser / EditBookmark.java
index ed6cc85089c4d595833e535e4fe247950c94b3d9..e42fc0e38ec88986f26a6b7cd03833a9546a853b 100644 (file)
 
 package com.stoutner.privacybrowser;
 
-import android.app.Activity;
+import android.annotation.SuppressLint;
 import android.app.Dialog;
 import android.app.DialogFragment;
+import android.content.Context;
 import android.content.DialogInterface;
 import android.database.Cursor;
 import android.graphics.Bitmap;
@@ -44,21 +45,23 @@ public class EditBookmark extends DialogFragment {
     // `editBookmarkListener` is used in `onAttach()` and `onCreateDialog()`
     private EditBookmarkListener editBookmarkListener;
 
-    public void onAttach(Activity parentActivity) {
-        super.onAttach(parentActivity);
+    public void onAttach(Context context) {
+        super.onAttach(context);
 
-        // Get a handle for `EditBookmarkListener` from `parentActivity`.
+        // Get a handle for `EditBookmarkListener` from `context`.
         try {
-            editBookmarkListener = (EditBookmarkListener) parentActivity;
+            editBookmarkListener = (EditBookmarkListener) context;
         } catch(ClassCastException exception) {
-            throw new ClassCastException(parentActivity.toString() + " must implement EditBookmarkListener.");
+            throw new ClassCastException(context.toString() + " must implement EditBookmarkListener.");
         }
     }
 
+    // `@SuppressLing("InflateParams")` removes the warning about using `null` as the parent view group when inflating the `AlertDialog`.
+    @SuppressLint("InflateParams")
     @Override
     public Dialog onCreateDialog(Bundle savedInstanceState) {
         // Get a long array with the the databaseId of the selected bookmark and convert it to an `int`.
-        long[] selectedBookmarkLongArray = BookmarksActivity.bookmarksListView.getCheckedItemIds();
+        long[] selectedBookmarkLongArray = BookmarksActivity.checkedItemIds;
         int selectedBookmarkDatabaseId = (int) selectedBookmarkLongArray[0];
 
         // Get a `Cursor` with the specified bookmark and move it to the first position.
@@ -92,6 +95,9 @@ public class EditBookmark extends DialogFragment {
         // Create an `AlertDialog` from the `AlertDialog.Builder`.
         final AlertDialog alertDialog = dialogBuilder.create();
 
+        // Remove the warning below that `setSoftInputMode` might produce `java.lang.NullPointerException`.
+        assert alertDialog.getWindow() != null;
+
         // Show the keyboard when `alertDialog` is displayed on the screen.
         alertDialog.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_VISIBLE);