Merge "Added CHAR LENGTH to some strings"
diff --git a/res/menu-xlarge/browser.xml b/res/menu-xlarge/browser.xml
index 3b93835..7af3e8c 100644
--- a/res/menu-xlarge/browser.xml
+++ b/res/menu-xlarge/browser.xml
@@ -44,9 +44,6 @@
             android:title="@string/menu_preferences"
             android:icon="@drawable/ic_menu_settings_normal"
             android:alphabeticShortcut="p" />
-        <item android:id="@+id/save_webarchive_menu_id"
-            android:icon="@drawable/ic_menu_archive_normal"
-            android:title="@string/menu_save_webarchive" />
         <!-- followings are debug only -->
         <item android:id="@+id/dump_nav_menu_id"
             android:title="@string/dump_nav"
diff --git a/res/menu/browser.xml b/res/menu/browser.xml
index b5d56c8..e00ee26 100644
--- a/res/menu/browser.xml
+++ b/res/menu/browser.xml
@@ -59,9 +59,6 @@
             android:title="@string/menu_preferences"
             android:icon="@drawable/ic_menu_settings"
             android:alphabeticShortcut="p" />
-        <item android:id="@+id/save_webarchive_menu_id"
-            android:title="@string/menu_save_webarchive"
-             />
         <!-- followings are debug only -->
         <item android:id="@+id/dump_nav_menu_id"
             android:title="@string/dump_nav"
diff --git a/src/com/android/browser/AddBookmarkPage.java b/src/com/android/browser/AddBookmarkPage.java
index 1292bf6..2b745b1 100644
--- a/src/com/android/browser/AddBookmarkPage.java
+++ b/src/com/android/browser/AddBookmarkPage.java
@@ -229,10 +229,7 @@
                 finish();
             }
         } else if (v == mFolder) {
-            // FIXME: We want to use mFolder as an anchor, but cannot until we
-            // fix the issue that the PopupMenu will not extend past the edge of
-            // the dialog.
-            PopupMenu popup = new PopupMenu(this, mFakeTitle);
+            PopupMenu popup = new PopupMenu(this, mFolder);
             popup.getMenuInflater().inflate(R.menu.folder_choice,
                     popup.getMenu());
             popup.setOnMenuItemClickListener(this);
@@ -300,6 +297,13 @@
         values.put(BrowserContract.Bookmarks.TITLE,
                 name);
         values.put(BrowserContract.Bookmarks.IS_FOLDER, 1);
+        SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this);
+        String accountType = prefs.getString(BrowserBookmarksPage.PREF_ACCOUNT_TYPE, null);
+        String accountName = prefs.getString(BrowserBookmarksPage.PREF_ACCOUNT_NAME, null);
+        if (!TextUtils.isEmpty(accountName) && !TextUtils.isEmpty(accountType)) {
+            values.put(BrowserContract.Bookmarks.ACCOUNT_TYPE, accountType);
+            values.put(BrowserContract.Bookmarks.ACCOUNT_NAME, accountName);
+        }
         long currentFolder;
         Object data = mCrumbs.getTopData();
         if (data != null) {
diff --git a/src/com/android/browser/BrowserActivity.java b/src/com/android/browser/BrowserActivity.java
index 4115b92..072a0b1 100644
--- a/src/com/android/browser/BrowserActivity.java
+++ b/src/com/android/browser/BrowserActivity.java
@@ -1372,39 +1372,6 @@
                 getTopWindow().showFindDialog(null);
                 break;
 
-            case R.id.save_webarchive_menu_id:
-                if (LOGD_ENABLED) {
-                    Log.d(LOGTAG, "Save as Web Archive");
-                }
-                String state = Environment.getExternalStorageState();
-                if (Environment.MEDIA_MOUNTED.equals(state)) {
-                    String directory = Environment.getExternalStoragePublicDirectory(
-                            Environment.DIRECTORY_DOWNLOADS).getAbsolutePath() + File.separator;
-                    File dir = new File(directory);
-                    if (!dir.exists() && !dir.mkdirs()) {
-                      Log.e(LOGTAG, "Save as Web Archive: mkdirs for " + directory + " failed!");
-                      Toast.makeText(BrowserActivity.this, R.string.webarchive_failed,
-                          Toast.LENGTH_SHORT).show();
-                      break;
-                    }
-                    getTopWindow().saveWebArchive(directory, true, new ValueCallback<String>() {
-                        @Override
-                        public void onReceiveValue(String value) {
-                            if (value != null) {
-                                Toast.makeText(BrowserActivity.this, R.string.webarchive_saved,
-                                        Toast.LENGTH_SHORT).show();
-                            } else {
-                                Toast.makeText(BrowserActivity.this, R.string.webarchive_failed,
-                                        Toast.LENGTH_SHORT).show();
-                            }
-                        }
-                    });
-                } else {
-                    Toast.makeText(BrowserActivity.this, R.string.webarchive_failed,
-                            Toast.LENGTH_SHORT).show();
-                }
-                break;
-
             case R.id.page_info_menu_id:
                 showPageInfo(mTabControl.getCurrentTab(), false);
                 break;
diff --git a/src/com/android/browser/widget/BookmarkListWidgetService.java b/src/com/android/browser/widget/BookmarkListWidgetService.java
index 1b3b1f4..f0dd9cb 100644
--- a/src/com/android/browser/widget/BookmarkListWidgetService.java
+++ b/src/com/android/browser/widget/BookmarkListWidgetService.java
@@ -68,7 +68,6 @@
 
     private Map<Integer, BookmarkFactory> mFactories;
     private Handler mUiHandler;
-    private HandlerThread mBackgroundThread;
     private BookmarksObserver mBookmarksObserver;
 
     @Override
@@ -111,7 +110,6 @@
     public void onDestroy() {
         super.onDestroy();
         getContentResolver().unregisterContentObserver(mBookmarksObserver);
-        mBackgroundThread.quit();
     }
 
     private class BookmarksObserver extends ContentObserver {