Add bookmarks to the current account.

Make sure to stuff newly created bookmarks
in the currently active account so that
they show up in the bookmarks UI and will
get synced properly.

Change-Id: I5677ddb8480957bc209d79cc41f7df02221ef66d
diff --git a/src/com/android/browser/AddBookmarkPage.java b/src/com/android/browser/AddBookmarkPage.java
index f287e8e..1d6edc5 100644
--- a/src/com/android/browser/AddBookmarkPage.java
+++ b/src/com/android/browser/AddBookmarkPage.java
@@ -148,7 +148,7 @@
             // Save to the bookmarks DB.
             try {
                 final ContentResolver cr = getContentResolver();
-                Bookmarks.addBookmark(null, cr, url, title, thumbnail, true);
+                Bookmarks.addBookmark(AddBookmarkPage.this, false, url, title, thumbnail, true);
                 if (touchIconUrl != null) {
                     new DownloadTouchIcon(AddBookmarkPage.this, cr, url).execute(mTouchIconUrl);
                 }
diff --git a/src/com/android/browser/Bookmarks.java b/src/com/android/browser/Bookmarks.java
index 532d7c0..0bccbed 100644
--- a/src/com/android/browser/Bookmarks.java
+++ b/src/com/android/browser/Bookmarks.java
@@ -20,10 +20,12 @@
 import android.content.ContentUris;
 import android.content.ContentValues;
 import android.content.Context;
+import android.content.SharedPreferences;
 import android.database.Cursor;
 import android.graphics.Bitmap;
 import android.net.Uri;
 import android.os.AsyncTask;
+import android.preference.PreferenceManager;
 import android.provider.BrowserContract;
 import android.provider.BrowserContract.Combined;
 import android.provider.BrowserContract.Images;
@@ -63,18 +65,23 @@
      *          This will usually be <code>true</code> except when bookmarks are
      *          added by a settings restore agent.
      */
-    /* package */ static void addBookmark(Context context, ContentResolver cr, String url,
+    /* package */ static void addBookmark(Context context, boolean showToast, String url,
             String name, Bitmap thumbnail, boolean retainIcon) {
         // Want to append to the beginning of the list
         ContentValues values = new ContentValues();
         Cursor cursor = null;
         try {
+            SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context);
+            String accountType = prefs.getString(BrowserBookmarksPage.PREF_ACCOUNT_TYPE, null);
+            String accountName = prefs.getString(BrowserBookmarksPage.PREF_ACCOUNT_NAME, null);
+            values.put(BrowserContract.Bookmarks.ACCOUNT_TYPE, accountType);
+            values.put(BrowserContract.Bookmarks.ACCOUNT_NAME, accountName);
             values.put(BrowserContract.Bookmarks.TITLE, name);
             values.put(BrowserContract.Bookmarks.URL, url);
             values.put(BrowserContract.Bookmarks.IS_FOLDER, 0);
             values.put(BrowserContract.Bookmarks.THUMBNAIL,
                     bitmapToBytes(thumbnail));
-            cr.insert(BrowserContract.Bookmarks.CONTENT_URI, values);
+            context.getContentResolver().insert(BrowserContract.Bookmarks.CONTENT_URI, values);
         } catch (IllegalStateException e) {
             Log.e(LOGTAG, "addBookmark", e);
         } finally {
@@ -83,7 +90,7 @@
         if (retainIcon) {
             WebIconDatabase.getInstance().retainIconForPageUrl(url);
         }
-        if (context != null) {
+        if (showToast) {
             Toast.makeText(context, R.string.added_to_bookmarks,
                     Toast.LENGTH_LONG).show();
         }
diff --git a/src/com/android/browser/BrowserBackupAgent.java b/src/com/android/browser/BrowserBackupAgent.java
index c968ce5..fb1933f 100644
--- a/src/com/android/browser/BrowserBackupAgent.java
+++ b/src/com/android/browser/BrowserBackupAgent.java
@@ -166,7 +166,7 @@
                                 if (DEBUG) Log.v(TAG, "Did not see url: " + mark.url);
                                 // Right now we do not reconstruct the db entry in its
                                 // entirety; we just add a new bookmark with the same data
-                                Bookmarks.addBookmark(null, getContentResolver(),
+                                Bookmarks.addBookmark(this, false,
                                         mark.url, mark.title, null, false);
                                 nUnique++;
                             } else {
diff --git a/src/com/android/browser/BrowserBookmarksPage.java b/src/com/android/browser/BrowserBookmarksPage.java
index 04e50af..039aca0 100644
--- a/src/com/android/browser/BrowserBookmarksPage.java
+++ b/src/com/android/browser/BrowserBookmarksPage.java
@@ -80,8 +80,8 @@
     static final String EXTRA_SHORTCUT = "create_shortcut";
     static final String EXTRA_DISABLE_WINDOW = "disable_new_window";
 
-    static final String PREF_ACCOUNT_TYPE = "acct_type";
-    static final String PREF_ACCOUNT_NAME = "acct_name";
+    public static final String PREF_ACCOUNT_TYPE = "acct_type";
+    public static final String PREF_ACCOUNT_NAME = "acct_name";
 
     static final String DEFAULT_ACCOUNT = "local";
 
diff --git a/src/com/android/browser/HistoryItem.java b/src/com/android/browser/HistoryItem.java
index 72e1b19..b591b03 100644
--- a/src/com/android/browser/HistoryItem.java
+++ b/src/com/android/browser/HistoryItem.java
@@ -18,12 +18,8 @@
 package com.android.browser;
 
 import android.content.Context;
-import android.graphics.Bitmap;
-import android.provider.Browser;
 import android.view.View;
 import android.widget.CompoundButton;
-import android.widget.ImageView;
-import android.widget.TextView;
 
 /**
  *  Layout representing a history item in the classic history viewer.
@@ -45,8 +41,7 @@
             public void onCheckedChanged(CompoundButton buttonView,
                     boolean isChecked) {
                 if (isChecked) {
-                    Bookmarks.addBookmark(mContext,
-                            mContext.getContentResolver(), mUrl, getName(), null, true);
+                    Bookmarks.addBookmark(mContext, true, mUrl, getName(), null, true);
                     LogTag.logBookmarkAdded(mUrl, "history");
                 } else {
                     Bookmarks.removeFromBookmarks(mContext,