[Pkg-mozext-commits] [compactheader] 12/441: Version 0.3.3:

David Prévot taffit at moszumanska.debian.org
Wed Mar 18 12:28:39 UTC 2015


This is an automated email from the git hooks/post-receive script.

taffit pushed a commit to branch master
in repository compactheader.

commit e8f6e0e858b833f5d998ae29d581e3d64fd2b28f
Author: joachim.herb <none at none>
Date:   Wed Aug 12 21:22:12 2009 +0000

    Version 0.3.3:
    
    Added option dialog.
---
 .../CompactHeader/content/compactHeaderOverlay.js  |  51 +++++++-
 chrome/CompactHeader/content/preferences.js        | 133 +++++++++++++++++++++
 chrome/CompactHeader/content/preferences.xul       |  94 +++++++++++++++
 chrome/CompactHeader/locale/de-DE/preferences.dtd  |   8 ++
 chrome/CompactHeader/locale/en-US/preferences.dtd  |   8 ++
 chrome/CompactHeader/skin/global/CompactHeader.css |  28 ++++-
 chrome/CompactHeader/skin/global/preferences.css   |  17 +++
 defaults/preferences/prefs.js                      |  11 ++
 install.rdf                                        |   3 +-
 9 files changed, 344 insertions(+), 9 deletions(-)

diff --git a/chrome/CompactHeader/content/compactHeaderOverlay.js b/chrome/CompactHeader/content/compactHeaderOverlay.js
index 508536c..8ebb4b8 100644
--- a/chrome/CompactHeader/content/compactHeaderOverlay.js
+++ b/chrome/CompactHeader/content/compactHeaderOverlay.js
@@ -66,6 +66,22 @@ var gCoheBuiltCollapsedView = false;
 //  {name:"toCcBcc", useToggle:true, useShortView:true, outputFunction: OutputEmailAddresses},
   {name:"date", outputFunction:OutputDate}];
 
+	var prefBranch = Components.classes["@mozilla.org/preferences-service;1"]
+    .getService(Components.interfaces.nsIPrefService)
+    .getBranch("extensions.CompactHeader.");
+
+	var buttonslist = ["Reply", "Forward", "Archive", "Junk", "Trash"];
+	var buttonsanonid = [["hdrReplyButton", "hdrReplyAllButton", "hdrReplyListButton"], 
+//												"hdrReplyDropdown", "hdrReplySubButton", "hdrReplyAllSubButtonSep",
+//												"hdrReplyAllSubButton", "hdrReplyAllDropdown", "hdrReplyAllSubButton",
+//												"hdrReplySubButton", "hdrReplyListDropdown", "hdrReplyListSubButton",
+//												"hdrReplyAllSubButton", "hdrReplySubButton"],
+											 ["hdrForwardButton"],
+											 ["archiveButton"],
+											 ["hdrJunkButton"],
+											 ["hdrTrashButton"]
+			];
+  
 // Now, for each view the message pane can generate, we need a global table
 // of headerEntries. These header entry objects are generated dynamically
 // based on the static data in the header lists (see above) and elements
@@ -96,9 +112,10 @@ function coheOnLoadMsgHeaderPane()
                                     Components.interfaces.nsIAbListener.all);
 
   var deckHeaderView = document.getElementById("msgHeaderViewDeck");
+  
   gCoheCollapsedHeaderViewMode = 
-	  deckHeaderView.selectedPanel == document.getElementById('collapsedHeaderView');
-	
+	  deckHeaderView.selectedPanel == document.getElementById('collapsedHeaderView');	  
+	  
   // work around XUL deck bug where collapsed header view, if it's the persisted
   // default, wouldn't be sized properly because of the larger expanded
   // view "stretches" the deck.
@@ -179,6 +196,7 @@ function coheUpdateHeaderView()
   		showHeaderView(gCoheCollapsedHeaderView);
  	
   	UpdateJunkButton();
+  	updateHdrButtons();
 }
 
 function coheToggleHeaderView ()
@@ -198,7 +216,9 @@ function coheToggleHeaderView ()
     ClearHeaderView(gExpandedHeaderView);
     UpdateExpandedMessageHeaders();
   }
