This commit is contained in:
morse%netscape.com 2001-02-21 05:28:18 +00:00
Родитель b5f8b7805e
Коммит d00e12ef0e
20 изменённых файлов: 73 добавлений и 740 удалений

Просмотреть файл

@ -29,7 +29,7 @@ include $(DEPTH)/config/autoconf.mk
MODULE = cookie
LIBRARY_NAME = cookie
IS_COMPONENT = 1
REQUIRES = xpcom necko caps dom js widget layout appshell pref intl locale profile
REQUIRES = xpcom necko caps dom js widget layout appshell pref intl locale
ifdef ENABLE_TESTS
DIRS = tests
@ -57,3 +57,6 @@ EXTRA_DSO_LDOPTS = \
include $(topsrcdir)/config/rules.mk
chrome::
@$(REGCHROME) content cookie comm.jar
@$(REGCHROME) locale en-US/cookie en-US.jar

Просмотреть файл

@ -25,14 +25,18 @@ include <$(DEPTH)/config/config.mak>
DEFINES=-D_IMPL_NS_COOKIE -DWIN32_LEAN_AND_MEAN
MODULE=cookie
EXPORTS = nsICookieService.h nsCookieHTTPNotify.h nsCookie.h
EXPORTS = nsICookieService.h nsIImageService.h nsCookieHTTPNotify.h nsCookie.h
CSRCS= \
$(NULL)
CPPSRCS= \
nsCookieService.cpp \
nsImageService.cpp \
nsCookie.cpp \
nsImage.cpp \
nsPermission.cpp \
nsUtils.cpp \
nsCookieHTTPNotify.cpp \
$(NULL)
@ -42,7 +46,11 @@ C_OBJS= \
CPP_OBJS= \
.\$(OBJDIR)\nsCookieService.obj \
.\$(OBJDIR)\nsImageService.obj \
.\$(OBJDIR)\nsCookie.obj \
.\$(OBJDIR)\nsImage.obj \
.\$(OBJDIR)\nsPermission.obj \
.\$(OBJDIR)\nsUtils.obj \
.\$(OBJDIR)\nsCookieHTTPNotify.obj \
$(NULL)
@ -82,3 +90,7 @@ install:: $(DLL)
clobber::
rm -f $(DIST)\bin\components\$(DLLNAME).dll
rm -f $(DIST)\lib\$(DLLNAME).lib
chrome::
$(REGCHROME) content cookie comm.jar
$(REGCHROME) locale en-US/cookie en-US.jar

Просмотреть файл

@ -30,3 +30,6 @@ DIRS = public src editor signonviewer cookieviewer walletpreview build
include $(topsrcdir)/config/rules.mk
chrome::
@$(REGCHROME) content wallet comm.jar
@$(REGCHROME) locale en-US/wallet en-US.jar

Просмотреть файл

@ -1,29 +1,44 @@
comm.jar:
content/communicator/wallet/nsWalletTreeUtils.js (cookieviewer/nsWalletTreeUtils.js)
content/communicator/wallet/CookieViewer.js (cookieviewer/CookieViewer.js)
content/communicator/wallet/CookieViewer.xul (cookieviewer/CookieViewer.xul)
content/communicator/wallet/privacy.xul (editor/privacy.xul)
content/communicator/wallet/SignonViewer.js (signonviewer/SignonViewer.js)
content/communicator/wallet/SignonViewer.xul (signonviewer/SignonViewer.xul)
content/communicator/wallet/WalletPreview.js (walletpreview/WalletPreview.js)
content/communicator/wallet/WalletPreview.xul (walletpreview/WalletPreview.xul)
content/communicator/wallet/WalletAddress.xul (editor/WalletAddress.xul)
content/communicator/wallet/WalletBilling.xul (editor/WalletBilling.xul)
content/communicator/wallet/contents.rdf (resources/content/contents.rdf)
content/communicator/wallet/walletNavigatorOverlay.xul (resources/content/walletNavigatorOverlay.xul)
content/communicator/wallet/walletTasksOverlay.xul (resources/content/walletTasksOverlay.xul)
content/communicator/wallet/walletContextOverlay.xul (resources/content/walletContextOverlay.xul)
content/communicator/wallet/walletPrefsOverlay.xul (resources/content/walletPrefsOverlay.xul)
content/communicator/wallet/pref-wallet.xul (resources/content/pref-wallet.xul)
content/communicator/wallet/pref-passwords.xul (resources/content/pref-passwords.xul)
content/communicator/wallet/walletOverlay.js (resources/content/walletOverlay.js)
content/communicator/wallet/nsWalletTreeUtils.js (cookieviewer/nsWalletTreeUtils.js)
content/communicator/wallet/CookieViewer.js (cookieviewer/CookieViewer.js)
content/communicator/wallet/CookieViewer.xul (cookieviewer/CookieViewer.xul)
content/communicator/wallet/privacy.xul (editor/privacy.xul)
content/communicator/wallet/SignonViewer.js (signonviewer/SignonViewer.js)
content/communicator/wallet/SignonViewer.xul (signonviewer/SignonViewer.xul)
content/communicator/wallet/WalletPreview.js (walletpreview/WalletPreview.js)
content/communicator/wallet/WalletPreview.xul (walletpreview/WalletPreview.xul)
content/communicator/wallet/WalletAddress.xul (editor/WalletAddress.xul)
content/communicator/wallet/WalletBilling.xul (editor/WalletBilling.xul)
content/communicator/wallet/WalletConcatenated.xul (editor/WalletConcatenated.xul)
content/communicator/wallet/WalletCredit.xul (editor/WalletCredit.xul)
content/communicator/wallet/WalletEmploy.xul (editor/WalletEmploy.xul)
content/communicator/wallet/WalletMisc.xul (editor/WalletMisc.xul)
content/communicator/wallet/WalletName.xul (editor/WalletName.xul)
content/communicator/wallet/WalletOther.xul (editor/WalletOther.xul)
content/communicator/wallet/WalletPhone.xul (editor/WalletPhone.xul)
content/communicator/wallet/WalletPrimary.xul (editor/WalletPrimary.xul)
content/communicator/wallet/WalletShipping.xul (editor/WalletShipping.xul)
content/communicator/wallet/WalletTree.xul (editor/WalletTree.xul)
content/communicator/wallet/WalletCredit.xul (editor/WalletCredit.xul)
content/communicator/wallet/WalletEmploy.xul (editor/WalletEmploy.xul)
content/communicator/wallet/WalletMisc.xul (editor/WalletMisc.xul)
content/communicator/wallet/WalletName.xul (editor/WalletName.xul)
content/communicator/wallet/WalletOther.xul (editor/WalletOther.xul)
content/communicator/wallet/WalletPhone.xul (editor/WalletPhone.xul)
content/communicator/wallet/WalletPrimary.xul (editor/WalletPrimary.xul)
content/communicator/wallet/WalletShipping.xul (editor/WalletShipping.xul)
content/communicator/wallet/WalletTree.xul (editor/WalletTree.xul)
content/communicator/wallet/WalletUrlspecific.xul (editor/WalletUrlspecific.xul)
content/communicator/wallet/WalletViewer.xul (editor/WalletViewer.xul)
content/communicator/wallet/WalletViewer.js (editor/WalletViewer.js)
content/communicator/wallet/WalletViewer.xul (editor/WalletViewer.xul)
content/communicator/wallet/WalletViewer.js (editor/WalletViewer.js)
en-US.jar:
locale/en-US/communicator/wallet/contents.rdf (resources/locale/en-US/contents.rdf)
locale/en-US/communicator/wallet/walletNavigatorOverlay.dtd (resources/locale/en-US/walletNavigatorOverlay.dtd)
locale/en-US/communicator/wallet/walletTasksOverlay.dtd (resources/locale/en-US/walletTasksOverlay.dtd)
locale/en-US/communicator/wallet/walletContextOverlay.dtd (resources/locale/en-US/walletContextOverlay.dtd)
locale/en-US/communicator/wallet/walletPrefsOverlay.dtd (resources/locale/en-US/walletPrefsOverlay.dtd)
locale/en-US/communicator/wallet/pref-wallet.dtd (resources/locale/en-US/pref-wallet.dtd)
locale/en-US/communicator/wallet/pref-passwords.dtd (resources/locale/en-US/pref-passwords.dtd)
locale/en-US/communicator/wallet/CookieViewer.properties (cookieviewer/CookieViewer.properties)
locale/en-US/communicator/wallet/CookieViewer.dtd (cookieviewer/CookieViewer.dtd)
locale/en-US/communicator/wallet/WalletEditor.properties (editor/WalletEditor.properties)
@ -45,5 +60,5 @@ en-US.jar:
locale/en-US/communicator/wallet/sample7.html (editor/sample7.html)
locale/en-US/communicator/wallet/sample8.html (editor/sample8.html)
locale/en-US/communicator/wallet/sample9.html (editor/sample9.html)
locale/en-US/communicator/wallet/sample10.html (editor/sample10.html)
locale/en-US/communicator/wallet/WalletViewer.dtd (editor/WalletViewer.dtd)
locale/en-US/communicator/wallet/sample10.html (editor/sample10.html)
locale/en-US/communicator/wallet/WalletViewer.dtd (editor/WalletViewer.dtd)

