[gtv-resources] r51 committed - Added navigation persistence for category and item when clicking on Me...

1 view
Skip to first unread message

gtv-re...@googlecode.com

unread,
Jun 8, 2011, 3:52:53 PM6/8/11
to google-tv-w...@googlegroups.com
Revision: 51
Author: shaw...@google.com
Date: Wed Jun 8 12:52:06 2011
Log: Added navigation persistence for category and item when clicking
on Menu

http://code.google.com/p/gtv-resources/source/detail?r=51

Modified:
/trunk/templates/html-01/js/fullscreen.js
/trunk/templates/html-01/js/index.js
/trunk/templates/html-01/js/sidenav.js

=======================================
--- /trunk/templates/html-01/js/fullscreen.js Fri Feb 4 11:08:03 2011
+++ /trunk/templates/html-01/js/fullscreen.js Wed Jun 8 12:52:06 2011
@@ -597,7 +597,20 @@

templatePage.videoControl.stop();

- location.assign('index.html');
+ var queryString = location.search;
+
+ var parms = queryString.substring(1).split('&');
+
+ var selectedCategoryIndex = 0;
+ var selectedItemIndex = 0;
+ if (parms.length == 2) {
+ selectedCategoryIndex = parseInt(parms[0].substring(9));
+ selectedItemIndex = parseInt(parms[1].substring(5));
+ }
+
+ location.assign('index.html?category=' + selectedCategoryIndex
+ + '&item=' + selectedItemIndex);
+
};

/**
=======================================
--- /trunk/templates/html-01/js/index.js Fri Feb 4 11:08:03 2011
+++ /trunk/templates/html-01/js/index.js Wed Jun 8 12:52:06 2011
@@ -33,7 +33,7 @@
/**
* Creates the main menu control.
*/
-gtv.jq.TemplatePage.prototype.makeSideNav = function() {
+gtv.jq.TemplatePage.prototype.makeSideNav =
function(selectedCategoryIndex) {
var templatePage = this;

var styles = {
@@ -73,8 +73,14 @@

templatePage.sideNavControl = new gtv.jq.SideNavControl(sidenavParms);

+ // make sure selectedCategoryIndex is in range
+ var highlightedCategoryIndex = selectedCategoryIndex;
+ if (selectedCategoryIndex >= templatePage.data.categories.length||
selectedCategoryIndex < 0)
+ highlightedCategoryIndex = 0;
+
var showParams = {
topParent: $('#mainMenu'),
+ highlightedCategoryIndex: highlightedCategoryIndex,
contents: {
items: navItems
}
@@ -188,6 +194,17 @@
*/
gtv.jq.TemplatePage.prototype.start = function() {
var templatePage = this;
+
+ var queryString = location.search;
+
+ var parms = queryString.substring(1).split('&');
+
+ var selectedCategoryIndex = 0;
+ var selectedItemIndex = 0;
+ if (parms.length == 2) {
+ selectedCategoryIndex = parseInt(parms[0].substring(9));
+ selectedItemIndex = parseInt(parms[1].substring(5));
+ }

templatePage.keyController = new gtv.jq.KeyController();

@@ -196,7 +213,7 @@
templatePage.dataProvider = new gtv.jq.DataProvider();
templatePage.data = templatePage.dataProvider.getData();

- templatePage.makeSideNav();
+ templatePage.makeSideNav(selectedCategoryIndex);

$(document.body).css('visibility', '');

=======================================
--- /trunk/templates/html-01/js/sidenav.js Fri Feb 4 11:08:03 2011
+++ /trunk/templates/html-01/js/sidenav.js Wed Jun 8 12:52:06 2011
@@ -206,7 +206,7 @@
.data('index', j);
itemDiv.append(item);

- if (!firstItem)
+ if (!firstItem || j == showParams.highlightedCategoryIndex)
firstItem = item;

if (!addNextItem(item)) {

Reply all
Reply to author
Forward
0 new messages