Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Show bookmark bar on NTP by default #3251

Merged
merged 1 commit into from
Aug 27, 2019
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion browser/ui/bookmark/bookmark_prefs_service_factory.cc
Original file line number Diff line number Diff line change
Expand Up @@ -47,5 +47,5 @@ bool BookmarkPrefsServiceFactory::ServiceIsCreatedWithBrowserContext() const {

void BookmarkPrefsServiceFactory::RegisterProfilePrefs(
user_prefs::PrefRegistrySyncable* registry) {
registry->RegisterBooleanPref(kAlwaysShowBookmarkBarOnNTP, false);
registry->RegisterBooleanPref(kAlwaysShowBookmarkBarOnNTP, true);
}
50 changes: 26 additions & 24 deletions browser/ui/bookmark/bookmark_tab_helper_browsertest.cc
Original file line number Diff line number Diff line change
Expand Up @@ -54,42 +54,44 @@ void AddBookmarkNode(Profile* profile) {

} // namespace

IN_PROC_BROWSER_TEST_F(BookmarkTabHelperBrowserTest,
BookmarkBarOnNTPToggleTest) {
auto* contents = browser()->tab_strip_model()->GetActiveWebContents();
EXPECT_TRUE(content::NavigateToURL(contents,
GURL(chrome::kChromeUINewTabURL)));
EXPECT_TRUE(IsNTP(contents));
chrome::ToggleBookmarkBar(browser());
EXPECT_EQ(BookmarkBar::SHOW, browser()->bookmark_bar_state());

AddBookmarkNode(browser()->profile());

chrome::ToggleBookmarkBar(browser());
IN_PROC_BROWSER_TEST_F(BookmarkTabHelperBrowserTest, BookmarkBarOnNTPTest) {
auto* profile = browser()->profile();

// Check bookmark is still hidden on NTP.
// Check Bookmark bar is hidden by default.
EXPECT_EQ(BookmarkBar::HIDDEN, browser()->bookmark_bar_state());
}

IN_PROC_BROWSER_TEST_F(BookmarkTabHelperBrowserTest,
AlwaysShowBookmarkBarOnNTPTest) {
auto* profile = browser()->profile();
// Check default is false.
EXPECT_FALSE(profile->GetPrefs()->GetBoolean(kAlwaysShowBookmarkBarOnNTP));
// Check default is on.
EXPECT_TRUE(profile->GetPrefs()->GetBoolean(kAlwaysShowBookmarkBarOnNTP));

// Loading NTP.
auto* contents = browser()->tab_strip_model()->GetActiveWebContents();
EXPECT_TRUE(content::NavigateToURL(contents,
GURL(chrome::kChromeUINewTabURL)));
EXPECT_TRUE(IsNTP(contents));

// Check bookmark bar on NTP is hidden if bookmark bar is empty and
// kBookmarkBar is off.
EXPECT_EQ(BookmarkBar::HIDDEN, browser()->bookmark_bar_state());

AddBookmarkNode(profile);
profile->GetPrefs()->SetBoolean(kAlwaysShowBookmarkBarOnNTP, true);

// Check bookmark is visible on NTP.
// Check bookmark is visible on NTP after adding bookmark.
chrome::ToggleBookmarkBar(browser());
EXPECT_EQ(BookmarkBar::SHOW, browser()->bookmark_bar_state());

// Check bookmark is still visible on NTP regardless of kBookmarkBar pref
// change.
chrome::ToggleBookmarkBar(browser());
EXPECT_EQ(BookmarkBar::SHOW, browser()->bookmark_bar_state());

// Turn off showing bookmark bar on NTP.
profile->GetPrefs()->SetBoolean(kAlwaysShowBookmarkBarOnNTP, false);

// Check bookmark bar on NTP is hidden.
EXPECT_EQ(BookmarkBar::HIDDEN, browser()->bookmark_bar_state());

// Check bookmark bar on NTP is visible when kBookmarkBar pref is on.
chrome::ToggleBookmarkBar(browser());
EXPECT_EQ(BookmarkBar::SHOW, browser()->bookmark_bar_state());

// Check bookmark bar on NTP is hidden when kBookmarkBar pref is off.
chrome::ToggleBookmarkBar(browser());
EXPECT_EQ(BookmarkBar::HIDDEN, browser()->bookmark_bar_state());
}