Просмотреть файл

@ -26,3 +26,7 @@ DEPTH=..\..
DIRS=public src editor signonviewer cookieviewer walletpreview build
include <$(DEPTH)\config\rules.mak>
chrome::
$(REGCHROME) content wallet comm.jar
$(REGCHROME) locale en-US/wallet en-US.jar

Просмотреть файл

@ -117,8 +117,6 @@
<broadcaster id="cmd_paste"/>
<broadcaster id="cmd_delete"/>
<broadcaster id="cmd_selectAll"/>
<broadcaster id="cmd_capture"/>
<broadcaster id="cmd_prefill"/>
<broadcaster id="cmd_preferences"/>
<!-- View Menu -->
@ -178,7 +176,7 @@
</menu>
<menu id="menu_Edit">
<menupopup>
<menupopup id="menu_Edit_Popup">
<menuitem id="menu_undo"/>
<menuitem id="menu_redo"/>
<menuseparator/>
@ -189,9 +187,6 @@
<menuseparator/>
<menuitem id="menu_selectAll"/>
<menuseparator />
<menuitem id="menu_capture" oncommand="capture()"/>
<menuitem id="menu_prefill" oncommand="prefill()"/>
<menuseparator />
<menuitem id="menu_preferences" oncommand="goPreferences('navigator.xul', 'chrome://communicator/content/pref/pref-navigator.xul', 'navigator')"/>
</menupopup>
</menu>

Просмотреть файл

@ -104,10 +104,6 @@
value="&viewImageCmd.label;"
accesskey=""
oncommand="contextMenu.viewImage();"/>
<menuitem id="context-blockimage"
value="&blockImageCmd.label;"
accesskey=""
oncommand="contextMenu.blockImage();"/>
<menuseparator id="context-sep-view"/>
<!-- Misc ==================================== -->
<menuitem id="context-bookmarkpage"
@ -159,14 +155,6 @@
value="&pasteCmd.label;"
accesskey="&pasteCmd.accesskey;"
observes="cmd_paste"/>
<menuitem id="context-capture"
value="&captureCmd.label;"
accesskey=""
oncommand="contextMenu.capture();"/>
<menuitem id="context-prefill"
value="&prefillCmd.label;"
accesskey=""
oncommand="contextMenu.prefill();"/>
<menuitem id="context-copylink"
value="&copyLinkCmd.label;"
accesskey="&copyLinkCmd.accesskey;"

Просмотреть файл

