mirror of
https://github.com/moparisthebest/FireTray
synced 2024-12-21 21:48:47 -05:00
* AppIndicator: disable chat icon (TB).
* AppIndicator: disable new message count option (TB).
This commit is contained in:
parent
9deaea08bb
commit
58130c5a7d
@ -38,7 +38,8 @@ var firetrayUIOptions = {
|
||||
}
|
||||
|
||||
if (firetray.Handler.isChatProvided() &&
|
||||
FIRETRAY_CHAT_SUPPORTED_OS.indexOf(firetray.Handler.runtimeOS) > -1) {
|
||||
firetray.Handler.support['chat'] &&
|
||||
!firetray.AppIndicator) {
|
||||
Cu.import("resource://firetray/"+firetray.Handler.runtimeOS+"/FiretrayChat.jsm");
|
||||
this.initChatControls();
|
||||
} else {
|
||||
@ -48,13 +49,22 @@ var firetrayUIOptions = {
|
||||
this.updateWindowAndIconOptions();
|
||||
this.updateScrollOptions();
|
||||
this.initAppIconType();
|
||||
if (firetray.Handler.support['full_feat']) {
|
||||
if (firetray.Handler.support['winnt']) {
|
||||
this.hideUnsupportedOptions([
|
||||
'ui_hides_last_only', 'ui_show_activates', 'ui_remember_desktop',
|
||||
'app_icon_default', 'ui_show_icon_on_hide', 'ui_scroll_hides',
|
||||
'ui_radiogroup_scroll', 'ui_scroll_hides', 'newmail_icon_names'
|
||||
]);
|
||||
} else if (firetray.AppIndicator) {
|
||||
this.hideUnsupportedOptions([
|
||||
'app_icon_default', 'ui_mail_notification_unread_count',
|
||||
'newmail_icon_names'
|
||||
]);
|
||||
} else {
|
||||
this.initAppIconNames();
|
||||
if (firetray.Handler.inMailApp)
|
||||
this.initNewMailIconNames();
|
||||
} else {
|
||||
this.hideUnsupportedOptions();
|
||||
};
|
||||
}
|
||||
|
||||
window.sizeToContent();
|
||||
},
|
||||
@ -66,26 +76,38 @@ var firetrayUIOptions = {
|
||||
}
|
||||
},
|
||||
|
||||
hideUnsupportedOptions: function() { // full_feat
|
||||
// windows prefs
|
||||
['ui_hides_last_only', 'ui_show_activates', 'ui_remember_desktop']
|
||||
.forEach(function(id){
|
||||
document.getElementById(id).hidden = true;
|
||||
});
|
||||
hideUnsupportedOptions: function(uiElts) {
|
||||
uiElts.forEach(function(id){
|
||||
switch(id){
|
||||
// windows prefs
|
||||
case 'ui_hides_last_only':
|
||||
case 'ui_show_activates':
|
||||
case 'ui_remember_desktop':
|
||||
// icon prefs
|
||||
case 'app_icon_default':
|
||||
case 'ui_show_icon_on_hide':
|
||||
case 'ui_scroll_hides':
|
||||
case 'ui_radiogroup_scroll':
|
||||
document.getElementById(id).hidden = true;
|
||||
break;
|
||||
case 'ui_scroll_hides':
|
||||
document.getElementById(id).removeAttribute("oncommand");
|
||||
break;
|
||||
// mail prefs
|
||||
case 'newmail_icon_names':
|
||||
for (let i=1; i<4; ++i) {
|
||||
document.getElementById("radio_mail_notification_newmail_icon_name"+i).
|
||||
setAttribute("observes", void(0));
|
||||
}
|
||||
case 'ui_mail_notification_unread_count':
|
||||
document.getElementById(id).hidden = true;
|
||||
break;
|
||||
default:
|
||||
log.error("Unhandled id: "+id);
|
||||
};
|
||||
});
|
||||
|
||||
// icon prefs
|
||||
['app_icon_default', 'ui_show_icon_on_hide', 'ui_scroll_hides',
|
||||
'ui_radiogroup_scroll'].forEach(function(id){
|
||||
document.getElementById(id).hidden = true;
|
||||
});
|
||||
document.getElementById("ui_scroll_hides").removeAttribute("oncommand");
|
||||
|
||||
// mail prefs
|
||||
document.getElementById("newmail_icon_names").hidden = true;
|
||||
for (let i=1; i<4; ++i) {
|
||||
document.getElementById("radio_mail_notification_newmail_icon_name"+i).
|
||||
setAttribute("observes", void(0));
|
||||
}
|
||||
},
|
||||
|
||||
hidePrefPane: function(name){
|
||||
@ -196,7 +218,7 @@ var firetrayUIOptions = {
|
||||
},
|
||||
|
||||
disableIconTypeMaybe: function(appIconType) {
|
||||
if (firetray.Handler.support['full_feat']) {
|
||||
if (firetray.Handler.support['winnt']) {
|
||||
let appIconDefaultGroup = document.getElementById("app_icon_default");
|
||||
this.disableNChildren(appIconDefaultGroup, 2,
|
||||
(appIconType !== FIRETRAY_APPLICATION_ICON_TYPE_THEMED));
|
||||
@ -301,7 +323,7 @@ var firetrayUIOptions = {
|
||||
this.disableChildren(iconTextColor,
|
||||
(notificationSetting !== FIRETRAY_NOTIFICATION_MESSAGE_COUNT));
|
||||
|
||||
if (firetray.Handler.support['full_feat']) {
|
||||
if (firetray.Handler.support['winnt']) {
|
||||
let newMailIconNames = document.getElementById("newmail_icon_names");
|
||||
this.disableNChildren(newMailIconNames, 2,
|
||||
(notificationSetting !== FIRETRAY_NOTIFICATION_NEWMAIL_ICON));
|
||||
@ -323,7 +345,7 @@ var firetrayUIOptions = {
|
||||
let mailNotificationType = +mailNotifyRadio.getItemAtIndex(mailNotifyRadio.selectedIndex).value;
|
||||
if (msgCountTypeIsNewMessages && (mailNotificationType === FIRETRAY_NOTIFICATION_MESSAGE_COUNT)) {
|
||||
mailNotifyRadio.selectedIndex = this.radioGetIndexByValue(mailNotifyRadio, FIRETRAY_NOTIFICATION_NEWMAIL_ICON);
|
||||
if (firetray.Handler.support['full_feat']) {
|
||||
if (firetray.Handler.support['winnt']) {
|
||||
let newMailIconNames = document.getElementById("newmail_icon_names");
|
||||
this.disableNChildren(newMailIconNames, 2, false);
|
||||
}
|
||||
|
@ -62,15 +62,15 @@ firetray.Handler = {
|
||||
}
|
||||
throw new Error("not resolved");
|
||||
})(),
|
||||
support: {chat: false, full_feat: false},
|
||||
support: {chat: false, winnt: false},
|
||||
|
||||
init: function() { // does creates icon
|
||||
firetray.PrefListener.register(false);
|
||||
firetray.MailChatPrefListener.register(false);
|
||||
|
||||
log.info("OS=" + this.runtimeOS + ", ABI=" + this.runtimeABI + ", XULrunner=" + this.xulVer);
|
||||
if (FIRETRAY_SUPPORTED_OS.indexOf(this.runtimeOS) < 0) {
|
||||
let platforms = FIRETRAY_SUPPORTED_OS.join(", ");
|
||||
if (FIRETRAY_OS_SUPPORT.indexOf(this.runtimeOS) < 0) {
|
||||
let platforms = FIRETRAY_OS_SUPPORT.join(", ");
|
||||
log.error("Only "+platforms+" platform(s) supported at this time. Firetray not loaded");
|
||||
return false;
|
||||
} else if (this.runtimeOS == "winnt" &&
|
||||
@ -83,9 +83,8 @@ firetray.Handler = {
|
||||
Cu.import("resource://firetray/"+this.runtimeOS+"/FiretrayWindow.jsm");
|
||||
log.debug("FiretrayWindow "+this.runtimeOS+" imported");
|
||||
|
||||
this.support['chat'] = FIRETRAY_CHAT_SUPPORTED_OS
|
||||
.indexOf(this.runtimeOS) > -1;
|
||||
this.support['full_feat'] = FIRETRAY_FULL_FEAT_SUPPORTED_OS
|
||||
this.support['chat'] = ['linux'].indexOf(this.runtimeOS) > -1;
|
||||
this.support['winnt'] = ['winnt']
|
||||
.indexOf(firetray.Handler.runtimeOS) > -1;
|
||||
|
||||
if (this.appId === FIRETRAY_APP_DB['thunderbird']['id'] ||
|
||||
@ -131,8 +130,7 @@ firetray.Handler = {
|
||||
this.existsChatAccount())
|
||||
firetray.Chat.init();
|
||||
} else {
|
||||
let platforms = FIRETRAY_CHAT_SUPPORTED_OS.join(", ");
|
||||
log.warn("Only "+platforms+" platform(s) supported at this time. Chat not loaded");
|
||||
log.warn("Chat not supported for this platform. Chat not loaded");
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -3,8 +3,7 @@
|
||||
/* for now, logging facilities (imported from logging.jsm) and Services are
|
||||
automatically provided by this module */
|
||||
var EXPORTED_SYMBOLS =
|
||||
[ "firetray", "FIRETRAY_VERSION", "FIRETRAY_SUPPORTED_OS",
|
||||
"FIRETRAY_CHAT_SUPPORTED_OS", "FIRETRAY_FULL_FEAT_SUPPORTED_OS",
|
||||
[ "firetray", "FIRETRAY_VERSION", "FIRETRAY_OS_SUPPORT",
|
||||
"FIRETRAY_ID", "FIRETRAY_PREF_BRANCH", "FIRETRAY_SPLASH_PAGE",
|
||||
"FIRETRAY_APPLICATION_ICON_TYPE_THEMED",
|
||||
"FIRETRAY_APPLICATION_ICON_TYPE_CUSTOM",
|
||||
@ -25,13 +24,11 @@ const Cu = Components.utils;
|
||||
Cu.import("resource://gre/modules/Services.jsm");
|
||||
Cu.import("resource://firetray/logging.jsm");
|
||||
|
||||
const FIRETRAY_VERSION = "0.5.3"; // needed for sync call of onVersionChange() :(
|
||||
const FIRETRAY_SUPPORTED_OS = ['linux', 'winnt']; // install.rdf sync :(
|
||||
const FIRETRAY_CHAT_SUPPORTED_OS = ['linux'];
|
||||
const FIRETRAY_FULL_FEAT_SUPPORTED_OS = FIRETRAY_CHAT_SUPPORTED_OS;
|
||||
const FIRETRAY_ID = "{9533f794-00b4-4354-aa15-c2bbda6989f8}";
|
||||
const FIRETRAY_PREF_BRANCH = "extensions.firetray.";
|
||||
const FIRETRAY_SPLASH_PAGE = "http://foudfou.github.com/FireTray/";
|
||||
const FIRETRAY_VERSION = "0.5.3"; // needed for sync call of onVersionChange() :(
|
||||
const FIRETRAY_OS_SUPPORT = ['linux', 'winnt']; // install.rdf sync :(
|
||||
const FIRETRAY_ID = "{9533f794-00b4-4354-aa15-c2bbda6989f8}";
|
||||
const FIRETRAY_PREF_BRANCH = "extensions.firetray.";
|
||||
const FIRETRAY_SPLASH_PAGE = "http://foudfou.github.com/FireTray/";
|
||||
|
||||
const FIRETRAY_APPLICATION_ICON_TYPE_THEMED = 0;
|
||||
const FIRETRAY_APPLICATION_ICON_TYPE_CUSTOM = 1;
|
||||
|
Loading…
Reference in New Issue
Block a user