summaryrefslogtreecommitdiffstats
path: root/src/com/android/browser/CombinedBookmarkHistoryView.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/com/android/browser/CombinedBookmarkHistoryView.java')
-rw-r--r--src/com/android/browser/CombinedBookmarkHistoryView.java45
1 files changed, 44 insertions, 1 deletions
diff --git a/src/com/android/browser/CombinedBookmarkHistoryView.java b/src/com/android/browser/CombinedBookmarkHistoryView.java
index c078b51b3..4f6f10c1b 100644
--- a/src/com/android/browser/CombinedBookmarkHistoryView.java
+++ b/src/com/android/browser/CombinedBookmarkHistoryView.java
@@ -21,17 +21,22 @@ import android.app.Activity;
import android.app.Fragment;
import android.app.FragmentManager;
import android.app.FragmentTransaction;
+import android.content.SharedPreferences;
import android.content.res.Resources;
import android.graphics.Bitmap;
import android.os.AsyncTask;
import android.os.Bundle;
+import android.preference.PreferenceManager;
import android.provider.Browser;
import android.view.LayoutInflater;
+import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.webkit.WebIconDatabase;
import android.webkit.WebIconDatabase.IconListener;
import android.widget.LinearLayout;
+import android.widget.PopupMenu;
+import android.widget.PopupMenu.OnMenuItemClickListener;
import android.widget.TextView;
import java.util.HashMap;
@@ -44,7 +49,7 @@ interface BookmarksHistoryCallbacks {
}
public class CombinedBookmarkHistoryView extends LinearLayout
- implements OnClickListener, BreadCrumbView.Controller {
+ implements OnClickListener, BreadCrumbView.Controller, OnMenuItemClickListener {
final static String STARTING_FRAGMENT = "fragment";
@@ -63,6 +68,8 @@ public class CombinedBookmarkHistoryView extends LinearLayout
TextView mTabBookmarks;
TextView mTabHistory;
TextView mAddBookmark;
+ TextView mSelectBookmarkView;
+ View mSeperateSelectAdd;
BrowserBookmarksPage mBookmarks;
BrowserHistoryPage mHistory;
@@ -122,9 +129,20 @@ public class CombinedBookmarkHistoryView extends LinearLayout
mTabBookmarks = (TextView) findViewById(R.id.bmtab);
mTabHistory = (TextView) findViewById(R.id.historytab);
mAddBookmark = (TextView) findViewById(R.id.addbm);
+ mSeperateSelectAdd = findViewById(R.id.seperate_select_add);
+ mSelectBookmarkView = (TextView) findViewById(R.id.select_bookmark_view);
mAddBookmark.setOnClickListener(this);
mTabHistory.setOnClickListener(this);
mTabBookmarks.setOnClickListener(this);
+ mSelectBookmarkView.setOnClickListener(this);
+ SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(mContext);
+ int bookmarksView =
+ prefs.getInt(BrowserBookmarksPage.PREF_SELECTED_VIEW, BrowserBookmarksPage.VIEW_THUMBNAILS);
+ if (bookmarksView == BrowserBookmarksPage.VIEW_THUMBNAILS) {
+ mSelectBookmarkView.setText(R.string.bookmark_thumbnail_view);
+ } else {
+ mSelectBookmarkView.setText(R.string.bookmark_list_view);
+ }
// Start up the default fragment
initFragments(mExtras);
loadFragment(startingFragment, mExtras, false);
@@ -157,6 +175,8 @@ public class CombinedBookmarkHistoryView extends LinearLayout
switch (id) {
case FRAGMENT_ID_BOOKMARKS:
fragment = mBookmarks;
+ mSeperateSelectAdd.setVisibility(View.VISIBLE);
+ mSelectBookmarkView.setVisibility(View.VISIBLE);
mCrumbs.setVisibility(View.VISIBLE);
if (notify) {
mCrumbs.notifyController();
@@ -165,6 +185,8 @@ public class CombinedBookmarkHistoryView extends LinearLayout
case FRAGMENT_ID_HISTORY:
fragment = mHistory;
mCrumbs.setVisibility(View.GONE);
+ mSeperateSelectAdd.setVisibility(View.GONE);
+ mSelectBookmarkView.setVisibility(View.GONE);
break;
default:
throw new IllegalArgumentException();
@@ -189,6 +211,12 @@ public class CombinedBookmarkHistoryView extends LinearLayout
}
} else if (mAddBookmark == view) {
mUiController.bookmarkCurrentPage(mBookmarks.getFolderId());
+ } else if (mSelectBookmarkView == view) {
+ PopupMenu popup = new PopupMenu(mContext, mSelectBookmarkView);
+ popup.getMenuInflater().inflate(R.menu.bookmark_view,
+ popup.getMenu());
+ popup.setOnMenuItemClickListener(this);
+ popup.show();
}
}
@@ -212,4 +240,19 @@ public class CombinedBookmarkHistoryView extends LinearLayout
return false;
}
+ @Override
+ public boolean onMenuItemClick(MenuItem item) {
+ switch (item.getItemId()) {
+ case R.id.list_view:
+ mSelectBookmarkView.setText(R.string.bookmark_list_view);
+ mBookmarks.selectView(BrowserBookmarksPage.VIEW_LIST);
+ return true;
+ case R.id.thumbnail_view:
+ mSelectBookmarkView.setText(R.string.bookmark_thumbnail_view);
+ mBookmarks.selectView(BrowserBookmarksPage.VIEW_THUMBNAILS);
+ return true;
+ }
+ return false;
+ }
+
}