@ -44,8 +44,6 @@ function nsContextMenu( xulMenu ) {
this.hasBGImage = false;
this.inDirList = false;
this.shouldDisplay = true;
this.disableCapture = false;
this.disablePrefill = false;
// Initialize new menu.
this.initMenu( xulMenu );
@ -145,18 +143,6 @@ nsContextMenu.prototype = {
// View Image depends on whether an image was clicked on.
this.showItem( "context-viewimage", this.onImage );
// Block image depends on whether an image was clicked on, and,
// whether the user pref is enabled.
this.showItem( "context-blockimage", this.onImage && this.isBlockingImages() );
// Capture depends on whether a form is being displayed.
this.showItem( "context-capture", this.okToCapture() );
this.setItemAttr( "context-capture", "disabled", this.disableCapture);
// Prefill depends on whether a form is being displayed.
this.showItem( "context-prefill", this.okToPrefill() );
this.setItemAttr( "context-prefill", "disabled", this.disablePrefill);
// Remove separator if all items are removed.
this.showItem( "context-sep-view", !this.inDirList || this.inFrame || this.onImage );
},
@ -440,138 +426,6 @@ nsContextMenu.prototype = {
this.copyToClipboard( this.imageURL );
},
// Capture the values that are filled in on the form being displayed.
capture : function () {
var walletService = Components.classes["@mozilla.org/wallet/wallet-service;1"].getService(Components.interfaces.nsIWalletService);
walletService.WALLET_RequestToCapture(window._content);
},
// Prefill the form being displayed.
prefill : function () {
walletPreview(window._content);
},
// Determine if "Save Form Data" is to appear in the menu.
okToCapture: function () {
this.disableCapture = false;
var rv = false;
if (!window._content.document) {
return false;
}
// test for a form with at least one text element that has a value
var formsArray = this.target.ownerDocument.forms;
if (!formsArray) {
return false;
}
var form;
for (form=0; form<formsArray.length; form++) {
var elementsArray = formsArray[form].elements;
var element;
for (element=0; element<elementsArray.length; element++) {
var type = elementsArray[element].type;
if (type=="" || type=="text") {
// we have a form with at least one text element
var value = elementsArray[element].value;
rv = true;
if (value != "") {
// at least one text element has a value, thus capture is to appear in menu
return rv;
}
}
}
}
// if we got here, then there was no text element with a value
if (rv) {
// if we got here, then we had a form with at least one text element
// in that case capture is to appear in menu but will be disabled
this.disableCapture = true;
}
return rv;
},
// Determine if "Prefill Form" is to appear in the menu.
okToPrefill: function () {
this.disablePrefill = false;
var rv = false;
if (!window._content.document) {
return false;
}
var formsArray = this.target.ownerDocument.forms;
if (!formsArray) {
return false;
}
var form;
for (form=0; form<formsArray.length; form++) {
var elementsArray = formsArray[form].elements;
var element;
for (element=0; element<elementsArray.length; element++) {
var type = elementsArray[element].type;
if (type=="" || type=="text" || type=="select-one") {
/* we have a form with at least one text or select element */
rv = true;
/* see if there is a saved value for it */
var walletService = Components.classes["@mozilla.org/wallet/wallet-service;1"].getService(Components.interfaces.nsIWalletService);
var value = walletService.WALLET_PrefillOneElement
(window._content, elementsArray[element]);
if (value != "") {
// at least element has a saved value, thus capture is to appear in menu
return rv;
}
}
}
}
// if we got here, then there was no saved value for a text or select element
if (rv) {
// if we got here, then we had a form with at least one text or select element
// in that case prefill is to appear in menu but will be disabled
this.disablePrefill = true;
}
return rv;
},
// Determine if "Block Image" is to appear in the menu.
// Return true if "imageBlocker.enabled" pref is set and image is not already blocked.
isBlockingImages: function () {
/* determine if "imageBlocker.enabled" pref is set */
var pref = this.getService( '@mozilla.org/preferences;1', 'nsIPref' );
var result = false;
try {
result = pref.GetBoolPref( "imageblocker.enabled" );
} catch(e) {
}
if (!result) {
/* pref is not set so return false */
return false;
}
/* determine if image is already being blocked */
var cookieViewer = this.createInstance
("@mozilla.org/cookieviewer/cookieviewer-world;1", "nsICookieViewer");
var list = cookieViewer.GetPermissionValue(1);
var permissionList = list.split(list[0]);
for(var i = 1; i < permissionList.length; i+=2) {
permStr = permissionList[i+1];
var type = permStr.substring(0,1);
if (type == "-") {
/* some host is being blocked, need to find out if it's our image's host */
var host = permStr.substring(1,permStr.length);
if (this.imageURL.search(host) != -1) {
/* it's our image's host that's being blocked */
return false;
}
}
}
/* image is not already being blocked, so "Block Image" can appear on the menu */
return true;
},
// Block image from loading in the future.
blockImage : function () {
var cookieViewer = this.createInstance( "@mozilla.org/cookieviewer/cookieviewer-world;1",
"nsICookieViewer" );
cookieViewer.BlockImage(this.imageURL);
},
///////////////
// Utilities //
///////////////

Просмотреть файл

@ -201,209 +201,5 @@ function ShowUpdateFromResource( node )
// look up on the name/url pair.
OpenTaskURL( "http://www.mozilla.org/binaries.html");
}
/**
* WALLET submenu
*/
function HideWallet() {
var element;
element = document.getElementById("wallet");
element.setAttribute("style","display: none;" );
element.setAttribute("disabled","true" );
}
function HideImage() {
var element;
element = document.getElementById("image");
element.setAttribute("style","display: none;" );
element.setAttribute("disabled","true" );
}
function HideEncryptOrObscure() {
var elementOn, elementOff;
try {
if (this.pref.GetBoolPref("wallet.crypto")) {
elementOn = document.getElementById("obscure");
elementOff = document.getElementById("encrypt");
} else {
elementOn = document.getElementById("encrypt");
elementOff = document.getElementById("obscure");
}
elementOn.setAttribute("disabled","false");
elementOff.setAttribute("disabled","true");
}
catch(e) {
var encrypt = document.getElementById("encrypt");
if(encrypt)
encrypt.setAttribute("disabled", "true");
var obscure = document.getElementById("obscure");
if(obscure)
obscure.setAttribute("disabled", "true");
dump("wallet.crypto pref is missing from all.js\n");
}
}
function CheckForWalletAndImage()
{
// remove either encrypt or obscure depending on pref setting
HideEncryptOrObscure();
// remove wallet functions if not in browser
try {
if (!appCore) {
HideWallet();
}
} catch(e) {
HideWallet();
}
// remove wallet functions (unless overruled by the "wallet.enabled" pref)
try {
if (!this.pref.GetBoolPref("wallet.enabled")) {
HideWallet();
}
} catch(e) {
dump("wallet.enabled pref is missing from all.js\n");
}
// remove image functions (unless overruled by the "imageblocker.enabled" pref)
try {
if (!this.pref.GetBoolPref("imageblocker.enabled")) {
HideImage();
}
} catch(e) {
HideImage();
dump("imageblocker.enabled pref is missing from all.js\n");
}
}
// perform a wallet action
function WalletAction( action )
{
var strings = document.getElementById("personalManagers");
if (action == "password" || action == "expire" || action == "clear") {
wallet = Components.classes['@mozilla.org/wallet/wallet-service;1'];
wallet = wallet.getService();
wallet = wallet.QueryInterface(Components.interfaces.nsIWalletService);
if (action == "password") {
if (!wallet.WALLET_ChangePassword()) {
window.alert(strings.getAttribute("PasswordNotChanged"));
}
} else if (action == "expire") {
if (wallet.WALLET_ExpirePassword()) {
window.alert(strings.getAttribute("PasswordExpired"));
} else {
window.alert(strings.getAttribute("PasswordNotExpired"));
}
} else if (action == "clear") {
if (window.confirm(strings.getAttribute("AllDataWillBeCleared"))) {
wallet.WALLET_DeleteAll();
}
}
return;
}
if (action == "encrypt" || action == "obscure") {
wallet = Components.classes['@mozilla.org/wallet/wallet-service;1'];
wallet = wallet.getService();
wallet = wallet.QueryInterface(Components.interfaces.nsIWalletService);
wallet.WALLET_InitReencryptCallback(window._content);
if (action == "encrypt") {
this.pref.SetBoolPref("wallet.crypto", true);
} else if (action == "obscure") {
this.pref.SetBoolPref("wallet.crypto", false);
}
return;
}
if (action == "cookieAllow" || action == "cookieBlock" ||
action == "imageAllow" || action == "imageBlock") {
var cookieViewer =
Components.classes["@mozilla.org/cookieviewer/cookieviewer-world;1"]
.createInstance(Components.interfaces["nsICookieViewer"]);
COOKIEPERMISSION = 0;
IMAGEPERMISSION = 1;
var element;
if (action == "cookieAllow") {
cookieViewer.AddPermission(window._content, true, COOKIEPERMISSION);
element = document.getElementById("AllowCookies");
alert(element.getAttribute("msg"));
} else if (action == "cookieBlock") {
cookieViewer.AddPermission(window._content, false, COOKIEPERMISSION);
element = document.getElementById("BlockCookies");
alert(element.getAttribute("msg"));
} else if (action == "imageAllow") {
cookieViewer.AddPermission(window._content, true, IMAGEPERMISSION);
element = document.getElementById("AllowImages");
alert(element.getAttribute("msg"));
} else if (action == "imageBlock") {
cookieViewer.AddPermission(window._content, false, IMAGEPERMISSION);
element = document.getElementById("BlockImages");
alert(element.getAttribute("msg"));
}
return;
}
var walletService = Components.classes["@mozilla.org/wallet/wallet-service;1"].getService(Components.interfaces.nsIWalletService);
switch( action ) {
case "safefill":
walletPreview(window._content);
break;
// case "password":
// walletService.WALLET_ChangePassword();
// break;
case "quickfill":
walletService.WALLET_Prefill(true, window._content);
break;
case "capture":
default:
status = walletService.WALLET_RequestToCapture(window._content);
break;
}
}
// display a Wallet Dialog
function WalletDialog( which )
{
switch( which ) {
case "signon":
window.openDialog("chrome://communicator/content/wallet/SignonViewer.xul","SSViewer","modal=yes,chrome,resizable=yes","S");
break;
case "cookie":
window.openDialog("chrome://communicator/content/wallet/CookieViewer.xul","CookieViewer","modal=yes,chrome,resizable=yes",0);
break;
case "image":
window.openDialog("chrome://communicator/content/wallet/CookieViewer.xul","CookieViewer","modal=yes,chrome,resizable=yes",2);
break;
case "samples":
window._content.location.href = 'chrome://communicator/locale/wallet/index.html';
break;
// case "interview":
// window._content.location.href = 'chrome://communicator/locale/wallet/interview.html';
// break;
case "walletsites":
window.openDialog("chrome://communicator/content/wallet/SignonViewer.xul","SSViewer","modal=yes,chrome,resizable=no","W");
break;
case "tutorial":
window._content.location.href =
this.pref.getLocalizedUnicharPref("wallet.TutorialFromMenu");
break;
case "wallet":
default:
window.openDialog(
"chrome://communicator/content/wallet/WalletViewer.xul",
"WalletViewer",
"chrome,titlebar,modal=yes,resizable=yes");
break;
}
}

