Index: chrome/browser/ui/browser_focus_uitest.cc |
=================================================================== |
--- chrome/browser/ui/browser_focus_uitest.cc (revision 193436) |
+++ chrome/browser/ui/browser_focus_uitest.cc (working copy) |
@@ -952,4 +952,42 @@ |
EXPECT_FALSE(ui_test_utils::IsViewFocused(browser(), VIEW_ID_OMNIBOX)); |
} |
+IN_PROC_BROWSER_TEST_F(BrowserFocusTest, FocusOnNavigate) { |
+ // Load the NTP. |
+ ui_test_utils::NavigateToURL(browser(), GURL(chrome::kChromeUINewTabURL)); |
+ EXPECT_TRUE(IsViewFocused(VIEW_ID_OMNIBOX)); |
+ |
+ // Navigate to another page. |
+ const base::FilePath::CharType* kEmptyFile = FILE_PATH_LITERAL("empty.html"); |
+ GURL file_url(ui_test_utils::GetTestUrl(base::FilePath( |
+ base::FilePath::kCurrentDirectory), base::FilePath(kEmptyFile))); |
+ ui_test_utils::NavigateToURL(browser(), file_url); |
+ |
+ ClickOnView(VIEW_ID_TAB_CONTAINER); |
+ |
+ // Navigate back. Should focus the location bar. |
+ { |
+ content::WindowedNotificationObserver back_nav_observer( |
+ content::NOTIFICATION_NAV_ENTRY_COMMITTED, |
+ content::NotificationService::AllSources()); |
+ chrome::GoBack(browser(), CURRENT_TAB); |
+ back_nav_observer.Wait(); |
+ } |
+ |
+ EXPECT_TRUE(IsViewFocused(VIEW_ID_OMNIBOX)); |
+ |
+ // Navigate forward. Shouldn't focus the location bar. |
+ ClickOnView(VIEW_ID_TAB_CONTAINER); |
+ { |
+ content::WindowedNotificationObserver forward_nav_observer( |
+ content::NOTIFICATION_NAV_ENTRY_COMMITTED, |
+ content::NotificationService::AllSources()); |
+ chrome::GoForward(browser(), CURRENT_TAB); |
+ forward_nav_observer.Wait(); |
+ } |
+ |
+ EXPECT_FALSE(IsViewFocused(VIEW_ID_OMNIBOX)); |
+} |
+ |
+ |
} // namespace |