X-Git-Url: https://gitweb.stoutner.com/?a=blobdiff_plain;f=app%2Fsrc%2Fmain%2Fjava%2Fcom%2Fstoutner%2Fprivacybrowser%2Fdialogs%2FEditBookmarkDatabaseViewDialog.java;h=b0d401bb6a12cbd38dcead1a05988bfe92424ea7;hb=55169899d6454cd57e40d32a792735df51caee85;hp=5abda5b9b5b52df98c664e4f94a0eca970564a1e;hpb=47b689dbdaf08b9636021ddd8f72ca9ee7f11998;p=PrivacyBrowserAndroid.git diff --git a/app/src/main/java/com/stoutner/privacybrowser/dialogs/EditBookmarkDatabaseViewDialog.java b/app/src/main/java/com/stoutner/privacybrowser/dialogs/EditBookmarkDatabaseViewDialog.java index 5abda5b9..b0d401bb 100644 --- a/app/src/main/java/com/stoutner/privacybrowser/dialogs/EditBookmarkDatabaseViewDialog.java +++ b/app/src/main/java/com/stoutner/privacybrowser/dialogs/EditBookmarkDatabaseViewDialog.java @@ -30,11 +30,6 @@ import android.database.MergeCursor; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.os.Bundle; -import android.support.annotation.NonNull; -// `AppCompatDialogFragment` is required instead of `DialogFragment` or an error is produced on API <=22. -import android.support.v4.content.ContextCompat; -import android.support.v4.widget.ResourceCursorAdapter; -import android.support.v7.app.AppCompatDialogFragment; import android.text.Editable; import android.text.TextWatcher; import android.view.KeyEvent; @@ -46,6 +41,7 @@ import android.widget.EditText; import android.widget.ImageView; import android.widget.RadioButton; import android.widget.RadioGroup; +import android.widget.ResourceCursorAdapter; import android.widget.Spinner; import android.widget.TextView; @@ -53,7 +49,11 @@ import com.stoutner.privacybrowser.R; import com.stoutner.privacybrowser.activities.MainWebViewActivity; import com.stoutner.privacybrowser.helpers.BookmarksDatabaseHelper; -public class EditBookmarkDatabaseViewDialog extends AppCompatDialogFragment { +import androidx.annotation.NonNull; +import androidx.core.content.ContextCompat; +import androidx.fragment.app.DialogFragment; // The AndroidX dialog fragment must be used or an error is produced on API <=22. + +public class EditBookmarkDatabaseViewDialog extends DialogFragment { // Instantiate the constants. public static final int HOME_FOLDER_DATABASE_ID = -1; @@ -72,7 +72,7 @@ public class EditBookmarkDatabaseViewDialog extends AppCompatDialogFragment { // The public interface is used to send information back to the parent activity. public interface EditBookmarkDatabaseViewListener { - void onSaveBookmark(AppCompatDialogFragment dialogFragment, int selectedBookmarkDatabaseId); + void onSaveBookmark(DialogFragment dialogFragment, int selectedBookmarkDatabaseId); } @Override @@ -80,8 +80,7 @@ public class EditBookmarkDatabaseViewDialog extends AppCompatDialogFragment { // Run the default commands. super.onAttach(context); - // Get a handle for `EditBookmarkDatabaseViewListener` from the launching context. - + // Get a handle for edit bookmark database view listener from the launching context. editBookmarkDatabaseViewListener = (EditBookmarkDatabaseViewListener) context; } @@ -160,9 +159,6 @@ public class EditBookmarkDatabaseViewDialog extends AppCompatDialogFragment { alertDialog.getWindow().addFlags(WindowManager.LayoutParams.FLAG_SECURE); } - // Set the keyboard to be hidden when the `AlertDialog` is first shown. If this is not set, the `AlertDialog` will not shrink when the keyboard is displayed. - alertDialog.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_HIDDEN); - // The alert dialog must be shown before items in the layout can be modified. alertDialog.show(); @@ -195,8 +191,16 @@ public class EditBookmarkDatabaseViewDialog extends AppCompatDialogFragment { // Display `currentIconBitmap` in `edit_bookmark_current_icon`. currentIconImageView.setImageBitmap(currentIconBitmap); - // Get a bitmap of the favorite icon from `MainWebViewActivity` and display it in `edit_bookmark_web_page_favorite_icon`. - newFavoriteIconImageView.setImageBitmap(MainWebViewActivity.favoriteIconBitmap); + // Get a copy of the favorite icon bitmap. + Bitmap favoriteIconBitmap = MainWebViewActivity.favoriteIconBitmap; + + // Scale the favorite icon bitmap down if it is larger than 256 x 256. Filtering uses bilinear interpolation. + if ((favoriteIconBitmap.getHeight() > 256) || (favoriteIconBitmap.getWidth() > 256)) { + favoriteIconBitmap = Bitmap.createScaledBitmap(favoriteIconBitmap, 256, 256, true); + } + + // Set the new favorite icon bitmap. + newFavoriteIconImageView.setImageBitmap(favoriteIconBitmap); // Populate the bookmark name and URL `EditTexts`. nameEditText.setText(currentBookmarkName);