Просмотреть файл

@ -53,84 +53,12 @@
<menuseparator/>
<menu value="&walletMenu.label;" accesskey="&walletMenu.accesskey;">
<menupopup id="personalManagers"
PasswordNotChanged = "&PasswordNotChanged;"
PasswordExpired = "&PasswordExpired;"
PasswordNotExpired = "&PasswordNotExpired;"
AllDataWillBeCleared = "&AllDataWillBeCleared;"
UnableToCapture = "&UnableToCapture;"
Captured = "&Captured;"
NotCaptured = "&NotCaptured;"
noPrefills = "&noPrefills;"
oncreate="CheckForWalletAndImage()">
<menu value="&walletPasswordManager.label;" accesskey="&walletPasswordManager.accesskey;">
<menupopup>
<menuitem value="&walletDisplaySignonsCmd.label;" accesskey="&walletDisplaySignonsCmd.accesskey;" oncommand="WalletDialog('signon');"/>
<menuitem value="&walletChangePasswordCmd.label;" accesskey="&walletChangePasswordCmd.accesskey;" oncommand="WalletAction('password');"/>
<menuitem value="&walletExpirePasswordCmd.label;" accesskey="&walletExpirePasswordCmd.accesskey;" oncommand="WalletAction('expire');"/>
<menuseparator/>
<menuitem value="&walletEncryptCmd.label;" id="encrypt"
accesskey="&walletEncryptCmd.accesskey;"
oncommand="WalletAction('encrypt');"/>
<menuitem value="&walletObscureCmd.label;" id="obscure"
accesskey="&walletObscureCmd.accesskey;"
oncommand="WalletAction('obscure');"/>
<menuitem value="&walletClearCmd.label;" id="clear"
accesskey="&walletClearCmd.accesskey;"
oncommand="WalletAction('clear');"/>
</menupopup>
</menu>
<menu value="&walletFormManager.label;" accesskey="&walletFormManager.accesskey;" id="wallet">
<menupopup>
<menuitem value="&walletContentsCmd.label;" accesskey="&walletContentsCmd.accesskey;" id="walleteditor" oncommand="WalletDialog('wallet');"/>
<menuitem value="&walletSitesCmd.label;" accesskey="&walletSitesCmd.accesskey;" id="walletsites" oncommand="WalletDialog('walletsites');"/>
<menuseparator/>
<!--
<menuitem value="&walletSafeFillCmd.label;" accesskey="&walletSafeFillCmd.accesskey;" id="walletSafeFill" oncommand="WalletAction('safefill');"/>
<menuitem value="&walletQuickFillCmd.label;" accesskey="&walletQuickFillCmd.accesskey;" id="walletQuickFill" oncommand="WalletAction('quickfill');"/>
<menuitem value="&walletRequestToCaptureCmd.label;" accesskey="&walletRequestToCaptureCmd.accesskey;" id="walletCapture" oncommand="WalletAction('capture');"/>
<menuseparator/>
<menuitem value="&walletInterviewCmd.label;" accesskey="&walletInterviewCmd.accesskey;" id="walletInterview" oncommand="WalletDialog('interview');"/>
-->
<menuitem value="&walletSamplesCmd.label;" accesskey="&walletSamplesCmd.accesskey;" id="walletSamples" oncommand="WalletDialog('samples');"/>
</menupopup>
</menu>
<menu value="&walletCookieManager.label;" accesskey="&walletCookieManager.accesskey;">
<menupopup>
<menuitem value="&walletDisplayCookiesCmd.label;"
accesskey="&walletDisplayCookiesCmd.accesskey;"
oncommand="WalletDialog('cookie');"/>
<menuitem id="AllowCookies" value="&walletAllowCookiesCmd.label;"
accesskey="&walletAllowCookiesCmd.accesskey;"
msg="&walletAllowCookiesMsg.label;"
oncommand="WalletAction('cookieAllow');"/>
<menuitem id="BlockCookies" value="&walletBlockCookiesCmd.label;"
accesskey="&walletBlockCookiesCmd.accesskey;"
msg="&walletBlockCookiesMsg.label;"
oncommand="WalletAction('cookieBlock');"/>
</menupopup>
</menu>
<menu value="&walletImageManager.label;" accesskey="&walletImageManager.accesskey;" id="image">
<menupopup>
<menuitem value="&walletDisplayImagesCmd.label;"
accesskey="&walletDisplayImagesCmd.accesskey;"
oncommand="WalletDialog('image');"/>
<menuitem id="AllowImages" value="&walletAllowImagesCmd.label;"
accesskey="&walletAllowImagesCmd.accesskey;"
msg="&walletAllowImagesMsg.label;"
oncommand="WalletAction('imageAllow');"/>
<menuitem id="BlockImages" value="&walletBlockImagesCmd.label;"
accesskey="&walletBlockImagesCmd.accesskey;"
msg="&walletBlockImagesMsg.label;"
oncommand="WalletAction('imageBlock');"/>
</menupopup>
</menu>
<menuseparator/>
<menuitem value="&walletTutorialCmd.label;" accesskey="&walletTutorialCmd.accesskey;" oncommand="WalletDialog('tutorial');"/>
</menupopup>
</menu>
<menuseparator/>
<menu value="&privacyMenu.label;" accesskey="&privacyMenu.accesskey;">
<menupopup id="personalManagers">
<menuitem id="lastInPersonalManagers" style="display:none;"/>
</menupopup>
</menu>
<menuseparator/>
<menu value="&toolsMenu.label;" accesskey="&toolsMenu.accesskey;">
<menupopup id="toolsPopup" oncreate="javaItemEnabling();">

