Loading build/patches/Add-menu-item-to-bookmark-all-tabs.patch +24 −24 Original line number Diff line number Diff line Loading @@ -62,7 +62,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct import org.chromium.chrome.browser.compositor.layouts.Layout; import org.chromium.chrome.browser.compositor.layouts.LayoutManagerChrome; import org.chromium.chrome.browser.compositor.layouts.LayoutManagerChromePhone; @@ -2203,6 +2204,8 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent @@ -2217,6 +2218,8 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent CloseAllTabsDialog.show(this, getModalDialogManagerSupplier(), () -> getTabModelSelector().closeAllTabs(), /*isIncognito=*/false); RecordUserAction.record("MobileMenuCloseAllTabs"); Loading @@ -71,7 +71,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct } else if (id == R.id.close_all_incognito_tabs_menu_id) { // Close only incognito tabs CloseAllTabsDialog.show(this, getModalDialogManagerSupplier(), @@ -2255,6 +2258,27 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent @@ -2269,6 +2272,27 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent mTabModalHandler.onOmniboxFocusChanged(hasFocus); } Loading Loading @@ -121,7 +121,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm import org.chromium.components.bookmarks.BookmarkId; import org.chromium.components.bookmarks.BookmarkItem; import org.chromium.components.bookmarks.BookmarkType; @@ -86,6 +91,8 @@ import java.io.File; @@ -84,6 +89,8 @@ import java.io.File; * bookmark model stored in native. */ class BookmarkBridge { Loading @@ -130,7 +130,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm private final Profile mProfile; private boolean mIsDestroyed; private boolean mIsDoingExtensiveChanges; @@ -393,6 +400,16 @@ class BookmarkBridge { @@ -356,6 +363,16 @@ class BookmarkBridge { mNativeBookmarkBridge, BookmarkBridge.this); } Loading @@ -147,7 +147,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm /** * @return Id representing the special "other" folder from bookmark model. */ @@ -1030,6 +1047,49 @@ class BookmarkBridge { @@ -957,6 +974,49 @@ class BookmarkBridge { mNativeBookmarkBridge, BookmarkBridge.this, title, url); } Loading Loading @@ -197,7 +197,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm /** * @param url The URL of the reading list item. * @return The reading list item with the URL, or null if no such reading list item. @@ -1327,6 +1387,7 @@ class BookmarkBridge { @@ -1167,6 +1227,7 @@ class BookmarkBridge { void getAllFoldersWithDepths(long nativeBookmarkBridge, BookmarkBridge caller, List<BookmarkId> folderList, List<Integer> depthList); BookmarkId getRootFolderId(long nativeBookmarkBridge, BookmarkBridge caller); Loading Loading @@ -229,7 +229,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.cc b/chrome/browser/bookmarks/android/bookmark_bridge.cc --- a/chrome/browser/bookmarks/android/bookmark_bridge.cc +++ b/chrome/browser/bookmarks/android/bookmark_bridge.cc @@ -437,6 +437,11 @@ void BookmarkBridge::GetTopLevelFolderIDs( @@ -431,6 +431,11 @@ void BookmarkBridge::GetTopLevelFolderIDs( top_level_folders.push_back(node.get()); } Loading @@ -241,7 +241,7 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.cc b/chrome/browse for (const auto& node : bookmark_model_->bookmark_bar_node()->children()) { if (node->is_folder()) top_level_folders.push_back(node.get()); @@ -484,6 +489,7 @@ void BookmarkBridge::GetAllFoldersWithDepths( @@ -478,6 +483,7 @@ void BookmarkBridge::GetAllFoldersWithDepths( // Vector to temporarily contain all child bookmarks at same level for sorting std::vector<const BookmarkNode*> bookmarks = { bookmark_model_->mobile_node(), Loading @@ -249,7 +249,7 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.cc b/chrome/browse bookmark_model_->bookmark_bar_node(), bookmark_model_->other_node(), }; @@ -536,6 +542,17 @@ ScopedJavaLocalRef<jobject> BookmarkBridge::GetMobileFolderId( @@ -530,6 +536,17 @@ ScopedJavaLocalRef<jobject> BookmarkBridge::GetMobileFolderId( return folder_id_obj; } Loading @@ -270,7 +270,7 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.cc b/chrome/browse diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.h b/chrome/browser/bookmarks/android/bookmark_bridge.h --- a/chrome/browser/bookmarks/android/bookmark_bridge.h +++ b/chrome/browser/bookmarks/android/bookmark_bridge.h @@ -121,6 +121,10 @@ class BookmarkBridge : public bookmarks::BaseBookmarkModelObserver, @@ -119,6 +119,10 @@ class BookmarkBridge : public bookmarks::BaseBookmarkModelObserver, JNIEnv* env, const base::android::JavaParamRef<jobject>& obj); Loading Loading @@ -349,9 +349,9 @@ diff --git a/chrome/browser/download/android/java/src/org/chromium/chrome/browse diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd --- a/chrome/browser/ui/android/strings/android_chrome_strings.grd +++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd @@ -3606,6 +3606,9 @@ To change this setting, <ph name="BEGIN_LINK"><resetlink></ph>reset sync<p <message name="IDS_MENU_TRACK_PRICES" desc="Menu item for tracking prices on tabs. [CHAR_LIMIT=27]"> Track prices @@ -3603,6 +3603,9 @@ To change this setting, <ph name="BEGIN_LINK"><resetlink></ph>reset sync<p <message name="IDS_MENU_SELECT_TABS" desc="Menu item for bulk editing tabs. [CHAR_LIMIT=27]"> Select tabs </message> + <message name="IDS_MENU_BOOKMARK_ALL_TABS" desc="Menu item to bookmark all tabs. [CHAR-LIMIT=27]"> + Bookmark all tabs Loading Loading @@ -491,14 +491,14 @@ diff --git a/components/bookmarks/browser/bookmark_codec.cc b/components/bookmar diff --git a/components/bookmarks/browser/bookmark_codec.h b/components/bookmarks/browser/bookmark_codec.h --- a/components/bookmarks/browser/bookmark_codec.h +++ b/components/bookmarks/browser/bookmark_codec.h @@ -48,6 +48,7 @@ class BookmarkCodec { base::Value Encode( @@ -49,6 +49,7 @@ class BookmarkCodec { const BookmarkNode* bookmark_bar_node, const BookmarkNode* other_folder_node, + const BookmarkNode* tabs_folder_node, const BookmarkNode* mobile_folder_node, + const BookmarkNode* tabs_folder_node, const BookmarkNode::MetaInfoMap* model_meta_info_map, const BookmarkNode::MetaInfoMap* model_unsynced_meta_info_map, std::string sync_metadata_str); @@ -62,6 +63,7 @@ class BookmarkCodec { BookmarkNode* bb_node, BookmarkNode* other_folder_node, Loading Loading @@ -558,10 +558,10 @@ diff --git a/components/bookmarks/browser/bookmark_load_details.h b/components/b TitledUrlIndex* index() { return index_.get(); } std::unique_ptr<TitledUrlIndex> owned_index() { return std::move(index_); } @@ -110,6 +111,7 @@ class BookmarkLoadDetails { raw_ptr<BookmarkPermanentNode> bb_node_ = nullptr; raw_ptr<BookmarkPermanentNode> other_folder_node_ = nullptr; raw_ptr<BookmarkPermanentNode> mobile_folder_node_ = nullptr; @@ -112,6 +113,7 @@ class BookmarkLoadDetails { nullptr; raw_ptr<BookmarkPermanentNode, DanglingUntriaged> mobile_folder_node_ = nullptr; + BookmarkPermanentNode* tabs_collection_folder_node_ = nullptr; LoadManagedNodeCallback load_managed_node_callback_; std::unique_ptr<TitledUrlIndex> index_; Loading Loading @@ -602,10 +602,10 @@ diff --git a/components/bookmarks/browser/bookmark_model.h b/components/bookmark bool is_root_node(const BookmarkNode* node) const { DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); return node == root_; @@ -445,6 +451,7 @@ class BookmarkModel : public BookmarkUndoProvider, raw_ptr<BookmarkPermanentNode> bookmark_bar_node_ = nullptr; raw_ptr<BookmarkPermanentNode> other_node_ = nullptr; raw_ptr<BookmarkPermanentNode> mobile_node_ = nullptr; @@ -446,6 +452,7 @@ class BookmarkModel : public BookmarkUndoProvider, nullptr; raw_ptr<BookmarkPermanentNode, DanglingUntriaged> other_node_ = nullptr; raw_ptr<BookmarkPermanentNode, DanglingUntriaged> mobile_node_ = nullptr; + raw_ptr<BookmarkPermanentNode> tabs_collection_node_ = nullptr; // The maximum ID assigned to the bookmark nodes in the model. Loading Loading
build/patches/Add-menu-item-to-bookmark-all-tabs.patch +24 −24 Original line number Diff line number Diff line Loading @@ -62,7 +62,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct import org.chromium.chrome.browser.compositor.layouts.Layout; import org.chromium.chrome.browser.compositor.layouts.LayoutManagerChrome; import org.chromium.chrome.browser.compositor.layouts.LayoutManagerChromePhone; @@ -2203,6 +2204,8 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent @@ -2217,6 +2218,8 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent CloseAllTabsDialog.show(this, getModalDialogManagerSupplier(), () -> getTabModelSelector().closeAllTabs(), /*isIncognito=*/false); RecordUserAction.record("MobileMenuCloseAllTabs"); Loading @@ -71,7 +71,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/ChromeTabbedAct } else if (id == R.id.close_all_incognito_tabs_menu_id) { // Close only incognito tabs CloseAllTabsDialog.show(this, getModalDialogManagerSupplier(), @@ -2255,6 +2258,27 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent @@ -2269,6 +2272,27 @@ public class ChromeTabbedActivity extends ChromeActivity<ChromeActivityComponent mTabModalHandler.onOmniboxFocusChanged(hasFocus); } Loading Loading @@ -121,7 +121,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm import org.chromium.components.bookmarks.BookmarkId; import org.chromium.components.bookmarks.BookmarkItem; import org.chromium.components.bookmarks.BookmarkType; @@ -86,6 +91,8 @@ import java.io.File; @@ -84,6 +89,8 @@ import java.io.File; * bookmark model stored in native. */ class BookmarkBridge { Loading @@ -130,7 +130,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm private final Profile mProfile; private boolean mIsDestroyed; private boolean mIsDoingExtensiveChanges; @@ -393,6 +400,16 @@ class BookmarkBridge { @@ -356,6 +363,16 @@ class BookmarkBridge { mNativeBookmarkBridge, BookmarkBridge.this); } Loading @@ -147,7 +147,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm /** * @return Id representing the special "other" folder from bookmark model. */ @@ -1030,6 +1047,49 @@ class BookmarkBridge { @@ -957,6 +974,49 @@ class BookmarkBridge { mNativeBookmarkBridge, BookmarkBridge.this, title, url); } Loading Loading @@ -197,7 +197,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm /** * @param url The URL of the reading list item. * @return The reading list item with the URL, or null if no such reading list item. @@ -1327,6 +1387,7 @@ class BookmarkBridge { @@ -1167,6 +1227,7 @@ class BookmarkBridge { void getAllFoldersWithDepths(long nativeBookmarkBridge, BookmarkBridge caller, List<BookmarkId> folderList, List<Integer> depthList); BookmarkId getRootFolderId(long nativeBookmarkBridge, BookmarkBridge caller); Loading Loading @@ -229,7 +229,7 @@ diff --git a/chrome/android/java/src/org/chromium/chrome/browser/bookmarks/Bookm diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.cc b/chrome/browser/bookmarks/android/bookmark_bridge.cc --- a/chrome/browser/bookmarks/android/bookmark_bridge.cc +++ b/chrome/browser/bookmarks/android/bookmark_bridge.cc @@ -437,6 +437,11 @@ void BookmarkBridge::GetTopLevelFolderIDs( @@ -431,6 +431,11 @@ void BookmarkBridge::GetTopLevelFolderIDs( top_level_folders.push_back(node.get()); } Loading @@ -241,7 +241,7 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.cc b/chrome/browse for (const auto& node : bookmark_model_->bookmark_bar_node()->children()) { if (node->is_folder()) top_level_folders.push_back(node.get()); @@ -484,6 +489,7 @@ void BookmarkBridge::GetAllFoldersWithDepths( @@ -478,6 +483,7 @@ void BookmarkBridge::GetAllFoldersWithDepths( // Vector to temporarily contain all child bookmarks at same level for sorting std::vector<const BookmarkNode*> bookmarks = { bookmark_model_->mobile_node(), Loading @@ -249,7 +249,7 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.cc b/chrome/browse bookmark_model_->bookmark_bar_node(), bookmark_model_->other_node(), }; @@ -536,6 +542,17 @@ ScopedJavaLocalRef<jobject> BookmarkBridge::GetMobileFolderId( @@ -530,6 +536,17 @@ ScopedJavaLocalRef<jobject> BookmarkBridge::GetMobileFolderId( return folder_id_obj; } Loading @@ -270,7 +270,7 @@ diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.cc b/chrome/browse diff --git a/chrome/browser/bookmarks/android/bookmark_bridge.h b/chrome/browser/bookmarks/android/bookmark_bridge.h --- a/chrome/browser/bookmarks/android/bookmark_bridge.h +++ b/chrome/browser/bookmarks/android/bookmark_bridge.h @@ -121,6 +121,10 @@ class BookmarkBridge : public bookmarks::BaseBookmarkModelObserver, @@ -119,6 +119,10 @@ class BookmarkBridge : public bookmarks::BaseBookmarkModelObserver, JNIEnv* env, const base::android::JavaParamRef<jobject>& obj); Loading Loading @@ -349,9 +349,9 @@ diff --git a/chrome/browser/download/android/java/src/org/chromium/chrome/browse diff --git a/chrome/browser/ui/android/strings/android_chrome_strings.grd b/chrome/browser/ui/android/strings/android_chrome_strings.grd --- a/chrome/browser/ui/android/strings/android_chrome_strings.grd +++ b/chrome/browser/ui/android/strings/android_chrome_strings.grd @@ -3606,6 +3606,9 @@ To change this setting, <ph name="BEGIN_LINK"><resetlink></ph>reset sync<p <message name="IDS_MENU_TRACK_PRICES" desc="Menu item for tracking prices on tabs. [CHAR_LIMIT=27]"> Track prices @@ -3603,6 +3603,9 @@ To change this setting, <ph name="BEGIN_LINK"><resetlink></ph>reset sync<p <message name="IDS_MENU_SELECT_TABS" desc="Menu item for bulk editing tabs. [CHAR_LIMIT=27]"> Select tabs </message> + <message name="IDS_MENU_BOOKMARK_ALL_TABS" desc="Menu item to bookmark all tabs. [CHAR-LIMIT=27]"> + Bookmark all tabs Loading Loading @@ -491,14 +491,14 @@ diff --git a/components/bookmarks/browser/bookmark_codec.cc b/components/bookmar diff --git a/components/bookmarks/browser/bookmark_codec.h b/components/bookmarks/browser/bookmark_codec.h --- a/components/bookmarks/browser/bookmark_codec.h +++ b/components/bookmarks/browser/bookmark_codec.h @@ -48,6 +48,7 @@ class BookmarkCodec { base::Value Encode( @@ -49,6 +49,7 @@ class BookmarkCodec { const BookmarkNode* bookmark_bar_node, const BookmarkNode* other_folder_node, + const BookmarkNode* tabs_folder_node, const BookmarkNode* mobile_folder_node, + const BookmarkNode* tabs_folder_node, const BookmarkNode::MetaInfoMap* model_meta_info_map, const BookmarkNode::MetaInfoMap* model_unsynced_meta_info_map, std::string sync_metadata_str); @@ -62,6 +63,7 @@ class BookmarkCodec { BookmarkNode* bb_node, BookmarkNode* other_folder_node, Loading Loading @@ -558,10 +558,10 @@ diff --git a/components/bookmarks/browser/bookmark_load_details.h b/components/b TitledUrlIndex* index() { return index_.get(); } std::unique_ptr<TitledUrlIndex> owned_index() { return std::move(index_); } @@ -110,6 +111,7 @@ class BookmarkLoadDetails { raw_ptr<BookmarkPermanentNode> bb_node_ = nullptr; raw_ptr<BookmarkPermanentNode> other_folder_node_ = nullptr; raw_ptr<BookmarkPermanentNode> mobile_folder_node_ = nullptr; @@ -112,6 +113,7 @@ class BookmarkLoadDetails { nullptr; raw_ptr<BookmarkPermanentNode, DanglingUntriaged> mobile_folder_node_ = nullptr; + BookmarkPermanentNode* tabs_collection_folder_node_ = nullptr; LoadManagedNodeCallback load_managed_node_callback_; std::unique_ptr<TitledUrlIndex> index_; Loading Loading @@ -602,10 +602,10 @@ diff --git a/components/bookmarks/browser/bookmark_model.h b/components/bookmark bool is_root_node(const BookmarkNode* node) const { DCHECK_CALLED_ON_VALID_SEQUENCE(sequence_checker_); return node == root_; @@ -445,6 +451,7 @@ class BookmarkModel : public BookmarkUndoProvider, raw_ptr<BookmarkPermanentNode> bookmark_bar_node_ = nullptr; raw_ptr<BookmarkPermanentNode> other_node_ = nullptr; raw_ptr<BookmarkPermanentNode> mobile_node_ = nullptr; @@ -446,6 +452,7 @@ class BookmarkModel : public BookmarkUndoProvider, nullptr; raw_ptr<BookmarkPermanentNode, DanglingUntriaged> other_node_ = nullptr; raw_ptr<BookmarkPermanentNode, DanglingUntriaged> mobile_node_ = nullptr; + raw_ptr<BookmarkPermanentNode> tabs_collection_node_ = nullptr; // The maximum ID assigned to the bookmark nodes in the model. Loading