-	
+
+  updateHdrButtons();
+  
   // Work around a xul deck bug where the height of the deck is determined
 	// by the tallest panel in the deck even if that panel is not selected...
   deck.selectedPanel.collapsed = false;
@@ -219,7 +239,7 @@ function coheUpdateMessageHeaders()
 	// problem that attachment-splitter causes if it's moved high enough to
 	// affect the header box:
   document.getElementById('msgHeaderView').removeAttribute('height');
-
+	
   // iterate over each header we received and see if we have a matching entry
 	// in each header view table...
   for (var headerName in currentHeaderData)
@@ -250,5 +270,28 @@ function coheUpdateMessageHeaders()
 
 addEventListener('messagepane-loaded', coheOnLoadMsgHeaderPane, true);
 addEventListener('messagepane-unloaded', coheOnUnloadMsgHeaderPane, true);
+addEventListener('messagepane-update', coheUpdateHeaderView, true);
 
+function getCurrentMsgHdrButtonBox() {
+	return document.getElementById('msgHeaderViewDeck').selectedPanel
+									.getElementsByTagName("header-view-button-box").item(0);
+}
 
+function updateHdrButtons() {
+	  for(var i = 0; i<buttonslist.length; i++) {
+	  var buttonBox = getCurrentMsgHdrButtonBox();
+	  for (var j=0; j<buttonsanonid[i].length; j++){
+	  	var myElement = buttonBox.getButton(buttonsanonid[i][j]);
+	  	if (myElement != null) {
+		  	if (prefBranch.getBoolPref("expandedview.display" + buttonslist[i])) {
+		  		if (buttonslist[i] != "Reply") {
+		  			myElement.removeAttribute("hidden");
+		  		}
+		  	}
+		  	else {
+					myElement.setAttribute("hidden", "true");
+		  	}
+	  	}
+	  }
+  }
+}
\ No newline at end of file
diff --git a/chrome/CompactHeader/content/preferences.js b/chrome/CompactHeader/content/preferences.js
new file mode 100644
index 0000000..f736268
--- /dev/null
+++ b/chrome/CompactHeader/content/preferences.js
@@ -0,0 +1,133 @@
+///////////////////////////////////////////////////////////////////////////////
+//
+//  preferences.js
+//
+//  Copyright 2005 by Michael Buschbeck <michael at buschbeck.net>
+//
+//  Preferences dialog box for the Unselect Message extension. Allows users to
+//  customize the behavior of the extension.
+//
+
+
+///////////////////////////////////////////////////////////////////////////////
+//
+//  Variables
+//
+
+var prefBranch;
+
+	var buttonslist = ["Reply", "Forward", "Archive", "Junk", "Trash"];
+	var buttonsanonid = [["hdrReplyButton", "hdrReplyAllButton", "hdrReplyListButton", 
+												"hdrReplyDropdown", "hdrReplySubButton", "hdrReplyAllSubButtonSep",
+												"hdrReplyAllSubButton", "hdrReplyAllDropdown", "hdrReplyAllSubButton",
+												"hdrReplySubButton", "hdrReplyListDropdown", "hdrReplyListSubButton",
+												"hdrReplyAllSubButton", "hdrReplySubButton"],
+											 ["hdrForwardButton"],
+											 ["archiveButton"],
+											 ["hdrJunkButton"],
+											 ["hdrTrashButton"]
+			];
+
+///////////////////////////////////////////////////////////////////////////////
+//
+//  onLoad
+//
+//  Called when the preferences dialog has finished loading. Initializes the
+//  controls according to current configuration settings.
+//
+
+function onLoad()
+{
+  prefBranch = Components.classes["@mozilla.org/preferences-service;1"]
+    .getService(Components.interfaces.nsIPrefService)
+    .getBranch("extensions.CompactHeader.");
+
+  for(var i = 0; i<buttonslist.length; i++) {
+	  loadPrefCheckbox("compactview.display" + buttonslist[i],  "checkbox.Compact." + buttonslist[i]);
+	  loadPrefCheckbox("expandedview.display" + buttonslist[i], "checkbox.Expanded." + buttonslist[i]);
+  }
+}
+
+
+///////////////////////////////////////////////////////////////////////////////
+//
+//  onDialogAccept
+//
+//  Called when the preferences dialog is closed by pressing the OK button.
+//  Saves the configuration settings.
+//
+
+function onDialogAccept()
+{
+  for(var i = 0; i<buttonslist.length; i++) {
+	  savePrefCheckbox("compactview.display" + buttonslist[i],  "checkbox.Compact." + buttonslist[i]);
+	  savePrefCheckbox("expandedview.display" + buttonslist[i], "checkbox.Expanded." + buttonslist[i]);
+  }
+
+  updateHdrButtons();
+  
+  return true;
+}
+
+
+function getCurrentMsgHdrButtonBox() {
+	var msgHeaderViewDeck = top.document.getElementById('msgHeaderViewDeck');
+	if (msgHeaderViewDeck) {
+		return 	msgHeaderViewDeck.selectedPanel
+						.getElementsByTagName("header-view-button-box").item(0);
+ 
+	}
+	else {
+		return null;
+	}
+}
+
+function updateHdrButtons() {
+	if (0) {
+  for(var i = 0; i<buttonslist.length; i++) {
+	  var buttonBox = getCurrentMsgHdrButtonBox();
+		if (buttonBox) {
+		  for (var j=0; j<buttonsanonid[i].length; j++){
+		  	var myElement = buttonBox.getButton(buttonsanonid[i][j]);
+		  	if (myElement != null) {
+			  	if (prefBranch.getBoolPref("expandedview.display" + buttonslist[i])) {
+			  		myElement.removeAttribute("hidden");
+			  	}
+			  	else {
+						myElement.setAttribute("hidden", "true");
+			  	}
+		  	}
+		  }
+	  }
+  }
+	var event = document.createEvent('Events');
+	event.initEvent('messagepane-loaded', true, false);
+	}
+
+}
+
+///////////////////////////////////////////////////////////////////////////////
+//
+//  loadPrefCheckbox
+//
+//  Loads the given boolean preference value into the given checkbox element.
+//
+
+function loadPrefCheckbox(pref, idCheckbox)
+{
+  document.getElementById(idCheckbox).checked = prefBranch.getBoolPref(pref);
+}
+
+
+///////////////////////////////////////////////////////////////////////////////
+//
+//  savePrefCheckbox
+//
+//  Saves the given boolean preference value from the given checkbox element.
+//
+
+function savePrefCheckbox(pref, idCheckbox)
+{
+  prefBranch.setBoolPref(pref, document.getElementById(idCheckbox).checked);
+}
+
diff --git a/chrome/CompactHeader/content/preferences.xul b/chrome/CompactHeader/content/preferences.xul
new file mode 100644
index 0000000..bd702ac
--- /dev/null
+++ b/chrome/CompactHeader/content/preferences.xul
@@ -0,0 +1,94 @@
+<?xml version="1.0"?>
+
+<?xml-stylesheet type="text/css" href="chrome://global/skin/"?>
+<?xml-stylesheet type="text/css" href="chrome://communicator/skin/"?>
+<?xml-stylesheet type="text/css" href="chrome://CompactHeader/skin/preferences.css"?>
+
+<!DOCTYPE window SYSTEM "chrome://CompactHeader/locale/preferences.dtd">
+
+<!--
+  void(openDialog("chrome://CompactHeader/content/preferences.xul"))
+-->
+
+<dialog title="&dialog.title;" xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
+  onload="onLoad()" ondialogaccept="return onDialogAccept()">
+
+  <script type="application/x-javascript" src="chrome://CompactHeader/content/preferences.js"/>
+
+  <groupbox>
+    <caption label="&groupbox.Buttons.caption;"/>
+    <grid>
+    	<columns>
+    		<column flex="0"/>
+    		<column flex="1"/>
+    		<column flex="1"/>
+    	</columns>
+    	<rows>
+    		<row>
+    			<label value=""/>    			
+    			<hbox pack="center">
+    			<label value="Compact"/>
+    			</hbox>
+    			<hbox pack="center">
+    			<label value="Expanded"/>
+    			</hbox>
+				</row>
+    		<row>
+    			<hbox pack="end">
+    			<label value="&checkbox.Compact.Reply.caption;"/>
+    			</hbox>
+    			<hbox pack="center">
+	    		<checkbox id="checkbox.Compact.Reply"/>
+    			</hbox>
+    			<hbox pack="center">
+  	    	<checkbox id="checkbox.Expanded.Reply"/>    			
+    			</hbox>
+    		</row>
+    		<row>
+    			<hbox align="center" pack="end">
+    			<label value="&checkbox.Compact.Forward.caption;"/>
+    			</hbox>
+    			<hbox pack="center">
+	    		<checkbox id="checkbox.Compact.Forward"/>
+    			</hbox>
+    			<hbox pack="center">
+  	    	<checkbox id="checkbox.Expanded.Forward"/>    			
+    			</hbox>
+    		</row>
+    		<row>
+    			<hbox align="center" pack="end">
+    			<label value="&checkbox.Compact.Archive.caption;"/>
+    			</hbox>
+    			<hbox pack="center">
+	    		<checkbox id="checkbox.Compact.Archive"/>
+    			</hbox>
+    			<hbox pack="center">
+  	    	<checkbox id="checkbox.Expanded.Archive"/>    			
+    			</hbox>
+    		</row>
+    		<row>
+    			<hbox align="center" pack="end">
+    			<label value="&checkbox.Compact.Junk.caption;"/>
+    			</hbox>
+    			<hbox pack="center">
+	    		<checkbox id="checkbox.Compact.Junk"/>
+    			</hbox>
+    			<hbox pack="center">
+  	    	<checkbox id="checkbox.Expanded.Junk"/>    			
+    			</hbox>
+    		</row>
+    		<row>
+    			<hbox align="center" pack="end">
+    			<label value="&checkbox.Compact.Trash.caption;"/>
+    			</hbox>
+    			<hbox pack="center">
+	    		<checkbox id="checkbox.Compact.Trash"/>
+    			</hbox>
+    			<hbox pack="center">
+  	    	<checkbox id="checkbox.Expanded.Trash"/>    			
+    			</hbox>
+    		</row>
+    	</rows>
+    </grid>
+  </groupbox>
+</dialog>
diff --git a/chrome/CompactHeader/locale/de-DE/preferences.dtd b/chrome/CompactHeader/locale/de-DE/preferences.dtd
new file mode 100644
index 0000000..a6f276a
--- /dev/null
+++ b/chrome/CompactHeader/locale/de-DE/preferences.dtd
@@ -0,0 +1,8 @@
+<!ENTITY dialog.title "Compact Header">
+
+<!ENTITY groupbox.Buttons.caption "Anzuzeigende Schaltflächen">
+<!ENTITY checkbox.Compact.Reply.caption "Antworten">
+<!ENTITY checkbox.Compact.Forward.caption "Weiterleiten">
+<!ENTITY checkbox.Compact.Archive.caption "Archivieren">
+<!ENTITY checkbox.Compact.Junk.caption "Junk">
+<!ENTITY checkbox.Compact.Trash.caption "Trash">
diff --git a/chrome/CompactHeader/locale/en-US/preferences.dtd b/chrome/CompactHeader/locale/en-US/preferences.dtd
new file mode 100644
index 0000000..81a27fb
--- /dev/null
+++ b/chrome/CompactHeader/locale/en-US/preferences.dtd
@@ -0,0 +1,8 @@
+<!ENTITY dialog.title "Compact Header">
+
+<!ENTITY groupbox.Buttons.caption "Select Buttons to Display">
+<!ENTITY checkbox.Compact.Reply.caption "Reply">
+<!ENTITY checkbox.Compact.Forward.caption "Forward">
+<!ENTITY checkbox.Compact.Archive.caption "Archive">
+<!ENTITY checkbox.Compact.Junk.caption "Junk">
+<!ENTITY checkbox.Compact.Trash.caption "Trash">
diff --git a/chrome/CompactHeader/skin/global/CompactHeader.css b/chrome/CompactHeader/skin/global/CompactHeader.css
index ac09fb2..a1c6866 100644
--- a/chrome/CompactHeader/skin/global/CompactHeader.css
+++ b/chrome/CompactHeader/skin/global/CompactHeader.css
@@ -66,8 +66,8 @@
   -moz-appearance: none !important;
   border: 2px solid transparent;
   background-color: transparent;