Просмотреть файл

@ -88,50 +88,6 @@ function goEditCardDialog(abURI, card, okCallback)
{abURI:abURI, card:card, okCallback:okCallback});
}
function okToCapture2(formsArray) {
if (!formsArray) {
return false;
}
var form;
for (form=0; form<formsArray.length; form++) {
var elementsArray = formsArray[form].elements;
var element;
for (element=0; element<elementsArray.length; element++) {
var type = elementsArray[element].type;
var value = elementsArray[element].value;
if ((type=="" || type=="text") && value!="") {
return true;
}
}
}
return false;
}
function okToPrefill2(formsArray) {
if (!formsArray) {
return false;
}
var form;
for (form=0; form<formsArray.length; form++) {
var elementsArray = formsArray[form].elements;
var element;
for (element=0; element<elementsArray.length; element++) {
var type = elementsArray[element].type;
if (type=="" || type=="text" || type=="select-one") {
/* prefill-able element found, see if there is a saved value for it */
var walletService = Components.classes["@mozilla.org/wallet/wallet-service;1"].getService(Components.interfaces.nsIWalletService);
var value = walletService.WALLET_PrefillOneElement
(window._content, elementsArray[element]);
if (value != "") {
return true;
}
}
}
}
return false;
}
function goPreferences(containerID, paneURL, itemID)
{
var prefWindowModalityPref;
@ -147,96 +103,6 @@ function goPreferences(containerID, paneURL, itemID)
var prefWindow = openDialog("chrome://communicator/content/pref/pref.xul","PrefWindow", "chrome,titlebar,modal=" + modality+ ",resizable=yes", paneURL, containerID, itemID);
}
function okToCapture() {
var capture = document.getElementById("menu_capture");
if (!capture) {
return;
}
if (!window._content || !window._content.document) {
capture.setAttribute("disabled", "true");
return;
}
// process frames if any
var formsArray;
var framesArray = window._content.frames;
if (framesArray.length != 0) {
var frame;
for (frame=0; frame<framesArray.length; frame++) {
formsArray = framesArray[frame].document.forms;
if (okToCapture2(formsArray)) {
capture.setAttribute("disabled", "false");
return;
}
}
}
// process top-level document
formsArray = window._content.document.forms;
if (okToCapture2(formsArray)) {
capture.setAttribute("disabled", "false");
} else {
capture.setAttribute("disabled", "true");
}
return;
}
function okToPrefill() {
var prefill = document.getElementById("menu_prefill");
if (!prefill) {
return;
}
if (!window._content || !window._content.document) {
prefill.setAttribute("disabled", "true");
return;
}
// process frames if any
var formsArray;
var framesArray = window._content.frames;
if (framesArray.length != 0) {
var frame;
for (frame=0; frame<framesArray.length; frame++) {
formsArray = framesArray[frame].document.forms;
if (okToPrefill2(formsArray)) {
prefill.setAttribute("disabled", "false");
return;
}
}
}
// process top-level document
formsArray = window._content.document.forms;
if (okToPrefill2(formsArray)) {
prefill.setAttribute("disabled", "false");
} else {
prefill.setAttribute("disabled", "true");
}
return;
}
function capture()
{
var walletService = Components.classes["@mozilla.org/wallet/wallet-service;1"].getService(Components.interfaces.nsIWalletService);
walletService.WALLET_RequestToCapture(window._content);
}
function prefill()
{
walletPreview(window._content);
}
// eventually should be moved into wallet code
function walletPreview(aForm) {
var walletService = Components.classes["@mozilla.org/wallet/wallet-service;1"].getService(Components.interfaces.nsIWalletService);
walletService.WALLET_Prefill(false, aForm);
window.openDialog("chrome://communicator/content/wallet/WalletPreview.xul",
"_blank", "chrome,modal=yes,dialog=yes,all, width=504, height=436");
}
function goToggleToolbar( id, elementID )
{
var toolbar = document.getElementById( id );
@ -355,11 +221,6 @@ function goUpdateGlobalEditMenuItems()
goUpdateCommand('cmd_delete');
}
function goUpdateFormsEditMenuItems() {
okToCapture();
okToPrefill();
}
// update menu items that rely on the current selection
function goUpdateSelectEditMenuItems()
{

Просмотреть файл

@ -41,7 +41,7 @@
<key id="key_newNavigator" key="&newNavigatorCmd.key;" observes="cmd_newNavigator" modifiers="accel"/>
<!-- Edit Menu -->
<menu id="menu_Edit" value="&editMenu.label;" accesskey="&editMenu.accesskey;" oncreate="goUpdateFormsEditMenuItems();"/>
<menu id="menu_Edit" value="&editMenu.label;" accesskey="&editMenu.accesskey;"/>
<menuitem id="menu_undo" value="&undoCmd.label;" key="key_undo" accesskey="&undoCmd.accesskey;" observes="cmd_undo"/>
<menuitem id="menu_redo" value="&redoCmd.label;" key="key_redo" accesskey="&redoCmd.accesskey;" observes="cmd_redo"/>
<menuitem id="menu_cut" value="&cutCmd.label;" key="key_cut" accesskey="&cutCmd.accesskey;" observes="cmd_cut"/>
@ -49,8 +49,6 @@
<menuitem id="menu_paste" value="&pasteCmd.label;" key="key_paste" accesskey="&pasteCmd.accesskey;" observes="cmd_paste"/>
<menuitem id="menu_delete" value="&deleteCmd.label;" key="key_delete" accesskey="&deleteCmd.accesskey;" observes="cmd_delete"/>
<menuitem id="menu_selectAll" value="&selectAllCmd.label;" key="key_selectAll" accesskey="&selectAllCmd.accesskey;" observes="cmd_selectAll"/>
<menuitem id="menu_capture" value="&captureCmd.label;" accesskey="&captureCmd.accesskey;" observes="cmd_capture"/>
<menuitem id="menu_prefill" value="&prefillCmd.label;" accesskey="&prefillCmd.accesskey;" observes="cmd_prefill"/>
<key id="key_undo" key="&undoCmd.key;" observes="cmd_undo" modifiers="accel"/>
<key id="key_redo" key="&redoCmd.key;" observes="cmd_redo" modifiers="accel"/>
@ -101,14 +99,6 @@
<broadcaster id="cmd_selectAll"
oncommand="goDoCommand('cmd_selectAll')"
disabled="true"/>
<!--
<broadcaster id="cmd_capture"
oncommandupdate="okToCapture()"
disabled="true"/>
<broadcaster id="cmd_prefill"
oncommandupdate="okToPrefill()"
disabled="true"/>
-->
<!-- Not needed yet, window just needs a broadcaster with this id and oncommand= broadcaster id="cmd_preferences"/-->

Просмотреть файл

@ -1,6 +1,4 @@
<!-- Context Menu -->
<!ENTITY blockImageCmd.label "Block Image from Loading">
<!ENTITY blockImageCmd.accesskey "k">
<!ENTITY openLinkCmd.label "Open Link in New Window">
<!ENTITY openLinkCmd.accesskey "o">
<!ENTITY editLinkCmd.label "Edit Link in Composer">
@ -54,7 +52,5 @@
<!ENTITY copyImageCmd.accesskey "m">
<!ENTITY pasteCmd.label "Paste">
<!ENTITY pasteCmd.accesskey "p">
<!ENTITY captureCmd.label "Save Form Data">
<!ENTITY prefillCmd.label "Prefill Form">
<!ENTITY cutCmd.label "Cut">
<!ENTITY cutCmd.accesskey "u">

Просмотреть файл

@ -28,74 +28,11 @@
<!ENTITY javaScriptConsoleCmd.label "JavaScript Console">
<!ENTITY javaScriptConsoleCmd.accesskey "s">
<!-- LOCALIZATION NOTE (walletMenu.label): DONT_TRANSLATE -->
<!ENTITY walletMenu.label "Privacy and Security">
<!ENTITY walletMenu.accesskey "p">
<!ENTITY walletFormManager.label "Form Manager">
<!ENTITY walletFormManager.accesskey "f">
<!ENTITY walletPasswordManager.label "Password Manager">
<!ENTITY walletPasswordManager.accesskey "p">
<!ENTITY walletSafeFillCmd.label "Prefill Form">
<!ENTITY walletSafeFillCmd.accesskey "f">
<!ENTITY walletQuickFillCmd.label "Prefill Form Quickly">
<!ENTITY walletQuickFillCmd.accesskey "q">
<!ENTITY walletRequestToCaptureCmd.label "Save Form Data">
<!ENTITY walletRequestToCaptureCmd.accesskey "S">
<!-- LOCALIZATION NOTE (walletContentsCmd.label): Do NOT translate "Wallet"-->
<!ENTITY walletContentsCmd.label "View Stored Form Data">
<!ENTITY walletContentsCmd.accesskey "v">
<!ENTITY walletSitesCmd.label "View Sites">
<!ENTITY walletSitesCmd.accesskey "w">
<!ENTITY walletDisplaySignonsCmd.label "View Stored Passwords">
<!ENTITY walletDisplaySignonsCmd.accesskey "v">
<!ENTITY walletDisplayCookiesCmd.label "View Stored Cookies">
<!ENTITY walletDisplayCookiesCmd.accesskey "v">
<!ENTITY walletAllowCookiesCmd.label "Unblock Cookies from this Site">
<!ENTITY walletAllowCookiesCmd.accesskey "u">
<!ENTITY walletAllowCookiesMsg.label "Cookies from this site will not be blocked">
<!ENTITY walletBlockCookiesCmd.label "Block Cookies from this Site">
<!ENTITY walletBlockCookiesCmd.accesskey "b">
<!ENTITY walletBlockCookiesMsg.label "Cookies from this site will always be rejected">
<!ENTITY walletDisplayImagesCmd.label "View Sites that can/cannot Display Images">
<!ENTITY walletDisplayImagesCmd.accesskey "v">
<!ENTITY walletAllowImagesCmd.label "Unblock Images from this Site">
<!ENTITY walletAllowImagesCmd.accesskey "u">
<!ENTITY walletAllowImagesMsg.label "Images from this site will always be downloaded">
<!ENTITY walletBlockImagesCmd.label "Block Images from this Site">
<!ENTITY walletBlockImagesCmd.accesskey "b">
<!ENTITY walletBlockImagesMsg.label "Images from this site will never be downloaded">
<!ENTITY walletInterviewCmd.label "Interview">
<!ENTITY walletInterviewCmd.accesskey "i">
<!ENTITY walletSamplesCmd.label "Demonstration">
<!ENTITY walletSamplesCmd.accesskey "d">
<!ENTITY walletTutorialCmd.label "Understanding Privacy">
<!ENTITY walletTutorialCmd.accesskey "u">
<!ENTITY walletChangePasswordCmd.label "Change Personal Security Password...">
<!ENTITY walletChangePasswordCmd.accesskey "c">
<!ENTITY walletExpirePasswordCmd.label "Log Out">
<!ENTITY walletExpirePasswordCmd.accesskey "l">
<!ENTITY walletEncryptCmd.label "Encrypt Sensitive Information">
<!ENTITY walletEncryptCmd.accesskey "e">
<!ENTITY walletObscureCmd.label "Obscure Sensitive Information">
<!ENTITY walletObscureCmd.accesskey "o">
<!ENTITY walletClearCmd.label "Clear Sensitive Information">
<!ENTITY walletClearCmd.accesskey "r">
<!ENTITY walletCookieManager.label "Cookie Manager">
<!ENTITY walletCookieManager.accesskey "c">
<!ENTITY walletImageManager.label "Image Manager">
<!ENTITY walletImageManager.accesskey "i">
<!-- LOCALIZATION NOTE (privacyMenu.label): DONT_TRANSLATE -->
<!ENTITY privacyMenu.label "Privacy and Security">
<!ENTITY privacyMenu.accesskey "p">
<!ENTITY taskNavigator.tooltip "Navigator">
<!ENTITY taskComposer.tooltip "Composer">
<!ENTITY taskAddressBook.tooltip "Address Book">
<!ENTITY taskBar.tooltip "Taskbar">
<!ENTITY PasswordNotChanged "Unable to change the password that protects your sensitive information.">
<!ENTITY PasswordExpired "Your sensitive information is now locked.">
<!ENTITY PasswordNotExpired "Unable to lock your sensitive information.">
<!ENTITY AllDataWillBeCleared "All stored data will be erased.">
<!ENTITY UnableToCapture "Unable to capture data.">
<!ENTITY Captured "Data has been captured.">
<!ENTITY NotCaptured "There is nothing to capture.">
<!ENTITY noPrefills "There are no fields that can be prefilled.">

Просмотреть файл

@ -48,12 +48,6 @@
<!ENTITY preferencesCmd.label "Preferences...">
<!ENTITY preferencesCmd.key "E">
<!ENTITY preferencesCmd.accesskey "e">
<!ENTITY captureCmd.label "Save Form Data">
<!ENTITY captureCmd.key "S">
<!ENTITY captureCmd.accesskey "s">
<!ENTITY prefillCmd.label "Prefill Form">
<!ENTITY prefillCmd.key "F">
<!ENTITY prefillCmd.accesskey "m">
<!ENTITY viewMenu.label "View">
<!ENTITY viewMenu.accesskey "v">

Просмотреть файл

@ -7,7 +7,6 @@ comm.jar:
content/communicator/history/history.js (history/resources/history.js)
content/communicator/history/history-test.xul (history/resources/history-test.xul)
content/communicator/history/history-test.js (history/resources/history-test.js)
content/communicator/pref/pref-passwords.xul (prefwindow/resources/content/pref-passwords.xul)
content/communicator/pref/pref-advanced.xul (prefwindow/resources/content/pref-advanced.xul)
content/communicator/pref/pref-appearance.xul (prefwindow/resources/content/pref-appearance.xul)
content/communicator/pref/pref-applications.xul (prefwindow/resources/content/pref-applications.xul)
@ -20,7 +19,6 @@ comm.jar:
content/communicator/pref/pref-cache.xul (prefwindow/resources/content/pref-cache.xul)
content/communicator/pref/pref-colors.js (prefwindow/resources/content/pref-colors.js)
content/communicator/pref/pref-colors.xul (prefwindow/resources/content/pref-colors.xul)
content/communicator/pref/pref-cookies.xul (prefwindow/resources/content/pref-cookies.xul)
content/communicator/pref/pref-themes.xul (prefwindow/resources/content/pref-themes.xul)
content/communicator/pref/pref-themes.js (prefwindow/resources/content/pref-themes.js)
content/communicator/pref/pref-charset.js (prefwindow/resources/content/pref-charset.js)
@ -46,7 +44,6 @@ comm.jar:
content/communicator/pref/pref-search.xul (prefwindow/resources/content/pref-search.xul)
content/communicator/pref/pref-smart_browsing.xul (prefwindow/resources/content/pref-smart_browsing.xul)
content/communicator/pref/pref-smartupdate.xul (prefwindow/resources/content/pref-smartupdate.xul)
content/communicator/pref/pref-wallet.xul (prefwindow/resources/content/pref-wallet.xul)
content/communicator/pref/pref.xul (prefwindow/resources/content/pref.xul)
content/communicator/pref/nsPrefWindow.js (prefwindow/resources/content/nsPrefWindow.js)
content/communicator/pref/preftree.xul (prefwindow/resources/content/preftree.xul)
@ -54,7 +51,6 @@ comm.jar:
content/communicator/pref/pref-winhooks.xul (prefwindow/resources/content/pref-winhooks.xul)
content/communicator/pref/pref-winhooks.js (prefwindow/resources/content/pref-winhooks.js)
content/communicator/pref/prefutilities.js (prefwindow/resources/content/prefutilities.js)
content/communicator/pref/pref-images.xul (prefwindow/resources/content/pref-images.xul)
content/communicator/regviewer/regviewer.js (regviewer/regviewer.js)
content/communicator/regviewer/regviewer.xul (regviewer/regviewer.xul)
content/communicator/related/related-panel.xul (related/resources/related-panel.xul)
@ -101,14 +97,12 @@ en-US.jar:
locale/en-US/communicator/pref/pref-charset.dtd (prefwindow/resources/locale/en-US/pref-charset.dtd)
locale/en-US/communicator/pref/pref-colors.dtd (prefwindow/resources/locale/en-US/pref-colors.dtd)
locale/en-US/communicator/pref/pref-themes.dtd (prefwindow/resources/locale/en-US/pref-themes.dtd)
locale/en-US/communicator/pref/pref-cookies.dtd (prefwindow/resources/locale/en-US/pref-cookies.dtd)
locale/en-US/communicator/pref/pref-download.dtd (prefwindow/resources/locale/en-US/pref-download.dtd)
locale/en-US/communicator/pref/pref-debug.dtd (prefwindow/resources/locale/en-US/pref-debug.dtd)
locale/en-US/communicator/pref/pref-debug1.dtd (prefwindow/resources/locale/en-US/pref-debug1.dtd)
locale/en-US/communicator/pref/pref-debug2.dtd (prefwindow/resources/locale/en-US/pref-debug2.dtd)
locale/en-US/communicator/pref/pref-fonts.dtd (prefwindow/resources/locale/en-US/pref-fonts.dtd)
locale/en-US/communicator/pref/pref-history.dtd (prefwindow/resources/locale/en-US/pref-history.dtd)
locale/en-US/communicator/pref/pref-images.dtd (prefwindow/resources/locale/en-US/pref-images.dtd)
locale/en-US/communicator/pref/pref-languages.dtd (prefwindow/resources/locale/en-US/pref-languages.dtd)
locale/en-US/communicator/pref/pref-languages.properties (prefwindow/resources/locale/en-US/pref-languages.properties)
locale/en-US/communicator/pref/pref-navigator.dtd (prefwindow/resources/locale/en-US/pref-navigator.dtd)
@ -122,10 +116,8 @@ en-US.jar:
locale/en-US/communicator/pref/prefutilities.properties (prefwindow/resources/locale/en-US/prefutilities.properties)
locale/en-US/communicator/pref/preftree.dtd (prefwindow/resources/locale/en-US/preftree.dtd)
locale/en-US/communicator/pref/pref.dtd (prefwindow/resources/locale/en-US/pref.dtd)
locale/en-US/communicator/pref/pref-wallet.dtd (prefwindow/resources/locale/en-US/pref-wallet.dtd)
locale/en-US/communicator/pref/pref-mousewheel.dtd (prefwindow/resources/locale/en-US/pref-mousewheel.dtd)
locale/en-US/communicator/pref/pref-winhooks.dtd (prefwindow/resources/locale/en-US/pref-winhooks.dtd)
locale/en-US/communicator/pref/pref-passwords.dtd (prefwindow/resources/locale/en-US/pref-passwords.dtd)
locale/en-US/communicator/regviewer/regviewer.dtd (regviewer/locale/en-US/regviewer.dtd)
locale/en-US/communicator/search/find.dtd (search/resources/locale/en-US/find.dtd)
locale/en-US/communicator/search/findresults.dtd (search/resources/locale/en-US/findresults.dtd)

Просмотреть файл

@ -39,7 +39,6 @@ CHROME_CONTENT = \
.\pref-cache.xul \
.\pref-colors.js \
.\pref-colors.xul \
.\pref-cookies.xul \
.\pref-themes.xul \
.\pref-themes.js \
.\pref-charset.js \
@ -51,7 +50,6 @@ CHROME_CONTENT = \
.\pref-fonts.xul \
.\pref-fonts.js \
.\pref-history.xul \
.\pref-images.xul \
.\pref-languages.xul \
.\pref-languages-add.xul \
.\pref-languages.js \
@ -65,8 +63,6 @@ CHROME_CONTENT = \
.\pref-search.xul \
.\pref-smart_browsing.xul \
.\pref-smartupdate.xul \
.\pref-wallet.xul \
.\pref-passwords.xul \
.\pref.xul \
.\nsPrefWindow.js \
.\preftree.xul \

Просмотреть файл

@ -125,29 +125,6 @@
<treecell class="treecell-indent" url="chrome://communicator/content/pref/pref-advanced.xul" value="&advance.label;"/>
</treerow>
<treechildren id="advancedChildren">
<treeitem>
<treerow>
<treecell class="treecell-indent" url="chrome://communicator/content/pref/pref-cookies.xul"
value="&cookies.label;"
id="cookiesCell"/>
</treerow>
</treeitem>
<treeitem>
<treerow>
<treecell class="treecell-indent" url="chrome://communicator/content/pref/pref-images.xul"
value="&images.label;"/>
</treerow>
</treeitem>
<treeitem>
<treerow>
<treecell class="treecell-indent" url="chrome://communicator/content/pref/pref-wallet.xul" value="&wallet.label;"/>
</treerow>
</treeitem>
<treeitem>
<treerow>
<treecell class="treecell-indent" url="chrome://communicator/content/pref/pref-passwords.xul" value="&passwords.label;"/>
</treerow>
</treeitem>
<treeitem>
<treerow>
<treecell class="treecell-indent" url="chrome://communicator/content/pref/pref-cache.xul" value="&cache.label;"/>

Просмотреть файл

@ -36,14 +36,12 @@ CHROME_L10N = \
.\pref-charset.dtd \
.\pref-colors.dtd \
.\pref-themes.dtd \
.\pref-cookies.dtd \
.\pref-download.dtd \
.\pref-debug.dtd \
.\pref-debug1.dtd \
.\pref-debug2.dtd \
.\pref-fonts.dtd \
.\pref-history.dtd \
.\pref-images.dtd \
.\pref-languages.dtd \
.\pref-languages.properties \
.\pref-navigator.dtd \
@ -56,8 +54,6 @@ CHROME_L10N = \
.\prefutilities.properties \
.\preftree.dtd \
.\pref.dtd \
.\pref-wallet.dtd \
.\pref-passwords.dtd \
.\pref-mousewheel.dtd \
.\pref-winhooks.dtd \
$(NULL)

Просмотреть файл

@ -20,10 +20,6 @@
<!ENTITY offline.label "Offline">
<!ENTITY advance.label "Advanced">
<!ENTITY down.label "Download">
<!ENTITY cookies.label "Cookies">
<!ENTITY images.label "Images">
<!ENTITY wallet.label "Forms">
<!ENTITY passwords.label "Passwords">
<!ENTITY cache.label "Cache">
<!ENTITY proxies.label "Proxies">
<!ENTITY smart.label "Software Installation">