summaryrefslogtreecommitdiffstats
path: root/src/navtree.js
diff options
context:
space:
mode:
authorDimitri van Heesch <dimitri@stack.nl>2012-07-29 10:11:12 (GMT)
committerDimitri van Heesch <dimitri@stack.nl>2012-07-29 10:11:12 (GMT)
commita934b38cd8b355648e0c07123a99e222ce7cd12b (patch)
treeb0768f059d8b116092a15f295347b3797f43e6c0 /src/navtree.js
parentae962ae4a4dd46f4730982f97110cbf3d2aef397 (diff)
downloadDoxygen-a934b38cd8b355648e0c07123a99e222ce7cd12b.zip
Doxygen-a934b38cd8b355648e0c07123a99e222ce7cd12b.tar.gz
Doxygen-a934b38cd8b355648e0c07123a99e222ce7cd12b.tar.bz2
Release-1.8.1.2-20120729
Diffstat (limited to 'src/navtree.js')
-rw-r--r--src/navtree.js26
1 files changed, 21 insertions, 5 deletions
diff --git a/src/navtree.js b/src/navtree.js
index 4fb2c87..5549d7f 100644
--- a/src/navtree.js
+++ b/src/navtree.js
@@ -22,9 +22,15 @@ function stripPath2(uri)
function localStorageSupported()
{
- return 'localStorage' in window && window['localStorage'] !== null;
+ try {
+ return 'localStorage' in window && window['localStorage'] !== null && window.localStorage.getItem;
+ }
+ catch(e) {
+ return false;
+ }
}
+
function storeLink(link)
{
if (!$("#nav-sync").hasClass('sync') && localStorageSupported()) {
@@ -411,16 +417,26 @@ function navTo(o,root,hash,relpath)
}
}
+function showSyncOff(n,relpath)
+{
+ n.html('<img src="'+relpath+'sync_off.png" title="'+SYNCOFFMSG+'"/>');
+}
+
+function showSyncOn(n,relpath)
+{
+ n.html('<img src="'+relpath+'sync_on.png"/ title="'+SYNCONMSG+'">');
+}
+
function toggleSyncButton(relpath)
{
var navSync = $('#nav-sync');
if (navSync.hasClass('sync')) {
navSync.removeClass('sync');
- navSync.html('<img src="'+relpath+'sync_off.png"/>');
+ showSyncOff(navSync,relpath);
storeLink(stripPath2($(location).attr('pathname'))+$(location).attr('hash'));
} else {
navSync.addClass('sync');
- navSync.html('<img src="'+relpath+'sync_on.png"/>');
+ showSyncOn(navSync,relpath);
deleteLink();
}
}
@@ -448,10 +464,10 @@ function initNavTree(toroot,relpath)
if (localStorageSupported()) {
var navSync = $('#nav-sync');
if (cachedLink()) {
- navSync.html('<img src="'+relpath+'sync_off.png"/>');
+ showSyncOff(navSync,relpath);
navSync.removeClass('sync');
} else {
- navSync.html('<img src="'+relpath+'sync_on.png"/>');
+ showSyncOn(navSync,relpath);
}
navSync.click(function(){ toggleSyncButton(relpath); });
}