[Pkg-mozext-commits] [compactheader] 200/441: New version 1.2.5beta1: Supports uninstall. debugLog function added
David Prévot
taffit at moszumanska.debian.org
Wed Mar 18 12:28:59 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 f89802e40ec5a8831e58775bdddf7ac42e68fb56
Author: joachim.herb <none at none>
Date: Sat Jun 4 20:57:13 2011 +0000
New version 1.2.5beta1:
Supports uninstall.
debugLog function added
--HG--
branch : B_1_2
---
build.xml | 152 ++++++++++++++-------
chrome/CompactHeader/content/CHTMessenger.js | 18 +--
.../CompactHeader/content/compactHeaderOverlay.js | 133 ++++++++++++------
.../CompactHeader/content/compactHeaderOverlay.xul | 2 +-
install.rdf | 2 +-
5 files changed, 209 insertions(+), 98 deletions(-)
diff --git a/build.xml b/build.xml
index 494da40..eae362d 100644
--- a/build.xml
+++ b/build.xml
@@ -1,54 +1,112 @@
<?xml version="1.0" ?>
-<project name="getpartialmessages" default="dist">
- <property name="src.dir" value="." />
- <property name="dist.dir" value="../downloads/" />
-
- <xmlproperty file="./install.rdf" prefix="myFileContent"/>
- <property name="app.version" value="${myFileContent.RDF.RDF:Description.em:version}"/>
- <property name="app.name" value="${myFileContent.RDF.RDF:Description.em:name}" />
- <property name="app.id" value="${myFileContent.RDF.RDF:Description.em:id}" />
+<project name="CompactHeader" default="dist">
+ <property name="src.dir" value="." />
+ <property name="dist.dir" value="../downloads/"/>
+ <property name="AMOdist.dir" value="../AMO/"/>
+ <property name="www.dir" value="../www/"/>
+ <property name="pref.file" value="${src.dir}/chrome/CompactHeader/content/preferences.js"/>
+ <property name="mccoy.cmd" value='c:/Program Files (x86)/mccoy/mccoy.exe'/>
+ <taskdef name="xmltask" classname="com.oopsconsultancy.xmltask.ant.XmlTask"/>
+
+ <xmltask source="./install.rdf">
+ <copy path="//em:version/text()" property="app.version"/>
+ <copy path="//em:name/text()" property="app.name"/>
+ <copy path="//em:id/text()" property="app.id"/>
+ </xmltask>
+
+ <target name="dist" depends="spreadVersion,buildAMO,buildMozdev">
+
+ </target>
+
+ <target name="clean">
+ <delete file="${dist.dir}/${app.name}-${app.version}.xpi" />
+ </target>
+
+
+ <target name="buildAMO">
<!--
- <property name="ff.dir" value="C:\Users\joachim\comm-central\objdir-tb-release\mozilla\dist\bin" />
- <condition property="ff.present">
- <and>
- <isset property="ff.dir" />
- <available file="${ff.dir}" type="dir" />
- </and>
- </condition>
- -->
- <!-- copy to extensions directory -->
- <!--
- <target name="test.ext" depends="chrome" if="ff.present">
- <copy file="${dist.dir}/${app.name}.jar" todir="${ff.dir}/extensions/${app.id}/chrome" overwrite="true" />
- <copy file="${src.dir}/chrome.manifest" todir="${ff.dir}/extensions/${app.id}" overwrite="true" />
- </target>
- -->
-
- <target name="dist">
- <zip destfile="${dist.dir}/${app.name}-${app.version}.xpi">
- <fileset dir="${src.dir}">
- <include name="chrome.manifest" />
- <include name="install.rdf" />
- <include name="defaults/**" />
- <include name="chrome/**" />
- <exclude name="**/.*" />
- <exclude name="**/CVS/**" />
- </fileset>
- </zip>
- </target>
-
- <target name="clean">
- <delete file="${dist.dir}/${app.name}-${app.version}.xpi" />
- </target>
+ <replaceregexp file="${pref.file}"
+ byline="true"
+ match="(.*)return.*( /\* Patch this line for AMO version \*/)"
+ replace="\1return true; /* AMO version */\2"/> -->
+ <copy file="${src.dir}/install.rdf" tofile="${AMOdist.dir}/install.rdf"/>
+ <replaceregexp file="${AMOdist.dir}/install.rdf"
+ byline="true"
+ match=".*update.*"
+ replace=""/>
+ <zip destfile="${AMOdist.dir}/${app.name}-${app.version}.xpi">
+ <fileset dir="${src.dir}">
+ <include name="chrome.manifest" />
+ <include name="defaults/**" />
+ <include name="chrome/**" />
+ <exclude name="**/.*" />
+ <exclude name="**/CVS/**" />
+ </fileset>
+ <fileset dir="${AMOdist.dir}">
+ <include name="install.rdf" />
+ </fileset>
+ </zip>
+ </target>
+
+ <target name="buildMozdev">
+ <!--
+ <replaceregexp file="${pref.file}"
+ byline="true"
+ match="(.*)return .*( /\* Patch this line for AMO version \*/)"
+ replace="\1return false; /* Mozdev version */\2"/>-->
+ <zip destfile="${dist.dir}/${app.name}-${app.version}.xpi">
+ <fileset dir="${src.dir}">
+ <include name="chrome.manifest" />
+ <include name="install.rdf" />
+ <include name="defaults/**" />
+ <include name="chrome/**" />
+ <exclude name="**/.*" />
+ <exclude name="**/CVS/**" />
+ </fileset>
+ </zip>
+ <xmltask source="${www.dir}/update.rdf" dest="${www.dir}/update.rdf.new">
+ <replace path="/RDF:RDF/RDF:Description/@em:version" withText="${app.version}"/>
+ <replace path="/RDF:RDF/RDF:Description/@em:updateLink" withText="http://downloads.mozdev.org/compactheader/CompactHeader-${app.version}.xpi"/>
+ </xmltask>
+ <move file="${www.dir}/update.rdf.new" tofile="${www.dir}/update.rdf"/>
+ <property name="absUpdate" location="${www.dir}/update.rdf"/>
+ <property name="absXPI" location="${dist.dir}/${app.name}-${app.version}.xpi"/>
+
+ <echo message="absUpdate ${absUpdate}"/>
+ <echo message="absUpdate ${absXPI}"/>
- <!--
- <target name="clean.ff" if="ff.present">
- <delete dir="${ff.dir}/extensions/${app.id}" failonerror="false" />
- <delete file="${ff.dir}/chrome/${app.name}.manifest" failonerror="false" />
- <delete file="${ff.dir}/chrome/chrome/${app.name}.jar" failonerror="false" />
- </target>
- -->
+ <exec executable="${mccoy.cmd}">
+ <arg value="-command"/>
+ <arg value="update"/>
+ <arg value="-updateRDF"/>
+ <arg value="${absUpdate}"/>
+ <arg value="-key"/>
+ <arg value="compactheaderkey"/>
+ <arg value="-xpi"/>
+ <arg value="${absXPI}"/>
+ </exec>
+ </target>
+
+ <target name="spreadVersion">
+ <!--
+ <xmltask source="${www.dir}/availableVersion.xml" dest="${www.dir}/availableVersion.xml.new">
+ <replace path="/updates/update[1]/version" withXml="<version>${app.version}</version>"/>
+ </xmltask>
+ <move file="${www.dir}/availableVersion.xml.new" tofile="${www.dir}/availableVersion.xml"/>
+ -->
+ <!--
+ <xmltask source="${www.dir}/availVersion.xml" dest="${www.dir}/availVersion.xml.new">
+ <replace path="/updates/update[@server='mozdev']/@version" withText="${app.version}"/>
+ </xmltask>
+ <move file="${www.dir}/availVersion.xml.new" tofile="${www.dir}/availVersion.xml"/>
+-->
+ <replaceregexp file="${www.dir}/installation.html"
+ byline="true"
+ match="(.*update the version.*CompactHeader-).*(.xpi">Version ).*( of Co.*)"
+ replace="\1${app.version}\2${app.version}\3"/>
+
+ </target>
</project>
diff --git a/chrome/CompactHeader/content/CHTMessenger.js b/chrome/CompactHeader/content/CHTMessenger.js
index eeea38f..708d630 100644
--- a/chrome/CompactHeader/content/CHTMessenger.js
+++ b/chrome/CompactHeader/content/CHTMessenger.js
@@ -152,21 +152,17 @@ org.mozdev.customizeHeaderToolbar.pane = function(){
}
pub.CHTCleanupButtons = function() {
+ alert("cleanup");
var hdrToolbox = document.getElementById("header-view-toolbox");
var hdrToolbar = document.getElementById("header-view-toolbar");
- var hdrBarDefaultSet = "hdrReplyButton,hdrReplyAllButton,hdrReplyListButton,hdrForwardButton,hdrArchiveButton,hdrJunkButton,hdrTrashButton";
- var hdrBoxDefaultLabelalign = hdrToolbox.getAttribute("defaultlabelalign");
- var hdrBoxDefaultIconsize = hdrToolbox.getAttribute("defaulticonsize");
- var hdrBoxDefaultMode = hdrToolbox.getAttribute("defaultmode");
- var hdrBarDefaultIconsize = hdrToolbar.getAttribute("defaulticonsize");
- var hdrBarDefaultMode = hdrToolbar.getAttirbute("defaultmode");
+ var hdrBarDefaultSet = "hdrReplyToSenderButton,hdrSmartReplyButton,hdrForwardButton,hdrArchiveButton,hdrJunkButton,hdrTrashButton";
- hdrToolbox.setAttribute("labelalign", hdrBoxDefaultLabelalign);
- hdrToolbox.setAttribute("iconsize", hdrBoxDefaultIconsize);
- hdrToolbox.setAttribute("mode", hdrBoxDefaultMode);
- hdrToolbar.setAttribute("iconsize", hdrBarDefaultIconsize);
- hdrToolbar.setAttribute("mode", hdrBarDefaultMode);
+ hdrToolbox.setAttribute("labelalign", "end");
+ hdrToolbox.setAttribute("iconsize", "small");
+ hdrToolbox.setAttribute("mode", "full");
+ hdrToolbar.setAttribute("iconsize", "small");
+ hdrToolbar.setAttribute("mode", "full");
hdrToolbar.currentSet = hdrBarDefaultSet;
hdrToolbar.setAttribute("currentset", hdrBarDefaultSet);
diff --git a/chrome/CompactHeader/content/compactHeaderOverlay.js b/chrome/CompactHeader/content/compactHeaderOverlay.js
index a8b3fdb..08aef4a 100644
--- a/chrome/CompactHeader/content/compactHeaderOverlay.js
+++ b/chrome/CompactHeader/content/compactHeaderOverlay.js
@@ -67,6 +67,9 @@ org.mozdev.compactHeader.pane = function() {
//
var gCoheCollapsedHeaderViewMode = false;
var gCoheBuiltCollapsedView = false;
+
+ var LOGLEVEL = {"debug": 0, "info":1, "warn": 2, "error": 3};
+ var gCurrentLogLevel = LOGLEVEL.debug; // TODO: Set to info
/**
* The collapsed view: very lightweight. We only show a couple of fields. See
@@ -204,6 +207,7 @@ org.mozdev.compactHeader.pane = function() {
}
pub.coheOnLoadMsgHeaderPane = function() {
+ debugLog("start coheOnLoadMsgHeaderPane");
coheInitializeHeaderViewTables();
// Add an address book listener so we can update the header view when things
@@ -256,12 +260,7 @@ org.mozdev.compactHeader.pane = function() {
if (cohe.firstrun) {
coheCheckFirstRun();
}
-
- if (cohe.firstrun || document.getElementById("hdrReplyAllButton") == null) {
- org.mozdev.customizeHeaderToolbar.pane.CHTSetDefaultButtons();
- cohe.firstrun = false;
- }
-
+
coheToggleHeaderContent();
setButtonStyle();
org.mozdev.customizeHeaderToolbar.messenger.saveToolboxData();
@@ -902,32 +901,38 @@ org.mozdev.compactHeader.pane = function() {
// debugLog("first run 0");
if(versionChecker.compare(appInfo.version, "3.2a1pre") < 0) {
// debugLog("firstrun 1");
- cohe.version = -1;
- cohe.firstrun = false;
- cohe.gExtensionManager = Components.classes["@mozilla.org/extensions/manager;1"].getService(Components.interfaces.nsIExtensionManager);
- // check if this is part of CompactHeader
- if ((cohe.gExtensionManager.getItemForID(COHE_EXTENSION_UUID) == null) || (isAddonDisabled(COHE_EXTENSION_UUID))) {
- return;
- }
-
- cohe.current = cohe.gExtensionManager.getItemForID(COHE_EXTENSION_UUID).version;
- try{
- cohe.version = cohePrefBranch.getCharPref("version");
- cohe.firstrun = cohePrefBranch.getBoolPref("firstrun");
- } catch(e) {
- } finally {
- //check for first run
- if (cohe.firstrun){
- cohePrefBranch.setBoolPref("firstrun",false);
- cohePrefBranch.setCharPref("version",cohe.current);
+ cohe.version = -1;
+ cohe.firstrun = false;
+ cohe.gExtensionManager = Components.classes["@mozilla.org/extensions/manager;1"].getService(Components.interfaces.nsIExtensionManager);
+ // check if this is part of CompactHeader
+ if ((cohe.gExtensionManager.getItemForID(COHE_EXTENSION_UUID) == null) || (isAddonDisabled(COHE_EXTENSION_UUID))) {
+ return;
}
- //check for upgrade
- if (cohe.version!=cohe.current && !cohe.firstrun){
- cohePrefBranch.setCharPref("version",cohe.current);
- // XXX
+
+ var debugLevel = gCurrentLogLevel;
+ cohe.current = cohe.gExtensionManager.getItemForID(COHE_EXTENSION_UUID).version;
+ try{
+ cohe.version = cohePrefBranch.getCharPref("version");
+ cohe.firstrun = cohePrefBranch.getBoolPref("firstrun");
+ debugLevel = cohePrefBranch.getIntPref("debugLevel");
+ } catch(e) {
+ } finally {
+ //check for first run
+ if (cohe.firstrun){
+ cohePrefBranch.setBoolPref("firstrun",false);
+ cohePrefBranch.setCharPref("version",cohe.current);
+ org.mozdev.customizeHeaderToolbar.pane.CHTSetDefaultButtons();
+ }
+ //check for upgrade
+ if (cohe.version!=cohe.current && !cohe.firstrun){
+ cohePrefBranch.setCharPref("version",cohe.current);
+ // XXX
+ }
+ cohe.firstrun = false;
+ gCurrentLogLevel = debugLevel;
+ cohePrefBranch.setIntPref("debugLevel", gCurrentLogLevel);
}
}
- }
else {
//debugLog("firstrun 3");
Components.utils.import("resource://gre/modules/AddonManager.jsm");
@@ -944,6 +949,8 @@ org.mozdev.compactHeader.pane = function() {
} finally {
//check for first run
if (cohe.firstrun){
+// debugLog("first run 2c");
+ org.mozdev.customizeHeaderToolbar.pane.CHTSetDefaultButtons();
cohePrefBranch.setBoolPref("firstrun",false);
cohePrefBranch.setCharPref("version",cohe.current);
}
@@ -952,6 +959,8 @@ org.mozdev.compactHeader.pane = function() {
cohePrefBranch.setCharPref("version",cohe.current);
// XXX
}
+ cohe.firstrun = false;
+ debugLog("first run 2d");
}
}
);
@@ -960,8 +969,15 @@ org.mozdev.compactHeader.pane = function() {
}
-// var aConsoleService = Components.classes["@mozilla.org/consoleservice;1"]
-// .getService(Components.interfaces.nsIConsoleService);
+ var aConsoleService = Components.classes["@mozilla.org/consoleservice;1"]
+ .getService(Components.interfaces.nsIConsoleService);
+
+ function debugLog(str, logLevel) {
+ if (!logLevel) var logLevel = LOGLEVEL.debug;
+ if (logLevel >= gCurrentLogLevel) {
+ aConsoleService.logStringMessage(Date() + " CH: " + str);
+ }
+ }
pub.coheInitializeOverlay = function() {
// var gExtensionManager = Components.classes["@mozilla.org/extensions/manager;1"].getService(Components.interfaces.nsIExtensionManager);
@@ -969,6 +985,8 @@ org.mozdev.compactHeader.pane = function() {
// if ((gExtensionManager.getItemForID(COHE_EXTENSION_UUID) == null) || isAddonDisabled(COHE_EXTENSION_UUID)) {
// return;
//}
+
+ debugLog("before register");
coheUninstallObserver.register();
}
@@ -979,6 +997,7 @@ org.mozdev.compactHeader.pane = function() {
subject.QueryInterface(Components.interfaces.nsIUpdateItem);
if (subject.id == COHE_EXTENSION_UUID) {
+ debugLog("uninstalling COHE 1");
if (data == "item-uninstalled") {
this._uninstall = true;
} else if (data == "item-cancel-action") {
@@ -986,6 +1005,7 @@ org.mozdev.compactHeader.pane = function() {
}
}
} else if (topic == "quit-application-granted") {
+ debugLog("uninstalling COHE 2");
if (this._uninstall) {
cohePrefBranch.deleteBranch("");
org.mozdev.customizeHeaderToolbar.pane.CHTCleanupButtons();
@@ -993,21 +1013,58 @@ org.mozdev.compactHeader.pane = function() {
this.unregister();
}
},
+ onUninstalling: function(addon) {
+ if (addon.id == COHE_EXTENSION_UUID) {
+ this._uninstall = true;
+ }
+ },
+
+ onOperationCancelled: function(addon) {
+ if (addon.id == COHE_EXTENSION_UUID) {
+ this._uninstall = (addon.pendingOperations & AddonManager.PENDING_UNINSTALL) != 0;
+ }
+ },
+
register : function() {
- var observerService =
- Components.classes["@mozilla.org/observer-service;1"].
- getService(Components.interfaces.nsIObserverService);
+ debugLog("register uninstall start");
+ var observerService =
+ Components.classes["@mozilla.org/observer-service;1"].
+ getService(Components.interfaces.nsIObserverService);
+ debugLog("register uninstall start 1");
- observerService.addObserver(this, "em-action-requested", false);
- observerService.addObserver(this, "quit-application-granted", false);
+ var appInfo = Components.classes["@mozilla.org/xre/app-info;1"]
+ .getService(Components.interfaces.nsIXULAppInfo);
+ var versionChecker = Components.classes["@mozilla.org/xpcom/version-comparator;1"]
+ .getService(Components.interfaces.nsIVersionComparator);
+ debugLog("register uninstall start 2");
+
+ if(versionChecker.compare(appInfo.version, "3.2a1pre") < 0) {
+ observerService.addObserver(this, "em-action-requested", false);
+ observerService.addObserver(this, "quit-application-granted", false);
+ }
+ else {
+ debugLog("register uninstall neu 2");
+ observerService.addObserver(this, "quit-application-granted", false);
+ Components.utils.import("resource://gre/modules/AddonManager.jsm");
+ AddonManager.addAddonListener(this);
+ debugLog("register uninstall neu 2");
+ }
},
unregister : function() {
var observerService =
Components.classes["@mozilla.org/observer-service;1"].
getService(Components.interfaces.nsIObserverService);
- observerService.removeObserver(this,"em-action-requested");
- observerService.removeObserver(this,"quit-application-granted");
+ var versionChecker = Components.classes["@mozilla.org/xpcom/version-comparator;1"]
+ .getService(Components.interfaces.nsIVersionComparator);
+ if(versionChecker.compare(appInfo.version, "3.2a1pre") < 0) {
+ observerService.removeObserver(this,"em-action-requested");
+ observerService.removeObserver(this,"quit-application-granted");
+ }
+ else {
+ observerService.removeObserver(this, "quit-application-granted");
+ AddonManager.removeAddonListener(this);
+ }
}
}
diff --git a/chrome/CompactHeader/content/compactHeaderOverlay.xul b/chrome/CompactHeader/content/compactHeaderOverlay.xul
index 39b74c9..0547afc 100644
--- a/chrome/CompactHeader/content/compactHeaderOverlay.xul
+++ b/chrome/CompactHeader/content/compactHeaderOverlay.xul
@@ -21,7 +21,7 @@
<overlay id="compactHeaderOverlay"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
- <script type="application/javascript" src="chrome://CompactHeader-d/content/compactHeaderOverlay.js"/>
+ <script type="application/javascript" src="chrome://CompactHeader/content/compactHeaderOverlay.js"/>
<keyset>
<key id="hideDetailsKey"
diff --git a/install.rdf b/install.rdf
index 6efa6e2..1d15f95 100644
--- a/install.rdf
+++ b/install.rdf
@@ -6,7 +6,7 @@
<RDF:Description about="urn:mozilla:install-manifest">
<em:name>CompactHeader</em:name>
- <em:version>1.2.5</em:version>
+ <em:version>1.2.5beta1</em:version>
<em:description>Add ability to reduce header size to one or two lines. Linkify subjects in RSS feeds.</em:description>
<em:creator>Joachim Herb</em:creator>
<em:contributor>Zamula</em:contributor>
--
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