From 8427ebdf2a064362d03b7c7649207ccc8734ef17 Mon Sep 17 00:00:00 2001 From: David Norton Date: Wed, 19 Jul 2006 16:14:27 +0000 Subject: [PATCH] Fixes #114, Preference for Scholar location (top, bottom). (I had to go a little roundabout way of doing it, as you can't use the overlay-related positioning attributes on-the-fly) --- chrome/chromeFiles/content/scholar/overlay.js | 39 ++++++++++++------- .../chromeFiles/content/scholar/overlay.xul | 5 ++- .../content/scholar/preferences.js | 5 +++ .../content/scholar/preferences.xul | 9 +++++ .../skin/default/scholar/overlay.css | 12 +----- .../skin/default/scholar/scholar.css | 10 +++++ defaults/preferences/scholar.js | 3 +- 7 files changed, 55 insertions(+), 28 deletions(-) diff --git a/chrome/chromeFiles/content/scholar/overlay.js b/chrome/chromeFiles/content/scholar/overlay.js index 5de1a21656..6fa204ca49 100644 --- a/chrome/chromeFiles/content/scholar/overlay.js +++ b/chrome/chromeFiles/content/scholar/overlay.js @@ -35,18 +35,29 @@ var ScholarPane = new function() collectionsView = new Scholar.CollectionTreeView(); document.getElementById('collections-tree').view = collectionsView; - /* - if(window.opener) + if(Scholar.Prefs.get("scholarPaneOnTop")) { - var pane = window.opener.document.getElementById('scholar-pane'); - if(pane) - { - var b = pane.getAttribute('collapsed'); - if(b != document.getElementById('scholar-pane').getAttribute('collapsed')) - toggleDisplay(); - } + var oldPane = document.getElementById('scholar-pane'); + var oldSplitter = document.getElementById('scholar-splitter'); + var appContent = document.getElementById('appcontent'); + + var newPane = document.createElement('hbox'); + newPane.setAttribute('id','scholar-pane'); + newPane.setAttribute('collapsed',true); + newPane.setAttribute('flex','1'); + while(oldPane.hasChildNodes()) + newPane.appendChild(oldPane.firstChild); + appContent.removeChild(oldPane); + appContent.insertBefore(newPane, document.getElementById('content')); + + var newSplitter = document.createElement('splitter'); + newSplitter.setAttribute('id','scholar-splitter'); + newSplitter.setAttribute('collapsed',true); + newSplitter.setAttribute('resizebefore','closest'); + newSplitter.setAttribute('resizeafter','closest'); + appContent.removeChild(oldSplitter); + appContent.insertBefore(newSplitter, document.getElementById('content')); } - */ //Create the add menu with each item type var addMenu = document.getElementById('tb-add').firstChild; @@ -75,10 +86,10 @@ var ScholarPane = new function() */ function toggleDisplay() { - var visible = document.getElementById('scholar-pane').getAttribute('hidden') == 'true'; + var visible = document.getElementById('scholar-pane').getAttribute('collapsed') == 'true'; - document.getElementById('scholar-pane').setAttribute('hidden',!visible); - document.getElementById('scholar-splitter').setAttribute('hidden',!visible); + document.getElementById('scholar-pane').setAttribute('collapsed',!visible); + document.getElementById('scholar-splitter').setAttribute('collapsed',!visible); if(!visible) document.getElementById('content').setAttribute('collapsed', false); @@ -88,7 +99,7 @@ var ScholarPane = new function() { var visible = document.getElementById('content').getAttribute('collapsed') == 'true'; document.getElementById('content').setAttribute('collapsed', !visible); - document.getElementById('scholar-splitter').setAttribute('hidden', !visible); + document.getElementById('scholar-splitter').setAttribute('collapsed', !visible); } /* diff --git a/chrome/chromeFiles/content/scholar/overlay.xul b/chrome/chromeFiles/content/scholar/overlay.xul index c1500e6e98..d43ddd51fd 100644 --- a/chrome/chromeFiles/content/scholar/overlay.xul +++ b/chrome/chromeFiles/content/scholar/overlay.xul @@ -21,8 +21,9 @@ -