-  width: 1.7em;
-  height: 1.7em;
+  width: 1.3em;
+  height: 1.3em;
   padding-bottom: 0px !important;
   background-image: url("chrome://CompactHeader/skin/twisty-open.png");
   background-repeat: no-repeat;
@@ -83,8 +83,8 @@
   -moz-appearance: none !important;
   border: 2px solid transparent;
   background-color: transparent;
-  width: 1.7em;
-  height: 1.7em;
+  width: 1.3em;
+  height: 1.3em;
   padding-bottom: 0px !important;
   background-image: url("chrome://CompactHeader/skin/twisty-clsd.png");
   background-repeat: no-repeat;
@@ -134,3 +134,23 @@
   -moz-padding-start: 3px !important;
   -moz-margin-start: 10px !important;
 }
+
+.hdrReplyButton[hidden="true"] {
+	display: none !important;
+}
+
+.hdrForwardButton[hidden="true"] {
+	display: none !important;
+}
+
+.hdrArchiveButton[hidden="true"] {
+	display: none !important;
+}
+
+.hdrJunkButton[hidden="true"] {
+	display: none !important;
+}
+
+.hdrTrashButton[hidden="true"] {
+	display: none !important;
+}
diff --git a/chrome/CompactHeader/skin/global/preferences.css b/chrome/CompactHeader/skin/global/preferences.css
new file mode 100644
index 0000000..54e8b4c
--- /dev/null
+++ b/chrome/CompactHeader/skin/global/preferences.css
@@ -0,0 +1,17 @@
+ at namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul");
+
+.checkbox-label-box,
+.checkbox-label {
+	margin: 0px !important;
+	padding: 0px !important;
+	border: 0px !important;
+} 
+
+#checkbox.Compact.Reply {
+	background-color: blue;
+}
+
+
+#testtest {
+	background-color: red;
+}
\ No newline at end of file
diff --git a/defaults/preferences/prefs.js b/defaults/preferences/prefs.js
index 29877ca..97c5534 100644
--- a/defaults/preferences/prefs.js
+++ b/defaults/preferences/prefs.js
@@ -3,3 +3,14 @@ pref("CompactHeader.prefkey4String", "A string");
 pref("CompactHeader.prefkey4boolean", false);
 pref("CompactHeader.prefkey4number", 0);
 */
