* add QueryInterfaces() helper

* add roadmap details in TODO
This commit is contained in:
foudfou 2011-09-26 10:02:51 +02:00
parent 1fff179304
commit 9f324d18ff
3 changed files with 35 additions and 2 deletions

26
TODO
View File

@ -1,4 +1,4 @@
* check why unreadMsgCount not well updated with seamonkey
=TODO=
* make multi-platform. At least have js-ctypes library call dependant on OS detection. (best would be to have the OS-dependant modules loaded at startup)
@ -10,3 +10,27 @@ http://erikvold.com/blog/index.cfm/2010/10/28/restartless-firefox-addons-part-1-
WONTFIX:
* ability to hide windows individually/globally
=ROADMAP=
* Mozilla products have entered a
[rapid release cycle](http://blog.mozilla.com/blog/2011/04/13/new-channels-for-firefox-rapid-releases/
"Mozilla Blog") which implies frequent rebuilds of XPCOM binary-based addons (such as Firetray)
* authors are encouraged to [port their XPCOM binary-based addons to js-ctypes](https://groups.google.com/group/mozilla.dev.extensions/browse_thread/thread/2d6942c44f303b62/b98debfbccef11ed)
* Francesco doesn't have enough time to maintain the Firetray project in this situation
* Foudil has come up with a prototype js-ctypes version of the project, which is functional, but does not yet cover all features currently supported by the binary-based version.
* the js-ctypes version will endeavor to support uncovered features in the
future (see below)
* the Firetray project plans to replace the binary-based version with the js-types version when enough features are covered
* meanwhile, Firetray users are invited to switch to the preview release of the js-ctypes version [link to beta channel] and [provide feedback](https://github.com/foudfou/FireTray/issues) as to what important features are missing
==NEXT FEATURES==
* mouse scrolls on tray icon hides/shows
* hide to tray on minimize
* ability to start minimized to tray
* when restoring if the window is iconified, deiconify it
* custom tray icon
* keyboard shortcut hide/show
[Vote](https://docs.google.com/spreadsheet/viewform?hl=fr&formkey=dFJqUC1pLTQzNkJYQldFdzdSV1BaSkE6MQ#gid=0)

View File

@ -154,7 +154,8 @@ firetray.Messaging.Accounts.prototype.__iterator__ = function() {
LOG("sortByTypeAndName="+this.sortByTypeAndName);
// NOTE: sort() not provided by nsIMsgAccountManager.accounts
// (nsISupportsArray?). Should be OK to re-build a JS-Array for few accounts
// (nsISupportsArray, nsICollection). Should be OK to re-build a JS-Array for
// few accounts
let accountServers = [];
for (let i = 0; i < accounts.Count(); i++) {
let account = accounts.QueryElementAt(i, Ci.nsIMsgAccount);

View File

@ -50,6 +50,14 @@ firetray.Utils = {
LOG(str);
},
QueryInterfaces: function(obj) {
for each (i in Components.interfaces) {
try {
if (obj instanceof i) { LOG(i); }
} catch (x) {}
}
},
// adapted from http://forums.mozillazine.org/viewtopic.php?p=921150#921150
chromeToPath: function(aPath) {
if (!aPath || !(/^chrome:/.test(aPath)))