1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 <include src="../uber/uber_page_manager_observer.js">
6 <include src="../uber/uber_utils.js">
9 var HelpPage = help.HelpPage;
10 var PageManager = cr.ui.pageManager.PageManager;
13 * DOMContentLoaded handler, sets up the page.
16 PageManager.register(HelpPage.getInstance());
18 if (help.ChannelChangePage) {
19 PageManager.registerOverlay(help.ChannelChangePage.getInstance(),
20 HelpPage.getInstance());
22 PageManager.addObserver(new uber.PageManagerObserver());
23 PageManager.initialize(HelpPage.getInstance());
24 uber.onContentFrameLoaded();
26 var pageName = PageManager.getPageNameFromPath();
27 // Still update history so that chrome://help/nonexistant redirects
28 // appropriately to chrome://help/. If the URL matches, updateHistory
29 // will avoid adding the extra state.
30 var updateHistory = true;
31 PageManager.showPageByName(pageName, updateHistory, {replaceState: true});
34 document.addEventListener('DOMContentLoaded', load);
37 * Listener for the |beforeunload| event.
39 window.onbeforeunload = function() {
40 PageManager.willClose();
44 * Listener for the |popstate| event.
45 * @param {Event} e The |popstate| event.
47 window.onpopstate = function(e) {
48 var pageName = PageManager.getPageNameFromPath();
49 PageManager.setState(pageName, location.hash, e.state);