+pref("extensions.CompactHeader.compactview.displayReply", false);
+pref("extensions.CompactHeader.compactview.displayForward",  false);
+pref("extensions.CompactHeader.compactview.displayArchive", false);
+pref("extensions.CompactHeader.compactview.displayJunk", false);
+pref("extensions.CompactHeader.compactview.displayTrash", false);
+
+pref("extensions.CompactHeader.expandedview.displayReply", true);
+pref("extensions.CompactHeader.expandedview.displayForward",  true);
+pref("extensions.CompactHeader.expandedview.displayArchive", true);
+pref("extensions.CompactHeader.expandedview.displayJunk", true);
+pref("extensions.CompactHeader.expandedview.displayTrash", true);
diff --git a/install.rdf b/install.rdf
index 8dbc8ec..b6cc415 100644
--- a/install.rdf
+++ b/install.rdf
@@ -6,10 +6,11 @@
 
 	<RDF:Description about="urn:mozilla:install-manifest">
 		<em:name>CompactHeader</em:name>
-		<em:version>0.3.2</em:version>
+		<em:version>0.3.3</em:version>
 		<em:description>Add ability to reduce header size to one line.</em:description>
 		<em:creator>Joachim Herb</em:creator>
 		<em:contributor>Zamula</em:contributor>
+    <em:optionsURL>chrome://CompactHeader/content/preferences.xul</em:optionsURL>
 		<em:homepageURL>http://compactheader.mozdev.org/</em:homepageURL>
 		<em:id>{58D4392A-842E-11DE-B51A-C7B855D89593}</em:id>
 		<em:type>2</em:type>

-- 
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-mozext/compactheader.git



More information about the Pkg-mozext-commits mailing list