summaryrefslogtreecommitdiffstats
path: root/comm/suite
diff options
context:
space:
mode:
Diffstat (limited to 'comm/suite')
-rw-r--r--comm/suite/app/Makefile.in60
-rw-r--r--comm/suite/app/macbuild/Contents/Info.plist.in34
-rw-r--r--comm/suite/app/moz.build28
-rw-r--r--comm/suite/app/splash.rc2
-rw-r--r--comm/suite/base/content/unix/platformCommunicatorOverlay.xul40
-rw-r--r--comm/suite/browser/browser-prefs.js8
-rw-r--r--comm/suite/browser/jar.mn2
-rw-r--r--comm/suite/browser/metadata.xul4
-rw-r--r--comm/suite/components/helpviewer/content/helpContextOverlay.xul12
-rw-r--r--comm/suite/components/nsSuiteGlue.js5
-rw-r--r--comm/suite/components/places/content/places.js2
-rw-r--r--comm/suite/components/places/tests/autocomplete/.eslintrc5
-rw-r--r--comm/suite/components/pref/content/pref-applicationManager.js12
-rw-r--r--comm/suite/components/pref/content/pref-applications.js123
-rw-r--r--comm/suite/components/pref/content/pref-cache.js9
-rw-r--r--comm/suite/components/pref/content/pref-cookies.js8
-rw-r--r--comm/suite/components/pref/content/pref-images.xul2
-rw-r--r--comm/suite/components/pref/content/pref-navigator.js17
-rw-r--r--comm/suite/components/pref/content/preferences.js9
-rw-r--r--comm/suite/components/shell/nsGNOMEShellService.cpp415
-rw-r--r--comm/suite/components/shell/nsGNOMEShellService.h7
-rw-r--r--comm/suite/config/mozconfigs/mozconfig.linux.common3
-rw-r--r--comm/suite/config/mozconfigs/mozconfig.macosx.common3
-rw-r--r--comm/suite/config/mozconfigs/mozconfig.win.common3
-rw-r--r--comm/suite/extensions/Makefile.in37
-rw-r--r--comm/suite/extensions/debugQA/Makefile.in8
-rw-r--r--comm/suite/extensions/debugQA/content/EditorInitPage.html22
-rw-r--r--comm/suite/extensions/debugQA/install.rdf.in (renamed from comm/suite/extensions/debugQA/install.rdf)0
-rw-r--r--comm/suite/extensions/debugQA/jar.mn2
-rw-r--r--comm/suite/extensions/debugQA/locales/jar.mn2
-rw-r--r--comm/suite/extensions/debugQA/locales/moz.build4
-rw-r--r--comm/suite/extensions/debugQA/moz.build14
-rw-r--r--comm/suite/installer/package-manifest.in6
-rw-r--r--comm/suite/installer/removed-files.in2
-rw-r--r--comm/suite/installer/windows/nsis/shared.nsh6
-rw-r--r--comm/suite/locales/Makefile.in3
-rw-r--r--comm/suite/locales/en-US/chrome/common/downloads/downloadmanager.dtd1
-rw-r--r--comm/suite/locales/en-US/chrome/common/help/developer_tools.xhtml12
-rw-r--r--comm/suite/locales/en-US/chrome/common/help/help-win.rdf6
-rw-r--r--comm/suite/locales/en-US/chrome/common/help/helpFileLayout.css22
-rw-r--r--comm/suite/locales/en-US/chrome/common/help/suite-toc.rdf12
-rw-r--r--comm/suite/locales/en-US/chrome/common/pref/mac/platformPrefOverlay.dtd4
-rw-r--r--comm/suite/locales/en-US/chrome/common/pref/pref-cookies.dtd1
-rw-r--r--comm/suite/locales/en-US/chrome/common/pref/pref-images.dtd2
-rw-r--r--comm/suite/locales/en-US/chrome/common/pref/pref-popups.dtd1
-rw-r--r--comm/suite/locales/en-US/chrome/common/pref/unix/platformPrefOverlay.dtd4
-rw-r--r--comm/suite/locales/en-US/chrome/common/pref/win/platformPrefOverlay.dtd4
-rw-r--r--comm/suite/locales/en-US/chrome/common/safeBrowsing.dtd1
-rw-r--r--comm/suite/locales/en-US/chrome/common/utilityOverlay.dtd62
-rw-r--r--comm/suite/locales/en-US/chrome/mailnews/addressbook/abMainWindow.dtd66
-rw-r--r--comm/suite/locales/en-US/chrome/mailnews/addressbook/abSelectAddressesDialog.dtd39
-rw-r--r--comm/suite/locales/en-US/chrome/mailnews/compose/addressingWidgetOverlay.dtd13
-rw-r--r--comm/suite/locales/en-US/chrome/mailnews/compose/messengercompose.dtd12
-rw-r--r--comm/suite/locales/en-US/chrome/mailnews/downloadheaders.dtd6
-rw-r--r--comm/suite/locales/en-US/chrome/mailnews/fieldMapImport.dtd2
-rw-r--r--comm/suite/locales/en-US/chrome/mailnews/folderpane.dtd8
-rw-r--r--comm/suite/locales/en-US/chrome/mailnews/importMsgs.properties6
-rw-r--r--comm/suite/locales/en-US/chrome/mailnews/mailOverlay.dtd4
-rw-r--r--comm/suite/locales/en-US/chrome/mailnews/mailTasksOverlay.dtd12
-rw-r--r--comm/suite/locales/en-US/chrome/mailnews/mailViewList.dtd1
-rw-r--r--comm/suite/locales/en-US/chrome/mailnews/mailViewSetup.dtd1
-rw-r--r--comm/suite/locales/en-US/chrome/mailnews/messenger.dtd14
-rw-r--r--comm/suite/locales/en-US/chrome/mailnews/msgAccountCentral.dtd23
-rw-r--r--comm/suite/locales/en-US/chrome/mailnews/msgFolderPickerOverlay.dtd4
-rw-r--r--comm/suite/locales/en-US/chrome/mailnews/msgSynchronize.dtd2
-rw-r--r--comm/suite/locales/en-US/chrome/mailnews/outlookImportMsgs.properties7
-rw-r--r--comm/suite/locales/en-US/chrome/mailnews/pgpmime.properties2
-rw-r--r--comm/suite/locales/en-US/chrome/mailnews/pref/am-server-advanced.dtd2
-rw-r--r--comm/suite/locales/en-US/chrome/mailnews/pref/am-server-top.dtd4
-rw-r--r--comm/suite/locales/en-US/chrome/mailnews/pref/pref-directory-add.dtd6
-rw-r--r--comm/suite/locales/en-US/chrome/mailnews/smime.properties4
-rw-r--r--comm/suite/locales/en-US/chrome/mailnews/textImportMsgs.properties5
-rw-r--r--comm/suite/locales/generic/profile/mimeTypes.rdf2
-rw-r--r--comm/suite/mailnews/components/addrbook/content/abCardViewOverlay.js264
-rw-r--r--comm/suite/mailnews/components/addrbook/content/abSelectAddressesDialog.js2
-rw-r--r--comm/suite/mailnews/components/addrbook/content/addressbook-panel.xul10
-rw-r--r--comm/suite/mailnews/components/addrbook/content/addressbook.js63
-rw-r--r--comm/suite/mailnews/components/compose/content/addressingWidgetOverlay.js11
-rw-r--r--comm/suite/mailnews/components/compose/content/addressingWidgetOverlay.xul65
-rw-r--r--comm/suite/mailnews/components/compose/content/mailComposeExtrasOverlay.xul12
-rw-r--r--comm/suite/mailnews/components/compose/content/messengercompose.xul61
-rw-r--r--comm/suite/mailnews/components/compose/content/prefs/pref-composing_messages.xul2
-rw-r--r--comm/suite/mailnews/components/compose/jar.mn2
-rw-r--r--comm/suite/mailnews/content/FilterListDialog.js6
-rw-r--r--comm/suite/mailnews/content/mac/platformMailnewsOverlay.xul4
-rw-r--r--comm/suite/mailnews/content/mail3PaneWindowCommands.js727
-rw-r--r--comm/suite/mailnews/content/messageWindow.js324
-rw-r--r--comm/suite/mailnews/content/messageWindow.xul2
-rw-r--r--comm/suite/mailnews/content/msgMail3PaneWindow.js6
-rw-r--r--comm/suite/mailnews/jar.mn2
90 files changed, 1398 insertions, 1461 deletions
diff --git a/comm/suite/app/Makefile.in b/comm/suite/app/Makefile.in
index 72e1fc0..58b60cb 100644
--- a/comm/suite/app/Makefile.in
+++ b/comm/suite/app/Makefile.in
@@ -2,13 +2,11 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+dist_dest = $(DIST)/$(MOZ_MACBUNDLE_NAME)
+
AB_CD = $(MOZ_UI_LOCALE)
-# For splash.rc
-DEFINES += \
- -DSEAMONKEY_ICO='"$(topsrcdir)/$(MOZ_BRANDING_DIRECTORY)/icons/windows/main-window.ico"' \
- -DHTML_FILE_ICO='"$(topsrcdir)/$(MOZ_BRANDING_DIRECTORY)/icons/windows/html-file.ico"' \
- $(NULL)
+LICENSE_TXT_FILE = $(topsrcdir)/comm/suite/installer/license.txt
# Build a binary bootstrapping with XRE_main
@@ -29,9 +27,7 @@ include $(topsrcdir)/config/config.mk
# If we are trying to show an error dialog about the lack of SSE2 support,
# make sure that code itself doesn't use SSE2.
ifdef MOZ_LINUX_32_SSE2_STARTUP_ERROR
-CXXFLAGS := $(filter-out -march=% -msse -msse2 -mfpmath=sse,$(CXXFLAGS))
CXX := $(filter-out -march=% -msse -msse2 -mfpmath=sse,$(CXX))
-CXXFLAGS += -mno-sse -mno-sse2 -mfpmath=387
CXX += -march=pentiumpro
endif
@@ -45,23 +41,22 @@ endif
include $(topsrcdir)/config/rules.mk
-libs::
+libs:: $(LICENSE_TXT_FILE)
ifeq ($(OS_ARCH),WINNT)
$(EXIT_ON_ERROR) \
- $(PERL) -pe 's/(?<!\r)\n/\r\n/g;' < $(topsrcdir)/comm/suite/installer/license.txt > $(DIST)/bin/license.txt
+ $(PERL) -pe 's/(?<!\r)\n/\r\n/g;' < $^ > $(DIST)/bin/license.txt
else
- $(INSTALL) $(IFLAGS1) $(topsrcdir)/comm/suite/installer/license.txt $(DIST)/bin/
+ $(INSTALL) $(IFLAGS1) $^ $(DIST)/bin/
endif
ifneq ($(OS_ARCH),WINNT)
+ifdef COMPILE_ENVIRONMENT
libs::
cp -p $(MOZ_APP_NAME)$(BIN_SUFFIX) $(DIST)/bin/$(MOZ_APP_NAME)-bin$(BIN_SUFFIX)
-
endif
-libs:: blocklist.xml
- $(INSTALL) $(IFLAGS1) $^ $(DIST)/bin
+endif
ifneq (,$(filter-out WINNT Darwin,$(OS_ARCH)))
$(MOZ_APP_NAME).1: seamonkey.man.in $(GLOBAL_DEPS) $(DEPTH)/config/autoconf.mk
@@ -74,7 +69,7 @@ libs:: $(MOZ_APP_NAME).1
$(INSTALL) $< $(DIST)/man/man1
GARBAGE += $(MOZ_APP_NAME).1
-GARBAGE += $(addprefix $(DIST)/bin/defaults/pref/, browser-prefs.js)
+GARBAGE += $(addprefix $(FINAL_TARGET)/defaults/pref/, browser-prefs.js)
endif
# Make extensions end up as XPIs instead of flat chrome when doing omni.jar.
@@ -87,7 +82,7 @@ endif
ABS_STAGE = $(abspath $(STAGEDIST))
define _PACKAGE_EXTENSIONS
-@echo "Packaging $(dir).xpi..."
+@echo "Packaging $(dir)..."
if test -d "$(ABS_STAGE)/$(dir)"; then \
cd $(ABS_STAGE)/$(dir)/; \
$(ZIP) -r9mX ../$(dir).xpi * -x \*/.mkdir.done; \
@@ -118,8 +113,6 @@ ifdef MOZ_DEBUG
MAC_APP_NAME := $(MAC_APP_NAME)Debug
endif
-LOWER_MAC_APP_NAME = $(shell echo $(MAC_APP_NAME) | tr '[A-Z]' '[a-z]')
-
ifeq (zh-TW,$(AB_CD))
LPROJ_ROOT := $(subst -,_,$(AB_CD))
else
@@ -128,20 +121,21 @@ endif
LPROJ := Contents/Resources/$(LPROJ_ROOT).lproj
clean clobber repackage::
- $(RM) -r '$(DIST)/$(MOZ_MACBUNDLE_NAME)'
-
-tools:: $(PROGRAM)
- mkdir -p '$(DIST)/$(MOZ_MACBUNDLE_NAME)/Contents/MacOS'
- rsync -a --exclude "*.in" $(srcdir)/macbuild/Contents '$(DIST)/$(MOZ_MACBUNDLE_NAME)' --exclude English.lproj
- mkdir -p '$(DIST)/$(MOZ_MACBUNDLE_NAME)/$(LPROJ)'
- rsync -a --exclude "*.in" $(srcdir)/macbuild/Contents/Resources/English.lproj/ '$(DIST)/$(MOZ_MACBUNDLE_NAME)/$(LPROJ)'
- sed -e "s/\@MOZ_APP_NAME\@/$(MOZ_APP_NAME)/" -e "s/\@MAC_APP_NAME\@/$(MAC_APP_NAME)/" -e "s/\@MOZ_APP_DISPLAYNAME\@/$(MOZ_APP_DISPLAYNAME)/" -e "s/\@MOZ_APP_VERSION\@/$(MOZ_APP_VERSION)/" $(srcdir)/macbuild/Contents/Info.plist.in > '$(DIST)/$(MOZ_MACBUNDLE_NAME)/Contents/Info.plist'
- sed -e "s/\@MOZ_APP_NAME\@/$(MOZ_APP_NAME)/" -e "s/\@MAC_APP_NAME\@/$(MAC_APP_NAME)/" -e "s/\@MOZ_APP_DISPLAYNAME\@/$(MOZ_APP_DISPLAYNAME)/" -e "s/\@MOZ_APP_VERSION\@/$(MOZ_APP_VERSION)/" $(srcdir)/macbuild/Contents/Resources/English.lproj/InfoPlist.strings.in | iconv -f UTF-8 -t UTF-16 > '$(DIST)/$(MOZ_MACBUNDLE_NAME)/$(LPROJ)/InfoPlist.strings'
- rsync -a --exclude-from='$(srcdir)/macbuild/Contents/MacOS-files.in' $(DIST)/bin/ '$(DIST)/$(MOZ_MACBUNDLE_NAME)/Contents/Resources'
- rsync -a --include-from='$(srcdir)/macbuild/Contents/MacOS-files.in' --exclude '*' $(DIST)/bin/ '$(DIST)/$(MOZ_MACBUNDLE_NAME)/Contents/MacOS'
- rm -f '$(DIST)/$(MOZ_MACBUNDLE_NAME)/Contents/MacOS/$(PROGRAM)'
- rsync -aL $(PROGRAM) '$(DIST)/$(MOZ_MACBUNDLE_NAME)/Contents/MacOS'
- cp -RL $(topsrcdir)/$(MOZ_BRANDING_DIRECTORY)/seamonkey.icns '$(DIST)/$(MOZ_MACBUNDLE_NAME)/Contents/Resources/seamonkey.icns'
- cp -RL $(topsrcdir)/$(MOZ_BRANDING_DIRECTORY)/document.icns '$(DIST)/$(MOZ_MACBUNDLE_NAME)/Contents/Resources/document.icns'
- printf APPLMOZZ > '$(DIST)/$(MOZ_MACBUNDLE_NAME)/Contents/PkgInfo'
+ $(RM) -r '$(dist_dest)'
+
+tools:: $(DIST)/bin/$(MOZ_APP_NAME)
+ rm -rf $(dist_dest)
+ mkdir -p '$(dist_dest)/Contents/MacOS'
+ rsync -a --exclude "*.in" $(srcdir)/macbuild/Contents '$(dist_dest)' --exclude English.lproj
+ mkdir -p '$(dist_dest)/$(LPROJ)'
+ rsync -a --exclude "*.in" $(srcdir)/macbuild/Contents/Resources/English.lproj/ '$(dist_dest)/$(LPROJ)'
+ sed -e 's/\@MOZ_APP_NAME\@/$(MOZ_APP_NAME)/' -e 's/\@MAC_APP_NAME\@/$(MAC_APP_NAME)/' -e 's/\@MOZ_APP_DISPLAYNAME\@/$(MOZ_APP_DISPLAYNAME)/' -e 's/\@MOZ_APP_VERSION\@/$(MOZ_APP_VERSION)/' -e 's/\@MOZ_MACBUNDLE_ID\@/$(MOZ_MACBUNDLE_ID)/' -e 's|\@MOZ_DEVELOPER_REPO_PATH\@|$(topsrcdir)|' -e 's|\@MOZ_DEVELOPER_OBJ_PATH\@|$(topobjdir)|' $(srcdir)/macbuild/Contents/Info.plist.in > '$(dist_dest)/Contents/Info.plist'
+ sed -e "s/\@MAC_APP_NAME\@/$(MAC_APP_NAME)/" $(srcdir)/macbuild/Contents/Resources/English.lproj/InfoPlist.strings.in | iconv -f UTF-8 -t UTF-16 > '$(dist_dest)/$(LPROJ)/InfoPlist.strings'
+ rsync -a --exclude-from='$(srcdir)/macbuild/Contents/MacOS-files.in' $(DIST)/bin/ '$(dist_dest)/Contents/Resources'
+ rsync -a --include-from='$(srcdir)/macbuild/Contents/MacOS-files.in' --exclude '*' $(DIST)/bin/ '$(dist_dest)/Contents/MacOS'
+ rm -f '$(dist_dest)/Contents/MacOS/$(MOZ_APP_NAME)'
+ rsync -aL $(DIST)/bin/$(MOZ_APP_NAME) '$(dist_dest)/Contents/MacOS'
+ cp -RL $(topsrcdir)/$(MOZ_BRANDING_DIRECTORY)/seamonkey.icns '$(dist_dest)/Contents/Resources/seamonkey.icns'
+ cp -RL $(topsrcdir)/$(MOZ_BRANDING_DIRECTORY)/document.icns '$(dist_dest)/Contents/Resources/document.icns'
+ printf APPLMOZZ > '$(dist_dest)/Contents/PkgInfo'
endif
diff --git a/comm/suite/app/macbuild/Contents/Info.plist.in b/comm/suite/app/macbuild/Contents/Info.plist.in
index 5b7f43b..b63daf7 100644
--- a/comm/suite/app/macbuild/Contents/Info.plist.in
+++ b/comm/suite/app/macbuild/Contents/Info.plist.in
@@ -7,7 +7,7 @@
<key>CFBundleExecutable</key>
<string>@MOZ_APP_NAME@</string>
<key>CFBundleIdentifier</key>
- <string>org.mozilla.@MAC_APP_NAME@</string>
+ <string>@MOZ_MACBUNDLE_ID@</string>
<key>CFBundleVersion</key>
<string>@MOZ_APP_VERSION@</string>
<key>CFBundleDevelopmentRegion</key>
@@ -28,6 +28,11 @@
<true/>
<key>LSApplicationCategoryType</key>
<string>public.app-category.productivity</string>
+ <key>LSEnvironment</key>
+ <dict>
+ <key>MallocNanoZone</key>
+ <string>0</string>
+ </dict>
<key>LSMinimumSystemVersion</key>
<string>10.9.0</string>
<key>CFBundleDocumentTypes</key>
@@ -70,11 +75,32 @@
<string>htm</string>
<string>shtml</string>
<string>xml</string>
+ <string>xht</string>
<string>xhtml</string>
</array>
<key>CFBundleTypeIconFile</key>
<string>document.icns</string>
</dict>
+ <dict>
+ <key>CFBundleTypeName</key>
+ <string>JSON File</string>
+ <key>CFBundleTypeRole</key>
+ <string>Viewer</string>
+ <key>CFBundleTypeOSTypes</key>
+ <array>
+ <string>TEXT</string>
+ </array>
+ <key>CFBundleTypeExtensions</key>
+ <array>
+ <string>json</string>
+ </array>
+ <key>CFBundleTypeIconFile</key>
+ <string>document.icns</string>
+ <key>CFBundleTypeMIMETypes</key>
+ <array>
+ <string>application/json</string>
+ </array>
+ </dict>
<dict>
<key>CFBundleTypeName</key>
<string>@MOZ_APP_DISPLAYNAME@ E-mail</string>
@@ -233,9 +259,11 @@
</array>
<key>NSSupportsAutomaticGraphicsSwitching</key>
<true/>
- <key>NSDisablePersistence</key>
- <true/>
<key>NSPrincipalClass</key>
<string>GeckoNSApplication</string>
+ <key>MozillaDeveloperRepoPath</key>
+ <string>@MOZ_DEVELOPER_REPO_PATH@</string>
+ <key>MozillaDeveloperObjPath</key>
+ <string>@MOZ_DEVELOPER_OBJ_PATH@</string>
</dict>
</plist>
diff --git a/comm/suite/app/moz.build b/comm/suite/app/moz.build
index 64933fa..b8fd0e0 100644
--- a/comm/suite/app/moz.build
+++ b/comm/suite/app/moz.build
@@ -8,8 +8,9 @@ DIRS += [
]
GeckoProgram(CONFIG['MOZ_APP_NAME'])
-USE_LIBS += ['mozglue']
+
SOURCES += ['nsSuiteApp.cpp']
+
LOCAL_INCLUDES += [
'!/build',
'/ipc/contentproc/',
@@ -49,6 +50,11 @@ if CONFIG['MOZ_SANDBOX'] and CONFIG['OS_ARCH'] == 'WINNT':
'user32.dll',
]
+ if CONFIG['CC_TYPE'] == "msvc":
+ CFLAGS += ['-guard:cf']
+ CXXFLAGS += ['-guard:cf']
+ LDFLAGS += ['-guard:cf']
+
# Control the default heap size.
# This is the heap returned by GetProcessHeap().
# As we use the CRT heap, the default size is too large and wastes VM.
@@ -60,15 +66,31 @@ if CONFIG['MOZ_SANDBOX'] and CONFIG['OS_ARCH'] == 'WINNT':
if CONFIG['OS_ARCH'] == 'WINNT' and CONFIG['CC_TYPE'] not in ('clang', 'gcc'):
LDFLAGS += ['/HEAP:0x40000']
+DisableStlWrapping()
+
if CONFIG['MOZ_LINKER']:
OS_LIBS += CONFIG['MOZ_ZLIB_LIBS']
+if CONFIG['HAVE_CLOCK_MONOTONIC']:
+ OS_LIBS += CONFIG['REALTIME_LIBS']
+
if CONFIG['MOZ_LINUX_32_SSE2_STARTUP_ERROR']:
DEFINES['MOZ_LINUX_32_SSE2_STARTUP_ERROR'] = True
+ COMPILE_FLAGS['OS_CXXFLAGS'] = [
+ f for f in COMPILE_FLAGS.get('OS_CXXFLAGS', [])
+ if not f.startswith('-march=') and f not in ('-msse', '-msse2', '-mfpmath=sse')
+ ] + [
+ '-mno-sse', '-mno-sse2', '-mfpmath=387',
+ ]
-DEFINES['APP_VERSION'] = CONFIG['MOZ_APP_VERSION']
+# For splash.rc
+DEFINES['SEAMONKEY_ICO'] = '"%s/%s/icons/windows/main-window.ico"' % (
+ TOPSRCDIR, CONFIG['MOZ_BRANDING_DIRECTORY'])
+DEFINES['HTML_FILE_ICO'] = '"%s/%s/icons/windows/html-file.ico"' % (
+ TOPSRCDIR, CONFIG['MOZ_BRANDING_DIRECTORY'])
-DisableStlWrapping()
+DEFINES['APP_VERSION'] = CONFIG['MOZ_APP_VERSION']
+FINAL_TARGET_FILES += ['blocklist.xml']
FINAL_TARGET_FILES.defaults += ['permissions']
diff --git a/comm/suite/app/splash.rc b/comm/suite/app/splash.rc
index 3b2c710..966ccaf 100644
--- a/comm/suite/app/splash.rc
+++ b/comm/suite/app/splash.rc
@@ -9,7 +9,7 @@
STRINGTABLE DISCARDABLE
BEGIN
- IDS_STARTMENU_APPNAME, "@MOZ_APP_DISPLAYNAME@"
+ IDS_STARTMENU_APPNAME, "@MOZ_APP_DISPLAYNAME@"
END
// Program icon.
diff --git a/comm/suite/base/content/unix/platformCommunicatorOverlay.xul b/comm/suite/base/content/unix/platformCommunicatorOverlay.xul
index 316c1c6..b8e5c80 100644
--- a/comm/suite/base/content/unix/platformCommunicatorOverlay.xul
+++ b/comm/suite/base/content/unix/platformCommunicatorOverlay.xul
@@ -17,26 +17,26 @@
<overlay id="platformCommunicatorOverlay"
xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
- <!-- close -->
- <menuitem id="menu_close" label="&closeCmd.label;" key="key_close" accesskey="&closeCmd.accesskey;" command="cmd_close"/>
- <key id="key_close" key="&closeCmd.key;" command="cmd_close" modifiers="accel"/>
- <key id="key_closeWindow" key="&closeCmd.key;" command="cmd_closeWindow" modifiers="accel,shift"/>
-
- <!-- quit -->
- <menupopup id="menu_FilePopup">
- <menuseparator id="menu_FileQuitSeparator"/>
- <menuitem label="&quitApplicationCmd.label;" id="menu_FileQuitItem"
- key="key_quit" accesskey="&quitApplicationCmd.accesskey;" command="cmd_quit"/>
- </menupopup>
- <key id="key_quit" key="&quitApplicationCmd.key;" command="cmd_quit" modifiers="accel"/>
-
- <!-- Edit Menu -->
- <key id="key_redo" key="&redoCmd.key;" command="cmd_redo" modifiers="accel"/>
-
- <!-- Select All Key -->
- <key id="key_selectAll" key="&selectAllCmd.key;" modifiers="alt"/>
-
- <!-- Delete Key -->
+ <!-- close -->
+ <menuitem id="menu_close" label="&closeCmd.label;" key="key_close" accesskey="&closeCmd.accesskey;" command="cmd_close"/>
+ <key id="key_close" key="&closeCmd.key;" command="cmd_close" modifiers="accel"/>
+ <key id="key_closeWindow" key="&closeCmd.key;" command="cmd_closeWindow" modifiers="accel,shift"/>
+
+ <!-- quit -->
+ <menupopup id="menu_FilePopup">
+ <menuseparator id="menu_FileQuitSeparator"/>
+ <menuitem label="&quitApplicationCmd.label;" id="menu_FileQuitItem"
+ key="key_quit" accesskey="&quitApplicationCmd.accesskey;" command="cmd_quit"/>
+ </menupopup>
+ <key id="key_quit" key="&quitApplicationCmd.key;" command="cmd_quit" modifiers="accel"/>
+
+ <!-- Edit Menu -->
+ <key id="key_redo" key="&redoCmd.key;" command="cmd_redo" modifiers="accel"/>
+
+ <!-- Select All Key -->
+ <key id="key_selectAll" key="&selectAllCmd.key;" modifiers="alt"/>
+
+ <!-- Delete Key -->
<key id="key_delete" keycode="VK_DELETE" command="cmd_delete"/>
<keyset id="findKeys">
diff --git a/comm/suite/browser/browser-prefs.js b/comm/suite/browser/browser-prefs.js
index ba695c1..d280fe1 100644
--- a/comm/suite/browser/browser-prefs.js
+++ b/comm/suite/browser/browser-prefs.js
@@ -42,8 +42,8 @@ pref("general.autoScroll", true);
pref("general.useragent.compatMode.firefox", true);
// 0 = blank, 1 = home (browser.startup.homepage), 2 = last visited page, 3 = resume previous browser session
-pref("browser.startup.page", 1);
-pref("browser.startup.homepage", "chrome://navigator-region/locale/region.properties");
+pref("browser.startup.page", 1);
+pref("browser.startup.homepage", "chrome://navigator-region/locale/region.properties");
pref("browser.startup.homepage.count", 1);
pref("browser.warnOnQuit", true);
@@ -427,7 +427,7 @@ pref("browser.safebrowsing.downloads.remote.block_potentially_unwanted", false);
pref("browser.safebrowsing.downloads.remote.block_uncommon", false);
// Overriding defaults defined in all.js (use full version 2.x, bypassing bug 1077874)
-pref("browser.safebrowsing.provider.google.updateURL", "https://safebrowsing.google.com/safebrowsing/downloads?client=SAFEBROWSING_ID&appver=%VERSION%&pver=2.2&key=%GOOGLE_API_KEY%");
+pref("browser.safebrowsing.provider.google.updateURL", "https://safebrowsing.google.com/safebrowsing/downloads?client=SAFEBROWSING_ID&appver=%VERSION%&pver=2.2&key=%GOOGLE_SAFEBROWSING_API_KEY%");
pref("browser.safebrowsing.provider.google.gethashURL", "https://safebrowsing.google.com/safebrowsing/gethash?client=SAFEBROWSING_ID&appver=%VERSION%&pver=2.2");
pref("browser.safebrowsing.provider.mozilla.updateURL", "https://shavar.services.mozilla.com/downloads?client=SAFEBROWSING_ID&appver=%VERSION%&pver=2.2");
pref("browser.safebrowsing.provider.mozilla.gethashURL", "https://shavar.services.mozilla.com/gethash?client=SAFEBROWSING_ID&appver=%VERSION%&pver=2.2");
@@ -823,7 +823,7 @@ pref("security.mixed_content.block_active_content", true);
// Turn on the CSP 1.0 parser for Content Security Policy headers
pref("security.csp.speccompliant", true);
-pref("geo.wifi.uri", "https://www.googleapis.com/geolocation/v1/geolocate?key=%GOOGLE_API_KEY%");
+pref("geo.wifi.uri", "https://www.googleapis.com/geolocation/v1/geolocate?key=%GOOGLE_LOCATION_SERVICE_API_KEY%");
// Some of these prefs are specified even though they may be redundant; they are given
// here for clarity and end-user experiments with platform-provided geolocation.
diff --git a/comm/suite/browser/jar.mn b/comm/suite/browser/jar.mn
index a24d5df..d6266fc 100644
--- a/comm/suite/browser/jar.mn
+++ b/comm/suite/browser/jar.mn
@@ -35,7 +35,7 @@ comm.jar:
content/navigator/platformNavigationBindings.xul (mac/platformNavigationBindings.xul)
content/navigator/platformMailOverlay.xul (mac/platformMailOverlay.xul)
#else
-#ifdef XP_WIN32
+#ifdef XP_WIN
content/navigator/platformNavigationBindings.xul (win/platformNavigationBindings.xul)
content/navigator/platformMailOverlay.xul (win/platformMailOverlay.xul)
#else
diff --git a/comm/suite/browser/metadata.xul b/comm/suite/browser/metadata.xul
index 4a88cca..540d245 100644
--- a/comm/suite/browser/metadata.xul
+++ b/comm/suite/browser/metadata.xul
@@ -98,11 +98,11 @@
<label value="&image-height.label; " control="image-height-text"/>
<textbox readonly="true" id="image-height-text" class="meta-properties"/>
</row>
- <row id="image-filesize">
+ <row id="image-filesize">
<separator orient="vertical"/>
<label value="&image-filesize.label; " control="image-filesize-text"/>
<textbox readonly="true" id="image-filesize-text" value="&image-filesize.value;" class="meta-properties"/>
- </row>
+ </row>
<row id="image-alt">
<separator orient="vertical"/>
<label value="&image-alt.label; " control="image-alt-text"/>
diff --git a/comm/suite/components/helpviewer/content/helpContextOverlay.xul b/comm/suite/components/helpviewer/content/helpContextOverlay.xul
index a84c9b9..de3c606 100644
--- a/comm/suite/components/helpviewer/content/helpContextOverlay.xul
+++ b/comm/suite/components/helpviewer/content/helpContextOverlay.xul
@@ -36,13 +36,13 @@
command="cmd_selectAll"/>
<menuseparator/>
<menuitem id="zoom-in"
- label="&fullZoomEnlargeBtn.label;"
- accesskey="&fullZoomEnlargeBtn.accesskey;"
- oncommand="ZoomManager.enlarge();"/>
+ label="&fullZoomEnlargeBtn.label;"
+ accesskey="&fullZoomEnlargeBtn.accesskey;"
+ oncommand="ZoomManager.enlarge();"/>
<menuitem id="zoom-out"
- label="&fullZoomReduceBtn.label;"
- accesskey="&fullZoomReduceBtn.accesskey;"
- oncommand="ZoomManager.reduce();"/>
+ label="&fullZoomReduceBtn.label;"
+ accesskey="&fullZoomReduceBtn.accesskey;"
+ oncommand="ZoomManager.reduce();"/>
#ifdef XP_WIN
#define HELP_ALWAYS_RAISED_TOGGLE
#endif
diff --git a/comm/suite/components/nsSuiteGlue.js b/comm/suite/components/nsSuiteGlue.js
index ad09f13..11d6389 100644
--- a/comm/suite/components/nsSuiteGlue.js
+++ b/comm/suite/components/nsSuiteGlue.js
@@ -28,6 +28,7 @@ XPCOMUtils.defineLazyModuleGetters(this, {
PrivateBrowsingUtils: "resource://gre/modules/PrivateBrowsingUtils.jsm",
Integration: "resource://gre/modules/Integration.jsm",
PermissionUI: "resource:///modules/PermissionUI.jsm",
+ AppConstants: "resource://gre/modules/AppConstants.jsm",
});
XPCOMUtils.defineLazyGetter(this, "DebuggerServer", () => {
@@ -866,6 +867,10 @@ SuiteGlue.prototype = {
* having updates off and an old build that likely should be updated.
*/
_shouldShowUpdateWarning: function () {
+ // If the Updater is not available we don't show the warning.
+ if (!AppConstants.MOZ_UPDATER) {
+ return false;
+ }
// Look for an unconditional override pref. If set, do what it says.
// (true --> never show, false --> always show)
try {
diff --git a/comm/suite/components/places/content/places.js b/comm/suite/components/places/content/places.js
index bb46320..74336c7 100644
--- a/comm/suite/components/places/content/places.js
+++ b/comm/suite/components/places/content/places.js
@@ -4,7 +4,7 @@
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
/* import-globals-from editBookmarkOverlay.js */
-/* import-globals-from ../../../../toolkit/content/contentAreaUtils.js */
+/* import-globals-from ../../../../../toolkit/content/contentAreaUtils.js */
ChromeUtils.import("resource://gre/modules/AppConstants.jsm");
ChromeUtils.import("resource://gre/modules/XPCOMUtils.jsm");
diff --git a/comm/suite/components/places/tests/autocomplete/.eslintrc b/comm/suite/components/places/tests/autocomplete/.eslintrc
deleted file mode 100644
index 8a895f9..0000000
--- a/comm/suite/components/places/tests/autocomplete/.eslintrc
+++ /dev/null
@@ -1,5 +0,0 @@
-{
- "extends": [
- "../../../../../testing/xpcshell/xpcshell.eslintrc"
- ]
-}
diff --git a/comm/suite/components/pref/content/pref-applicationManager.js b/comm/suite/components/pref/content/pref-applicationManager.js
index 7a0be53..cfb1092 100644
--- a/comm/suite/components/pref/content/pref-applicationManager.js
+++ b/comm/suite/components/pref/content/pref-applicationManager.js
@@ -30,7 +30,7 @@ var gAppManagerDialog = {
var apps = this.handlerInfo.possibleApplicationHandlers.enumerate();
while (apps.hasMoreElements()) {
let app = apps.getNext();
- app.QueryInterface(nsIHandlerApp);
+ app.QueryInterface(Ci.nsIHandlerApp);
var item = list.appendItem(app.name);
item.className = "listitem-iconic";
item.setAttribute("image", gApplicationsPane._getIconURLForHandlerApp(app));
@@ -83,16 +83,16 @@ var gAppManagerDialog = {
document.getElementById("cmd_delete").removeAttribute("disabled");
var app = list.selectedItem.app;
var address = "";
- if (app instanceof nsILocalHandlerApp)
+ if (app instanceof Ci.nsILocalHandlerApp)
address = app.executable.path;
- else if (app instanceof nsIWebHandlerApp)
+ else if (app instanceof Ci.nsIWebHandlerApp)
address = app.uriTemplate;
- else if (app instanceof nsIWebContentHandlerInfo)
+ else if (app instanceof Ci.nsIWebContentHandlerInfo)
address = app.uri;
document.getElementById("appLocation").value = address;
var bundle = document.getElementById("appManagerBundle");
- var appType = app instanceof nsILocalHandlerApp ? "descriptionLocalApp"
- : "descriptionWebApp";
+ var appType = app instanceof Ci.nsILocalHandlerApp ? "descriptionLocalApp"
+ : "descriptionWebApp";
document.getElementById("appType").value = bundle.getString(appType);
}
};
diff --git a/comm/suite/components/pref/content/pref-applications.js b/comm/suite/components/pref/content/pref-applications.js
index 7ea9508..86d5b38 100644
--- a/comm/suite/components/pref/content/pref-applications.js
+++ b/comm/suite/components/pref/content/pref-applications.js
@@ -14,16 +14,6 @@ function Startup()
//****************************************************************************//
// Constants & Enumeration Values
-// constants for interfaces we need multiple times
-const nsIHandlerApp = Ci.nsIHandlerApp;
-const nsIHandlerInfo = Ci.nsIHandlerInfo;
-const nsILocalHandlerApp = Ci.nsILocalHandlerApp;
-const nsIWebHandlerApp = Ci.nsIWebHandlerApp;
-const nsIWebContentHandlerInfo = Ci.nsIWebContentHandlerInfo;
-const nsIFilePicker = Ci.nsIFilePicker;
-const nsIMIMEInfo = Ci.nsIMIMEInfo;
-const nsIPropertyBag = Ci.nsIPropertyBag;
-
// global services
var handlerSvc = Cc["@mozilla.org/uriloader/handler-service;1"]
.getService(Ci.nsIHandlerService);
@@ -116,7 +106,7 @@ function getFileDisplayName(aFile) {
function getLocalHandlerApp(aFile) {
var localHandlerApp = Cc["@mozilla.org/uriloader/local-handler-app;1"]
- .createInstance(nsILocalHandlerApp);
+ .createInstance(Ci.nsILocalHandlerApp);
localHandlerApp.name = getFileDisplayName(aFile);
localHandlerApp.executable = aFile;
@@ -261,11 +251,11 @@ HandlerInfoWrapper.prototype = {
// Note: "save to disk" is an invalid value for protocol info objects,
// but the alwaysAskBeforeHandling getter will detect that situation
// and always return true in that case to override this invalid value.
- if (this.wrappedHandlerInfo.preferredAction == nsIHandlerInfo.useHelperApp &&
+ if (this.wrappedHandlerInfo.preferredAction == Ci.nsIHandlerInfo.useHelperApp &&
!gApplicationsPane.isValidHandlerApp(this.preferredApplicationHandler)) {
return this.wrappedHandlerInfo.hasDefaultHandler ?
- nsIHandlerInfo.useSystemDefault :
- nsIHandlerInfo.saveToDisk;
+ Ci.nsIHandlerInfo.useSystemDefault :
+ Ci.nsIHandlerInfo.saveToDisk;
}
return this.wrappedHandlerInfo.preferredAction;
@@ -296,8 +286,8 @@ HandlerInfoWrapper.prototype = {
// app, but the preferredApplicationHandler is invalid, and there isn't
// a default handler, so the preferredAction getter returns save to disk
// instead.
- if (!(this.wrappedHandlerInfo instanceof nsIMIMEInfo) &&
- this.preferredAction == nsIHandlerInfo.saveToDisk)
+ if (!(this.wrappedHandlerInfo instanceof Ci.nsIMIMEInfo) &&
+ this.preferredAction == Ci.nsIHandlerInfo.saveToDisk)
return true;
return this.wrappedHandlerInfo.alwaysAskBeforeHandling;
@@ -318,7 +308,7 @@ HandlerInfoWrapper.prototype = {
// those properties for an extension?
get primaryExtension() {
try {
- if (this.wrappedHandlerInfo instanceof nsIMIMEInfo &&
+ if (this.wrappedHandlerInfo instanceof Ci.nsIMIMEInfo &&
this.wrappedHandlerInfo.primaryExtension)
return this.wrappedHandlerInfo.primaryExtension;
} catch(ex) {}
@@ -423,7 +413,7 @@ HandlerInfoWrapper.prototype = {
if (this.primaryExtension)
return "moz-icon://goat." + this.primaryExtension + "?size=" + aSize;
- if (this.wrappedHandlerInfo instanceof nsIMIMEInfo)
+ if (this.wrappedHandlerInfo instanceof Ci.nsIMIMEInfo)
return "moz-icon://goat?size=" + aSize + "&contentType=" + this.type;
// We're falling back to a generic icon when we can't get a URL for one
@@ -493,11 +483,11 @@ FeedHandlerInfo.prototype = {
},
set preferredApplicationHandler(aNewValue) {
- if (aNewValue instanceof nsILocalHandlerApp) {
+ if (aNewValue instanceof Ci.nsILocalHandlerApp) {
document.getElementById(this._prefSelectedApp).value = aNewValue.executable;
document.getElementById(this._prefSelectedReader).value = "client";
}
- else if (aNewValue instanceof nsIWebContentHandlerInfo) {
+ else if (aNewValue instanceof Ci.nsIWebContentHandlerInfo) {
document.getElementById(this._prefSelectedWeb).value = aNewValue.uri;
document.getElementById(this._prefSelectedReader).value = "web";
// Make the web handler be the new "auto handler" for feeds.
@@ -597,9 +587,9 @@ FeedHandlerInfo.prototype = {
if (defaultFeedReader) {
let handlerApp = Cc["@mozilla.org/uriloader/local-handler-app;1"]
- .createInstance(nsIHandlerApp);
+ .createInstance(Ci.nsIHandlerApp);
handlerApp.name = getFileDisplayName(defaultFeedReader);
- handlerApp.QueryInterface(nsILocalHandlerApp);
+ handlerApp.QueryInterface(Ci.nsILocalHandlerApp);
handlerApp.executable = defaultFeedReader;
this.__defaultApplicationHandler = handlerApp;
@@ -643,16 +633,16 @@ FeedHandlerInfo.prototype = {
// the default app; otherwise return useHelperApp.
if (gApplicationsPane.isValidHandlerApp(preferredApp)) {
if (defaultApp && defaultApp.equals(preferredApp))
- return nsIHandlerInfo.useSystemDefault;
+ return Ci.nsIHandlerInfo.useSystemDefault;
- return nsIHandlerInfo.useHelperApp;
+ return Ci.nsIHandlerInfo.useHelperApp;
}
// The pref is set to "reader", but we don't have a valid preferred app.
// What do we do now? Not sure this is the best option (perhaps we
// should direct the user to the default app, if any), but for now let's
// direct the user to live bookmarks.
- return nsIHandlerInfo.handleInternally;
+ return Ci.nsIHandlerInfo.handleInternally;
}
// If the action is "ask", then alwaysAskBeforeHandling will override
@@ -661,24 +651,24 @@ FeedHandlerInfo.prototype = {
case "ask":
case "messenger":
default:
- return nsIHandlerInfo.handleInternally;
+ return Ci.nsIHandlerInfo.handleInternally;
}
},
set preferredAction(aNewValue) {
switch (aNewValue) {
- case nsIHandlerInfo.handleInternally:
+ case Ci.nsIHandlerInfo.handleInternally:
document.getElementById(this._prefSelectedReader).value = "messenger";
break;
- case nsIHandlerInfo.useHelperApp:
+ case Ci.nsIHandlerInfo.useHelperApp:
document.getElementById(this._prefSelectedAction).value = "reader";
// The controller has already set preferredApplicationHandler
// to the new helper app.
break;
- case nsIHandlerInfo.useSystemDefault:
+ case Ci.nsIHandlerInfo.useSystemDefault:
document.getElementById(this._prefSelectedAction).value = "reader";
this.preferredApplicationHandler = this._defaultApplicationHandler;
break;
@@ -721,7 +711,7 @@ FeedHandlerInfo.prototype = {
// XXX Should we hold off on making the changes until this method gets called?
store: function() {
for (let app of this._possibleApplicationHandlers._removed) {
- if (app instanceof nsILocalHandlerApp) {
+ if (app instanceof Ci.nsILocalHandlerApp) {
let pref = document.getElementById(PREF_FEED_SELECTED_APP);
var preferredAppFile = pref.value;
if (preferredAppFile) {
@@ -731,7 +721,7 @@ FeedHandlerInfo.prototype = {
}
}
else {
- app.QueryInterface(nsIWebContentHandlerInfo);
+ app.QueryInterface(Ci.nsIWebContentHandlerInfo);
converterSvc.removeContentHandler(app.contentType, app.uri);
}
}
@@ -1036,7 +1026,7 @@ var gApplicationsPane = {
var wrappedHandlerInfos = handlerSvc.enumerate();
while (wrappedHandlerInfos.hasMoreElements()) {
let wrappedHandlerInfo =
- wrappedHandlerInfos.getNext().QueryInterface(nsIHandlerInfo);
+ wrappedHandlerInfos.getNext().QueryInterface(Ci.nsIHandlerInfo);
let type = wrappedHandlerInfo.type;
let handlerInfoWrapper;
@@ -1076,7 +1066,7 @@ var gApplicationsPane = {
// FIXME: should we also check the "suffixes" property of the plugin?
// Filed as bug 395135.
if (hidePluginsWithoutExtensions && handlerInfo.handledOnlyByPlugin &&
- handlerInfo.wrappedHandlerInfo instanceof nsIMIMEInfo &&
+ handlerInfo.wrappedHandlerInfo instanceof Ci.nsIMIMEInfo &&
!handlerInfo.primaryExtension)
continue;
@@ -1180,17 +1170,17 @@ var gApplicationsPane = {
}
switch (aHandlerInfo.preferredAction) {
- case nsIHandlerInfo.saveToDisk:
+ case Ci.nsIHandlerInfo.saveToDisk:
return this._prefsBundle.getString("saveFile");
- case nsIHandlerInfo.useHelperApp:
+ case Ci.nsIHandlerInfo.useHelperApp:
var preferredApp = aHandlerInfo.preferredApplicationHandler;
- var name = (preferredApp instanceof nsILocalHandlerApp) ?
+ var name = (preferredApp instanceof Ci.nsILocalHandlerApp) ?
getFileDisplayName(preferredApp.executable) :
preferredApp.name;
return this._prefsBundle.getFormattedString("useApp", [name]);
- case nsIHandlerInfo.handleInternally:
+ case Ci.nsIHandlerInfo.handleInternally:
// For the feed type, handleInternally means News & Blogs.
if (isFeedType(aHandlerInfo.type))
return this._prefsBundle.getFormattedString("addNewsBlogsInApp",
@@ -1208,7 +1198,7 @@ var gApplicationsPane = {
// then why would a preferredAction ever get set to this value
// in the first place?
- case nsIHandlerInfo.useSystemDefault:
+ case Ci.nsIHandlerInfo.useSystemDefault:
return this._prefsBundle.getFormattedString("useDefault",
[aHandlerInfo.defaultDescription]);
@@ -1232,13 +1222,13 @@ var gApplicationsPane = {
if (!aHandlerApp)
return false;
- if (aHandlerApp instanceof nsILocalHandlerApp)
+ if (aHandlerApp instanceof Ci.nsILocalHandlerApp)
return this._isValidHandlerExecutable(aHandlerApp.executable);
- if (aHandlerApp instanceof nsIWebHandlerApp)
+ if (aHandlerApp instanceof Ci.nsIWebHandlerApp)
return aHandlerApp.uriTemplate;
- if (aHandlerApp instanceof nsIWebContentHandlerInfo)
+ if (aHandlerApp instanceof Ci.nsIWebContentHandlerInfo)
return aHandlerApp.uri;
return false;
@@ -1275,7 +1265,7 @@ var gApplicationsPane = {
{
let askMenuItem = document.createElement("menuitem");
askMenuItem.setAttribute("class", "handler-action");
- askMenuItem.setAttribute("value", nsIHandlerInfo.alwaysAsk);
+ askMenuItem.setAttribute("value", Ci.nsIHandlerInfo.alwaysAsk);
let label;
if (isFeedType(handlerInfo.type))
label = this._prefsBundle.getFormattedString("previewInApp",
@@ -1292,11 +1282,11 @@ var gApplicationsPane = {
// Note: this option isn't available to protocol types, since we don't know
// what it means to save a URL having a certain scheme to disk, nor is it
// available to feeds, since the feed code doesn't implement the capability.
- if ((handlerInfo.wrappedHandlerInfo instanceof nsIMIMEInfo) &&
+ if ((handlerInfo.wrappedHandlerInfo instanceof Ci.nsIMIMEInfo) &&
!isFeedType(handlerInfo.type)) {
let saveMenuItem = document.createElement("menuitem");
saveMenuItem.setAttribute("class", "handler-action");
- saveMenuItem.setAttribute("value", nsIHandlerInfo.saveToDisk);
+ saveMenuItem.setAttribute("value", Ci.nsIHandlerInfo.saveToDisk);
let label = this._prefsBundle.getString("saveFile");
saveMenuItem.setAttribute("label", label);
saveMenuItem.setAttribute("tooltiptext", label);
@@ -1308,7 +1298,7 @@ var gApplicationsPane = {
if (isFeedType(handlerInfo.type)) {
let internalMenuItem = document.createElement("menuitem");
internalMenuItem.setAttribute("class", "handler-action");
- internalMenuItem.setAttribute("value", nsIHandlerInfo.handleInternally);
+ internalMenuItem.setAttribute("value", Ci.nsIHandlerInfo.handleInternally);
let label = this._prefsBundle.getFormattedString("addNewsBlogsInApp",
[this._brandShortName]);
internalMenuItem.setAttribute("label", label);
@@ -1326,7 +1316,7 @@ var gApplicationsPane = {
if (handlerInfo.hasDefaultHandler) {
let defaultMenuItem = document.createElement("menuitem");
defaultMenuItem.setAttribute("class", "handler-action");
- defaultMenuItem.setAttribute("value", nsIHandlerInfo.useSystemDefault);
+ defaultMenuItem.setAttribute("value", Ci.nsIHandlerInfo.useSystemDefault);
let label = this._prefsBundle.getFormattedString("useDefault",
[handlerInfo.defaultDescription]);
defaultMenuItem.setAttribute("label", label);
@@ -1351,9 +1341,9 @@ var gApplicationsPane = {
let menuItem = document.createElement("menuitem");
menuItem.setAttribute("class", "handler-action");
- menuItem.setAttribute("value", nsIHandlerInfo.useHelperApp);
+ menuItem.setAttribute("value", Ci.nsIHandlerInfo.useHelperApp);
let label;
- if (possibleApp instanceof nsILocalHandlerApp)
+ if (possibleApp instanceof Ci.nsILocalHandlerApp)
label = getFileDisplayName(possibleApp.executable);
else
label = possibleApp.name;
@@ -1421,8 +1411,8 @@ var gApplicationsPane = {
// the item identified by the preferred action (when the preferred action
// is to use a helper app, we have to pick the specific helper app item).
if (handlerInfo.alwaysAskBeforeHandling)
- menu.value = nsIHandlerInfo.alwaysAsk;
- else if (handlerInfo.preferredAction == nsIHandlerInfo.useHelperApp &&
+ menu.value = Ci.nsIHandlerInfo.alwaysAsk;
+ else if (handlerInfo.preferredAction == Ci.nsIHandlerInfo.useHelperApp &&
preferredApp)
menu.selectedItem =
possibleAppMenuItems.filter(v => v.handlerApp.equals(preferredApp))[0];
@@ -1521,14 +1511,14 @@ var gApplicationsPane = {
// legacy datastores that don't have the preferred app in the list
// of possible apps still include the preferred app in the list of apps
// the user can choose to handle the type.
- if (action == nsIHandlerInfo.useHelperApp)
+ if (action == Ci.nsIHandlerInfo.useHelperApp)
handlerInfo.preferredApplicationHandler = aActionItem.handlerApp;
// Set the preferred action.
handlerInfo.preferredAction = action;
// Set the "always ask" flag.
- handlerInfo.alwaysAskBeforeHandling = action == nsIHandlerInfo.alwaysAsk;
+ handlerInfo.alwaysAskBeforeHandling = action == Ci.nsIHandlerInfo.alwaysAsk;
handlerInfo.store();
@@ -1627,21 +1617,20 @@ var gApplicationsPane = {
}
onSelectionDone();
} else {
- const nsIFilePicker = Ci.nsIFilePicker;
let fp = Cc["@mozilla.org/filepicker;1"]
- .createInstance(nsIFilePicker);
+ .createInstance(Ci.nsIFilePicker);
let winTitle = this._prefsBundle.getString("fpTitleChooseApp");
- fp.init(window, winTitle, nsIFilePicker.modeOpen);
- fp.appendFilters(nsIFilePicker.filterApps);
+ fp.init(window, winTitle, Ci.nsIFilePicker.modeOpen);
+ fp.appendFilters(Ci.nsIFilePicker.filterApps);
// Prompt the user to pick an app. If they pick one, and it's a valid
// selection, then add it to the list of possible handlers.
fp.open(rv => {
- if (rv == nsIFilePicker.returnOK && fp.file &&
+ if (rv == Ci.nsIFilePicker.returnOK && fp.file &&
this._isValidHandlerExecutable(fp.file)) {
handlerApp = Cc["@mozilla.org/uriloader/local-handler-app;1"]
.createInstance(Ci.nsILocalHandlerApp);
- handlerApp.name = getDisplayNameForFile(fp.file);
+ handlerApp.name = getFileDisplayName(fp.file);
handlerApp.executable = fp.file;
// Add the app to the type's list of possible handlers.
@@ -1665,11 +1654,11 @@ var gApplicationsPane = {
}
switch (aHandlerInfo.preferredAction) {
- case nsIHandlerInfo.saveToDisk:
+ case Ci.nsIHandlerInfo.saveToDisk:
aElement.setAttribute("appHandlerIcon", "save");
return true;
- case nsIHandlerInfo.handleInternally:
+ case Ci.nsIHandlerInfo.handleInternally:
if (isFeedType(aHandlerInfo.type)) {
aElement.setAttribute("appHandlerIcon", "feed");
return true;
@@ -1686,10 +1675,10 @@ var gApplicationsPane = {
_getIconURLForPreferredAction: function(aHandlerInfo) {
switch (aHandlerInfo.preferredAction) {
- case nsIHandlerInfo.useSystemDefault:
+ case Ci.nsIHandlerInfo.useSystemDefault:
return this._getIconURLForSystemDefault(aHandlerInfo);
- case nsIHandlerInfo.useHelperApp:
+ case Ci.nsIHandlerInfo.useHelperApp:
let preferredApp = aHandlerInfo.preferredApplicationHandler;
if (this.isValidHandlerApp(preferredApp))
return this._getIconURLForHandlerApp(preferredApp);
@@ -1701,14 +1690,14 @@ var gApplicationsPane = {
},
_getIconURLForHandlerApp: function(aHandlerApp) {
- if (aHandlerApp instanceof nsILocalHandlerApp)
+ if (aHandlerApp instanceof Ci.nsILocalHandlerApp)
return this._getIconURLForFile(aHandlerApp.executable);
if (Services.prefs.getBoolPref("browser.chrome.favicons")) { // q.v. Bug 514671
- if (aHandlerApp instanceof nsIWebHandlerApp)
+ if (aHandlerApp instanceof Ci.nsIWebHandlerApp)
return this._getIconURLForWebApp(aHandlerApp.uriTemplate);
- if (aHandlerApp instanceof nsIWebContentHandlerInfo)
+ if (aHandlerApp instanceof Ci.nsIWebContentHandlerInfo)
return this._getIconURLForWebApp(aHandlerApp.uri)
}
@@ -1742,8 +1731,8 @@ var gApplicationsPane = {
if ("wrappedHandlerInfo" in aHandlerInfo) {
let wrappedHandlerInfo = aHandlerInfo.wrappedHandlerInfo;
- if (wrappedHandlerInfo instanceof nsIMIMEInfo &&
- wrappedHandlerInfo instanceof nsIPropertyBag) {
+ if (wrappedHandlerInfo instanceof Ci.nsIMIMEInfo &&
+ wrappedHandlerInfo instanceof Ci.nsIPropertyBag) {
try {
let url = wrappedHandlerInfo.getProperty("defaultApplicationIconURL");
if (url)
diff --git a/comm/suite/components/pref/content/pref-cache.js b/comm/suite/components/pref/content/pref-cache.js
index d3126e0..2f04b82 100644
--- a/comm/suite/components/pref/content/pref-cache.js
+++ b/comm/suite/components/pref/content/pref-cache.js
@@ -65,19 +65,18 @@ function ReadCacheFolder(aField)
function CacheSelectFolder()
{
- const nsIFilePicker = Ci.nsIFilePicker;
let fp = Cc["@mozilla.org/filepicker;1"]
- .createInstance(nsIFilePicker);
+ .createInstance(Ci.nsIFilePicker);
let title = document.getElementById("bundle_prefutilities")
.getString("cachefolder");
- fp.init(window, title, nsIFilePicker.modeGetFolder);
+ fp.init(window, title, Ci.nsIFilePicker.modeGetFolder);
fp.displayDirectory =
document.getElementById("browser.cache.disk.parent_directory").value;
- fp.appendFilters(nsIFilePicker.filterAll);
+ fp.appendFilters(Ci.nsIFilePicker.filterAll);
fp.open(rv => {
- if (rv != nsIFilePicker.returnOK || !fp.file) {
+ if (rv != Ci.nsIFilePicker.returnOK || !fp.file) {
return;
}
document.getElementById("browser.cache.disk.parent_directory").value = fp.file;
diff --git a/comm/suite/components/pref/content/pref-cookies.js b/comm/suite/components/pref/content/pref-cookies.js
index c9bbe1c..fd51881 100644
--- a/comm/suite/components/pref/content/pref-cookies.js
+++ b/comm/suite/components/pref/content/pref-cookies.js
@@ -9,10 +9,11 @@ function Startup()
function SetDisables(aSetFocus)
{
+ // Policy 1 was "ask before accepting" and is no longer valid.
+
// const for Cookie Accept Policy
const kCookiesDisabled = 2;
// const for Cookie Lifetime Policy
- const kAskBeforeAccepting = 1;
const kAcceptForNDays = 3;
var behavior = document.getElementById("networkCookieBehavior");
@@ -23,15 +24,10 @@ function SetDisables(aSetFocus)
var days = document.getElementById("lifetimeDays");
var daysPref = document.getElementById(days.getAttribute("preference"));
- var session = document.getElementById("alwaysAcceptSession");
- var sessionPref = document.getElementById(session.getAttribute("preference"));
-
var cookiesDisabled = (behaviorPref.value == kCookiesDisabled);
lifetime.disabled = cookiesDisabled || lifetimePref.locked;
days.disabled = cookiesDisabled || daysPref.locked ||
(lifetimePref.value != kAcceptForNDays);
- session.disabled = cookiesDisabled || sessionPref.locked ||
- (lifetimePref.value != kAskBeforeAccepting);
if (!days.disabled && aSetFocus)
days.focus();
diff --git a/comm/suite/components/pref/content/pref-images.xul b/comm/suite/components/pref/content/pref-images.xul
index 62138bd..92c048d 100644
--- a/comm/suite/components/pref/content/pref-images.xul
+++ b/comm/suite/components/pref/content/pref-images.xul
@@ -15,7 +15,7 @@
label="&pref.images.title;">
<preferences id="images_preferences">
<preference id="permissions.default.image"
- name="permissions.default.image" type="int"/>
+ name="permissions.default.image" type="int"/>
<preference id="pref.advanced.images.disable_button.view_image" type="bool"
name="pref.advanced.images.disable_button.view_image"/>
</preferences>
diff --git a/comm/suite/components/pref/content/pref-navigator.js b/comm/suite/components/pref/content/pref-navigator.js
index 285fe29..f2944c7 100644
--- a/comm/suite/components/pref/content/pref-navigator.js
+++ b/comm/suite/components/pref/content/pref-navigator.js
@@ -202,20 +202,19 @@ function UpdateHomePageList(aSingleURL)
function SelectFile()
{
- const nsIFilePicker = Ci.nsIFilePicker;
let fp = Cc["@mozilla.org/filepicker;1"]
- .createInstance(nsIFilePicker);
+ .createInstance(Ci.nsIFilePicker);
let title = document.getElementById("bundle_prefutilities")
.getString("choosehomepage");
- fp.init(window, title, nsIFilePicker.modeOpen);
- fp.appendFilters(nsIFilePicker.filterAll |
- nsIFilePicker.filterText |
- nsIFilePicker.filterXML |
- nsIFilePicker.filterHTML |
- nsIFilePicker.filterImages);
+ fp.init(window, title, Ci.nsIFilePicker.modeOpen);
+ fp.appendFilters(Ci.nsIFilePicker.filterAll |
+ Ci.nsIFilePicker.filterText |
+ Ci.nsIFilePicker.filterXML |
+ Ci.nsIFilePicker.filterHTML |
+ Ci.nsIFilePicker.filterImages);
fp.open(rv => {
- if (rv == nsIFilePicker.returnOK && fp.fileURL.spec &&
+ if (rv == Ci.nsIFilePicker.returnOK && fp.fileURL.spec &&
fp.fileURL.spec.length > 0) {
UpdateHomePageList(fp.fileURL.spec);
}
diff --git a/comm/suite/components/pref/content/preferences.js b/comm/suite/components/pref/content/preferences.js
index f33999a..6d43f51 100644
--- a/comm/suite/components/pref/content/preferences.js
+++ b/comm/suite/components/pref/content/preferences.js
@@ -59,12 +59,11 @@ function WriteSoundField(aField, aValue)
function SelectSound(aSoundUrlPref)
{
var soundUrlPref = aSoundUrlPref;
- const nsIFilePicker = Ci.nsIFilePicker;
let fp = Cc["@mozilla.org/filepicker;1"]
- .createInstance(nsIFilePicker);
+ .createInstance(Ci.nsIFilePicker);
var prefutilitiesBundle = document.getElementById("bundle_prefutilities");
fp.init(window, prefutilitiesBundle.getString("choosesound"),
- nsIFilePicker.modeOpen);
+ Ci.nsIFilePicker.modeOpen);
let file = GetFileFromString(soundUrlPref.value);
if (file && file.parent && file.parent.exists())
@@ -76,9 +75,9 @@ function SelectSound(aSoundUrlPref)
filterExts += "; *.aif; *.aiff; *.caf";
}
fp.appendFilter(prefutilitiesBundle.getString("SoundFiles"), filterExts);
- fp.appendFilters(nsIFilePicker.filterAll);
+ fp.appendFilters(Ci.nsIFilePicker.filterAll);
fp.open(rv => {
- if (rv == nsIFilePicker.returnOK && fp.fileURL.spec &&
+ if (rv == Ci.nsIFilePicker.returnOK && fp.fileURL.spec &&
fp.fileURL.spec.length > 0) {
soundUrlPref.value = fp.fileURL.spec;
}
diff --git a/comm/suite/components/shell/nsGNOMEShellService.cpp b/comm/suite/components/shell/nsGNOMEShellService.cpp
index d62e66b..9133a01 100644
--- a/comm/suite/components/shell/nsGNOMEShellService.cpp
+++ b/comm/suite/components/shell/nsGNOMEShellService.cpp
@@ -14,7 +14,6 @@
#include "nsIPrefService.h"
#include "prenv.h"
#include "nsString.h"
-#include "nsIGConfService.h"
#include "nsIGIOService.h"
#include "nsIGSettingsService.h"
#include "nsIStringBundle.h"
@@ -27,8 +26,11 @@
#include "imgIRequest.h"
#include "imgIContainer.h"
#include "mozilla/Sprintf.h"
+#if defined(MOZ_WIDGET_GTK)
#include "nsIImageToPixbuf.h"
+#endif
#include "nsXULAppAPI.h"
+#include "gfxPlatform.h"
#include <glib.h>
#include <glib-object.h>
@@ -38,23 +40,10 @@
#include <limits.h>
#include <stdlib.h>
-// GConf registry key constants
-#define DG_BACKGROUND "/desktop/gnome/background"
-
-#define DGB_OPTIONS DG_BACKGROUND "/picture_options"
-#define DGB_IMAGE DG_BACKGROUND "/picture_filename"
-#define DGB_DRAWBG DG_BACKGROUND "/draw_background"
-#define DGB_COLOR DG_BACKGROUND "/primary_color"
-
-#define OGDB_SCHEMA "org.gnome.desktop.background"
-#define OGDB_OPTIONS "picture-options"
-#define OGDB_IMAGE "picture-uri"
-#define OGDB_DRAWBG "draw-background"
-#define OGDB_COLOR "primary-color"
-
struct ProtocolAssociation {
uint16_t app;
const char* protocol;
+ bool essential;
};
struct MimeTypeAssociation {
@@ -64,21 +53,29 @@ struct MimeTypeAssociation {
};
static const ProtocolAssociation gProtocols[] = {
- { nsIShellService::BROWSER, "http" },
- { nsIShellService::BROWSER, "https" },
- { nsIShellService::MAIL, "mailto" },
- { nsIShellService::NEWS, "news" },
- { nsIShellService::NEWS, "snews" },
- { nsIShellService::RSS, "feed" }
+ { nsIShellService::BROWSER, "http", true },
+ { nsIShellService::BROWSER, "https", true },
+ { nsIShellService::BROWSER, "ftp", false },
+ { nsIShellService::BROWSER, "chrome", false },
+ { nsIShellService::MAIL, "mailto", true },
+ { nsIShellService::NEWS, "news", true },
+ { nsIShellService::NEWS, "snews", true },
+ { nsIShellService::RSS, "feed", true }
};
static const MimeTypeAssociation gMimeTypes[] = {
- { nsIShellService::BROWSER, "text/html", "htm html" },
- { nsIShellService::BROWSER, "application/xhtml+xml", "xhtml" },
+ { nsIShellService::BROWSER, "text/html", "htm html shtml" },
+ { nsIShellService::BROWSER, "application/xhtml+xml", "xhtml xht" },
{ nsIShellService::MAIL, "message/rfc822", "eml" },
{ nsIShellService::RSS, "application/rss+xml", "rss" }
};
+#define kDesktopBGSchema "org.gnome.desktop.background"
+#define kDesktopImageGSKey "picture-uri"
+#define kDesktopOptionGSKey "picture-options"
+#define kDesktopDrawBGGSKey "draw-background"
+#define kDesktopColorGSKey "primary-color"
+
NS_IMPL_ISUPPORTS(nsGNOMEShellService, nsIGNOMEShellService, nsIShellService)
nsresult
@@ -106,30 +103,15 @@ nsGNOMEShellService::Init()
{
nsresult rv;
+ if (gfxPlatform::IsHeadless()) {
+ return NS_ERROR_NOT_AVAILABLE;
+ }
+
// Check G_BROKEN_FILENAMES. If it's set, then filenames in glib use
// the locale encoding. If it's not set, they use UTF-8.
mUseLocaleFilenames = PR_GetEnv("G_BROKEN_FILENAMES") != nullptr;
- const char* launcher = PR_GetEnv("MOZ_APP_LAUNCHER");
- if (launcher) {
- if (g_path_is_absolute(launcher)) {
- mAppPath = launcher;
- gchar* basename = g_path_get_basename(launcher);
- gchar* fullpath = g_find_program_in_path(basename);
- mAppIsInPath = fullpath && mAppPath.Equals(fullpath);
- g_free(fullpath);
- g_free(basename);
- return NS_OK;
- }
-
- gchar* fullpath = g_find_program_in_path(launcher);
- if (fullpath) {
- mAppPath = fullpath;
- mAppIsInPath = true;
- g_free(fullpath);
- return NS_OK;
- }
- }
+ if (GetAppPathFromLauncher()) return NS_OK;
nsCOMPtr<nsIFile> appPath;
rv = NS_GetSpecialDirectory(XRE_EXECUTABLE_FILE, getter_AddRefs(appPath));
@@ -138,29 +120,63 @@ nsGNOMEShellService::Init()
return appPath->GetNativePath(mAppPath);
}
+bool nsGNOMEShellService::GetAppPathFromLauncher() {
+ gchar *tmp;
+
+ const char* launcher = PR_GetEnv("MOZ_APP_LAUNCHER");
+ if (!launcher) return false;
+
+ if (g_path_is_absolute(launcher)) {
+ mAppPath = launcher;
+ tmp = g_path_get_basename(launcher);
+ gchar* fullpath = g_find_program_in_path(tmp);
+ if (fullpath && mAppPath.Equals(fullpath)) mAppIsInPath = true;
+ g_free(fullpath);
+ } else {
+ tmp = g_find_program_in_path(launcher);
+ if (!tmp) return false;
+ mAppPath = tmp;
+ mAppIsInPath = true;
+ }
+
+ g_free(tmp);
+ return true;
+}
+
bool
-nsGNOMEShellService::HandlerMatchesAppName(const char* aHandler)
+nsGNOMEShellService::CheckHandlerMatchesAppName(const nsACString &handler) const
{
- bool matches = false;
gint argc;
gchar** argv;
- if (g_shell_parse_argv(aHandler, &argc, &argv, nullptr) && argc > 0) {
- gchar* command = nullptr;
- if (!mUseLocaleFilenames)
- command = g_find_program_in_path(argv[0]);
- else {
- gchar* nativeFile = g_filename_from_utf8(argv[0], -1,
- nullptr, nullptr, nullptr);
- if (nativeFile) {
- command = g_find_program_in_path(nativeFile);
- g_free(nativeFile);
- }
- }
- matches = command && mAppPath.Equals(command);
- g_free(command);
+ nsAutoCString command(handler);
+
+ // The string will be something of the form: [/path/to/]application "%s"
+ // We want to remove all of the parameters and get just the binary name.
+
+ if (g_shell_parse_argv(command.get(), &argc, &argv, nullptr) && argc > 0) {
+ command.Assign(argv[0]);
g_strfreev(argv);
}
+ gchar *commandPath;
+ if (mUseLocaleFilenames) {
+ gchar *nativePath =
+ g_filename_from_utf8(command.get(), -1, nullptr, nullptr, nullptr);
+ if (!nativePath) {
+ NS_ERROR("Error converting path to filesystem encoding");
+ return false;
+ }
+
+ commandPath = g_find_program_in_path(nativePath);
+ g_free(nativePath);
+ } else {
+ commandPath = g_find_program_in_path(command.get());
+ }
+
+ if (!commandPath) return false;
+
+ bool matches = mAppPath.Equals(commandPath);
+ g_free(commandPath);
return matches;
}
@@ -170,36 +186,34 @@ nsGNOMEShellService::IsDefaultClient(bool aStartupCheck, uint16_t aApps,
{
*aIsDefaultClient = false;
- nsCString handler;
- nsCOMPtr<nsIGIOMimeApp> gioApp;
nsCOMPtr<nsIGIOService> giovfs = do_GetService(NS_GIOSERVICE_CONTRACTID);
- nsCOMPtr<nsIGConfService> gconf = do_GetService(NS_GCONFSERVICE_CONTRACTID);
+ nsAutoCString handler;
+ nsCOMPtr<nsIGIOMimeApp> gioApp;
for (unsigned i = 0; i < mozilla::ArrayLength(gProtocols); i++) {
if (aApps & gProtocols[i].app) {
nsDependentCString protocol(gProtocols[i].protocol);
+ if (!gProtocols[i].essential)
+ continue;
+
if (giovfs) {
+ handler.Truncate();
nsCOMPtr<nsIHandlerApp> handlerApp;
+ nsDependentCString protocol(gProtocols[i].protocol);
giovfs->GetAppForURIScheme(protocol, getter_AddRefs(handlerApp));
-
gioApp = do_QueryInterface(handlerApp);
if (!gioApp)
return NS_OK;
-
+
if (NS_SUCCEEDED(gioApp->GetCommand(handler)) &&
- !HandlerMatchesAppName(handler.get()))
+ !CheckHandlerMatchesAppName(handler))
return NS_OK;
}
-
- bool enabled;
- if (gconf &&
- NS_SUCCEEDED(gconf->GetAppForProtocol(protocol, &enabled, handler)) &&
- (!enabled || !HandlerMatchesAppName(handler.get())))
- return NS_OK;
}
}
*aIsDefaultClient = true;
+
return NS_OK;
}
@@ -207,53 +221,43 @@ NS_IMETHODIMP
nsGNOMEShellService::SetDefaultClient(bool aForAllUsers,
bool aClaimAllTypes, uint16_t aApps)
{
- nsresult rv;
-
- nsCOMPtr<nsIGIOMimeApp> app;
nsCOMPtr<nsIGIOService> giovfs = do_GetService(NS_GIOSERVICE_CONTRACTID);
if (giovfs) {
+ nsresult rv;
nsCString brandName;
rv = GetBrandName(brandName);
NS_ENSURE_SUCCESS(rv, rv);
- rv = giovfs->CreateAppFromCommand(mAppPath, brandName, getter_AddRefs(app));
- NS_ENSURE_SUCCESS(rv, rv);
-
- for (unsigned i = 0; i < mozilla::ArrayLength(gMimeTypes); i++) {
- if (aApps & gMimeTypes[i].app) {
- rv = app->SetAsDefaultForMimeType(nsDependentCString(gMimeTypes[i].mimeType));
- NS_ENSURE_SUCCESS(rv, rv);
- rv = app->SetAsDefaultForFileExtensions(nsDependentCString(gMimeTypes[i].extensions));
- NS_ENSURE_SUCCESS(rv, rv);
- }
+ nsCOMPtr<nsIGIOMimeApp> appInfo;
+ rv = giovfs->FindAppFromCommand(mAppPath, getter_AddRefs(appInfo));
+ if (NS_FAILED(rv)) {
+ // Application was not found in the list of installed applications
+ // provided by OS. Fallback to create appInfo from command and name.
+ rv = giovfs->CreateAppFromCommand(mAppPath, brandName,
+ getter_AddRefs(appInfo));
+ NS_ENSURE_SUCCESS(rv, rv);
}
- }
- nsCString appKeyValue;
- nsCOMPtr<nsIGConfService> gconf = do_GetService(NS_GCONFSERVICE_CONTRACTID);
- if (gconf) {
- if (!mAppIsInPath)
- appKeyValue = mAppPath;
- else {
- gchar* basename = g_path_get_basename(mAppPath.get());
- appKeyValue = basename;
- g_free(basename);
- }
- appKeyValue.AppendLiteral(" %s");
- }
-
- for (unsigned i = 0; i < mozilla::ArrayLength(gProtocols); i++) {
- if (aApps & gProtocols[i].app) {
- nsDependentCString protocol(gProtocols[i].protocol);
- if (app) {
- rv = app->SetAsDefaultForURIScheme(protocol);
- NS_ENSURE_SUCCESS(rv, rv);
- }
- if (gconf) {
- rv = gconf->SetAppForProtocol(protocol, appKeyValue);
- NS_ENSURE_SUCCESS(rv, rv);
+ // set handler for the protocols
+ for (unsigned int i = 0; i < mozilla::ArrayLength(gProtocols); ++i) {
+ if (aApps & gProtocols[i].app) {
+ if (appInfo && (gProtocols[i].essential || aClaimAllTypes)) {
+ nsDependentCString protocol(gProtocols[i].protocol);
+ appInfo->SetAsDefaultForURIScheme(protocol);
+ }
}
}
+
+ if (aClaimAllTypes) {
+ for (unsigned int i = 0; i < mozilla::ArrayLength(gMimeTypes); i++) {
+ if (aApps & gMimeTypes[i].app) {
+ nsDependentCString type(gMimeTypes[i].mimeType);
+ appInfo->SetAsDefaultForMimeType(type);
+ nsDependentCString extensions(gMimeTypes[i].extensions);
+ appInfo->SetAsDefaultForFileExtensions(extensions);
+ }
+ }
+ }
}
return NS_OK;
@@ -262,139 +266,144 @@ nsGNOMEShellService::SetDefaultClient(bool aForAllUsers,
NS_IMETHODIMP
nsGNOMEShellService::GetCanSetDesktopBackground(bool* aResult)
{
- nsCOMPtr<nsIGConfService> gconf(do_GetService(NS_GCONFSERVICE_CONTRACTID));
- *aResult = gconf && getenv("GNOME_DESKTOP_SESSION_ID");
+ // for Gnome or desktops using the same GSettings keys
+ const char *currentDesktop = getenv("XDG_CURRENT_DESKTOP");
+ if (currentDesktop && strstr(currentDesktop, "GNOME") != nullptr) {
+ *aResult = true;
+ return NS_OK;
+ }
+
+ const char *gnomeSession = getenv("GNOME_DESKTOP_SESSION_ID");
+ if (gnomeSession) {
+ *aResult = true;
+ } else {
+ *aResult = false;
+ }
+
return NS_OK;
}
+static nsresult WriteImage(const nsCString &aPath, imgIContainer *aImage) {
+#if !defined(MOZ_WIDGET_GTK)
+ return NS_ERROR_NOT_AVAILABLE;
+#else
+ nsCOMPtr<nsIImageToPixbuf> imgToPixbuf =
+ do_GetService("@mozilla.org/widget/image-to-gdk-pixbuf;1");
+ if (!imgToPixbuf) return NS_ERROR_NOT_AVAILABLE;
+
+ GdkPixbuf *pixbuf = imgToPixbuf->ConvertImageToPixbuf(aImage);
+ if (!pixbuf) return NS_ERROR_NOT_AVAILABLE;
+
+ gboolean res = gdk_pixbuf_save(pixbuf, aPath.get(), "png", nullptr, nullptr);
+
+ g_object_unref(pixbuf);
+ return res ? NS_OK : NS_ERROR_FAILURE;
+#endif
+}
+
NS_IMETHODIMP
nsGNOMEShellService::SetDesktopBackground(nsIDOMElement* aElement,
int32_t aPosition,
const nsACString& aImageName)
{
- nsCString brandName;
- nsresult rv = GetBrandName(brandName);
- NS_ENSURE_SUCCESS(rv, rv);
-
- // build the file name
- nsCString filePath(PR_GetEnv("HOME"));
- filePath.Append('/');
- filePath.Append(brandName);
- filePath.AppendLiteral("_wallpaper.png");
-
- // get the image container
- nsCOMPtr<nsIImageLoadingContent> imageContent(do_QueryInterface(aElement, &rv));
- NS_ENSURE_SUCCESS(rv, rv);
+ nsresult rv;
+ nsCOMPtr<nsIImageLoadingContent> imageContent =
+ do_QueryInterface(aElement, &rv);
+ if (!imageContent) return rv;
+ // Get the image container.
nsCOMPtr<imgIRequest> request;
rv = imageContent->GetRequest(nsIImageLoadingContent::CURRENT_REQUEST,
getter_AddRefs(request));
- NS_ENSURE_TRUE(request, rv);
-
+ if (!request) return rv;
nsCOMPtr<imgIContainer> container;
rv = request->GetImage(getter_AddRefs(container));
- NS_ENSURE_TRUE(request, rv);
-
- nsCOMPtr<nsIImageToPixbuf> imgToPixbuf(do_GetService("@mozilla.org/widget/image-to-gdk-pixbuf;1"));
- if (!imgToPixbuf)
- return NS_ERROR_NOT_AVAILABLE;
-
- GdkPixbuf* pixbuf = imgToPixbuf->ConvertImageToPixbuf(container);
- if (!pixbuf)
- return NS_ERROR_NOT_AVAILABLE;
-
- // write the image to a file in the home dir
- gboolean res = gdk_pixbuf_save(pixbuf, filePath.get(), "png",
- nullptr, nullptr);
-
- g_object_unref(pixbuf);
- if (!res)
- return NS_ERROR_FAILURE;
-
- // set desktop wallpaper filling style
- const char* options;
+ if (!container) return rv;
+
+ // Set desktop wallpaper filling style.
+ nsAutoCString options;
switch (aPosition) {
case BACKGROUND_TILE:
- options = "wallpaper";
+ options.AssignLiteral("wallpaper");
break;
case BACKGROUND_STRETCH:
- options = "stretched";
+ options.AssignLiteral("stretched");
break;
case BACKGROUND_FILL:
- options = "zoom";
+ options.AssignLiteral("zoom");
break;
case BACKGROUND_FIT:
- options = "scaled";
+ options.AssignLiteral("scaled");
break;
default:
- options = "centered";
+ options.AssignLiteral("centered");
break;
}
- // Try GSettings first. If we don't have GSettings or the right schema, fall back
- // to using GConf instead. Note that if GSettings works ok, the changes get
- // mirrored to GConf by the gsettings->gconf bridge in gnome-settings-daemon
- nsCOMPtr<nsIGSettingsService> gsettings(do_GetService(NS_GSETTINGSSERVICE_CONTRACTID));
+ // Write the background file to the home directory.
+ nsCString filePath(PR_GetEnv("HOME"));
+
+ nsCString brandName;
+ rv = GetBrandName(brandName);
+ NS_ENSURE_SUCCESS(rv, rv);
+
+ // Build the file name.
+ filePath.Append('/');
+ filePath.Append(brandName);
+ filePath.AppendLiteral("_wallpaper.png");
+
+ // Write the image to a file in the home dir.
+ rv = WriteImage(filePath, container);
+ NS_ENSURE_SUCCESS(rv, rv);
+
+ nsCOMPtr<nsIGSettingsService> gsettings =
+ do_GetService(NS_GSETTINGSSERVICE_CONTRACTID);
if (gsettings) {
nsCOMPtr<nsIGSettingsCollection> background_settings;
- gsettings->GetCollectionForSchema(NS_LITERAL_CSTRING(OGDB_SCHEMA),
+ gsettings->GetCollectionForSchema(NS_LITERAL_CSTRING(kDesktopBGSchema),
getter_AddRefs(background_settings));
if (background_settings) {
gchar *file_uri = g_filename_to_uri(filePath.get(), nullptr, nullptr);
- if (!file_uri)
- return NS_ERROR_FAILURE;
+ if (!file_uri) return NS_ERROR_FAILURE;
- background_settings->SetString(NS_LITERAL_CSTRING(OGDB_OPTIONS),
- nsDependentCString(options));
- background_settings->SetString(NS_LITERAL_CSTRING(OGDB_IMAGE),
+ background_settings->SetString(NS_LITERAL_CSTRING(kDesktopOptionGSKey),
+ options);
+ background_settings->SetString(NS_LITERAL_CSTRING(kDesktopImageGSKey),
nsDependentCString(file_uri));
g_free(file_uri);
- background_settings->SetBoolean(NS_LITERAL_CSTRING(OGDB_DRAWBG), true);
- return NS_OK;
+ background_settings->SetBoolean(NS_LITERAL_CSTRING(kDesktopDrawBGGSKey),
+ true);
+ return rv;
}
}
- // if the file was written successfully, set it as the system wallpaper
- nsCOMPtr<nsIGConfService> gconf(do_GetService(NS_GCONFSERVICE_CONTRACTID));
-
- if (gconf) {
- gconf->SetString(NS_LITERAL_CSTRING(DGB_OPTIONS), nsDependentCString(options));
-
- // Set the image to an empty string first to force a refresh (since we could
- // be writing a new image on top of an existing SeaMonkey_wallpaper.png
- // and nautilus doesn't monitor the file for changes).
- gconf->SetString(NS_LITERAL_CSTRING(DGB_IMAGE), EmptyCString());
- gconf->SetString(NS_LITERAL_CSTRING(DGB_IMAGE), filePath);
- gconf->SetBool(NS_LITERAL_CSTRING(DGB_DRAWBG), true);
- }
-
- return NS_OK;
+ return NS_ERROR_FAILURE;
}
#define COLOR_16_TO_8_BIT(_c) ((_c) >> 8)
+#define COLOR_8_TO_16_BIT(_c) ((_c) << 8 | (_c))
NS_IMETHODIMP
nsGNOMEShellService::GetDesktopBackgroundColor(uint32_t *aColor)
{
- nsCOMPtr<nsIGSettingsService> gsettings(do_GetService(NS_GSETTINGSSERVICE_CONTRACTID));
+ nsCOMPtr<nsIGSettingsService> gsettings =
+ do_GetService(NS_GSETTINGSSERVICE_CONTRACTID);
nsCOMPtr<nsIGSettingsCollection> background_settings;
+ nsAutoCString background;
- if (gsettings)
- gsettings->GetCollectionForSchema(NS_LITERAL_CSTRING(OGDB_SCHEMA),
+ if (gsettings) {
+ gsettings->GetCollectionForSchema(NS_LITERAL_CSTRING(kDesktopBGSchema),
getter_AddRefs(background_settings));
-
- nsCString background;
- if (background_settings)
- background_settings->GetString(NS_LITERAL_CSTRING(OGDB_COLOR),
- background);
- else {
- nsCOMPtr<nsIGConfService> gconf(do_GetService(NS_GCONFSERVICE_CONTRACTID));
- if (gconf)
- gconf->GetString(NS_LITERAL_CSTRING(DGB_COLOR), background);
+ if (background_settings) {
+ background_settings->GetString(NS_LITERAL_CSTRING(kDesktopColorGSKey),
+ background);
+ }
}
- if (background.IsEmpty())
- return NS_ERROR_FAILURE;
+ if (background.IsEmpty()) {
+ *aColor = 0;
+ return NS_OK;
+ }
GdkColor color;
NS_ENSURE_TRUE(gdk_color_parse(background.get(), &color), NS_ERROR_FAILURE);
@@ -405,37 +414,31 @@ nsGNOMEShellService::GetDesktopBackgroundColor(uint32_t *aColor)
return NS_OK;
}
-#define COLOR_8_TO_16_BIT(_c) ((_c) << 8 | (_c))
-
NS_IMETHODIMP
nsGNOMEShellService::SetDesktopBackgroundColor(uint32_t aColor)
{
NS_ENSURE_ARG_MAX(aColor, 0xFFFFFF);
- uint8_t red = aColor >> 16;
- uint8_t green = aColor >> 8;
- uint8_t blue = aColor;
+ uint16_t red = COLOR_8_TO_16_BIT((aColor >> 16) & 0xff);
+ uint16_t green = COLOR_8_TO_16_BIT((aColor >> 8) & 0xff);
+ uint16_t blue = COLOR_8_TO_16_BIT(aColor & 0xff);
char colorString[14];
- sprintf(colorString, "#%04x%04x%04x", COLOR_8_TO_16_BIT(red),
- COLOR_8_TO_16_BIT(green), COLOR_8_TO_16_BIT(blue));
+ sprintf(colorString, "#%04x%04x%04x", red, green, blue);
- nsCOMPtr<nsIGSettingsService> gsettings(do_GetService(NS_GSETTINGSSERVICE_CONTRACTID));
+ nsCOMPtr<nsIGSettingsService> gsettings =
+ do_GetService(NS_GSETTINGSSERVICE_CONTRACTID);
if (gsettings) {
nsCOMPtr<nsIGSettingsCollection> background_settings;
- gsettings->GetCollectionForSchema(NS_LITERAL_CSTRING(OGDB_SCHEMA),
+ gsettings->GetCollectionForSchema(NS_LITERAL_CSTRING(kDesktopBGSchema),
getter_AddRefs(background_settings));
if (background_settings) {
- background_settings->SetString(NS_LITERAL_CSTRING(OGDB_COLOR),
+ background_settings->SetString(NS_LITERAL_CSTRING(kDesktopColorGSKey),
nsDependentCString(colorString));
return NS_OK;
}
}
- nsCOMPtr<nsIGConfService> gconf = do_GetService(NS_GCONFSERVICE_CONTRACTID);
- if (gconf)
- gconf->SetString(NS_LITERAL_CSTRING(DGB_COLOR), nsDependentCString(colorString));
-
- return NS_OK;
+ return NS_ERROR_FAILURE;
}
NS_IMETHODIMP
diff --git a/comm/suite/components/shell/nsGNOMEShellService.h b/comm/suite/components/shell/nsGNOMEShellService.h
index 7d43b51..558663a 100644
--- a/comm/suite/components/shell/nsGNOMEShellService.h
+++ b/comm/suite/components/shell/nsGNOMEShellService.h
@@ -11,12 +11,10 @@
#include "mozilla/Attributes.h"
#include "nsSuiteCID.h"
-struct ProtocolAssociation;
-
class nsGNOMEShellService final : public nsIGNOMEShellService
{
public:
- nsGNOMEShellService() {};
+ nsGNOMEShellService() : mAppIsInPath(false) {}
NS_DECL_ISUPPORTS
NS_DECL_NSISHELLSERVICE
@@ -27,8 +25,9 @@ public:
private:
~nsGNOMEShellService() {}
- bool HandlerMatchesAppName(const char* aHandler);
+ bool CheckHandlerMatchesAppName(const nsACString& handler) const;
+ bool GetAppPathFromLauncher();
bool mUseLocaleFilenames;
nsCString mAppPath;
bool mAppIsInPath;
diff --git a/comm/suite/config/mozconfigs/mozconfig.linux.common b/comm/suite/config/mozconfigs/mozconfig.linux.common
index 03a7e0b..10111f5 100644
--- a/comm/suite/config/mozconfigs/mozconfig.linux.common
+++ b/comm/suite/config/mozconfigs/mozconfig.linux.common
@@ -6,7 +6,8 @@
export PKG_CONFIG_LIBDIR=/usr/local/lib/pkgconfig:/usr/lib/pkgconfig:/usr/share/pkgconfig
-ac_add_options --with-google-api-keyfile=/builds/google-api.key
+ac_add_options --with-google-location-service-api-keyfile=/builds/google-api.key
+ac_add_options --with-google-safebrowsing-api-keyfile=/builds/google-api.key
# SeaMonkey uses the google api key for Geolocation services
# See Bug 1352850 - Switch to Google for Geolocation services
diff --git a/comm/suite/config/mozconfigs/mozconfig.macosx.common b/comm/suite/config/mozconfigs/mozconfig.macosx.common
index 050ddc6..62bc613 100644
--- a/comm/suite/config/mozconfigs/mozconfig.macosx.common
+++ b/comm/suite/config/mozconfigs/mozconfig.macosx.common
@@ -2,7 +2,8 @@
# Same location as on Linux so no need to distingush when doing
# a macOS cross compile on Linux.
-ac_add_options --with-google-api-keyfile=/builds/google-api.key
+ac_add_options --with-google-location-service-api-keyfile=/builds/google-api.key
+ac_add_options --with-google-safebrowsing-api-keyfile=/builds/google-api.key
# SeaMonkey uses the google api key for Geolocation services.
# See Bug 1352850 - Switch to Google for Geolocation services.
diff --git a/comm/suite/config/mozconfigs/mozconfig.win.common b/comm/suite/config/mozconfigs/mozconfig.win.common
index c2d1d29..8b6c436 100644
--- a/comm/suite/config/mozconfigs/mozconfig.win.common
+++ b/comm/suite/config/mozconfigs/mozconfig.win.common
@@ -1,6 +1,7 @@
# Common statements that are applicable to Windows x86 and x64.
-ac_add_options --with-google-api-keyfile=c:/builds/google-api.key
+ac_add_options --with-google-location-service-api-keyfile=/builds/google-api.key
+ac_add_options --with-google-safebrowsing-api-keyfile=/builds/google-api.key
# SeaMonkey uses the google api key for Geolocation services
# See Bug 1352850 - Switch to Google for Geolocation services
diff --git a/comm/suite/extensions/Makefile.in b/comm/suite/extensions/Makefile.in
deleted file mode 100644
index 665a0aa..0000000
--- a/comm/suite/extensions/Makefile.in
+++ /dev/null
@@ -1,37 +0,0 @@
-#
-# This Source Code Form is subject to the terms of the Mozilla Public
-# License, v. 2.0. If a copy of the MPL was not distributed with this
-# file, You can obtain one at http://mozilla.org/MPL/2.0/.
-
-DISTROEXT = $(ABS_DIST)/bin/distribution/extensions
-
-include $(topsrcdir)/config/rules.mk
-
-# If adding extra extensions here, check that EXTRA_ARGS defined below won't
-# affect them unintentionally.
-EXTENSIONS = \
- $(NULL)
-
-# We are in release mode, we don't want to ship the debug file.
-ifndef MOZ_DEBUG
-EXTRA_ARGS = -x content/debug.html
-endif
-
-DEFINES += \
- -DMOZ_APP_VERSION=$(MOZ_APP_VERSION) \
- -DMOZ_APP_MAXVERSION=$(MOZ_APP_MAXVERSION) \
- $(NULL)
-
-define _INSTALL_EXTENSION
-$(NSINSTALL) -D $(dir) && \
- $(PYTHON) -m mozbuild.action.preprocessor $(DEFINES) $(ACDEFINES) $(srcdir)/$(dir)/install.rdf.in -o $(dir)/install.rdf && \
- cd $(dir) && \
- $(ZIP) -r9XD $(DISTROEXT)/$(dir).xpi install.rdf && \
- cd $(abspath $(srcdir)/$(dir)) && \
- $(ZIP) -r9XD $(DISTROEXT)/$(dir).xpi * -x install.rdf.in $(EXTRA_ARGS)
-
-endef # do not remove the blank line!
-
-libs::
- $(NSINSTALL) -D $(DISTROEXT)
- $(foreach dir,$(EXTENSIONS),$(_INSTALL_EXTENSION))
diff --git a/comm/suite/extensions/debugQA/Makefile.in b/comm/suite/extensions/debugQA/Makefile.in
deleted file mode 100644
index 81a0ec2..0000000
--- a/comm/suite/extensions/debugQA/Makefile.in
+++ /dev/null
@@ -1,8 +0,0 @@
-#
-# This Source Code Form is subject to the terms of the Mozilla Public
-# License, v. 2.0. If a copy of the MPL was not distributed with this
-# file, You can obtain one at http://mozilla.org/MPL/2.0/.
-
-INSTALL_EXTENSION_ID = debugQA@mozilla.org
-XPI_PKGNAME = debugQA-$(MOZ_APP_VERSION)
-
diff --git a/comm/suite/extensions/debugQA/content/EditorInitPage.html b/comm/suite/extensions/debugQA/content/EditorInitPage.html
index 1b29b4a..bdfa194 100644
--- a/comm/suite/extensions/debugQA/content/EditorInitPage.html
+++ b/comm/suite/extensions/debugQA/content/EditorInitPage.html
@@ -101,13 +101,13 @@ This text has two spaces between every word
<li>list item with child paragraphs
<p>
First child paragraph
- </p>
+ </p>
<p>
Second child paragraph
- </p>
+ </p>
<p>
Third child paragraph
- </p>
+ </p>
</li>
<li>
Another list item
@@ -131,17 +131,17 @@ Another thing.
<table border="1" id="bigtable">
<tr><td>big cell 1 </td>
<td>
- <table BORDER>
- <tr><td>nested cell 1 </td><td>nested cell 2 </td></tr>
- <tr><td>nested cell 3 </td><td>nested cell 4 </td></tr>
- </table>
+<table BORDER>
+<tr><td>nested cell 1 </td><td>nested cell 2 </td></tr>
+<tr><td>nested cell 3 </td><td>nested cell 4 </td></tr>
+</table>
</td>
</tr>
<tr><td>
- <table BORDER>
- <tr><td>nested cell 5 </td><td>nested cell 6 </td></tr>
- <tr><td>nested cell 7 </td><td>nested cell 8 </td></tr>
- </table>
+<table BORDER>
+<tr><td>nested cell 5 </td><td>nested cell 6 </td></tr>
+<tr><td>nested cell 7 </td><td>nested cell 8 </td></tr>
+</table>
</td><td>big cell 4 </td></tr>
</table>
diff --git a/comm/suite/extensions/debugQA/install.rdf b/comm/suite/extensions/debugQA/install.rdf.in
index e6e46db..e6e46db 100644
--- a/comm/suite/extensions/debugQA/install.rdf
+++ b/comm/suite/extensions/debugQA/install.rdf.in
diff --git a/comm/suite/extensions/debugQA/jar.mn b/comm/suite/extensions/debugQA/jar.mn
index d92b263..78c7371 100644
--- a/comm/suite/extensions/debugQA/jar.mn
+++ b/comm/suite/extensions/debugQA/jar.mn
@@ -2,7 +2,7 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
-debugqa.jar:
+[distribution/extensions/debugQA@mozilla.org] debugqa.jar:
% content debugqa %content/debugqa/
% overlay chrome://navigator/content/navigatorOverlay.xul chrome://debugqa/content/debugQAMenuOverlay.xul
% overlay chrome://editor/content/editor.xul chrome://debugqa/content/debugQAEditorOverlay.xul
diff --git a/comm/suite/extensions/debugQA/locales/jar.mn b/comm/suite/extensions/debugQA/locales/jar.mn
index 78baec2..dddc609 100644
--- a/comm/suite/extensions/debugQA/locales/jar.mn
+++ b/comm/suite/extensions/debugQA/locales/jar.mn
@@ -4,7 +4,7 @@
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
-debugqa.jar:
+[distribution/extensions/debugQA@mozilla.org] debugqa.jar:
% locale debugQA @AB_CD@ %locale/@AB_CD@/debugQA/
locale/@AB_CD@/debugQA/debugQAEditorOverlay.dtd (en-US/debugQAEditorOverlay.dtd)
locale/@AB_CD@/debugQA/debugQANavigatorOverlay.properties (en-US/debugQANavigatorOverlay.properties)
diff --git a/comm/suite/extensions/debugQA/locales/moz.build b/comm/suite/extensions/debugQA/locales/moz.build
index 9f62249..e0eb66a 100644
--- a/comm/suite/extensions/debugQA/locales/moz.build
+++ b/comm/suite/extensions/debugQA/locales/moz.build
@@ -3,8 +3,4 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
-XPI_NAME = 'debugQA'
-
JAR_MANIFESTS += ['jar.mn']
-
-USE_EXTENSION_MANIFEST = True
diff --git a/comm/suite/extensions/debugQA/moz.build b/comm/suite/extensions/debugQA/moz.build
index 3c45913..e6231c7 100644
--- a/comm/suite/extensions/debugQA/moz.build
+++ b/comm/suite/extensions/debugQA/moz.build
@@ -3,15 +3,13 @@
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
-DIRS += ['locales']
+DEFINES['MOZ_APP_VERSION'] = CONFIG['MOZ_APP_VERSION']
+DEFINES['MOZ_APP_MAXVERSION'] = CONFIG['MOZ_APP_MAXVERSION']
-XPI_NAME = 'debugQA'
+DIRS += ['locales']
-FINAL_TARGET_PP_FILES += ['install.rdf']
+FINAL_TARGET_PP_FILES.distribution.extensions['debugQA@mozilla.org'] += [
+ 'install.rdf.in'
+]
JAR_MANIFESTS += ['jar.mn']
-
-USE_EXTENSION_MANIFEST = True
-
-DEFINES['MOZ_APP_VERSION'] = CONFIG['MOZ_APP_VERSION']
-DEFINES['MOZ_APP_MAXVERSION'] = CONFIG['MOZ_APP_MAXVERSION']
diff --git a/comm/suite/installer/package-manifest.in b/comm/suite/installer/package-manifest.in
index a8fb40f..3d7c616 100644
--- a/comm/suite/installer/package-manifest.in
+++ b/comm/suite/installer/package-manifest.in
@@ -161,7 +161,7 @@
; [Components]
#ifdef ACCESSIBILITY
-#ifdef XP_WIN32
+#ifdef XP_WIN
@BINPATH@/Accessible.tlb
@BINPATH@/AccessibleHandler.dll
@BINPATH@/AccessibleMarshal.dll
@@ -578,7 +578,7 @@
#ifdef MOZ_UPDATER
@RESPATH@/icons/updater.png
#endif
-#elifdef XP_WIN32
+#elifdef XP_WIN
@RESPATH@/chrome/icons/default/bookmarkproperties.ico
@RESPATH@/chrome/icons/default/downloadManager.ico
@RESPATH@/chrome/icons/default/editorWindow.ico
@@ -817,7 +817,7 @@ man/*
@RESPATH@/chrome/icons/default/msgcomposeWindow.png
@RESPATH@/chrome/icons/default/msgcomposeWindow16.png
@RESPATH@/chrome/icons/default/msgcomposeWindow48.png
-#elifdef XP_WIN32
+#elifdef XP_WIN
@RESPATH@/chrome/icons/default/abcardWindow.ico
@RESPATH@/chrome/icons/default/ablistWindow.ico
@RESPATH@/chrome/icons/default/addressbookWindow.ico
diff --git a/comm/suite/installer/removed-files.in b/comm/suite/installer/removed-files.in
index 5b9c2eb..2bac25d 100644
--- a/comm/suite/installer/removed-files.in
+++ b/comm/suite/installer/removed-files.in
@@ -110,7 +110,7 @@
@DIR_MACOS@chrome/icons/default/venkman-window.png
@DIR_MACOS@chrome/icons/default/venkman-window16.png
@DIR_MACOS@chrome/icons/default/venkman-window48.png
-#elifdef XP_WIN32
+#elifdef XP_WIN
chrome/icons/default/venkman-window.ico
#endif
#ifndef ENABLE_TESTS
diff --git a/comm/suite/installer/windows/nsis/shared.nsh b/comm/suite/installer/windows/nsis/shared.nsh
index d10cee6..5830eb8 100644
--- a/comm/suite/installer/windows/nsis/shared.nsh
+++ b/comm/suite/installer/windows/nsis/shared.nsh
@@ -467,7 +467,6 @@
WriteRegStr HKLM "$0" "" "${BrandFullNameInternal}"
WriteRegStr HKLM "$0\DefaultIcon" "" "$8,0"
WriteRegStr HKLM "$0" "DLLPath" "$6"
- WriteRegDWORD HKLM "$0" "SupportUTF8" 0
; The MapiProxy dll can be used by multiple applications but
; is only registered for the last application installed. When the last
@@ -792,6 +791,11 @@
${If} "$2" == "SeamonkeyURL"
DeleteRegKey HKCU "$0"
${EndIf}
+
+ ; Remove the SupportUTF8 registry value as it causes MAPI issues on some locales
+ ; with non-ASCII characters in file names.
+ StrCpy $0 "Software\Clients\Mail\${ClientsRegName}"
+ DeleteRegValue HKLM $0 "SupportUTF8"
!macroend
!define RemoveDeprecatedKeys "!insertmacro RemoveDeprecatedKeys"
diff --git a/comm/suite/locales/Makefile.in b/comm/suite/locales/Makefile.in
index c04f1e8..1f78448 100644
--- a/comm/suite/locales/Makefile.in
+++ b/comm/suite/locales/Makefile.in
@@ -143,6 +143,9 @@ libs-%:
ifdef MOZ_IRC
@$(MAKE) -C $(DEPTH)/extensions/irc/locales libs-$*
endif
+ifdef MOZ_DEBUGQA
+ @$(MAKE) -C ../extensions/debugQA/locales AB_CD=$* XPI_NAME=locale-$*
+endif
@$(MAKE) -C $(DEPTH)/extensions/spellcheck/locales AB_CD=$* XPI_NAME=locale-$*
@$(MAKE) -B searchplugins AB_CD=$* XPI_NAME=locale-$*
@$(MAKE) -C $(DEPTH)/devtools/client/locales AB_CD=$* XPI_NAME=locale-$*
diff --git a/comm/suite/locales/en-US/chrome/common/downloads/downloadmanager.dtd b/comm/suite/locales/en-US/chrome/common/downloads/downloadmanager.dtd
index 64af0a9..f285278 100644
--- a/comm/suite/locales/en-US/chrome/common/downloads/downloadmanager.dtd
+++ b/comm/suite/locales/en-US/chrome/common/downloads/downloadmanager.dtd
@@ -93,4 +93,3 @@
-->
<!ENTITY cmd.unblock2.label "Allow Download">
<!ENTITY cmd.unblock2.accesskey "l">
-
diff --git a/comm/suite/locales/en-US/chrome/common/help/developer_tools.xhtml b/comm/suite/locales/en-US/chrome/common/help/developer_tools.xhtml
index c28770e..baff941 100644
--- a/comm/suite/locales/en-US/chrome/common/help/developer_tools.xhtml
+++ b/comm/suite/locales/en-US/chrome/common/help/developer_tools.xhtml
@@ -61,12 +61,12 @@
</li>
<li id="webide">
<strong>WebIDE</strong>: &brandShortName; includes Developer Tools WebIDE,
- which can be used to debug other web sites or Gecko-based applications
- running on the same computer, or on another device (such as a smartphone)
- through a USB or network connection. To learn more, visit the
- <a href="https://developer.mozilla.org/docs/Tools/Remote_Debugging">Remote
- Debugging</a> page at MDN. Note that you may not be able to debug
- applications that are newer than the included version of WebIDE.
+ which can be used to debug other web sites or Gecko-based applications
+ running on the same computer, or on another device (such as a smartphone)
+ through a USB or network connection. To learn more, visit the
+ <a href="https://developer.mozilla.org/docs/Tools/Remote_Debugging">Remote
+ Debugging</a> page at MDN. Note that you may not be able to debug
+ applications that are newer than the included version of WebIDE.
</li>
</ul>
diff --git a/comm/suite/locales/en-US/chrome/common/help/help-win.rdf b/comm/suite/locales/en-US/chrome/common/help/help-win.rdf
index d511b56..1c2e5ca 100644
--- a/comm/suite/locales/en-US/chrome/common/help/help-win.rdf
+++ b/comm/suite/locales/en-US/chrome/common/help/help-win.rdf
@@ -66,7 +66,7 @@
<rdf:Seq><rdf:li>
<rdf:Description ID="default_browser_preferences"
nc:name="default browser preferences"
- nc:link="cs_nav_prefs_navigator.xhtml#navigator"/>
+ nc:link="cs_nav_prefs_navigator.xhtml#navigator"/>
</rdf:li></rdf:Seq>
</nc:subheadings>
</rdf:Description>
@@ -76,7 +76,7 @@
<rdf:Seq><rdf:li>
<rdf:Description ID="ieusers"
nc:name="Internet Explorer User Help"
- nc:link="forieusers.xhtml"/>
+ nc:link="forieusers.xhtml"/>
</rdf:li></rdf:Seq>
</nc:subheadings>
</rdf:Description>
@@ -111,7 +111,7 @@
<rdf:Seq><rdf:li>
<rdf:Description ID="preferences:default_browser"
nc:name="default browser preferences"
- nc:link="cs_nav_prefs_navigator.xhtml#navigator"/>
+ nc:link="cs_nav_prefs_navigator.xhtml#navigator"/>
</rdf:li></rdf:Seq>
</nc:subheadings>
</rdf:Description>
diff --git a/comm/suite/locales/en-US/chrome/common/help/helpFileLayout.css b/comm/suite/locales/en-US/chrome/common/help/helpFileLayout.css
index 9f61a48..5504ba6 100644
--- a/comm/suite/locales/en-US/chrome/common/help/helpFileLayout.css
+++ b/comm/suite/locales/en-US/chrome/common/help/helpFileLayout.css
@@ -4,10 +4,10 @@
@import url("chrome://help/content/platformClasses.css");
body {
- margin: 2ex;
- font-family: sans-serif;
- font-size: 0.75em;
- max-width: 120ex;
+ margin: 2ex;
+ font-family: sans-serif;
+ font-size: 0.75em;
+ max-width: 120ex;
}
dd { margin-inline-start: 0px; margin-bottom: 1em; }
@@ -47,17 +47,17 @@ p:first-child { padding-top: 0; margin-top: 0; }
.separate > li { margin-bottom: 0.5em; }
.contentsBox {
- margin-top: 12px;
- background-color: #cccccc;
- border: 1px solid black;
- width: 300px;
- padding: 1em;
+ margin-top: 12px;
+ background-color: #cccccc;
+ border: 1px solid black;
+ width: 300px;
+ padding: 1em;
}
.contentsBox > ul {
- list-style-type: none;
+ list-style-type: none;
}
a[href^="http://"]:after, a[href^="https://"]:after, a[href^="x-moz-url-link:"]:after {
- content: url("images/web-links.png");
+ content: url("images/web-links.png");
}
diff --git a/comm/suite/locales/en-US/chrome/common/help/suite-toc.rdf b/comm/suite/locales/en-US/chrome/common/help/suite-toc.rdf
index c75815c..75a5717 100644
--- a/comm/suite/locales/en-US/chrome/common/help/suite-toc.rdf
+++ b/comm/suite/locales/en-US/chrome/common/help/suite-toc.rdf
@@ -519,7 +519,7 @@
<rdf:Description about="#comp">
<nc:subheadings>
<rdf:Seq>
- <rdf:li> <rdf:Description ID="comp-doc" nc:name="Starting a New Page" nc:link="composer_help.xhtml#starting_a_new_page"/> </rdf:li>
+ <rdf:li> <rdf:Description ID="comp-doc" nc:name="Starting a New Page" nc:link="composer_help.xhtml#starting_a_new_page"/> </rdf:li>
<rdf:li> <rdf:Description ID="page_change" nc:name="Formatting Your Web Pages" nc:link="composer_help.xhtml#formatting_your_web_pages"/> </rdf:li>
<rdf:li> <rdf:Description ID="comp-doc-table" nc:name="Adding Tables to Your Web Page" nc:link="composer_help.xhtml#adding_tables_to_your_web_page"/> </rdf:li>
<rdf:li> <rdf:Description ID="comp-doc-image" nc:name="Adding Images to Your Web Page" nc:link="composer_help.xhtml#adding_images_to_your_web_page"/> </rdf:li>
@@ -856,11 +856,11 @@
<rdf:Description about="#privacy-doc">
<nc:subheadings>
<rdf:Seq>
- <rdf:li><rdf:Description ID="privacy-doc-visit" nc:name="What Information Does My Browser Give to a Website?" nc:link="privacy_help.xhtml#what_information_does_my_browser_give_to_a_website"/> </rdf:li>
- <rdf:li><rdf:Description ID="privacy-doc-cookies" nc:name="What Are Cookies, and How Do They Work?" nc:link="privacy_help.xhtml#what_are_cookies_and_how_do_they_work"/> </rdf:li>
- <rdf:li><rdf:Description ID="privacy-doc-tracking" nc:name="Why and How Are Websites Tracking Me?" nc:link="privacy_help.xhtml#why_and_how_are_websites_tracking_me"/> </rdf:li>
- <rdf:li><rdf:Description ID="privacy-doc-email" nc:name="How Can I Control Web Pages in Email Messages?" nc:link="privacy_help.xhtml#how_can_i_control_web_pages_in_email_messages"/> </rdf:li>
- <rdf:li><rdf:Description ID="privacy-doc-unauth" nc:name="How Can I Make Sure Unauthorized People Don't Use Information About Me?" nc:link="privacy_help.xhtml#how_can_i_make_sure_unauthorized_people_dont_use_information_about_me"/> </rdf:li>
+ <rdf:li><rdf:Description ID="privacy-doc-visit" nc:name="What Information Does My Browser Give to a Website?" nc:link="privacy_help.xhtml#what_information_does_my_browser_give_to_a_website"/> </rdf:li>
+ <rdf:li><rdf:Description ID="privacy-doc-cookies" nc:name="What Are Cookies, and How Do They Work?" nc:link="privacy_help.xhtml#what_are_cookies_and_how_do_they_work"/> </rdf:li>
+ <rdf:li><rdf:Description ID="privacy-doc-tracking" nc:name="Why and How Are Websites Tracking Me?" nc:link="privacy_help.xhtml#why_and_how_are_websites_tracking_me"/> </rdf:li>
+ <rdf:li><rdf:Description ID="privacy-doc-email" nc:name="How Can I Control Web Pages in Email Messages?" nc:link="privacy_help.xhtml#how_can_i_control_web_pages_in_email_messages"/> </rdf:li>
+ <rdf:li><rdf:Description ID="privacy-doc-unauth" nc:name="How Can I Make Sure Unauthorized People Don't Use Information About Me?" nc:link="privacy_help.xhtml#how_can_i_make_sure_unauthorized_people_dont_use_information_about_me"/> </rdf:li>
</rdf:Seq>
</nc:subheadings>
</rdf:Description>
diff --git a/comm/suite/locales/en-US/chrome/common/pref/mac/platformPrefOverlay.dtd b/comm/suite/locales/en-US/chrome/common/pref/mac/platformPrefOverlay.dtd
index 46dcc1d..34f1266 100644
--- a/comm/suite/locales/en-US/chrome/common/pref/mac/platformPrefOverlay.dtd
+++ b/comm/suite/locales/en-US/chrome/common/pref/mac/platformPrefOverlay.dtd
@@ -4,8 +4,8 @@
<!-- LOCALIZATION NOTE : this is part of an inline-style attribute on the
preference dialog's <window> node, which specifies the width and height
- in em units of the dialog. Localizers ONLY can increase these widths
- if they are having difficulty getting panel content to fit. 1em = the
+ in em units of the dialog. Localizers ONLY can increase these widths
+ if they are having difficulty getting panel content to fit. 1em = the
width of the letter 'm' in the selected font.
XUL/FE DEVELOPERS: DO NOT MODIFY THIS VALUE. It represents the correct
size of this window for en-US. -->
diff --git a/comm/suite/locales/en-US/chrome/common/pref/pref-cookies.dtd b/comm/suite/locales/en-US/chrome/common/pref/pref-cookies.dtd
index edcea8c..e6dad7b 100644
--- a/comm/suite/locales/en-US/chrome/common/pref/pref-cookies.dtd
+++ b/comm/suite/locales/en-US/chrome/common/pref/pref-cookies.dtd
@@ -37,4 +37,3 @@
<!ENTITY viewCookies.label "Cookie Manager">
<!ENTITY viewCookies.accesskey "M">
-
diff --git a/comm/suite/locales/en-US/chrome/common/pref/pref-images.dtd b/comm/suite/locales/en-US/chrome/common/pref/pref-images.dtd
index 42abb35..dd03e77 100644
--- a/comm/suite/locales/en-US/chrome/common/pref/pref-images.dtd
+++ b/comm/suite/locales/en-US/chrome/common/pref/pref-images.dtd
@@ -8,7 +8,7 @@
<!--LOCALIZATION NOTE (onStartLegend.label): Don't translate "&brandShortName;".
Place "&brandShortName;" in the phrase where the name of the application should
- appear
+ appear
-->
<!ENTITY imageDetails "Specify how &brandShortName; handles images.">
diff --git a/comm/suite/locales/en-US/chrome/common/pref/pref-popups.dtd b/comm/suite/locales/en-US/chrome/common/pref/pref-popups.dtd
index eece412..0119de2 100644
--- a/comm/suite/locales/en-US/chrome/common/pref/pref-popups.dtd
+++ b/comm/suite/locales/en-US/chrome/common/pref/pref-popups.dtd
@@ -32,4 +32,3 @@
<!ENTITY displayNotification.accesskey "N">
<!ENTITY popupNote.description "Note: Blocking all popups may prevent important features of some websites from working, such as login windows for banks and shopping websites. For details of how to allow specific websites to use popups while blocking all others, click Help. Even if blocked, websites may use other methods to show popups.">
-
diff --git a/comm/suite/locales/en-US/chrome/common/pref/unix/platformPrefOverlay.dtd b/comm/suite/locales/en-US/chrome/common/pref/unix/platformPrefOverlay.dtd
index 5b1f940..2ccf0e8 100644
--- a/comm/suite/locales/en-US/chrome/common/pref/unix/platformPrefOverlay.dtd
+++ b/comm/suite/locales/en-US/chrome/common/pref/unix/platformPrefOverlay.dtd
@@ -4,8 +4,8 @@
<!-- LOCALIZATION NOTE : this is part of an inline-style attribute on the
preference dialog's <window> node, which specifies the width and height
- in em units of the dialog. Localizers ONLY can increase these widths
- if they are having difficulty getting panel content to fit. 1em = the
+ in em units of the dialog. Localizers ONLY can increase these widths
+ if they are having difficulty getting panel content to fit. 1em = the
width of the letter 'm' in the selected font.
XUL/FE DEVELOPERS: DO NOT MODIFY THIS VALUE. It represents the correct
size of this window for en-US. -->
diff --git a/comm/suite/locales/en-US/chrome/common/pref/win/platformPrefOverlay.dtd b/comm/suite/locales/en-US/chrome/common/pref/win/platformPrefOverlay.dtd
index 545b2bc..80f6fc8 100644
--- a/comm/suite/locales/en-US/chrome/common/pref/win/platformPrefOverlay.dtd
+++ b/comm/suite/locales/en-US/chrome/common/pref/win/platformPrefOverlay.dtd
@@ -4,8 +4,8 @@
<!-- LOCALIZATION NOTE : this is part of an inline-style attribute on the
preference dialog's <window> node, which specifies the width and height
- in em units of the dialog. Localizers ONLY can increase these widths
- if they are having difficulty getting panel content to fit. 1em = the
+ in em units of the dialog. Localizers ONLY can increase these widths
+ if they are having difficulty getting panel content to fit. 1em = the
width of the letter 'm' in the selected font.
XUL/FE DEVELOPERS: DO NOT MODIFY THIS VALUE. It represents the correct
size of this window for en-US. -->
diff --git a/comm/suite/locales/en-US/chrome/common/safeBrowsing.dtd b/comm/suite/locales/en-US/chrome/common/safeBrowsing.dtd
index 766a52d..2e498ba 100644
--- a/comm/suite/locales/en-US/chrome/common/safeBrowsing.dtd
+++ b/comm/suite/locales/en-US/chrome/common/safeBrowsing.dtd
@@ -26,4 +26,3 @@
<!ENTITY reportDeceptiveSite.accesskey "d">
<!ENTITY notADeceptiveSite.label "This isn't a deceptive site…">
<!ENTITY notADeceptiveSite.accesskey "d">
-
diff --git a/comm/suite/locales/en-US/chrome/common/utilityOverlay.dtd b/comm/suite/locales/en-US/chrome/common/utilityOverlay.dtd
index bc61810..7f6e1ec 100644
--- a/comm/suite/locales/en-US/chrome/common/utilityOverlay.dtd
+++ b/comm/suite/locales/en-US/chrome/common/utilityOverlay.dtd
@@ -6,7 +6,7 @@
<!ENTITY offlineGoOfflineCmd.label "Work Offline">
<!ENTITY offlineGoOfflineCmd.accesskey "k">
-<!-- LOCALIZATION NOTE : FILE This file contains the global menu items -->
+<!-- LOCALIZATION NOTE : FILE This file contains the global menu items -->
<!ENTITY fileMenu.label "File">
<!ENTITY fileMenu.accesskey "F">
@@ -62,13 +62,13 @@
<!ENTITY selectAllCmd.label "Select All">
<!ENTITY selectAllCmd.key "A">
<!ENTITY selectAllCmd.accesskey "A">
-<!ENTITY clearHistoryCmd.label "Clear Search History">
-<!ENTITY clearHistoryCmd.accesskey "H">
-<!ENTITY showSuggestionsCmd.label "Show Suggestions">
-<!ENTITY showSuggestionsCmd.accesskey "S">
-<!ENTITY preferencesCmd.label "Preferences…">
-<!ENTITY preferencesCmd.key "E">
-<!ENTITY preferencesCmd.accesskey "e">
+<!ENTITY clearHistoryCmd.label "Clear Search History">
+<!ENTITY clearHistoryCmd.accesskey "H">
+<!ENTITY showSuggestionsCmd.label "Show Suggestions">
+<!ENTITY showSuggestionsCmd.accesskey "S">
+<!ENTITY preferencesCmd.label "Preferences…">
+<!ENTITY preferencesCmd.key "E">
+<!ENTITY preferencesCmd.accesskey "e">
<!ENTITY findBarCmd.key "F">
<!-- LOCALIZATION NOTE (findBarCmd.accesskey): This accesskey should be within
findBarCmd.label found in editorOverlay.dtd, findCmd.label in messenger.dtd
@@ -88,15 +88,15 @@
<!ENTITY findTypeLinksCmd.label "Find Links As You Type">
<!ENTITY findTypeLinksCmd.accesskey "k">
-<!ENTITY viewMenu.label "View">
+<!ENTITY viewMenu.label "View">
<!ENTITY viewMenu.accesskey "V">
-<!ENTITY viewToolbarsMenu.label "Show/Hide">
-<!ENTITY viewToolbarsMenu.accesskey "w">
-<!ENTITY showTaskbarCmd.label "Status Bar">
-<!ENTITY showTaskbarCmd.accesskey "S">
+<!ENTITY viewToolbarsMenu.label "Show/Hide">
+<!ENTITY viewToolbarsMenu.accesskey "w">
+<!ENTITY showTaskbarCmd.label "Status Bar">
+<!ENTITY showTaskbarCmd.accesskey "S">
-<!ENTITY helpMenu.label "Help">
-<!ENTITY helpMenu.accesskey "h">
+<!ENTITY helpMenu.label "Help">
+<!ENTITY helpMenu.accesskey "h">
<!ENTITY helpTroubleshootingInfo.label "Troubleshooting Information">
<!ENTITY helpTroubleshootingInfo.accesskey "T">
@@ -106,24 +106,24 @@
<!ENTITY helpSafeMode.accesskey "R">
<!ENTITY updateCmd.label "Check for Updates…">
<!ENTITY updateCmd.accesskey "C">
-<!ENTITY aboutCmd.label "About &brandShortName;">
-<!ENTITY aboutCmd.accesskey "A">
-<!ENTITY aboutCommPluginsCmd.label "About Plugins">
-<!ENTITY aboutCommPluginsCmd.accesskey "p">
+<!ENTITY aboutCmd.label "About &brandShortName;">
+<!ENTITY aboutCmd.accesskey "A">
+<!ENTITY aboutCommPluginsCmd.label "About Plugins">
+<!ENTITY aboutCommPluginsCmd.accesskey "p">
-<!ENTITY direct.label "Online (Proxy: None)">
-<!ENTITY direct.accesskey "N">
-<!ENTITY manual.label "Online (Proxy: Manual)">
-<!ENTITY manual.accesskey "M">
-<!ENTITY pac.label "Online (Proxy: Auto URL)">
-<!ENTITY pac.accesskey "A">
-<!ENTITY wpad.label "Online (Proxy: Auto Discover)">
-<!ENTITY wpad.accesskey "D">
-<!ENTITY system.label "Online (Proxy: System Proxy)">
-<!ENTITY system.accesskey "S">
+<!ENTITY direct.label "Online (Proxy: None)">
+<!ENTITY direct.accesskey "N">
+<!ENTITY manual.label "Online (Proxy: Manual)">
+<!ENTITY manual.accesskey "M">
+<!ENTITY pac.label "Online (Proxy: Auto URL)">
+<!ENTITY pac.accesskey "A">
+<!ENTITY wpad.label "Online (Proxy: Auto Discover)">
+<!ENTITY wpad.accesskey "D">
+<!ENTITY system.label "Online (Proxy: System Proxy)">
+<!ENTITY system.accesskey "S">
-<!ENTITY proxy.label "Proxy Configuration…">
-<!ENTITY proxy.accesskey "C">
+<!ENTITY proxy.label "Proxy Configuration…">
+<!ENTITY proxy.accesskey "C">
<!ENTITY bidiSwitchTextDirectionItem.label "Switch Text Direction">
<!ENTITY bidiSwitchTextDirectionItem.accesskey "w">
diff --git a/comm/suite/locales/en-US/chrome/mailnews/addressbook/abMainWindow.dtd b/comm/suite/locales/en-US/chrome/mailnews/addressbook/abMainWindow.dtd
index 7600184..213179e 100644
--- a/comm/suite/locales/en-US/chrome/mailnews/addressbook/abMainWindow.dtd
+++ b/comm/suite/locales/en-US/chrome/mailnews/addressbook/abMainWindow.dtd
@@ -12,10 +12,10 @@
<!-- LOCALIZATION NOTE (newContact.accesskey) : DONT_TRANSLATE -->
<!ENTITY newContact.accesskey "C">
<!ENTITY newListCmd.label "Mailing List…">
-<!-- LOCALIZATION NOTE (newListCmd.accesskey) : DONT_TRANSLATE -->
-<!ENTITY newListCmd.accesskey "L">
-<!ENTITY newAddressBookCmd.label "Address Book…">
-<!ENTITY newAddressBookCmd.accesskey "o">
+<!-- LOCALIZATION NOTE (newListCmd.accesskey) : DONT_TRANSLATE -->
+<!ENTITY newListCmd.accesskey "L">
+<!ENTITY newAddressBookCmd.label "Address Book…">
+<!ENTITY newAddressBookCmd.accesskey "o">
<!ENTITY newLDAPDirectoryCmd.label "LDAP Directory…">
<!-- LOCALIZATION NOTE (newLDAPDirectoryCmd.accesskey) : DONT_TRANSLATE -->
<!ENTITY newLDAPDirectoryCmd.accesskey "D">
@@ -25,42 +25,42 @@
<!ENTITY printPreviewContactViewCmd.label "Print Preview Contact">
<!ENTITY printPreviewContactViewCmd.accesskey "v">
<!ENTITY printContactViewCmd.key "P">
-<!ENTITY printAddressBook.label "Print Address Book…">
-<!ENTITY printAddressBook.accesskey "A">
-<!ENTITY printPreviewAddressBook.label "Print Preview Address Book">
+<!ENTITY printAddressBook.label "Print Address Book…">
+<!ENTITY printAddressBook.accesskey "A">
+<!ENTITY printPreviewAddressBook.label "Print Preview Address Book">
<!ENTITY printPreviewAddressBook.accesskey "B">
<!-- Edit Menu -->
-<!ENTITY deleteAbCmd.label "Delete Address Book">
+<!ENTITY deleteAbCmd.label "Delete Address Book">
<!ENTITY deleteContactCmd.label "Delete Contact">
<!ENTITY deleteContactsCmd.label "Delete Selected Contacts">
<!ENTITY deleteListCmd.label "Delete List">
<!ENTITY deleteListsCmd.label "Delete Selected Lists">
<!ENTITY deleteItemsCmd.label "Delete Selected Items">
<!ENTITY swapFirstNameLastNameCmd.label "Swap First/Last Name">
-<!ENTITY swapFirstNameLastNameCmd.accesskey "w">
+<!ENTITY swapFirstNameLastNameCmd.accesskey "w">
<!ENTITY propertiesCmd.label "Properties…">
-<!-- LOCALIZATION NOTE (propertiesCmd.accesskey) : DONT_TRANSLATE -->
-<!ENTITY propertiesCmd.accesskey "i">
-<!ENTITY propertiesCmd.key "i">
+<!-- LOCALIZATION NOTE (propertiesCmd.accesskey) : DONT_TRANSLATE -->
+<!ENTITY propertiesCmd.accesskey "i">
+<!ENTITY propertiesCmd.key "i">
<!-- View Menu -->
-<!ENTITY showAbToolbarCmd.label "Address Book Toolbar">
-<!ENTITY showAbToolbarCmd.accesskey "o">
+<!ENTITY showAbToolbarCmd.label "Address Book Toolbar">
+<!ENTITY showAbToolbarCmd.accesskey "o">
<!ENTITY layoutMenu.label "Layout">
<!ENTITY layoutMenu.accesskey "L">
<!ENTITY showDirectoryPane.label "Directory Pane">
<!ENTITY showDirectoryPane.accesskey "D">
<!ENTITY showContactPane2.label "Contact Pane">
<!ENTITY showContactPane2.accesskey "C">
-<!ENTITY menu_ShowNameAs.label "Show Name As">
-<!ENTITY menu_ShowNameAs.accesskey "n">
-<!ENTITY firstLastCmd.label "First Last">
-<!ENTITY firstLastCmd.accesskey "f">
-<!ENTITY lastFirstCmd.label "Last, First">
-<!ENTITY lastFirstCmd.accesskey "l">
-<!ENTITY displayNameCmd.label "Display Name">
-<!ENTITY displayNameCmd.accesskey "d">
+<!ENTITY menu_ShowNameAs.label "Show Name As">
+<!ENTITY menu_ShowNameAs.accesskey "n">
+<!ENTITY firstLastCmd.label "First Last">
+<!ENTITY firstLastCmd.accesskey "f">
+<!ENTITY lastFirstCmd.label "Last, First">
+<!ENTITY lastFirstCmd.accesskey "l">
+<!ENTITY displayNameCmd.label "Display Name">
+<!ENTITY displayNameCmd.accesskey "d">
<!-- Tasks Menu -->
<!ENTITY importCmd.label "Import…">
@@ -68,29 +68,29 @@
<!ENTITY exportCmd.label "Export…">
<!ENTITY exportCmd.accesskey "E">
-<!-- Toolbar and Popup items -->
+<!-- Toolbar and Popup items -->
<!ENTITY newContactButton.label "New Contact">
<!ENTITY newContactButton.accesskey "C">
-<!ENTITY newlistButton.label "New List">
-<!ENTITY newlistButton.accesskey "L">
+<!ENTITY newlistButton.label "New List">
+<!ENTITY newlistButton.accesskey "L">
<!ENTITY editItemButton.label "Properties">
<!ENTITY editItemButton.accesskey "P">
-<!ENTITY newmsgButton.label "Compose">
-<!ENTITY newmsgButton.accesskey "C">
+<!ENTITY newmsgButton.label "Compose">
+<!ENTITY newmsgButton.accesskey "C">
<!ENTITY deleteItemButton.label "Delete">
<!ENTITY deleteItemButton.accesskey "D">
-<!ENTITY newimButton.label "Instant Message">
-<!ENTITY newimButton.accesskey "I">
+<!ENTITY newimButton.label "Instant Message">
+<!ENTITY newimButton.accesskey "I">
<!ENTITY searchNameAndEmail.placeholder "Search Name and Email">
<!ENTITY searchBox.title "Search">
<!-- Tooltips -->
<!ENTITY addressbookToolbar.tooltip "Address Book Toolbar">
<!ENTITY newContactButton.tooltip "Create a new address book contact">
-<!ENTITY newlistButton.tooltip "Create a new list">
+<!ENTITY newlistButton.tooltip "Create a new list">
<!ENTITY editItemButton.tooltip "Edit the selected item">
-<!ENTITY newmsgButton.tooltip "Send a mail message">
-<!ENTITY newIM.tooltip "Send an instant message or chat">
+<!ENTITY newmsgButton.tooltip "Send a mail message">
+<!ENTITY newIM.tooltip "Send an instant message or chat">
<!ENTITY deleteItemButton.tooltip "Delete selected item">
<!ENTITY throbber.tooltip "Go to the &vendorShortName; home page">
<!ENTITY advancedButton.tooltip "Advanced address search">
@@ -112,7 +112,7 @@
<!ENTITY mapItButton.label "Get Map">
<!ENTITY mapIt.tooltip "Display a map of this address from the Web">
-<!-- Status Bar -->
+<!-- Status Bar -->
<!ENTITY statusText.label "">
<!-- LOCALIZATION NOTE (hideSwapFnLnUI) : DONT_TRANSLATE -->
diff --git a/comm/suite/locales/en-US/chrome/mailnews/addressbook/abSelectAddressesDialog.dtd b/comm/suite/locales/en-US/chrome/mailnews/addressbook/abSelectAddressesDialog.dtd
index 1956cbe..7922186 100644
--- a/comm/suite/locales/en-US/chrome/mailnews/addressbook/abSelectAddressesDialog.dtd
+++ b/comm/suite/locales/en-US/chrome/mailnews/addressbook/abSelectAddressesDialog.dtd
@@ -6,26 +6,25 @@
<!ENTITY selectAddressWindow.title "Select Addresses">
<!-- Buttons -->
-<!ENTITY toButton.label "To->">
-<!ENTITY toButton.accesskey "T">
-<!ENTITY ccButton.label "Cc->">
-<!ENTITY ccButton.accesskey "C">
-<!ENTITY bccButton.label "Bcc->">
-<!ENTITY bccButton.accesskey "B">
-<!ENTITY newButton.label "New…">
-<!ENTITY newButton.accesskey "N">
-<!ENTITY editButton.label "Edit…">
+<!ENTITY toButton.label "To->">
+<!ENTITY toButton.accesskey "T">
+<!ENTITY ccButton.label "Cc->">
+<!ENTITY ccButton.accesskey "C">
+<!ENTITY bccButton.label "Bcc->">
+<!ENTITY bccButton.accesskey "B">
+<!ENTITY newButton.label "New…">
+<!ENTITY newButton.accesskey "N">
+<!ENTITY editButton.label "Edit…">
<!ENTITY editButton.accesskey "E">
-<!ENTITY removeButton.label "Remove">
-<!ENTITY removeButton.accesskey "R">
-<!ENTITY lookIn.label "Look in:">
-<!ENTITY lookIn.accesskey "L">
-<!ENTITY for.label "for:">
-<!ENTITY for.accesskey "f">
+<!ENTITY removeButton.label "Remove">
+<!ENTITY removeButton.accesskey "R">
+<!ENTITY lookIn.label "Look in:">
+<!ENTITY lookIn.accesskey "L">
+<!ENTITY for.label "for:">
+<!ENTITY for.accesskey "f">
<!ENTITY for.placeholder "Name or Email">
-<!ENTITY addressMessageTo.label "Address message to:">
-
-<!-- Tooltips items -->
-<!ENTITY addressPickerNewButton.tooltip "Create a new address book card">
-<!ENTITY addressPickerEditButton.tooltip "Edit the selected card">
+<!ENTITY addressMessageTo.label "Address message to:">
+<!-- Tooltips items -->
+<!ENTITY addressPickerNewButton.tooltip "Create a new address book card">
+<!ENTITY addressPickerEditButton.tooltip "Edit the selected card">
diff --git a/comm/suite/locales/en-US/chrome/mailnews/compose/addressingWidgetOverlay.dtd b/comm/suite/locales/en-US/chrome/mailnews/compose/addressingWidgetOverlay.dtd
index 038042c..cbad906 100644
--- a/comm/suite/locales/en-US/chrome/mailnews/compose/addressingWidgetOverlay.dtd
+++ b/comm/suite/locales/en-US/chrome/mailnews/compose/addressingWidgetOverlay.dtd
@@ -4,10 +4,9 @@
<!-- address labels -->
<!--LOCALIZATION NOTE addressingWidgetOverlay.dtd The basic mail/news composition headers as they are seen in UI -->
-<!ENTITY toAddr.label "To:">
-<!ENTITY ccAddr.label "Cc:">
-<!ENTITY bccAddr.label "Bcc:">
-<!ENTITY replyAddr.label "Reply-To:">
-<!ENTITY newsgroupsAddr.label "Newsgroup:">
-<!ENTITY followupAddr.label "Followup-To:">
-
+<!ENTITY toAddr.label "To:">
+<!ENTITY ccAddr.label "Cc:">
+<!ENTITY bccAddr.label "Bcc:">
+<!ENTITY replyAddr.label "Reply-To:">
+<!ENTITY newsgroupsAddr.label "Newsgroup:">
+<!ENTITY followupAddr.label "Followup-To:">
diff --git a/comm/suite/locales/en-US/chrome/mailnews/compose/messengercompose.dtd b/comm/suite/locales/en-US/chrome/mailnews/compose/messengercompose.dtd
index b474c71..e410369 100644
--- a/comm/suite/locales/en-US/chrome/mailnews/compose/messengercompose.dtd
+++ b/comm/suite/locales/en-US/chrome/mailnews/compose/messengercompose.dtd
@@ -114,12 +114,12 @@
<!-- We already inherit &menuBar.tooltip and &mailToolbar.tooltip from messenger.dtd -->
<!ENTITY addressBar.tooltip "Address Bar">
<!ENTITY formatToolbar.tooltip "Formatting Toolbar">
-<!ENTITY sendButton.tooltip "Send this message now">
-<!ENTITY sendlaterButton.tooltip "Send this message later">
-<!ENTITY addressButton.tooltip "Select a recipient from an Address Book">
-<!ENTITY attachButton.tooltip "Include an attachment">
-<!ENTITY saveButton.tooltip "Save this message">
-<!ENTITY stopButton.tooltip "Stop the current transfer">
+<!ENTITY sendButton.tooltip "Send this message now">
+<!ENTITY sendlaterButton.tooltip "Send this message later">
+<!ENTITY addressButton.tooltip "Select a recipient from an Address Book">
+<!ENTITY attachButton.tooltip "Include an attachment">
+<!ENTITY saveButton.tooltip "Save this message">
+<!ENTITY stopButton.tooltip "Stop the current transfer">
<!-- context menu items -->
<!ENTITY openAttachment.label "Open">
diff --git a/comm/suite/locales/en-US/chrome/mailnews/downloadheaders.dtd b/comm/suite/locales/en-US/chrome/mailnews/downloadheaders.dtd
index a11bba9..405c295 100644
--- a/comm/suite/locales/en-US/chrome/mailnews/downloadheaders.dtd
+++ b/comm/suite/locales/en-US/chrome/mailnews/downloadheaders.dtd
@@ -6,9 +6,9 @@
<!ENTITY all.accesskey "D">
<!--LOCALIZATION NOTE (download.label):
consider the download.label and headers.label as a single sentence
- with the number of headers to be downloaded inserted between them:
- EXAMPLE: "Download" <some number> "headers"
- Either label could be set to null ("") if required grammatically.
+ with the number of headers to be downloaded inserted between them:
+ EXAMPLE: "Download" <some number> "headers"
+ Either label could be set to null ("") if required grammatically.
-->
<!ENTITY download.label "Download">
diff --git a/comm/suite/locales/en-US/chrome/mailnews/fieldMapImport.dtd b/comm/suite/locales/en-US/chrome/mailnews/fieldMapImport.dtd
index 1223e1c..69c17ae 100644
--- a/comm/suite/locales/en-US/chrome/mailnews/fieldMapImport.dtd
+++ b/comm/suite/locales/en-US/chrome/mailnews/fieldMapImport.dtd
@@ -18,5 +18,3 @@
<!ENTITY fieldMapImport.dataTitle "Record data to import">
<!ENTITY fieldMapImport.skipFirstRecord.label "First record contains field names">
<!ENTITY fieldMapImport.skipFirstRecord.accessKey "F">
-
-
diff --git a/comm/suite/locales/en-US/chrome/mailnews/folderpane.dtd b/comm/suite/locales/en-US/chrome/mailnews/folderpane.dtd
index dc1a22e..20d6bb2 100644
--- a/comm/suite/locales/en-US/chrome/mailnews/folderpane.dtd
+++ b/comm/suite/locales/en-US/chrome/mailnews/folderpane.dtd
@@ -1,10 +1,10 @@
<!-- This Source Code Form is subject to the terms of the Mozilla Public
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
-<!ENTITY nameColumn.label "Name">
-<!ENTITY unreadColumn.label "Unread">
-<!ENTITY totalColumn.label "Total">
-<!ENTITY folderSizeColumn.label "Size">
+<!ENTITY nameColumn.label "Name">
+<!ENTITY unreadColumn.label "Unread">
+<!ENTITY totalColumn.label "Total">
+<!ENTITY folderSizeColumn.label "Size">
<!ENTITY folderLocationToolbarItem.title "Folder Location">
<!ENTITY mailViewsToolbarItem.title "Mail Views">
<!ENTITY searchToolbarItem.title "Search">
diff --git a/comm/suite/locales/en-US/chrome/mailnews/importMsgs.properties b/comm/suite/locales/en-US/chrome/mailnews/importMsgs.properties
index af98e8e..e90cefb 100644
--- a/comm/suite/locales/en-US/chrome/mailnews/importMsgs.properties
+++ b/comm/suite/locales/en-US/chrome/mailnews/importMsgs.properties
@@ -3,7 +3,7 @@
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
-# The following are used by the import code to display status/error
+# The following are used by the import code to display status/error
# and informational messages
#
@@ -12,7 +12,7 @@
## @loc None
2000=No address books were found to import.
-# Error: Address book import not intialized
+# Error: Address book import not intialized
## @name IMPORT_ERROR_AB_NOTINITIALIZED
## @loc None
2001=Unable to import address books: initialization error.
@@ -33,7 +33,7 @@
## @loc None
2004=No mailboxes were found to import
-# Error: Mailbox import not intialized
+# Error: Mailbox import not intialized
## @name IMPORT_ERROR_MB_NOTINITIALIZED
## @loc None
2005=Unable to import mailboxes, initialization error
diff --git a/comm/suite/locales/en-US/chrome/mailnews/mailOverlay.dtd b/comm/suite/locales/en-US/chrome/mailnews/mailOverlay.dtd
index 63b8339..9dfb061 100644
--- a/comm/suite/locales/en-US/chrome/mailnews/mailOverlay.dtd
+++ b/comm/suite/locales/en-US/chrome/mailnews/mailOverlay.dtd
@@ -6,9 +6,9 @@
<!ENTITY newMessageCmd.key "M">
<!ENTITY newMessageCmd.label "Message">
<!ENTITY newMessageCmd.accesskey "m">
-
+
<!ENTITY newContactCmd.label "Contact…">
<!ENTITY newContactCmd.accesskey "C">
-
+
<!ENTITY printButton.label "Print">
<!ENTITY printButton.tooltip "Print this message">
diff --git a/comm/suite/locales/en-US/chrome/mailnews/mailTasksOverlay.dtd b/comm/suite/locales/en-US/chrome/mailnews/mailTasksOverlay.dtd
index 7538470..03002d5 100644
--- a/comm/suite/locales/en-US/chrome/mailnews/mailTasksOverlay.dtd
+++ b/comm/suite/locales/en-US/chrome/mailnews/mailTasksOverlay.dtd
@@ -4,12 +4,12 @@
<!-- LOCALIZATION NOTE (messengerCmd.label): DONT_TRANSLATE -->
-<!ENTITY messengerCmd.label "Mail &amp; Newsgroups">
-<!ENTITY messengerCmd.accesskey "m">
-<!ENTITY messengerCmd.commandkey "2">
-<!ENTITY addressBookCmd.label "Address Book">
-<!ENTITY addressBookCmd.accesskey "a">
-<!ENTITY addressBookCmd.commandkey "5">
+<!ENTITY messengerCmd.label "Mail &amp; Newsgroups">
+<!ENTITY messengerCmd.accesskey "m">
+<!ENTITY messengerCmd.commandkey "2">
+<!ENTITY addressBookCmd.label "Address Book">
+<!ENTITY addressBookCmd.accesskey "a">
+<!ENTITY addressBookCmd.commandkey "5">
<!ENTITY taskMessenger.tooltip "Mail &amp; Newsgroups">
<!ENTITY taskAddressBook.tooltip "Address Book">
diff --git a/comm/suite/locales/en-US/chrome/mailnews/mailViewList.dtd b/comm/suite/locales/en-US/chrome/mailnews/mailViewList.dtd
index 01dabeb..f83b7e6 100644
--- a/comm/suite/locales/en-US/chrome/mailnews/mailViewList.dtd
+++ b/comm/suite/locales/en-US/chrome/mailnews/mailViewList.dtd
@@ -6,4 +6,3 @@
<!ENTITY mailViewListTitle.label "Customize Message Views">
<!ENTITY viewName.label "View Name">
-
diff --git a/comm/suite/locales/en-US/chrome/mailnews/mailViewSetup.dtd b/comm/suite/locales/en-US/chrome/mailnews/mailViewSetup.dtd
index 598f7a2..3ebe724 100644
--- a/comm/suite/locales/en-US/chrome/mailnews/mailViewSetup.dtd
+++ b/comm/suite/locales/en-US/chrome/mailnews/mailViewSetup.dtd
@@ -8,4 +8,3 @@
<!ENTITY mailViewHeading.label "Message view name:">
<!ENTITY mailViewHeading.accesskey "e">
<!ENTITY searchTermCaption.label "When this view is selected, display only messages that:">
-
diff --git a/comm/suite/locales/en-US/chrome/mailnews/messenger.dtd b/comm/suite/locales/en-US/chrome/mailnews/messenger.dtd
index 5dc79d5..54fbac6 100644
--- a/comm/suite/locales/en-US/chrome/mailnews/messenger.dtd
+++ b/comm/suite/locales/en-US/chrome/mailnews/messenger.dtd
@@ -58,9 +58,9 @@
<!ENTITY renameFolder.label "Rename Folder…">
<!ENTITY renameFolder.accesskey "R">
<!ENTITY compactFolders.label "Compact Folders">
-<!ENTITY compactFolders.accesskey "F">
+<!ENTITY compactFolders.accesskey "F">
<!ENTITY emptyTrashCmd.label "Empty Trash">
-<!ENTITY emptyTrashCmd.accesskey "y">
+<!ENTITY emptyTrashCmd.accesskey "y">
<!ENTITY offlineMenu.label "Offline">
<!ENTITY offlineMenu.accesskey "l">
<!ENTITY synchronizeOfflineCmd.label "Download/Sync Now…">
@@ -284,23 +284,23 @@
<!ENTITY newNewMsgCmd.accesskey "M">
<!ENTITY replyMsgCmd.label "Reply">
<!ENTITY replyMsgCmd.accesskey "R">
-<!ENTITY replyMsgCmd.key "r">
+<!ENTITY replyMsgCmd.key "r">
<!ENTITY replyListCmd.label "Reply to List">
<!ENTITY replyListCmd.accesskey "y">
<!ENTITY replyNewsgroupCmd.label "Reply to Newsgroup">
-<!ENTITY replyNewsgroupCmd.accesskey "y">
+<!ENTITY replyNewsgroupCmd.accesskey "y">
<!ENTITY replySenderCmd.label "Reply to Sender Only">
<!ENTITY replySenderCmd.accesskey "R">
<!ENTITY replyToAllMsgCmd.label "Reply to All">
-<!ENTITY replyToAllMsgCmd.accesskey "p">
-<!ENTITY replyToAllMsgCmd.key "r">
+<!ENTITY replyToAllMsgCmd.accesskey "p">
+<!ENTITY replyToAllMsgCmd.key "r">
<!ENTITY replyToSenderAndNewsgroupCmd.label "Reply to Sender and Newsgroup">
<!ENTITY replyToSenderAndNewsgroupCmd.accesskey "p">
<!ENTITY replyToAllRecipientsCmd.label "Reply to All Recipients">
<!ENTITY replyToAllRecipientsCmd.accesskey "a">
<!ENTITY forwardMsgCmd.label "Forward">
<!ENTITY forwardMsgCmd.accesskey "F">
-<!ENTITY forwardMsgCmd.key "l">
+<!ENTITY forwardMsgCmd.key "l">
<!ENTITY forwardAsMenu.label "Forward As">
<!ENTITY forwardAsMenu.accesskey "o">
<!ENTITY forwardAsInline.label "Inline">
diff --git a/comm/suite/locales/en-US/chrome/mailnews/msgAccountCentral.dtd b/comm/suite/locales/en-US/chrome/mailnews/msgAccountCentral.dtd
index 0f7618f..e7c99cc 100644
--- a/comm/suite/locales/en-US/chrome/mailnews/msgAccountCentral.dtd
+++ b/comm/suite/locales/en-US/chrome/mailnews/msgAccountCentral.dtd
@@ -2,24 +2,23 @@
- License, v. 2.0. If a copy of the MPL was not distributed with this
- file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
-<!ENTITY emailSectionHdr.label "Email">
-<!ENTITY readMsgsLink.label "Read messages">
-<!ENTITY composeMsgLink.label "Compose a new message">
+<!ENTITY emailSectionHdr.label "Email">
+<!ENTITY readMsgsLink.label "Read messages">
+<!ENTITY composeMsgLink.label "Compose a new message">
-<!ENTITY newsSectionHdr.label "Newsgroups">
-<!ENTITY subscribeNewsLink.label "Manage newsgroup subscriptions">
+<!ENTITY newsSectionHdr.label "Newsgroups">
+<!ENTITY subscribeNewsLink.label "Manage newsgroup subscriptions">
-<!ENTITY accountsSectionHdr.label "Accounts">
-<!ENTITY subscribeImapFolders.label "Manage folder subscriptions">
-<!ENTITY settingsLink.label "View settings for this account">
-<!ENTITY newAcctLink.label "Create a new account">
+<!ENTITY accountsSectionHdr.label "Accounts">
+<!ENTITY subscribeImapFolders.label "Manage folder subscriptions">
+<!ENTITY settingsLink.label "View settings for this account">
+<!ENTITY newAcctLink.label "Create a new account">
-<!ENTITY advFeaturesSectionHdr.label "Advanced Features">
-<!ENTITY searchMsgsLink.label "Search messages">
+<!ENTITY advFeaturesSectionHdr.label "Advanced Features">
+<!ENTITY searchMsgsLink.label "Search messages">
<!ENTITY filtersLink.label "Manage message filters">
<!ENTITY junkSettings.label "Junk mail settings">
<!ENTITY offlineLink.label "Offline settings">
<!ENTITY feedsSectionHdr.label "Feeds">
<!ENTITY subscribeFeeds.label "Manage subscriptions">
-
diff --git a/comm/suite/locales/en-US/chrome/mailnews/msgFolderPickerOverlay.dtd b/comm/suite/locales/en-US/chrome/mailnews/msgFolderPickerOverlay.dtd
index 637dc9e..d4c90f9 100644
--- a/comm/suite/locales/en-US/chrome/mailnews/msgFolderPickerOverlay.dtd
+++ b/comm/suite/locales/en-US/chrome/mailnews/msgFolderPickerOverlay.dtd
@@ -3,5 +3,5 @@
- file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
<!-- Labels -->
-<!ENTITY newfolderchoosethis.label "choose this for the parent">
-<!ENTITY filemessageschoosethis.label "choose this folder">
+<!ENTITY newfolderchoosethis.label "choose this for the parent">
+<!ENTITY filemessageschoosethis.label "choose this folder">
diff --git a/comm/suite/locales/en-US/chrome/mailnews/msgSynchronize.dtd b/comm/suite/locales/en-US/chrome/mailnews/msgSynchronize.dtd
index 9b49928..84bcfc0 100644
--- a/comm/suite/locales/en-US/chrome/mailnews/msgSynchronize.dtd
+++ b/comm/suite/locales/en-US/chrome/mailnews/msgSynchronize.dtd
@@ -20,4 +20,4 @@
<!ENTITY selectButton.accesskey "E">
<!ENTITY MsgSelectDesc.label "Choose mail folders and newsgroups for offline use.">
<!ENTITY MsgSelectInd.label "Download">
-<!ENTITY MsgSelectItems.label "Folders and Newsgroups"> \ No newline at end of file
+<!ENTITY MsgSelectItems.label "Folders and Newsgroups">
diff --git a/comm/suite/locales/en-US/chrome/mailnews/outlookImportMsgs.properties b/comm/suite/locales/en-US/chrome/mailnews/outlookImportMsgs.properties
index cb70a48..c755859 100644
--- a/comm/suite/locales/en-US/chrome/mailnews/outlookImportMsgs.properties
+++ b/comm/suite/locales/en-US/chrome/mailnews/outlookImportMsgs.properties
@@ -3,7 +3,7 @@
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
-# The following are used by the outlook express import code to display status/error
+# The following are used by the outlook express import code to display status/error
# and informational messages
#
@@ -70,8 +70,3 @@
## LOCALIZATION NOTE (2009): In this item, don't translate "%S"
## The variable %S will receive the name of the address book
2009=Error importing address book %S, all addresses may not have been imported.
-
-
-
-
-
diff --git a/comm/suite/locales/en-US/chrome/mailnews/pgpmime.properties b/comm/suite/locales/en-US/chrome/mailnews/pgpmime.properties
index 723578b..17beb4f 100644
--- a/comm/suite/locales/en-US/chrome/mailnews/pgpmime.properties
+++ b/comm/suite/locales/en-US/chrome/mailnews/pgpmime.properties
@@ -9,5 +9,3 @@
# LOCALIZATION NOTE(pgpMimeNeedsAddon): The text can contain HTML tags.
# %S is the url to Enigmail on AMO supplied from preferences.
pgpMimeNeedsAddon=This is an encrypted OpenPGP message.<br>In order to decrypt this mail, you need to install an <a href="%S">OpenPGP add-on</a>.
-
-
diff --git a/comm/suite/locales/en-US/chrome/mailnews/pref/am-server-advanced.dtd b/comm/suite/locales/en-US/chrome/mailnews/pref/am-server-advanced.dtd
index 6abca7c..b06449d 100644
--- a/comm/suite/locales/en-US/chrome/mailnews/pref/am-server-advanced.dtd
+++ b/comm/suite/locales/en-US/chrome/mailnews/pref/am-server-advanced.dtd
@@ -22,7 +22,7 @@
<!ENTITY otherUsersNamespace.accesskey "O">
<!ENTITY overrideNamespaces.label "Allow server to override these namespaces">
<!ENTITY overrideNamespaces.accesskey "A">
-<!ENTITY pop3DeferringDesc.label "When downloading mail from this account's server, use the following folder to store new messages:" >
+<!ENTITY pop3DeferringDesc.label "When downloading mail from this account's server, use the following folder to store new messages:">
<!ENTITY accountInbox.label "Inbox for this account">
<!ENTITY accountInbox.accesskey "s">
<!ENTITY deferToServer.label "Inbox for different account">
diff --git a/comm/suite/locales/en-US/chrome/mailnews/pref/am-server-top.dtd b/comm/suite/locales/en-US/chrome/mailnews/pref/am-server-top.dtd
index a52fdf4..363fe91 100644
--- a/comm/suite/locales/en-US/chrome/mailnews/pref/am-server-top.dtd
+++ b/comm/suite/locales/en-US/chrome/mailnews/pref/am-server-top.dtd
@@ -60,8 +60,8 @@
<!ENTITY loginAtStartup.label "Check for new messages at startup">
<!ENTITY loginAtStartup.accesskey "C">
<!-- LOCALIZATION NOTE (maxMessagesStart.label) : translate below 2 lines with grammar dependency
- maxMessengerStart.label will be followed by maxMessagesEnd.label with the number
- of messages between them
+ maxMessengerStart.label will be followed by maxMessagesEnd.label with the number
+ of messages between them
-->
<!ENTITY maxMessagesStart.label "Ask me before downloading more than">
<!ENTITY maxMessagesStart.accesskey "m">
diff --git a/comm/suite/locales/en-US/chrome/mailnews/pref/pref-directory-add.dtd b/comm/suite/locales/en-US/chrome/mailnews/pref/pref-directory-add.dtd
index a135d3b..2e721ce 100644
--- a/comm/suite/locales/en-US/chrome/mailnews/pref/pref-directory-add.dtd
+++ b/comm/suite/locales/en-US/chrome/mailnews/pref/pref-directory-add.dtd
@@ -34,11 +34,11 @@
<!ENTITY saslMechanism.label "Login method: ">
<!ENTITY saslMechanism.accesskey "m">
<!ENTITY saslOff.label "Simple">
-<!ENTITY saslOff.accesskey "l">
+<!ENTITY saslOff.accesskey "l">
<!ENTITY saslGSSAPI.label "Kerberos (GSSAPI)">
-<!ENTITY saslGSSAPI.accesskey "K">
+<!ENTITY saslGSSAPI.accesskey "K">
-<!-- Localization note: this is here because the width of the dialog
+<!-- Localization note: this is here because the width of the dialog
is determined by the width of the base DN box; and that is likely
to vary somewhat with the language.
-->
diff --git a/comm/suite/locales/en-US/chrome/mailnews/smime.properties b/comm/suite/locales/en-US/chrome/mailnews/smime.properties
index 6370ce7..7bfffdb 100644
--- a/comm/suite/locales/en-US/chrome/mailnews/smime.properties
+++ b/comm/suite/locales/en-US/chrome/mailnews/smime.properties
@@ -7,7 +7,5 @@
#
## @name NS_MSG_UNABLE_TO_OPEN_FILE
-## LOCALIZATION NOTE: the text can contain HTML tags.
+## LOCALIZATION NOTE: the text can contain HTML tags.
1000=This is an <B>ENCRYPTED</B> or <B>SIGNED</B> message.<br> This Mail application does not support encrypted or signed mail.
-
-
diff --git a/comm/suite/locales/en-US/chrome/mailnews/textImportMsgs.properties b/comm/suite/locales/en-US/chrome/mailnews/textImportMsgs.properties
index 714a1250..d7222f2 100644
--- a/comm/suite/locales/en-US/chrome/mailnews/textImportMsgs.properties
+++ b/comm/suite/locales/en-US/chrome/mailnews/textImportMsgs.properties
@@ -3,7 +3,7 @@
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
#
-# The following are used by the outlook express import code to display status/error
+# The following are used by the outlook express import code to display status/error
# and informational messages
#
@@ -41,6 +41,3 @@
## @name TEXTIMPORT_ADDRESS_CONVERTERROR
## @loc None
2006=Error importing address book %S, all addresses may not have been imported.
-
-
-
diff --git a/comm/suite/locales/generic/profile/mimeTypes.rdf b/comm/suite/locales/generic/profile/mimeTypes.rdf
index 10edce3..443dffc 100644
--- a/comm/suite/locales/generic/profile/mimeTypes.rdf
+++ b/comm/suite/locales/generic/profile/mimeTypes.rdf
@@ -73,7 +73,7 @@
an address in a mailto: link:
http://www.example.com/sendmail?link=%s
-->
-
+
<RDF:RDF xmlns:RDF="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:NC="http://home.netscape.com/NC-rdf#">
diff --git a/comm/suite/mailnews/components/addrbook/content/abCardViewOverlay.js b/comm/suite/mailnews/components/addrbook/content/abCardViewOverlay.js
index 26f1506..a54b1f2 100644
--- a/comm/suite/mailnews/components/addrbook/content/abCardViewOverlay.js
+++ b/comm/suite/mailnews/components/addrbook/content/abCardViewOverlay.js
@@ -52,83 +52,83 @@ function OnLoadCardView()
zCustom3 = gAddressBookBundle.getString("propertyCustom3");
zCustom4 = gAddressBookBundle.getString("propertyCustom4");
- var doc = document;
-
- /* data for address book, prefixes: "cvb" = card view box
- "cvh" = crad view header
- "cv" = card view (normal fields) */
- cvData = new Object;
-
- // Card View Box
- cvData.CardViewBox = doc.getElementById("CardViewInnerBox");
- // Title
- cvData.CardTitle = doc.getElementById("CardTitle");
- // Name section
- cvData.cvbContact = doc.getElementById("cvbContact");
- cvData.cvhContact = doc.getElementById("cvhContact");
- cvData.cvNickname = doc.getElementById("cvNickname");
- cvData.cvDisplayName = doc.getElementById("cvDisplayName");
- cvData.cvEmail1Box = doc.getElementById("cvEmail1Box");
- cvData.cvEmail1 = doc.getElementById("cvEmail1");
- cvData.cvScreennameBox = doc.getElementById("cvScreennameBox");
- cvData.cvScreenname = doc.getElementById("cvScreenname");
- cvData.cvBuddyIcon = doc.getElementById("cvBuddyIcon");
- cvData.cvListNameBox = doc.getElementById("cvListNameBox");
- cvData.cvListName = doc.getElementById("cvListName");
- cvData.cvEmail2Box = doc.getElementById("cvEmail2Box");
- cvData.cvEmail2 = doc.getElementById("cvEmail2");
- // Home section
- cvData.cvbHome = doc.getElementById("cvbHome");
- cvData.cvhHome = doc.getElementById("cvhHome");
- cvData.cvHomeAddress = doc.getElementById("cvHomeAddress");
- cvData.cvHomeAddress2 = doc.getElementById("cvHomeAddress2");
- cvData.cvHomeCityStZip = doc.getElementById("cvHomeCityStZip");
- cvData.cvHomeCountry = doc.getElementById("cvHomeCountry");
- cvData.cvbHomeMapItBox = doc.getElementById("cvbHomeMapItBox");
+ var doc = document;
+
+ /* data for address book, prefixes: "cvb" = card view box
+ "cvh" = crad view header
+ "cv" = card view (normal fields) */
+ cvData = new Object;
+
+ // Card View Box
+ cvData.CardViewBox = doc.getElementById("CardViewInnerBox");
+ // Title
+ cvData.CardTitle = doc.getElementById("CardTitle");
+ // Name section
+ cvData.cvbContact = doc.getElementById("cvbContact");
+ cvData.cvhContact = doc.getElementById("cvhContact");
+ cvData.cvNickname = doc.getElementById("cvNickname");
+ cvData.cvDisplayName = doc.getElementById("cvDisplayName");
+ cvData.cvEmail1Box = doc.getElementById("cvEmail1Box");
+ cvData.cvEmail1 = doc.getElementById("cvEmail1");
+ cvData.cvScreennameBox = doc.getElementById("cvScreennameBox");
+ cvData.cvScreenname = doc.getElementById("cvScreenname");
+ cvData.cvBuddyIcon = doc.getElementById("cvBuddyIcon");
+ cvData.cvListNameBox = doc.getElementById("cvListNameBox");
+ cvData.cvListName = doc.getElementById("cvListName");
+ cvData.cvEmail2Box = doc.getElementById("cvEmail2Box");
+ cvData.cvEmail2 = doc.getElementById("cvEmail2");
+ // Home section
+ cvData.cvbHome = doc.getElementById("cvbHome");
+ cvData.cvhHome = doc.getElementById("cvhHome");
+ cvData.cvHomeAddress = doc.getElementById("cvHomeAddress");
+ cvData.cvHomeAddress2 = doc.getElementById("cvHomeAddress2");
+ cvData.cvHomeCityStZip = doc.getElementById("cvHomeCityStZip");
+ cvData.cvHomeCountry = doc.getElementById("cvHomeCountry");
+ cvData.cvbHomeMapItBox = doc.getElementById("cvbHomeMapItBox");
cvData.cvHomeMapIt = doc.getElementById("cvHomeMapIt");
- cvData.cvHomeWebPageBox = doc.getElementById("cvHomeWebPageBox");
- cvData.cvHomeWebPage = doc.getElementById("cvHomeWebPage");
- // Other section
- cvData.cvbOther = doc.getElementById("cvbOther");
- cvData.cvBirthday = doc.getElementById("cvBirthday");
- cvData.cvhOther = doc.getElementById("cvhOther");
- cvData.cvCustom1 = doc.getElementById("cvCustom1");
- cvData.cvCustom2 = doc.getElementById("cvCustom2");
- cvData.cvCustom3 = doc.getElementById("cvCustom3");
- cvData.cvCustom4 = doc.getElementById("cvCustom4");
- cvData.cvNotes = doc.getElementById("cvNotes");
+ cvData.cvHomeWebPageBox = doc.getElementById("cvHomeWebPageBox");
+ cvData.cvHomeWebPage = doc.getElementById("cvHomeWebPage");
+ // Other section
+ cvData.cvbOther = doc.getElementById("cvbOther");
+ cvData.cvBirthday = doc.getElementById("cvBirthday");
+ cvData.cvhOther = doc.getElementById("cvhOther");
+ cvData.cvCustom1 = doc.getElementById("cvCustom1");
+ cvData.cvCustom2 = doc.getElementById("cvCustom2");
+ cvData.cvCustom3 = doc.getElementById("cvCustom3");
+ cvData.cvCustom4 = doc.getElementById("cvCustom4");
+ cvData.cvNotes = doc.getElementById("cvNotes");
// Description section (mailing lists only)
- cvData.cvbDescription = doc.getElementById("cvbDescription");
- cvData.cvhDescription = doc.getElementById("cvhDescription");
- cvData.cvDescription = doc.getElementById("cvDescription");
+ cvData.cvbDescription = doc.getElementById("cvbDescription");
+ cvData.cvhDescription = doc.getElementById("cvhDescription");
+ cvData.cvDescription = doc.getElementById("cvDescription");
// Addresses section (mailing lists only)
- cvData.cvbAddresses = doc.getElementById("cvbAddresses");
- cvData.cvhAddresses = doc.getElementById("cvhAddresses");
- cvData.cvAddresses = doc.getElementById("cvAddresses");
- // Phone section
- cvData.cvbPhone = doc.getElementById("cvbPhone");
- cvData.cvhPhone = doc.getElementById("cvhPhone");
- cvData.cvPhWork = doc.getElementById("cvPhWork");
- cvData.cvPhHome = doc.getElementById("cvPhHome");
- cvData.cvPhFax = doc.getElementById("cvPhFax");
- cvData.cvPhCellular = doc.getElementById("cvPhCellular");
- cvData.cvPhPager = doc.getElementById("cvPhPager");
- // Work section
- cvData.cvbWork = doc.getElementById("cvbWork");
- cvData.cvhWork = doc.getElementById("cvhWork");
- cvData.cvJobTitle = doc.getElementById("cvJobTitle");
- cvData.cvDepartment = doc.getElementById("cvDepartment");
- cvData.cvCompany = doc.getElementById("cvCompany");
- cvData.cvWorkAddress = doc.getElementById("cvWorkAddress");
- cvData.cvWorkAddress2 = doc.getElementById("cvWorkAddress2");
- cvData.cvWorkCityStZip = doc.getElementById("cvWorkCityStZip");
- cvData.cvWorkCountry = doc.getElementById("cvWorkCountry");
- cvData.cvbWorkMapItBox = doc.getElementById("cvbWorkMapItBox");
+ cvData.cvbAddresses = doc.getElementById("cvbAddresses");
+ cvData.cvhAddresses = doc.getElementById("cvhAddresses");
+ cvData.cvAddresses = doc.getElementById("cvAddresses");
+ // Phone section
+ cvData.cvbPhone = doc.getElementById("cvbPhone");
+ cvData.cvhPhone = doc.getElementById("cvhPhone");
+ cvData.cvPhWork = doc.getElementById("cvPhWork");
+ cvData.cvPhHome = doc.getElementById("cvPhHome");
+ cvData.cvPhFax = doc.getElementById("cvPhFax");
+ cvData.cvPhCellular = doc.getElementById("cvPhCellular");
+ cvData.cvPhPager = doc.getElementById("cvPhPager");
+ // Work section
+ cvData.cvbWork = doc.getElementById("cvbWork");
+ cvData.cvhWork = doc.getElementById("cvhWork");
+ cvData.cvJobTitle = doc.getElementById("cvJobTitle");
+ cvData.cvDepartment = doc.getElementById("cvDepartment");
+ cvData.cvCompany = doc.getElementById("cvCompany");
+ cvData.cvWorkAddress = doc.getElementById("cvWorkAddress");
+ cvData.cvWorkAddress2 = doc.getElementById("cvWorkAddress2");
+ cvData.cvWorkCityStZip = doc.getElementById("cvWorkCityStZip");
+ cvData.cvWorkCountry = doc.getElementById("cvWorkCountry");
+ cvData.cvbWorkMapItBox = doc.getElementById("cvbWorkMapItBox");
cvData.cvWorkMapIt = doc.getElementById("cvWorkMapIt");
- cvData.cvWorkWebPageBox = doc.getElementById("cvWorkWebPageBox");
- cvData.cvWorkWebPage = doc.getElementById("cvWorkWebPage");
+ cvData.cvWorkWebPageBox = doc.getElementById("cvWorkWebPageBox");
+ cvData.cvWorkWebPage = doc.getElementById("cvWorkWebPage");
cvData.cvbPhoto = doc.getElementById("cvbPhoto");
- cvData.cvPhoto = doc.getElementById("cvPhoto");
+ cvData.cvPhoto = doc.getElementById("cvPhoto");
}
// XXX todo
@@ -222,22 +222,22 @@ function DisplayCardViewPane(realCard)
visible = HandleLink(data.cvHomeWebPage, "", card.getProperty("WebPage2"), data.cvHomeWebPageBox, card.getProperty("WebPage2")) || visible;
- cvSetVisible(data.cvhHome, visible);
- cvSetVisible(data.cvbHome, visible);
+ cvSetVisible(data.cvhHome, visible);
+ cvSetVisible(data.cvbHome, visible);
if (card.isMailList) {
// Description section
- visible = cvSetNode(data.cvDescription, card.getProperty("Notes"))
- cvSetVisible(data.cvbDescription, visible);
+ visible = cvSetNode(data.cvDescription, card.getProperty("Notes"))
+ cvSetVisible(data.cvbDescription, visible);
// Addresses section
- visible = cvAddAddressNodes(data.cvAddresses, card.mailListURI);
- cvSetVisible(data.cvbAddresses, visible);
+ visible = cvAddAddressNodes(data.cvAddresses, card.mailListURI);
+ cvSetVisible(data.cvbAddresses, visible);
// Other section, not shown for mailing lists.
cvSetVisible(data.cvbOther, false);
}
else {
- // Other section
+ // Other section
/// setup the birthday information
var day = card.getProperty("BirthDay", null);
var month = card.getProperty("BirthMonth", null);
@@ -266,11 +266,11 @@ function DisplayCardViewPane(realCard)
dateStr = year;
visible = cvSetNodeWithLabel(data.cvBirthday, zBirthday, dateStr);
- visible = cvSetNodeWithLabel(data.cvCustom1, zCustom1, card.getProperty("Custom1")) || visible;
- visible = cvSetNodeWithLabel(data.cvCustom2, zCustom2, card.getProperty("Custom2")) || visible;
- visible = cvSetNodeWithLabel(data.cvCustom3, zCustom3, card.getProperty("Custom3")) || visible;
- visible = cvSetNodeWithLabel(data.cvCustom4, zCustom4, card.getProperty("Custom4")) || visible;
- visible = cvSetNode(data.cvNotes, card.getProperty("Notes")) || visible;
+ visible = cvSetNodeWithLabel(data.cvCustom1, zCustom1, card.getProperty("Custom1")) || visible;
+ visible = cvSetNodeWithLabel(data.cvCustom2, zCustom2, card.getProperty("Custom2")) || visible;
+ visible = cvSetNodeWithLabel(data.cvCustom3, zCustom3, card.getProperty("Custom3")) || visible;
+ visible = cvSetNodeWithLabel(data.cvCustom4, zCustom4, card.getProperty("Custom4")) || visible;
+ visible = cvSetNode(data.cvNotes, card.getProperty("Notes")) || visible;
visible = setBuddyIcon(card, data.cvBuddyIcon) || visible;
cvSetVisible(data.cvhOther, visible);
@@ -283,23 +283,23 @@ function DisplayCardViewPane(realCard)
cvSetVisible(data.cvbAddresses, false);
}
- // Phone section
- visible = cvSetNodeWithLabel(data.cvPhWork, zWork, card.getProperty("WorkPhone"));
- visible = cvSetNodeWithLabel(data.cvPhHome, zHome, card.getProperty("HomePhone")) || visible;
- visible = cvSetNodeWithLabel(data.cvPhFax, zFax, card.getProperty("FaxNumber")) || visible;
- visible = cvSetNodeWithLabel(data.cvPhCellular, zCellular, card.getProperty("CellularNumber")) || visible;
- visible = cvSetNodeWithLabel(data.cvPhPager, zPager, card.getProperty("PagerNumber")) || visible;
- cvSetVisible(data.cvhPhone, visible);
- cvSetVisible(data.cvbPhone, visible);
- // Work section
- visible = cvSetNode(data.cvJobTitle, card.getProperty("JobTitle"));
- visible = cvSetNode(data.cvDepartment, card.getProperty("Department")) || visible;
- visible = cvSetNode(data.cvCompany, card.getProperty("Company")) || visible;
-
- var addressVisible = cvSetNode(data.cvWorkAddress, card.getProperty("WorkAddress"));
- addressVisible = cvSetNode(data.cvWorkAddress2, card.getProperty("WorkAddress2")) || addressVisible;
- addressVisible = cvSetCityStateZip(data.cvWorkCityStZip, card.getProperty("WorkCity"), card.getProperty("WorkState"), card.getProperty("WorkZipCode")) || addressVisible;
- addressVisible = cvSetNode(data.cvWorkCountry, card.getProperty("WorkCountry")) || addressVisible;
+ // Phone section
+ visible = cvSetNodeWithLabel(data.cvPhWork, zWork, card.getProperty("WorkPhone"));
+ visible = cvSetNodeWithLabel(data.cvPhHome, zHome, card.getProperty("HomePhone")) || visible;
+ visible = cvSetNodeWithLabel(data.cvPhFax, zFax, card.getProperty("FaxNumber")) || visible;
+ visible = cvSetNodeWithLabel(data.cvPhCellular, zCellular, card.getProperty("CellularNumber")) || visible;
+ visible = cvSetNodeWithLabel(data.cvPhPager, zPager, card.getProperty("PagerNumber")) || visible;
+ cvSetVisible(data.cvhPhone, visible);
+ cvSetVisible(data.cvbPhone, visible);
+ // Work section
+ visible = cvSetNode(data.cvJobTitle, card.getProperty("JobTitle"));
+ visible = cvSetNode(data.cvDepartment, card.getProperty("Department")) || visible;
+ visible = cvSetNode(data.cvCompany, card.getProperty("Company")) || visible;
+
+ var addressVisible = cvSetNode(data.cvWorkAddress, card.getProperty("WorkAddress"));
+ addressVisible = cvSetNode(data.cvWorkAddress2, card.getProperty("WorkAddress2")) || addressVisible;
+ addressVisible = cvSetCityStateZip(data.cvWorkCityStZip, card.getProperty("WorkCity"), card.getProperty("WorkState"), card.getProperty("WorkZipCode")) || addressVisible;
+ addressVisible = cvSetNode(data.cvWorkCountry, card.getProperty("WorkCountry")) || addressVisible;
mapURLList = data.cvWorkMapIt.firstChild;
if (addressVisible)
@@ -309,11 +309,11 @@ function DisplayCardViewPane(realCard)
visible = HandleLink(data.cvWorkWebPage, "", card.getProperty("WebPage1"), data.cvWorkWebPageBox, card.getProperty("WebPage1")) || addressVisible || visible;
- cvSetVisible(data.cvhWork, visible);
- cvSetVisible(data.cvbWork, visible);
+ cvSetVisible(data.cvhWork, visible);
+ cvSetVisible(data.cvbWork, visible);
- // make the card view box visible
- cvSetVisible(top.cvData.CardViewBox, true);
+ // make the card view box visible
+ cvSetVisible(top.cvData.CardViewBox, true);
}
function setBuddyIcon(card, buddyIcon)
@@ -350,7 +350,7 @@ function setBuddyIcon(card, buddyIcon)
function ClearCardViewPane()
{
- cvSetVisible(top.cvData.CardViewBox, false);
+ cvSetVisible(top.cvData.CardViewBox, false);
}
function cvSetNodeWithLabel(node, label, text)
@@ -388,27 +388,27 @@ function cvSetCityStateZip(node, city, state, zip)
function cvSetNode(node, text)
{
- if ( node )
- {
- if ( !node.hasChildNodes() )
- {
- var textNode = document.createTextNode(text);
- node.appendChild(textNode);
- }
- else if ( node.childNodes.length == 1 )
- node.childNodes[0].nodeValue = text;
-
- var visible;
-
- if ( text )
- visible = true;
- else
- visible = false;
-
- cvSetVisible(node, visible);
- }
-
- return visible;
+ if ( node )
+ {
+ if ( !node.hasChildNodes() )
+ {
+ var textNode = document.createTextNode(text);
+ node.appendChild(textNode);
+ }
+ else if ( node.childNodes.length == 1 )
+ node.childNodes[0].nodeValue = text;
+
+ var visible;
+
+ if ( text )
+ visible = true;
+ else
+ visible = false;
+
+ cvSetVisible(node, visible);
+ }
+
+ return visible;
}
function cvAddAddressNodes(node, uri)
@@ -426,7 +426,7 @@ function cvAddAddressNodes(node, uri)
node.lastChild.remove();
}
for (i = 0; i < total; i++ ) {
- var descNode = document.createElement("description");
+ var descNode = document.createElement("description");
var card = addressList.queryElementAt(i, Ci.nsIAbCard);
descNode.setAttribute("class", "CardViewLink");
@@ -450,10 +450,10 @@ function cvAddAddressNodes(node, uri)
function cvSetVisible(node, visible)
{
- if ( visible )
- node.removeAttribute("collapsed");
- else
- node.setAttribute("collapsed", "true");
+ if ( visible )
+ node.removeAttribute("collapsed");
+ else
+ node.setAttribute("collapsed", "true");
}
function HandleLink(node, label, value, box, link)
diff --git a/comm/suite/mailnews/components/addrbook/content/abSelectAddressesDialog.js b/comm/suite/mailnews/components/addrbook/content/abSelectAddressesDialog.js
index 996a1b8..70eee27 100644
--- a/comm/suite/mailnews/components/addrbook/content/abSelectAddressesDialog.js
+++ b/comm/suite/mailnews/components/addrbook/content/abSelectAddressesDialog.js
@@ -29,7 +29,7 @@ var gDragService = Cc["@mozilla.org/widget/dragservice;1"]
.getService(Ci.nsIDragService);
var gSelectAddressesAbViewListener = {
- onSelectionChanged: function() {
+ onSelectionChanged: function() {
ResultsPaneSelectionChanged();
},
onCountChanged: function(total) {
diff --git a/comm/suite/mailnews/components/addrbook/content/addressbook-panel.xul b/comm/suite/mailnews/components/addrbook/content/addressbook-panel.xul
index 1da68d3..0e93c6f 100644
--- a/comm/suite/mailnews/components/addrbook/content/addressbook-panel.xul
+++ b/comm/suite/mailnews/components/addrbook/content/addressbook-panel.xul
@@ -58,21 +58,21 @@
</menupopup>
<vbox id="results_box" flex="1">
<hbox id="panel-bar" class="toolbar" align="center">
- <label value="&lookIn.label;" control="addressbookList" id="lookInLabel"/>
+ <label value="&lookIn.label;" control="addressbookList" id="lookInLabel"/>
<menulist id="addressbookList"
oncommand="DirPaneSelectionChangeMenulist();" flex="1"
persist="value">
<menupopup id="addressbookList-menupopup" class="addrbooksPopup"/>
</menulist>
</hbox>
- <hbox align="center">
- <label value="&for.label;" id="forLabel" control="searchInput"/>
- <textbox id="searchInput" flex="1" type="search"
+ <hbox align="center">
+ <label value="&for.label;" id="forLabel" control="searchInput"/>
+ <textbox id="searchInput" flex="1" type="search"
aria-labelledby="lookInLabel addressbookList forLabel"
aria-controls="abResultsTree"
placeholder="&for.placeholder;"
oncommand="onEnterInSearchBar();" clickSelectsAll="true"/>
- </hbox>
+ </hbox>
<tree id="abResultsTree" flex="1" context="composeMail" onclick="AbResultsPaneOnClick(event);" class="plain"
sortCol="GeneratedName" persist="sortCol">
diff --git a/comm/suite/mailnews/components/addrbook/content/addressbook.js b/comm/suite/mailnews/components/addrbook/content/addressbook.js
index 7b28dcc..bcec7d3 100644
--- a/comm/suite/mailnews/components/addrbook/content/addressbook.js
+++ b/comm/suite/mailnews/components/addrbook/content/addressbook.js
@@ -56,7 +56,7 @@ function OnLoadAddressBook()
{
gSearchInput = document.getElementById("searchInput");
- verifyAccounts(null, false); // this will do migration, if we need to.
+ verifyAccounts(null, false); // this will do migration, if we need to.
InitCommonJS();
@@ -100,25 +100,25 @@ function OnLoadAddressBook()
function GetCurrentPrefs()
{
- // check "Show Name As" menu item based on pref
- var menuitemID;
- switch (Services.prefs.getIntPref(kPrefMailAddrBookLastNameFirst))
- {
- case kFirstNameFirst:
- menuitemID = 'firstLastCmd';
- break;
- case kLastNameFirst:
- menuitemID = 'lastFirstCmd';
- break;
- case kDisplayName:
- default:
- menuitemID = 'displayNameCmd';
- break;
- }
-
- var menuitem = top.document.getElementById(menuitemID);
- if ( menuitem )
- menuitem.setAttribute('checked', 'true');
+ // check "Show Name As" menu item based on pref
+ var menuitemID;
+ switch (Services.prefs.getIntPref(kPrefMailAddrBookLastNameFirst))
+ {
+ case kFirstNameFirst:
+ menuitemID = 'firstLastCmd';
+ break;
+ case kLastNameFirst:
+ menuitemID = 'lastFirstCmd';
+ break;
+ case kDisplayName:
+ default:
+ menuitemID = 'displayNameCmd';
+ break;
+ }
+
+ var menuitem = top.document.getElementById(menuitemID);
+ if ( menuitem )
+ menuitem.setAttribute('checked', 'true');
// show phonetic fields if indicated by the pref
if (GetLocalizedStringPref("mail.addr_book.show_phonetic_fields") == "true")
@@ -210,10 +210,10 @@ function AbPrintCardInternal(doPrintPreview, msgType)
}
printEngineWindow = window.openDialog("chrome://messenger/content/msgPrintEngine.xul",
- "",
- "chrome,dialog=no,all",
- selectionArray.length, selectionArray,
- statusFeedback, doPrintPreview, msgType);
+ "",
+ "chrome,dialog=no,all",
+ selectionArray.length, selectionArray,
+ statusFeedback, doPrintPreview, msgType);
return;
}
@@ -240,8 +240,8 @@ function AbPrintAddressBookInternal(doPrintPreview, msgType)
return;
var statusFeedback;
- statusFeedback = Cc["@mozilla.org/messenger/statusfeedback;1"].createInstance();
- statusFeedback = statusFeedback.QueryInterface(Ci.nsIMsgStatusFeedback);
+ statusFeedback = Cc["@mozilla.org/messenger/statusfeedback;1"].createInstance();
+ statusFeedback = statusFeedback.QueryInterface(Ci.nsIMsgStatusFeedback);
/*
turn "moz-abmdbdirectory://abook.mab" into
@@ -251,12 +251,13 @@ function AbPrintAddressBookInternal(doPrintPreview, msgType)
var abURIArr = uri.split("://");
var printUrl = "addbook://" + abURIArr[0] + "/" + abURIArr[1] + "?action=print"
- printEngineWindow = window.openDialog("chrome://messenger/content/msgPrintEngine.xul",
- "",
- "chrome,dialog=no,all",
- 1, [printUrl], statusFeedback, doPrintPreview, msgType);
+ printEngineWindow = window.openDialog("chrome://messenger/content/msgPrintEngine.xul",
+ "",
+ "chrome,dialog=no,all",
+ 1, [printUrl],
+ statusFeedback, doPrintPreview, msgType);
- return;
+ return;
}
function AbPrintAddressBook()
diff --git a/comm/suite/mailnews/components/compose/content/addressingWidgetOverlay.js b/comm/suite/mailnews/components/compose/content/addressingWidgetOverlay.js
index e0db5f4..93cbfbc 100644
--- a/comm/suite/mailnews/components/compose/content/addressingWidgetOverlay.js
+++ b/comm/suite/mailnews/components/compose/content/addressingWidgetOverlay.js
@@ -728,9 +728,9 @@ function awRecipientErrorCommand(errItem, element)
//
var generalErrString;
if (errItem.value != "") {
- generalErrString = errItem.value.slice(1, errItem.value.length-1);
+ generalErrString = errItem.value.slice(1, errItem.value.length-1);
} else {
- generalErrString = "Unknown LDAP server problem encountered";
+ generalErrString = "Unknown LDAP server problem encountered";
}
// try and get the string of the specific error to contruct the complete
@@ -741,13 +741,12 @@ function awRecipientErrorCommand(errItem, element)
//
var specificErrString = "";
try {
- var specificError = errItem.param.QueryInterface(
- Ci.nsISupportsString);
- specificErrString = specificError.data;
+ var specificError = errItem.param.QueryInterface(Ci.nsISupportsString);
+ specificErrString = specificError.data;
} catch (ex) {
}
if (specificErrString == "") {
- specificErrString = "Internal error";
+ specificErrString = "Internal error";
}
Services.prompt.alert(window, generalErrString, specificErrString);
diff --git a/comm/suite/mailnews/components/compose/content/addressingWidgetOverlay.xul b/comm/suite/mailnews/components/compose/content/addressingWidgetOverlay.xul
deleted file mode 100644
index e937050..0000000
--- a/comm/suite/mailnews/components/compose/content/addressingWidgetOverlay.xul
+++ /dev/null
@@ -1,65 +0,0 @@
-<?xml version="1.0"?>
-<!-- This Source Code Form is subject to the terms of the Mozilla Public
- - License, v. 2.0. If a copy of the MPL was not distributed with this
- - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
-
-<!DOCTYPE overlay SYSTEM "chrome://messenger/locale/messengercompose/addressingWidgetOverlay.dtd">
-
-
-<overlay xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
- xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
-
-<script type="application/javascript" src="chrome://messenger/content/messengercompose/addressingWidgetOverlay.js"/>
-<script type="application/javascript" src="chrome://messenger/content/addressbook/abDragDrop.js"/>
-
- <!-- Addressing Widget -->
- <listbox id="addressingWidget" seltype="multiple" rows="4"
- onkeydown="awKeyDown(event, this)"
- onclick="awClickEmptySpace(event.originalTarget, true)"
- ondragover="DragAddressOverTargetControl(event);"
- ondrop="DropAddressOverTargetControl(event);">
-
- <listcols>
- <listcol id="typecol-addressingWidget"/>
- <listcol id="textcol-addressingWidget" flex="1"/>
- </listcols>
-
- <listitem class="addressingWidgetItem" allowevents="true">
- <listcell class="addressingWidgetCell" align="stretch">
- <menulist id="addressCol1#1" disableonsend="true"
- class="aw-menulist menulist-compact" flex="1"
- onkeypress="awMenulistKeyPress(event, this)"
- oncommand="gContentChanged=true; awSetAutoComplete(this.id.slice(this.id.lastIndexOf('#') + 1));">
- <menupopup>
- <menuitem value="addr_to" label="&toAddr.label;"/>
- <menuitem value="addr_cc" label="&ccAddr.label;"/>
- <menuitem value="addr_bcc" label="&bccAddr.label;"/>
- <menuitem value="addr_reply" label="&replyAddr.label;"/>
- <menuitem value="addr_newsgroups" label="&newsgroupsAddr.label;"/>
- <menuitem value="addr_followup" label="&followupAddr.label;"/>
- </menupopup>
- </menulist>
- </listcell>
-
- <listcell class="addressingWidgetCell">
- <textbox id="addressCol2#1" class="plain textbox-addressingWidget uri-element"
- aria-labelledby="addressCol1#1"
- type="autocomplete" flex="1" maxrows="4"
- newlines="replacewithcommas"
- autocompletesearch="mydomain addrbook ldap news" timeout="300"
- autocompletesearchparam="{}"
- completedefaultindex="true" forcecomplete="true"
- minresultsforpopup="2" ignoreblurwhilesearching="true"
- ontextentered="awRecipientTextCommand(eventParam, this)"
- onerrorcommand="awRecipientErrorCommand(eventParam, this)"
- oninput="gContentChanged=true; setupAutocomplete();" disableonsend="true"
- onkeypress="awRecipientKeyPress(event, this)"
- onkeydown="awRecipientKeyDown(event, this)">
- <image class="person-icon" onclick="this.parentNode.select();"/>
- </textbox>
- </listcell>
- </listitem>
-
- </listbox>
-
-</overlay>
diff --git a/comm/suite/mailnews/components/compose/content/mailComposeExtrasOverlay.xul b/comm/suite/mailnews/components/compose/content/mailComposeExtrasOverlay.xul
deleted file mode 100644
index f27e272..0000000
--- a/comm/suite/mailnews/components/compose/content/mailComposeExtrasOverlay.xul
+++ /dev/null
@@ -1,12 +0,0 @@
-<!-- This Source Code Form is subject to the terms of the Mozilla Public
- - License, v. 2.0. If a copy of the MPL was not distributed with this
- - file, You can obtain one at http://mozilla.org/MPL/2.0/. -->
-
-<overlay
- xmlns:nc="http://home.netscape.com/NC-rdf#"
- xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
-
-<!-- plug in your mail compose window extras here.
- see http://www.mozilla.org/mailnews/arch/composewindowextras.html -->
-
-</overlay>
diff --git a/comm/suite/mailnews/components/compose/content/messengercompose.xul b/comm/suite/mailnews/components/compose/content/messengercompose.xul
index a31aa54..a38b51c 100644
--- a/comm/suite/mailnews/components/compose/content/messengercompose.xul
+++ b/comm/suite/mailnews/components/compose/content/messengercompose.xul
@@ -13,18 +13,18 @@
<?xul-overlay href="chrome://communicator/content/sidebar/sidebarOverlay.xul"?>
<?xul-overlay href="chrome://communicator/content/contentAreaContextOverlay.xul"?>
<?xul-overlay href="chrome://messenger/content/messengercompose/msgComposeContextOverlay.xul"?>
-<?xul-overlay href="chrome://messenger/content/messengercompose/addressingWidgetOverlay.xul"?>
<?xul-overlay href="chrome://communicator/content/utilityOverlay.xul"?>
<?xul-overlay href="chrome://editor/content/editorOverlay.xul"?>
<?xul-overlay href="chrome://editor/content/editorSmileyOverlay.xul"?>
<?xul-overlay href="chrome://messenger/content/messengercompose/mailComposeOverlay.xul"?>
-<?xul-overlay href="chrome://messenger/content/messengercompose/mailComposeExtrasOverlay.xul"?>
<?xul-overlay href="chrome://messenger/content/mailOverlay.xul"?>
<?xul-overlay href="chrome://messenger/content/platformMailnewsOverlay.xul"?>
<!DOCTYPE window [
<!ENTITY % messengercomposeDTD SYSTEM "chrome://messenger/locale/messengercompose/messengercompose.dtd" >
%messengercomposeDTD;
+<!ENTITY % addressingWidgetDTD SYSTEM "chrome://messenger/locale/messengercompose/addressingWidgetOverlay.dtd" >
+%addressingWidgetDTD;
<!ENTITY % messengerDTD SYSTEM "chrome://messenger/locale/messenger.dtd" >
%messengerDTD;
<!ENTITY % brandDTD SYSTEM "chrome://branding/locale/brand.dtd" >
@@ -68,9 +68,11 @@
<script type="application/javascript" src="chrome://messenger/content/mail-offline.js"/>
<script type="application/javascript" src="chrome://editor/content/editor.js"/>
<script type="application/javascript" src="chrome://messenger/content/messengercompose/MsgComposeCommands.js"/>
+ <script type="application/javascript" src="chrome://messenger/content/messengercompose/addressingWidgetOverlay.js"/>
<!-- drag and drop -->
<script type="application/javascript" src="chrome://global/content/nsDragAndDrop.js"/>
+ <script type="application/javascript" src="chrome://messenger/content/addressbook/abDragDrop.js"/>
<commandset id="composeCommands">
<commandset id="msgComposeCommandUpdate"
@@ -563,7 +565,60 @@
<menupopup id="msgIdentityPopup"/>
</menulist>
</hbox>
- <listbox id="addressingWidget" flex="1"/>
+ <!-- Addressing Widget -->
+ <listbox id="addressingWidget" flex="1"
+ seltype="multiple" rows="4"
+ onkeydown="awKeyDown(event, this);"
+ onclick="awClickEmptySpace(event.originalTarget, true);"
+ ondragover="DragAddressOverTargetControl(event);"
+ ondrop="DropAddressOverTargetControl(event);">
+
+ <listcols>
+ <listcol id="typecol-addressingWidget"/>
+ <listcol id="textcol-addressingWidget" flex="1"/>
+ </listcols>
+
+ <listitem class="addressingWidgetItem" allowevents="true">
+ <listcell class="addressingWidgetCell" align="stretch">
+ <menulist id="addressCol1#1" disableonsend="true"
+ class="aw-menulist menulist-compact" flex="1"
+ onkeypress="awMenulistKeyPress(event, this);"
+ oncommand="gContentChanged=true; awSetAutoComplete(this.id.slice(this.id.lastIndexOf('#') + 1));">
+ <menupopup>
+ <menuitem value="addr_to" label="&toAddr.label;"/>
+ <menuitem value="addr_cc" label="&ccAddr.label;"/>
+ <menuitem value="addr_bcc" label="&bccAddr.label;"/>
+ <menuitem value="addr_reply" label="&replyAddr.label;"/>
+ <menuitem value="addr_newsgroups"
+ label="&newsgroupsAddr.label;"/>
+ <menuitem value="addr_followup"
+ label="&followupAddr.label;"/>
+ </menupopup>
+ </menulist>
+ </listcell>
+
+ <listcell class="addressingWidgetCell">
+ <textbox id="addressCol2#1"
+ class="plain textbox-addressingWidget uri-element"
+ aria-labelledby="addressCol1#1"
+ type="autocomplete" flex="1" maxrows="4"
+ newlines="replacewithcommas"
+ autocompletesearch="mydomain addrbook ldap news"
+ timeout="300" autocompletesearchparam="{}"
+ completedefaultindex="true" forcecomplete="true"
+ minresultsforpopup="2" ignoreblurwhilesearching="true"
+ ontextentered="awRecipientTextCommand(eventParam, this);"
+ onerrorcommand="awRecipientErrorCommand(eventParam, this);"
+ oninput="gContentChanged=true; setupAutocomplete();"
+ disableonsend="true"
+ onkeypress="awRecipientKeyPress(event, this);"
+ onkeydown="awRecipientKeyDown(event, this);">
+ <image class="person-icon"
+ onclick="this.parentNode.select();"/>
+ </textbox>
+ </listcell>
+ </listitem>
+ </listbox>
<hbox align="center">
<label value="&subject.label;" accesskey="&subject.accesskey;" control="msgSubject"/>
<textbox id="msgSubject" flex="1" class="toolbar" disableonsend="true"
diff --git a/comm/suite/mailnews/components/compose/content/prefs/pref-composing_messages.xul b/comm/suite/mailnews/components/compose/content/prefs/pref-composing_messages.xul
index c18760d..c6f3b4f 100644
--- a/comm/suite/mailnews/components/compose/content/prefs/pref-composing_messages.xul
+++ b/comm/suite/mailnews/components/compose/content/prefs/pref-composing_messages.xul
@@ -164,7 +164,7 @@
</menupopup>
</menulist>
</row>
- <row align="center">
+ <row align="center">
<label value="&size.label;"
accesskey="&size.accesskey;"
control="fontSizeSelect"/>
diff --git a/comm/suite/mailnews/components/compose/jar.mn b/comm/suite/mailnews/components/compose/jar.mn
index d884591..66fff95 100644
--- a/comm/suite/mailnews/components/compose/jar.mn
+++ b/comm/suite/mailnews/components/compose/jar.mn
@@ -13,5 +13,3 @@ messenger.jar:
content/messenger/messengercompose/msgComposeContextOverlay.xul (content/msgComposeContextOverlay.xul)
content/messenger/messengercompose/MsgComposeCommands.js (content/MsgComposeCommands.js)
content/messenger/messengercompose/addressingWidgetOverlay.js (content/addressingWidgetOverlay.js)
- content/messenger/messengercompose/addressingWidgetOverlay.xul (content/addressingWidgetOverlay.xul)
- content/messenger/messengercompose/mailComposeExtrasOverlay.xul (content/mailComposeExtrasOverlay.xul)
diff --git a/comm/suite/mailnews/content/FilterListDialog.js b/comm/suite/mailnews/content/FilterListDialog.js
index 282ba09..16cb8ab 100644
--- a/comm/suite/mailnews/content/FilterListDialog.js
+++ b/comm/suite/mailnews/content/FilterListDialog.js
@@ -21,18 +21,18 @@ var gStatusText;
var gCurrentFolder;
var gStatusFeedback = {
- showStatusString: function(status)
+ showStatusString: function(status)
{
gStatusText.setAttribute("value", status);
},
- startMeteors: function()
+ startMeteors: function()
{
// change run button to be a stop button
gRunFiltersButton.setAttribute("label", gRunFiltersButton.getAttribute("stoplabel"));
gRunFiltersButton.setAttribute("accesskey", gRunFiltersButton.getAttribute("stopaccesskey"));
gStatusBar.setAttribute("mode", "undetermined");
},
- stopMeteors: function()
+ stopMeteors: function()
{
try {
// change run button to be a stop button
diff --git a/comm/suite/mailnews/content/mac/platformMailnewsOverlay.xul b/comm/suite/mailnews/content/mac/platformMailnewsOverlay.xul
index 6cabb9e..1f982cc 100644
--- a/comm/suite/mailnews/content/mac/platformMailnewsOverlay.xul
+++ b/comm/suite/mailnews/content/mac/platformMailnewsOverlay.xul
@@ -11,7 +11,7 @@
<!-- Delete Key -->
<!-- not all Mac keyboards have a VK_DELETE key, so we use VK_BACK as
the primary and provide VK_DELETE as a secondary key definition -->
- <key id="key_shiftDelete" keycode="VK_BACK" modifiers="shift" command="cmd_shiftDelete"/>
- <key id="key_shiftDelete2" keycode="VK_DELETE" modifiers="shift" command="cmd_shiftDelete"/>
+ <key id="key_shiftDelete" keycode="VK_BACK" modifiers="shift" command="cmd_shiftDelete"/>
+ <key id="key_shiftDelete2" keycode="VK_DELETE" modifiers="shift" command="cmd_shiftDelete"/>
</overlay>
diff --git a/comm/suite/mailnews/content/mail3PaneWindowCommands.js b/comm/suite/mailnews/content/mail3PaneWindowCommands.js
index 0069569..10df019 100644
--- a/comm/suite/mailnews/content/mail3PaneWindowCommands.js
+++ b/comm/suite/mailnews/content/mail3PaneWindowCommands.js
@@ -6,62 +6,62 @@
// Controller object for folder pane
var FolderPaneController =
{
- supportsCommand: function(command)
- {
- switch ( command )
- {
- case "cmd_delete":
- case "cmd_shiftDelete":
- case "button_delete":
- case "button_shiftDelete":
- //case "cmd_selectAll": the folder pane currently only handles single selection
- case "cmd_cut":
- case "cmd_copy":
- case "cmd_paste":
- return true;
-
- default:
- return false;
- }
- },
-
- isCommandEnabled: function(command)
- {
- switch ( command )
- {
- case "cmd_cut":
- case "cmd_copy":
- case "cmd_paste":
- return false;
- case "cmd_delete":
- case "cmd_shiftDelete":
- case "button_delete":
+ supportsCommand: function(command)
+ {
+ switch ( command )
+ {
+ case "cmd_delete":
+ case "cmd_shiftDelete":
+ case "button_delete":
+ case "button_shiftDelete":
+ //case "cmd_selectAll": the folder pane currently only handles single selection
+ case "cmd_cut":
+ case "cmd_copy":
+ case "cmd_paste":
+ return true;
+
+ default:
+ return false;
+ }
+ },
+
+ isCommandEnabled: function(command)
+ {
+ switch ( command )
+ {
+ case "cmd_cut":
+ case "cmd_copy":
+ case "cmd_paste":
+ return false;
+ case "cmd_delete":
+ case "cmd_shiftDelete":
+ case "button_delete":
// Make sure the button doesn't show "Undelete" for folders.
if (command == "button_delete")
UpdateDeleteToolbarButton(true);
- case "button_shiftDelete":
- if ( command == "cmd_delete" )
- goSetMenuValue(command, 'valueFolder');
+ case "button_shiftDelete":
+ if ( command == "cmd_delete" )
+ goSetMenuValue(command, 'valueFolder');
let folders = GetSelectedMsgFolders();
if (folders.length) {
var canDeleteThisFolder;
- var specialFolder = null;
- var isServer = null;
- try {
+ var specialFolder = null;
+ var isServer = null;
+ try {
let folder = folders[0];
specialFolder = getSpecialFolderString(folder);
isServer = folder.isServer;
if (folder.server.type == "nntp") {
- if ( command == "cmd_delete" ) {
- goSetMenuValue(command, 'valueNewsgroup');
- goSetAccessKey(command, 'valueNewsgroupAccessKey');
+ if ( command == "cmd_delete" ) {
+ goSetMenuValue(command, 'valueNewsgroup');
+ goSetAccessKey(command, 'valueNewsgroupAccessKey');
}
}
- }
- catch (ex) {
- //dump("specialFolder failure: " + ex + "\n");
- }
+ }
+ catch (ex) {
+ //dump("specialFolder failure: " + ex + "\n");
+ }
if (specialFolder == "Inbox" || specialFolder == "Trash" || specialFolder == "Drafts" ||
specialFolder == "Sent" || specialFolder == "Templates" || specialFolder == "Outbox" ||
(specialFolder == "Junk" && !CanRenameDeleteJunkMail(GetSelectedFolderURI())) || isServer)
@@ -70,120 +70,120 @@ var FolderPaneController =
canDeleteThisFolder = true;
return canDeleteThisFolder && isCommandEnabled(command);
}
- else
- return false;
+ else
+ return false;
- default:
- return false;
- }
- },
+ default:
+ return false;
+ }
+ },
- doCommand: function(command)
- {
+ doCommand: function(command)
+ {
// if the user invoked a key short cut then it is possible that we got here for a command which is
// really disabled. kick out if the command should be disabled.
if (!this.isCommandEnabled(command)) return;
- switch ( command )
- {
- case "cmd_delete":
- case "cmd_shiftDelete":
- case "button_delete":
- case "button_shiftDelete":
- MsgDeleteFolder();
- break;
- }
- },
-
- onEvent: function(event)
- {
- }
+ switch ( command )
+ {
+ case "cmd_delete":
+ case "cmd_shiftDelete":
+ case "button_delete":
+ case "button_shiftDelete":
+ MsgDeleteFolder();
+ break;
+ }
+ },
+
+ onEvent: function(event)
+ {
+ }
};
// DefaultController object (handles commands when one of the trees does not have focus)
var DefaultController =
{
- supportsCommand: function(command)
- {
+ supportsCommand: function(command)
+ {
- switch ( command )
- {
+ switch ( command )
+ {
case "cmd_createFilterFromPopup":
case "cmd_archive":
- case "cmd_reply":
- case "button_reply":
- case "cmd_replyList":
- case "cmd_replyGroup":
- case "cmd_replySender":
- case "cmd_replyall":
- case "button_replyall":
+ case "cmd_reply":
+ case "button_reply":
+ case "cmd_replyList":
+ case "cmd_replyGroup":
+ case "cmd_replySender":
+ case "cmd_replyall":
+ case "button_replyall":
case "cmd_replySenderAndGroup":
case "cmd_replyAllRecipients":
- case "cmd_forward":
- case "button_forward":
- case "cmd_forwardInline":
- case "cmd_forwardAttachment":
- case "cmd_editAsNew":
+ case "cmd_forward":
+ case "button_forward":
+ case "cmd_forwardInline":
+ case "cmd_forwardAttachment":
+ case "cmd_editAsNew":
case "cmd_createFilterFromMenu":
case "cmd_delete":
case "cmd_shiftDelete":
case "button_delete":
case "button_shiftDelete":
case "button_junk":
- case "cmd_nextMsg":
+ case "cmd_nextMsg":
case "button_next":
- case "cmd_nextUnreadMsg":
- case "cmd_nextFlaggedMsg":
- case "cmd_nextUnreadThread":
- case "cmd_previousMsg":
- case "cmd_previousUnreadMsg":
- case "cmd_previousFlaggedMsg":
+ case "cmd_nextUnreadMsg":
+ case "cmd_nextFlaggedMsg":
+ case "cmd_nextUnreadThread":
+ case "cmd_previousMsg":
+ case "cmd_previousUnreadMsg":
+ case "cmd_previousFlaggedMsg":
case "button_goBack":
case "cmd_goBack":
case "button_goForward":
case "cmd_goForward":
case "cmd_goStartPage":
- case "cmd_viewAllMsgs":
- case "cmd_viewUnreadMsgs":
+ case "cmd_viewAllMsgs":
+ case "cmd_viewUnreadMsgs":
case "cmd_viewThreadsWithUnread":
case "cmd_viewWatchedThreadsWithUnread":
case "cmd_viewIgnoredThreads":
case "cmd_stop":
case "cmd_undo":
case "cmd_redo":
- case "cmd_expandAllThreads":
- case "cmd_collapseAllThreads":
- case "cmd_renameFolder":
- case "cmd_sendUnsentMsgs":
+ case "cmd_expandAllThreads":
+ case "cmd_collapseAllThreads":
+ case "cmd_renameFolder":
+ case "cmd_sendUnsentMsgs":
case "cmd_subscribe":
case "cmd_openMessage":
case "button_print":
- case "cmd_print":
- case "cmd_printpreview":
- case "cmd_printSetup":
- case "cmd_saveAsFile":
- case "cmd_saveAsTemplate":
+ case "cmd_print":
+ case "cmd_printpreview":
+ case "cmd_printSetup":
+ case "cmd_saveAsFile":
+ case "cmd_saveAsTemplate":
case "cmd_properties":
- case "cmd_viewPageSource":
- case "cmd_setFolderCharset":
- case "cmd_reload":
+ case "cmd_viewPageSource":
+ case "cmd_setFolderCharset":
+ case "cmd_reload":
case "button_getNewMessages":
- case "cmd_getNewMessages":
+ case "cmd_getNewMessages":
case "cmd_getMsgsForAuthAccounts":
- case "cmd_getNextNMessages":
- case "cmd_find":
+ case "cmd_getNextNMessages":
+ case "cmd_find":
case "cmd_findNext":
- case "cmd_findPrev":
+ case "cmd_findPrev":
case "button_search":
case "cmd_search":
case "button_mark":
- case "cmd_markAsRead":
- case "cmd_markAllRead":
- case "cmd_markThreadAsRead":
- case "cmd_markReadByDate":
- case "cmd_markAsFlagged":
- case "cmd_markAsJunk":
- case "cmd_markAsNotJunk":
+ case "cmd_markAsRead":
+ case "cmd_markAllRead":
+ case "cmd_markThreadAsRead":
+ case "cmd_markReadByDate":
+ case "cmd_markAsFlagged":
+ case "cmd_markAsJunk":
+ case "cmd_markAsNotJunk":
case "cmd_recalculateJunkScore":
case "cmd_markAsShowRemote":
case "cmd_markAsNotPhish":
@@ -193,29 +193,27 @@ var DefaultController =
case "cmd_runJunkControls":
case "cmd_deleteJunk":
case "button_file":
- case "cmd_emptyTrash":
- case "cmd_compactFolder":
- case "cmd_settingsOffline":
+ case "cmd_emptyTrash":
+ case "cmd_compactFolder":
+ case "cmd_settingsOffline":
case "cmd_close":
case "cmd_selectAll":
case "cmd_selectThread":
case "cmd_selectFlagged":
- return true;
+ return true;
case "cmd_downloadFlagged":
case "cmd_downloadSelected":
case "cmd_synchronizeOffline":
return !Services.io.offline;
-
case "cmd_watchThread":
case "cmd_killThread":
case "cmd_killSubthread":
case "cmd_cancel":
return gFolderDisplay.selectedMessageIsNews;
-
- default:
- return false;
- }
- },
+ default:
+ return false;
+ }
+ },
isCommandEnabled: function(command)
{
@@ -304,7 +302,7 @@ var DefaultController =
}
return false;
case "cmd_printpreview":
- if ( GetNumSelectedMessages() == 1 && gDBView)
+ if ( GetNumSelectedMessages() == 1 && gDBView)
{
gDBView.getCommandStatus(nsMsgViewCommandType.cmdRequiringMsgBody, enabled, checkStatus);
return enabled.value;
@@ -462,51 +460,51 @@ var DefaultController =
MsgCloseCurrentTab();
break;
case "button_getNewMessages":
- case "cmd_getNewMessages":
- MsgGetMessage();
- break;
+ case "cmd_getNewMessages":
+ MsgGetMessage();
+ break;
case "cmd_getMsgsForAuthAccounts":
MsgGetMessagesForAllAuthenticatedAccounts();
break;
- case "cmd_getNextNMessages":
- MsgGetNextNMessages();
- break;
- case "cmd_archive":
- MsgArchiveSelectedMessages(null);
- break;
- case "cmd_reply":
- MsgReplyMessage(null);
- break;
- case "cmd_replyList":
- MsgReplyList(null);
- break;
- case "cmd_replyGroup":
- MsgReplyGroup(null);
- break;
- case "cmd_replySender":
- MsgReplySender(null);
- break;
- case "cmd_replyall":
- MsgReplyToAllMessage(null);
- break;
+ case "cmd_getNextNMessages":
+ MsgGetNextNMessages();
+ break;
+ case "cmd_archive":
+ MsgArchiveSelectedMessages(null);
+ break;
+ case "cmd_reply":
+ MsgReplyMessage(null);
+ break;
+ case "cmd_replyList":
+ MsgReplyList(null);
+ break;
+ case "cmd_replyGroup":
+ MsgReplyGroup(null);
+ break;
+ case "cmd_replySender":
+ MsgReplySender(null);
+ break;
+ case "cmd_replyall":
+ MsgReplyToAllMessage(null);
+ break;
case "cmd_replySenderAndGroup":
MsgReplyToSenderAndGroup(null);
break;
case "cmd_replyAllRecipients":
MsgReplyToAllRecipients(null);
break;
- case "cmd_forward":
- MsgForwardMessage(null);
- break;
- case "cmd_forwardInline":
- MsgForwardAsInline(null);
- break;
- case "cmd_forwardAttachment":
- MsgForwardAsAttachment(null);
- break;
- case "cmd_editAsNew":
- MsgEditMessageAsNew();
- break;
+ case "cmd_forward":
+ MsgForwardMessage(null);
+ break;
+ case "cmd_forwardInline":
+ MsgForwardAsInline(null);
+ break;
+ case "cmd_forwardAttachment":
+ MsgForwardAsAttachment(null);
+ break;
+ case "cmd_editAsNew":
+ MsgEditMessageAsNew();
+ break;
case "cmd_createFilterFromMenu":
MsgCreateFilter();
break;
@@ -530,7 +528,7 @@ var DefaultController =
break;
case "cmd_killThread":
/* kill thread kills the thread and then does a next unread */
- GoNextMessage(nsMsgNavigationType.toggleThreadKilled, true);
+ GoNextMessage(nsMsgNavigationType.toggleThreadKilled, true);
break;
case "cmd_killSubthread":
GoNextMessage(nsMsgNavigationType.toggleSubthreadKilled, true);
@@ -539,27 +537,27 @@ var DefaultController =
gDBView.doCommand(nsMsgViewCommandType.toggleThreadWatched);
break;
case "button_next":
- case "cmd_nextUnreadMsg":
- MsgNextUnreadMessage();
- break;
- case "cmd_nextUnreadThread":
- MsgNextUnreadThread();
- break;
- case "cmd_nextMsg":
- MsgNextMessage();
- break;
- case "cmd_nextFlaggedMsg":
- MsgNextFlaggedMessage();
- break;
- case "cmd_previousMsg":
- MsgPreviousMessage();
- break;
- case "cmd_previousUnreadMsg":
- MsgPreviousUnreadMessage();
- break;
- case "cmd_previousFlaggedMsg":
- MsgPreviousFlaggedMessage();
- break;
+ case "cmd_nextUnreadMsg":
+ MsgNextUnreadMessage();
+ break;
+ case "cmd_nextUnreadThread":
+ MsgNextUnreadThread();
+ break;
+ case "cmd_nextMsg":
+ MsgNextMessage();
+ break;
+ case "cmd_nextFlaggedMsg":
+ MsgNextFlaggedMessage();
+ break;
+ case "cmd_previousMsg":
+ MsgPreviousMessage();
+ break;
+ case "cmd_previousUnreadMsg":
+ MsgPreviousUnreadMessage();
+ break;
+ case "cmd_previousFlaggedMsg":
+ MsgPreviousFlaggedMessage();
+ break;
case "button_goBack":
case "cmd_goBack":
MsgGoBack();
@@ -572,31 +570,31 @@ var DefaultController =
HideMessageHeaderPane();
loadStartPage();
break;
- case "cmd_viewAllMsgs":
+ case "cmd_viewAllMsgs":
case "cmd_viewThreadsWithUnread":
case "cmd_viewWatchedThreadsWithUnread":
- case "cmd_viewUnreadMsgs":
+ case "cmd_viewUnreadMsgs":
case "cmd_viewIgnoredThreads":
- SwitchView(command);
- break;
- case "cmd_undo":
- messenger.undo(msgWindow);
- break;
- case "cmd_redo":
- messenger.redo(msgWindow);
- break;
- case "cmd_expandAllThreads":
+ SwitchView(command);
+ break;
+ case "cmd_undo":
+ messenger.undo(msgWindow);
+ break;
+ case "cmd_redo":
+ messenger.redo(msgWindow);
+ break;
+ case "cmd_expandAllThreads":
gDBView.doCommand(nsMsgViewCommandType.expandAll);
- break;
- case "cmd_collapseAllThreads":
+ break;
+ case "cmd_collapseAllThreads":
gDBView.doCommand(nsMsgViewCommandType.collapseAll);
- break;
- case "cmd_renameFolder":
- MsgRenameFolder();
- return;
- case "cmd_sendUnsentMsgs":
- MsgSendUnsentMsgs();
- return;
+ break;
+ case "cmd_renameFolder":
+ MsgRenameFolder();
+ return;
+ case "cmd_sendUnsentMsgs":
+ MsgSendUnsentMsgs();
+ return;
case "cmd_subscribe":
MsgSubscribe();
return;
@@ -606,36 +604,36 @@ var DefaultController =
case "cmd_printSetup":
PrintUtils.showPageSetup();
return;
- case "cmd_print":
- PrintEnginePrint();
- return;
- case "cmd_printpreview":
- PrintEnginePrintPreview();
- return;
- case "cmd_saveAsFile":
- MsgSaveAsFile();
- return;
- case "cmd_saveAsTemplate":
- MsgSaveAsTemplate();
- return;
- case "cmd_viewPageSource":
- MsgViewPageSource();
- return;
- case "cmd_setFolderCharset":
- MsgFolderProperties();
- return;
- case "cmd_reload":
- ReloadMessage();
- return;
- case "cmd_find":
- MsgFind();
- return;
+ case "cmd_print":
+ PrintEnginePrint();
+ return;
+ case "cmd_printpreview":
+ PrintEnginePrintPreview();
+ return;
+ case "cmd_saveAsFile":
+ MsgSaveAsFile();
+ return;
+ case "cmd_saveAsTemplate":
+ MsgSaveAsTemplate();
+ return;
+ case "cmd_viewPageSource":
+ MsgViewPageSource();
+ return;
+ case "cmd_setFolderCharset":
+ MsgFolderProperties();
+ return;
+ case "cmd_reload":
+ ReloadMessage();
+ return;
+ case "cmd_find":
+ MsgFind();
+ return;
case "cmd_findNext":
- MsgFindAgain(false);
- return;
- case "cmd_findPrev":
- MsgFindAgain(true);
- return;
+ MsgFindAgain(false);
+ return;
+ case "cmd_findPrev":
+ MsgFindAgain(true);
+ return;
case "cmd_properties":
MsgFolderProperties();
return;
@@ -644,16 +642,16 @@ var DefaultController =
MsgSearchMessages();
return;
case "button_mark":
- case "cmd_markAsRead":
- MsgMarkMsgAsRead(null);
- return;
- case "cmd_markThreadAsRead":
- MsgMarkThreadAsRead();
- return;
- case "cmd_markAllRead":
+ case "cmd_markAsRead":
+ MsgMarkMsgAsRead(null);
+ return;
+ case "cmd_markThreadAsRead":
+ MsgMarkThreadAsRead();
+ return;
+ case "cmd_markAllRead":
gDBView.doCommand(nsMsgViewCommandType.markAllRead);
- return;
- case "cmd_markReadByDate":
+ return;
+ case "cmd_markReadByDate":
MsgMarkReadByDate();
return;
case "button_junk":
@@ -662,15 +660,15 @@ var DefaultController =
case "cmd_stop":
MsgStop();
return;
- case "cmd_markAsFlagged":
- MsgMarkAsFlagged(null);
- return;
- case "cmd_markAsJunk":
+ case "cmd_markAsFlagged":
+ MsgMarkAsFlagged(null);
+ return;
+ case "cmd_markAsJunk":
JunkSelectedMessages(true);
- return;
- case "cmd_markAsNotJunk":
+ return;
+ case "cmd_markAsNotJunk":
JunkSelectedMessages(false);
- return;
+ return;
case "cmd_recalculateJunkScore":
analyzeMessagesForJunk();
return;
@@ -695,62 +693,62 @@ var DefaultController =
case "cmd_deleteJunk":
deleteJunkInFolder();
return;
- case "cmd_emptyTrash":
- MsgEmptyTrash();
- return;
- case "cmd_compactFolder":
- MsgCompactFolder(true);
- return;
- case "cmd_downloadFlagged":
- MsgDownloadFlagged();
- break;
- case "cmd_downloadSelected":
- MsgDownloadSelected();
- break;
- case "cmd_synchronizeOffline":
- MsgSynchronizeOffline();
- break;
- case "cmd_settingsOffline":
- MsgSettingsOffline();
- break;
- case "cmd_selectAll":
- // move the focus so the user can delete the newly selected messages, not the folder
- SetFocusThreadPane();
- // if in threaded mode, the view will expand all before selecting all
- gDBView.doCommand(nsMsgViewCommandType.selectAll)
- if (gDBView.numSelected != 1) {
- setTitleFromFolder(gDBView.msgFolder,null);
- ClearMessagePane();
- }
- break;
- case "cmd_selectThread":
- gDBView.doCommand(nsMsgViewCommandType.selectThread);
- break;
+ case "cmd_emptyTrash":
+ MsgEmptyTrash();
+ return;
+ case "cmd_compactFolder":
+ MsgCompactFolder(true);
+ return;
+ case "cmd_downloadFlagged":
+ MsgDownloadFlagged();
+ break;
+ case "cmd_downloadSelected":
+ MsgDownloadSelected();
+ break;
+ case "cmd_synchronizeOffline":
+ MsgSynchronizeOffline();
+ break;
+ case "cmd_settingsOffline":
+ MsgSettingsOffline();
+ break;
+ case "cmd_selectAll":
+ // move the focus so the user can delete the newly selected messages, not the folder
+ SetFocusThreadPane();
+ // if in threaded mode, the view will expand all before selecting all
+ gDBView.doCommand(nsMsgViewCommandType.selectAll)
+ if (gDBView.numSelected != 1) {
+ setTitleFromFolder(gDBView.msgFolder,null);
+ ClearMessagePane();
+ }
+ break;
+ case "cmd_selectThread":
+ gDBView.doCommand(nsMsgViewCommandType.selectThread);
+ break;
case "cmd_selectFlagged":
gDBView.doCommand(nsMsgViewCommandType.selectFlagged);
break;
- }
- },
+ }
+ },
- onEvent: function(event)
- {
- // on blur events set the menu item texts back to the normal values
- if ( event == 'blur' )
- {
- goSetMenuValue('cmd_undo', 'valueDefault');
- goSetMenuValue('cmd_redo', 'valueDefault');
- }
- }
+ onEvent: function(event)
+ {
+ // on blur events set the menu item texts back to the normal values
+ if ( event == 'blur' )
+ {
+ goSetMenuValue('cmd_undo', 'valueDefault');
+ goSetMenuValue('cmd_redo', 'valueDefault');
+ }
+ }
};
function GetNumSelectedMessages()
{
- try {
- return gDBView.numSelected;
- }
- catch (ex) {
- return 0;
- }
+ try {
+ return gDBView.numSelected;
+ }
+ catch (ex) {
+ return 0;
+ }
}
var gLastFocusedElement=null;
@@ -766,7 +764,7 @@ function FocusRingUpdate_Mail()
// which calls nsFocusController::SetFocusedElement(element)
var currentFocusedElement = WhichPaneHasFocus();
- if (currentFocusedElement != gLastFocusedElement) {
+ if (currentFocusedElement != gLastFocusedElement) {
if (currentFocusedElement)
currentFocusedElement.setAttribute("focusring", "true");
@@ -792,17 +790,17 @@ function WhichPaneHasFocus()
if (top.document.commandDispatcher.focusedWindow == GetMessagePaneFrame())
return messagePane;
- var currentNode = top.document.commandDispatcher.focusedElement;
- while (currentNode) {
+ var currentNode = top.document.commandDispatcher.focusedElement;
+ while (currentNode) {
if (currentNode === threadTree ||
currentNode === folderTree ||
currentNode === messagePane)
return currentNode;
- currentNode = currentNode.parentNode;
+ currentNode = currentNode.parentNode;
}
- return null;
+ return null;
}
function SetupCommandUpdateHandlers()
@@ -934,63 +932,62 @@ function IsMessageDisplayedInMessagePane()
function MsgDeleteFolder()
{
- const NS_MSG_ERROR_COPY_FOLDER_ABORTED = 0x8055001a;
- var folderTree = GetFolderTree();
- var selectedFolders = GetSelectedMsgFolders();
- var prompt = Services.prompt;
- for (var i = 0; i < selectedFolders.length; i++)
+ const NS_MSG_ERROR_COPY_FOLDER_ABORTED = 0x8055001a;
+ var folderTree = GetFolderTree();
+ var selectedFolders = GetSelectedMsgFolders();
+ var prompt = Services.prompt;
+ for (var i = 0; i < selectedFolders.length; i++)
+ {
+ var selectedFolder = selectedFolders[i];
+ let specialFolder = getSpecialFolderString(selectedFolder);
+ if (specialFolder != "Inbox" && specialFolder != "Trash")
{
- var selectedFolder = selectedFolders[i];
- let specialFolder = getSpecialFolderString(selectedFolder);
- if (specialFolder != "Inbox" && specialFolder != "Trash")
- {
- var folder = selectedFolder.QueryInterface(Ci.nsIMsgFolder);
- if (folder.flags & Ci.nsMsgFolderFlags.Virtual)
- {
- var confirmation = gMessengerBundle.getString("confirmSavedSearchDeleteMessage");
- var title = gMessengerBundle.getString("confirmSavedSearchDeleteTitle");
- var buttonTitle = gMessengerBundle.getString("confirmSavedSearchDeleteButton");
- var buttonFlags = prompt.BUTTON_TITLE_IS_STRING * prompt.BUTTON_POS_0 +
- prompt.BUTTON_TITLE_CANCEL * prompt.BUTTON_POS_1;
- if (prompt.confirmEx(window, title, confirmation, buttonFlags, buttonTitle,
- "", "", "", {}) != 0) /* the yes button is in position 0 */
- continue;
- if (gCurrentVirtualFolderUri == selectedFolder.URI)
- gCurrentVirtualFolderUri = null;
- var array = Cc["@mozilla.org/array;1"]
- .createInstance(Ci.nsIMutableArray);
- array.appendElement(folder);
- folder.parent.deleteSubFolders(array, msgWindow);
- continue;
- }
+ var folder = selectedFolder.QueryInterface(Ci.nsIMsgFolder);
+ if (folder.flags & Ci.nsMsgFolderFlags.Virtual)
+ {
+ var confirmation = gMessengerBundle.getString("confirmSavedSearchDeleteMessage");
+ var title = gMessengerBundle.getString("confirmSavedSearchDeleteTitle");
+ var buttonTitle = gMessengerBundle.getString("confirmSavedSearchDeleteButton");
+ var buttonFlags = prompt.BUTTON_TITLE_IS_STRING * prompt.BUTTON_POS_0 +
+ prompt.BUTTON_TITLE_CANCEL * prompt.BUTTON_POS_1;
+ if (prompt.confirmEx(window, title, confirmation, buttonFlags, buttonTitle,
+ "", "", "", {}) != 0) /* the yes button is in position 0 */
+ continue;
+ if (gCurrentVirtualFolderUri == selectedFolder.URI)
+ gCurrentVirtualFolderUri = null;
+ var array = Cc["@mozilla.org/array;1"]
+ .createInstance(Ci.nsIMutableArray);
+ array.appendElement(folder);
+ folder.parent.deleteSubFolders(array, msgWindow);
+ continue;
+ }
- if (isNewsURI(selectedFolder.URI))
- {
- var unsubscribe = ConfirmUnsubscribe(selectedFolder);
- if (unsubscribe)
- UnSubscribe(selectedFolder);
- }
- else if (specialFolder == "Junk" ?
- CanRenameDeleteJunkMail(folder.URI) : folder.deletable)
- {
- // We can delete this folder.
-
- var array = Cc["@mozilla.org/array;1"]
- .createInstance(Ci.nsIMutableArray);
- array.appendElement(selectedFolder);
- try
- {
- selectedFolder.parent.deleteSubFolders(array, msgWindow);
- }
- // Ignore known errors from canceled warning dialogs.
- catch (ex) {
- if (ex.result != NS_MSG_ERROR_COPY_FOLDER_ABORTED) {
- throw ex;
- }
- }
- }
+ if (isNewsURI(selectedFolder.URI))
+ {
+ var unsubscribe = ConfirmUnsubscribe(selectedFolder);
+ if (unsubscribe)
+ UnSubscribe(selectedFolder);
+ }
+ else if (specialFolder == "Junk" ?
+ CanRenameDeleteJunkMail(folder.URI) : folder.deletable)
+ {
+ // We can delete this folder.
+ var array = Cc["@mozilla.org/array;1"]
+ .createInstance(Ci.nsIMutableArray);
+ array.appendElement(selectedFolder);
+ try
+ {
+ selectedFolder.parent.deleteSubFolders(array, msgWindow);
+ }
+ // Ignore known errors from canceled warning dialogs.
+ catch (ex) {
+ if (ex.result != NS_MSG_ERROR_COPY_FOLDER_ABORTED) {
+ throw ex;
+ }
}
+ }
}
+ }
}
function SetFocusThreadPaneIfNotOnMessagePane()
@@ -1005,16 +1002,16 @@ function SetFocusThreadPaneIfNotOnMessagePane()
// 3pane related commands. Need to go in own file. Putting here for the moment.
function MsgNextMessage()
{
- GoNextMessage(nsMsgNavigationType.nextMessage, false );
+ GoNextMessage(nsMsgNavigationType.nextMessage, false);
}
function MsgNextUnreadMessage()
{
- GoNextMessage(nsMsgNavigationType.nextUnreadMessage, true);
+ GoNextMessage(nsMsgNavigationType.nextUnreadMessage, true);
}
function MsgNextFlaggedMessage()
{
- GoNextMessage(nsMsgNavigationType.nextFlagged, true);
+ GoNextMessage(nsMsgNavigationType.nextFlagged, true);
}
function MsgNextUnreadThread()
@@ -1024,17 +1021,17 @@ function MsgNextUnreadThread()
function MsgPreviousMessage()
{
- GoNextMessage(nsMsgNavigationType.previousMessage, false);
+ GoNextMessage(nsMsgNavigationType.previousMessage, false);
}
function MsgPreviousUnreadMessage()
{
- GoNextMessage(nsMsgNavigationType.previousUnreadMessage, true);
+ GoNextMessage(nsMsgNavigationType.previousUnreadMessage, true);
}
function MsgPreviousFlaggedMessage()
{
- GoNextMessage(nsMsgNavigationType.previousFlagged, true);
+ GoNextMessage(nsMsgNavigationType.previousFlagged, true);
}
function MsgGoBack()
@@ -1085,16 +1082,16 @@ function SwitchPaneFocus(event)
function SetFocusThreadPane()
{
- var threadTree = GetThreadTree();
- threadTree.focus();
+ var threadTree = GetThreadTree();
+ threadTree.focus();
}
function SetFocusMessagePane()
{
- // XXX hack: to clear the focus on the previous element first focus
- // on the message pane element then focus on the main content window
- GetMessagePane().focus();
- GetMessagePaneFrame().focus();
+ // XXX hack: to clear the focus on the previous element first focus
+ // on the message pane element then focus on the main content window
+ GetMessagePane().focus();
+ GetMessagePaneFrame().focus();
}
function isCommandEnabled(cmd)
diff --git a/comm/suite/mailnews/content/messageWindow.js b/comm/suite/mailnews/content/messageWindow.js
index 2fbd7d3..f74c48d 100644
--- a/comm/suite/mailnews/content/messageWindow.js
+++ b/comm/suite/mailnews/content/messageWindow.js
@@ -455,8 +455,8 @@ function GetLoadedMessage()
//Clear everything related to the current message. called after load start page.
function ClearMessageSelection()
{
- gCurrentMessageUri = null;
- gCurrentFolderUri = null;
+ gCurrentMessageUri = null;
+ gCurrentFolderUri = null;
UpdateMailToolbar("clear msg, std alone window");
}
@@ -637,15 +637,15 @@ var MessageWindowController =
}
},
- isCommandEnabled: function(command)
- {
+ isCommandEnabled: function(command)
+ {
var loadedFolder;
var enabled = new Object();
enabled.value = false;
var checkStatus = new Object();
- switch (command)
- {
+ switch (command)
+ {
case "cmd_createFilterFromPopup":
case "cmd_createFilterFromMenu":
loadedFolder = GetLoadedMsgFolder();
@@ -665,7 +665,7 @@ var MessageWindowController =
UpdateJunkToolbarButton();
// fall through
case "cmd_markAsJunk":
- case "cmd_markAsNotJunk":
+ case "cmd_markAsNotJunk":
if (gDBView)
gDBView.getCommandStatus(nsMsgViewCommandType.junk, enabled, checkStatus);
return enabled.value;
@@ -673,72 +673,72 @@ var MessageWindowController =
if (GetNumSelectedMessages() > 0 && gDBView)
gDBView.getCommandStatus(nsMsgViewCommandType.runJunkControls, enabled, checkStatus);
return enabled.value;
- case "cmd_reply":
- case "button_reply":
- case "cmd_replyList":
- case "cmd_replyGroup":
- case "cmd_replySender":
- case "cmd_replyall":
- case "button_replyall":
+ case "cmd_reply":
+ case "button_reply":
+ case "cmd_replyList":
+ case "cmd_replyGroup":
+ case "cmd_replySender":
+ case "cmd_replyall":
+ case "button_replyall":
case "cmd_replySenderAndGroup":
case "cmd_replyAllRecipients":
- case "cmd_forward":
- case "button_forward":
- case "cmd_forwardInline":
- case "cmd_forwardAttachment":
- case "cmd_editAsNew":
- case "cmd_print":
- case "cmd_printpreview":
+ case "cmd_forward":
+ case "button_forward":
+ case "cmd_forwardInline":
+ case "cmd_forwardAttachment":
+ case "cmd_editAsNew":
+ case "cmd_print":
+ case "cmd_printpreview":
case "button_print":
- case "cmd_saveAsFile":
+ case "cmd_saveAsFile":
return true;
- case "cmd_saveAsTemplate":
+ case "cmd_saveAsTemplate":
var target = gMessageBrowser.contentPrincipal.URI.scheme;
return target != "news";
- case "cmd_viewPageSource":
- case "cmd_reload":
- case "cmd_find":
+ case "cmd_viewPageSource":
+ case "cmd_reload":
+ case "cmd_find":
case "button_mark":
- case "cmd_markAsRead":
- case "cmd_markAllRead":
- case "cmd_markThreadAsRead":
- case "cmd_markReadByDate":
+ case "cmd_markAsRead":
+ case "cmd_markAllRead":
+ case "cmd_markThreadAsRead":
+ case "cmd_markReadByDate":
return true;
- case "cmd_markAsFlagged":
+ case "cmd_markAsFlagged":
case "button_file":
return (gCurrentMessageUri != null);
case "cmd_markAsShowRemote":
return (GetNumSelectedMessages() > 0 && checkMsgHdrPropertyIsNot("remoteContentPolicy", kAllowRemoteContent));
case "cmd_markAsNotPhish":
return (GetNumSelectedMessages() > 0 && checkMsgHdrPropertyIsNot("notAPhishMessage", kNotAPhishMessage));
- case "cmd_printSetup":
- return true;
- case "cmd_getNewMessages":
+ case "cmd_printSetup":
+ return true;
+ case "cmd_getNewMessages":
case "button_getNewMessages":
case "cmd_getMsgsForAuthAccounts":
- return IsGetNewMessagesEnabled();
- case "cmd_getNextNMessages":
- return IsGetNextNMessagesEnabled();
- case "cmd_downloadFlagged":
- case "cmd_downloadSelected":
+ return IsGetNewMessagesEnabled();
+ case "cmd_getNextNMessages":
+ return IsGetNextNMessagesEnabled();
+ case "cmd_downloadFlagged":
+ case "cmd_downloadSelected":
case "cmd_synchronizeOffline":
return !Services.io.offline;
- case "cmd_settingsOffline":
- return IsAccountOfflineEnabled();
- case "cmd_close":
- case "cmd_nextMsg":
+ case "cmd_settingsOffline":
+ return IsAccountOfflineEnabled();
+ case "cmd_close":
+ case "cmd_nextMsg":
case "button_next":
- case "cmd_nextUnreadMsg":
+ case "cmd_nextUnreadMsg":
case "cmd_nextFlaggedMsg":
- case "cmd_nextUnreadThread":
- case "cmd_previousMsg":
- case "cmd_previousUnreadMsg":
+ case "cmd_nextUnreadThread":
+ case "cmd_previousMsg":
+ case "cmd_previousUnreadMsg":
case "cmd_previousFlaggedMsg":
case "cmd_applyFiltersToSelection":
- return true;
+ return true;
case "cmd_findNext":
- case "cmd_findPrev":
- return MsgCanFindAgain();
+ case "cmd_findPrev":
+ return MsgCanFindAgain();
case "cmd_goBack":
case "button_goBack":
return gDBView && gDBView.navigateStatus(nsMsgNavigationType.back);
@@ -758,72 +758,72 @@ var MessageWindowController =
case "cmd_runJunkControls":
case "cmd_deleteJunk":
return false;
- default:
- return false;
- }
- },
+ default:
+ return false;
+ }
+ },
- doCommand: function(command)
- {
+ doCommand: function(command)
+ {
// if the user invoked a key short cut then it is possible that we got here for a command which is
// really disabled. kick out if the command should be disabled.
if (!this.isCommandEnabled(command)) return;
var navigationType = nsMsgNavigationType.nextUnreadMessage;
- switch ( command )
- {
- case "cmd_close":
- CloseMailWindow();
- break;
- case "cmd_getNewMessages":
- MsgGetMessage();
- break;
- case "cmd_undo":
- messenger.undo(msgWindow);
- break;
- case "cmd_redo":
- messenger.redo(msgWindow);
- break;
+ switch ( command )
+ {
+ case "cmd_close":
+ CloseMailWindow();
+ break;
+ case "cmd_getNewMessages":
+ MsgGetMessage();
+ break;
+ case "cmd_undo":
+ messenger.undo(msgWindow);
+ break;
+ case "cmd_redo":
+ messenger.redo(msgWindow);
+ break;
case "cmd_getMsgsForAuthAccounts":
MsgGetMessagesForAllAuthenticatedAccounts();
break;
- case "cmd_getNextNMessages":
- MsgGetNextNMessages();
- break;
- case "cmd_reply":
- MsgReplyMessage(null);
- break;
- case "cmd_replyList":
- MsgReplyList(null);
- break;
- case "cmd_replyGroup":
- MsgReplyGroup(null);
- break;
- case "cmd_replySender":
- MsgReplySender(null);
- break;
- case "cmd_replyall":
- MsgReplyToAllMessage(null);
- break;
+ case "cmd_getNextNMessages":
+ MsgGetNextNMessages();
+ break;
+ case "cmd_reply":
+ MsgReplyMessage(null);
+ break;
+ case "cmd_replyList":
+ MsgReplyList(null);
+ break;
+ case "cmd_replyGroup":
+ MsgReplyGroup(null);
+ break;
+ case "cmd_replySender":
+ MsgReplySender(null);
+ break;
+ case "cmd_replyall":
+ MsgReplyToAllMessage(null);
+ break;
case "cmd_replySenderAndGroup":
MsgReplyToSenderAndGroup(null);
break;
case "cmd_replyAllRecipients":
MsgReplyToAllRecipients(null);
break;
- case "cmd_forward":
- MsgForwardMessage(null);
- break;
- case "cmd_forwardInline":
- MsgForwardAsInline(null);
- break;
- case "cmd_forwardAttachment":
- MsgForwardAsAttachment(null);
- break;
- case "cmd_editAsNew":
- MsgEditMessageAsNew();
- break;
+ case "cmd_forward":
+ MsgForwardMessage(null);
+ break;
+ case "cmd_forwardInline":
+ MsgForwardAsInline(null);
+ break;
+ case "cmd_forwardAttachment":
+ MsgForwardAsAttachment(null);
+ break;
+ case "cmd_editAsNew":
+ MsgEditMessageAsNew();
+ break;
case "cmd_createFilterFromPopup":
CreateFilter(document.popupNode);
break;
@@ -848,59 +848,59 @@ var MessageWindowController =
case "cmd_printSetup":
PrintUtils.showPageSetup();
break;
- case "cmd_print":
- PrintEnginePrint();
- break;
- case "cmd_printpreview":
- PrintEnginePrintPreview();
- break;
- case "cmd_saveAsFile":
- MsgSaveAsFile();
- break;
- case "cmd_saveAsTemplate":
- MsgSaveAsTemplate();
- break;
- case "cmd_viewPageSource":
- MsgViewPageSource();
- break;
- case "cmd_reload":
- ReloadMessage();
- break;
- case "cmd_find":
- MsgFind();
- break;
+ case "cmd_print":
+ PrintEnginePrint();
+ break;
+ case "cmd_printpreview":
+ PrintEnginePrintPreview();
+ break;
+ case "cmd_saveAsFile":
+ MsgSaveAsFile();
+ break;
+ case "cmd_saveAsTemplate":
+ MsgSaveAsTemplate();
+ break;
+ case "cmd_viewPageSource":
+ MsgViewPageSource();
+ break;
+ case "cmd_reload":
+ ReloadMessage();
+ break;
+ case "cmd_find":
+ MsgFind();
+ break;
case "cmd_findNext":
- MsgFindAgain(false);
- break;
- case "cmd_findPrev":
- MsgFindAgain(true);
- break;
+ MsgFindAgain(false);
+ break;
+ case "cmd_findPrev":
+ MsgFindAgain(true);
+ break;
case "button_search":
case "cmd_search":
MsgSearchMessages();
break;
case "button_mark":
- case "cmd_markAsRead":
- MsgMarkMsgAsRead(null);
- return;
- case "cmd_markThreadAsRead":
- MsgMarkThreadAsRead();
- return;
- case "cmd_markAllRead":
- MsgMarkAllRead();
- return;
- case "cmd_markReadByDate":
- MsgMarkReadByDate();
- return;
- case "cmd_markAsFlagged":
- MsgMarkAsFlagged(null);
- return;
- case "cmd_markAsJunk":
+ case "cmd_markAsRead":
+ MsgMarkMsgAsRead(null);
+ return;
+ case "cmd_markThreadAsRead":
+ MsgMarkThreadAsRead();
+ return;
+ case "cmd_markAllRead":
+ MsgMarkAllRead();
+ return;
+ case "cmd_markReadByDate":
+ MsgMarkReadByDate();
+ return;
+ case "cmd_markAsFlagged":
+ MsgMarkAsFlagged(null);
+ return;
+ case "cmd_markAsJunk":
JunkSelectedMessages(true);
- return;
- case "cmd_markAsNotJunk":
+ return;
+ case "cmd_markAsNotJunk":
JunkSelectedMessages(false);
- return;
+ return;
case "cmd_recalculateJunkScore":
analyzeMessagesForJunk();
return;
@@ -926,24 +926,24 @@ var MessageWindowController =
case "button_next":
performNavigation(nsMsgNavigationType.nextUnreadMessage);
break;
- case "cmd_nextUnreadThread":
+ case "cmd_nextUnreadThread":
performNavigation(nsMsgNavigationType.nextUnreadThread);
- break;
- case "cmd_nextMsg":
+ break;
+ case "cmd_nextMsg":
performNavigation(nsMsgNavigationType.nextMessage);
- break;
- case "cmd_nextFlaggedMsg":
+ break;
+ case "cmd_nextFlaggedMsg":
performNavigation(nsMsgNavigationType.nextFlagged);
- break;
- case "cmd_previousMsg":
+ break;
+ case "cmd_previousMsg":
performNavigation(nsMsgNavigationType.previousMessage);
- break;
- case "cmd_previousUnreadMsg":
+ break;
+ case "cmd_previousUnreadMsg":
performNavigation(nsMsgNavigationType.previousUnreadMessage);
- break;
- case "cmd_previousFlaggedMsg":
+ break;
+ case "cmd_previousFlaggedMsg":
performNavigation(nsMsgNavigationType.previousFlagged);
- break;
+ break;
case "cmd_goBack":
performNavigation(nsMsgNavigationType.back);
break;
@@ -953,12 +953,12 @@ var MessageWindowController =
case "cmd_applyFiltersToSelection":
MsgApplyFiltersToSelection();
break;
- }
- },
+ }
+ },
- onEvent: function(event)
- {
- }
+ onEvent: function(event)
+ {
+ }
};
function LoadMessageByNavigationType(type)
diff --git a/comm/suite/mailnews/content/messageWindow.xul b/comm/suite/mailnews/content/messageWindow.xul
index b6d61e4..a6d0ccf 100644
--- a/comm/suite/mailnews/content/messageWindow.xul
+++ b/comm/suite/mailnews/content/messageWindow.xul
@@ -64,7 +64,7 @@
<commandset id="mailMarkMenuItems"/>
<commandset id="mailToolsMenuItems"/>
<commandset id="mailEditContextMenuItems"/>
- <commandset id="tasksCommands"/>
+ <commandset id="tasksCommands"/>
<commandset id="commandKeys"/>
</commandset>
diff --git a/comm/suite/mailnews/content/msgMail3PaneWindow.js b/comm/suite/mailnews/content/msgMail3PaneWindow.js
index ffc4223..a93c495 100644
--- a/comm/suite/mailnews/content/msgMail3PaneWindow.js
+++ b/comm/suite/mailnews/content/msgMail3PaneWindow.js
@@ -1433,9 +1433,9 @@ function SetBusyCursor(window, enable)
window.setCursor("auto");
}
- var numFrames = window.frames.length;
- for(var i = 0; i < numFrames; i++)
- SetBusyCursor(window.frames[i], enable);
+ var numFrames = window.frames.length;
+ for(var i = 0; i < numFrames; i++)
+ SetBusyCursor(window.frames[i], enable);
}
function GetDBView()
diff --git a/comm/suite/mailnews/jar.mn b/comm/suite/mailnews/jar.mn
index a860397..a007b86 100644
--- a/comm/suite/mailnews/jar.mn
+++ b/comm/suite/mailnews/jar.mn
@@ -75,7 +75,7 @@ messenger.jar:
#ifdef XP_MACOSX
content/messenger/platformMailnewsOverlay.xul (content/mac/platformMailnewsOverlay.xul)
#else
-#ifdef XP_WIN32
+#ifdef XP_WIN
content/messenger/platformMailnewsOverlay.xul (content/win/platformMailnewsOverlay.xul)
#else
content/messenger/platformMailnewsOverlay.xul (content/unix/platformMailnewsOverlay.xul)