diff options
Diffstat (limited to 'src/com/android')
| -rw-r--r-- | src/com/android/browser/BrowserActivity.java | 42 | ||||
| -rw-r--r-- | src/com/android/browser/BrowserBookmarksAdapter.java | 4 | ||||
| -rw-r--r-- | src/com/android/browser/BrowserBookmarksPage.java | 9 |
3 files changed, 45 insertions, 10 deletions
diff --git a/src/com/android/browser/BrowserActivity.java b/src/com/android/browser/BrowserActivity.java index 444e98dc5..b1a3abee6 100644 --- a/src/com/android/browser/BrowserActivity.java +++ b/src/com/android/browser/BrowserActivity.java @@ -2376,21 +2376,51 @@ public class BrowserActivity extends Activity } /** - * Constants for the size of the thumbnail created when taking a screenshot + * Values for the size of the thumbnail created when taking a screenshot. + * Lazily initialized. Instead of using these directly, use + * getDesiredThumbnailWidth() or getDesiredThumbnailHeight(). */ - /* package */ static final int THUMBNAIL_WIDTH = 130; - /* package */ static final int THUMBNAIL_HEIGHT = 104; + private static int THUMBNAIL_WIDTH = 0; + private static int THUMBNAIL_HEIGHT = 0; + + /** + * Return the desired width for thumbnail screenshots, which are stored in + * the database, and used on the bookmarks screen. + * @param context Context for finding out the density of the screen. + * @return int desired width for thumbnail screenshot. + */ + /* package */ static int getDesiredThumbnailWidth(Context context) { + if (THUMBNAIL_WIDTH == 0) { + float density = context.getResources().getDisplayMetrics().density; + THUMBNAIL_WIDTH = (int) (90 * density); + THUMBNAIL_HEIGHT = (int) (80 * density); + } + return THUMBNAIL_WIDTH; + } + + /** + * Return the desired height for thumbnail screenshots, which are stored in + * the database, and used on the bookmarks screen. + * @param context Context for finding out the density of the screen. + * @return int desired height for thumbnail screenshot. + */ + /* package */ static int getDesiredThumbnailHeight(Context context) { + // To ensure that they are both initialized. + getDesiredThumbnailWidth(context); + return THUMBNAIL_HEIGHT; + } private Bitmap createScreenshot(WebView view) { Picture thumbnail = view.capturePicture(); - Bitmap bm = Bitmap.createBitmap(THUMBNAIL_WIDTH, THUMBNAIL_HEIGHT, - Bitmap.Config.ARGB_4444); + Bitmap bm = Bitmap.createBitmap(getDesiredThumbnailWidth(this), + getDesiredThumbnailHeight(this), Bitmap.Config.ARGB_4444); Canvas canvas = new Canvas(bm); // May need to tweak these values to determine what is the // best scale factor int contentWidth = view.getContentWidth(); if (contentWidth > 0) { - float scaleFactor = (float) THUMBNAIL_WIDTH / (float) contentWidth; + float scaleFactor = (float) getDesiredThumbnailWidth(this) + / (float) contentWidth; canvas.scale(scaleFactor, scaleFactor); } thumbnail.draw(canvas); diff --git a/src/com/android/browser/BrowserBookmarksAdapter.java b/src/com/android/browser/BrowserBookmarksAdapter.java index bbecab9b5..8b0fb41cc 100644 --- a/src/com/android/browser/BrowserBookmarksAdapter.java +++ b/src/com/android/browser/BrowserBookmarksAdapter.java @@ -429,7 +429,7 @@ class BrowserBookmarksAdapter extends BaseAdapter { thumb.setImageBitmap(mCurrentThumbnail); } else { thumb.setImageResource( - R.drawable.ic_launcher_shortcut_browser_bookmark); + R.drawable.browser_thumbnail); } return convertView; } @@ -439,7 +439,7 @@ class BrowserBookmarksAdapter extends BaseAdapter { Browser.HISTORY_PROJECTION_TITLE_INDEX)); Bitmap thumbnail = getBitmap(Browser.HISTORY_PROJECTION_THUMBNAIL_INDEX, position); if (thumbnail == null) { - thumb.setImageResource(R.drawable.ic_launcher_shortcut_browser_bookmark); + thumb.setImageResource(R.drawable.browser_thumbnail); } else { thumb.setImageBitmap(thumbnail); } diff --git a/src/com/android/browser/BrowserBookmarksPage.java b/src/com/android/browser/BrowserBookmarksPage.java index 17a362b51..8b67e4d15 100644 --- a/src/com/android/browser/BrowserBookmarksPage.java +++ b/src/com/android/browser/BrowserBookmarksPage.java @@ -294,11 +294,16 @@ public class BrowserBookmarksPage extends Activity implements mGridPage.setAdapter(mBookmarksAdapter); mGridPage.setOnItemClickListener(mListener); mGridPage.setNumColumns(GridView.AUTO_FIT); - mGridPage.setColumnWidth(BrowserActivity.THUMBNAIL_WIDTH); + mGridPage.setColumnWidth( + BrowserActivity.getDesiredThumbnailWidth(this)); mGridPage.setFocusable(true); mGridPage.setFocusableInTouchMode(true); mGridPage.setSelector(android.R.drawable.gallery_thumb); - mGridPage.setVerticalSpacing(10); + float density = getResources().getDisplayMetrics().density; + mGridPage.setVerticalSpacing((int) (14 * density)); + mGridPage.setHorizontalSpacing((int) (8 * density)); + mGridPage.setStretchMode(GridView.STRETCH_SPACING); + mGridPage.setDrawSelectorOnTop(true); if (mMostVisited) { mGridPage.setEmptyView(mEmptyView); } |
