| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 cr.define('cr.ui.pageManager', function() { | 5 cr.define('cr.ui.pageManager', function() { |
| 6 /** | 6 /** |
| 7 * PageManager contains a list of root Page and overlay Page objects and | 7 * PageManager contains a list of root Page and overlay Page objects and |
| 8 * handles "navigation" by showing and hiding these pages and overlays. On | 8 * handles "navigation" by showing and hiding these pages and overlays. On |
| 9 * initial load, PageManager can use the path to open the correct hierarchy | 9 * initial load, PageManager can use the path to open the correct hierarchy |
| 10 * of pages and overlay(s). Handlers for user events, like pressing buttons, | 10 * of pages and overlay(s). Handlers for user events, like pressing buttons, |
| (...skipping 429 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 440 updateRootPageFreezeState: function() { | 440 updateRootPageFreezeState: function() { |
| 441 var topPage = this.getTopmostVisiblePage(); | 441 var topPage = this.getTopmostVisiblePage(); |
| 442 if (topPage) | 442 if (topPage) |
| 443 this.setRootPageFrozen_(topPage.isOverlay); | 443 this.setRootPageFrozen_(topPage.isOverlay); |
| 444 }, | 444 }, |
| 445 | 445 |
| 446 /** | 446 /** |
| 447 * Change the horizontal offset used to reposition elements while showing an | 447 * Change the horizontal offset used to reposition elements while showing an |
| 448 * overlay from the default. | 448 * overlay from the default. |
| 449 */ | 449 */ |
| 450 set horizontalOffset(value) { this.horizontalOffset_ = value; }, | 450 set horizontalOffset(value) { |
| 451 this.horizontalOffset_ = value; |
| 452 }, |
| 451 | 453 |
| 452 /** | 454 /** |
| 453 * @param {!cr.ui.pageManager.PageManager.Observer} observer The observer to | 455 * @param {!cr.ui.pageManager.PageManager.Observer} observer The observer to |
| 454 * register. | 456 * register. |
| 455 */ | 457 */ |
| 456 addObserver: function(observer) { this.observers_.push(observer); }, | 458 addObserver: function(observer) { |
| 459 this.observers_.push(observer); |
| 460 }, |
| 457 | 461 |
| 458 /** | 462 /** |
| 459 * Shows a registered overlay page. Does not update history. | 463 * Shows a registered overlay page. Does not update history. |
| 460 * @param {string} overlayName Page name. | 464 * @param {string} overlayName Page name. |
| 461 * @param {string} hash The hash state to associate with the overlay. | 465 * @param {string} hash The hash state to associate with the overlay. |
| 462 * @param {cr.ui.pageManager.Page} rootPage The currently visible root-level | 466 * @param {cr.ui.pageManager.Page} rootPage The currently visible root-level |
| 463 * page. | 467 * page. |
| 464 * @return {boolean} Whether we showed an overlay. | 468 * @return {boolean} Whether we showed an overlay. |
| 465 * @private | 469 * @private |
| 466 */ | 470 */ |
| (...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 502 } | 506 } |
| 503 | 507 |
| 504 return true; | 508 return true; |
| 505 }, | 509 }, |
| 506 | 510 |
| 507 /** | 511 /** |
| 508 * Returns whether or not an overlay is visible. | 512 * Returns whether or not an overlay is visible. |
| 509 * @return {boolean} True if an overlay is visible. | 513 * @return {boolean} True if an overlay is visible. |
| 510 * @private | 514 * @private |
| 511 */ | 515 */ |
| 512 isOverlayVisible_: function() { return this.getVisibleOverlay_() != null; }, | 516 isOverlayVisible_: function() { |
| 517 return this.getVisibleOverlay_() != null; |
| 518 }, |
| 513 | 519 |
| 514 /** | 520 /** |
| 515 * Returns the currently visible overlay, or null if no page is visible. | 521 * Returns the currently visible overlay, or null if no page is visible. |
| 516 * @return {cr.ui.pageManager.Page} The visible overlay. | 522 * @return {cr.ui.pageManager.Page} The visible overlay. |
| 517 * @private | 523 * @private |
| 518 */ | 524 */ |
| 519 getVisibleOverlay_: function() { | 525 getVisibleOverlay_: function() { |
| 520 var topmostPage = null; | 526 var topmostPage = null; |
| 521 for (var name in this.registeredOverlayPages) { | 527 for (var name in this.registeredOverlayPages) { |
| 522 var page = this.registeredOverlayPages[name]; | 528 var page = this.registeredOverlayPages[name]; |
| (...skipping 143 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 666 container.style.right = ''; | 672 container.style.right = ''; |
| 667 container.style.width = ''; | 673 container.style.width = ''; |
| 668 } | 674 } |
| 669 }, | 675 }, |
| 670 | 676 |
| 671 /** | 677 /** |
| 672 * Called when the page is scrolled; moves elements that are position:fixed | 678 * Called when the page is scrolled; moves elements that are position:fixed |
| 673 * but should only behave as if they are fixed for vertical scrolling. | 679 * but should only behave as if they are fixed for vertical scrolling. |
| 674 * @private | 680 * @private |
| 675 */ | 681 */ |
| 676 handleScroll_: function() { this.updateAllFrozenElementPositions_(); }, | 682 handleScroll_: function() { |
| 683 this.updateAllFrozenElementPositions_(); |
| 684 }, |
| 677 | 685 |
| 678 /** | 686 /** |
| 679 * Updates all frozen pages to match the horizontal scroll position. | 687 * Updates all frozen pages to match the horizontal scroll position. |
| 680 * @private | 688 * @private |
| 681 */ | 689 */ |
| 682 updateAllFrozenElementPositions_: function() { | 690 updateAllFrozenElementPositions_: function() { |
| 683 var frozenElements = document.querySelectorAll('.frozen'); | 691 var frozenElements = document.querySelectorAll('.frozen'); |
| 684 for (var i = 0; i < frozenElements.length; i++) | 692 for (var i = 0; i < frozenElements.length; i++) |
| 685 this.updateFrozenElementHorizontalPosition_(frozenElements[i]); | 693 this.updateFrozenElementHorizontalPosition_(frozenElements[i]); |
| 686 }, | 694 }, |
| (...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 742 * Called when a page is navigated to. | 750 * Called when a page is navigated to. |
| 743 * @param {string} path The path of the page being visited. | 751 * @param {string} path The path of the page being visited. |
| 744 * @param {boolean} replace If true, allow no history events to be created. | 752 * @param {boolean} replace If true, allow no history events to be created. |
| 745 */ | 753 */ |
| 746 updateHistory: function(path, replace) {}, | 754 updateHistory: function(path, replace) {}, |
| 747 }; | 755 }; |
| 748 | 756 |
| 749 // Export | 757 // Export |
| 750 return {PageManager: PageManager}; | 758 return {PageManager: PageManager}; |
| 751 }); | 759 }); |
| OLD | NEW |