| Index: chrome/browser/bookmarks/bookmark_model.cc
|
| diff --git a/chrome/browser/bookmarks/bookmark_model.cc b/chrome/browser/bookmarks/bookmark_model.cc
|
| index 52533b4c2be72210353f7fc5c17cb7d33441eae5..bf7c5f73c024d028149757c198e51a195e72581d 100644
|
| --- a/chrome/browser/bookmarks/bookmark_model.cc
|
| +++ b/chrome/browser/bookmarks/bookmark_model.cc
|
| @@ -203,6 +203,7 @@ BookmarkModel::BookmarkModel(Profile* profile)
|
| bookmark_bar_node_(NULL),
|
| other_node_(NULL),
|
| mobile_node_(NULL),
|
| + apps_node_(NULL),
|
| next_node_id_(1),
|
| observers_(ObserverList<BookmarkModelObserver>::NOTIFY_EXISTING_ONLY),
|
| loaded_signal_(true, false),
|
| @@ -660,6 +661,9 @@ void BookmarkModel::SetPermanentNodeVisible(BookmarkNode::Type type,
|
| case BookmarkNode::MOBILE:
|
| mobile_node_->set_visible(value);
|
| break;
|
| + case BookmarkNode::APPS_NODE:
|
| + apps_node_->set_visible(value);
|
| + break;
|
| default:
|
| NOTREACHED();
|
| }
|
| @@ -724,11 +728,15 @@ void BookmarkModel::DoneLoading(BookmarkLoadDetails* details_delete_me) {
|
| mobile_node_ = details->release_mobile_folder_node();
|
| index_.reset(details->release_index());
|
|
|
| + // The apps node does not hold any data, we create is from scratch every time.
|
| + apps_node_ = CreatePermanentNode(BookmarkNode::APPS_NODE);
|
| +
|
| // WARNING: order is important here, various places assume the order is
|
| // constant.
|
| root_.Add(bookmark_bar_node_, 0);
|
| root_.Add(other_node_, 1);
|
| root_.Add(mobile_node_, 2);
|
| + root_.Add(apps_node_, 3);
|
|
|
| root_.set_meta_info_str(details->model_meta_info());
|
|
|
| @@ -836,7 +844,8 @@ BookmarkPermanentNode* BookmarkModel::CreatePermanentNode(
|
| BookmarkNode::Type type) {
|
| DCHECK(type == BookmarkNode::BOOKMARK_BAR ||
|
| type == BookmarkNode::OTHER_NODE ||
|
| - type == BookmarkNode::MOBILE);
|
| + type == BookmarkNode::MOBILE ||
|
| + type == BookmarkNode::APPS_NODE);
|
| BookmarkPermanentNode* node =
|
| new BookmarkPermanentNode(generate_next_node_id());
|
| if (type == BookmarkNode::MOBILE)
|
| @@ -853,6 +862,9 @@ BookmarkPermanentNode* BookmarkModel::CreatePermanentNode(
|
| case BookmarkNode::MOBILE:
|
| title_id = IDS_BOOKMARK_BAR_MOBILE_FOLDER_NAME;
|
| break;
|
| + case BookmarkNode::APPS_NODE:
|
| + title_id = IDS_BOOKMARK_BAR_APPS_SHORTCUT_NAME;
|
| + break;
|
| default:
|
| NOTREACHED();
|
| title_id = IDS_BOOKMARK_BAR_FOLDER_NAME;
|
|
|