mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-11-05 00:25:27 +00:00
Merge.
This commit is contained in:
commit
4deb69bc04
@ -19,8 +19,7 @@
|
|||||||
^security/manager/\.nss\.checkout$
|
^security/manager/\.nss\.checkout$
|
||||||
|
|
||||||
# Build directories
|
# Build directories
|
||||||
^obj-
|
^obj
|
||||||
^objdir-
|
|
||||||
|
|
||||||
# Build directories for js shell
|
# Build directories for js shell
|
||||||
_DBG\.OBJ/
|
_DBG\.OBJ/
|
||||||
|
6
.hgtags
6
.hgtags
@ -2,3 +2,9 @@ df7a3c8ffeeaba229067efee5a20e21dae0dd877 MOZILLA_1_9_a4_BASE
|
|||||||
4209e16b58411750ac73f761023e46b76b793e2c MOZILLA_1_9_a6_BASE
|
4209e16b58411750ac73f761023e46b76b793e2c MOZILLA_1_9_a6_BASE
|
||||||
66a5c7bce7ee86a820d3c0d54fa07cb719be751c MOZILLA_1_9_a7_BASE
|
66a5c7bce7ee86a820d3c0d54fa07cb719be751c MOZILLA_1_9_a7_BASE
|
||||||
caeba7562e495a9f604984df0b48b6f99bec3e2e FENNEC_M4
|
caeba7562e495a9f604984df0b48b6f99bec3e2e FENNEC_M4
|
||||||
|
9d9941eacb14827fdab4716710042fdde84eb60d FIREFOX_3_1a1_RELEASE
|
||||||
|
9d9941eacb14827fdab4716710042fdde84eb60d FIREFOX_3_1a1_BUILD1
|
||||||
|
c1d7e318a27574c995631fec166ad42672475702 FIREFOX_3_1a1_BUILD2
|
||||||
|
c1d7e318a27574c995631fec166ad42672475702 FIREFOX_3_1a1_RELEASE
|
||||||
|
afc4ee509d9ca3bb4031015c3c22963dcb4b7e7f FIREFOX_3_1a1_RELEASE
|
||||||
|
afc4ee509d9ca3bb4031015c3c22963dcb4b7e7f FIREFOX_3_1a1_BUILD2
|
||||||
|
@ -66,6 +66,11 @@ ifdef MOZ_MEMORY
|
|||||||
tier_base_dirs += memory/jemalloc
|
tier_base_dirs += memory/jemalloc
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
ifdef ENABLE_TESTS
|
||||||
|
# Additional makefile targets to call automated test suites
|
||||||
|
include $(topsrcdir)/testing/testsuite-targets.mk
|
||||||
|
endif
|
||||||
|
|
||||||
include $(topsrcdir)/$(MOZ_BUILD_APP)/build.mk
|
include $(topsrcdir)/$(MOZ_BUILD_APP)/build.mk
|
||||||
|
|
||||||
TIERS += testharness
|
TIERS += testharness
|
||||||
|
@ -94,7 +94,10 @@ EXTRA_DSO_LDOPTS += $(MOZ_GTK2_LIBS)
|
|||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(OS_ARCH),WINNT)
|
ifeq ($(OS_ARCH),WINNT)
|
||||||
OS_LIBS += oleaut32.lib
|
OS_LIBS += \
|
||||||
|
oleaut32.lib \
|
||||||
|
version.lib \
|
||||||
|
$(NULL)
|
||||||
endif
|
endif
|
||||||
|
|
||||||
include $(topsrcdir)/config/rules.mk
|
include $(topsrcdir)/config/rules.mk
|
||||||
|
@ -93,34 +93,26 @@ cpp_quote("")
|
|||||||
import "objidl.idl";
|
import "objidl.idl";
|
||||||
import "oaidl.idl";
|
import "oaidl.idl";
|
||||||
|
|
||||||
|
|
||||||
const long DISPID_DOC_URL = -5904;
|
|
||||||
const long DISPID_DOC_TITLE = -5905;
|
|
||||||
const long DISPID_DOC_MIMETYPE = -5906;
|
|
||||||
const long DISPID_DOC_DOCTYPE = -5907;
|
|
||||||
const long DISPID_DOC_NAMESPACE = -5908;
|
|
||||||
const long DISPID_DOC_MEDIATYPES = -5909;
|
|
||||||
|
|
||||||
[object, uuid(0D68D6D0-D93D-4d08-A30D-F00DD1F45B24)]
|
[object, uuid(0D68D6D0-D93D-4d08-A30D-F00DD1F45B24)]
|
||||||
interface ISimpleDOMDocument : IUnknown
|
interface ISimpleDOMDocument : IUnknown
|
||||||
{
|
{
|
||||||
[propget, id(DISPID_DOC_URL)] HRESULT URL(
|
[propget] HRESULT URL(
|
||||||
[out, retval] BSTR * url
|
[out, retval] BSTR * url
|
||||||
);
|
);
|
||||||
[propget, id(DISPID_DOC_TITLE)] HRESULT title(
|
[propget] HRESULT title(
|
||||||
[out, retval] BSTR * title
|
[out, retval] BSTR * title
|
||||||
);
|
);
|
||||||
[propget, id(DISPID_DOC_MIMETYPE)] HRESULT mimeType(
|
[propget] HRESULT mimeType(
|
||||||
[out, retval] BSTR * mimeType
|
[out, retval] BSTR * mimeType
|
||||||
);
|
);
|
||||||
[propget, id(DISPID_DOC_DOCTYPE)] HRESULT docType(
|
[propget] HRESULT docType(
|
||||||
[out, retval] BSTR * docType
|
[out, retval] BSTR * docType
|
||||||
);
|
);
|
||||||
[propget, id(DISPID_DOC_NAMESPACE)] HRESULT nameSpaceURIForID(
|
[propget] HRESULT nameSpaceURIForID(
|
||||||
[in] short nameSpaceID,
|
[in] short nameSpaceID,
|
||||||
[out, retval] BSTR * nameSpaceURI
|
[out, retval] BSTR * nameSpaceURI
|
||||||
);
|
);
|
||||||
[propput, id(DISPID_DOC_MEDIATYPES)] HRESULT alternateViewMediaTypes(
|
[propput] HRESULT alternateViewMediaTypes(
|
||||||
[in] BSTR * commaSeparatedMediaTypes
|
[in] BSTR * commaSeparatedMediaTypes
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
@ -134,12 +134,8 @@ cpp_quote("")
|
|||||||
import "objidl.idl";
|
import "objidl.idl";
|
||||||
import "oaidl.idl";
|
import "oaidl.idl";
|
||||||
|
|
||||||
const long DISPID_NODE_NODEINFO = -5900;
|
import "ISimpleDOMText.idl";
|
||||||
const long DISPID_NODE_ATTRIBUTES = -5901;
|
import "ISimpleDOMDocument.idl";
|
||||||
const long DISPID_NODE_ATTRIBUTESFORNAMES = -5902;
|
|
||||||
const long DISPID_NODE_COMPSTYLE = -5903;
|
|
||||||
const long DISPID_NODE_COMPSTYLEFORPROPS = -5904;
|
|
||||||
const long DISPID_NODE_LANGUAGE = -5905;
|
|
||||||
|
|
||||||
[object, uuid(1814ceeb-49e2-407f-af99-fa755a7d2607)]
|
[object, uuid(1814ceeb-49e2-407f-af99-fa755a7d2607)]
|
||||||
interface ISimpleDOMNode : IUnknown
|
interface ISimpleDOMNode : IUnknown
|
||||||
@ -157,7 +153,7 @@ interface ISimpleDOMNode : IUnknown
|
|||||||
const unsigned short NODETYPE_DOCUMENT_FRAGMENT = 11;
|
const unsigned short NODETYPE_DOCUMENT_FRAGMENT = 11;
|
||||||
const unsigned short NODETYPE_NOTATION = 12;
|
const unsigned short NODETYPE_NOTATION = 12;
|
||||||
|
|
||||||
[propget, id(DISPID_NODE_NODEINFO)] HRESULT nodeInfo(
|
[propget] HRESULT nodeInfo(
|
||||||
[out] BSTR *nodeName, // for performance returns NULL for text nodes (true nodeName would be "#text")
|
[out] BSTR *nodeName, // for performance returns NULL for text nodes (true nodeName would be "#text")
|
||||||
[out] short *nameSpaceID,
|
[out] short *nameSpaceID,
|
||||||
[out] BSTR *nodeValue,
|
[out] BSTR *nodeValue,
|
||||||
@ -166,7 +162,7 @@ interface ISimpleDOMNode : IUnknown
|
|||||||
[out, retval] unsigned short *nodeType
|
[out, retval] unsigned short *nodeType
|
||||||
);
|
);
|
||||||
|
|
||||||
[propget, id(DISPID_NODE_ATTRIBUTES)] HRESULT attributes(
|
[propget] HRESULT attributes(
|
||||||
[in] unsigned short maxAttribs,
|
[in] unsigned short maxAttribs,
|
||||||
[out, size_is(maxAttribs), length_is(*numAttribs)] BSTR *attribNames,
|
[out, size_is(maxAttribs), length_is(*numAttribs)] BSTR *attribNames,
|
||||||
[out, size_is(maxAttribs), length_is(*numAttribs)] short *nameSpaceID,
|
[out, size_is(maxAttribs), length_is(*numAttribs)] short *nameSpaceID,
|
||||||
@ -174,14 +170,14 @@ interface ISimpleDOMNode : IUnknown
|
|||||||
[out, retval] unsigned short *numAttribs
|
[out, retval] unsigned short *numAttribs
|
||||||
);
|
);
|
||||||
|
|
||||||
[propget, id(DISPID_NODE_ATTRIBUTESFORNAMES)] HRESULT attributesForNames(
|
[propget] HRESULT attributesForNames(
|
||||||
[in] unsigned short numAttribs,
|
[in] unsigned short numAttribs,
|
||||||
[in, size_is(numAttribs), length_is(numAttribs)] BSTR *attribNames,
|
[in, size_is(numAttribs), length_is(numAttribs)] BSTR *attribNames,
|
||||||
[in, size_is(numAttribs), length_is(numAttribs)] short *nameSpaceID,
|
[in, size_is(numAttribs), length_is(numAttribs)] short *nameSpaceID,
|
||||||
[out, retval, size_is(numAttribs), length_is(numAttribs)] BSTR *attribValues
|
[out, retval, size_is(numAttribs), length_is(numAttribs)] BSTR *attribValues
|
||||||
);
|
);
|
||||||
|
|
||||||
[propget, id(DISPID_NODE_COMPSTYLE)] HRESULT computedStyle(
|
[propget] HRESULT computedStyle(
|
||||||
[in] unsigned short maxStyleProperties,
|
[in] unsigned short maxStyleProperties,
|
||||||
[in] boolean useAlternateView, // If TRUE, returns properites for media as set in nsIDOMDocument::set_alternateViewMediaTypes
|
[in] boolean useAlternateView, // If TRUE, returns properites for media as set in nsIDOMDocument::set_alternateViewMediaTypes
|
||||||
[out, size_is(maxStyleProperties), length_is(*numStyleProperties)] BSTR *styleProperties,
|
[out, size_is(maxStyleProperties), length_is(*numStyleProperties)] BSTR *styleProperties,
|
||||||
@ -189,7 +185,7 @@ interface ISimpleDOMNode : IUnknown
|
|||||||
[out, retval] unsigned short *numStyleProperties
|
[out, retval] unsigned short *numStyleProperties
|
||||||
);
|
);
|
||||||
|
|
||||||
[propget, id(DISPID_NODE_COMPSTYLEFORPROPS)] HRESULT computedStyleForProperties(
|
[propget] HRESULT computedStyleForProperties(
|
||||||
[in] unsigned short numStyleProperties,
|
[in] unsigned short numStyleProperties,
|
||||||
[in] boolean useAlternateView, // If TRUE, returns properites for media as set in nsIDOMDocument::set_alternateViewMediaTypes
|
[in] boolean useAlternateView, // If TRUE, returns properites for media as set in nsIDOMDocument::set_alternateViewMediaTypes
|
||||||
[in, size_is(numStyleProperties), length_is(numStyleProperties)] BSTR *styleProperties,
|
[in, size_is(numStyleProperties), length_is(numStyleProperties)] BSTR *styleProperties,
|
||||||
@ -210,7 +206,18 @@ interface ISimpleDOMNode : IUnknown
|
|||||||
|
|
||||||
[propget, local] HRESULT localInterface([out][retval] void **localInterface);
|
[propget, local] HRESULT localInterface([out][retval] void **localInterface);
|
||||||
|
|
||||||
[propget, id(DISPID_NODE_LANGUAGE)] HRESULT language([out, retval] BSTR *language);
|
[propget] HRESULT language([out, retval] BSTR *language);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
[
|
||||||
|
uuid(a6245497-9c0b-4449-85a5-bd6ad07df8ea),
|
||||||
|
helpstring("ISimpleDOM Type Library")
|
||||||
|
]
|
||||||
|
library ISimpleDOM
|
||||||
|
{
|
||||||
|
interface ISimpleDOMNode;
|
||||||
|
interface ISimpleDOMText;
|
||||||
|
interface ISimpleDOMDocument;
|
||||||
|
};
|
||||||
|
|
||||||
|
@ -98,7 +98,7 @@ done_gen: ISimpleDOMNode.idl \
|
|||||||
ISimpleDOMDocument.idl \
|
ISimpleDOMDocument.idl \
|
||||||
ISimpleDOMText.idl
|
ISimpleDOMText.idl
|
||||||
|
|
||||||
$(MIDL) $(MIDL_FLAGS) -Oicf $(srcdir)/ISimpleDOMNode.idl
|
$(MIDL) $(MIDL_FLAGS) -I $(srcdir) -Oicf $(srcdir)/ISimpleDOMNode.idl
|
||||||
$(MIDL) $(MIDL_FLAGS) -Oicf $(srcdir)/ISimpleDOMDocument.idl
|
$(MIDL) $(MIDL_FLAGS) -Oicf $(srcdir)/ISimpleDOMDocument.idl
|
||||||
$(MIDL) $(MIDL_FLAGS) -Oicf $(srcdir)/ISimpleDOMText.idl
|
$(MIDL) $(MIDL_FLAGS) -Oicf $(srcdir)/ISimpleDOMText.idl
|
||||||
touch $@
|
touch $@
|
||||||
|
@ -112,12 +112,23 @@ nsIAccessibilityService *nsAccessNode::GetAccService()
|
|||||||
* Class nsAccessNode
|
* Class nsAccessNode
|
||||||
*/
|
*/
|
||||||
|
|
||||||
//-----------------------------------------------------
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
// construction
|
// nsAccessible. nsISupports
|
||||||
//-----------------------------------------------------
|
|
||||||
NS_IMPL_QUERY_INTERFACE2(nsAccessNode, nsIAccessNode, nsPIAccessNode)
|
NS_IMPL_CYCLE_COLLECTION_0(nsAccessNode)
|
||||||
NS_IMPL_ADDREF(nsAccessNode)
|
|
||||||
NS_IMPL_RELEASE_WITH_DESTROY(nsAccessNode, LastRelease())
|
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(nsAccessNode)
|
||||||
|
NS_INTERFACE_MAP_ENTRY(nsIAccessNode)
|
||||||
|
NS_INTERFACE_MAP_ENTRY(nsPIAccessNode)
|
||||||
|
NS_INTERFACE_MAP_ENTRY_AMBIGUOUS(nsISupports, nsIAccessNode)
|
||||||
|
NS_INTERFACE_MAP_END
|
||||||
|
|
||||||
|
NS_IMPL_CYCLE_COLLECTING_ADDREF_AMBIGUOUS(nsAccessNode, nsIAccessNode)
|
||||||
|
NS_IMPL_CYCLE_COLLECTING_RELEASE_FULL(nsAccessNode, nsIAccessNode,
|
||||||
|
LastRelease())
|
||||||
|
|
||||||
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
|
// nsAccessible. Constructor
|
||||||
|
|
||||||
nsAccessNode::nsAccessNode(nsIDOMNode *aNode, nsIWeakReference* aShell):
|
nsAccessNode::nsAccessNode(nsIDOMNode *aNode, nsIWeakReference* aShell):
|
||||||
mDOMNode(aNode), mWeakShell(aShell)
|
mDOMNode(aNode), mWeakShell(aShell)
|
||||||
@ -191,8 +202,7 @@ NS_IMETHODIMP nsAccessNode::Init()
|
|||||||
// so that nsDocAccessible::RefreshNodes() can find the anonymous subtree to release when
|
// so that nsDocAccessible::RefreshNodes() can find the anonymous subtree to release when
|
||||||
// the root node goes away
|
// the root node goes away
|
||||||
nsCOMPtr<nsIContent> content = do_QueryInterface(mDOMNode);
|
nsCOMPtr<nsIContent> content = do_QueryInterface(mDOMNode);
|
||||||
if (content && (content->IsNativeAnonymous() ||
|
if (content && content->IsInAnonymousSubtree()) {
|
||||||
content->GetBindingParent())) {
|
|
||||||
// Specific examples of where this is used: <input type="file"> and <xul:findbar>
|
// Specific examples of where this is used: <input type="file"> and <xul:findbar>
|
||||||
nsCOMPtr<nsIAccessible> parentAccessible;
|
nsCOMPtr<nsIAccessible> parentAccessible;
|
||||||
docAccessible->GetAccessibleInParentChain(mDOMNode, PR_TRUE, getter_AddRefs(parentAccessible));
|
docAccessible->GetAccessibleInParentChain(mDOMNode, PR_TRUE, getter_AddRefs(parentAccessible));
|
||||||
|
@ -74,13 +74,16 @@ class nsIDocShellTreeItem;
|
|||||||
typedef nsInterfaceHashtable<nsVoidPtrHashKey, nsIAccessNode>
|
typedef nsInterfaceHashtable<nsVoidPtrHashKey, nsIAccessNode>
|
||||||
nsAccessNodeHashtable;
|
nsAccessNodeHashtable;
|
||||||
|
|
||||||
class nsAccessNode: public nsIAccessNode, public nsPIAccessNode
|
class nsAccessNode: public nsIAccessNode,
|
||||||
|
public nsPIAccessNode
|
||||||
{
|
{
|
||||||
public: // construction, destruction
|
public: // construction, destruction
|
||||||
nsAccessNode(nsIDOMNode *, nsIWeakReference* aShell);
|
nsAccessNode(nsIDOMNode *, nsIWeakReference* aShell);
|
||||||
virtual ~nsAccessNode();
|
virtual ~nsAccessNode();
|
||||||
|
|
||||||
NS_DECL_ISUPPORTS
|
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
|
||||||
|
NS_DECL_CYCLE_COLLECTION_CLASS_AMBIGUOUS(nsAccessNode, nsIAccessNode)
|
||||||
|
|
||||||
NS_DECL_NSIACCESSNODE
|
NS_DECL_NSIACCESSNODE
|
||||||
NS_DECL_NSPIACCESSNODE
|
NS_DECL_NSPIACCESSNODE
|
||||||
|
|
||||||
|
@ -65,6 +65,7 @@
|
|||||||
#include "nsIEventStateManager.h"
|
#include "nsIEventStateManager.h"
|
||||||
#include "nsISelection2.h"
|
#include "nsISelection2.h"
|
||||||
#include "nsISelectionController.h"
|
#include "nsISelectionController.h"
|
||||||
|
#include "nsGUIEvent.h"
|
||||||
|
|
||||||
#include "nsContentCID.h"
|
#include "nsContentCID.h"
|
||||||
#include "nsComponentManagerUtils.h"
|
#include "nsComponentManagerUtils.h"
|
||||||
@ -291,6 +292,48 @@ nsAccUtils::HasListener(nsIContent *aContent, const nsAString& aEventType)
|
|||||||
return listenerManager && listenerManager->HasListenersFor(aEventType);
|
return listenerManager && listenerManager->HasListenersFor(aEventType);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
PRBool
|
||||||
|
nsAccUtils::DispatchMouseEvent(PRUint32 aEventType,
|
||||||
|
nsIPresShell *aPresShell,
|
||||||
|
nsIContent *aContent)
|
||||||
|
{
|
||||||
|
nsIFrame *frame = aPresShell->GetPrimaryFrameFor(aContent);
|
||||||
|
if (!frame)
|
||||||
|
return PR_FALSE;
|
||||||
|
|
||||||
|
nsIFrame* rootFrame = aPresShell->GetRootFrame();
|
||||||
|
if (!rootFrame)
|
||||||
|
return PR_FALSE;
|
||||||
|
|
||||||
|
nsCOMPtr<nsIWidget> rootWidget = rootFrame->GetWindow();
|
||||||
|
if (!rootWidget)
|
||||||
|
return PR_FALSE;
|
||||||
|
|
||||||
|
// Compute x and y coordinates.
|
||||||
|
nsPoint point = frame->GetOffsetToExternal(rootFrame);
|
||||||
|
nsSize size = frame->GetSize();
|
||||||
|
|
||||||
|
nsPresContext* presContext = aPresShell->GetPresContext();
|
||||||
|
|
||||||
|
PRInt32 x = presContext->AppUnitsToDevPixels(point.x + size.width / 2);
|
||||||
|
PRInt32 y = presContext->AppUnitsToDevPixels(point.y + size.height / 2);
|
||||||
|
|
||||||
|
// Fire mouse event.
|
||||||
|
nsMouseEvent event(PR_TRUE, aEventType, rootWidget,
|
||||||
|
nsMouseEvent::eReal, nsMouseEvent::eNormal);
|
||||||
|
|
||||||
|
event.refPoint = nsIntPoint(x, y);
|
||||||
|
|
||||||
|
event.clickCount = 1;
|
||||||
|
event.button = nsMouseEvent::eLeftButton;
|
||||||
|
event.time = PR_IntervalNow();
|
||||||
|
|
||||||
|
nsEventStatus status = nsEventStatus_eIgnore;
|
||||||
|
aPresShell->HandleEventWithTarget(&event, frame, aContent, &status);
|
||||||
|
|
||||||
|
return PR_TRUE;
|
||||||
|
}
|
||||||
|
|
||||||
PRUint32
|
PRUint32
|
||||||
nsAccUtils::GetAccessKeyFor(nsIContent *aContent)
|
nsAccUtils::GetAccessKeyFor(nsIContent *aContent)
|
||||||
{
|
{
|
||||||
@ -792,11 +835,9 @@ nsAccUtils::FindNeighbourPointingToNode(nsIContent *aForNode,
|
|||||||
nsIAtom *aTagName,
|
nsIAtom *aTagName,
|
||||||
PRUint32 aAncestorLevelsToSearch)
|
PRUint32 aAncestorLevelsToSearch)
|
||||||
{
|
{
|
||||||
nsCOMPtr<nsIContent> binding;
|
|
||||||
nsAutoString controlID;
|
nsAutoString controlID;
|
||||||
if (!nsAccUtils::GetID(aForNode, controlID)) {
|
if (!nsAccUtils::GetID(aForNode, controlID)) {
|
||||||
binding = aForNode->GetBindingParent();
|
if (!aForNode->IsInAnonymousSubtree())
|
||||||
if (binding == aForNode)
|
|
||||||
return nsnull;
|
return nsnull;
|
||||||
|
|
||||||
aForNode->GetAttr(kNameSpaceID_None, nsAccessibilityAtoms::anonid, controlID);
|
aForNode->GetAttr(kNameSpaceID_None, nsAccessibilityAtoms::anonid, controlID);
|
||||||
@ -805,6 +846,7 @@ nsAccUtils::FindNeighbourPointingToNode(nsIContent *aForNode,
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Look for label in subtrees of nearby ancestors
|
// Look for label in subtrees of nearby ancestors
|
||||||
|
nsCOMPtr<nsIContent> binding(aForNode->GetBindingParent());
|
||||||
PRUint32 count = 0;
|
PRUint32 count = 0;
|
||||||
nsIContent *labelContent = nsnull;
|
nsIContent *labelContent = nsnull;
|
||||||
nsIContent *prevSearched = nsnull;
|
nsIContent *prevSearched = nsnull;
|
||||||
|
@ -124,6 +124,17 @@ public:
|
|||||||
*/
|
*/
|
||||||
static PRBool HasListener(nsIContent *aContent, const nsAString& aEventType);
|
static PRBool HasListener(nsIContent *aContent, const nsAString& aEventType);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Send mouse events to the given element.
|
||||||
|
*
|
||||||
|
* @param aEventType an event type (see nsGUIEvent.h for constants)
|
||||||
|
* @param aPresShell the presshell for the given element
|
||||||
|
* @param aContent the element element
|
||||||
|
*/
|
||||||
|
static PRBool DispatchMouseEvent(PRUint32 aEventType,
|
||||||
|
nsIPresShell *aPresShell,
|
||||||
|
nsIContent *aContent);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Return an accesskey registered on the given element by
|
* Return an accesskey registered on the given element by
|
||||||
* nsIEventStateManager or 0 if there is no registered accesskey.
|
* nsIEventStateManager or 0 if there is no registered accesskey.
|
||||||
|
@ -140,9 +140,23 @@ nsAccessibleDOMStringList::Contains(const nsAString& aString, PRBool *aResult)
|
|||||||
* Class nsAccessible
|
* Class nsAccessible
|
||||||
*/
|
*/
|
||||||
|
|
||||||
//-----------------------------------------------------
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
// construction
|
// nsAccessible. nsISupports
|
||||||
//-----------------------------------------------------
|
|
||||||
|
NS_IMPL_CYCLE_COLLECTION_CLASS(nsAccessible)
|
||||||
|
|
||||||
|
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN_INHERITED(nsAccessible, nsAccessNode)
|
||||||
|
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_NSCOMPTR(mParent)
|
||||||
|
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_NSCOMPTR(mFirstChild)
|
||||||
|
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_NSCOMPTR(mNextSibling)
|
||||||
|
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
|
||||||
|
|
||||||
|
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN_INHERITED(nsAccessible, nsAccessNode)
|
||||||
|
NS_IMPL_CYCLE_COLLECTION_UNLINK_NSCOMPTR(mParent)
|
||||||
|
NS_IMPL_CYCLE_COLLECTION_UNLINK_NSCOMPTR(mFirstChild)
|
||||||
|
NS_IMPL_CYCLE_COLLECTION_UNLINK_NSCOMPTR(mNextSibling)
|
||||||
|
NS_IMPL_CYCLE_COLLECTION_UNLINK_END
|
||||||
|
|
||||||
NS_IMPL_ADDREF_INHERITED(nsAccessible, nsAccessNode)
|
NS_IMPL_ADDREF_INHERITED(nsAccessible, nsAccessNode)
|
||||||
NS_IMPL_RELEASE_INHERITED(nsAccessible, nsAccessNode)
|
NS_IMPL_RELEASE_INHERITED(nsAccessible, nsAccessNode)
|
||||||
|
|
||||||
@ -189,6 +203,11 @@ nsresult nsAccessible::QueryInterface(REFNSIID aIID, void** aInstancePtr)
|
|||||||
// based on role attribute and aria-multiselectable
|
// based on role attribute and aria-multiselectable
|
||||||
*aInstancePtr = nsnull;
|
*aInstancePtr = nsnull;
|
||||||
|
|
||||||
|
if (aIID.Equals(NS_GET_IID(nsXPCOMCycleCollectionParticipant))) {
|
||||||
|
*aInstancePtr = &NS_CYCLE_COLLECTION_NAME(nsAccessible);
|
||||||
|
return NS_OK;
|
||||||
|
}
|
||||||
|
|
||||||
if (aIID.Equals(NS_GET_IID(nsIAccessible))) {
|
if (aIID.Equals(NS_GET_IID(nsIAccessible))) {
|
||||||
*aInstancePtr = static_cast<nsIAccessible*>(this);
|
*aInstancePtr = static_cast<nsIAccessible*>(this);
|
||||||
NS_ADDREF_THIS();
|
NS_ADDREF_THIS();
|
||||||
@ -483,7 +502,7 @@ NS_IMETHODIMP nsAccessible::SetFirstChild(nsIAccessible *aFirstChild)
|
|||||||
|
|
||||||
NS_IMETHODIMP nsAccessible::SetNextSibling(nsIAccessible *aNextSibling)
|
NS_IMETHODIMP nsAccessible::SetNextSibling(nsIAccessible *aNextSibling)
|
||||||
{
|
{
|
||||||
mNextSibling = aNextSibling? aNextSibling: DEAD_END_ACCESSIBLE;
|
mNextSibling = aNextSibling;
|
||||||
return NS_OK;
|
return NS_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -538,15 +557,13 @@ NS_IMETHODIMP nsAccessible::InvalidateChildren()
|
|||||||
// CacheChildren() is called.
|
// CacheChildren() is called.
|
||||||
// Note: we don't want to start creating accessibles at this point,
|
// Note: we don't want to start creating accessibles at this point,
|
||||||
// so don't use GetNextSibling() here. (bug 387252)
|
// so don't use GetNextSibling() here. (bug 387252)
|
||||||
nsAccessible* child = static_cast<nsAccessible*>(mFirstChild);
|
nsAccessible* child = static_cast<nsAccessible*>(mFirstChild.get());
|
||||||
while (child) {
|
while (child) {
|
||||||
child->mParent = nsnull;
|
child->mParent = nsnull;
|
||||||
if (child->mNextSibling == DEAD_END_ACCESSIBLE) {
|
|
||||||
break;
|
nsCOMPtr<nsIAccessible> next = child->mNextSibling;
|
||||||
}
|
|
||||||
nsIAccessible *next = child->mNextSibling;
|
|
||||||
child->mNextSibling = nsnull;
|
child->mNextSibling = nsnull;
|
||||||
child = static_cast<nsAccessible*>(next);
|
child = static_cast<nsAccessible*>(next.get());
|
||||||
}
|
}
|
||||||
|
|
||||||
mAccChildCount = eChildCountUninitialized;
|
mAccChildCount = eChildCountUninitialized;
|
||||||
@ -608,9 +625,8 @@ NS_IMETHODIMP nsAccessible::GetNextSibling(nsIAccessible * *aNextSibling)
|
|||||||
if (mNextSibling || !mParent) {
|
if (mNextSibling || !mParent) {
|
||||||
// If no parent, don't try to calculate a new sibling
|
// If no parent, don't try to calculate a new sibling
|
||||||
// It either means we're at the root or shutting down the parent
|
// It either means we're at the root or shutting down the parent
|
||||||
if (mNextSibling != DEAD_END_ACCESSIBLE) {
|
|
||||||
NS_IF_ADDREF(*aNextSibling = mNextSibling);
|
NS_IF_ADDREF(*aNextSibling = mNextSibling);
|
||||||
}
|
|
||||||
return NS_OK;
|
return NS_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -3137,40 +3153,30 @@ NS_IMETHODIMP nsAccessible::GetNativeInterface(void **aOutAccessible)
|
|||||||
|
|
||||||
void nsAccessible::DoCommandCallback(nsITimer *aTimer, void *aClosure)
|
void nsAccessible::DoCommandCallback(nsITimer *aTimer, void *aClosure)
|
||||||
{
|
{
|
||||||
NS_ASSERTION(gDoCommandTimer, "How did we get here if there was no gDoCommandTimer?");
|
NS_ASSERTION(gDoCommandTimer,
|
||||||
|
"How did we get here if there was no gDoCommandTimer?");
|
||||||
NS_RELEASE(gDoCommandTimer);
|
NS_RELEASE(gDoCommandTimer);
|
||||||
|
|
||||||
nsIContent *content = reinterpret_cast<nsIContent*>(aClosure);
|
nsCOMPtr<nsIContent> content =
|
||||||
nsCOMPtr<nsIDOMXULElement> xulElement(do_QueryInterface(content));
|
reinterpret_cast<nsIContent*>(aClosure);
|
||||||
if (xulElement) {
|
|
||||||
xulElement->Click();
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
nsIDocument *doc = content->GetDocument();
|
nsIDocument *doc = content->GetDocument();
|
||||||
if (!doc) {
|
if (!doc)
|
||||||
return;
|
return;
|
||||||
}
|
|
||||||
nsCOMPtr<nsIPresShell> presShell = doc->GetPrimaryShell();
|
nsCOMPtr<nsIPresShell> presShell = doc->GetPrimaryShell();
|
||||||
nsPIDOMWindow *outerWindow = doc->GetWindow();
|
|
||||||
if (presShell && outerWindow) {
|
|
||||||
nsAutoPopupStatePusher popupStatePusher(outerWindow, openAllowed);
|
|
||||||
|
|
||||||
nsMouseEvent downEvent(PR_TRUE, NS_MOUSE_BUTTON_DOWN, nsnull,
|
// Scroll into view.
|
||||||
nsMouseEvent::eSynthesized);
|
presShell->ScrollContentIntoView(content, NS_PRESSHELL_SCROLL_ANYWHERE,
|
||||||
nsMouseEvent upEvent(PR_TRUE, NS_MOUSE_BUTTON_UP, nsnull,
|
NS_PRESSHELL_SCROLL_ANYWHERE);
|
||||||
nsMouseEvent::eSynthesized);
|
|
||||||
nsMouseEvent clickEvent(PR_TRUE, NS_MOUSE_CLICK, nsnull,
|
|
||||||
nsMouseEvent::eSynthesized);
|
|
||||||
|
|
||||||
nsEventStatus eventStatus = nsEventStatus_eIgnore;
|
// Fire mouse down and mouse up events.
|
||||||
content->DispatchDOMEvent(&downEvent, nsnull,
|
PRBool res = nsAccUtils::DispatchMouseEvent(NS_MOUSE_BUTTON_DOWN, presShell,
|
||||||
presShell->GetPresContext(), &eventStatus);
|
content);
|
||||||
content->DispatchDOMEvent(&upEvent, nsnull,
|
if (!res)
|
||||||
presShell->GetPresContext(), &eventStatus);
|
return;
|
||||||
content->DispatchDOMEvent(&clickEvent, nsnull,
|
|
||||||
presShell->GetPresContext(), &eventStatus);
|
nsAccUtils::DispatchMouseEvent(NS_MOUSE_BUTTON_UP, presShell, content);
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -69,9 +69,6 @@ class nsIView;
|
|||||||
#define NS_OK_NO_ARIA_VALUE \
|
#define NS_OK_NO_ARIA_VALUE \
|
||||||
NS_ERROR_GENERATE_SUCCESS(NS_ERROR_MODULE_GENERAL, 0x21)
|
NS_ERROR_GENERATE_SUCCESS(NS_ERROR_MODULE_GENERAL, 0x21)
|
||||||
|
|
||||||
// When mNextSibling is set to this, it indicates there ar eno more siblings
|
|
||||||
#define DEAD_END_ACCESSIBLE static_cast<nsIAccessible*>((void*)1)
|
|
||||||
|
|
||||||
// Saves a data member -- if child count equals this value we haven't
|
// Saves a data member -- if child count equals this value we haven't
|
||||||
// cached children or child count yet
|
// cached children or child count yet
|
||||||
enum { eChildCountUninitialized = -1 };
|
enum { eChildCountUninitialized = -1 };
|
||||||
@ -106,6 +103,8 @@ public:
|
|||||||
virtual ~nsAccessible();
|
virtual ~nsAccessible();
|
||||||
|
|
||||||
NS_DECL_ISUPPORTS_INHERITED
|
NS_DECL_ISUPPORTS_INHERITED
|
||||||
|
NS_DECL_CYCLE_COLLECTION_CLASS_INHERITED(nsAccessible, nsAccessNode)
|
||||||
|
|
||||||
NS_DECL_NSIACCESSIBLE
|
NS_DECL_NSIACCESSIBLE
|
||||||
NS_DECL_NSPIACCESSIBLE
|
NS_DECL_NSPIACCESSIBLE
|
||||||
NS_DECL_NSIACCESSIBLEHYPERLINK
|
NS_DECL_NSIACCESSIBLEHYPERLINK
|
||||||
@ -272,7 +271,9 @@ protected:
|
|||||||
|
|
||||||
// Data Members
|
// Data Members
|
||||||
nsCOMPtr<nsIAccessible> mParent;
|
nsCOMPtr<nsIAccessible> mParent;
|
||||||
nsIAccessible *mFirstChild, *mNextSibling;
|
nsCOMPtr<nsIAccessible> mFirstChild;
|
||||||
|
nsCOMPtr<nsIAccessible> mNextSibling;
|
||||||
|
|
||||||
nsRoleMapEntry *mRoleMapEntry; // Non-null indicates author-supplied role; possibly state & value as well
|
nsRoleMapEntry *mRoleMapEntry; // Non-null indicates author-supplied role; possibly state & value as well
|
||||||
PRInt32 mAccChildCount;
|
PRInt32 mAccChildCount;
|
||||||
};
|
};
|
||||||
|
@ -57,7 +57,22 @@
|
|||||||
PRBool nsAccEvent::gLastEventFromUserInput = PR_FALSE;
|
PRBool nsAccEvent::gLastEventFromUserInput = PR_FALSE;
|
||||||
nsIDOMNode* nsAccEvent::gLastEventNodeWeak = 0;
|
nsIDOMNode* nsAccEvent::gLastEventNodeWeak = 0;
|
||||||
|
|
||||||
NS_IMPL_ISUPPORTS2(nsAccEvent, nsAccEvent, nsIAccessibleEvent)
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
|
// nsAccEvent. nsISupports
|
||||||
|
|
||||||
|
NS_IMPL_CYCLE_COLLECTION_2(nsAccEvent, mAccessible, mDocAccessible)
|
||||||
|
|
||||||
|
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(nsAccEvent)
|
||||||
|
NS_INTERFACE_MAP_ENTRY(nsIAccessibleEvent)
|
||||||
|
NS_INTERFACE_MAP_ENTRY(nsAccEvent)
|
||||||
|
NS_INTERFACE_MAP_ENTRY(nsISupports)
|
||||||
|
NS_INTERFACE_MAP_END
|
||||||
|
|
||||||
|
NS_IMPL_CYCLE_COLLECTING_ADDREF(nsAccEvent)
|
||||||
|
NS_IMPL_CYCLE_COLLECTING_RELEASE(nsAccEvent)
|
||||||
|
|
||||||
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
|
// nsAccEvent. Constructors
|
||||||
|
|
||||||
nsAccEvent::nsAccEvent(PRUint32 aEventType, nsIAccessible *aAccessible,
|
nsAccEvent::nsAccEvent(PRUint32 aEventType, nsIAccessible *aAccessible,
|
||||||
PRBool aIsAsynch, EEventRule aEventRule):
|
PRBool aIsAsynch, EEventRule aEventRule):
|
||||||
|
@ -49,6 +49,7 @@
|
|||||||
#include "nsIAccessibleDocument.h"
|
#include "nsIAccessibleDocument.h"
|
||||||
#include "nsIDOMNode.h"
|
#include "nsIDOMNode.h"
|
||||||
#include "nsString.h"
|
#include "nsString.h"
|
||||||
|
#include "nsCycleCollectionParticipant.h"
|
||||||
|
|
||||||
class nsIPresShell;
|
class nsIPresShell;
|
||||||
|
|
||||||
@ -93,7 +94,9 @@ public:
|
|||||||
EEventRule aEventRule = eRemoveDupes);
|
EEventRule aEventRule = eRemoveDupes);
|
||||||
virtual ~nsAccEvent() {}
|
virtual ~nsAccEvent() {}
|
||||||
|
|
||||||
NS_DECL_ISUPPORTS
|
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
|
||||||
|
NS_DECL_CYCLE_COLLECTION_CLASS(nsAccEvent)
|
||||||
|
|
||||||
NS_DECL_NSIACCESSIBLEEVENT
|
NS_DECL_NSIACCESSIBLEEVENT
|
||||||
|
|
||||||
static void GetLastEventAttributes(nsIDOMNode *aNode,
|
static void GetLastEventAttributes(nsIDOMNode *aNode,
|
||||||
@ -105,13 +108,13 @@ protected:
|
|||||||
void CaptureIsFromUserInput(PRBool aIsAsynch);
|
void CaptureIsFromUserInput(PRBool aIsAsynch);
|
||||||
PRBool mIsFromUserInput;
|
PRBool mIsFromUserInput;
|
||||||
|
|
||||||
private:
|
|
||||||
PRUint32 mEventType;
|
PRUint32 mEventType;
|
||||||
EEventRule mEventRule;
|
EEventRule mEventRule;
|
||||||
nsCOMPtr<nsIAccessible> mAccessible;
|
nsCOMPtr<nsIAccessible> mAccessible;
|
||||||
nsCOMPtr<nsIDOMNode> mDOMNode;
|
nsCOMPtr<nsIDOMNode> mDOMNode;
|
||||||
nsCOMPtr<nsIAccessibleDocument> mDocAccessible;
|
nsCOMPtr<nsIAccessibleDocument> mDocAccessible;
|
||||||
|
|
||||||
|
private:
|
||||||
static PRBool gLastEventFromUserInput;
|
static PRBool gLastEventFromUserInput;
|
||||||
static nsIDOMNode* gLastEventNodeWeak;
|
static nsIDOMNode* gLastEventNodeWeak;
|
||||||
|
|
||||||
|
@ -50,11 +50,48 @@ nsApplicationAccessible::nsApplicationAccessible():
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
// nsISupports
|
// nsISupports
|
||||||
NS_IMPL_ISUPPORTS_INHERITED0(nsApplicationAccessible,
|
|
||||||
|
NS_IMPL_CYCLE_COLLECTION_CLASS(nsApplicationAccessible)
|
||||||
|
|
||||||
|
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN_INHERITED(nsApplicationAccessible,
|
||||||
nsAccessible)
|
nsAccessible)
|
||||||
|
|
||||||
|
nsCOMPtr<nsISimpleEnumerator> enumerator;
|
||||||
|
tmp->mChildren->Enumerate(getter_AddRefs(enumerator));
|
||||||
|
|
||||||
|
nsCOMPtr<nsIWeakReference> childWeakRef;
|
||||||
|
nsCOMPtr<nsIAccessible> accessible;
|
||||||
|
|
||||||
|
PRBool hasMoreElements;
|
||||||
|
while(NS_SUCCEEDED(enumerator->HasMoreElements(&hasMoreElements))
|
||||||
|
&& hasMoreElements) {
|
||||||
|
|
||||||
|
enumerator->GetNext(getter_AddRefs(childWeakRef));
|
||||||
|
accessible = do_QueryReferent(childWeakRef);
|
||||||
|
if (accessible) {
|
||||||
|
NS_CYCLE_COLLECTION_NOTE_EDGE_NAME(cb, accessible);
|
||||||
|
cb.NoteXPCOMChild(accessible);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
|
||||||
|
|
||||||
|
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN_INHERITED(nsApplicationAccessible,
|
||||||
|
nsAccessible)
|
||||||
|
tmp->mChildren->Clear();
|
||||||
|
NS_IMPL_CYCLE_COLLECTION_UNLINK_END
|
||||||
|
|
||||||
|
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION_INHERITED(nsApplicationAccessible)
|
||||||
|
NS_INTERFACE_MAP_END_INHERITING(nsAccessible)
|
||||||
|
|
||||||
|
NS_IMPL_ADDREF_INHERITED(nsApplicationAccessible, nsAccessible)
|
||||||
|
NS_IMPL_RELEASE_INHERITED(nsApplicationAccessible, nsAccessible)
|
||||||
|
|
||||||
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
// nsIAccessNode
|
// nsIAccessNode
|
||||||
|
|
||||||
NS_IMETHODIMP
|
NS_IMETHODIMP
|
||||||
nsApplicationAccessible::Init()
|
nsApplicationAccessible::Init()
|
||||||
{
|
{
|
||||||
|
@ -63,6 +63,8 @@ public:
|
|||||||
|
|
||||||
// nsISupports
|
// nsISupports
|
||||||
NS_DECL_ISUPPORTS_INHERITED
|
NS_DECL_ISUPPORTS_INHERITED
|
||||||
|
NS_DECL_CYCLE_COLLECTION_CLASS_INHERITED(nsApplicationAccessible,
|
||||||
|
nsAccessible)
|
||||||
|
|
||||||
// nsPIAccessNode
|
// nsPIAccessNode
|
||||||
NS_IMETHOD Init();
|
NS_IMETHOD Init();
|
||||||
|
@ -188,11 +188,14 @@ nsLinkableAccessible::GetActionName(PRUint8 aIndex, nsAString& aName)
|
|||||||
NS_IMETHODIMP
|
NS_IMETHODIMP
|
||||||
nsLinkableAccessible::DoAction(PRUint8 aIndex)
|
nsLinkableAccessible::DoAction(PRUint8 aIndex)
|
||||||
{
|
{
|
||||||
|
if (aIndex != eAction_Jump)
|
||||||
|
return NS_ERROR_INVALID_ARG;
|
||||||
|
|
||||||
nsCOMPtr<nsIAccessible> actionAcc = GetActionAccessible();
|
nsCOMPtr<nsIAccessible> actionAcc = GetActionAccessible();
|
||||||
if (actionAcc)
|
if (actionAcc)
|
||||||
return actionAcc->DoAction(aIndex);
|
return actionAcc->DoAction(aIndex);
|
||||||
|
|
||||||
return NS_ERROR_INVALID_ARG;
|
return nsHyperTextAccessibleWrap::DoAction(aIndex);
|
||||||
}
|
}
|
||||||
|
|
||||||
NS_IMETHODIMP
|
NS_IMETHODIMP
|
||||||
|
@ -135,7 +135,34 @@ nsDocAccessible::~nsDocAccessible()
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
NS_INTERFACE_MAP_BEGIN(nsDocAccessible)
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
|
// nsDocAccessible. nsISupports
|
||||||
|
|
||||||
|
PR_STATIC_CALLBACK(PLDHashOperator)
|
||||||
|
ElementTraverser(const void *aKey, nsIAccessNode *aAccessNode,
|
||||||
|
void *aUserArg)
|
||||||
|
{
|
||||||
|
nsCycleCollectionTraversalCallback *cb =
|
||||||
|
static_cast<nsCycleCollectionTraversalCallback*>(aUserArg);
|
||||||
|
|
||||||
|
NS_CYCLE_COLLECTION_NOTE_EDGE_NAME(*cb, aAccessNode);
|
||||||
|
cb->NoteXPCOMChild(aAccessNode);
|
||||||
|
return PL_DHASH_NEXT;
|
||||||
|
}
|
||||||
|
|
||||||
|
NS_IMPL_CYCLE_COLLECTION_CLASS(nsDocAccessible)
|
||||||
|
|
||||||
|
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN_INHERITED(nsDocAccessible, nsAccessible)
|
||||||
|
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_NSCOMARRAY(mEventsToFire)
|
||||||
|
tmp->mAccessNodeCache.EnumerateRead(ElementTraverser, &cb);
|
||||||
|
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
|
||||||
|
|
||||||
|
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN_INHERITED(nsDocAccessible, nsAccessible)
|
||||||
|
NS_IMPL_CYCLE_COLLECTION_UNLINK_NSCOMARRAY(mEventsToFire)
|
||||||
|
tmp->ClearCache(tmp->mAccessNodeCache);
|
||||||
|
NS_IMPL_CYCLE_COLLECTION_UNLINK_END
|
||||||
|
|
||||||
|
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION_INHERITED(nsDocAccessible)
|
||||||
NS_INTERFACE_MAP_ENTRY(nsIAccessibleDocument)
|
NS_INTERFACE_MAP_ENTRY(nsIAccessibleDocument)
|
||||||
NS_INTERFACE_MAP_ENTRY(nsPIAccessibleDocument)
|
NS_INTERFACE_MAP_ENTRY(nsPIAccessibleDocument)
|
||||||
NS_INTERFACE_MAP_ENTRY(nsIDocumentObserver)
|
NS_INTERFACE_MAP_ENTRY(nsIDocumentObserver)
|
||||||
@ -1760,9 +1787,8 @@ void nsDocAccessible::RefreshNodes(nsIDOMNode *aStartNode)
|
|||||||
getter_AddRefs(childAccessNode));
|
getter_AddRefs(childAccessNode));
|
||||||
childAccessNode->GetDOMNode(getter_AddRefs(possibleAnonNode));
|
childAccessNode->GetDOMNode(getter_AddRefs(possibleAnonNode));
|
||||||
nsCOMPtr<nsIContent> iterContent = do_QueryInterface(possibleAnonNode);
|
nsCOMPtr<nsIContent> iterContent = do_QueryInterface(possibleAnonNode);
|
||||||
if (iterContent && (iterContent->IsNativeAnonymous() ||
|
if (iterContent && iterContent->IsInAnonymousSubtree()) {
|
||||||
iterContent->GetBindingParent())) {
|
// IsInAnonymousSubtree() check is a perf win -- make sure we don't
|
||||||
// GetBindingParent() check is a perf win -- make sure we don't
|
|
||||||
// shut down the same subtree twice since we'll reach non-anon content via
|
// shut down the same subtree twice since we'll reach non-anon content via
|
||||||
// DOM traversal later in this method
|
// DOM traversal later in this method
|
||||||
RefreshNodes(possibleAnonNode);
|
RefreshNodes(possibleAnonNode);
|
||||||
|
@ -65,6 +65,8 @@ class nsDocAccessible : public nsHyperTextAccessibleWrap,
|
|||||||
public nsSupportsWeakReference
|
public nsSupportsWeakReference
|
||||||
{
|
{
|
||||||
NS_DECL_ISUPPORTS_INHERITED
|
NS_DECL_ISUPPORTS_INHERITED
|
||||||
|
NS_DECL_CYCLE_COLLECTION_CLASS_INHERITED(nsDocAccessible, nsAccessible)
|
||||||
|
|
||||||
NS_DECL_NSIACCESSIBLEDOCUMENT
|
NS_DECL_NSIACCESSIBLEDOCUMENT
|
||||||
NS_DECL_NSPIACCESSIBLEDOCUMENT
|
NS_DECL_NSPIACCESSIBLEDOCUMENT
|
||||||
NS_DECL_NSIOBSERVER
|
NS_DECL_NSIOBSERVER
|
||||||
|
@ -89,7 +89,8 @@ static nsCSSTextAttrMapItem gCSSTextAttrsMap[] = {
|
|||||||
{ "text-decoration", "line-through", "text-line-through-style", "solid" },
|
{ "text-decoration", "line-through", "text-line-through-style", "solid" },
|
||||||
{ "text-decoration", "underline", "text-underline-style", "solid" },
|
{ "text-decoration", "underline", "text-underline-style", "solid" },
|
||||||
{ "text-align", kAnyValue, kCopyName, kCopyValue },
|
{ "text-align", kAnyValue, kCopyName, kCopyValue },
|
||||||
{ "text-indent", kAnyValue, kCopyName, kCopyValue }
|
{ "text-indent", kAnyValue, kCopyName, kCopyValue },
|
||||||
|
{ "vertical-align", kAnyValue, "text-position", kCopyValue }
|
||||||
};
|
};
|
||||||
|
|
||||||
nsCSSTextAttr::nsCSSTextAttr(PRBool aIncludeDefAttrValue, nsIDOMElement *aElm,
|
nsCSSTextAttr::nsCSSTextAttr(PRBool aIncludeDefAttrValue, nsIDOMElement *aElm,
|
||||||
|
@ -640,7 +640,9 @@ nsresult nsHyperTextAccessible::DOMPointToHypertextOffset(nsIDOMNode* aNode, PRI
|
|||||||
if (findContent->IsNodeOfType(nsINode::eHTML) &&
|
if (findContent->IsNodeOfType(nsINode::eHTML) &&
|
||||||
findContent->NodeInfo()->Equals(nsAccessibilityAtoms::br)) {
|
findContent->NodeInfo()->Equals(nsAccessibilityAtoms::br)) {
|
||||||
nsIContent *parent = findContent->GetParent();
|
nsIContent *parent = findContent->GetParent();
|
||||||
if (parent && parent->IsNativeAnonymous() && parent->GetChildCount() == 1) {
|
if (parent &&
|
||||||
|
parent->IsRootOfNativeAnonymousSubtree() &&
|
||||||
|
parent->GetChildCount() == 1) {
|
||||||
// This <br> is the only node in a text control, therefore it is the hacky
|
// This <br> is the only node in a text control, therefore it is the hacky
|
||||||
// "bogus node" used when there is no text in a control
|
// "bogus node" used when there is no text in a control
|
||||||
*aHyperTextOffset = 0;
|
*aHyperTextOffset = 0;
|
||||||
@ -884,6 +886,9 @@ nsresult nsHyperTextAccessible::GetTextHelper(EGetTextType aType, nsAccessibleTe
|
|||||||
nsAString &aText)
|
nsAString &aText)
|
||||||
{
|
{
|
||||||
aText.Truncate();
|
aText.Truncate();
|
||||||
|
|
||||||
|
NS_ENSURE_ARG_POINTER(aStartOffset);
|
||||||
|
NS_ENSURE_ARG_POINTER(aEndOffset);
|
||||||
*aStartOffset = *aEndOffset = 0;
|
*aStartOffset = *aEndOffset = 0;
|
||||||
|
|
||||||
nsCOMPtr<nsIPresShell> presShell = GetPresShell();
|
nsCOMPtr<nsIPresShell> presShell = GetPresShell();
|
||||||
@ -921,6 +926,52 @@ nsresult nsHyperTextAccessible::GetTextHelper(EGetTextType aType, nsAccessibleTe
|
|||||||
return NS_ERROR_FAILURE;
|
return NS_ERROR_FAILURE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
nsSelectionAmount amount;
|
||||||
|
PRBool needsStart = PR_FALSE;
|
||||||
|
switch (aBoundaryType) {
|
||||||
|
case BOUNDARY_CHAR:
|
||||||
|
amount = eSelectCharacter;
|
||||||
|
if (aType == eGetAt)
|
||||||
|
aType = eGetAfter; // Avoid returning 2 characters
|
||||||
|
break;
|
||||||
|
|
||||||
|
case BOUNDARY_WORD_START:
|
||||||
|
needsStart = PR_TRUE;
|
||||||
|
amount = eSelectWord;
|
||||||
|
break;
|
||||||
|
|
||||||
|
case BOUNDARY_WORD_END:
|
||||||
|
amount = eSelectWord;
|
||||||
|
break;
|
||||||
|
|
||||||
|
case BOUNDARY_LINE_START:
|
||||||
|
// Newlines are considered at the end of a line. Since getting
|
||||||
|
// the BOUNDARY_LINE_START gets the text from the line-start to the next
|
||||||
|
// line-start, the newline is included at the end of the string.
|
||||||
|
needsStart = PR_TRUE;
|
||||||
|
amount = eSelectLine;
|
||||||
|
break;
|
||||||
|
|
||||||
|
case BOUNDARY_LINE_END:
|
||||||
|
// Newlines are considered at the end of a line. Since getting
|
||||||
|
// the BOUNDARY_END_START gets the text from the line-end to the next
|
||||||
|
//line-end, the newline is included at the beginning of the string.
|
||||||
|
amount = eSelectLine;
|
||||||
|
break;
|
||||||
|
|
||||||
|
case BOUNDARY_ATTRIBUTE_RANGE:
|
||||||
|
{
|
||||||
|
nsresult rv = GetTextAttributes(PR_FALSE, aOffset,
|
||||||
|
aStartOffset, aEndOffset, nsnull);
|
||||||
|
NS_ENSURE_SUCCESS(rv, rv);
|
||||||
|
|
||||||
|
return GetText(*aStartOffset, *aEndOffset, aText);
|
||||||
|
}
|
||||||
|
|
||||||
|
default: // Note, sentence support is deprecated and falls through to here
|
||||||
|
return NS_ERROR_INVALID_ARG;
|
||||||
|
}
|
||||||
|
|
||||||
PRInt32 startOffset = aOffset + (aBoundaryType == BOUNDARY_LINE_END); // Avoid getting the previous line
|
PRInt32 startOffset = aOffset + (aBoundaryType == BOUNDARY_LINE_END); // Avoid getting the previous line
|
||||||
PRInt32 endOffset = startOffset;
|
PRInt32 endOffset = startOffset;
|
||||||
|
|
||||||
@ -948,60 +999,6 @@ nsresult nsHyperTextAccessible::GetTextHelper(EGetTextType aType, nsAccessibleTe
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
nsSelectionAmount amount;
|
|
||||||
PRBool needsStart = PR_FALSE;
|
|
||||||
switch (aBoundaryType)
|
|
||||||
{
|
|
||||||
case BOUNDARY_CHAR:
|
|
||||||
amount = eSelectCharacter;
|
|
||||||
if (aType == eGetAt) {
|
|
||||||
aType = eGetAfter; // Avoid returning 2 characters
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case BOUNDARY_WORD_START:
|
|
||||||
needsStart = PR_TRUE;
|
|
||||||
amount = eSelectWord;
|
|
||||||
break;
|
|
||||||
case BOUNDARY_WORD_END:
|
|
||||||
amount = eSelectWord;
|
|
||||||
break;
|
|
||||||
case BOUNDARY_LINE_START:
|
|
||||||
// Newlines are considered at the end of a line,
|
|
||||||
// Since getting the BOUNDARY_LINE_START gets the text from the line-start
|
|
||||||
// to the next line-start, the newline is included at the end of the string
|
|
||||||
needsStart = PR_TRUE;
|
|
||||||
amount = eSelectLine;
|
|
||||||
break;
|
|
||||||
case BOUNDARY_LINE_END:
|
|
||||||
// Newlines are considered at the end of a line,
|
|
||||||
// Since getting the BOUNDARY_END_START gets the text from the line-end
|
|
||||||
// to the next line-end, the newline is included at the beginning of the string
|
|
||||||
amount = eSelectLine;
|
|
||||||
break;
|
|
||||||
case BOUNDARY_ATTRIBUTE_RANGE:
|
|
||||||
{
|
|
||||||
// XXX We should merge identically formatted frames
|
|
||||||
// XXX deal with static text case
|
|
||||||
// XXX deal with boundary type
|
|
||||||
nsIContent *textContent = startFrame->GetContent();
|
|
||||||
// If not text, then it's represented by an embedded object char
|
|
||||||
// (length of 1)
|
|
||||||
// XXX did this mean to check for eTEXT?
|
|
||||||
// XXX This is completely wrong, needs to be reimplemented
|
|
||||||
PRInt32 textLength = textContent ? textContent->TextLength() : 1;
|
|
||||||
if (textLength < 0) {
|
|
||||||
return NS_ERROR_FAILURE;
|
|
||||||
}
|
|
||||||
*aStartOffset = aOffset - startOffset;
|
|
||||||
*aEndOffset = *aStartOffset + textLength;
|
|
||||||
startOffset = *aStartOffset;
|
|
||||||
endOffset = *aEndOffset;
|
|
||||||
return GetText(startOffset, endOffset, aText);
|
|
||||||
}
|
|
||||||
default: // Note, sentence support is deprecated and falls through to here
|
|
||||||
return NS_ERROR_INVALID_ARG;
|
|
||||||
}
|
|
||||||
|
|
||||||
PRInt32 finalStartOffset, finalEndOffset;
|
PRInt32 finalStartOffset, finalEndOffset;
|
||||||
|
|
||||||
// If aType == eGetAt we'll change both the start and end offset from
|
// If aType == eGetAt we'll change both the start and end offset from
|
||||||
@ -1120,7 +1117,7 @@ nsHyperTextAccessible::GetTextAttributes(PRBool aIncludeDefAttrs,
|
|||||||
nsresult rv = GetCharacterCount(aEndOffset);
|
nsresult rv = GetCharacterCount(aEndOffset);
|
||||||
NS_ENSURE_SUCCESS(rv, rv);
|
NS_ENSURE_SUCCESS(rv, rv);
|
||||||
|
|
||||||
NS_ENSURE_ARG_POINTER(aAttributes);
|
if (aAttributes) {
|
||||||
*aAttributes = nsnull;
|
*aAttributes = nsnull;
|
||||||
|
|
||||||
nsCOMPtr<nsIPersistentProperties> attributes =
|
nsCOMPtr<nsIPersistentProperties> attributes =
|
||||||
@ -1128,6 +1125,7 @@ nsHyperTextAccessible::GetTextAttributes(PRBool aIncludeDefAttrs,
|
|||||||
NS_ENSURE_TRUE(attributes, NS_ERROR_OUT_OF_MEMORY);
|
NS_ENSURE_TRUE(attributes, NS_ERROR_OUT_OF_MEMORY);
|
||||||
|
|
||||||
NS_ADDREF(*aAttributes = attributes);
|
NS_ADDREF(*aAttributes = attributes);
|
||||||
|
}
|
||||||
|
|
||||||
if (!mDOMNode)
|
if (!mDOMNode)
|
||||||
return NS_ERROR_FAILURE;
|
return NS_ERROR_FAILURE;
|
||||||
@ -1139,7 +1137,7 @@ nsHyperTextAccessible::GetTextAttributes(PRBool aIncludeDefAttrs,
|
|||||||
|
|
||||||
// Set 'misspelled' text attribute.
|
// Set 'misspelled' text attribute.
|
||||||
rv = GetSpellTextAttribute(node, nodeOffset, aStartOffset, aEndOffset,
|
rv = GetSpellTextAttribute(node, nodeOffset, aStartOffset, aEndOffset,
|
||||||
*aAttributes);
|
aAttributes ? *aAttributes : nsnull);
|
||||||
NS_ENSURE_SUCCESS(rv, rv);
|
NS_ENSURE_SUCCESS(rv, rv);
|
||||||
|
|
||||||
nsCOMPtr<nsIContent> content(do_QueryInterface(node));
|
nsCOMPtr<nsIContent> content(do_QueryInterface(node));
|
||||||
@ -1151,12 +1149,14 @@ nsHyperTextAccessible::GetTextAttributes(PRBool aIncludeDefAttrs,
|
|||||||
|
|
||||||
// Set 'lang' text attribute.
|
// Set 'lang' text attribute.
|
||||||
rv = GetLangTextAttributes(aIncludeDefAttrs, node,
|
rv = GetLangTextAttributes(aIncludeDefAttrs, node,
|
||||||
aStartOffset, aEndOffset, *aAttributes);
|
aStartOffset, aEndOffset,
|
||||||
|
aAttributes ? *aAttributes : nsnull);
|
||||||
NS_ENSURE_SUCCESS(rv, rv);
|
NS_ENSURE_SUCCESS(rv, rv);
|
||||||
|
|
||||||
// Set CSS based text attributes.
|
// Set CSS based text attributes.
|
||||||
rv = GetCSSTextAttributes(aIncludeDefAttrs, node,
|
rv = GetCSSTextAttributes(aIncludeDefAttrs, node,
|
||||||
aStartOffset, aEndOffset, *aAttributes);
|
aStartOffset, aEndOffset,
|
||||||
|
aAttributes ? *aAttributes : nsnull);
|
||||||
return rv;
|
return rv;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -2229,8 +2229,10 @@ nsHyperTextAccessible::GetSpellTextAttribute(nsIDOMNode *aNode,
|
|||||||
if (endHTOffset < *aHTEndOffset)
|
if (endHTOffset < *aHTEndOffset)
|
||||||
*aHTEndOffset = endHTOffset;
|
*aHTEndOffset = endHTOffset;
|
||||||
|
|
||||||
|
if (aAttributes) {
|
||||||
nsAccUtils::SetAccAttr(aAttributes, nsAccessibilityAtoms::invalid,
|
nsAccUtils::SetAccAttr(aAttributes, nsAccessibilityAtoms::invalid,
|
||||||
NS_LITERAL_STRING("spelling"));
|
NS_LITERAL_STRING("spelling"));
|
||||||
|
}
|
||||||
|
|
||||||
return NS_OK;
|
return NS_OK;
|
||||||
}
|
}
|
||||||
@ -2259,6 +2261,7 @@ nsHyperTextAccessible::GetLangTextAttributes(PRBool aIncludeDefAttrs,
|
|||||||
nsresult rv = GetLanguage(rootLang);
|
nsresult rv = GetLanguage(rootLang);
|
||||||
NS_ENSURE_SUCCESS(rv, rv);
|
NS_ENSURE_SUCCESS(rv, rv);
|
||||||
|
|
||||||
|
if (aAttributes) {
|
||||||
// Expose 'language' text attribute if the DOM 'lang' attribute is
|
// Expose 'language' text attribute if the DOM 'lang' attribute is
|
||||||
// presented and it's different from the 'lang' attribute on the root
|
// presented and it's different from the 'lang' attribute on the root
|
||||||
// element or we should include default values of text attribute.
|
// element or we should include default values of text attribute.
|
||||||
@ -2266,6 +2269,7 @@ nsHyperTextAccessible::GetLangTextAttributes(PRBool aIncludeDefAttrs,
|
|||||||
if (!resultLang.IsEmpty() && (aIncludeDefAttrs || lang != rootLang))
|
if (!resultLang.IsEmpty() && (aIncludeDefAttrs || lang != rootLang))
|
||||||
nsAccUtils::SetAccAttr(aAttributes, nsAccessibilityAtoms::language,
|
nsAccUtils::SetAccAttr(aAttributes, nsAccessibilityAtoms::language,
|
||||||
resultLang);
|
resultLang);
|
||||||
|
}
|
||||||
|
|
||||||
nsLangTextAttr textAttr(lang, rootContent);
|
nsLangTextAttr textAttr(lang, rootContent);
|
||||||
return GetRangeForTextAttr(aSourceNode, &textAttr,
|
return GetRangeForTextAttr(aSourceNode, &textAttr,
|
||||||
@ -2287,7 +2291,7 @@ nsHyperTextAccessible::GetCSSTextAttributes(PRBool aIncludeDefAttrs,
|
|||||||
while (textAttr.iterate()) {
|
while (textAttr.iterate()) {
|
||||||
nsCAutoString name;
|
nsCAutoString name;
|
||||||
nsAutoString value, oldValue;
|
nsAutoString value, oldValue;
|
||||||
if (textAttr.get(name, value))
|
if (aAttributes && textAttr.get(name, value))
|
||||||
aAttributes->SetStringProperty(name, value, oldValue);
|
aAttributes->SetStringProperty(name, value, oldValue);
|
||||||
|
|
||||||
nsresult rv = GetRangeForTextAttr(aSourceNode, &textAttr,
|
nsresult rv = GetRangeForTextAttr(aSourceNode, &textAttr,
|
||||||
|
@ -287,7 +287,7 @@ protected:
|
|||||||
* @param aSourceNode [in] the node we start to traverse from
|
* @param aSourceNode [in] the node we start to traverse from
|
||||||
* @param aStartOffset [in, out] the start offset
|
* @param aStartOffset [in, out] the start offset
|
||||||
* @param aEndOffset [in, out] the end offset
|
* @param aEndOffset [in, out] the end offset
|
||||||
* @param aAttributes [out] result attributes
|
* @param aAttributes [out, optional] result attributes
|
||||||
*/
|
*/
|
||||||
nsresult GetSpellTextAttribute(nsIDOMNode *aNode, PRInt32 aNodeOffset,
|
nsresult GetSpellTextAttribute(nsIDOMNode *aNode, PRInt32 aNodeOffset,
|
||||||
PRInt32 *aStartOffset,
|
PRInt32 *aStartOffset,
|
||||||
@ -303,7 +303,7 @@ protected:
|
|||||||
* @param aSourceNode [in] the node we start to traverse from
|
* @param aSourceNode [in] the node we start to traverse from
|
||||||
* @param aStartOffset [in, out] the start offset
|
* @param aStartOffset [in, out] the start offset
|
||||||
* @param aEndOffset [in, out] the end offset
|
* @param aEndOffset [in, out] the end offset
|
||||||
* @param aAttributes [out] result attributes
|
* @param aAttributes [out, optional] result attributes
|
||||||
*/
|
*/
|
||||||
nsresult GetLangTextAttributes(PRBool aIncludeDefAttrs,
|
nsresult GetLangTextAttributes(PRBool aIncludeDefAttrs,
|
||||||
nsIDOMNode *aSourceNode,
|
nsIDOMNode *aSourceNode,
|
||||||
@ -320,7 +320,7 @@ protected:
|
|||||||
* @param aSourceNode [in] the node we start to traverse from
|
* @param aSourceNode [in] the node we start to traverse from
|
||||||
* @param aStartOffset [in, out] the start offset
|
* @param aStartOffset [in, out] the start offset
|
||||||
* @param aEndOffset [in, out] the end offset
|
* @param aEndOffset [in, out] the end offset
|
||||||
* @param aAttributes [out] result attributes
|
* @param aAttributes [out, optional] result attributes
|
||||||
*/
|
*/
|
||||||
nsresult GetCSSTextAttributes(PRBool aIncludeDefAttrs,
|
nsresult GetCSSTextAttributes(PRBool aIncludeDefAttrs,
|
||||||
nsIDOMNode *aSourceNode,
|
nsIDOMNode *aSourceNode,
|
||||||
|
@ -37,6 +37,7 @@
|
|||||||
* ***** END LICENSE BLOCK ***** */
|
* ***** END LICENSE BLOCK ***** */
|
||||||
|
|
||||||
#include "nsAccessNodeWrap.h"
|
#include "nsAccessNodeWrap.h"
|
||||||
|
#include <tchar.h>
|
||||||
#include "ISimpleDOMNode_i.c"
|
#include "ISimpleDOMNode_i.c"
|
||||||
#include "nsAccessibilityAtoms.h"
|
#include "nsAccessibilityAtoms.h"
|
||||||
#include "nsIAccessibilityService.h"
|
#include "nsIAccessibilityService.h"
|
||||||
@ -66,6 +67,8 @@ LPFNNOTIFYWINEVENT nsAccessNodeWrap::gmNotifyWinEvent = nsnull;
|
|||||||
LPFNGETGUITHREADINFO nsAccessNodeWrap::gmGetGUIThreadInfo = nsnull;
|
LPFNGETGUITHREADINFO nsAccessNodeWrap::gmGetGUIThreadInfo = nsnull;
|
||||||
|
|
||||||
PRBool nsAccessNodeWrap::gIsEnumVariantSupportDisabled = 0;
|
PRBool nsAccessNodeWrap::gIsEnumVariantSupportDisabled = 0;
|
||||||
|
// Used to determine whether an IAccessible2 compatible screen reader is loaded.
|
||||||
|
PRBool nsAccessNodeWrap::gIsIA2Disabled = PR_FALSE;
|
||||||
|
|
||||||
nsIAccessibleTextChangeEvent *nsAccessNodeWrap::gTextEvent = nsnull;
|
nsIAccessibleTextChangeEvent *nsAccessNodeWrap::gTextEvent = nsnull;
|
||||||
|
|
||||||
@ -599,6 +602,8 @@ void nsAccessNodeWrap::InitAccessibility()
|
|||||||
gmGetGUIThreadInfo = (LPFNGETGUITHREADINFO)GetProcAddress(gmUserLib,"GetGUIThreadInfo");
|
gmGetGUIThreadInfo = (LPFNGETGUITHREADINFO)GetProcAddress(gmUserLib,"GetGUIThreadInfo");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
DoATSpecificProcessing();
|
||||||
|
|
||||||
nsAccessNode::InitXPAccessibility();
|
nsAccessNode::InitXPAccessibility();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -655,3 +660,40 @@ GetHRESULT(nsresult aResult)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
PRBool nsAccessNodeWrap::IsOnlyMsaaCompatibleJawsPresent()
|
||||||
|
{
|
||||||
|
HMODULE jhookhandle = ::GetModuleHandleW(NS_LITERAL_STRING("jhook").get());
|
||||||
|
if (!jhookhandle)
|
||||||
|
return PR_FALSE; // No JAWS, or some other screen reader, use IA2
|
||||||
|
|
||||||
|
PRUnichar fileName[MAX_PATH];
|
||||||
|
::GetModuleFileNameW(jhookhandle, fileName, MAX_PATH);
|
||||||
|
|
||||||
|
DWORD dummy;
|
||||||
|
DWORD length = ::GetFileVersionInfoSizeW(fileName, &dummy);
|
||||||
|
|
||||||
|
LPBYTE versionInfo = new BYTE[length];
|
||||||
|
::GetFileVersionInfoW(fileName, 0, length, versionInfo);
|
||||||
|
|
||||||
|
UINT uLen;
|
||||||
|
VS_FIXEDFILEINFO *fixedFileInfo;
|
||||||
|
::VerQueryValueW(versionInfo, L"\\", (LPVOID*)&fixedFileInfo, &uLen);
|
||||||
|
DWORD dwFileVersionMS = fixedFileInfo->dwFileVersionMS;
|
||||||
|
DWORD dwFileVersionLS = fixedFileInfo->dwFileVersionLS;
|
||||||
|
delete [] versionInfo;
|
||||||
|
|
||||||
|
DWORD dwLeftMost = HIWORD(dwFileVersionMS);
|
||||||
|
// DWORD dwSecondLeft = LOWORD(dwFileVersionMS);
|
||||||
|
DWORD dwSecondRight = HIWORD(dwFileVersionLS);
|
||||||
|
// DWORD dwRightMost = LOWORD(dwFileVersionLS);
|
||||||
|
|
||||||
|
return (dwLeftMost < 8
|
||||||
|
|| (dwLeftMost == 8 && dwSecondRight < 2173));
|
||||||
|
}
|
||||||
|
|
||||||
|
void nsAccessNodeWrap::DoATSpecificProcessing()
|
||||||
|
{
|
||||||
|
if (IsOnlyMsaaCompatibleJawsPresent())
|
||||||
|
// All versions below 8.0.2173 are not compatible
|
||||||
|
gIsIA2Disabled = PR_TRUE;
|
||||||
|
}
|
||||||
|
@ -158,12 +158,20 @@ class nsAccessNodeWrap : public nsAccessNode,
|
|||||||
|
|
||||||
static int FilterA11yExceptions(unsigned int aCode, EXCEPTION_POINTERS *aExceptionInfo);
|
static int FilterA11yExceptions(unsigned int aCode, EXCEPTION_POINTERS *aExceptionInfo);
|
||||||
|
|
||||||
|
static PRBool IsOnlyMsaaCompatibleJawsPresent();
|
||||||
|
static void DoATSpecificProcessing();
|
||||||
protected:
|
protected:
|
||||||
void GetAccessibleFor(nsIDOMNode *node, nsIAccessible **newAcc);
|
void GetAccessibleFor(nsIDOMNode *node, nsIAccessible **newAcc);
|
||||||
ISimpleDOMNode* MakeAccessNode(nsIDOMNode *node);
|
ISimpleDOMNode* MakeAccessNode(nsIDOMNode *node);
|
||||||
|
|
||||||
static PRBool gIsEnumVariantSupportDisabled;
|
static PRBool gIsEnumVariantSupportDisabled;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Used to determine whether an IAccessible2 compatible screen reader is
|
||||||
|
* loaded. Currently used for JAWS versions older than 8.0.2173.
|
||||||
|
*/
|
||||||
|
static PRBool gIsIA2Disabled;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* It is used in nsHyperTextAccessibleWrap for IA2::newText/oldText
|
* It is used in nsHyperTextAccessibleWrap for IA2::newText/oldText
|
||||||
* implementation.
|
* implementation.
|
||||||
|
@ -117,7 +117,7 @@ __try {
|
|||||||
*ppv = static_cast<IEnumVARIANT*>(this);
|
*ppv = static_cast<IEnumVARIANT*>(this);
|
||||||
} else if (IID_IServiceProvider == iid)
|
} else if (IID_IServiceProvider == iid)
|
||||||
*ppv = static_cast<IServiceProvider*>(this);
|
*ppv = static_cast<IServiceProvider*>(this);
|
||||||
else if (IID_IAccessible2 == iid)
|
else if (IID_IAccessible2 == iid && !gIsIA2Disabled)
|
||||||
*ppv = static_cast<IAccessible2*>(this);
|
*ppv = static_cast<IAccessible2*>(this);
|
||||||
|
|
||||||
if (NULL == *ppv) {
|
if (NULL == *ppv) {
|
||||||
|
@ -47,6 +47,7 @@ include $(topsrcdir)/config/rules.mk
|
|||||||
|
|
||||||
_TEST_FILES =\
|
_TEST_FILES =\
|
||||||
moz.png \
|
moz.png \
|
||||||
|
nsIAccessible_actions.js \
|
||||||
nsIAccessible_name.css \
|
nsIAccessible_name.css \
|
||||||
nsIAccessible_name.xbl \
|
nsIAccessible_name.xbl \
|
||||||
test_aria_activedescendant.html \
|
test_aria_activedescendant.html \
|
||||||
@ -56,6 +57,8 @@ _TEST_FILES =\
|
|||||||
test_cssattrs.html \
|
test_cssattrs.html \
|
||||||
test_groupattrs.xul \
|
test_groupattrs.xul \
|
||||||
$(warning test_table_indexes.html temporarily disabled) \
|
$(warning test_table_indexes.html temporarily disabled) \
|
||||||
|
test_nsIAccessible_actions.html \
|
||||||
|
test_nsIAccessible_actions.xul \
|
||||||
test_nsIAccessible_name.html \
|
test_nsIAccessible_name.html \
|
||||||
test_nsIAccessible_name.xul \
|
test_nsIAccessible_name.xul \
|
||||||
test_nsIAccessibleTable_1.html \
|
test_nsIAccessibleTable_1.html \
|
||||||
|
150
accessible/tests/mochitest/nsIAccessible_actions.js
Normal file
150
accessible/tests/mochitest/nsIAccessible_actions.js
Normal file
@ -0,0 +1,150 @@
|
|||||||
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
|
// General
|
||||||
|
|
||||||
|
const nsIAccessibleRetrieval = Components.interfaces.nsIAccessibleRetrieval;
|
||||||
|
const nsIAccessibleRole = Components.interfaces.nsIAccessibleRole;
|
||||||
|
|
||||||
|
var gAccRetrieval = null;
|
||||||
|
|
||||||
|
function initialize()
|
||||||
|
{
|
||||||
|
gAccRetrieval = Components.classes["@mozilla.org/accessibleRetrieval;1"].
|
||||||
|
getService(nsIAccessibleRetrieval);
|
||||||
|
}
|
||||||
|
|
||||||
|
addLoadEvent(initialize);
|
||||||
|
|
||||||
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
|
// Event constants
|
||||||
|
|
||||||
|
const MOUSEDOWN_EVENT = 1;
|
||||||
|
const MOUSEUP_EVENT = 2;
|
||||||
|
const CLICK_EVENT = 4;
|
||||||
|
const COMMAND_EVENT = 8;
|
||||||
|
|
||||||
|
const CLICK_EVENTS = MOUSEDOWN_EVENT | MOUSEUP_EVENT | CLICK_EVENT;
|
||||||
|
const ALL_EVENTS = CLICK_EVENTS | COMMAND_EVENT;
|
||||||
|
|
||||||
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
|
// Public functions
|
||||||
|
|
||||||
|
function testActions(aArray, aIndex)
|
||||||
|
{
|
||||||
|
if (!aIndex)
|
||||||
|
aIndex = 0;
|
||||||
|
|
||||||
|
if (aIndex == aArray.length) {
|
||||||
|
SimpleTest.finish();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
var ID = aArray[aIndex].ID;
|
||||||
|
var actionName = aArray[aIndex].actionName;
|
||||||
|
var events = aArray[aIndex].events;
|
||||||
|
|
||||||
|
var elm = document.getElementById(ID);
|
||||||
|
if (!elm) {
|
||||||
|
ok(false, "There is no element with ID " + ID);
|
||||||
|
SimpleTest.finish();
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
var acc = null;
|
||||||
|
try {
|
||||||
|
acc = gAccRetrieval.getAccessibleFor(elm);
|
||||||
|
} catch(e) {
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!acc) {
|
||||||
|
ok(false, "There is no accessible for " + ID);
|
||||||
|
SimpleTest.finish();
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
is(acc.getActionName(0), actionName,
|
||||||
|
"Wrong action name of the accessible for " + ID);
|
||||||
|
|
||||||
|
gEventHandler.initialize(ID, elm, events);
|
||||||
|
|
||||||
|
acc.doAction(0);
|
||||||
|
|
||||||
|
window.setTimeout(
|
||||||
|
function()
|
||||||
|
{
|
||||||
|
gEventHandler.checkEvents();
|
||||||
|
testActions(aArray, aIndex + 1);
|
||||||
|
},
|
||||||
|
200
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
////////////////////////////////////////////////////////////////////////////////
|
||||||
|
// Private
|
||||||
|
|
||||||
|
var gEventHandler =
|
||||||
|
{
|
||||||
|
initialize: function(aID, aElm, aExpectedEvents)
|
||||||
|
{
|
||||||
|
this.ID = aID,
|
||||||
|
this.element = aElm;
|
||||||
|
this.mExpectedEvents = aExpectedEvents;
|
||||||
|
this.mFiredEvents = 0;
|
||||||
|
|
||||||
|
if (this.mExpectedEvents & MOUSEDOWN_EVENT)
|
||||||
|
aElm.addEventListener("mousedown", this, false);
|
||||||
|
|
||||||
|
if (this.mExpectedEvents & MOUSEUP_EVENT)
|
||||||
|
aElm.addEventListener("mouseup", this, false);
|
||||||
|
|
||||||
|
if (this.mExpectedEvents & CLICK_EVENT)
|
||||||
|
aElm.addEventListener("click", this, false);
|
||||||
|
|
||||||
|
if (this.mExpectedEvents & COMMAND_EVENT)
|
||||||
|
aElm.addEventListener("command", this, false);
|
||||||
|
},
|
||||||
|
|
||||||
|
checkEvents: function()
|
||||||
|
{
|
||||||
|
if (this.mExpectedEvents & MOUSEDOWN_EVENT) {
|
||||||
|
ok(this.mFiredEvents & MOUSEDOWN_EVENT,
|
||||||
|
"mousedown hasn't been fired for " + this.ID);
|
||||||
|
this.element.removeEventListener("mousedown", this, false);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (this.mExpectedEvents & MOUSEUP_EVENT) {
|
||||||
|
ok(this.mFiredEvents & MOUSEUP_EVENT,
|
||||||
|
"mouseup hasn't been fired for " + this.ID);
|
||||||
|
this.element.removeEventListener("mouseup", this, false);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (this.mExpectedEvents & CLICK_EVENT) {
|
||||||
|
ok(this.mFiredEvents & CLICK_EVENT,
|
||||||
|
"click hasn't been fired for " + this.ID);
|
||||||
|
this.element.removeEventListener("click", this, false);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (this.mExpectedEvents & COMMAND_EVENT) {
|
||||||
|
ok(this.mFiredEvents & COMMAND_EVENT,
|
||||||
|
"command hasn't been fired for " + this.ID);
|
||||||
|
this.element.removeEventListener("command", this, false);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
ID: "",
|
||||||
|
element: null,
|
||||||
|
|
||||||
|
handleEvent : function(aEvent)
|
||||||
|
{
|
||||||
|
if (aEvent.type == "mousedown")
|
||||||
|
this.mFiredEvents |= MOUSEDOWN_EVENT;
|
||||||
|
else if(aEvent.type == "mouseup")
|
||||||
|
this.mFiredEvents |= MOUSEUP_EVENT;
|
||||||
|
else if(aEvent.type == "click")
|
||||||
|
this.mFiredEvents |= CLICK_EVENT;
|
||||||
|
else if(aEvent.type == "command")
|
||||||
|
this.mFiredEvents |= COMMAND_EVENT;
|
||||||
|
},
|
||||||
|
|
||||||
|
mExpectedEvents: 0,
|
||||||
|
mFiredEvents: 0
|
||||||
|
};
|
49
accessible/tests/mochitest/test_nsIAccessible_actions.html
Normal file
49
accessible/tests/mochitest/test_nsIAccessible_actions.html
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
<html>
|
||||||
|
|
||||||
|
<head>
|
||||||
|
<title>nsIAccessible actions testing</title>
|
||||||
|
|
||||||
|
<link rel="stylesheet" type="text/css"
|
||||||
|
href="chrome://mochikit/content/tests/SimpleTest/test.css" />
|
||||||
|
|
||||||
|
<script type="application/javascript"
|
||||||
|
src="chrome://mochikit/content/MochiKit/packed.js"></script>
|
||||||
|
<script type="application/javascript"
|
||||||
|
src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js"></script>
|
||||||
|
<script type="application/javascript"
|
||||||
|
src="chrome://mochikit/content/a11y/accessible/nsIAccessible_actions.js"></script>
|
||||||
|
|
||||||
|
<script type="application/javascript">
|
||||||
|
function doTest()
|
||||||
|
{
|
||||||
|
var actionsArray = [
|
||||||
|
{
|
||||||
|
ID: "clickable",
|
||||||
|
actionName: "click",
|
||||||
|
events: CLICK_EVENTS
|
||||||
|
}
|
||||||
|
];
|
||||||
|
testActions(actionsArray);
|
||||||
|
}
|
||||||
|
|
||||||
|
SimpleTest.waitForExplicitFinish();
|
||||||
|
addLoadEvent(doTest);
|
||||||
|
</script>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
|
||||||
|
<a target="_blank"
|
||||||
|
href="https://bugzilla.mozilla.org/show_bug.cgi?id=410765"
|
||||||
|
title="nsIAccessible actions testing">
|
||||||
|
Mozilla Bug 410765
|
||||||
|
</a>
|
||||||
|
<p id="display"></p>
|
||||||
|
<div id="content" style="display: none"></div>
|
||||||
|
<pre id="test">
|
||||||
|
</pre>
|
||||||
|
|
||||||
|
<div id="clickable" onclick="">Clickable text</div>
|
||||||
|
|
||||||
|
</body>
|
||||||
|
</html>
|
98
accessible/tests/mochitest/test_nsIAccessible_actions.xul
Normal file
98
accessible/tests/mochitest/test_nsIAccessible_actions.xul
Normal file
@ -0,0 +1,98 @@
|
|||||||
|
<?xml version="1.0"?>
|
||||||
|
<?xml-stylesheet href="chrome://global/skin" type="text/css"?>
|
||||||
|
<?xml-stylesheet href="chrome://mochikit/content/tests/SimpleTest/test.css"
|
||||||
|
type="text/css"?>
|
||||||
|
<?xml-stylesheet href="chrome://mochikit/content/a11y/accessible/nsIAccessible_name.css"
|
||||||
|
type="text/css"?>
|
||||||
|
|
||||||
|
|
||||||
|
<window xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"
|
||||||
|
title="nsIAccessible actions testing">
|
||||||
|
|
||||||
|
<script type="application/javascript"
|
||||||
|
src="chrome://mochikit/content/MochiKit/packed.js"></script>
|
||||||
|
<script type="application/javascript"
|
||||||
|
src="chrome://mochikit/content/tests/SimpleTest/SimpleTest.js" />
|
||||||
|
<script type="application/javascript"
|
||||||
|
src="chrome://mochikit/content/a11y/accessible/nsIAccessible_actions.js" />
|
||||||
|
|
||||||
|
<script type="application/javascript">
|
||||||
|
<![CDATA[
|
||||||
|
function doTest()
|
||||||
|
{
|
||||||
|
var actionsArray = [
|
||||||
|
{
|
||||||
|
ID: "menu",
|
||||||
|
actionName: "click",
|
||||||
|
events: CLICK_EVENTS
|
||||||
|
},
|
||||||
|
{
|
||||||
|
ID: "submenu",
|
||||||
|
actionName: "click",
|
||||||
|
events: CLICK_EVENTS
|
||||||
|
},
|
||||||
|
{
|
||||||
|
ID: "menuitem",
|
||||||
|
actionName: "click",
|
||||||
|
events: ALL_EVENTS
|
||||||
|
},
|
||||||
|
{
|
||||||
|
ID: "button",
|
||||||
|
actionName: "press",
|
||||||
|
events: ALL_EVENTS
|
||||||
|
},
|
||||||
|
{
|
||||||
|
ID: "buttonmenu",
|
||||||
|
actionName: "press",
|
||||||
|
events: CLICK_EVENTS
|
||||||
|
},
|
||||||
|
{
|
||||||
|
ID: "buttonmenu_item",
|
||||||
|
actionName: "click",
|
||||||
|
events: CLICK_EVENTS
|
||||||
|
}
|
||||||
|
];
|
||||||
|
testActions(actionsArray);
|
||||||
|
}
|
||||||
|
|
||||||
|
SimpleTest.waitForExplicitFinish();
|
||||||
|
addLoadEvent(doTest);
|
||||||
|
]]>
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<body xmlns="http://www.w3.org/1999/xhtml">
|
||||||
|
<a target="_blank"
|
||||||
|
href="https://bugzilla.mozilla.org/show_bug.cgi?id=410765"
|
||||||
|
title="nsIAccessible actions testing">
|
||||||
|
Mozilla Bug 410765
|
||||||
|
</a>
|
||||||
|
<p id="display"></p>
|
||||||
|
<div id="content" style="display: none">
|
||||||
|
</div>
|
||||||
|
<pre id="test">
|
||||||
|
</pre>
|
||||||
|
</body>
|
||||||
|
|
||||||
|
<menubar>
|
||||||
|
<menu label="menu" id="menu">
|
||||||
|
<menupopup>
|
||||||
|
<menuitem label="menu item" id="menuitem"/>
|
||||||
|
<menu label="submenu" id="submenu">
|
||||||
|
<menupopup>
|
||||||
|
<menuitem label="menu item"/>
|
||||||
|
</menupopup>
|
||||||
|
</menu>
|
||||||
|
</menupopup>
|
||||||
|
</menu>
|
||||||
|
</menubar>
|
||||||
|
|
||||||
|
<button label="button" id="button"/>
|
||||||
|
|
||||||
|
<button type="menu" id="buttonmenu" label="button">
|
||||||
|
<menupopup>
|
||||||
|
<menuitem label="item1" id="buttonmenu_item"/>
|
||||||
|
<menuitem label="item1"/>
|
||||||
|
</menupopup>
|
||||||
|
</button>
|
||||||
|
</window>
|
||||||
|
|
@ -67,12 +67,13 @@
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
var errorMsg = " for " + aID + "at offset " + aOffset;
|
||||||
is(startOffset.value, aStartOffset,
|
is(startOffset.value, aStartOffset,
|
||||||
"Wrong start offset for " + aID);
|
"Wrong start offset" + errorMsg);
|
||||||
is(endOffset.value, aEndOffset,
|
is(endOffset.value, aEndOffset,
|
||||||
"Wrong end offset for " + aID);
|
"Wrong end offset" + errorMsg);
|
||||||
|
|
||||||
compareTextAttrs(aID, attrs, aAttrs);
|
compareTextAttrs(errorMsg, attrs, aAttrs);
|
||||||
|
|
||||||
var defAttrs = null;
|
var defAttrs = null;
|
||||||
try{
|
try{
|
||||||
@ -85,10 +86,10 @@
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
compareTextAttrs(aID, defAttrs, aDefAttrs);
|
compareTextAttrs(errorMsg, defAttrs, aDefAttrs);
|
||||||
}
|
}
|
||||||
|
|
||||||
function compareTextAttrs(aID, aAttrs, aExpectedAttrs)
|
function compareTextAttrs(aErrorMsg, aAttrs, aExpectedAttrs)
|
||||||
{
|
{
|
||||||
var enumerate = aAttrs.enumerate();
|
var enumerate = aAttrs.enumerate();
|
||||||
while (enumerate.hasMoreElements()) {
|
while (enumerate.hasMoreElements()) {
|
||||||
@ -96,10 +97,11 @@
|
|||||||
QueryInterface(Components.interfaces.nsIPropertyElement);
|
QueryInterface(Components.interfaces.nsIPropertyElement);
|
||||||
|
|
||||||
if (!(prop.key in aExpectedAttrs))
|
if (!(prop.key in aExpectedAttrs))
|
||||||
ok(false, "Unexpected attribute '" + prop.key + "' for " + aID);
|
ok(false,
|
||||||
|
"Unexpected attribute '" + prop.key + "'" + aErrorMsg);
|
||||||
else
|
else
|
||||||
is(prop.value, aExpectedAttrs[prop.key],
|
is(prop.value, aExpectedAttrs[prop.key],
|
||||||
"Attribute '" + prop.key + "' has wrong value for " + aID);
|
"Attribute '" + prop.key + "' has wrong value" + aErrorMsg);
|
||||||
}
|
}
|
||||||
|
|
||||||
for (var name in aExpectedAttrs) {
|
for (var name in aExpectedAttrs) {
|
||||||
@ -110,7 +112,8 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (!value)
|
if (!value)
|
||||||
ok(false, "There is no expected attribute '" + name + "' for " + aID);
|
ok(false,
|
||||||
|
"There is no expected attribute '" + name + "'" + aErrorMsg);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -142,7 +145,7 @@
|
|||||||
gObserverService.addObserver(gA11yEventObserver, "accessible-event",
|
gObserverService.addObserver(gA11yEventObserver, "accessible-event",
|
||||||
false);
|
false);
|
||||||
|
|
||||||
ID = "area7";
|
ID = "area8";
|
||||||
|
|
||||||
var node = document.getElementById(ID);
|
var node = document.getElementById(ID);
|
||||||
node.focus();
|
node.focus();
|
||||||
@ -161,7 +164,8 @@
|
|||||||
"font-weight": "400",
|
"font-weight": "400",
|
||||||
"text-indent": "0px",
|
"text-indent": "0px",
|
||||||
"color": "rgb(0, 0, 0)",
|
"color": "rgb(0, 0, 0)",
|
||||||
"font-family": "Lucida Grande"
|
"font-family": "Lucida Grande",
|
||||||
|
"text-position": "baseline"
|
||||||
};
|
};
|
||||||
|
|
||||||
var attrs = { "background-color": "transparent" };
|
var attrs = { "background-color": "transparent" };
|
||||||
@ -201,7 +205,8 @@
|
|||||||
"font-weight": "400",
|
"font-weight": "400",
|
||||||
"text-indent": "0px",
|
"text-indent": "0px",
|
||||||
"color": "rgb(0, 0, 0)",
|
"color": "rgb(0, 0, 0)",
|
||||||
"font-family": "serif"
|
"font-family": "serif",
|
||||||
|
"text-position": "baseline"
|
||||||
};
|
};
|
||||||
|
|
||||||
var attrs = {};
|
var attrs = {};
|
||||||
@ -224,7 +229,8 @@
|
|||||||
"font-weight": "400",
|
"font-weight": "400",
|
||||||
"text-indent": "0px",
|
"text-indent": "0px",
|
||||||
"color": "rgb(0, 0, 0)",
|
"color": "rgb(0, 0, 0)",
|
||||||
"font-family": "serif"
|
"font-family": "serif",
|
||||||
|
"text-position": "baseline"
|
||||||
};
|
};
|
||||||
|
|
||||||
attrs = {};
|
attrs = {};
|
||||||
@ -253,7 +259,8 @@
|
|||||||
"font-weight": "400",
|
"font-weight": "400",
|
||||||
"text-indent": "0px",
|
"text-indent": "0px",
|
||||||
"color": "rgb(0, 0, 0)",
|
"color": "rgb(0, 0, 0)",
|
||||||
"font-family": "serif"
|
"font-family": "serif",
|
||||||
|
"text-position": "baseline"
|
||||||
};
|
};
|
||||||
|
|
||||||
attrs = {"color": "rgb(0, 128, 0)"};
|
attrs = {"color": "rgb(0, 128, 0)"};
|
||||||
@ -276,7 +283,8 @@
|
|||||||
"font-weight": "400",
|
"font-weight": "400",
|
||||||
"text-indent": "0px",
|
"text-indent": "0px",
|
||||||
"color": "rgb(0, 0, 0)",
|
"color": "rgb(0, 0, 0)",
|
||||||
"font-family": "serif"
|
"font-family": "serif",
|
||||||
|
"text-position": "baseline"
|
||||||
};
|
};
|
||||||
|
|
||||||
attrs = {"color": "rgb(0, 128, 0)"};
|
attrs = {"color": "rgb(0, 128, 0)"};
|
||||||
@ -299,7 +307,8 @@
|
|||||||
"font-weight": "400",
|
"font-weight": "400",
|
||||||
"text-indent": "0px",
|
"text-indent": "0px",
|
||||||
"color": "rgb(0, 0, 0)",
|
"color": "rgb(0, 0, 0)",
|
||||||
"font-family": "serif"
|
"font-family": "serif",
|
||||||
|
"text-position": "baseline"
|
||||||
};
|
};
|
||||||
|
|
||||||
attrs = {"color": "rgb(0, 128, 0)"};
|
attrs = {"color": "rgb(0, 128, 0)"};
|
||||||
@ -315,7 +324,7 @@
|
|||||||
testTextAttrs(ID, 11, attrs, 11, 18, defAttrs);
|
testTextAttrs(ID, 11, attrs, 11, 18, defAttrs);
|
||||||
|
|
||||||
//////////////////////////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////////////////////
|
||||||
// area6
|
// area6 (CSS vertical-align property, bug 445938)
|
||||||
ID = "area6";
|
ID = "area6";
|
||||||
defAttrs = {
|
defAttrs = {
|
||||||
"font-style": "normal",
|
"font-style": "normal",
|
||||||
@ -325,7 +334,47 @@
|
|||||||
"font-weight": "400",
|
"font-weight": "400",
|
||||||
"text-indent": "0px",
|
"text-indent": "0px",
|
||||||
"color": "rgb(0, 0, 0)",
|
"color": "rgb(0, 0, 0)",
|
||||||
"font-family": "serif"
|
"font-family": "serif",
|
||||||
|
"text-position": "baseline"
|
||||||
|
};
|
||||||
|
|
||||||
|
attrs = {};
|
||||||
|
testTextAttrs(ID, 0, attrs, 0, 5, defAttrs);
|
||||||
|
|
||||||
|
attrs = {"text-position": "super", "font-size": "13px" };
|
||||||
|
testTextAttrs(ID, 5, attrs, 5, 13, defAttrs);
|
||||||
|
|
||||||
|
attrs = {};
|
||||||
|
testTextAttrs(ID, 13, attrs, 13, 27, defAttrs);
|
||||||
|
|
||||||
|
attrs = {"text-position": "super" };
|
||||||
|
testTextAttrs(ID, 27, attrs, 27, 35, defAttrs);
|
||||||
|
|
||||||
|
attrs = {};
|
||||||
|
testTextAttrs(ID, 35, attrs, 35, 39, defAttrs);
|
||||||
|
|
||||||
|
attrs = {"text-position": "sub", "font-size": "13px" };
|
||||||
|
testTextAttrs(ID, 39, attrs, 39, 50, defAttrs);
|
||||||
|
|
||||||
|
attrs = {};
|
||||||
|
testTextAttrs(ID, 50, attrs, 50, 55, defAttrs);
|
||||||
|
|
||||||
|
attrs = {"text-position": "sub" };
|
||||||
|
testTextAttrs(ID, 55, attrs, 55, 64, defAttrs);
|
||||||
|
|
||||||
|
//////////////////////////////////////////////////////////////////////////
|
||||||
|
// area7
|
||||||
|
ID = "area7";
|
||||||
|
defAttrs = {
|
||||||
|
"font-style": "normal",
|
||||||
|
"text-align": "start",
|
||||||
|
"font-size": "16px",
|
||||||
|
"background-color": "transparent",
|
||||||
|
"font-weight": "400",
|
||||||
|
"text-indent": "0px",
|
||||||
|
"color": "rgb(0, 0, 0)",
|
||||||
|
"font-family": "serif",
|
||||||
|
"text-position": "baseline"
|
||||||
};
|
};
|
||||||
|
|
||||||
attrs = {"language": "ru"};
|
attrs = {"language": "ru"};
|
||||||
@ -403,7 +452,14 @@
|
|||||||
<img src="moz.png" alt="image"/>
|
<img src="moz.png" alt="image"/>
|
||||||
<span style="color: red">Red</span>Normal
|
<span style="color: red">Red</span>Normal
|
||||||
</p>
|
</p>
|
||||||
<p lang="en" id="area6">
|
<p id="area6">
|
||||||
|
This <sup>sentence</sup> has the word
|
||||||
|
<span style="vertical-align:super;">sentence</span> in
|
||||||
|
<sub>superscript</sub> and
|
||||||
|
<span style="vertical-align:sub;">subscript</span>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p lang="en" id="area7">
|
||||||
<span lang="ru">Привет</span>
|
<span lang="ru">Привет</span>
|
||||||
<span style="background-color: blue">Blue BG color</span>
|
<span style="background-color: blue">Blue BG color</span>
|
||||||
<span lang="de">Ich bin/Du bist</span>
|
<span lang="de">Ich bin/Du bist</span>
|
||||||
@ -413,7 +469,7 @@
|
|||||||
</span>
|
</span>
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<input id="area7" value="valid text inalid tixt"/>
|
<input id="area8" value="valid text inalid tixt"/>
|
||||||
|
|
||||||
<p id="output"/>
|
<p id="output"/>
|
||||||
</body>
|
</body>
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
WIN32_MODULE_COMPANYNAME=Mozilla Corporation
|
WIN32_MODULE_COMPANYNAME=Mozilla Corporation
|
||||||
WIN32_MODULE_COPYRIGHT=©Firefox and Mozilla Developers, according to the MPL 1.1/GPL 2.0/LGPL 2.1 licenses, as applicable.
|
WIN32_MODULE_COPYRIGHT=©Firefox and Mozilla Developers, according to the MPL 1.1/GPL 2.0/LGPL 2.1 licenses, as applicable.
|
||||||
WIN32_MODULE_PRODUCTVERSION=3,1,0,0
|
WIN32_MODULE_PRODUCTVERSION=3,1,0,0
|
||||||
WIN32_MODULE_PRODUCTVERSION_STRING=3.1a1pre
|
WIN32_MODULE_PRODUCTVERSION_STRING=3.1a2pre
|
||||||
WIN32_MODULE_TRADEMARKS=Firefox is a Trademark of The Mozilla Foundation.
|
WIN32_MODULE_TRADEMARKS=Firefox is a Trademark of The Mozilla Foundation.
|
||||||
WIN32_MODULE_DESCRIPTION=Firefox
|
WIN32_MODULE_DESCRIPTION=Firefox
|
||||||
WIN32_MODULE_PRODUCTNAME=Firefox
|
WIN32_MODULE_PRODUCTNAME=Firefox
|
||||||
|
BIN
browser/base/content/aboutRobots-icon-rtl.png
Normal file
BIN
browser/base/content/aboutRobots-icon-rtl.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 7.7 KiB |
@ -29,6 +29,7 @@
|
|||||||
# Jeff Walden <jwalden+code@mit.edu>
|
# Jeff Walden <jwalden+code@mit.edu>
|
||||||
# Johnathan Nightingale <johnath@mozilla.com>
|
# Johnathan Nightingale <johnath@mozilla.com>
|
||||||
# Justin Dolske <dolske@mozilla.com>
|
# Justin Dolske <dolske@mozilla.com>
|
||||||
|
# Ehsan Akhgari <ehsan.akhgari@gmail.com>
|
||||||
#
|
#
|
||||||
# Alternatively, the contents of this file may be used under the terms of
|
# Alternatively, the contents of this file may be used under the terms of
|
||||||
# either the GNU General Public License Version 2 or later (the "GPL"), or
|
# either the GNU General Public License Version 2 or later (the "GPL"), or
|
||||||
@ -80,13 +81,32 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
]]></script>
|
]]></script>
|
||||||
|
|
||||||
|
<style type="text/css"><![CDATA[
|
||||||
|
#errorPageContainer {
|
||||||
|
background: url('chrome://browser/content/aboutRobots-icon.png') left 0 no-repeat -moz-Field;
|
||||||
|
-moz-background-origin: content;
|
||||||
|
}
|
||||||
|
|
||||||
|
#errorTrailerDescText {
|
||||||
|
float: right;
|
||||||
|
}
|
||||||
|
|
||||||
|
body[dir=rtl] #errorPageContainer {
|
||||||
|
background-image: url('chrome://browser/content/aboutRobots-icon-rtl.png');
|
||||||
|
background-position: right 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
body[dir=rtl] #errorTrailerDescText {
|
||||||
|
float: left;
|
||||||
|
}
|
||||||
|
]]></style>
|
||||||
</head>
|
</head>
|
||||||
|
|
||||||
<body dir="&locale.dir;">
|
<body dir="&locale.dir;">
|
||||||
|
|
||||||
<!-- PAGE CONTAINER (for styling purposes only) -->
|
<!-- PAGE CONTAINER (for styling purposes only) -->
|
||||||
<div id="errorPageContainer"
|
<div id="errorPageContainer">
|
||||||
style="background: url('chrome://browser/content/aboutRobots-icon.png') left 0 no-repeat -moz-Field; -moz-background-origin: content;">
|
|
||||||
|
|
||||||
<!-- Error Title -->
|
<!-- Error Title -->
|
||||||
<div id="errorTitle">
|
<div id="errorTitle">
|
||||||
@ -113,7 +133,7 @@
|
|||||||
|
|
||||||
<!-- Short Description -->
|
<!-- Short Description -->
|
||||||
<div id="errorTrailerDesc">
|
<div id="errorTrailerDesc">
|
||||||
<p id="errorTrailerDescText" style="float: right;">&robots.errorTrailerDescText;</p>
|
<p id="errorTrailerDescText">&robots.errorTrailerDescText;</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
@ -179,7 +179,6 @@
|
|||||||
accesskey="&keywordfield.accesskey;"
|
accesskey="&keywordfield.accesskey;"
|
||||||
oncommand="AddKeywordForSearchField();"/>
|
oncommand="AddKeywordForSearchField();"/>
|
||||||
<menuitem id="context-searchselect"
|
<menuitem id="context-searchselect"
|
||||||
accesskey="&search.accesskey;"
|
|
||||||
oncommand="BrowserSearch.loadSearch(getBrowserSelection(), true);"/>
|
oncommand="BrowserSearch.loadSearch(getBrowserSelection(), true);"/>
|
||||||
<menuseparator id="frame-sep"/>
|
<menuseparator id="frame-sep"/>
|
||||||
<menu id="frame" label="&thisFrameMenu.label;" accesskey="&thisFrameMenu.accesskey;">
|
<menu id="frame" label="&thisFrameMenu.label;" accesskey="&thisFrameMenu.accesskey;">
|
||||||
|
@ -22,7 +22,6 @@
|
|||||||
# Annie Sullivan <annie.sullivan@gmail.com>
|
# Annie Sullivan <annie.sullivan@gmail.com>
|
||||||
# Joe Hughes <joe@retrovirus.com>
|
# Joe Hughes <joe@retrovirus.com>
|
||||||
# Asaf Romano <mano@mozilla.com>
|
# Asaf Romano <mano@mozilla.com>
|
||||||
# Ehsan Akhgari <ehsan.akhgari@gmail.com>
|
|
||||||
#
|
#
|
||||||
# Alternatively, the contents of this file may be used under the terms of
|
# Alternatively, the contents of this file may be used under the terms of
|
||||||
# either the GNU General Public License Version 2 or later (the "GPL"), or
|
# either the GNU General Public License Version 2 or later (the "GPL"), or
|
||||||
|
@ -73,19 +73,12 @@ var gURIFixup = null;
|
|||||||
var gCharsetMenu = null;
|
var gCharsetMenu = null;
|
||||||
var gLastBrowserCharset = null;
|
var gLastBrowserCharset = null;
|
||||||
var gPrevCharset = null;
|
var gPrevCharset = null;
|
||||||
var gURLBar = null;
|
|
||||||
var gFindBar = null;
|
|
||||||
var gProxyFavIcon = null;
|
var gProxyFavIcon = null;
|
||||||
var gNavigatorBundle = null;
|
|
||||||
var gIsLoadingBlank = false;
|
var gIsLoadingBlank = false;
|
||||||
var gLastValidURLStr = "";
|
var gLastValidURLStr = "";
|
||||||
var gMustLoadSidebar = false;
|
var gMustLoadSidebar = false;
|
||||||
var gProgressMeterPanel = null;
|
|
||||||
var gProgressCollapseTimer = null;
|
var gProgressCollapseTimer = null;
|
||||||
var gPrefService = null;
|
|
||||||
var appCore = null;
|
var appCore = null;
|
||||||
var gBrowser = null;
|
|
||||||
var gNavToolbox = null;
|
|
||||||
var gSidebarCommand = "";
|
var gSidebarCommand = "";
|
||||||
var gInPrintPreviewMode = false;
|
var gInPrintPreviewMode = false;
|
||||||
let gDownloadMgr = null;
|
let gDownloadMgr = null;
|
||||||
@ -108,6 +101,34 @@ var gClickAndHoldTimer = null;
|
|||||||
var gEditUIVisible = true;
|
var gEditUIVisible = true;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
[
|
||||||
|
["gBrowser", "content"],
|
||||||
|
["gNavToolbox", "navigator-toolbox"],
|
||||||
|
["gURLBar", "urlbar"],
|
||||||
|
["gNavigatorBundle", "bundle_browser"],
|
||||||
|
["gProgressMeterPanel", "statusbar-progresspanel"],
|
||||||
|
["gFindBar", "FindToolbar"]
|
||||||
|
].forEach(function (elementGlobal) {
|
||||||
|
var [name, id] = elementGlobal;
|
||||||
|
window.__defineGetter__(name, function () {
|
||||||
|
var element = document.getElementById(id);
|
||||||
|
if (!element)
|
||||||
|
return null;
|
||||||
|
delete window[name];
|
||||||
|
return window[name] = element;
|
||||||
|
});
|
||||||
|
window.__defineSetter__(name, function (val) {
|
||||||
|
delete window[name];
|
||||||
|
return window[name] = val;
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
__defineGetter__("gPrefService", function() {
|
||||||
|
delete this.gPrefService;
|
||||||
|
return this.gPrefService = Cc["@mozilla.org/preferences-service;1"].
|
||||||
|
getService(Ci.nsIPrefBranch2);
|
||||||
|
});
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* We can avoid adding multiple load event listeners and save some time by adding
|
* We can avoid adding multiple load event listeners and save some time by adding
|
||||||
* one listener that calls all real handlers.
|
* one listener that calls all real handlers.
|
||||||
@ -253,9 +274,9 @@ function SetClickAndHoldHandlers()
|
|||||||
|
|
||||||
function BookmarkThisTab()
|
function BookmarkThisTab()
|
||||||
{
|
{
|
||||||
var tab = getBrowser().mContextTab;
|
var tab = gBrowser.mContextTab;
|
||||||
if (tab.localName != "tab")
|
if (tab.localName != "tab")
|
||||||
tab = getBrowser().mCurrentTab;
|
tab = gBrowser.mCurrentTab;
|
||||||
|
|
||||||
PlacesCommandHook.bookmarkPage(tab.linkedBrowser,
|
PlacesCommandHook.bookmarkPage(tab.linkedBrowser,
|
||||||
PlacesUtils.bookmarksMenuFolderId, true);
|
PlacesUtils.bookmarksMenuFolderId, true);
|
||||||
@ -334,9 +355,6 @@ const gPopupBlockerObserver = {
|
|||||||
// notifications are per-browser, we don't need to worry about re-adding
|
// notifications are per-browser, we don't need to worry about re-adding
|
||||||
// it.
|
// it.
|
||||||
if (!gBrowser.pageReport.reported) {
|
if (!gBrowser.pageReport.reported) {
|
||||||
if (!gPrefService)
|
|
||||||
gPrefService = Components.classes["@mozilla.org/preferences-service;1"]
|
|
||||||
.getService(Components.interfaces.nsIPrefBranch2);
|
|
||||||
if (gPrefService.getBoolPref("privacy.popups.showBrowserMessage")) {
|
if (gPrefService.getBoolPref("privacy.popups.showBrowserMessage")) {
|
||||||
var bundle_browser = document.getElementById("bundle_browser");
|
var bundle_browser = document.getElementById("bundle_browser");
|
||||||
var brandBundle = document.getElementById("bundle_brand");
|
var brandBundle = document.getElementById("bundle_brand");
|
||||||
@ -577,9 +595,8 @@ const gXPInstallObserver = {
|
|||||||
|
|
||||||
_getBrowser: function (aDocShell)
|
_getBrowser: function (aDocShell)
|
||||||
{
|
{
|
||||||
var tabbrowser = getBrowser();
|
for (var i = 0; i < gBrowser.browsers.length; ++i) {
|
||||||
for (var i = 0; i < tabbrowser.browsers.length; ++i) {
|
var browser = gBrowser.getBrowserAtIndex(i);
|
||||||
var browser = tabbrowser.getBrowserAtIndex(i);
|
|
||||||
if (this._findChildShell(browser.docShell, aDocShell))
|
if (this._findChildShell(browser.docShell, aDocShell))
|
||||||
return browser;
|
return browser;
|
||||||
}
|
}
|
||||||
@ -656,8 +673,6 @@ const gXPInstallObserver = {
|
|||||||
|
|
||||||
function BrowserStartup()
|
function BrowserStartup()
|
||||||
{
|
{
|
||||||
gBrowser = document.getElementById("content");
|
|
||||||
|
|
||||||
var uriToLoad = null;
|
var uriToLoad = null;
|
||||||
|
|
||||||
// window.arguments[0]: URI to load (string), or an nsISupportsArray of
|
// window.arguments[0]: URI to load (string), or an nsISupportsArray of
|
||||||
@ -826,10 +841,6 @@ function HandleAppCommandEvent(evt)
|
|||||||
|
|
||||||
function prepareForStartup()
|
function prepareForStartup()
|
||||||
{
|
{
|
||||||
gURLBar = document.getElementById("urlbar");
|
|
||||||
gNavigatorBundle = document.getElementById("bundle_browser");
|
|
||||||
gProgressMeterPanel = document.getElementById("statusbar-progresspanel");
|
|
||||||
gFindBar = document.getElementById("FindToolbar");
|
|
||||||
gBrowser.addEventListener("DOMUpdatePageReport", gPopupBlockerObserver.onUpdatePageReport, false);
|
gBrowser.addEventListener("DOMUpdatePageReport", gPopupBlockerObserver.onUpdatePageReport, false);
|
||||||
// Note: we need to listen to untrusted events, because the pluginfinder XBL
|
// Note: we need to listen to untrusted events, because the pluginfinder XBL
|
||||||
// binding can't fire trusted ones (runs with page privileges).
|
// binding can't fire trusted ones (runs with page privileges).
|
||||||
@ -912,9 +923,6 @@ function delayedStartup()
|
|||||||
os.addObserver(gSessionHistoryObserver, "browser:purge-session-history", false);
|
os.addObserver(gSessionHistoryObserver, "browser:purge-session-history", false);
|
||||||
os.addObserver(gXPInstallObserver, "xpinstall-install-blocked", false);
|
os.addObserver(gXPInstallObserver, "xpinstall-install-blocked", false);
|
||||||
|
|
||||||
if (!gPrefService)
|
|
||||||
gPrefService = Components.classes["@mozilla.org/preferences-service;1"]
|
|
||||||
.getService(Components.interfaces.nsIPrefBranch2);
|
|
||||||
BrowserOffline.init();
|
BrowserOffline.init();
|
||||||
OfflineApps.init();
|
OfflineApps.init();
|
||||||
|
|
||||||
@ -946,9 +954,8 @@ function delayedStartup()
|
|||||||
else
|
else
|
||||||
focusElement(content);
|
focusElement(content);
|
||||||
|
|
||||||
var navToolbox = getNavToolbox();
|
gNavToolbox.customizeDone = BrowserToolboxCustomizeDone;
|
||||||
navToolbox.customizeDone = BrowserToolboxCustomizeDone;
|
gNavToolbox.customizeChange = BrowserToolboxCustomizeChange;
|
||||||
navToolbox.customizeChange = BrowserToolboxCustomizeChange;
|
|
||||||
|
|
||||||
// Set up Sanitize Item
|
// Set up Sanitize Item
|
||||||
gSanitizeListener = new SanitizeListener();
|
gSanitizeListener = new SanitizeListener();
|
||||||
@ -1209,17 +1216,12 @@ function nonBrowserWindowStartup()
|
|||||||
element.setAttribute("hidden", "true");
|
element.setAttribute("hidden", "true");
|
||||||
}
|
}
|
||||||
|
|
||||||
gNavigatorBundle = document.getElementById("bundle_browser");
|
|
||||||
|
|
||||||
setTimeout(nonBrowserWindowDelayedStartup, 0);
|
setTimeout(nonBrowserWindowDelayedStartup, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
function nonBrowserWindowDelayedStartup()
|
function nonBrowserWindowDelayedStartup()
|
||||||
{
|
{
|
||||||
// init global pref service
|
|
||||||
gPrefService = Components.classes["@mozilla.org/preferences-service;1"]
|
|
||||||
.getService(Components.interfaces.nsIPrefBranch2);
|
|
||||||
|
|
||||||
// initialise the offline listener
|
// initialise the offline listener
|
||||||
BrowserOffline.init();
|
BrowserOffline.init();
|
||||||
|
|
||||||
@ -1337,7 +1339,7 @@ function gotoHistoryIndex(aEvent)
|
|||||||
// Normal click. Go there in the current tab and update session history.
|
// Normal click. Go there in the current tab and update session history.
|
||||||
|
|
||||||
try {
|
try {
|
||||||
getBrowser().gotoIndex(index);
|
gBrowser.gotoIndex(index);
|
||||||
}
|
}
|
||||||
catch(ex) {
|
catch(ex) {
|
||||||
return false;
|
return false;
|
||||||
@ -1362,7 +1364,7 @@ function BrowserForward(aEvent, aIgnoreAlt)
|
|||||||
|
|
||||||
if (where == "current") {
|
if (where == "current") {
|
||||||
try {
|
try {
|
||||||
getBrowser().goForward();
|
gBrowser.goForward();
|
||||||
}
|
}
|
||||||
catch(ex) {
|
catch(ex) {
|
||||||
}
|
}
|
||||||
@ -1382,7 +1384,7 @@ function BrowserBack(aEvent, aIgnoreAlt)
|
|||||||
|
|
||||||
if (where == "current") {
|
if (where == "current") {
|
||||||
try {
|
try {
|
||||||
getBrowser().goBack();
|
gBrowser.goBack();
|
||||||
}
|
}
|
||||||
catch(ex) {
|
catch(ex) {
|
||||||
}
|
}
|
||||||
@ -1653,7 +1655,7 @@ function loadURI(uri, referrer, postData, allowThirdPartyFixup)
|
|||||||
if (allowThirdPartyFixup) {
|
if (allowThirdPartyFixup) {
|
||||||
flags = nsIWebNavigation.LOAD_FLAGS_ALLOW_THIRD_PARTY_FIXUP;
|
flags = nsIWebNavigation.LOAD_FLAGS_ALLOW_THIRD_PARTY_FIXUP;
|
||||||
}
|
}
|
||||||
getBrowser().loadURIWithFlags(uri, flags, referrer, null, postData);
|
gBrowser.loadURIWithFlags(uri, flags, referrer, null, postData);
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -1934,7 +1936,7 @@ function checkForDirectoryListing()
|
|||||||
}
|
}
|
||||||
|
|
||||||
function URLBarSetURI(aURI) {
|
function URLBarSetURI(aURI) {
|
||||||
var value = getBrowser().userTypedValue;
|
var value = gBrowser.userTypedValue;
|
||||||
var state = "invalid";
|
var state = "invalid";
|
||||||
|
|
||||||
if (!value) {
|
if (!value) {
|
||||||
@ -2399,7 +2401,7 @@ function toggleAffectedChrome(aHide)
|
|||||||
// (*) find bar
|
// (*) find bar
|
||||||
// (*) statusbar
|
// (*) statusbar
|
||||||
|
|
||||||
getNavToolbox().hidden = aHide;
|
gNavToolbox.hidden = aHide;
|
||||||
if (aHide)
|
if (aHide)
|
||||||
{
|
{
|
||||||
gChromeState = {};
|
gChromeState = {};
|
||||||
@ -2460,7 +2462,7 @@ function onExitPrintPreview()
|
|||||||
|
|
||||||
function getPPBrowser()
|
function getPPBrowser()
|
||||||
{
|
{
|
||||||
return getBrowser();
|
return gBrowser;
|
||||||
}
|
}
|
||||||
|
|
||||||
function getMarkupDocumentViewer()
|
function getMarkupDocumentViewer()
|
||||||
@ -2999,7 +3001,7 @@ const BrowserSearch = {
|
|||||||
return;
|
return;
|
||||||
|
|
||||||
if (useNewTab) {
|
if (useNewTab) {
|
||||||
getBrowser().loadOneTab(submission.uri.spec, null, null,
|
gBrowser.loadOneTab(submission.uri.spec, null, null,
|
||||||
submission.postData, null, false);
|
submission.postData, null, false);
|
||||||
} else
|
} else
|
||||||
loadURI(submission.uri.spec, null, submission.postData, false);
|
loadURI(submission.uri.spec, null, submission.postData, false);
|
||||||
@ -3206,12 +3208,12 @@ function BrowserCustomizeToolbar()
|
|||||||
// hidden
|
// hidden
|
||||||
var sheetWidth = sheetFrame.style.width.match(/([0-9]+)px/)[1];
|
var sheetWidth = sheetFrame.style.width.match(/([0-9]+)px/)[1];
|
||||||
document.getElementById("customizeToolbarSheetPopup")
|
document.getElementById("customizeToolbarSheetPopup")
|
||||||
.openPopup(getNavToolbox(), "after_start", (window.innerWidth - sheetWidth) / 2, 0);
|
.openPopup(gNavToolbox, "after_start", (window.innerWidth - sheetWidth) / 2, 0);
|
||||||
#else
|
#else
|
||||||
window.openDialog(customizeURL,
|
window.openDialog(customizeURL,
|
||||||
"CustomizeToolbar",
|
"CustomizeToolbar",
|
||||||
"chrome,all,dependent",
|
"chrome,all,dependent",
|
||||||
getNavToolbox());
|
gNavToolbox);
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -3405,7 +3407,7 @@ var FullScreen =
|
|||||||
// The user may quit fullscreen during an animation
|
// The user may quit fullscreen during an animation
|
||||||
clearInterval(this._animationInterval);
|
clearInterval(this._animationInterval);
|
||||||
clearTimeout(this._animationTimeout);
|
clearTimeout(this._animationTimeout);
|
||||||
getNavToolbox().style.marginTop = "0px";
|
gNavToolbox.style.marginTop = "0px";
|
||||||
if (this._isChromeCollapsed)
|
if (this._isChromeCollapsed)
|
||||||
this.mouseoverToggle(true);
|
this.mouseoverToggle(true);
|
||||||
this._isAnimating = false;
|
this._isAnimating = false;
|
||||||
@ -3516,21 +3518,20 @@ var FullScreen =
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
var navToolbox = getNavToolbox();
|
|
||||||
var animateFrameAmount = 2;
|
var animateFrameAmount = 2;
|
||||||
function animateUpFrame() {
|
function animateUpFrame() {
|
||||||
animateFrameAmount *= 2;
|
animateFrameAmount *= 2;
|
||||||
if (animateFrameAmount >=
|
if (animateFrameAmount >=
|
||||||
(navToolbox.boxObject.height + gBrowser.mStrip.boxObject.height)) {
|
(gNavToolbox.boxObject.height + gBrowser.mStrip.boxObject.height)) {
|
||||||
// We've animated enough
|
// We've animated enough
|
||||||
clearInterval(FullScreen._animationInterval);
|
clearInterval(FullScreen._animationInterval);
|
||||||
navToolbox.style.marginTop = "0px";
|
gNavToolbox.style.marginTop = "0px";
|
||||||
FullScreen._isAnimating = false;
|
FullScreen._isAnimating = false;
|
||||||
FullScreen._shouldAnimate = false; // Just to make sure
|
FullScreen._shouldAnimate = false; // Just to make sure
|
||||||
FullScreen.mouseoverToggle(false);
|
FullScreen.mouseoverToggle(false);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
navToolbox.style.marginTop = (animateFrameAmount * -1) + "px";
|
gNavToolbox.style.marginTop = (animateFrameAmount * -1) + "px";
|
||||||
}
|
}
|
||||||
|
|
||||||
FullScreen._animationInterval = setInterval(animateUpFrame, 70);
|
FullScreen._animationInterval = setInterval(animateUpFrame, 70);
|
||||||
@ -3638,11 +3639,10 @@ var FullScreen =
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
var toolbox = getNavToolbox();
|
|
||||||
if (aShow)
|
if (aShow)
|
||||||
toolbox.removeAttribute("inFullscreen");
|
gNavToolbox.removeAttribute("inFullscreen");
|
||||||
else
|
else
|
||||||
toolbox.setAttribute("inFullscreen", true);
|
gNavToolbox.setAttribute("inFullscreen", true);
|
||||||
|
|
||||||
#ifndef XP_MACOSX
|
#ifndef XP_MACOSX
|
||||||
var controls = document.getElementsByAttribute("fullscreencontrol", "true");
|
var controls = document.getElementsByAttribute("fullscreencontrol", "true");
|
||||||
@ -3714,7 +3714,7 @@ nsBrowserStatusHandler.prototype =
|
|||||||
|
|
||||||
// Initialize the security button's state and tooltip text. Remember to reset
|
// Initialize the security button's state and tooltip text. Remember to reset
|
||||||
// _hostChanged, otherwise onSecurityChange will short circuit.
|
// _hostChanged, otherwise onSecurityChange will short circuit.
|
||||||
var securityUI = getBrowser().securityUI;
|
var securityUI = gBrowser.securityUI;
|
||||||
this._hostChanged = true;
|
this._hostChanged = true;
|
||||||
this.onSecurityChange(null, null, securityUI.state);
|
this.onSecurityChange(null, null, securityUI.state);
|
||||||
},
|
},
|
||||||
@ -3860,7 +3860,7 @@ nsBrowserStatusHandler.prototype =
|
|||||||
|
|
||||||
// For keyword URIs clear the user typed value since they will be changed into real URIs
|
// For keyword URIs clear the user typed value since they will be changed into real URIs
|
||||||
if (location.scheme == "keyword" && aWebProgress.DOMWindow == content)
|
if (location.scheme == "keyword" && aWebProgress.DOMWindow == content)
|
||||||
getBrowser().userTypedValue = null;
|
gBrowser.userTypedValue = null;
|
||||||
|
|
||||||
if (location.spec != "about:blank") {
|
if (location.spec != "about:blank") {
|
||||||
const kErrorBindingAborted = 0x804B0002;
|
const kErrorBindingAborted = 0x804B0002;
|
||||||
@ -3937,7 +3937,7 @@ nsBrowserStatusHandler.prototype =
|
|||||||
// <a href="#" onclick="return install();">Install Foo</a>
|
// <a href="#" onclick="return install();">Install Foo</a>
|
||||||
//
|
//
|
||||||
// - which fires a onLocationChange message to uri + '#'...
|
// - which fires a onLocationChange message to uri + '#'...
|
||||||
var selectedBrowser = getBrowser().selectedBrowser;
|
var selectedBrowser = gBrowser.selectedBrowser;
|
||||||
if (selectedBrowser.lastURI) {
|
if (selectedBrowser.lastURI) {
|
||||||
var oldSpec = selectedBrowser.lastURI.spec;
|
var oldSpec = selectedBrowser.lastURI.spec;
|
||||||
var oldIndexOfHash = oldSpec.indexOf("#");
|
var oldIndexOfHash = oldSpec.indexOf("#");
|
||||||
@ -3969,7 +3969,7 @@ nsBrowserStatusHandler.prototype =
|
|||||||
// Update urlbar only if a new page was loaded on the primary content area
|
// Update urlbar only if a new page was loaded on the primary content area
|
||||||
// Do not update urlbar if there was a subframe navigation
|
// Do not update urlbar if there was a subframe navigation
|
||||||
|
|
||||||
var browser = getBrowser().selectedBrowser;
|
var browser = gBrowser.selectedBrowser;
|
||||||
if (aWebProgress.DOMWindow == content) {
|
if (aWebProgress.DOMWindow == content) {
|
||||||
|
|
||||||
if ((location == "about:blank" && !content.opener) ||
|
if ((location == "about:blank" && !content.opener) ||
|
||||||
@ -4271,10 +4271,6 @@ nsBrowserAccess.prototype =
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!gPrefService)
|
|
||||||
gPrefService = Components.classes["@mozilla.org/preferences-service;1"]
|
|
||||||
.getService(Components.interfaces.nsIPrefBranch2);
|
|
||||||
|
|
||||||
var loadflags = isExternal ?
|
var loadflags = isExternal ?
|
||||||
Ci.nsIWebNavigation.LOAD_FLAGS_FROM_EXTERNAL :
|
Ci.nsIWebNavigation.LOAD_FLAGS_FROM_EXTERNAL :
|
||||||
Ci.nsIWebNavigation.LOAD_FLAGS_NONE;
|
Ci.nsIWebNavigation.LOAD_FLAGS_NONE;
|
||||||
@ -4431,9 +4427,8 @@ function onViewToolbarsPopupShowing(aEvent)
|
|||||||
|
|
||||||
var firstMenuItem = popup.firstChild;
|
var firstMenuItem = popup.firstChild;
|
||||||
|
|
||||||
var toolbox = getNavToolbox();
|
for (i = 0; i < gNavToolbox.childNodes.length; ++i) {
|
||||||
for (i = 0; i < toolbox.childNodes.length; ++i) {
|
var toolbar = gNavToolbox.childNodes[i];
|
||||||
var toolbar = toolbox.childNodes[i];
|
|
||||||
var toolbarName = toolbar.getAttribute("toolbarname");
|
var toolbarName = toolbar.getAttribute("toolbarname");
|
||||||
var type = toolbar.getAttribute("type");
|
var type = toolbar.getAttribute("type");
|
||||||
if (toolbarName && type != "menubar") {
|
if (toolbarName && type != "menubar") {
|
||||||
@ -4453,9 +4448,8 @@ function onViewToolbarsPopupShowing(aEvent)
|
|||||||
|
|
||||||
function onViewToolbarCommand(aEvent)
|
function onViewToolbarCommand(aEvent)
|
||||||
{
|
{
|
||||||
var toolbox = getNavToolbox();
|
|
||||||
var index = aEvent.originalTarget.getAttribute("toolbarindex");
|
var index = aEvent.originalTarget.getAttribute("toolbarindex");
|
||||||
var toolbar = toolbox.childNodes[index];
|
var toolbar = gNavToolbox.childNodes[index];
|
||||||
|
|
||||||
toolbar.collapsed = aEvent.originalTarget.getAttribute("checked") != "true";
|
toolbar.collapsed = aEvent.originalTarget.getAttribute("checked") != "true";
|
||||||
document.persist(toolbar.id, "collapsed");
|
document.persist(toolbar.id, "collapsed");
|
||||||
@ -4960,20 +4954,6 @@ var contentAreaDNDObserver = {
|
|||||||
|
|
||||||
};
|
};
|
||||||
|
|
||||||
function getBrowser()
|
|
||||||
{
|
|
||||||
if (!gBrowser)
|
|
||||||
gBrowser = document.getElementById("content");
|
|
||||||
return gBrowser;
|
|
||||||
}
|
|
||||||
|
|
||||||
function getNavToolbox()
|
|
||||||
{
|
|
||||||
if (!gNavToolbox)
|
|
||||||
gNavToolbox = document.getElementById("navigator-toolbox");
|
|
||||||
return gNavToolbox;
|
|
||||||
}
|
|
||||||
|
|
||||||
function MultiplexHandler(event)
|
function MultiplexHandler(event)
|
||||||
{ try {
|
{ try {
|
||||||
var node = event.target;
|
var node = event.target;
|
||||||
@ -5030,8 +5010,7 @@ function SetForcedCharset(charset)
|
|||||||
|
|
||||||
function BrowserSetForcedCharacterSet(aCharset)
|
function BrowserSetForcedCharacterSet(aCharset)
|
||||||
{
|
{
|
||||||
var docCharset = getBrowser().docShell.QueryInterface(
|
var docCharset = gBrowser.docShell.QueryInterface(Ci.nsIDocCharset);
|
||||||
Components.interfaces.nsIDocCharset);
|
|
||||||
docCharset.charset = aCharset;
|
docCharset.charset = aCharset;
|
||||||
// Save the forced character-set
|
// Save the forced character-set
|
||||||
PlacesUtils.history.setCharsetForURI(getWebNavigation().currentURI, aCharset);
|
PlacesUtils.history.setCharsetForURI(getWebNavigation().currentURI, aCharset);
|
||||||
@ -5040,7 +5019,7 @@ function BrowserSetForcedCharacterSet(aCharset)
|
|||||||
|
|
||||||
function BrowserSetForcedDetector(doReload)
|
function BrowserSetForcedDetector(doReload)
|
||||||
{
|
{
|
||||||
getBrowser().documentCharsetInfo.forcedDetector = true;
|
gBrowser.documentCharsetInfo.forcedDetector = true;
|
||||||
if (doReload)
|
if (doReload)
|
||||||
BrowserReloadWithFlags(nsIWebNavigation.LOAD_FLAGS_CHARSET_CHANGE);
|
BrowserReloadWithFlags(nsIWebNavigation.LOAD_FLAGS_CHARSET_CHANGE);
|
||||||
}
|
}
|
||||||
@ -5406,7 +5385,7 @@ var OfflineApps = {
|
|||||||
return gBrowser.mCurrentBrowser;
|
return gBrowser.mCurrentBrowser;
|
||||||
}
|
}
|
||||||
|
|
||||||
var browsers = getBrowser().browsers;
|
var browsers = gBrowser.browsers;
|
||||||
for (var i = 0; i < browsers.length; ++i) {
|
for (var i = 0; i < browsers.length; ++i) {
|
||||||
uri = this._getManifestURI(browsers[i].contentWindow);
|
uri = this._getManifestURI(browsers[i].contentWindow);
|
||||||
if (uri && uri.equals(aCacheUpdate.manifestURI)) {
|
if (uri && uri.equals(aCacheUpdate.manifestURI)) {
|
||||||
@ -5615,13 +5594,12 @@ var OfflineApps = {
|
|||||||
|
|
||||||
function WindowIsClosing()
|
function WindowIsClosing()
|
||||||
{
|
{
|
||||||
var browser = getBrowser();
|
var cn = gBrowser.tabContainer.childNodes;
|
||||||
var cn = browser.tabContainer.childNodes;
|
|
||||||
var numtabs = cn.length;
|
var numtabs = cn.length;
|
||||||
var reallyClose = true;
|
var reallyClose = true;
|
||||||
|
|
||||||
for (var i = 0; reallyClose && i < numtabs; ++i) {
|
for (var i = 0; reallyClose && i < numtabs; ++i) {
|
||||||
var ds = browser.getBrowserForTab(cn[i]).docShell;
|
var ds = gBrowser.getBrowserForTab(cn[i]).docShell;
|
||||||
|
|
||||||
if (ds.contentViewer && !ds.contentViewer.permitUnload())
|
if (ds.contentViewer && !ds.contentViewer.permitUnload())
|
||||||
reallyClose = false;
|
reallyClose = false;
|
||||||
@ -5635,7 +5613,7 @@ function WindowIsClosing()
|
|||||||
// up another dialog so we don't need to.)
|
// up another dialog so we don't need to.)
|
||||||
return closeWindow(false,
|
return closeWindow(false,
|
||||||
function () {
|
function () {
|
||||||
return browser.warnAboutClosingTabs(true);
|
return gBrowser.warnAboutClosingTabs(true);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -5804,7 +5782,6 @@ function getPluginInfo(pluginElement)
|
|||||||
}
|
}
|
||||||
|
|
||||||
missingPluginInstaller.prototype.installSinglePlugin = function(aEvent){
|
missingPluginInstaller.prototype.installSinglePlugin = function(aEvent){
|
||||||
var tabbrowser = getBrowser();
|
|
||||||
var missingPluginsArray = {};
|
var missingPluginsArray = {};
|
||||||
|
|
||||||
var pluginInfo = getPluginInfo(aEvent.target);
|
var pluginInfo = getPluginInfo(aEvent.target);
|
||||||
@ -5813,7 +5790,7 @@ missingPluginInstaller.prototype.installSinglePlugin = function(aEvent){
|
|||||||
if (missingPluginsArray) {
|
if (missingPluginsArray) {
|
||||||
window.openDialog("chrome://mozapps/content/plugins/pluginInstallerWizard.xul",
|
window.openDialog("chrome://mozapps/content/plugins/pluginInstallerWizard.xul",
|
||||||
"PFSWindow", "chrome,centerscreen,resizable=yes",
|
"PFSWindow", "chrome,centerscreen,resizable=yes",
|
||||||
{plugins: missingPluginsArray, browser: tabbrowser.selectedBrowser});
|
{plugins: missingPluginsArray, browser: gBrowser.selectedBrowser});
|
||||||
}
|
}
|
||||||
|
|
||||||
aEvent.preventDefault();
|
aEvent.preventDefault();
|
||||||
@ -5842,18 +5819,17 @@ missingPluginInstaller.prototype.newMissingPlugin = function(aEvent){
|
|||||||
return;
|
return;
|
||||||
} catch (ex) {} // if the pref is missing, treat it as false, which shows the infobar
|
} catch (ex) {} // if the pref is missing, treat it as false, which shows the infobar
|
||||||
|
|
||||||
var tabbrowser = getBrowser();
|
const browsers = gBrowser.mPanelContainer.childNodes;
|
||||||
const browsers = tabbrowser.mPanelContainer.childNodes;
|
|
||||||
|
|
||||||
var contentWindow = aEvent.target.ownerDocument.defaultView.top;
|
var contentWindow = aEvent.target.ownerDocument.defaultView.top;
|
||||||
|
|
||||||
var i = 0;
|
var i = 0;
|
||||||
for (; i < browsers.length; i++) {
|
for (; i < browsers.length; i++) {
|
||||||
if (tabbrowser.getBrowserAtIndex(i).contentWindow == contentWindow)
|
if (gBrowser.getBrowserAtIndex(i).contentWindow == contentWindow)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
var browser = tabbrowser.getBrowserAtIndex(i);
|
var browser = gBrowser.getBrowserAtIndex(i);
|
||||||
if (!browser.missingPlugins)
|
if (!browser.missingPlugins)
|
||||||
browser.missingPlugins = {};
|
browser.missingPlugins = {};
|
||||||
|
|
||||||
@ -5935,12 +5911,11 @@ function blocklistInfo()
|
|||||||
function pluginsMissing()
|
function pluginsMissing()
|
||||||
{
|
{
|
||||||
// get the urls of missing plugins
|
// get the urls of missing plugins
|
||||||
var tabbrowser = getBrowser();
|
var missingPluginsArray = gBrowser.selectedBrowser.missingPlugins;
|
||||||
var missingPluginsArray = tabbrowser.selectedBrowser.missingPlugins;
|
|
||||||
if (missingPluginsArray) {
|
if (missingPluginsArray) {
|
||||||
window.openDialog("chrome://mozapps/content/plugins/pluginInstallerWizard.xul",
|
window.openDialog("chrome://mozapps/content/plugins/pluginInstallerWizard.xul",
|
||||||
"PFSWindow", "chrome,centerscreen,resizable=yes",
|
"PFSWindow", "chrome,centerscreen,resizable=yes",
|
||||||
{plugins: missingPluginsArray, browser: tabbrowser.selectedBrowser});
|
{plugins: missingPluginsArray, browser: gBrowser.selectedBrowser});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -6223,7 +6198,7 @@ function undoCloseMiddleClick(aEvent) {
|
|||||||
return;
|
return;
|
||||||
|
|
||||||
undoCloseTab(aEvent.originalTarget.value);
|
undoCloseTab(aEvent.originalTarget.value);
|
||||||
getBrowser().moveTabToEnd();
|
gBrowser.moveTabToEnd();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -6233,15 +6208,14 @@ function undoCloseMiddleClick(aEvent) {
|
|||||||
*/
|
*/
|
||||||
function undoCloseTab(aIndex) {
|
function undoCloseTab(aIndex) {
|
||||||
// wallpaper patch to prevent an unnecessary blank tab (bug 343895)
|
// wallpaper patch to prevent an unnecessary blank tab (bug 343895)
|
||||||
var tabbrowser = getBrowser();
|
|
||||||
var blankTabToRemove = null;
|
var blankTabToRemove = null;
|
||||||
if (tabbrowser.tabContainer.childNodes.length == 1 &&
|
if (gBrowser.tabContainer.childNodes.length == 1 &&
|
||||||
!gPrefService.getBoolPref("browser.tabs.autoHide") &&
|
!gPrefService.getBoolPref("browser.tabs.autoHide") &&
|
||||||
tabbrowser.selectedBrowser.sessionHistory.count < 2 &&
|
gBrowser.selectedBrowser.sessionHistory.count < 2 &&
|
||||||
tabbrowser.selectedBrowser.currentURI.spec == "about:blank" &&
|
gBrowser.selectedBrowser.currentURI.spec == "about:blank" &&
|
||||||
!tabbrowser.selectedBrowser.contentDocument.body.hasChildNodes() &&
|
!gBrowser.selectedBrowser.contentDocument.body.hasChildNodes() &&
|
||||||
!tabbrowser.selectedTab.hasAttribute("busy"))
|
!gBrowser.selectedTab.hasAttribute("busy"))
|
||||||
blankTabToRemove = tabbrowser.selectedTab;
|
blankTabToRemove = gBrowser.selectedTab;
|
||||||
|
|
||||||
var ss = Cc["@mozilla.org/browser/sessionstore;1"].
|
var ss = Cc["@mozilla.org/browser/sessionstore;1"].
|
||||||
getService(Ci.nsISessionStore);
|
getService(Ci.nsISessionStore);
|
||||||
@ -6250,7 +6224,7 @@ function undoCloseTab(aIndex) {
|
|||||||
ss.undoCloseTab(window, aIndex || 0);
|
ss.undoCloseTab(window, aIndex || 0);
|
||||||
|
|
||||||
if (blankTabToRemove)
|
if (blankTabToRemove)
|
||||||
tabbrowser.removeTab(blankTabToRemove);
|
gBrowser.removeTab(blankTabToRemove);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -6762,3 +6736,7 @@ let DownloadMonitorPanel = {
|
|||||||
|
|
||||||
QueryInterface: XPCOMUtils.generateQI([Ci.nsIDownloadProgressListener]),
|
QueryInterface: XPCOMUtils.generateQI([Ci.nsIDownloadProgressListener]),
|
||||||
};
|
};
|
||||||
|
|
||||||
|
/* DEPRECATED */
|
||||||
|
function getBrowser() gBrowser;
|
||||||
|
function getNavToolbox() gNavToolbox;
|
||||||
|
@ -104,10 +104,14 @@
|
|||||||
<!-- for url bar autocomplete -->
|
<!-- for url bar autocomplete -->
|
||||||
<panel type="autocomplete-richlistbox" chromedir="&locale.dir;" id="PopupAutoCompleteRichResult" noautofocus="true" hidden="true"/>
|
<panel type="autocomplete-richlistbox" chromedir="&locale.dir;" id="PopupAutoCompleteRichResult" noautofocus="true" hidden="true"/>
|
||||||
|
|
||||||
|
<!-- XXX panel element that has one or more text fields should not be
|
||||||
|
top-most panel, for IME users. See bug 433340 comment 100. -->
|
||||||
<panel id="editBookmarkPanel"
|
<panel id="editBookmarkPanel"
|
||||||
orient="vertical"
|
orient="vertical"
|
||||||
ignorekeys="true"
|
ignorekeys="true"
|
||||||
hidden="true"
|
hidden="true"
|
||||||
|
noautohide="true"
|
||||||
|
onpopupshowing="this.removeAttribute('noautohide');"
|
||||||
onpopupshown="StarUI.panelShown(event);"
|
onpopupshown="StarUI.panelShown(event);"
|
||||||
aria-labelledby="editBookmarkPanelTitle">
|
aria-labelledby="editBookmarkPanelTitle">
|
||||||
<hbox flex="1" align="top">
|
<hbox flex="1" align="top">
|
||||||
|
@ -1189,6 +1189,8 @@ nsContextMenu.prototype = {
|
|||||||
[engineName,
|
[engineName,
|
||||||
selectedText]);
|
selectedText]);
|
||||||
document.getElementById("context-searchselect").label = menuLabel;
|
document.getElementById("context-searchselect").label = menuLabel;
|
||||||
|
document.getElementById("context-searchselect").accessKey =
|
||||||
|
gNavigatorBundle.getString("contextMenuSearchText.accesskey");
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
},
|
},
|
||||||
|
@ -70,11 +70,11 @@
|
|||||||
<script type="application/x-javascript" src="chrome://browser/content/pageinfo/feeds.js"/>
|
<script type="application/x-javascript" src="chrome://browser/content/pageinfo/feeds.js"/>
|
||||||
<script type="application/x-javascript" src="chrome://browser/content/pageinfo/permissions.js"/>
|
<script type="application/x-javascript" src="chrome://browser/content/pageinfo/permissions.js"/>
|
||||||
<script type="application/x-javascript" src="chrome://browser/content/pageinfo/security.js"/>
|
<script type="application/x-javascript" src="chrome://browser/content/pageinfo/security.js"/>
|
||||||
<script type="application/x-javascript" src="chrome://global/content/strres.js"/>
|
|
||||||
<script type="application/x-javascript" src="chrome://browser/content/utilityOverlay.js"/>
|
<script type="application/x-javascript" src="chrome://browser/content/utilityOverlay.js"/>
|
||||||
|
|
||||||
<stringbundleset id="pageinfobundleset">
|
<stringbundleset id="pageinfobundleset">
|
||||||
<stringbundle id="pageinfobundle" src="chrome://browser/locale/pageInfo.properties"/>
|
<stringbundle id="pageinfobundle" src="chrome://browser/locale/pageInfo.properties"/>
|
||||||
|
<stringbundle id="pkiBundle" src="chrome://pippki/locale/pippki.properties"/>
|
||||||
</stringbundleset>
|
</stringbundleset>
|
||||||
|
|
||||||
<commandset id="pageInfoCommandSet">
|
<commandset id="pageInfoCommandSet">
|
||||||
|
@ -186,9 +186,6 @@ var security = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
function securityOnLoad() {
|
function securityOnLoad() {
|
||||||
var bundle = srGetStrBundle("chrome://pippki/locale/pippki.properties");
|
|
||||||
var pageInfoBundle = document.getElementById("pageinfobundle");
|
|
||||||
|
|
||||||
var info = security._getSecurityInfo();
|
var info = security._getSecurityInfo();
|
||||||
if (!info) {
|
if (!info) {
|
||||||
document.getElementById("securityTab").hidden = true;
|
document.getElementById("securityTab").hidden = true;
|
||||||
@ -200,6 +197,8 @@ function securityOnLoad() {
|
|||||||
document.getElementById("securityBox").collapsed = false;
|
document.getElementById("securityBox").collapsed = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
const pageInfoBundle = document.getElementById("pageinfobundle");
|
||||||
|
|
||||||
/* Set Identity section text */
|
/* Set Identity section text */
|
||||||
setText("security-identity-domain-value", info.hostName);
|
setText("security-identity-domain-value", info.hostName);
|
||||||
|
|
||||||
@ -273,35 +272,36 @@ function securityOnLoad() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Set the Technical Detail section messages */
|
/* Set the Technical Detail section messages */
|
||||||
|
const pkiBundle = document.getElementById("pkiBundle");
|
||||||
var hdr;
|
var hdr;
|
||||||
var msg1;
|
var msg1;
|
||||||
var msg2;
|
var msg2;
|
||||||
|
|
||||||
if (info.isBroken) {
|
if (info.isBroken) {
|
||||||
hdr = bundle.GetStringFromName("pageInfo_MixedContent");
|
hdr = pkiBundle.getString("pageInfo_MixedContent");
|
||||||
msg1 = bundle.GetStringFromName("pageInfo_Privacy_Mixed1");
|
msg1 = pkiBundle.getString("pageInfo_Privacy_Mixed1");
|
||||||
msg2 = bundle.GetStringFromName("pageInfo_Privacy_None2");
|
msg2 = pkiBundle.getString("pageInfo_Privacy_None2");
|
||||||
}
|
}
|
||||||
else if (info.encryptionStrength >= 90) {
|
else if (info.encryptionStrength >= 90) {
|
||||||
hdr = bundle.formatStringFromName("pageInfo_StrongEncryption",
|
hdr = pkiBundle.getFormattedString("pageInfo_StrongEncryption",
|
||||||
[ info.encryptionAlgorithm, info.encryptionStrength + "" ], 2);
|
[info.encryptionAlgorithm, info.encryptionStrength + ""]);
|
||||||
msg1 = bundle.GetStringFromName("pageInfo_Privacy_Strong1");
|
msg1 = pkiBundle.getString("pageInfo_Privacy_Strong1");
|
||||||
msg2 = bundle.GetStringFromName("pageInfo_Privacy_Strong2");
|
msg2 = pkiBundle.getString("pageInfo_Privacy_Strong2");
|
||||||
security._cert = info.cert;
|
security._cert = info.cert;
|
||||||
}
|
}
|
||||||
else if (info.encryptionStrength > 0) {
|
else if (info.encryptionStrength > 0) {
|
||||||
hdr = bundle.formatStringFromName("pageInfo_WeakEncryption",
|
hdr = pkiBundle.getFormattedString("pageInfo_WeakEncryption",
|
||||||
[ info.encryptionAlgorithm, info.encryptionStrength + "" ], 2);
|
[info.encryptionAlgorithm, info.encryptionStrength + ""]);
|
||||||
msg1 = bundle.formatStringFromName("pageInfo_Privacy_Weak1", [ info.hostName ], 1);
|
msg1 = pkiBundle.getFormattedString("pageInfo_Privacy_Weak1", [info.hostName]);
|
||||||
msg2 = bundle.GetStringFromName("pageInfo_Privacy_Weak2");
|
msg2 = pkiBundle.getString("pageInfo_Privacy_Weak2");
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
hdr = bundle.GetStringFromName("pageInfo_NoEncryption");
|
hdr = pkiBundle.getString("pageInfo_NoEncryption");
|
||||||
if (info.hostName != null)
|
if (info.hostName != null)
|
||||||
msg1 = bundle.formatStringFromName("pageInfo_Privacy_None1", [ info.hostName ], 1);
|
msg1 = pkiBundle.getFormattedString("pageInfo_Privacy_None1", [info.hostName]);
|
||||||
else
|
else
|
||||||
msg1 = bundle.GetStringFromName("pageInfo_Privacy_None3");
|
msg1 = pkiBundle.getString("pageInfo_Privacy_None3");
|
||||||
msg2 = bundle.GetStringFromName("pageInfo_Privacy_None2");
|
msg2 = pkiBundle.getString("pageInfo_Privacy_None2");
|
||||||
}
|
}
|
||||||
setText("security-technical-shortform", hdr);
|
setText("security-technical-shortform", hdr);
|
||||||
setText("security-technical-longform1", msg1);
|
setText("security-technical-longform1", msg1);
|
||||||
|
@ -278,7 +278,6 @@
|
|||||||
mTab: aTab,
|
mTab: aTab,
|
||||||
mBrowser: aBrowser,
|
mBrowser: aBrowser,
|
||||||
mBlank: aStartsBlank,
|
mBlank: aStartsBlank,
|
||||||
mLastURI: null,
|
|
||||||
|
|
||||||
// cache flags for correct status bar update after tab switching
|
// cache flags for correct status bar update after tab switching
|
||||||
mStateFlags: 0,
|
mStateFlags: 0,
|
||||||
@ -1389,6 +1388,18 @@
|
|||||||
|
|
||||||
<method name="removeTab">
|
<method name="removeTab">
|
||||||
<parameter name="aTab"/>
|
<parameter name="aTab"/>
|
||||||
|
<body>
|
||||||
|
<![CDATA[
|
||||||
|
this._endRemoveTab(this._beginRemoveTab(aTab, true));
|
||||||
|
]]>
|
||||||
|
</body>
|
||||||
|
</method>
|
||||||
|
|
||||||
|
<!-- Returns the tab being removed. This might not be the same as aTab,
|
||||||
|
in cases when aTab is not actually a tab -->
|
||||||
|
<method name="_beginRemoveTab">
|
||||||
|
<parameter name="aTab"/>
|
||||||
|
<parameter name="aFireBeforeUnload"/>
|
||||||
<body>
|
<body>
|
||||||
<![CDATA[
|
<![CDATA[
|
||||||
this._browsers = null; // invalidate cache
|
this._browsers = null; // invalidate cache
|
||||||
@ -1403,9 +1414,11 @@
|
|||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (aFireBeforeUnload) {
|
||||||
var ds = this.getBrowserForTab(aTab).docShell;
|
var ds = this.getBrowserForTab(aTab).docShell;
|
||||||
if (ds.contentViewer && !ds.contentViewer.permitUnload())
|
if (ds.contentViewer && !ds.contentViewer.permitUnload())
|
||||||
return;
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
// see notes in addTab
|
// see notes in addTab
|
||||||
var _delayedUpdate = function(aTabContainer) {
|
var _delayedUpdate = function(aTabContainer) {
|
||||||
@ -1435,15 +1448,7 @@
|
|||||||
evt.initEvent("TabClose", true, false);
|
evt.initEvent("TabClose", true, false);
|
||||||
aTab.dispatchEvent(evt);
|
aTab.dispatchEvent(evt);
|
||||||
|
|
||||||
var index = -1;
|
var index = aTab._tPos;
|
||||||
if (this.mCurrentTab == aTab)
|
|
||||||
index = this.mTabContainer.selectedIndex;
|
|
||||||
else {
|
|
||||||
// Find and locate the tab in our list.
|
|
||||||
for (var i = 0; i < l; i++)
|
|
||||||
if (this.mTabContainer.childNodes[i] == aTab)
|
|
||||||
index = i;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Remove the tab's filter and progress listener.
|
// Remove the tab's filter and progress listener.
|
||||||
const filter = this.mTabFilters[index];
|
const filter = this.mTabFilters[index];
|
||||||
@ -1459,22 +1464,34 @@
|
|||||||
// We are no longer the primary content area.
|
// We are no longer the primary content area.
|
||||||
oldBrowser.setAttribute("type", "content-targetable");
|
oldBrowser.setAttribute("type", "content-targetable");
|
||||||
|
|
||||||
// Get the index of the tab we're removing before unselecting it
|
|
||||||
var currentIndex = this.mTabContainer.selectedIndex;
|
|
||||||
|
|
||||||
var oldTab = aTab;
|
|
||||||
|
|
||||||
// clean up the before/afterselected attributes before removing the tab
|
|
||||||
oldTab._selected = false;
|
|
||||||
|
|
||||||
// Remove this tab as the owner of any other tabs, since it's going away.
|
// Remove this tab as the owner of any other tabs, since it's going away.
|
||||||
for (i = 0; i < this.mTabContainer.childNodes.length; ++i) {
|
for (var i = 0; i < this.mTabs.length; ++i) {
|
||||||
var tab = this.mTabContainer.childNodes[i];
|
var tab = this.mTabContainer.childNodes[i];
|
||||||
if ("owner" in tab && tab.owner == oldTab)
|
if ("owner" in tab && tab.owner == aTab)
|
||||||
// |tab| is a child of the tab we're removing, make it an orphan
|
// |tab| is a child of the tab we're removing, make it an orphan
|
||||||
tab.owner = null;
|
tab.owner = null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
return aTab;
|
||||||
|
]]>
|
||||||
|
</body>
|
||||||
|
</method>
|
||||||
|
|
||||||
|
<method name="_endRemoveTab">
|
||||||
|
<parameter name="aTab"/>
|
||||||
|
<body>
|
||||||
|
<![CDATA[
|
||||||
|
var browser = this.getBrowserForTab(aTab);
|
||||||
|
var length = this.mTabs.length;
|
||||||
|
|
||||||
|
// Get the index of the tab we're removing before unselecting it
|
||||||
|
var currentIndex = this.mTabContainer.selectedIndex;
|
||||||
|
var index = aTab._tPos;
|
||||||
|
|
||||||
|
// clean up the before/afterselected attributes before removing the
|
||||||
|
// tab. But make sure this happens after we grab currentIndex.
|
||||||
|
aTab._selected = false;
|
||||||
|
|
||||||
// Because of the way XBL works (fields just set JS
|
// Because of the way XBL works (fields just set JS
|
||||||
// properties on the element) and the code we have in place
|
// properties on the element) and the code we have in place
|
||||||
// to preserve the JS objects for any elements that have
|
// to preserve the JS objects for any elements that have
|
||||||
@ -1485,16 +1502,18 @@
|
|||||||
// XBL implementation of nsIObserver still works. But
|
// XBL implementation of nsIObserver still works. But
|
||||||
// clearing focusedWindow happens below because it gets
|
// clearing focusedWindow happens below because it gets
|
||||||
// reset by updateCurrentBrowser.
|
// reset by updateCurrentBrowser.
|
||||||
oldBrowser.destroy();
|
browser.destroy();
|
||||||
|
|
||||||
if (oldBrowser == this.mCurrentBrowser)
|
if (browser == this.mCurrentBrowser)
|
||||||
this.mCurrentBrowser = null;
|
this.mCurrentBrowser = null;
|
||||||
|
|
||||||
// Remove the tab
|
// Remove the tab
|
||||||
this.mTabContainer.removeChild(oldTab);
|
this.mTabContainer.removeChild(aTab);
|
||||||
|
// Update our length
|
||||||
|
--length;
|
||||||
// invalidate cache, because mTabContainer is about to change
|
// invalidate cache, because mTabContainer is about to change
|
||||||
this._browsers = null;
|
this._browsers = null;
|
||||||
this.mPanelContainer.removeChild(oldBrowser.parentNode);
|
this.mPanelContainer.removeChild(browser.parentNode);
|
||||||
|
|
||||||
try {
|
try {
|
||||||
// if we're at the right side (and not the logical end,
|
// if we're at the right side (and not the logical end,
|
||||||
@ -1523,24 +1542,24 @@
|
|||||||
else if (currentIndex < index)
|
else if (currentIndex < index)
|
||||||
newIndex = currentIndex;
|
newIndex = currentIndex;
|
||||||
else {
|
else {
|
||||||
if ("owner" in oldTab && oldTab.owner &&
|
if ("owner" in aTab && aTab.owner &&
|
||||||
this.mPrefs.getBoolPref("browser.tabs.selectOwnerOnClose")) {
|
this.mPrefs.getBoolPref("browser.tabs.selectOwnerOnClose")) {
|
||||||
for (i = 0; i < this.mTabContainer.childNodes.length; ++i) {
|
for (var i = 0; i < length; ++i) {
|
||||||
tab = this.mTabContainer.childNodes[i];
|
tab = this.mTabContainer.childNodes[i];
|
||||||
if (tab == oldTab.owner) {
|
if (tab == aTab.owner) {
|
||||||
newIndex = i;
|
newIndex = i;
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (newIndex == -1)
|
if (newIndex == -1)
|
||||||
newIndex = (index == l - 1) ? index - 1 : index;
|
newIndex = (index == length) ? index - 1 : index;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Select the new tab
|
// Select the new tab
|
||||||
this.selectedTab = this.mTabContainer.childNodes[newIndex];
|
this.selectedTab = this.mTabs[newIndex];
|
||||||
|
|
||||||
for (i = oldTab._tPos; i < this.mTabContainer.childNodes.length; i++) {
|
for (i = aTab._tPos; i < length; i++) {
|
||||||
this.mTabContainer.childNodes[i]._tPos = i;
|
this.mTabContainer.childNodes[i]._tPos = i;
|
||||||
}
|
}
|
||||||
this.mTabBox.selectedPanel = this.getBrowserForTab(this.mCurrentTab).parentNode;
|
this.mTabBox.selectedPanel = this.getBrowserForTab(this.mCurrentTab).parentNode;
|
||||||
@ -1549,8 +1568,53 @@
|
|||||||
this.updateCurrentBrowser();
|
this.updateCurrentBrowser();
|
||||||
|
|
||||||
// see comment above destroy above
|
// see comment above destroy above
|
||||||
oldBrowser.focusedWindow = null;
|
browser.focusedWindow = null;
|
||||||
oldBrowser.focusedElement = null;
|
browser.focusedElement = null;
|
||||||
|
]]>
|
||||||
|
</body>
|
||||||
|
</method>
|
||||||
|
|
||||||
|
<method name="swapBrowsersAndCloseOther">
|
||||||
|
<parameter name="aOurTab"/>
|
||||||
|
<parameter name="aOtherTab"/>
|
||||||
|
<body>
|
||||||
|
<![CDATA[
|
||||||
|
var remoteBrowser =
|
||||||
|
aOtherTab.ownerDocument.defaultView.getBrowser();
|
||||||
|
var tabCount = remoteBrowser.mTabs.length;
|
||||||
|
|
||||||
|
// First, start teardown of the other browser. Make sure to not
|
||||||
|
// fire the beforeunload event in the process.
|
||||||
|
var tabToRemove = remoteBrowser._beginRemoveTab(aOtherTab, false);
|
||||||
|
|
||||||
|
// Unhook our progress listener
|
||||||
|
var ourIndex = aOurTab._tPos;
|
||||||
|
const filter = this.mTabFilters[ourIndex];
|
||||||
|
var tabListener = this.mTabListeners[ourIndex];
|
||||||
|
var ourBrowser = this.getBrowserForTab(aOurTab);
|
||||||
|
ourBrowser.webProgress.removeProgressListener(filter);
|
||||||
|
filter.removeProgressListener(tabListener);
|
||||||
|
var tabListenerBlank = tabListener.mBlank;
|
||||||
|
|
||||||
|
// Swap the docshells
|
||||||
|
ourBrowser.swapDocShells(remoteBrowser.getBrowserForTab(aOtherTab));
|
||||||
|
|
||||||
|
// Finish tearing down the tab that's going away.
|
||||||
|
remoteBrowser._endRemoveTab(tabToRemove);
|
||||||
|
|
||||||
|
// Restore the progress listener
|
||||||
|
tabListener = this.mTabProgressListener(aOurTab, ourBrowser,
|
||||||
|
tabListenerBlank);
|
||||||
|
this.mTabListeners[ourIndex] = tabListener;
|
||||||
|
filter.addProgressListener(tabListener,
|
||||||
|
Components.interfaces.nsIWebProgress.NOTIFY_ALL);
|
||||||
|
|
||||||
|
ourBrowser.webProgress.addProgressListener(filter,
|
||||||
|
Components.interfaces.nsIWebProgress.NOTIFY_ALL);
|
||||||
|
|
||||||
|
// close the other window if this was its last tab
|
||||||
|
if (tabCount == 1)
|
||||||
|
aOtherTab.ownerDocument.defaultView.close();
|
||||||
]]>
|
]]>
|
||||||
</body>
|
</body>
|
||||||
</method>
|
</method>
|
||||||
@ -1879,19 +1943,26 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (draggedTab) {
|
else if (draggedTab) {
|
||||||
// copy the dropped tab and remove it from the other window
|
// swap the dropped tab with a new one we create and then close
|
||||||
// (making it seem to have moved between windows)
|
// it in the other window (making it seem to have moved between
|
||||||
|
// windows)
|
||||||
newIndex = this.getNewIndex(aEvent);
|
newIndex = this.getNewIndex(aEvent);
|
||||||
newTab = this.duplicateTab(draggedTab);
|
newTab = this.addTab("about:blank");
|
||||||
this.moveTabTo(newTab, newIndex);
|
var newBrowser = this.getBrowserForTab(newTab);
|
||||||
this.selectedTab = newTab;
|
// Stop the about:blank load
|
||||||
|
newBrowser.stop();
|
||||||
|
// make sure it has a docshell
|
||||||
|
newBrowser.docShell;
|
||||||
|
|
||||||
var remoteBrowser = draggedTab.ownerDocument.defaultView.getBrowser();
|
this.moveTabTo(newTab, newIndex);
|
||||||
var tabCount = remoteBrowser.tabContainer.childNodes.length;
|
|
||||||
remoteBrowser.removeTab(draggedTab);
|
this.swapBrowsersAndCloseOther(newTab, draggedTab);
|
||||||
// close the other window if this was its last tab
|
|
||||||
if (tabCount == 1)
|
// We need to set selectedTab after we've done
|
||||||
draggedTab.ownerDocument.defaultView.close();
|
// swapBrowsersAndCloseOther, so that the updateCurrentBrowser
|
||||||
|
// it triggers will correctly update our URL bar.
|
||||||
|
this.selectedTab = newTab;
|
||||||
|
this.setTabTitle(newTab);
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
var url = transferUtils.retrieveURLFromData(aXferData.data, aXferData.flavour.contentType);
|
var url = transferUtils.retrieveURLFromData(aXferData.data, aXferData.flavour.contentType);
|
||||||
|
@ -59,6 +59,8 @@ _BROWSER_FILES = browser_bug321000.js \
|
|||||||
autodiscovery.html \
|
autodiscovery.html \
|
||||||
moz.png \
|
moz.png \
|
||||||
browser_getshortcutoruri.js \
|
browser_getshortcutoruri.js \
|
||||||
|
browser_page_style_menu.js \
|
||||||
|
page_style_sample.html \
|
||||||
$(NULL)
|
$(NULL)
|
||||||
|
|
||||||
ifneq (,$(filter mac cocoa,$(MOZ_WIDGET_TOOLKIT)))
|
ifneq (,$(filter mac cocoa,$(MOZ_WIDGET_TOOLKIT)))
|
||||||
|
@ -8,6 +8,7 @@ function test() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function delayedOpenUrl() {
|
function delayedOpenUrl() {
|
||||||
|
ok(true, "Ran delayedOpenUrl");
|
||||||
setTimeout(openPanelUrl, 100);
|
setTimeout(openPanelUrl, 100);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -26,6 +27,7 @@ function openPanelUrl(event) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
function delayedRunTest() {
|
function delayedRunTest() {
|
||||||
|
ok(true, "Ran delayedRunTest");
|
||||||
setTimeout(runTest, 100);
|
setTimeout(runTest, 100);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
66
browser/base/content/test/browser_page_style_menu.js
Normal file
66
browser/base/content/test/browser_page_style_menu.js
Normal file
@ -0,0 +1,66 @@
|
|||||||
|
function test() {
|
||||||
|
waitForExplicitFinish();
|
||||||
|
finish();
|
||||||
|
return;
|
||||||
|
|
||||||
|
var tab = gBrowser.addTab();
|
||||||
|
gBrowser.selectedTab = tab;
|
||||||
|
tab.linkedBrowser.addEventListener("load", checkPageStyleMenu, true);
|
||||||
|
content.location =
|
||||||
|
"chrome://mochikit/content/browser/browser/base/content/test/page_style_sample.html";
|
||||||
|
}
|
||||||
|
|
||||||
|
function checkPageStyleMenu() {
|
||||||
|
var menupopup = document.getElementById("pageStyleMenu")
|
||||||
|
.getElementsByTagName("menupopup")[0];
|
||||||
|
stylesheetFillPopup(menupopup);
|
||||||
|
|
||||||
|
var items = [];
|
||||||
|
var current = menupopup.getElementsByTagName("menuseparator")[0];
|
||||||
|
while (current.nextSibling) {
|
||||||
|
current = current.nextSibling;
|
||||||
|
items.push(current);
|
||||||
|
}
|
||||||
|
|
||||||
|
var validLinks = 0;
|
||||||
|
Array.forEach(content.document.getElementsByTagName("link"), function (link) {
|
||||||
|
var title = link.getAttribute("title");
|
||||||
|
var rel = link.getAttribute("rel");
|
||||||
|
var media = link.getAttribute("media");
|
||||||
|
var idstring = "link " + (title ? title : "without title and") +
|
||||||
|
" with rel=\"" + rel + "\"" +
|
||||||
|
(media ? " and media=\"" + media + "\"" : "");
|
||||||
|
|
||||||
|
var item = items.filter(function (item) item.label == title);
|
||||||
|
var found = item.length == 1;
|
||||||
|
var checked = found && (item[0].getAttribute("checked") == "true");
|
||||||
|
|
||||||
|
switch (link.getAttribute("data-state")) {
|
||||||
|
case "0":
|
||||||
|
ok(!found, idstring + " does not show up in page style menu");
|
||||||
|
break;
|
||||||
|
case "0-todo":
|
||||||
|
validLinks++;
|
||||||
|
todo(!found, idstring + " should not show up in page style menu");
|
||||||
|
ok(!checked, idstring + " is not selected");
|
||||||
|
break;
|
||||||
|
case "1":
|
||||||
|
validLinks++;
|
||||||
|
ok(found, idstring + " shows up in page style menu");
|
||||||
|
ok(!checked, idstring + " is not selected");
|
||||||
|
break;
|
||||||
|
case "2":
|
||||||
|
validLinks++;
|
||||||
|
ok(found, idstring + " shows up in page style menu");
|
||||||
|
ok(checked, idstring + " is selected");
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
throw "data-state attribute is missing or has invalid value";
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
is(validLinks, items.length, "all valid links found");
|
||||||
|
|
||||||
|
gBrowser.removeCurrentTab();
|
||||||
|
finish();
|
||||||
|
}
|
31
browser/base/content/test/page_style_sample.html
Normal file
31
browser/base/content/test/page_style_sample.html
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<title>Test for page style menu</title>
|
||||||
|
<!-- data-state values:
|
||||||
|
0: should not appear in the page style menu
|
||||||
|
0-todo: should not appear in the page style menu, but does
|
||||||
|
1: should appear in the page style menu
|
||||||
|
2: should appear in the page style menu as the selected stylesheet -->
|
||||||
|
<link data-state="1" href="404.css" title="1" rel="alternate stylesheet">
|
||||||
|
<link data-state="0" title="2" rel="alternate stylesheet">
|
||||||
|
<link data-state="0" href="404.css" rel="alternate stylesheet">
|
||||||
|
<link data-state="0" href="404.css" title="" rel="alternate stylesheet">
|
||||||
|
<link data-state="1" href="404.css" title="3" rel="stylesheet alternate">
|
||||||
|
<link data-state="1" href="404.css" title="4" rel=" alternate stylesheet ">
|
||||||
|
<link data-state="1" href="404.css" title="5" rel="alternate stylesheet">
|
||||||
|
<link data-state="2" href="404.css" title="6" rel="stylesheet">
|
||||||
|
<link data-state="1" href="404.css" title="7" rel="foo stylesheet">
|
||||||
|
<link data-state="0" href="404.css" title="8" rel="alternate">
|
||||||
|
<link data-state="1" href="404.css" title="9" rel="alternate STYLEsheet">
|
||||||
|
<link data-state="1" href="404.css" title="10" rel="alternate stylesheet" media="">
|
||||||
|
<link data-state="1" href="404.css" title="11" rel="alternate stylesheet" media="all">
|
||||||
|
<link data-state="1" href="404.css" title="12" rel="alternate stylesheet" media="ALL ">
|
||||||
|
<link data-state="1" href="404.css" title="13" rel="alternate stylesheet" media="screen">
|
||||||
|
<link data-state="1" href="404.css" title="14" rel="alternate stylesheet" media=" Screen">
|
||||||
|
<link data-state="1" href="404.css" title="15" rel="alternate stylesheet" media="screen foo">
|
||||||
|
<link data-state="1" href="404.css" title="16" rel="alternate stylesheet" media="all screen">
|
||||||
|
<link data-state="0-todo" href="404.css" title="17" rel="alternate stylesheet" media="allscreen">
|
||||||
|
<link data-state="0-todo" href="404.css" title="18" rel="alternate stylesheet" media="_all">
|
||||||
|
</head>
|
||||||
|
<body></body>
|
||||||
|
</html>
|
@ -42,7 +42,6 @@
|
|||||||
* for shared application glue for the Communicator suite of applications
|
* for shared application glue for the Communicator suite of applications
|
||||||
**/
|
**/
|
||||||
|
|
||||||
var goPrefWindow = 0;
|
|
||||||
var gBidiUI = false;
|
var gBidiUI = false;
|
||||||
|
|
||||||
function getBrowserURL()
|
function getBrowserURL()
|
||||||
|
@ -115,7 +115,6 @@ function load()
|
|||||||
null, null);
|
null, null);
|
||||||
}
|
}
|
||||||
|
|
||||||
gNavigatorBundle = document.getElementById("bundle_browser");
|
|
||||||
gLoadFired = true;
|
gLoadFired = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -15,6 +15,7 @@ browser.jar:
|
|||||||
content/browser/aboutDialog.css (content/aboutDialog.css)
|
content/browser/aboutDialog.css (content/aboutDialog.css)
|
||||||
* content/browser/aboutRobots.xhtml (content/aboutRobots.xhtml)
|
* content/browser/aboutRobots.xhtml (content/aboutRobots.xhtml)
|
||||||
content/browser/aboutRobots-icon.png (content/aboutRobots-icon.png)
|
content/browser/aboutRobots-icon.png (content/aboutRobots-icon.png)
|
||||||
|
content/browser/aboutRobots-icon-rtl.png (content/aboutRobots-icon-rtl.png)
|
||||||
content/browser/aboutRobots-widget-left.png (content/aboutRobots-widget-left.png)
|
content/browser/aboutRobots-widget-left.png (content/aboutRobots-widget-left.png)
|
||||||
content/browser/aboutRobots-widget-right.png (content/aboutRobots-widget-right.png)
|
content/browser/aboutRobots-widget-right.png (content/aboutRobots-widget-right.png)
|
||||||
* content/browser/browser.css (content/browser.css)
|
* content/browser/browser.css (content/browser.css)
|
||||||
|
@ -59,3 +59,14 @@ package:
|
|||||||
|
|
||||||
install::
|
install::
|
||||||
@$(MAKE) -C browser/installer install
|
@$(MAKE) -C browser/installer install
|
||||||
|
|
||||||
|
ifdef ENABLE_TESTS
|
||||||
|
# Implemented in testing/testsuite-targets.mk
|
||||||
|
mochitest-browser-chrome:
|
||||||
|
$(RUN_MOCHITEST) --browser-chrome
|
||||||
|
$(CHECK_TEST_ERROR)
|
||||||
|
|
||||||
|
mochitest:: mochitest-browser-chrome
|
||||||
|
|
||||||
|
.PHONY: mochitest-browser-chrome
|
||||||
|
endif
|
||||||
|
@ -63,8 +63,7 @@
|
|||||||
|
|
||||||
<hbox align="center">
|
<hbox align="center">
|
||||||
<label value="&search.label;" accesskey="&search.accesskey;" control="search-box"/>
|
<label value="&search.label;" accesskey="&search.accesskey;" control="search-box"/>
|
||||||
<textbox id="search-box" flex="1"
|
<textbox id="search-box" flex="1" type="search"
|
||||||
type="timed" timeout="500"
|
|
||||||
oncommand="searchBookmarks(this.value);"/>
|
oncommand="searchBookmarks(this.value);"/>
|
||||||
</hbox>
|
</hbox>
|
||||||
|
|
||||||
|
@ -86,7 +86,7 @@
|
|||||||
<hbox align="center">
|
<hbox align="center">
|
||||||
<label value="&find.label;" accesskey="&find.accesskey;"
|
<label value="&find.label;" accesskey="&find.accesskey;"
|
||||||
control="search-box"/>
|
control="search-box"/>
|
||||||
<textbox id="search-box" flex="1" type="timed" timeout="500"
|
<textbox id="search-box" flex="1" type="search"
|
||||||
oncommand="searchHistory(this.value);"/>
|
oncommand="searchHistory(this.value);"/>
|
||||||
<button id="viewButton" style="min-width:0px !important;" type="menu"
|
<button id="viewButton" style="min-width:0px !important;" type="menu"
|
||||||
label="&view.label;" accesskey="&view.accesskey;" selectedsort="day"
|
label="&view.label;" accesskey="&view.accesskey;" selectedsort="day"
|
||||||
|
@ -902,12 +902,12 @@
|
|||||||
<getter><![CDATA[
|
<getter><![CDATA[
|
||||||
// By default, the insertion point is at the top level, at the end.
|
// By default, the insertion point is at the top level, at the end.
|
||||||
var index = PlacesUtils.bookmarks.DEFAULT_INDEX;
|
var index = PlacesUtils.bookmarks.DEFAULT_INDEX;
|
||||||
var folderId = 0;
|
var container = null;
|
||||||
var orientation = Ci.nsITreeView.DROP_BEFORE;
|
var orientation = Ci.nsITreeView.DROP_BEFORE;
|
||||||
var isTag = false;
|
var isTag = false;
|
||||||
|
|
||||||
if (PlacesUtils.nodeIsFolder(this._resultNode)) {
|
if (PlacesUtils.nodeIsFolder(this._resultNode)) {
|
||||||
folderId = PlacesUtils.getConcreteItemId(this._resultNode);
|
container = this._resultNode;
|
||||||
isTag = PlacesUtils.nodeIsTagQuery(this._resultNode);
|
isTag = PlacesUtils.nodeIsTagQuery(this._resultNode);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -917,20 +917,37 @@
|
|||||||
if (!popupNode.node) {
|
if (!popupNode.node) {
|
||||||
// If a static menuitem is selected the insertion point
|
// If a static menuitem is selected the insertion point
|
||||||
// is inside the folder, at the end.
|
// is inside the folder, at the end.
|
||||||
folderId = PlacesUtils.getConcreteItemId(selectedNode);
|
container = selectedNode;
|
||||||
orientation = Ci.nsITreeView.DROP_ON;
|
orientation = Ci.nsITreeView.DROP_ON;
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
// In all other cases the insertion point is before that node.
|
// In all other cases the insertion point is before that node.
|
||||||
folderId = PlacesUtils.getConcreteItemId(selectedNode.parent);
|
container = selectedNode.parent;
|
||||||
index = PlacesUtils.getIndexOfNode(selectedNode);
|
index = PlacesUtils.getIndexOfNode(selectedNode);
|
||||||
isTag = PlacesUtils.nodeIsTagQuery(selectedNode.parent);
|
isTag = PlacesUtils.nodeIsTagQuery(selectedNode.parent);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return new InsertionPoint(folderId, index, orientation, isTag);
|
|
||||||
|
if (this._disallowInsertion(container))
|
||||||
|
return null;
|
||||||
|
|
||||||
|
return new InsertionPoint(PlacesUtils.getConcreteItemId(container),
|
||||||
|
index, orientation, isTag);
|
||||||
]]></getter>
|
]]></getter>
|
||||||
</property>
|
</property>
|
||||||
|
|
||||||
|
<method name="_disallowInsertion">
|
||||||
|
<parameter name="aContainer"/>
|
||||||
|
<body><![CDATA[
|
||||||
|
// allow dropping into Tag containers
|
||||||
|
if (PlacesUtils.nodeIsTagQuery(aContainer))
|
||||||
|
return false;
|
||||||
|
// Disallow insertion of items under readonly folders
|
||||||
|
return (!PlacesUtils.nodeIsFolder(aContainer) ||
|
||||||
|
PlacesUtils.nodeIsReadOnly(aContainer));
|
||||||
|
]]></body>
|
||||||
|
</method>
|
||||||
|
|
||||||
<!-- nsIPlacesView -->
|
<!-- nsIPlacesView -->
|
||||||
<method name="selectAll">
|
<method name="selectAll">
|
||||||
<body/>
|
<body/>
|
||||||
|
@ -853,6 +853,10 @@ var PlacesSearchBox = {
|
|||||||
//scopeBtn.label = PlacesOrganizer._places.selectedNode.title;
|
//scopeBtn.label = PlacesOrganizer._places.selectedNode.title;
|
||||||
break;
|
break;
|
||||||
case "bookmarks":
|
case "bookmarks":
|
||||||
|
// Make sure we're getting uri results.
|
||||||
|
// We do not yet support searching into grouped queries or into
|
||||||
|
// tag containers, so we must fall to the default case.
|
||||||
|
currentOptions.resultType = currentOptions.RESULT_TYPE_URI;
|
||||||
content.applyFilter(filterString,
|
content.applyFilter(filterString,
|
||||||
[PlacesUtils.bookmarksMenuFolderId,
|
[PlacesUtils.bookmarksMenuFolderId,
|
||||||
PlacesUtils.toolbarFolderId,
|
PlacesUtils.toolbarFolderId,
|
||||||
|
@ -385,7 +385,7 @@
|
|||||||
<getter><![CDATA[
|
<getter><![CDATA[
|
||||||
// By default, the insertion point is at the top level, at the end.
|
// By default, the insertion point is at the top level, at the end.
|
||||||
var index = PlacesUtils.bookmarks.DEFAULT_INDEX;
|
var index = PlacesUtils.bookmarks.DEFAULT_INDEX;
|
||||||
var folderId = PlacesUtils.getConcreteItemId(this._result.root);
|
var container = this._result.root;
|
||||||
var orientation = Ci.nsITreeView.DROP_BEFORE;
|
var orientation = Ci.nsITreeView.DROP_BEFORE;
|
||||||
var isTag = false;
|
var isTag = false;
|
||||||
|
|
||||||
@ -395,20 +395,37 @@
|
|||||||
if (!popupNode.node) {
|
if (!popupNode.node) {
|
||||||
// If a static menuitem is selected the insertion point
|
// If a static menuitem is selected the insertion point
|
||||||
// is inside the folder, at the end.
|
// is inside the folder, at the end.
|
||||||
folderId = PlacesUtils.getConcreteItemId(selectedNode);
|
container = selectedNode;
|
||||||
orientation = Ci.nsITreeView.DROP_ON;
|
orientation = Ci.nsITreeView.DROP_ON;
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
// In all other cases the insertion point is before that node.
|
// In all other cases the insertion point is before that node.
|
||||||
folderId = PlacesUtils.getConcreteItemId(selectedNode.parent);
|
container = selectedNode.parent;
|
||||||
index = PlacesUtils.getIndexOfNode(selectedNode);
|
index = PlacesUtils.getIndexOfNode(selectedNode);
|
||||||
isTag = PlacesUtils.nodeIsTagQuery(selectedNode.parent);
|
isTag = PlacesUtils.nodeIsTagQuery(selectedNode.parent);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return new InsertionPoint(folderId, index, orientation, isTag);
|
|
||||||
|
if (this._disallowInsertion(container))
|
||||||
|
return null;
|
||||||
|
|
||||||
|
return new InsertionPoint(PlacesUtils.getConcreteItemId(container),
|
||||||
|
index, orientation, isTag);
|
||||||
]]></getter>
|
]]></getter>
|
||||||
</property>
|
</property>
|
||||||
|
|
||||||
|
<method name="_disallowInsertion">
|
||||||
|
<parameter name="aContainer"/>
|
||||||
|
<body><![CDATA[
|
||||||
|
// allow dropping into Tag containers
|
||||||
|
if (PlacesUtils.nodeIsTagQuery(aContainer))
|
||||||
|
return false;
|
||||||
|
// Disallow insertion of items under readonly folders
|
||||||
|
return (!PlacesUtils.nodeIsFolder(aContainer) ||
|
||||||
|
PlacesUtils.nodeIsReadOnly(aContainer));
|
||||||
|
]]></body>
|
||||||
|
</method>
|
||||||
|
|
||||||
<!-- nsIPlacesView -->
|
<!-- nsIPlacesView -->
|
||||||
<method name="selectAll">
|
<method name="selectAll">
|
||||||
<body><![CDATA[
|
<body><![CDATA[
|
||||||
|
@ -939,6 +939,11 @@ PlacesTreeView.prototype = {
|
|||||||
if (!node.parent)
|
if (!node.parent)
|
||||||
return true;
|
return true;
|
||||||
|
|
||||||
|
// Flat-lists may ignore expandQueries and other query options when
|
||||||
|
// they are asked to open a container.
|
||||||
|
if (this._flatList)
|
||||||
|
return true;
|
||||||
|
|
||||||
// treat non-expandable childless queries as non-containers
|
// treat non-expandable childless queries as non-containers
|
||||||
if (PlacesUtils.nodeIsQuery(node)) {
|
if (PlacesUtils.nodeIsQuery(node)) {
|
||||||
var parent = node.parent;
|
var parent = node.parent;
|
||||||
|
@ -897,14 +897,26 @@ placesSortFolderByNameTransactions.prototype = {
|
|||||||
newOrder = newOrder.concat(preSep);
|
newOrder = newOrder.concat(preSep);
|
||||||
}
|
}
|
||||||
|
|
||||||
// set the nex indexs
|
// set the nex indexes
|
||||||
for (var i = 0; i < count; ++i)
|
var callback = {
|
||||||
|
runBatched: function() {
|
||||||
|
for (var i = 0; i < newOrder.length; ++i) {
|
||||||
PlacesUtils.bookmarks.setItemIndex(newOrder[i].itemId, i);
|
PlacesUtils.bookmarks.setItemIndex(newOrder[i].itemId, i);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
PlacesUtils.bookmarks.runInBatchMode(callback, null);
|
||||||
},
|
},
|
||||||
|
|
||||||
undoTransaction: function PSSFBN_undoTransaction() {
|
undoTransaction: function PSSFBN_undoTransaction() {
|
||||||
for (item in this._oldOrder)
|
var callback = {
|
||||||
PlacesUtils.bookmarks.setItemIndex(item, this._oldOrder[item]);
|
_self: this,
|
||||||
|
runBatched: function() {
|
||||||
|
for (item in this._self._oldOrder)
|
||||||
|
PlacesUtils.bookmarks.setItemIndex(item, this._self._oldOrder[item]);
|
||||||
|
}
|
||||||
|
};
|
||||||
|
PlacesUtils.bookmarks.runInBatchMode(callback, null);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -1602,36 +1602,7 @@ var gApplicationsPane = {
|
|||||||
* Filter the list when the user enters a filter term into the filter field.
|
* Filter the list when the user enters a filter term into the filter field.
|
||||||
*/
|
*/
|
||||||
filter: function() {
|
filter: function() {
|
||||||
if (this._filter.value == "") {
|
|
||||||
this.clearFilter();
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
this._rebuildView();
|
this._rebuildView();
|
||||||
|
|
||||||
document.getElementById("clearFilter").disabled = false;
|
|
||||||
},
|
|
||||||
|
|
||||||
_filterTimeout: null,
|
|
||||||
|
|
||||||
onFilterInput: function() {
|
|
||||||
if (this._filterTimeout)
|
|
||||||
clearTimeout(this._filterTimeout);
|
|
||||||
|
|
||||||
this._filterTimeout = setTimeout("gApplicationsPane.filter()", 500);
|
|
||||||
},
|
|
||||||
|
|
||||||
onFilterKeyPress: function(aEvent) {
|
|
||||||
if (aEvent.keyCode == KeyEvent.DOM_VK_ESCAPE)
|
|
||||||
this.clearFilter();
|
|
||||||
},
|
|
||||||
|
|
||||||
clearFilter: function() {
|
|
||||||
this._filter.value = "";
|
|
||||||
this._rebuildView();
|
|
||||||
|
|
||||||
this._filter.focus();
|
|
||||||
document.getElementById("clearFilter").disabled = true;
|
|
||||||
},
|
},
|
||||||
|
|
||||||
focusFilterBox: function() {
|
focusFilterBox: function() {
|
||||||
|
@ -110,12 +110,11 @@
|
|||||||
<key key="&focusSearch2.key;" modifiers="accel" oncommand="gApplicationsPane.focusFilterBox();"/>
|
<key key="&focusSearch2.key;" modifiers="accel" oncommand="gApplicationsPane.focusFilterBox();"/>
|
||||||
</keyset>
|
</keyset>
|
||||||
|
|
||||||
<hbox align="center">
|
<hbox>
|
||||||
<label accesskey="&filter.accesskey;" control="filter">&filter.label;</label>
|
<textbox id="filter" flex="1"
|
||||||
<textbox id="filter" flex="1" oninput="gApplicationsPane.onFilterInput();"
|
type="search"
|
||||||
onkeypress="gApplicationsPane.onFilterKeyPress(event);"/>
|
emptytext="&filter.emptytext;"
|
||||||
<button id="clearFilter" icon="clear" label="&clear.label;" accesskey="&clear.accesskey;"
|
oncommand="gApplicationsPane.filter();"/>
|
||||||
oncommand="gApplicationsPane.clearFilter();" disabled="true"/>
|
|
||||||
</hbox>
|
</hbox>
|
||||||
|
|
||||||
<separator class="thin"/>
|
<separator class="thin"/>
|
||||||
|
@ -163,6 +163,7 @@
|
|||||||
<filefield id="downloadFolder" flex="1"
|
<filefield id="downloadFolder" flex="1"
|
||||||
preference="browser.download.folderList"
|
preference="browser.download.folderList"
|
||||||
preference-editable="true"
|
preference-editable="true"
|
||||||
|
aria-labelledby="saveTo"
|
||||||
onsyncfrompreference="return gMainPane.displayDownloadDirPref();"
|
onsyncfrompreference="return gMainPane.displayDownloadDirPref();"
|
||||||
onsynctopreference="return gMainPane.getFolderListPref()"/>
|
onsynctopreference="return gMainPane.getFolderListPref()"/>
|
||||||
<button id="chooseFolder" oncommand="gMainPane.chooseFolder();"
|
<button id="chooseFolder" oncommand="gMainPane.chooseFolder();"
|
||||||
|
@ -228,10 +228,7 @@ SessionStoreService.prototype = {
|
|||||||
this._initialState.session && this._initialState.session.state &&
|
this._initialState.session && this._initialState.session.state &&
|
||||||
this._initialState.session.state == STATE_RUNNING_STR;
|
this._initialState.session.state == STATE_RUNNING_STR;
|
||||||
|
|
||||||
// restore the features of the first window from localstore.rdf
|
// make sure that at least the first window doesn't have anything hidden
|
||||||
WINDOW_ATTRIBUTES.forEach(function(aAttr) {
|
|
||||||
delete this._initialState.windows[0][aAttr];
|
|
||||||
}, this);
|
|
||||||
delete this._initialState.windows[0].hidden;
|
delete this._initialState.windows[0].hidden;
|
||||||
}
|
}
|
||||||
catch (ex) { debug("The session file is invalid: " + ex); }
|
catch (ex) { debug("The session file is invalid: " + ex); }
|
||||||
|
@ -222,7 +222,7 @@ static SETTING gSettings[] = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
PRBool
|
PRBool
|
||||||
nsWindowsShellService::IsDefaultBrowserVista(PRBool aStartupCheck, PRBool* aIsDefaultBrowser)
|
nsWindowsShellService::IsDefaultBrowserVista(PRBool* aIsDefaultBrowser)
|
||||||
{
|
{
|
||||||
#if !defined(MOZ_DISABLE_VISTA_SDK_REQUIREMENTS)
|
#if !defined(MOZ_DISABLE_VISTA_SDK_REQUIREMENTS)
|
||||||
IApplicationAssociationRegistration* pAAR;
|
IApplicationAssociationRegistration* pAAR;
|
||||||
@ -238,12 +238,6 @@ nsWindowsShellService::IsDefaultBrowserVista(PRBool aStartupCheck, PRBool* aIsDe
|
|||||||
APP_REG_NAME,
|
APP_REG_NAME,
|
||||||
aIsDefaultBrowser);
|
aIsDefaultBrowser);
|
||||||
|
|
||||||
// If this is the first browser window, maintain internal state that we've
|
|
||||||
// checked this session (so that subsequent window opens don't show the
|
|
||||||
// default browser dialog).
|
|
||||||
if (aStartupCheck)
|
|
||||||
mCheckedThisSession = PR_TRUE;
|
|
||||||
|
|
||||||
pAAR->Release();
|
pAAR->Release();
|
||||||
return PR_TRUE;
|
return PR_TRUE;
|
||||||
}
|
}
|
||||||
@ -316,7 +310,11 @@ nsWindowsShellService::IsDefaultBrowser(PRBool aStartupCheck,
|
|||||||
::ZeroMemory(currValue, sizeof(currValue));
|
::ZeroMemory(currValue, sizeof(currValue));
|
||||||
HKEY theKey;
|
HKEY theKey;
|
||||||
rv = OpenKeyForReading(HKEY_CLASSES_ROOT, key, &theKey);
|
rv = OpenKeyForReading(HKEY_CLASSES_ROOT, key, &theKey);
|
||||||
if (NS_SUCCEEDED(rv)) {
|
if (NS_FAILED(rv)) {
|
||||||
|
*aIsDefaultBrowser = PR_FALSE;
|
||||||
|
return NS_OK;
|
||||||
|
}
|
||||||
|
|
||||||
DWORD len = sizeof currValue;
|
DWORD len = sizeof currValue;
|
||||||
DWORD res = ::RegQueryValueExW(theKey, PromiseFlatString(value).get(),
|
DWORD res = ::RegQueryValueExW(theKey, PromiseFlatString(value).get(),
|
||||||
NULL, NULL, (LPBYTE)currValue, &len);
|
NULL, NULL, (LPBYTE)currValue, &len);
|
||||||
@ -325,17 +323,16 @@ nsWindowsShellService::IsDefaultBrowser(PRBool aStartupCheck,
|
|||||||
if (REG_FAILED(res) ||
|
if (REG_FAILED(res) ||
|
||||||
!dataLongPath.Equals(currValue, CaseInsensitiveCompare) &&
|
!dataLongPath.Equals(currValue, CaseInsensitiveCompare) &&
|
||||||
!dataShortPath.Equals(currValue, CaseInsensitiveCompare)) {
|
!dataShortPath.Equals(currValue, CaseInsensitiveCompare)) {
|
||||||
// Key wasn't set, or was set to something else (something else became the default browser)
|
// Key wasn't set, or was set to something other than our registry entry
|
||||||
*aIsDefaultBrowser = PR_FALSE;
|
*aIsDefaultBrowser = PR_FALSE;
|
||||||
return NS_OK;
|
return NS_OK;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
// Only check if Firefox is the default browser on Vista if the previous
|
// Only check if Firefox is the default browser on Vista if the previous
|
||||||
// checks show that Firefox is the default browser.
|
// checks show that Firefox is the default browser.
|
||||||
if (aIsDefaultBrowser)
|
if (*aIsDefaultBrowser)
|
||||||
IsDefaultBrowserVista(aStartupCheck, aIsDefaultBrowser);
|
IsDefaultBrowserVista(aIsDefaultBrowser);
|
||||||
|
|
||||||
return NS_OK;
|
return NS_OK;
|
||||||
}
|
}
|
||||||
@ -358,8 +355,8 @@ nsWindowsShellService::SetDefaultBrowser(PRBool aClaimAllTypes, PRBool aForAllUs
|
|||||||
rv = appHelper->AppendNative(NS_LITERAL_CSTRING("helper.exe"));
|
rv = appHelper->AppendNative(NS_LITERAL_CSTRING("helper.exe"));
|
||||||
NS_ENSURE_SUCCESS(rv, rv);
|
NS_ENSURE_SUCCESS(rv, rv);
|
||||||
|
|
||||||
nsCAutoString appHelperPath;
|
nsAutoString appHelperPath;
|
||||||
rv = appHelper->GetNativePath(appHelperPath);
|
rv = appHelper->GetPath(appHelperPath);
|
||||||
NS_ENSURE_SUCCESS(rv, rv);
|
NS_ENSURE_SUCCESS(rv, rv);
|
||||||
|
|
||||||
if (aForAllUsers) {
|
if (aForAllUsers) {
|
||||||
@ -368,10 +365,10 @@ nsWindowsShellService::SetDefaultBrowser(PRBool aClaimAllTypes, PRBool aForAllUs
|
|||||||
appHelperPath.AppendLiteral(" /SetAsDefaultAppUser");
|
appHelperPath.AppendLiteral(" /SetAsDefaultAppUser");
|
||||||
}
|
}
|
||||||
|
|
||||||
STARTUPINFO si = {sizeof(si), 0};
|
STARTUPINFOW si = {sizeof(si), 0};
|
||||||
PROCESS_INFORMATION pi = {0};
|
PROCESS_INFORMATION pi = {0};
|
||||||
|
|
||||||
BOOL ok = CreateProcess(NULL, (LPSTR)appHelperPath.get(), NULL, NULL,
|
BOOL ok = CreateProcessW(NULL, (LPWSTR)appHelperPath.get(), NULL, NULL,
|
||||||
FALSE, 0, NULL, NULL, &si, &pi);
|
FALSE, 0, NULL, NULL, &si, &pi);
|
||||||
|
|
||||||
if (!ok)
|
if (!ok)
|
||||||
|
@ -57,16 +57,9 @@ public:
|
|||||||
NS_DECL_NSIWINDOWSSHELLSERVICE
|
NS_DECL_NSIWINDOWSSHELLSERVICE
|
||||||
|
|
||||||
protected:
|
protected:
|
||||||
PRBool IsDefaultBrowserVista(PRBool aStartupCheck, PRBool* aIsDefaultBrowser);
|
PRBool IsDefaultBrowserVista(PRBool* aIsDefaultBrowser);
|
||||||
|
|
||||||
PRBool GetMailAccountKey(HKEY* aResult);
|
PRBool GetMailAccountKey(HKEY* aResult);
|
||||||
void SetRegKey(const nsString& aKeyName,
|
|
||||||
const nsString& aValueName,
|
|
||||||
const nsString& aValue, PRBool aHKLMOnly);
|
|
||||||
|
|
||||||
DWORD DeleteRegKey(HKEY baseKey, const nsString& keyName);
|
|
||||||
DWORD DeleteRegKeyDefaultValue(HKEY baseKey,
|
|
||||||
const nsString& keyName);
|
|
||||||
|
|
||||||
private:
|
private:
|
||||||
PRBool mCheckedThisSession;
|
PRBool mCheckedThisSession;
|
||||||
|
@ -1 +1 @@
|
|||||||
3.1a1pre
|
3.1a2pre
|
||||||
|
@ -48,6 +48,8 @@ SetDatablockOptimize on
|
|||||||
SetCompress off
|
SetCompress off
|
||||||
CRCCheck on
|
CRCCheck on
|
||||||
|
|
||||||
|
RequestExecutionLevel user
|
||||||
|
|
||||||
!addplugindir ./
|
!addplugindir ./
|
||||||
|
|
||||||
; empty files - except for the comment line - for generating custom pages.
|
; empty files - except for the comment line - for generating custom pages.
|
||||||
@ -70,21 +72,11 @@ Var AddDesktopSC
|
|||||||
; The following includes are provided by NSIS.
|
; The following includes are provided by NSIS.
|
||||||
!include FileFunc.nsh
|
!include FileFunc.nsh
|
||||||
!include LogicLib.nsh
|
!include LogicLib.nsh
|
||||||
|
!include MUI.nsh
|
||||||
!include TextFunc.nsh
|
!include TextFunc.nsh
|
||||||
!include WinMessages.nsh
|
!include WinMessages.nsh
|
||||||
|
!include WinVer.nsh
|
||||||
!include WordFunc.nsh
|
!include WordFunc.nsh
|
||||||
!include MUI.nsh
|
|
||||||
|
|
||||||
; WinVer.nsh was added in the same release that RequestExecutionLevel so check
|
|
||||||
; if ___WINVER__NSH___ is defined to determine if RequestExecutionLevel is
|
|
||||||
; available.
|
|
||||||
!include /NONFATAL WinVer.nsh
|
|
||||||
!ifdef ___WINVER__NSH___
|
|
||||||
RequestExecutionLevel user
|
|
||||||
!else
|
|
||||||
!warning "Installer will be created without Vista compatibility.$\n \
|
|
||||||
Upgrade your NSIS installation to at least version 2.22 to resolve."
|
|
||||||
!endif
|
|
||||||
|
|
||||||
!insertmacro GetOptions
|
!insertmacro GetOptions
|
||||||
!insertmacro GetParameters
|
!insertmacro GetParameters
|
||||||
@ -105,6 +97,7 @@ Var AddDesktopSC
|
|||||||
!include version.nsh
|
!include version.nsh
|
||||||
|
|
||||||
VIAddVersionKey "FileDescription" "${BrandShortName} Installer"
|
VIAddVersionKey "FileDescription" "${BrandShortName} Installer"
|
||||||
|
VIAddVersionKey "OriginalFilename" "setup.exe"
|
||||||
|
|
||||||
; Must be inserted before other macros that use logging
|
; Must be inserted before other macros that use logging
|
||||||
!insertmacro _LoggingCommon
|
!insertmacro _LoggingCommon
|
||||||
@ -356,6 +349,7 @@ Section "-Application" APP_IDX
|
|||||||
SetShellVarContext current ; Set SHCTX to HKCU
|
SetShellVarContext current ; Set SHCTX to HKCU
|
||||||
${RegCleanMain} "Software\Mozilla"
|
${RegCleanMain} "Software\Mozilla"
|
||||||
${RegCleanUninstall}
|
${RegCleanUninstall}
|
||||||
|
${UpdateProtocolHandlers}
|
||||||
|
|
||||||
ClearErrors
|
ClearErrors
|
||||||
WriteRegStr HKLM "Software\Mozilla\InstallerTest" "InstallerTest" "Test"
|
WriteRegStr HKLM "Software\Mozilla\InstallerTest" "InstallerTest" "Test"
|
||||||
@ -367,6 +361,7 @@ Section "-Application" APP_IDX
|
|||||||
StrCpy $TmpVal "HKLM" ; used primarily for logging
|
StrCpy $TmpVal "HKLM" ; used primarily for logging
|
||||||
${RegCleanMain} "Software\Mozilla"
|
${RegCleanMain} "Software\Mozilla"
|
||||||
${RegCleanUninstall}
|
${RegCleanUninstall}
|
||||||
|
${UpdateProtocolHandlers}
|
||||||
|
|
||||||
ReadRegStr $0 HKLM "Software\mozilla.org\Mozilla" "CurrentVersion"
|
ReadRegStr $0 HKLM "Software\mozilla.org\Mozilla" "CurrentVersion"
|
||||||
${If} "$0" != "${GREVersion}"
|
${If} "$0" != "${GREVersion}"
|
||||||
@ -392,7 +387,6 @@ Section "-Application" APP_IDX
|
|||||||
${WriteRegDWORD2} $TmpVal "$0" "Create Start Menu Shortcut" $AddStartMenuSC 0
|
${WriteRegDWORD2} $TmpVal "$0" "Create Start Menu Shortcut" $AddStartMenuSC 0
|
||||||
|
|
||||||
${FixClassKeys}
|
${FixClassKeys}
|
||||||
${UpdateProtocolHandlers}
|
|
||||||
|
|
||||||
; On install always add the FirefoxHTML and FirefoxURL keys.
|
; On install always add the FirefoxHTML and FirefoxURL keys.
|
||||||
; An empty string is used for the 5th param because FirefoxHTML is not a
|
; An empty string is used for the 5th param because FirefoxHTML is not a
|
||||||
|
@ -41,6 +41,7 @@
|
|||||||
SetShellVarContext current ; Set SHCTX to the current user (e.g. HKCU)
|
SetShellVarContext current ; Set SHCTX to the current user (e.g. HKCU)
|
||||||
${RegCleanMain} "Software\Mozilla"
|
${RegCleanMain} "Software\Mozilla"
|
||||||
${RegCleanUninstall}
|
${RegCleanUninstall}
|
||||||
|
${UpdateProtocolHandlers}
|
||||||
|
|
||||||
ClearErrors
|
ClearErrors
|
||||||
WriteRegStr HKLM "Software\Mozilla\InstallerTest" "InstallerTest" "Test"
|
WriteRegStr HKLM "Software\Mozilla\InstallerTest" "InstallerTest" "Test"
|
||||||
@ -55,6 +56,7 @@
|
|||||||
${SetStartMenuInternet}
|
${SetStartMenuInternet}
|
||||||
${FixShellIconHandler}
|
${FixShellIconHandler}
|
||||||
${SetUninstallKeys}
|
${SetUninstallKeys}
|
||||||
|
${UpdateProtocolHandlers}
|
||||||
|
|
||||||
ReadRegStr $0 HKLM "Software\mozilla.org\Mozilla" "CurrentVersion"
|
ReadRegStr $0 HKLM "Software\mozilla.org\Mozilla" "CurrentVersion"
|
||||||
${If} "$0" != "${GREVersion}"
|
${If} "$0" != "${GREVersion}"
|
||||||
@ -67,7 +69,6 @@
|
|||||||
; Add Software\Mozilla\ registry entries
|
; Add Software\Mozilla\ registry entries
|
||||||
${SetAppKeys}
|
${SetAppKeys}
|
||||||
${FixClassKeys}
|
${FixClassKeys}
|
||||||
${UpdateProtocolHandlers}
|
|
||||||
|
|
||||||
; Remove files that may be left behind by the application in the
|
; Remove files that may be left behind by the application in the
|
||||||
; VirtualStore directory.
|
; VirtualStore directory.
|
||||||
@ -108,7 +109,6 @@
|
|||||||
${FixShellIconHandler}
|
${FixShellIconHandler}
|
||||||
WriteRegStr HKCU "Software\Clients\StartMenuInternet" "" "$R9"
|
WriteRegStr HKCU "Software\Clients\StartMenuInternet" "" "$R9"
|
||||||
|
|
||||||
!ifdef ___WINVER__NSH___
|
|
||||||
${If} ${AtLeastWinVista}
|
${If} ${AtLeastWinVista}
|
||||||
ClearErrors
|
ClearErrors
|
||||||
ReadRegStr $0 HKLM "Software\RegisteredApplications" "${AppRegName}"
|
ReadRegStr $0 HKLM "Software\RegisteredApplications" "${AppRegName}"
|
||||||
@ -118,7 +118,6 @@
|
|||||||
AppAssocReg::SetAppAsDefaultAll "${AppRegName}"
|
AppAssocReg::SetAppAsDefaultAll "${AppRegName}"
|
||||||
${EndUnless}
|
${EndUnless}
|
||||||
${EndIf}
|
${EndIf}
|
||||||
!endif
|
|
||||||
|
|
||||||
${RemoveDeprecatedKeys}
|
${RemoveDeprecatedKeys}
|
||||||
|
|
||||||
@ -157,11 +156,11 @@
|
|||||||
${If} ${FileExists} "$DESKTOP\${BrandFullName}.lnk"
|
${If} ${FileExists} "$DESKTOP\${BrandFullName}.lnk"
|
||||||
ShellLink::GetShortCutArgs "$DESKTOP\${BrandFullName}.lnk"
|
ShellLink::GetShortCutArgs "$DESKTOP\${BrandFullName}.lnk"
|
||||||
Pop $0
|
Pop $0
|
||||||
${If} $0 == ""
|
${If} "$0" == ""
|
||||||
ShellLink::GetShortCutTarget "$DESKTOP\${BrandFullName}.lnk"
|
ShellLink::GetShortCutTarget "$DESKTOP\${BrandFullName}.lnk"
|
||||||
Pop $0
|
Pop $0
|
||||||
; Needs to handle short paths
|
; Needs to handle short paths
|
||||||
${If} $0 == "$INSTDIR\${FileMainEXE}"
|
${If} "$0" == "$INSTDIR\${FileMainEXE}"
|
||||||
Delete "$DESKTOP\${BrandFullName}.lnk"
|
Delete "$DESKTOP\${BrandFullName}.lnk"
|
||||||
${EndIf}
|
${EndIf}
|
||||||
${EndIf}
|
${EndIf}
|
||||||
@ -170,11 +169,11 @@
|
|||||||
${If} ${FileExists} "$QUICKLAUNCH\${BrandFullName}.lnk"
|
${If} ${FileExists} "$QUICKLAUNCH\${BrandFullName}.lnk"
|
||||||
ShellLink::GetShortCutArgs "$QUICKLAUNCH\${BrandFullName}.lnk"
|
ShellLink::GetShortCutArgs "$QUICKLAUNCH\${BrandFullName}.lnk"
|
||||||
Pop $0
|
Pop $0
|
||||||
${If} $0 == ""
|
${If} "$0" == ""
|
||||||
ShellLink::GetShortCutTarget "$QUICKLAUNCH\${BrandFullName}.lnk"
|
ShellLink::GetShortCutTarget "$QUICKLAUNCH\${BrandFullName}.lnk"
|
||||||
Pop $0
|
Pop $0
|
||||||
; Needs to handle short paths
|
; Needs to handle short paths
|
||||||
${If} $0 == "$INSTDIR\${FileMainEXE}"
|
${If} "$0" == "$INSTDIR\${FileMainEXE}"
|
||||||
Delete "$QUICKLAUNCH\${BrandFullName}.lnk"
|
Delete "$QUICKLAUNCH\${BrandFullName}.lnk"
|
||||||
${EndIf}
|
${EndIf}
|
||||||
${EndIf}
|
${EndIf}
|
||||||
@ -227,7 +226,7 @@
|
|||||||
WriteRegStr SHCTX "$0\.shtml" "" "FirefoxHTML"
|
WriteRegStr SHCTX "$0\.shtml" "" "FirefoxHTML"
|
||||||
${EndIf}
|
${EndIf}
|
||||||
|
|
||||||
ReadRegStr $6 HKCR ".hht" ""
|
ReadRegStr $6 HKCR ".xht" ""
|
||||||
${If} "$6" != "FirefoxHTML"
|
${If} "$6" != "FirefoxHTML"
|
||||||
WriteRegStr SHCTX "$0\.xht" "" "FirefoxHTML"
|
WriteRegStr SHCTX "$0\.xht" "" "FirefoxHTML"
|
||||||
${EndIf}
|
${EndIf}
|
||||||
@ -362,7 +361,7 @@
|
|||||||
${If} ${FileExists} "$DESKTOP\${BrandFullName}.lnk"
|
${If} ${FileExists} "$DESKTOP\${BrandFullName}.lnk"
|
||||||
ShellLink::GetShortCutArgs "$DESKTOP\${BrandFullName}.lnk"
|
ShellLink::GetShortCutArgs "$DESKTOP\${BrandFullName}.lnk"
|
||||||
Pop $1
|
Pop $1
|
||||||
${If} $1 == ""
|
${If} "$1" == ""
|
||||||
ShellLink::GetShortCutTarget "$DESKTOP\${BrandFullName}.lnk"
|
ShellLink::GetShortCutTarget "$DESKTOP\${BrandFullName}.lnk"
|
||||||
Pop $1
|
Pop $1
|
||||||
${GetLongPath} "$1" $1
|
${GetLongPath} "$1" $1
|
||||||
@ -376,7 +375,7 @@
|
|||||||
|
|
||||||
; XXXrstrong - need a cleaner way to prevent unsetting SHCTX from HKLM when
|
; XXXrstrong - need a cleaner way to prevent unsetting SHCTX from HKLM when
|
||||||
; trying to find the desktop shortcut.
|
; trying to find the desktop shortcut.
|
||||||
${If} $TmpVal == "HKCU"
|
${If} "$TmpVal" == "HKCU"
|
||||||
SetShellVarContext current ; Set SHCTX to the current user (e.g. HKCU)
|
SetShellVarContext current ; Set SHCTX to the current user (e.g. HKCU)
|
||||||
${Else}
|
${Else}
|
||||||
SetShellVarContext all ; Set SHCTX to all users (e.g. HKLM)
|
SetShellVarContext all ; Set SHCTX to all users (e.g. HKLM)
|
||||||
@ -385,11 +384,11 @@
|
|||||||
${If} ${FileExists} "$QUICKLAUNCH\${BrandFullName}.lnk"
|
${If} ${FileExists} "$QUICKLAUNCH\${BrandFullName}.lnk"
|
||||||
ShellLink::GetShortCutArgs "$QUICKLAUNCH\${BrandFullName}.lnk"
|
ShellLink::GetShortCutArgs "$QUICKLAUNCH\${BrandFullName}.lnk"
|
||||||
Pop $1
|
Pop $1
|
||||||
${If} $1 == ""
|
${If} "$1" == ""
|
||||||
ShellLink::GetShortCutTarget "$QUICKLAUNCH\${BrandFullName}.lnk"
|
ShellLink::GetShortCutTarget "$QUICKLAUNCH\${BrandFullName}.lnk"
|
||||||
Pop $1
|
Pop $1
|
||||||
${GetLongPath} "$1" $1
|
${GetLongPath} "$1" $1
|
||||||
${If} $1 == "$8\${FileMainEXE}"
|
${If} "$1" == "$8\${FileMainEXE}"
|
||||||
${WriteRegDWORD2} $TmpVal "$0" "Create Quick Launch Shortcut" 1 0
|
${WriteRegDWORD2} $TmpVal "$0" "Create Quick Launch Shortcut" 1 0
|
||||||
${Else}
|
${Else}
|
||||||
${WriteRegDWORD2} $TmpVal "$0" "Create Quick Launch Shortcut" 0 0
|
${WriteRegDWORD2} $TmpVal "$0" "Create Quick Launch Shortcut" 0 0
|
||||||
@ -544,7 +543,7 @@
|
|||||||
; Delete gopher from the user's UrlAssociations if it points to FirefoxURL.
|
; Delete gopher from the user's UrlAssociations if it points to FirefoxURL.
|
||||||
StrCpy $0 "Software\Microsoft\Windows\Shell\Associations\UrlAssociations\gopher"
|
StrCpy $0 "Software\Microsoft\Windows\Shell\Associations\UrlAssociations\gopher"
|
||||||
ReadRegStr $2 HKCU "$0\UserChoice" "Progid"
|
ReadRegStr $2 HKCU "$0\UserChoice" "Progid"
|
||||||
${If} $2 == "FirefoxURL"
|
${If} "$2" == "FirefoxURL"
|
||||||
DeleteRegKey HKCU "$0"
|
DeleteRegKey HKCU "$0"
|
||||||
${EndIf}
|
${EndIf}
|
||||||
!macroend
|
!macroend
|
||||||
|
@ -48,6 +48,8 @@ SetDatablockOptimize on
|
|||||||
SetCompress off
|
SetCompress off
|
||||||
CRCCheck on
|
CRCCheck on
|
||||||
|
|
||||||
|
RequestExecutionLevel user
|
||||||
|
|
||||||
!addplugindir ./
|
!addplugindir ./
|
||||||
|
|
||||||
; USE_UAC_PLUGIN is temporary until Thunderbird has been updated to use the UAC plugin
|
; USE_UAC_PLUGIN is temporary until Thunderbird has been updated to use the UAC plugin
|
||||||
@ -65,25 +67,13 @@ Var TmpVal
|
|||||||
!include MUI.nsh
|
!include MUI.nsh
|
||||||
!include TextFunc.nsh
|
!include TextFunc.nsh
|
||||||
!include WinMessages.nsh
|
!include WinMessages.nsh
|
||||||
|
!include WinVer.nsh
|
||||||
!include WordFunc.nsh
|
!include WordFunc.nsh
|
||||||
|
|
||||||
; WinVer.nsh was added in the same release that RequestExecutionLevel so check
|
|
||||||
; if ___WINVER__NSH___ is defined to determine if RequestExecutionLevel is
|
|
||||||
; available.
|
|
||||||
!include /NONFATAL WinVer.nsh
|
|
||||||
!ifdef ___WINVER__NSH___
|
|
||||||
RequestExecutionLevel user
|
|
||||||
!else
|
|
||||||
!warning "Installer will be created without Vista compatibility.$\n \
|
|
||||||
Upgrade your NSIS installation to at least version 2.22 to resolve."
|
|
||||||
!endif
|
|
||||||
|
|
||||||
!insertmacro StrFilter
|
!insertmacro StrFilter
|
||||||
!insertmacro WordReplace
|
!insertmacro WordReplace
|
||||||
|
|
||||||
!insertmacro un.GetParent
|
!insertmacro un.GetParent
|
||||||
!insertmacro un.LineFind
|
|
||||||
!insertmacro un.TrimNewLines
|
|
||||||
|
|
||||||
; The following includes are custom.
|
; The following includes are custom.
|
||||||
!include branding.nsi
|
!include branding.nsi
|
||||||
@ -95,6 +85,7 @@ Var TmpVal
|
|||||||
; This is named BrandShortName helper because we use this for software update
|
; This is named BrandShortName helper because we use this for software update
|
||||||
; post update cleanup.
|
; post update cleanup.
|
||||||
VIAddVersionKey "FileDescription" "${BrandShortName} Helper"
|
VIAddVersionKey "FileDescription" "${BrandShortName} Helper"
|
||||||
|
VIAddVersionKey "OriginalFilename" "helper.exe"
|
||||||
|
|
||||||
!insertmacro AddDDEHandlerValues
|
!insertmacro AddDDEHandlerValues
|
||||||
!insertmacro CleanVirtualStore
|
!insertmacro CleanVirtualStore
|
||||||
|
@ -1,7 +1,6 @@
|
|||||||
af
|
af
|
||||||
ar
|
ar
|
||||||
be
|
be
|
||||||
bg
|
|
||||||
ca
|
ca
|
||||||
cs
|
cs
|
||||||
da
|
da
|
||||||
@ -18,7 +17,6 @@ ga-IE
|
|||||||
gu-IN
|
gu-IN
|
||||||
he
|
he
|
||||||
hu
|
hu
|
||||||
hy-AM
|
|
||||||
id
|
id
|
||||||
it
|
it
|
||||||
ja
|
ja
|
||||||
@ -38,9 +36,7 @@ pt-BR
|
|||||||
pt-PT
|
pt-PT
|
||||||
ro
|
ro
|
||||||
ru
|
ru
|
||||||
si
|
|
||||||
sk
|
sk
|
||||||
sl
|
|
||||||
sq
|
sq
|
||||||
sr
|
sr
|
||||||
sv-SE
|
sv-SE
|
||||||
|
@ -222,6 +222,8 @@
|
|||||||
<!ENTITY reloadFrameCmd.accesskey "R">
|
<!ENTITY reloadFrameCmd.accesskey "R">
|
||||||
<!ENTITY viewPartialSourceForSelectionCmd.label "View Selection Source">
|
<!ENTITY viewPartialSourceForSelectionCmd.label "View Selection Source">
|
||||||
<!ENTITY viewPartialSourceForMathMLCmd.label "View MathML Source">
|
<!ENTITY viewPartialSourceForMathMLCmd.label "View MathML Source">
|
||||||
|
<!-- LOCALIZATION NOTE (viewPartialSourceCmd.accesskey): This accesskey is used for both
|
||||||
|
viewPartialSourceForSelectionCmd.label and viewPartialSourceForMathMLCmd.label -->
|
||||||
<!ENTITY viewPartialSourceCmd.accesskey "e">
|
<!ENTITY viewPartialSourceCmd.accesskey "e">
|
||||||
<!ENTITY viewPageSourceCmd.label "View Page Source">
|
<!ENTITY viewPageSourceCmd.label "View Page Source">
|
||||||
<!ENTITY viewPageSourceCmd.accesskey "V">
|
<!ENTITY viewPageSourceCmd.accesskey "V">
|
||||||
|
@ -14,6 +14,7 @@ droponhomemsg=Do you want this document to be your new home page?
|
|||||||
# context menu strings
|
# context menu strings
|
||||||
|
|
||||||
contextMenuSearchText=Search %S for "%S"
|
contextMenuSearchText=Search %S for "%S"
|
||||||
|
contextMenuSearchText.accesskey=S
|
||||||
|
|
||||||
blockImages=Block Images from %S
|
blockImages=Block Images from %S
|
||||||
|
|
||||||
|
@ -7,8 +7,4 @@
|
|||||||
<!ENTITY focusSearch1.key "f">
|
<!ENTITY focusSearch1.key "f">
|
||||||
<!ENTITY focusSearch2.key "k">
|
<!ENTITY focusSearch2.key "k">
|
||||||
|
|
||||||
<!ENTITY filter.label "Search:">
|
<!ENTITY filter.emptytext "Search">
|
||||||
<!ENTITY filter.accesskey "S">
|
|
||||||
|
|
||||||
<!ENTITY clear.label "Clear">
|
|
||||||
<!ENTITY clear.accesskey "l">
|
|
||||||
|
@ -21,9 +21,9 @@
|
|||||||
<!ENTITY gopher.label "Gopher Proxy:">
|
<!ENTITY gopher.label "Gopher Proxy:">
|
||||||
<!ENTITY gopher.accesskey "G">
|
<!ENTITY gopher.accesskey "G">
|
||||||
<!ENTITY http.label "HTTP Proxy:">
|
<!ENTITY http.label "HTTP Proxy:">
|
||||||
<!ENTITY http.accesskey "H">
|
<!ENTITY http.accesskey "x">
|
||||||
<!ENTITY ssl.label "SSL Proxy:">
|
<!ENTITY ssl.label "SSL Proxy:">
|
||||||
<!ENTITY ssl.accesskey "S">
|
<!ENTITY ssl.accesskey "L">
|
||||||
<!ENTITY socks.label "SOCKS Host:">
|
<!ENTITY socks.label "SOCKS Host:">
|
||||||
<!ENTITY socks.accesskey "C">
|
<!ENTITY socks.accesskey "C">
|
||||||
<!ENTITY socks4.label "SOCKS v4">
|
<!ENTITY socks4.label "SOCKS v4">
|
||||||
@ -41,4 +41,4 @@
|
|||||||
<!ENTITY noproxy.accesskey "n">
|
<!ENTITY noproxy.accesskey "n">
|
||||||
<!ENTITY noproxyExplain.label "Example: .mozilla.org, .net.nz, 192.168.1.0/24">
|
<!ENTITY noproxyExplain.label "Example: .mozilla.org, .net.nz, 192.168.1.0/24">
|
||||||
<!ENTITY shareproxy.label "Use this proxy server for all protocols">
|
<!ENTITY shareproxy.label "Use this proxy server for all protocols">
|
||||||
<!ENTITY shareproxy.accesskey "x">
|
<!ENTITY shareproxy.accesskey "s">
|
||||||
|
@ -1,277 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
|
|
||||||
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"[
|
|
||||||
<!ENTITY % brandDTD SYSTEM "chrome://branding/locale/brand.dtd" >
|
|
||||||
%brandDTD;
|
|
||||||
<!ENTITY % platformDTD SYSTEM
|
|
||||||
"chrome://browser/locale/help/platformStrings.dtd" >
|
|
||||||
%platformDTD;
|
|
||||||
]>
|
|
||||||
<!--
|
|
||||||
Contributors:
|
|
||||||
Mark Pilgrim <pilgrim@gmail.com> (original author)
|
|
||||||
-->
|
|
||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
||||||
<head>
|
|
||||||
<title>Accessibility Features of &brandFullName;</title>
|
|
||||||
<link rel="stylesheet" type="text/css"
|
|
||||||
href="chrome://help/skin/helpFileLayout.css"/>
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body>
|
|
||||||
|
|
||||||
<h1>Accessibility Features of &brandFullName;</h1>
|
|
||||||
|
|
||||||
<p>&brandShortName; includes many features to make the browser and web
|
|
||||||
content accessible to all users, including those who have low vision, no
|
|
||||||
vision, or limited ability to use a keyboard or mouse.</p>
|
|
||||||
|
|
||||||
<div class="contentsBox">In this section:
|
|
||||||
<ul>
|
|
||||||
<li><a href="#using_a_keyboard">Using a Keyboard</a></li>
|
|
||||||
<li><a href="#using_a_mouse">Using a Mouse</a></li>
|
|
||||||
<li><a href="#fonts_and_colors">Fonts and Colors</a></li>
|
|
||||||
<li><a href="#controlling_web_content">Controlling Web Content</a></li>
|
|
||||||
<li><a href="#compatibility_with_assistive_technologies">Compatibility
|
|
||||||
with Assistive Technologies</a></li>
|
|
||||||
<li><a href="#finding_help_online">Finding Help Online</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<h2 id="using_a_keyboard">Using a Keyboard</h2>
|
|
||||||
|
|
||||||
<h3 id="keyboard_shortcuts">Keyboard Shortcuts</h3>
|
|
||||||
|
|
||||||
<p>A list of common keyboard shortcuts is available in
|
|
||||||
<a href="shortcuts.xhtml">&brandShortName; Keyboard Shortcuts</a>.
|
|
||||||
Online, you can find <a target="_blank"
|
|
||||||
href="http://www.mozilla.org/support/firefox/keyboard">a comparison
|
|
||||||
chart of keyboard shortcuts</a> implemented in &brandShortName;,
|
|
||||||
Microsoft Internet Explorer, and Opera.</p>
|
|
||||||
|
|
||||||
<h3 id="always_use_cursor_keys">Always use the cursor keys to navigate within
|
|
||||||
webpages</h3>
|
|
||||||
|
|
||||||
<p><a href="prefs.xhtml#accessibility">Always use the cursor keys to navigate
|
|
||||||
within webpages</a> allows you to move through web content as if
|
|
||||||
you were inside a read-only editor.
|
|
||||||
You can use the keyboard to select web content and copy it to the
|
|
||||||
clipboard. You can enable this feature by selecting &pref.menuPath;,
|
|
||||||
opening the <em>General</em> tab in the <em>Advanced</em> panel,
|
|
||||||
and checking the <em>Always use the cursor keys to navigate within webpages
|
|
||||||
</em> &pref.singular;.</p>
|
|
||||||
|
|
||||||
<p>You can press <kbd>F7</kbd> at any time to turn this feature on or
|
|
||||||
off. When you press <kbd>F7</kbd>, &brandShortName; will
|
|
||||||
ask if you really want to turn on this feature. You can disable
|
|
||||||
this prompt by selecting <em>Don't show this dialog again.</em></p>
|
|
||||||
|
|
||||||
<h3 id="find_as_you_type">Search for text when I start typing</h3>
|
|
||||||
|
|
||||||
<p><a href="prefs.xhtml#accessibility">Search for text when I start typing</a>
|
|
||||||
allows you to quickly navigate to text or hyperlinks in a web page. This
|
|
||||||
feature has two modes. Press <abbr title="forward slash"><kbd>/</kbd></abbr>
|
|
||||||
and start typing to search all text on the current page, or press
|
|
||||||
<abbr title="apostrophe"><kbd>'</kbd></abbr> before your string to search
|
|
||||||
hyperlinks only. &brandShortName; will highlight matching text or hyperlinks
|
|
||||||
as you type.</p>
|
|
||||||
|
|
||||||
<p>The following keyboard shortcuts control this feature:</p>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
<li>Type more characters to narrow your search. &brandShortName;
|
|
||||||
will highlight the next matching hyperlink or text or alert you
|
|
||||||
that nothing matched.</li>
|
|
||||||
<li>Press &accelKey;+<kbd>G</kbd> or <kbd>F3</kbd> to find the next
|
|
||||||
occurrence of your current search string.</li>
|
|
||||||
<li>Press &accelKey;+&shiftKey;+<kbd>G</kbd> or &shiftKey;+<kbd>F3</kbd>
|
|
||||||
to find the previous occurrence of your current search string.</li>
|
|
||||||
<li>Press <kbd>Backspace</kbd> to undo the last character you typed.
|
|
||||||
&brandShortName; will back up to the previously highlighted text.</li>
|
|
||||||
<li>Press <kbd>Esc</kbd> to cancel a search. You can also cancel
|
|
||||||
a search by changing focus, scrolling the page with the mouse or
|
|
||||||
keyboard, or simply waiting for the timeout.</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<p>You can change the default behavior of this feature by selecting
|
|
||||||
&pref.menuPath;, opening the <em>General</em> tab of the <em>Advanced</em>
|
|
||||||
panel, and checking the <em>Search for text when I start typing</em>
|
|
||||||
&pref.singular;. If this option is checked, you can start typing at any
|
|
||||||
time to auto-start an inline search. By default auto-started searches look
|
|
||||||
for all text on the page. You can still explicitly press
|
|
||||||
<abbr title="apostrophe"><kbd>'</kbd></abbr> or
|
|
||||||
<abbr title="forward slash"><kbd>/</kbd></abbr> to start finding
|
|
||||||
in one mode or the other.</p>
|
|
||||||
|
|
||||||
<p>You can use this feature to get to buttons, text boxes and other
|
|
||||||
form controls. Search for the text immediately before the form control
|
|
||||||
you want and press <kbd>Tab</kbd>. Pressing <kbd>Tab</kbd> automatically
|
|
||||||
exits the search and sets focus to the next form field or button
|
|
||||||
after the highlighted text.</p>
|
|
||||||
|
|
||||||
<h2 id="using_a_mouse">Using a Mouse</h2>
|
|
||||||
|
|
||||||
<h3 id="common_mouse_shortcuts">Common Mouse Shortcuts</h3>
|
|
||||||
|
|
||||||
<p>A list of common mouse shortcuts is available in
|
|
||||||
<a href="mouse_shortcuts.xhtml">&brandShortName; Mouse
|
|
||||||
Shortcuts</a>.</p>
|
|
||||||
|
|
||||||
<h2 id="fonts_and_colors">Fonts and Colors</h2>
|
|
||||||
|
|
||||||
<h3 id="overriding_page_fonts">Overriding Page Fonts</h3>
|
|
||||||
|
|
||||||
<p>Some web sites may display text in fonts that are difficult to read,
|
|
||||||
and other sites may rely on the browser's default fonts. You can set
|
|
||||||
your default fonts by going to &pref.menuPath;, selecting the
|
|
||||||
<em>Content</em> panel, and selecting a default font and size in the
|
|
||||||
<em>Fonts & Colors</em> section.</p>
|
|
||||||
|
|
||||||
<p>You can specify default fonts for different styles, including serif,
|
|
||||||
sans-serif, and monospace by clicking the <em>Advanced</em> button.
|
|
||||||
However, many web pages specify their own fonts, so your choices
|
|
||||||
will have no effect on such pages. To override the fonts defined by
|
|
||||||
such pages, uncheck the <em>Allow pages to choose their own fonts, instead
|
|
||||||
of my selections above</em> &pref.singular;.</p>
|
|
||||||
|
|
||||||
<p>Note that some web pages may display incorrectly depending on your
|
|
||||||
choice of a default font.</p>
|
|
||||||
|
|
||||||
<h3 id="setting_a_minimum_font_size">Setting a Minimum Font Size</h3>
|
|
||||||
|
|
||||||
<p>Some web sites may display text which is too small to read
|
|
||||||
comfortably. To make such pages easier to read, you can set a minimum
|
|
||||||
font size. On web pages that try to display text smaller than this
|
|
||||||
size, &brandShortName; will enlarge the text to your chosen size.</p>
|
|
||||||
|
|
||||||
<p>To set a minimum font size, go to &pref.menuPath;, select the
|
|
||||||
<em>Content</em> panel, and click the <em>Advanced</em> button in the
|
|
||||||
<em>Fonts & Colors</em> section. You can specify a minimum font
|
|
||||||
size from the dropdown menu.</p>
|
|
||||||
|
|
||||||
<p>Note that some web pages may display incorrectly depending on your
|
|
||||||
choice of a minimum font size.</p>
|
|
||||||
|
|
||||||
<h3 id="resizing_page_text">Resizing Page Text</h3>
|
|
||||||
|
|
||||||
<p>You can temporarily change the size of text on any web page in the
|
|
||||||
<span class="menuPath">View > Text Size</span> menu. The new
|
|
||||||
size will remain in effect until you close your browser window or
|
|
||||||
tab, even if you navigate to a different web site.</p>
|
|
||||||
|
|
||||||
<p>The following keyboard shortcuts control text size:</p>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
<li>Press &accelKey;+<kbd><abbr title="plus">+</abbr></kbd> to
|
|
||||||
increase the text size. This zooms the text to 120% of its original
|
|
||||||
size, then 150%, 200%, 300%, 450%, 675%, 1013%, and 1519%.</li>
|
|
||||||
<li>Press &accelKey;+<kbd><abbr title="minus">-</abbr></kbd> to
|
|
||||||
decrease the text size. This zooms the text to 90% of its original
|
|
||||||
size, then 50%, 33%, 22%, 15%, 10%, 7%, 4%, 3%, 2%, and 1%.</li>
|
|
||||||
<li>Press &accelKey;+<kbd>0</kbd> to reset the text size to the web
|
|
||||||
page's default size.</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<p>Note that some web pages may display incorrectly if you increase or
|
|
||||||
decrease the text size.</p>
|
|
||||||
|
|
||||||
<h3 id="overriding_page_colors">Overriding Page Colors</h3>
|
|
||||||
|
|
||||||
<p>Some web sites may display text and background colors that are
|
|
||||||
difficult to read, and other sites may rely on the browser's default
|
|
||||||
colors. You can set your default colors by going to &pref.menuPath;,
|
|
||||||
selecting the <em>Content</em> panel, and clicking the <em>Colors</em>
|
|
||||||
button in the <em>Fonts & Colors</em> section. You can set
|
|
||||||
default text and background colors, as well as default colors for
|
|
||||||
visited and unvisited hyperlinks. You can also specify whether
|
|
||||||
hyperlinks should be underlined.</p>
|
|
||||||
|
|
||||||
<p>However, many web pages set their own colors, so your choices will
|
|
||||||
have no effect. To override the colors defined by web pages, uncheck
|
|
||||||
the <em>Allow pages to choose their own colors, instead of my
|
|
||||||
selections above</em> &pref.singular;.</p>
|
|
||||||
|
|
||||||
<div class="noMac">
|
|
||||||
|
|
||||||
<h3 id="using_a_high_contrast_theme">Using a High Contrast Theme</h3>
|
|
||||||
|
|
||||||
<p>&brandShortName; automatically detects if you are using a High
|
|
||||||
Contrast theme and displays everything in your high contrast color
|
|
||||||
scheme. This overrides all other other browser or web page
|
|
||||||
settings, and it affects the &brandShortName; interface itself (all
|
|
||||||
menus, windows, and dialog boxes) and the content of any web page
|
|
||||||
you visit.</p>
|
|
||||||
|
|
||||||
<p class="win">To use a High Contrast theme, go to
|
|
||||||
<span class="menuPath">Start Menu > Control Panel >
|
|
||||||
Accessibility Options > Display</span> and check the
|
|
||||||
<em>Use High Contrast</em> &pref.singular;.</p>
|
|
||||||
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<h2 id="controlling_web_content">Controlling Web Content</h2>
|
|
||||||
|
|
||||||
<h3 id="blocking_popup_windows">Blocking Pop-up Windows</h3>
|
|
||||||
|
|
||||||
<p>See <a href="popup.xhtml">Controlling Pop-ups</a> for information on
|
|
||||||
blocking pop-up windows.</p>
|
|
||||||
|
|
||||||
<h3 id="turning_off_java_applets">Turning Off Java Applets</h3>
|
|
||||||
|
|
||||||
<p>Some web pages provide a rich interactive experience with Java™
|
|
||||||
applets. However, some users that rely on keyboard navigation may
|
|
||||||
experience problems with some Java applets that automatically set
|
|
||||||
focus and do not provide a way to <q>break out</q> of the applet and
|
|
||||||
navigate to the rest of the web page. If this is a problem for you,
|
|
||||||
you can disable Java by going to &pref.menuPath;, selecting the
|
|
||||||
<em>Content</em> and unchecking the <em>Enable Java</em>
|
|
||||||
&pref.singular;.</p>
|
|
||||||
|
|
||||||
<h3 id="restricting_javascript_behavior">Restricting JavaScript Behavior</h3>
|
|
||||||
|
|
||||||
<p>You can turn off JavaScript entirely by going to &pref.menuPath;,
|
|
||||||
selecting the <em>Content</em> panel, and unchecking <em>Enable
|
|
||||||
JavaScript</em>. Some web pages rely on JavaScript and may not work
|
|
||||||
properly if JavaScript is disabled.</p>
|
|
||||||
|
|
||||||
<p>If you do not wish to disable JavaScript entirely, there are also a
|
|
||||||
number of advanced JavaScript settings to restrict the behavior of
|
|
||||||
scripts. Immediately after the <em>Enable JavaScript</em> checkbox,
|
|
||||||
click the <em>Advanced</em> button to open the <em>Advanced JavaScript
|
|
||||||
Settings</em> window. You can control whether scripts are allowed
|
|
||||||
to move or resize existing windows, raise or lower windows, disable or
|
|
||||||
replace context menus, hide the status bar, or change status bar
|
|
||||||
text.</p>
|
|
||||||
|
|
||||||
<h2 id="compatibility_with_assistive_technologies">Compatibility With
|
|
||||||
Assistive Technologies</h2>
|
|
||||||
|
|
||||||
<p>The latest information about compatibility with third-party assistive
|
|
||||||
technologies is online at
|
|
||||||
<a target="_blank" href="http://www.mozilla.org/access/compatibility">Access
|
|
||||||
Mozilla: Compatibility with assistive technologies</a>.</p>
|
|
||||||
|
|
||||||
<h2 id="finding_help_online">Finding Help Online</h2>
|
|
||||||
|
|
||||||
<div class="win">
|
|
||||||
|
|
||||||
<p>Freedom Scientific maintains a number of
|
|
||||||
<a target="_blank" href="http://www.freedomscientific.com/fs_support/User_Groups.asp">mailing
|
|
||||||
lists for JAWS users</a>.</p>
|
|
||||||
|
|
||||||
<p>GW Micro maintains a number of
|
|
||||||
<a target="_blank" href="http://www.gwmicro.com/Support/Email_Lists/">mailing
|
|
||||||
lists for Window Eyes users</a>.</p>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<p>You may <span class="win">also</span> post accessibility questions to the
|
|
||||||
<a target="_blank" href="http://forums.mozillazine.org/viewforum.php?f=38">&brandShortName;
|
|
||||||
Support forum</a>.</p>
|
|
||||||
|
|
||||||
<div class="contentsBox"><em>29 Aug 2006</em></div>
|
|
||||||
|
|
||||||
<p>Copyright © ©right.years; Contributors to the Mozilla Help Viewer
|
|
||||||
Project.</p>
|
|
||||||
|
|
||||||
</body>
|
|
||||||
</html>
|
|
@ -1,170 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"[
|
|
||||||
<!ENTITY % brandDTD SYSTEM "chrome://branding/locale/brand.dtd" >
|
|
||||||
%brandDTD;
|
|
||||||
<!ENTITY % platformDTD SYSTEM "chrome://browser/locale/help/platformStrings.dtd" >
|
|
||||||
%platformDTD;
|
|
||||||
]>
|
|
||||||
<!--
|
|
||||||
Contributors:
|
|
||||||
David Tenser <david.tenser@comhem.se> (original author)
|
|
||||||
Steffen Wilberg <steffen.wilberg@web.de>
|
|
||||||
-->
|
|
||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
||||||
<head>
|
|
||||||
<title>Managing Cookies</title>
|
|
||||||
<link rel="stylesheet" type="text/css" href="chrome://help/skin/helpFileLayout.css"/>
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body>
|
|
||||||
<h1>Managing Cookies</h1>
|
|
||||||
|
|
||||||
<p>This document explains what cookies are, how they are used, and how you can gain
|
|
||||||
control over the cookies stored on your computer by using the Cookie Manager in
|
|
||||||
&brandFullName;.</p>
|
|
||||||
|
|
||||||
<div class="contentsBox">In this section:
|
|
||||||
<ul>
|
|
||||||
<li><a href="#what_is_a_cookie">What is a Cookie?</a></li>
|
|
||||||
<li><a href="#setting_up_cookie_rules">Setting Up Cookie Rules</a></li>
|
|
||||||
<li><a href="#accepting_and_blocking_cookies">Accepting and Blocking Cookies</a></li>
|
|
||||||
<li><a href="#cookies_exceptions">The Cookies Exceptions Window</a></li>
|
|
||||||
<li><a href="#view_cookies">The View Cookies Window</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<h2 id="what_is_a_cookie">What is a Cookie?</h2>
|
|
||||||
|
|
||||||
<p>A cookie is a file created by an Internet site to store information on your
|
|
||||||
computer, such as your preferences when visiting that site. When you visit a site
|
|
||||||
that uses cookies, the site might ask &brandShortName; to place one or more cookies
|
|
||||||
on your hard disk.</p>
|
|
||||||
|
|
||||||
<p>Later, when you return to the site, &brandShortName; sends back the cookies that
|
|
||||||
belong to the site. This allows the site to present you with information customized
|
|
||||||
to fit your needs.</p>
|
|
||||||
|
|
||||||
<p>Cookies can also store personally identifiable information. Personally identifiable
|
|
||||||
information is information that can be used to identify or contact you, such as
|
|
||||||
your name, e-mail address, home or work address, or telephone number. However, a
|
|
||||||
web site only has access to the personal information that you provide. For
|
|
||||||
example, a web site cannot determine your e-mail address unless you provide it. Also,
|
|
||||||
a web site cannot gain access to other information on your computer.</p>
|
|
||||||
|
|
||||||
<p>When you use the default cookie settings, this activity is invisible to you,
|
|
||||||
and you won't know when a web site is setting a cookie or when &brandShortName;
|
|
||||||
is sending a web site its cookie. However, you can set your cookies
|
|
||||||
&pref.plural; so that you will be asked before a cookie is set. You can also
|
|
||||||
restrict the lifetime of cookies to your current &brandShortName; session.</p>
|
|
||||||
|
|
||||||
<h2 id="setting_up_cookie_rules">Setting Up Cookie Rules</h2>
|
|
||||||
|
|
||||||
<p>By default &brandShortName; accepts all cookies, including cookies which
|
|
||||||
would allow a site to recognize you effectively forever. If this doesn't suit
|
|
||||||
you, you can tell &brandShortName; to delete all cookies when you close
|
|
||||||
&brandShortName;:</p>
|
|
||||||
|
|
||||||
<ol>
|
|
||||||
<li>Select &pref.menuPath; and open the <em>Privacy</em> panel.</li>
|
|
||||||
<li>Select the <em>I close &brandShortName;</em> &pref.singular; from the
|
|
||||||
<em>Keep until</em> menu.</li>
|
|
||||||
</ol>
|
|
||||||
|
|
||||||
<p>If you want to grant sites you trust the ability to store cookies permanently
|
|
||||||
(e.g., to allow you to log in automatically to a site), click <a
|
|
||||||
href="#cookies_exceptions"><em>Exceptions…</em></a>, enter the site address,
|
|
||||||
and click <em>Allow</em>.</p>
|
|
||||||
|
|
||||||
<h3 id="all_the_settings">All the Settings</h3>
|
|
||||||
|
|
||||||
<p>These are the &pref.plural; that affect how cookies are managed by
|
|
||||||
&brandShortName;:</p>
|
|
||||||
|
|
||||||
<dl>
|
|
||||||
<dt>Accept cookies from sites</dt>
|
|
||||||
<dd><p>If you don't want any sites to store cookies on your computer, uncheck
|
|
||||||
this &pref.singular;. Note that some sites may not work properly when
|
|
||||||
cookies are disabled. If you want to grant certain sites the ability to
|
|
||||||
store cookies, open the <a href="#cookies_exceptions">Cookies Exceptions</a>
|
|
||||||
window by clicking <em>Exceptions…</em>, enter the site address, and click
|
|
||||||
<em>Allow</em> or <em>Allow for Session</em>.</p></dd>
|
|
||||||
<dt>Keep until</dt>
|
|
||||||
<dd>
|
|
||||||
<ul>
|
|
||||||
<li><em>they expire</em><br/>
|
|
||||||
If this &pref.singular; is selected, each cookie will be removed when the
|
|
||||||
site that set it has determined the cookie should expire.</li>
|
|
||||||
<li><em>I close &brandShortName;</em><br/>
|
|
||||||
If this &pref.singular; is selected, cookies will be removed when you
|
|
||||||
restart &brandShortName;. Web sites requiring the use of cookies will
|
|
||||||
still work, but if you restart &brandShortName;, the web site will think
|
|
||||||
that you logged into the site for the first time again.</li>
|
|
||||||
<li><em>ask me every time</em><br/>
|
|
||||||
Display an alert every time a web site tries to store a cookie asking you
|
|
||||||
if you want that cookie stored.</li>
|
|
||||||
</ul>
|
|
||||||
</dd>
|
|
||||||
</dl>
|
|
||||||
|
|
||||||
<h2 id="accepting_and_blocking_cookies">Accepting and Blocking Cookies</h2>
|
|
||||||
|
|
||||||
<p>If you've chosen <em>ask me every time</em> from the <em>Keep until</em>
|
|
||||||
menu, you'll see a dialog whenever a site tries to store a cookie on your
|
|
||||||
computer providing the following options:</p>
|
|
||||||
|
|
||||||
<dl>
|
|
||||||
<dt>Allow</dt>
|
|
||||||
<dd>To allow this particular cookie, just click <em>Allow</em>. Use this if
|
|
||||||
you trust the site.</dd>
|
|
||||||
<dt>Allow for Session</dt>
|
|
||||||
<dd>If you want to allow this cookie for now, but have it deleted when you
|
|
||||||
exit &brandShortName;, click <em>Allow for Session</em>. Use this if the
|
|
||||||
site doesn't work without cookies, but you don't want to have a permanent
|
|
||||||
cookie stored for it.</dd>
|
|
||||||
<dt>Deny</dt>
|
|
||||||
<dd>If you don't want this cookie to be stored, click <em>Deny</em>. Use this
|
|
||||||
if you don't trust the site or suspect that it's compromising your privacy.</dd>
|
|
||||||
<dt>Use my choice for all cookies from this site</dt>
|
|
||||||
<dd>Select this checkbox before clicking any of the buttons if you want
|
|
||||||
&brandShortName; to remember your decision and not ask again. The site will
|
|
||||||
be added to the <a href="#cookies_exceptions">Cookie Exceptions</a> window,
|
|
||||||
where you can revert your choice should you wish to do so later.</dd>
|
|
||||||
</dl>
|
|
||||||
|
|
||||||
<h2 id="cookies_exceptions">The Cookies Exceptions Window</h2>
|
|
||||||
|
|
||||||
<p>Access this window by clicking the <em>Exceptions…</em> button in cookies
|
|
||||||
&pref.plural;. Here you can make exceptions from your general cookies
|
|
||||||
&pref.plural; for specific sites. Using exceptions, you can allow all cookies,
|
|
||||||
reject all cookies, or allow all cookies but have them deleted when you exit
|
|
||||||
&brandShortName;, regardless of your other cookie settings.</p>
|
|
||||||
|
|
||||||
<p>To add a site to this list, simply type the site's domain name in the field
|
|
||||||
labeled <em>Address of web site</em>. Then click <em>Block</em> to reject
|
|
||||||
cookies from the site, click <em>Allow</em> to allow cookies from the site,
|
|
||||||
or click <em>Allow for Session</em> to allow cookies from the site but have
|
|
||||||
them deleted when you exit &brandShortName;.</p>
|
|
||||||
|
|
||||||
<p>To remove a site from this list, select it and click <em>Remove Site</em>. To
|
|
||||||
clear the list completely, click <em>Remove All Sites</em>. This will clear
|
|
||||||
the exceptions list so your general cookies &pref.plural; apply.</p>
|
|
||||||
|
|
||||||
<h2 id="view_cookies">The View Cookies Window</h2>
|
|
||||||
|
|
||||||
<p>Use the <em>View Cookies</em> window to view and remove cookies. To access it,
|
|
||||||
click the <em>View Cookies</em> button in cookies &pref.plural;.</p>
|
|
||||||
|
|
||||||
<p>This window lists all cookies currently stored on your
|
|
||||||
computer, grouped by site. You can expand the sites and select a cookie to
|
|
||||||
display more information about it. You can also search for a site or a cookie
|
|
||||||
name by typing in the search bar.</p>
|
|
||||||
|
|
||||||
<p>To remove a cookie from the list, select it and click <em>Remove Cookie</em>.
|
|
||||||
To remove a site's cookies, select the site and click <em>Remove
|
|
||||||
Cookie(s)</em>. To wipe all cookies, click <em>Remove All Cookies</em>.</p>
|
|
||||||
|
|
||||||
<div class="contentsBox"><em>12 September 2006</em></div>
|
|
||||||
<p>Copyright © ©right.years; Contributors to the Mozilla Help Viewer Project.</p>
|
|
||||||
|
|
||||||
</body>
|
|
||||||
</html>
|
|
@ -1,189 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"[
|
|
||||||
<!ENTITY % brandDTD SYSTEM "chrome://branding/locale/brand.dtd" >
|
|
||||||
%brandDTD;
|
|
||||||
<!ENTITY % platformDTD SYSTEM "chrome://browser/locale/help/platformStrings.dtd" >
|
|
||||||
%platformDTD;
|
|
||||||
]>
|
|
||||||
<!--
|
|
||||||
Contributors:
|
|
||||||
Nilson Cain <nilson@gmail.com> (original author)
|
|
||||||
Steffen Wilberg <steffen.wilberg@web.de>
|
|
||||||
-->
|
|
||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
||||||
<head>
|
|
||||||
<title>Customizing &brandFullName;</title>
|
|
||||||
<link rel="stylesheet" type="text/css" href="chrome://help/skin/helpFileLayout.css"/>
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body>
|
|
||||||
<h1>Customizing &brandFullName;</h1>
|
|
||||||
|
|
||||||
<div class="contentsBox">In this section:
|
|
||||||
<ul>
|
|
||||||
<li><a href="#toolbars">Toolbars</a></li>
|
|
||||||
<li><a href="#add_ons">Add-ons (extensions and themes)</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<h2 id="toolbars">Toolbars</h2>
|
|
||||||
|
|
||||||
<p>This will tell you how to rearrange, hide, add, and remove toolbars in
|
|
||||||
&brandShortName;. For those who are unfamiliar with the terminology, a toolbar
|
|
||||||
is the (usually gray) box above the area that the web site is displayed.</p>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
<li class="noMac"><strong>Menu Bar</strong>: This is the toolbar that contains
|
|
||||||
the browser menus (File, Edit, Help, etc.).</li>
|
|
||||||
<li><strong>Navigation Bar</strong>: This is the toolbar that contains the
|
|
||||||
Location Bar and the buttons used to navigate web sites.</li>
|
|
||||||
<li><strong>Bookmarks Toolbar</strong>: This is the toolbar that contains
|
|
||||||
your Bookmarks Toolbar Folder bookmarks.</li>
|
|
||||||
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<p>There are two basic methods of customizing the toolbars in
|
|
||||||
&brandShortName;:</p>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
<li><a href="#rearranging_toolbar_items">Rearranging Toolbar Items</a></li>
|
|
||||||
<li><a href="#adding_removing_toolbars">Hiding, Adding, and Removing
|
|
||||||
Toolbars</a></li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<h3 id="rearranging_toolbar_items">Rearranging Toolbar Items</h3>
|
|
||||||
|
|
||||||
<p>To rearrange the items (icons, buttons, text boxes, etc.) on your toolbar,
|
|
||||||
<span class="noMac">right-click</span><span class="mac">press &ctrlKey; and
|
|
||||||
click</span> on any part of the toolbar that is not a text box and select
|
|
||||||
<span class="menuPath">Customize…</span>. This will bring up the toolbar
|
|
||||||
customization dialog.</p>
|
|
||||||
|
|
||||||
<p>Drag and drop any items you want to and from the toolbars <span class=
|
|
||||||
"noMac">(excluding the menu items)</span>. You can also rearrange icons
|
|
||||||
already on the toolbars by dragging and dropping them wherever you wish. When
|
|
||||||
the toolbars and items are arranged the way you want them, click
|
|
||||||
<em>Done</em>.</p>
|
|
||||||
|
|
||||||
<h4 id="special_toolbar_items">Special Toolbar Items</h4>
|
|
||||||
|
|
||||||
<p>There are a few special items that are available to you when customizing the
|
|
||||||
toolbar. They are as follows:</p>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
<li><strong>Separators:</strong> These allow you to separate items on the
|
|
||||||
toolbars with a small vertical line.</li>
|
|
||||||
<li><strong>Spacers:</strong> These allow you to separate items on the
|
|
||||||
toolbars with a fixed-size space, usually around 20 pixels on most
|
|
||||||
themes.</li>
|
|
||||||
<li><strong>Flexible spacers:</strong> Spacers allow you to separate items
|
|
||||||
on the toolbars with a space. These spacers automatically resize to fill
|
|
||||||
all of the empty space on the toolbar. These are good for positioning
|
|
||||||
items on the right of a toolbar.</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<h3 id="adding_removing_toolbars">Hiding, Adding, and Removing Toolbars</h3>
|
|
||||||
|
|
||||||
<p>You can hide the Navigation Toolbar and the Bookmarks Toolbar if you do not
|
|
||||||
wish to keep them on your screen. <span class="noMac">You cannot hide the Menu
|
|
||||||
Bar because you cannot move the menu items (File, Edit, Help, etc.) to a
|
|
||||||
different toolbar, and they must stay on the screen at all times.</span></p>
|
|
||||||
|
|
||||||
<p>To show or hide a toolbar, select <span class="menuPath">View > Toolbars</span>
|
|
||||||
and click the name of the toolbar you want to show or hide.</p>
|
|
||||||
|
|
||||||
<p>To add a custom toolbar, select <span class="menuPath">View > Toolbars
|
|
||||||
> Customize</span>. Click on <em>Add New Toolbar</em> (in the bottom of the
|
|
||||||
dialog). This will give you a dialog to enter a name. If you enter a name and
|
|
||||||
click <em>OK</em>, your new toolbar appears. Now you can drag and drop items
|
|
||||||
to it. To remove a custom toolbar, drag and drop all the items from it, and
|
|
||||||
click Done. You can also hide a custom toolbar as described in the previous
|
|
||||||
paragraph.</p>
|
|
||||||
|
|
||||||
<h2 id="add_ons">Add-ons (extensions and themes)</h2>
|
|
||||||
|
|
||||||
<p>Add-ons are small pieces of software which change or add to the appearance or
|
|
||||||
functionality of &brandShortName;. There are two kinds of add-ons: extensions
|
|
||||||
and themes.</p>
|
|
||||||
|
|
||||||
<dl>
|
|
||||||
<dt>Extensions</dt>
|
|
||||||
<dd>Extensions add new functionality to &brandShortName;. They can add
|
|
||||||
anything from a toolbar button to a completely new feature. They allow the
|
|
||||||
application to be customized to fit the personal needs of each user while
|
|
||||||
minimizing the size and appearance of the application itself.</dd>
|
|
||||||
|
|
||||||
<dt>Themes</dt>
|
|
||||||
<dd>Themes modify &brandShortName;'s appearance. They allow you to change the
|
|
||||||
look and feel of &brandShortName; and personalize it to your tastes. A
|
|
||||||
theme can simply change button images, or it can change every piece of
|
|
||||||
&brandShortName; appearance.</dd>
|
|
||||||
</dl>
|
|
||||||
|
|
||||||
<h3 id="add_ons_installing">Getting and Installing Add-ons</h3>
|
|
||||||
|
|
||||||
<p>You can download and install many add-ons from <a
|
|
||||||
href="https://addons.mozilla.org/firefox/" target="_blank">&brandShortName;
|
|
||||||
Add-ons</a>. Internet searches will find many other add-ons as well.</p>
|
|
||||||
|
|
||||||
<p>When you click on a link to install an add-on, &brandShortName; displays a
|
|
||||||
dialog asking you for permission to install the add-on. You can choose to
|
|
||||||
allow the download and installation or to cancel the process.</p>
|
|
||||||
|
|
||||||
<h2 id="add_ons_manager">Using the Add-ons manager</h2>
|
|
||||||
<p>Add-ons are managed in the Add-ons manager. Select <span
|
|
||||||
class="menuPath">Tools > Add-ons</span> to open it.</p>
|
|
||||||
|
|
||||||
<h3 id="add_ons_updating">Updating Add-ons</h3>
|
|
||||||
|
|
||||||
<p>By default, &brandShortName; will periodically check when a new version for
|
|
||||||
one of your installed add-ons is available. If any are available, it will
|
|
||||||
prompt you at the next start to install any updates. You can change this
|
|
||||||
behavior in the <a href="prefs.xhtml#advanced_update"><em>Update</em> tab</a>
|
|
||||||
of the <em>Advanced</em> panel of &pref.pluralCaps;.</p>
|
|
||||||
|
|
||||||
<p>You can check for updates manually by selecting the <em>Extensions</em> or
|
|
||||||
<em>Themes</em> panel and clicking the <em>Find Updates</em> button. If
|
|
||||||
updates are available, the Add-ons manager displays an <em>Updates</em>
|
|
||||||
panel, where you can choose the updates you want to install. Click the
|
|
||||||
<em>Install Updates</em> button to update those add-ons.
|
|
||||||
You need to restart &brandShortName; for changes to take effect.</p>
|
|
||||||
|
|
||||||
<h3 id="add_ons_uninstalling">Disabling, Enabling, and Uninstalling Add-ons</h3>
|
|
||||||
|
|
||||||
<p>If you want to get rid of an extension, you can either disable it temporarily,
|
|
||||||
so it is easily available should you want to enable it again in the future,
|
|
||||||
or uninstall it. Themes can only be uninstalled since all themes except the
|
|
||||||
current one are disabled automatically.</p>
|
|
||||||
|
|
||||||
<p>To disable or enable an extension, select the extension of your choice and
|
|
||||||
click its <em>Disable</em> or <em>Enable</em> button. To remove an add-on from
|
|
||||||
&brandShortName;, select the add-on you wish to remove and click its
|
|
||||||
<em>Uninstall</em> button. You need to restart &brandShortName; for changes to
|
|
||||||
take effect.</p>
|
|
||||||
|
|
||||||
<h3 id="add_ons_further">Further functionality</h3>
|
|
||||||
|
|
||||||
<p>Further functionality such as <em>Visit Home Page</em> and <em>About</em> is
|
|
||||||
available by selecting the add-on of your choice, <span class="mac">pressing
|
|
||||||
&ctrlKey; and clicking on</span><span class="noMac">right-clicking</span> the
|
|
||||||
add-on and selecting the respective item from the context menu.</p>
|
|
||||||
|
|
||||||
<h3 id="add_ons_specific">Tasks specific to extensions or themes</h3>
|
|
||||||
<h4 id="add_ons_configuring_extensions">Configuring Extensions</h4>
|
|
||||||
|
|
||||||
<p>Extensions often provide a dialog to configure their functionality. To open
|
|
||||||
the &pref.plural; dialog of an extension, select the Extensions panel, select
|
|
||||||
the extension of your choice, and click its <em>&pref.pluralCaps;</em> button,
|
|
||||||
or simply double-click the extension.</p>
|
|
||||||
|
|
||||||
<h4 id="add_ons_switching_themes">Switching Themes</h4>
|
|
||||||
|
|
||||||
<p>To switch between your installed themes, select the Themes panel, select the
|
|
||||||
theme of your choice, and click its <em>Use Theme</em> button. You need to
|
|
||||||
restart &brandShortName; for changes to take effect.</p>
|
|
||||||
|
|
||||||
<div class="contentsBox"><em>12 September 2006</em></div>
|
|
||||||
<p>Copyright © ©right.years; Contributors to the Mozilla Help Viewer Project.</p>
|
|
||||||
|
|
||||||
</body>
|
|
||||||
</html>
|
|
@ -1,96 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"[
|
|
||||||
<!ENTITY % brandDTD SYSTEM "chrome://branding/locale/brand.dtd" >
|
|
||||||
%brandDTD;
|
|
||||||
<!ENTITY % platformDTD SYSTEM "chrome://browser/locale/help/platformStrings.dtd" >
|
|
||||||
%platformDTD;
|
|
||||||
]>
|
|
||||||
<!--
|
|
||||||
Contributors:
|
|
||||||
Nilson Cain <mybugs@bellsouth.net> (original author)
|
|
||||||
Jeff Walden <jwalden+code@mit.edu>
|
|
||||||
-->
|
|
||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
||||||
<head>
|
|
||||||
<title>Using &brandFullName;'s Download Manager</title>
|
|
||||||
<link rel="stylesheet" type="text/css" href="chrome://help/skin/helpFileLayout.css"/>
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body>
|
|
||||||
<h1>Using &brandFullName;'s Download Manager</h1>
|
|
||||||
|
|
||||||
<div class="contentsBox">In this section:
|
|
||||||
<ul>
|
|
||||||
<li><a href="#what_is_download_manager">What is the Download Manager?</a></li>
|
|
||||||
<li><a href="#do_with_download_manager">What can I do with the Download Manager?</a></li>
|
|
||||||
<li><a href="#download_manager_options">Download Manager &pref.pluralCaps;</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
<h2 id="what_is_download_manager">What is the Download Manager?</h2>
|
|
||||||
|
|
||||||
<p>The Download Manager is a feature of &brandShortName; that allows you to
|
|
||||||
track and manage your past and current file downloads. It is a convenient way
|
|
||||||
to escape the clutter of multiple downloading windows while still preserving
|
|
||||||
access to download statistics.</p>
|
|
||||||
|
|
||||||
<p>The Download Manager will appear when you download files, when you select
|
|
||||||
<span class="menuPath">Tools > Downloads</span>, and when you press
|
|
||||||
<span class="noUnix">&accelKey;+<kbd>J</kbd></span><span class="unix">&accelKey;+<kbd>Y</kbd></span>.</p>
|
|
||||||
|
|
||||||
|
|
||||||
<h2 id="do_with_download_manager">What can I do with the Download Manager?</h2>
|
|
||||||
|
|
||||||
<p>In addition to keeping information on all your downloads in one place, the
|
|
||||||
Download Manager keeps convenient download actions easily accessible for each
|
|
||||||
of your downloads.</p>
|
|
||||||
|
|
||||||
<dl>
|
|
||||||
<dt>Pause</dt>
|
|
||||||
<dd>You can pause any downloads currently in progress by clicking the
|
|
||||||
<em>Pause</em> link beside the file entry. This may be useful, for
|
|
||||||
example, if you need to open a small download started after a large
|
|
||||||
download. Pausing downloads gives you the choice to decide which of your
|
|
||||||
downloads are most important. When you want to continue downloading those
|
|
||||||
files, simply use the <em>Resume</em> link to finish those downloads.</dd>
|
|
||||||
|
|
||||||
<dt>Cancel</dt>
|
|
||||||
<dd>If after starting a download you decide you no longer need that file,
|
|
||||||
canceling the download is simple: just use the <em>Cancel</em> link beside
|
|
||||||
that file entry to cancel it and free up your connection for your browsing
|
|
||||||
and other downloads.</dd>
|
|
||||||
|
|
||||||
<dt>Open the File</dt>
|
|
||||||
<dd>When a download has finished, the <em>Open</em> link will appear
|
|
||||||
by the file entry. Use it to open the file.</dd>
|
|
||||||
|
|
||||||
<dt>Remove the File's Entry</dt>
|
|
||||||
<dd>If you do not wish to store information on a particular download, removing
|
|
||||||
the entry is as simple as the click of a mouse. Simply use the
|
|
||||||
<em>Remove</em> link beside the file entry to delete it.</dd>
|
|
||||||
|
|
||||||
<dt>Retry a Download</dt>
|
|
||||||
<dd>If for any reason a download does not complete, it is easy to attempt the
|
|
||||||
download again. To recover from a failed download and retry it, just use
|
|
||||||
the <em>Retry</em> link next to the file entry and &brandShortName; will
|
|
||||||
restart the download for you.</dd>
|
|
||||||
|
|
||||||
<dt>Show Download Folder</dt>
|
|
||||||
<dd>If you have set &brandShortName; to save all downloads to a folder in
|
|
||||||
<a href="#download_manager_options">Download Manager &pref.pluralCaps;</a>,
|
|
||||||
you can open this folder by clicking the <em>Folder Name</em> at the
|
|
||||||
bottom of the Download Manager window.</dd>
|
|
||||||
</dl>
|
|
||||||
|
|
||||||
<h2 id="download_manager_options">Download Manager &pref.pluralCaps;</h2>
|
|
||||||
|
|
||||||
<p>The &pref.plural; for the Download Manager are accessible by opening the
|
|
||||||
Downloads section of the <em>Main</em> panel in the &pref.pluralCaps; window.
|
|
||||||
They allow you to change several downloading &pref.plural;. More information
|
|
||||||
regarding the various &pref.plural; is available in the <a
|
|
||||||
href="prefs.xhtml#downloads">&pref.pluralCaps; page</a>.</p>
|
|
||||||
|
|
||||||
<div class="contentsBox"><em>12 September 2006</em></div>
|
|
||||||
<p>Copyright © ©right.years; Contributors to the Mozilla Help Viewer Project.</p>
|
|
||||||
|
|
||||||
</body>
|
|
||||||
</html>
|
|
@ -1,491 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
|
|
||||||
<!DOCTYPE rdf:RDF [
|
|
||||||
<!ENTITY % brandDTD SYSTEM "chrome://branding/locale/brand.dtd">
|
|
||||||
%brandDTD;
|
|
||||||
]>
|
|
||||||
|
|
||||||
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
|
||||||
xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
|
||||||
xmlns:nc="http://home.netscape.com/NC-rdf#">
|
|
||||||
|
|
||||||
<rdf:Description about="urn:root">
|
|
||||||
<nc:subheadings>
|
|
||||||
<rdf:Seq>
|
|
||||||
<rdf:li> <rdf:Description ID="firefox-help" nc:name="Welcome to &brandFullName; Help" nc:link="firefox_welcome.xhtml"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="using-firebird" nc:name="Using &brandFullName;" nc:link="using_firebird.xhtml"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="using-download-manager" nc:name="Using the Download Manager" nc:link="download_manager.xhtml"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="customize-firebird" nc:name="Customization" nc:link="customization.xhtml"/> </rdf:li>
|
|
||||||
<rdf:li>
|
|
||||||
<rdf:Description ID="prefs-win" nc:name="Options" nc:link="prefs.xhtml" nc:platform="win os2">
|
|
||||||
<nc:subheadings rdf:resource="#prefs-tree"/>
|
|
||||||
</rdf:Description>
|
|
||||||
</rdf:li>
|
|
||||||
<rdf:li>
|
|
||||||
<rdf:Description ID="prefs-unix" nc:name="Preferences" nc:link="prefs.xhtml" nc:platform="unix mac">
|
|
||||||
<nc:subheadings rdf:resource="#prefs-tree"/>
|
|
||||||
</rdf:Description>
|
|
||||||
</rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="popup-blocker" nc:name="Controlling Pop-ups" nc:link="popup.xhtml"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="cookies" nc:name="Managing Cookies" nc:link="cookies.xhtml"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="tabbed-browsing" nc:name="Tabbed Browsing" nc:link="tabbed_browsing.xhtml"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="firebird-keyboard-shortcuts" nc:name="Keyboard Shortcuts" nc:link="shortcuts.xhtml"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="firebird-mouse-shortcuts" nc:name="Mouse Shortcuts" nc:link="mouse_shortcuts.xhtml"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="a11y" nc:name="Accessibility Features" nc:link="accessibility.xhtml"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu" nc:name="Menu Reference" nc:link="menu_reference.xhtml"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="ieusers" nc:name="Help for Internet Explorer Users" nc:link="forieusers.xhtml"/> </rdf:li>
|
|
||||||
</rdf:Seq>
|
|
||||||
</nc:subheadings>
|
|
||||||
</rdf:Description>
|
|
||||||
|
|
||||||
<rdf:Description about="#using-firebird">
|
|
||||||
<nc:subheadings>
|
|
||||||
<rdf:Seq>
|
|
||||||
<rdf:li> <rdf:Description ID="using-firebird-navigating-web-pages" nc:name="Navigating Web Pages" nc:link="using_firebird.xhtml#navigating_web_pages"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="using-firebird-searching" nc:name="Searching" nc:link="using_firebird.xhtml#searching"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="using-firebird-copying-saving-and-printing-pages" nc:name="Copying, Saving, and Printing Pages" nc:link="using_firebird.xhtml#copying_saving_and_printing_pages"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="using-firebird-improving-speed-and-efficiency" nc:name="Improving Speed and Efficiency" nc:link="using_firebird.xhtml#improving_speed_and_efficiency"/> </rdf:li>
|
|
||||||
</rdf:Seq>
|
|
||||||
</nc:subheadings>
|
|
||||||
</rdf:Description>
|
|
||||||
|
|
||||||
<rdf:Description about="#using-download-manager">
|
|
||||||
<nc:subheadings>
|
|
||||||
<rdf:Seq>
|
|
||||||
<rdf:li> <rdf:Description ID="using-download-manager-whatis" nc:name="What is the Download Manager?" nc:link="download_manager.xhtml#what_is_download_manager"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="using-download-manager-can-i-do" nc:name="What can I do with the Download Manager?" nc:link="download_manager.xhtml#do_with_download_manager"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="using-download-manager-prefs-win" nc:name="Download Manager Options" nc:link="download_manager.xhtml#download_manager_options" nc:platform="win os2"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="using-download-manager-prefs-unix" nc:name="Download Manager Preferences" nc:link="download_manager.xhtml#download_manager_options" nc:platform="unix mac"/> </rdf:li>
|
|
||||||
</rdf:Seq>
|
|
||||||
</nc:subheadings>
|
|
||||||
</rdf:Description>
|
|
||||||
|
|
||||||
<rdf:Description about="#using-firebird-navigating-web-pages">
|
|
||||||
<nc:subheadings>
|
|
||||||
<rdf:Seq>
|
|
||||||
<rdf:li><rdf:Description ID="using-firebird-viewing-your-home-page" nc:name="Viewing your Home Page" nc:link="using_firebird.xhtml#viewing_your_home_page"/> </rdf:li>
|
|
||||||
<rdf:li><rdf:Description ID="using-firebird-moving-to-another-page" nc:name="Moving to Another Page" nc:link="using_firebird.xhtml#moving_to_another_page"/> </rdf:li>
|
|
||||||
<rdf:li><rdf:Description ID="using-firebird-clicking-a-link" nc:name="Clicking a Link" nc:link="using_firebird.xhtml#clicking_a_link"/> </rdf:li>
|
|
||||||
<rdf:li><rdf:Description ID="using-firebird-retracing-your-steps" nc:name="Retracing Your Steps" nc:link="using_firebird.xhtml#retracing_your_steps"/> </rdf:li>
|
|
||||||
<rdf:li><rdf:Description ID="using-firebird-stopping-and-reloading" nc:name="Stopping and Reloading" nc:link="using_firebird.xhtml#stopping_and_reloading"/> </rdf:li>
|
|
||||||
<rdf:li><rdf:Description ID="using-firebird-tabbed-browsing" nc:name="Tabbed Browsing" nc:link="tabbed_browsing.xhtml"/> </rdf:li>
|
|
||||||
<rdf:li><rdf:Description ID="using-firebird-sidebar" nc:name="Using the Sidebar" nc:link="using_firebird.xhtml#using_the_sidebar"/> </rdf:li>
|
|
||||||
</rdf:Seq>
|
|
||||||
</nc:subheadings>
|
|
||||||
</rdf:Description>
|
|
||||||
|
|
||||||
<rdf:Description about="#using-firebird-searching">
|
|
||||||
<nc:subheadings>
|
|
||||||
<rdf:Seq>
|
|
||||||
<rdf:li><rdf:Description ID="use-firebird-searching-the-web" nc:name="Searching the Web" nc:link="using_firebird.xhtml#searching_the_web"/> </rdf:li>
|
|
||||||
<rdf:li><rdf:Description ID="use-firebird-searching-on-selected-words-in-a-web-page" nc:name="Searching the Web for Words Selected in a Web Page" nc:link="using_firebird.xhtml#searching_on_selected_words_in_a_web_page"/> </rdf:li>
|
|
||||||
<rdf:li><rdf:Description ID="use-firebird-searching-within-a-page" nc:name="Searching Within a Page" nc:link="using_firebird.xhtml#searching_within_a_page"/> </rdf:li>
|
|
||||||
</rdf:Seq>
|
|
||||||
</nc:subheadings>
|
|
||||||
</rdf:Description>
|
|
||||||
|
|
||||||
<rdf:Description about="#using-firebird-copying-saving-and-printing-pages">
|
|
||||||
<nc:subheadings>
|
|
||||||
<rdf:Seq>
|
|
||||||
<rdf:li><rdf:Description ID="using-firebird-copying-part-of-a-page" nc:name="Copying Part of a Page" nc:link="using_firebird.xhtml#copying_part_of_a_page"/> </rdf:li>
|
|
||||||
<rdf:li><rdf:Description ID="using-firebird-saving-all-or-part-of-a-page" nc:name="Saving a Page" nc:link="using_firebird.xhtml#saving_all_or_part_of_a_page"/> </rdf:li>
|
|
||||||
<rdf:li><rdf:Description ID="using-firebird-printing-a-page" nc:name="Printing a Page" nc:link="using_firebird.xhtml#printing_a_page"/> </rdf:li>
|
|
||||||
<rdf:li><rdf:Description ID="using-firebird-using-print-preview" nc:name="Using Print Preview" nc:link="using_firebird.xhtml#using_print_preview" nc:platform="win unix os2"/> </rdf:li>
|
|
||||||
<rdf:li><rdf:Description ID="using-firebird-using-page-setup" nc:name="Using Page Setup" nc:link="using_firebird.xhtml#using_page_setup"/> </rdf:li>
|
|
||||||
</rdf:Seq>
|
|
||||||
</nc:subheadings>
|
|
||||||
</rdf:Description>
|
|
||||||
|
|
||||||
<rdf:Description about="#using-firebird-improving-speed-and-efficiency">
|
|
||||||
<nc:subheadings>
|
|
||||||
<rdf:Seq>
|
|
||||||
<rdf:li> <rdf:Description ID="using-firebird-managing-different-file-types" nc:name="Managing Different File Types" nc:link="using_firebird.xhtml#managing_different_file_types"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="using-firebird-making-firebird-default-browser" nc:name="Make Default Browser" nc:link="using_firebird.xhtml#making_firebird_your_default_browser"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="using-firebird-cache-prefs-win" nc:name="Cache Options" nc:link="using_firebird.xhtml#changing_cache_settings" nc:platform="win os2"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="using-firebird-cache-prefs-unix" nc:name="Cache Preferences" nc:link="using_firebird.xhtml#changing_cache_settings" nc:platform="mac unix"/> </rdf:li>
|
|
||||||
</rdf:Seq>
|
|
||||||
</nc:subheadings>
|
|
||||||
</rdf:Description>
|
|
||||||
|
|
||||||
<rdf:Description about="#customize-firebird">
|
|
||||||
<nc:subheadings>
|
|
||||||
<rdf:Seq>
|
|
||||||
<rdf:li> <rdf:Description ID="customize-toolbars" nc:name="Toolbars" nc:link="customization.xhtml#toolbars"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="add-ons" nc:name="Add-ons (extensions and themes)" nc:link="customization.xhtml#add_ons"/> </rdf:li>
|
|
||||||
</rdf:Seq>
|
|
||||||
</nc:subheadings>
|
|
||||||
</rdf:Description>
|
|
||||||
|
|
||||||
<rdf:Description about="#customize-toolbars">
|
|
||||||
<nc:subheadings>
|
|
||||||
<rdf:Seq>
|
|
||||||
<rdf:li> <rdf:Description ID="customize-toolbar-rearrange" nc:name="Rearranging Toolbar Items" nc:link="customization.xhtml#rearranging_toolbar_items"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="customize-toolbars-adding" nc:name="Hiding, Adding, and Removing Toolbars" nc:link="customization.xhtml#adding_removing_toolbars"/> </rdf:li>
|
|
||||||
</rdf:Seq>
|
|
||||||
</nc:subheadings>
|
|
||||||
</rdf:Description>
|
|
||||||
|
|
||||||
<rdf:Description about="#add-ons">
|
|
||||||
<nc:subheadings>
|
|
||||||
<rdf:Seq>
|
|
||||||
<rdf:li> <rdf:Description ID="add-ons-installing" nc:name="Getting and Installing Add-ons" nc:link="customization.xhtml#add_ons_installing"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="add-ons-manager" nc:name="Using the Add-ons manager" nc:link="customization.xhtml#add_ons_manager"/> </rdf:li>
|
|
||||||
</rdf:Seq>
|
|
||||||
</nc:subheadings>
|
|
||||||
</rdf:Description>
|
|
||||||
|
|
||||||
<rdf:Description about="#popup-blocker">
|
|
||||||
<nc:subheadings>
|
|
||||||
<rdf:Seq>
|
|
||||||
<rdf:li> <rdf:Description ID="popup-blocker-what-are-popups" nc:name="What are Pop-ups?" nc:link="popup.xhtml#what_are_popups"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="popup-blocker-prefs-win" nc:name="Pop-up Blocker Options" nc:link="popup.xhtml#popup_blocker_preferences" nc:platform="win os2"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="popup-blocker-prefs-unix" nc:name="Pop-up Blocker Preferences" nc:link="popup.xhtml#popup_blocker_preferences" nc:platform="unix mac"/> </rdf:li>
|
|
||||||
</rdf:Seq>
|
|
||||||
</nc:subheadings>
|
|
||||||
</rdf:Description>
|
|
||||||
|
|
||||||
<rdf:Description about="#cookies">
|
|
||||||
<nc:subheadings>
|
|
||||||
<rdf:Seq>
|
|
||||||
<rdf:li><rdf:Description ID="cookies-what-is-a-cookie" nc:name="What is a Cookie?" nc:link="cookies.xhtml#what_is_a_cookie"/> </rdf:li>
|
|
||||||
<rdf:li><rdf:Description ID="cookies-setting-up-cookie-rules" nc:name="Setting Up Cookie Rules" nc:link="cookies.xhtml#setting_up_cookie_rules"/> </rdf:li>
|
|
||||||
<rdf:li><rdf:Description ID="cookies-all-the-settings" nc:name="Cookie Settings" nc:link="cookies.xhtml#all_the_settings"/> </rdf:li>
|
|
||||||
<rdf:li><rdf:Description ID="cookies-accepting-and-blocking-cookies" nc:name="Accepting and Blocking Cookies" nc:link="cookies.xhtml#accepting_and_blocking_cookies"/> </rdf:li>
|
|
||||||
<rdf:li><rdf:Description ID="cookies-exceptions" nc:name="The Cookies Exceptions Window" nc:link="cookies.xhtml#cookies_exceptions"/> </rdf:li>
|
|
||||||
<rdf:li><rdf:Description ID="cookies-view" nc:name="The View Cookies Window" nc:link="cookies.xhtml#view_cookies"/> </rdf:li>
|
|
||||||
</rdf:Seq>
|
|
||||||
</nc:subheadings>
|
|
||||||
</rdf:Description>
|
|
||||||
|
|
||||||
<rdf:Description about="#tabbed-browsing">
|
|
||||||
<nc:subheadings>
|
|
||||||
<rdf:Seq>
|
|
||||||
<rdf:li> <rdf:Description ID="tabbed-browsing-creating-loading-tabs" nc:name="Creating and Loading Tabs" nc:link="tabbed_browsing.xhtml#creating_loading_tabs"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="tabbed-browsing-moving-tabs" nc:name="Moving Tabs Within a Window" nc:link="tabbed_browsing.xhtml#moving_tabs"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="tabbed-browsing-closing-tabs" nc:name="Closing and Restoring Tabs" nc:link="tabbed_browsing.xhtml#closing_tabs"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="tabbed-browsing-customizing" nc:name="Customizing Tabbed Browsing" nc:link="tabbed_browsing.xhtml#customizing"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="tabbed-browsing-tips-tricks" nc:name="Tips and Tricks" nc:link="tabbed_browsing.xhtml#tips_tricks"/> </rdf:li>
|
|
||||||
</rdf:Seq>
|
|
||||||
</nc:subheadings>
|
|
||||||
</rdf:Description>
|
|
||||||
|
|
||||||
<rdf:Description about="#a11y">
|
|
||||||
<nc:subheadings>
|
|
||||||
<rdf:Seq>
|
|
||||||
<rdf:li> <rdf:Description ID="a11y-keyboard-navigation" nc:name="Using a Keyboard" nc:link="accessibility.xhtml#using_a_keyboard"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="a11y-mouse-navigation" nc:name="Using a Mouse" nc:link="accessibility.xhtml#using_a_mouse"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="a11y-fonts-and-colors" nc:name="Fonts and Colors" nc:link="accessibility.xhtml#fonts_and_colors"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="a11y-web-content" nc:name="Controlling Web Content" nc:link="accessibility.xhtml#controlling_web_content"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="a11y-compatibility" nc:name="Compatibility with Assistive Technologies" nc:link="accessibility.xhtml#compatibility_with_assistive_technologies"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="a11y-online" nc:name="Finding Help Online" nc:link="accessibility.xhtml#finding_help_online"/> </rdf:li>
|
|
||||||
</rdf:Seq>
|
|
||||||
</nc:subheadings>
|
|
||||||
</rdf:Description>
|
|
||||||
|
|
||||||
<rdf:Description about="#a11y-keyboard-navigation">
|
|
||||||
<nc:subheadings>
|
|
||||||
<rdf:Seq>
|
|
||||||
<rdf:li> <rdf:Description ID="a11y-keyboard-shortcuts" nc:name="Keyboard Shortcuts" nc:link="accessibility.xhtml#keyboard_shortcuts"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="a11y-caret-browsing" nc:name="Always Use the Cursor Keys to Navigate Within Webpages" nc:link="accessibility.xhtml#always_use_cursor_keys"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="a11y-typeahead-find" nc:name="Search for Text When I Start Typing" nc:link="accessibility.xhtml#find_as_you_type"/> </rdf:li>
|
|
||||||
</rdf:Seq>
|
|
||||||
</nc:subheadings>
|
|
||||||
</rdf:Description>
|
|
||||||
|
|
||||||
<rdf:Description about="#a11y-mouse-navigation">
|
|
||||||
<nc:subheadings>
|
|
||||||
<rdf:Seq>
|
|
||||||
<rdf:li> <rdf:Description ID="a11y-mouse-shortcuts" nc:name="Common Mouse Shortcuts" nc:link="accessibility.xhtml#common_mouse_shortcuts"/> </rdf:li>
|
|
||||||
</rdf:Seq>
|
|
||||||
</nc:subheadings>
|
|
||||||
</rdf:Description>
|
|
||||||
|
|
||||||
<rdf:Description about="#a11y-fonts-and-colors">
|
|
||||||
<nc:subheadings>
|
|
||||||
<rdf:Seq>
|
|
||||||
<rdf:li> <rdf:Description ID="a11y-override-fonts" nc:name="Overriding Page Fonts" nc:link="accessibility.xhtml#overriding_page_fonts"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="a11y-minimum-font-size" nc:name="Setting a Minimum Font Size" nc:link="accessibility.xhtml#setting_a_minimum_font_size"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="a11y-text-zoom" nc:name="Resizing Page Text" nc:link="accessibility.xhtml#resizing_page_text"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="a11y-override-colors" nc:name="Overriding Page Colors" nc:link="accessibility.xhtml#overriding_page_colors"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="a11y-high-contrast" nc:name="Using a High Contrast Theme" nc:link="accessibility.xhtml#using_a_high_contrast_theme" nc:platform="win unix"/> </rdf:li>
|
|
||||||
</rdf:Seq>
|
|
||||||
</nc:subheadings>
|
|
||||||
</rdf:Description>
|
|
||||||
|
|
||||||
<rdf:Description about="#a11y-web-content">
|
|
||||||
<nc:subheadings>
|
|
||||||
<rdf:Seq>
|
|
||||||
<rdf:li> <rdf:Description ID="a11y-popup-windows" nc:name="Blocking Pop-up Windows" nc:link="accessibility.xhtml#blocking_popup_windows"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="a11y-java" nc:name="Turning Off Java Applets" nc:link="accessibility.xhtml#turning_off_java_applets"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="a11y-javascript" nc:name="Restricting JavaScript Behavior" nc:link="accessibility.xhtml#restricting_javascript_behavior"/> </rdf:li>
|
|
||||||
</rdf:Seq>
|
|
||||||
</nc:subheadings>
|
|
||||||
</rdf:Description>
|
|
||||||
|
|
||||||
<rdf:Description about="#menu">
|
|
||||||
<nc:subheadings>
|
|
||||||
<rdf:Seq>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-firefox" nc:name="&brandShortName;" nc:link="menu_reference.xhtml#firefox" nc:platform="mac"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-file" nc:name="File" nc:link="menu_reference.xhtml#file"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-edit" nc:name="Edit" nc:link="menu_reference.xhtml#edit"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-view" nc:name="View" nc:link="menu_reference.xhtml#view"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-go" nc:name="History" nc:link="menu_reference.xhtml#go"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-bookmarks" nc:name="Bookmarks" nc:link="menu_reference.xhtml#bookmarks"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-tools" nc:name="Tools" nc:link="menu_reference.xhtml#tools"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-window" nc:name="Window" nc:link="menu_reference.xhtml#window" nc:platform="mac"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-help" nc:name="Help" nc:link="menu_reference.xhtml#help"/> </rdf:li>
|
|
||||||
</rdf:Seq>
|
|
||||||
</nc:subheadings>
|
|
||||||
</rdf:Description>
|
|
||||||
|
|
||||||
<rdf:Description about="#menu-firefox">
|
|
||||||
<nc:subheadings>
|
|
||||||
<rdf:Seq>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-firefox-about" nc:name="About &brandFullName;" nc:link="menu_reference.xhtml#about_mac"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-firefox-preferences" nc:name="Preferences…" nc:link="menu_reference.xhtml#prefs_mac"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-firefox-quit" nc:name="Quit &brandShortName;" nc:link="menu_reference.xhtml#quit_mac"/> </rdf:li>
|
|
||||||
</rdf:Seq>
|
|
||||||
</nc:subheadings>
|
|
||||||
</rdf:Description>
|
|
||||||
|
|
||||||
<rdf:Description about="#menu-file">
|
|
||||||
<nc:subheadings>
|
|
||||||
<rdf:Seq>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-file-new-window" nc:name="New Window" nc:link="menu_reference.xhtml#new_window"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-file-new-tab" nc:name="New Tab" nc:link="menu_reference.xhtml#new_tab"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-file-open-location" nc:name="Open Location…" nc:link="menu_reference.xhtml#open_location"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-file-open-file" nc:name="Open File…" nc:link="menu_reference.xhtml#open_file"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-file-close" nc:name="Close (Window)" nc:link="menu_reference.xhtml#close"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-file-close-tab" nc:name="Close Tab" nc:link="menu_reference.xhtml#close_tab"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-file-save-page-as" nc:name="Save Page As…" nc:link="menu_reference.xhtml#save_page_as"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-file-send-page" nc:name="Send Link…" nc:link="menu_reference.xhtml#send_page"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-file-page-setup" nc:name="Page Setup…" nc:link="menu_reference.xhtml#page_setup"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-file-print-preview" nc:name="Print Preview" nc:link="menu_reference.xhtml#print_preview" nc:platform="win unix os2"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-file-print" nc:name="Print…" nc:link="menu_reference.xhtml#print"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-file-import" nc:name="Import…" nc:link="menu_reference.xhtml#import"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-file-work-offline" nc:name="Work Offline" nc:link="menu_reference.xhtml#work_offline"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-file-exit-win" nc:name="Exit" nc:link="menu_reference.xhtml#exit" nc:platform="win os2"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-file-exit-unix" nc:name="Quit" nc:link="menu_reference.xhtml#exit" nc:platform="unix"/> </rdf:li>
|
|
||||||
</rdf:Seq>
|
|
||||||
</nc:subheadings>
|
|
||||||
</rdf:Description>
|
|
||||||
|
|
||||||
<rdf:Description about="#menu-edit">
|
|
||||||
<nc:subheadings>
|
|
||||||
<rdf:Seq>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-view-undo" nc:name="Undo" nc:link="menu_reference.xhtml#undo"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-view-redo" nc:name="Redo" nc:link="menu_reference.xhtml#redo"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-view-cut" nc:name="Cut" nc:link="menu_reference.xhtml#cut"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-view-copy" nc:name="Copy" nc:link="menu_reference.xhtml#copy"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-view-paste" nc:name="Paste" nc:link="menu_reference.xhtml#paste"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-view-delete" nc:name="Delete" nc:link="menu_reference.xhtml#delete"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-view-select-all" nc:name="Select All" nc:link="menu_reference.xhtml#select_all"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-view-find-in-this-page" nc:name="Find in This Page…" nc:link="menu_reference.xhtml#find_in_this_page"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-view-find-again" nc:name="Find Again" nc:link="menu_reference.xhtml#find_again"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-view-preferences" nc:name="Preferences" nc:link="menu_reference.xhtml#prefs" nc:platform="unix"/> </rdf:li>
|
|
||||||
</rdf:Seq>
|
|
||||||
</nc:subheadings>
|
|
||||||
</rdf:Description>
|
|
||||||
|
|
||||||
<rdf:Description about="#menu-view">
|
|
||||||
<nc:subheadings>
|
|
||||||
<rdf:Seq>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-view-toolbars" nc:name="Toolbars" nc:link="menu_reference.xhtml#toolbars"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-view-status-bar" nc:name="Status Bar" nc:link="menu_reference.xhtml#status_bar"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-view-sidebar" nc:name="Sidebar" nc:link="menu_reference.xhtml#sidebar"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-view-stop" nc:name="Stop" nc:link="menu_reference.xhtml#stop"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-view-reload" nc:name="Reload" nc:link="menu_reference.xhtml#reload"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-view-text-size" nc:name="Text Size" nc:link="menu_reference.xhtml#text_size"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-view-page-style" nc:name="Page Style" nc:link="menu_reference.xhtml#page_style"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-view-character-encoding" nc:name="Character Encoding" nc:link="menu_reference.xhtml#character_encoding"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-view-page-source" nc:name="Page Source" nc:link="menu_reference.xhtml#page_source"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-view-full-screen" nc:name="Full Screen" nc:link="menu_reference.xhtml#full_screen" nc:platform="win unix os2"/> </rdf:li>
|
|
||||||
</rdf:Seq>
|
|
||||||
</nc:subheadings>
|
|
||||||
</rdf:Description>
|
|
||||||
|
|
||||||
<rdf:Description about="#menu-view-toolbars">
|
|
||||||
<nc:subheadings>
|
|
||||||
<rdf:Seq>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-view-toolbars-navigation" nc:name="Navigation Toolbar" nc:link="menu_reference.xhtml#navigation_toolbar"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-view-toolbars-bookmarks" nc:name="Bookmarks Toolbar" nc:link="menu_reference.xhtml#bookmarks_toolbar"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-view-toolbars-customize" nc:name="Customize" nc:link="menu_reference.xhtml#customize"/> </rdf:li>
|
|
||||||
</rdf:Seq>
|
|
||||||
</nc:subheadings>
|
|
||||||
</rdf:Description>
|
|
||||||
|
|
||||||
<rdf:Description about="#menu-view-sidebar">
|
|
||||||
<nc:subheadings>
|
|
||||||
<rdf:Seq>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-view-sidebar-bookmarks" nc:name="Bookmarks" nc:link="menu_reference.xhtml#view_sidebar_bookmarks"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-view-sidebar-history" nc:name="History" nc:link="menu_reference.xhtml#view_sidebar_history"/> </rdf:li>
|
|
||||||
</rdf:Seq>
|
|
||||||
</nc:subheadings>
|
|
||||||
</rdf:Description>
|
|
||||||
|
|
||||||
<rdf:Description about="#menu-view-text-size">
|
|
||||||
<nc:subheadings>
|
|
||||||
<rdf:Seq>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-view-text-size-increase" nc:name="Increase" nc:link="menu_reference.xhtml#increase_text_size"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-view-text-size-decrease" nc:name="Decrease" nc:link="menu_reference.xhtml#decrease_text_size"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-view-text-size-reset" nc:name="Normal" nc:link="menu_reference.xhtml#reset_text_size"/> </rdf:li>
|
|
||||||
</rdf:Seq>
|
|
||||||
</nc:subheadings>
|
|
||||||
</rdf:Description>
|
|
||||||
|
|
||||||
<rdf:Description about="#menu-view-page-style">
|
|
||||||
<nc:subheadings>
|
|
||||||
<rdf:Seq>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-view-page-style-no-style" nc:name="No Style" nc:link="menu_reference.xhtml#no_style"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-view-page-style-basic-page-style" nc:name="Basic Page Style" nc:link="menu_reference.xhtml#basic_page_style"/> </rdf:li>
|
|
||||||
</rdf:Seq>
|
|
||||||
</nc:subheadings>
|
|
||||||
</rdf:Description>
|
|
||||||
|
|
||||||
<rdf:Description about="#menu-go">
|
|
||||||
<nc:subheadings>
|
|
||||||
<rdf:Seq>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-go-back" nc:name="Back" nc:link="menu_reference.xhtml#back"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-go-forward" nc:name="Forward" nc:link="menu_reference.xhtml#forward"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-go-home" nc:name="Home" nc:link="menu_reference.xhtml#home"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-go-closed-tabs" nc:name="Recently Closed Tabs" nc:link="menu_reference.xhtml#closed_tabs"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-go-history" nc:name="Show in Sidebar" nc:link="menu_reference.xhtml#go_history"/> </rdf:li>
|
|
||||||
</rdf:Seq>
|
|
||||||
</nc:subheadings>
|
|
||||||
</rdf:Description>
|
|
||||||
|
|
||||||
<rdf:Description about="#menu-bookmarks">
|
|
||||||
<nc:subheadings>
|
|
||||||
<rdf:Seq>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-bookmarks-add-to-bookmarks" nc:name="Bookmark This Page" nc:link="menu_reference.xhtml#add_to_bookmarks"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-bookmarks-subscribe" nc:name="Subscribe to This Page…" nc:link="menu_reference.xhtml#subscribe"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-bookmarks-bookmark-all-tabs" nc:name="Bookmark All Tabs…" nc:link="menu_reference.xhtml#bookmark_all_tabs"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-bookmarks-organize-bookmarks" nc:name="Organize Bookmarks…" nc:link="menu_reference.xhtml#organize_bookmarks"/> </rdf:li>
|
|
||||||
</rdf:Seq>
|
|
||||||
</nc:subheadings>
|
|
||||||
</rdf:Description>
|
|
||||||
|
|
||||||
<rdf:Description about="#menu-tools">
|
|
||||||
<nc:subheadings>
|
|
||||||
<rdf:Seq>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-tools-web-search" nc:name="Web Search" nc:link="menu_reference.xhtml#web_search"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-tools-downloads" nc:name="Downloads" nc:link="menu_reference.xhtml#downloads"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-tools-add-ons" nc:name="Add-ons" nc:link="menu_reference.xhtml#add_ons"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-tools-javascript-console" nc:name="Error Console" nc:link="menu_reference.xhtml#javascript_console"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-tools-page-info" nc:name="Page Info" nc:link="menu_reference.xhtml#page_info"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-tools-clear-private-data" nc:name="Clear Private Data…" nc:link="menu_reference.xhtml#clear_private_data"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-tools-options" nc:name="Options" nc:link="menu_reference.xhtml#options" nc:platform="win os2"/> </rdf:li>
|
|
||||||
</rdf:Seq>
|
|
||||||
</nc:subheadings>
|
|
||||||
</rdf:Description>
|
|
||||||
|
|
||||||
<rdf:Description about="#menu-window">
|
|
||||||
<nc:subheadings>
|
|
||||||
<rdf:Seq>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-window-minimize" nc:name="Minimize" nc:link="menu_reference.xhtml#minimize"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-window-zoom" nc:name="Zoom" nc:link="menu_reference.xhtml#zoom"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-window-open-windows" nc:name="(Open Windows)" nc:link="menu_reference.xhtml#open-windows"/> </rdf:li>
|
|
||||||
</rdf:Seq>
|
|
||||||
</nc:subheadings>
|
|
||||||
</rdf:Description>
|
|
||||||
|
|
||||||
<rdf:Description about="#menu-help">
|
|
||||||
<nc:subheadings>
|
|
||||||
<rdf:Seq>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-help-help-contents" nc:name="Help Contents" nc:link="menu_reference.xhtml#help_contents" nc:platform="win unix os2"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-help-help-contents-mac" nc:name="&brandShortName; Help" nc:link="menu_reference.xhtml#help_contents" nc:platform="mac"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-help-for-ie-users" nc:name="For Internet Explorer Users" nc:link="menu_reference.xhtml#for_ie_users" nc:platform="win"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-help-relnotes" nc:name="Release Notes" nc:link="menu_reference.xhtml#relnotes"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-help-report-broken-web-site" nc:name="Report Broken Web Site…" nc:link="menu_reference.xhtml#reporter"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-help-report-web-forgery" nc:name="Report Web Forgery…" nc:link="menu_reference.xhtml#web_forgery"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-help-check-for-updates" nc:name="Check for Updates…" nc:link="menu_reference.xhtml#check_for_updates"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="menu-help-about-mozilla-firebird" nc:name="About &brandFullName;" nc:link="menu_reference.xhtml#about_mozilla_firebird" nc:platform="win unix os2"/> </rdf:li>
|
|
||||||
</rdf:Seq>
|
|
||||||
</nc:subheadings>
|
|
||||||
</rdf:Description>
|
|
||||||
|
|
||||||
<rdf:Description about="#ieusers">
|
|
||||||
<nc:subheadings>
|
|
||||||
<rdf:Seq>
|
|
||||||
<rdf:li> <rdf:Description ID="ieusers-firebird-ie-terminology-differences" nc:name="Terminology Differences" nc:link="forieusers.xhtml#firebird_and_internet_explorer_terminology_differences"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="ieusers-about-your-ie-settings" nc:name="About Your IE Favorites and Settings" nc:link="forieusers.xhtml#about_your_ie_settings"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="ieusers-firebirds-features" nc:name="&brandFullName;'s Features" nc:link="forieusers.xhtml#firebirds_features"/> </rdf:li>
|
|
||||||
<rdf:li> <rdf:Description ID="ieusers-keyboard-shortcuts" nc:name="Keyboard Shortcuts" nc:link="forieusers.xhtml#keyboard_shortcuts"/> </rdf:li>
|
|
||||||
</rdf:Seq>
|
|
||||||
</nc:subheadings>
|
|
||||||
</rdf:Description>
|
|
||||||
|
|
||||||
<!-- The following nodes are intentionally linkable but not displayable -->
|
|
||||||
<Description rdf:ID="prefs-languages" nc:name="Languages" nc:link="prefs.xhtml#languages"/>
|
|
||||||
<Description rdf:ID="prefs-fonts-and-colors" nc:name="Fonts & Colors" nc:link="prefs.xhtml#fonts_and_colors"/>
|
|
||||||
<Description rdf:ID="prefs-connection-settings" nc:name="Connection Settings" nc:link="prefs.xhtml#connection_settings"/>
|
|
||||||
|
|
||||||
<!-- The following nodes are trees used multiple times in the hierarchy
|
|
||||||
(for platform-specific reasons). To display one of these trees,
|
|
||||||
include an nc:subheadings element with an rdf:ID attribute set to
|
|
||||||
"#" plus the value of the rdf:ID for the appropriate tree within
|
|
||||||
the appropriate rdf:Description element. -->
|
|
||||||
|
|
||||||
<Seq rdf:ID="prefs-tree">
|
|
||||||
<li><Description ID="prefs-main" nc:name="Main" nc:link="prefs.xhtml#main_options"/></li>
|
|
||||||
<li><Description ID="prefs-tabs" nc:name="Tabs" nc:link="prefs.xhtml#tabs_options"/></li>
|
|
||||||
<li><Description ID="prefs-content" nc:name="Content" nc:link="prefs.xhtml#content_options"/></li>
|
|
||||||
<li><Description ID="prefs-applications" nc:name="Applications" nc:link="prefs.xhtml#applications_options"/></li>
|
|
||||||
<li><Description ID="prefs-privacy" nc:name="Privacy" nc:link="prefs.xhtml#privacy_options"/></li>
|
|
||||||
<li><Description ID="prefs-security" nc:name="Security" nc:link="prefs.xhtml#security_options"/></li>
|
|
||||||
<li><Description ID="prefs-advanced" nc:name="Advanced" nc:link="prefs.xhtml#advanced_options"/></li>
|
|
||||||
</Seq>
|
|
||||||
|
|
||||||
<!-- The following are subnodes of trees used multiple times in the hierarchy. -->
|
|
||||||
|
|
||||||
<Description rdf:about="#prefs-main">
|
|
||||||
<nc:subheadings>
|
|
||||||
<Seq>
|
|
||||||
<li><Description rdf:ID="prefs-startup" nc:name="Startup" nc:link="prefs.xhtml#startup"/></li>
|
|
||||||
<li><Description rdf:ID="prefs-downloads" nc:name="Downloads" nc:link="prefs.xhtml#downloads"/></li>
|
|
||||||
<li><Description rdf:ID="prefs-system-defaults" nc:name="System Defaults" nc:link="prefs.xhtml#system_defaults"/></li>
|
|
||||||
<li><Description rdf:ID="prefs-addons" nc:name="Add-ons" nc:link="prefs.xhtml#addons"/></li>
|
|
||||||
</Seq>
|
|
||||||
</nc:subheadings>
|
|
||||||
</Description>
|
|
||||||
|
|
||||||
<Description rdf:about="#prefs-content">
|
|
||||||
<nc:subheadings>
|
|
||||||
<Seq>
|
|
||||||
<li><Description rdf:ID="prefs-advanced-javascript" nc:name="Advanced Javascript Settings" nc:link="prefs.xhtml#advanced_javascript"/></li>
|
|
||||||
<li><Description rdf:ID="prefs-fonts-and-colors" nc:name="Fonts and Colors" nc:link="prefs.xhtml#fonts_and_colors"/></li>
|
|
||||||
</Seq>
|
|
||||||
</nc:subheadings>
|
|
||||||
</Description>
|
|
||||||
|
|
||||||
<Description rdf:about="#prefs-privacy">
|
|
||||||
<nc:subheadings>
|
|
||||||
<rdf:Seq>
|
|
||||||
<li><Description rdf:ID="prefs-privacy-history" nc:name="History" nc:link="prefs.xhtml#privacy_history"/></li>
|
|
||||||
<li><Description rdf:ID="prefs-privacy-cookies" nc:name="Cookies" nc:link="prefs.xhtml#privacy_cookies"/></li>
|
|
||||||
<li><Description rdf:ID="prefs-clear-private-data" nc:name="Private Data" nc:link="prefs.xhtml#private_data"/></li>
|
|
||||||
</rdf:Seq>
|
|
||||||
</nc:subheadings>
|
|
||||||
</Description>
|
|
||||||
|
|
||||||
<Description rdf:about="#prefs-security">
|
|
||||||
<nc:subheadings>
|
|
||||||
<Seq>
|
|
||||||
<li><Description rdf:ID="prefs-passwords" nc:name="Passwords" nc:link="prefs.xhtml#security_passwords"/></li>
|
|
||||||
<li><Description rdf:ID="prefs-warning-messages" nc:name="Warning Messages" nc:link="prefs.xhtml#warning_messages"/></li>
|
|
||||||
</Seq>
|
|
||||||
</nc:subheadings>
|
|
||||||
</Description>
|
|
||||||
|
|
||||||
<Description rdf:about="#prefs-advanced">
|
|
||||||
<nc:subheadings>
|
|
||||||
<Seq>
|
|
||||||
<li><Description rdf:ID="prefs-advanced-general" nc:name="General" nc:link="prefs.xhtml#advanced_general"/></li>
|
|
||||||
<li><Description rdf:ID="prefs-advanced-network" nc:name="Network" nc:link="prefs.xhtml#advanced_network"/></li>
|
|
||||||
<li><Description rdf:ID="prefs-advanced-update" nc:name="Update" nc:link="prefs.xhtml#advanced_update"/></li>
|
|
||||||
<li><Description rdf:ID="prefs-advanced-encryption" nc:name="Encryption" nc:link="prefs.xhtml#advanced_encryption"/></li>
|
|
||||||
</Seq>
|
|
||||||
</nc:subheadings>
|
|
||||||
</Description>
|
|
||||||
|
|
||||||
</rdf:RDF>
|
|
@ -1,32 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
|
|
||||||
<!DOCTYPE window [
|
|
||||||
<!ENTITY % brandDTD SYSTEM "chrome://branding/locale/brand.dtd">
|
|
||||||
%brandDTD;
|
|
||||||
]>
|
|
||||||
|
|
||||||
<RDF xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
|
||||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
|
||||||
xmlns:nc="http://home.netscape.com/NC-rdf#">
|
|
||||||
|
|
||||||
<!-- MOZILLA MASTER HELP DOCUMENT -->
|
|
||||||
<Description rdf:about="urn:root"
|
|
||||||
nc:title="&brandFullName; Help"
|
|
||||||
nc:defaulttopic="firefox-help"
|
|
||||||
nc:base="chrome://browser/locale/help/">
|
|
||||||
<nc:panellist>
|
|
||||||
<Seq>
|
|
||||||
<li>
|
|
||||||
<Description nc:panelid="toc"
|
|
||||||
nc:datasources="chrome://help/locale/help-toc.rdf firebird-toc.rdf"/>
|
|
||||||
</li>
|
|
||||||
<li>
|
|
||||||
<Description nc:panelid="search"
|
|
||||||
nc:datasources="search-db.rdf"
|
|
||||||
nc:emptysearchtext="[No matching items found.]"
|
|
||||||
nc:emptysearchlink="chrome://help/locale/welcome.xhtml#search_tips"/>
|
|
||||||
</li>
|
|
||||||
</Seq>
|
|
||||||
</nc:panellist>
|
|
||||||
</Description>
|
|
||||||
</RDF>
|
|
@ -1,42 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"[
|
|
||||||
<!ENTITY % brandDTD SYSTEM "chrome://branding/locale/brand.dtd" >
|
|
||||||
<!ENTITY % regionDTD SYSTEM "chrome://global-region/locale/region.dtd" >
|
|
||||||
<!ENTITY % platformDTD SYSTEM "chrome://browser/locale/help/platformStrings.dtd" >
|
|
||||||
%brandDTD;
|
|
||||||
%regionDTD;
|
|
||||||
%platformDTD;
|
|
||||||
]>
|
|
||||||
<!--
|
|
||||||
Contributors:
|
|
||||||
R.J. Keller <rlk@trfenv.com> (original author)
|
|
||||||
Jeff Walden <jwalden+code@mit.edu>
|
|
||||||
Steffen Wilberg <steffen.wilberg@web.de>
|
|
||||||
-->
|
|
||||||
|
|
||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
||||||
<head>
|
|
||||||
<title>&brandFullName; Help</title>
|
|
||||||
<link rel="stylesheet" type="text/css" href="chrome://help/skin/helpFileLayout.css"/>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
|
|
||||||
<h1>Welcome to &brandFullName; Help</h1>
|
|
||||||
<p>To display information about &brandFullName; in this window, click topics in
|
|
||||||
the <em>Contents</em> sidebar. Click the <span class="noMac">plus icon</span>
|
|
||||||
<span class="mac">triangle</span> next to a topic to see its subtopics.</p>
|
|
||||||
|
|
||||||
<p>You can also use the <em>Search</em> bar to find specific
|
|
||||||
information within &brandShortName; Help. For more information on using
|
|
||||||
&brandFullName; Help, see <a href="chrome://help/locale/welcome.xhtml">Using
|
|
||||||
the Help Window</a>.</p>
|
|
||||||
|
|
||||||
<p>If you can't find what you need in built-in &brandShortName; Help, you can
|
|
||||||
find more help and support options online at <a
|
|
||||||
href="http://www.mozilla.org/support/firefox/" target="_blank">&brandShortName; Help</a>.</p>
|
|
||||||
|
|
||||||
<div class="contentsBox"><em>09 July 2005</em></div>
|
|
||||||
<p>Copyright © ©right.years; Contributors to the Mozilla Help Viewer Project.</p>
|
|
||||||
|
|
||||||
</body>
|
|
||||||
</html>
|
|
@ -1,115 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"[
|
|
||||||
<!ENTITY % brandDTD SYSTEM "chrome://branding/locale/brand.dtd" >
|
|
||||||
%brandDTD;
|
|
||||||
<!ENTITY % platformDTD SYSTEM "chrome://browser/locale/help/platformStrings.dtd" >
|
|
||||||
%platformDTD;
|
|
||||||
]>
|
|
||||||
|
|
||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
||||||
<head>
|
|
||||||
<title>For Internet Explorer Users</title>
|
|
||||||
<link rel="stylesheet" type="text/css" href="chrome://help/skin/helpFileLayout.css"/>
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body>
|
|
||||||
<h1>For Internet Explorer Users</h1>
|
|
||||||
|
|
||||||
<p>If you've been using Microsoft® Internet Explorer, you'll find that
|
|
||||||
it's easy to begin using &brandFullName;.</p>
|
|
||||||
<p><strong>Note:</strong> This information applies to &brandFullName; for Windows and
|
|
||||||
Mac OS.</p>
|
|
||||||
|
|
||||||
<div class="contentsBox">In this section:
|
|
||||||
<ul>
|
|
||||||
<li><a href="#firebird_and_internet_explorer_terminology_differences">
|
|
||||||
Terminology Differences</a></li>
|
|
||||||
<li><a href="#about_your_ie_settings">About Your IE Favorites and Settings</a></li>
|
|
||||||
<li><a href="#firebirds_features">&brandShortName;'s Features</a></li>
|
|
||||||
<li><a href="#keyboard_shortcuts">Keyboard Shortcuts</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<h2 id="firebird_and_internet_explorer_terminology_differences">Terminology
|
|
||||||
Differences</h2>
|
|
||||||
|
|
||||||
<table width="95%" border="1">
|
|
||||||
<thead>
|
|
||||||
<tr>
|
|
||||||
<th>Internet Explorer</th>
|
|
||||||
<th>&brandShortName;</th>
|
|
||||||
</tr>
|
|
||||||
</thead>
|
|
||||||
<tbody>
|
|
||||||
<tr class="noMac">
|
|
||||||
<td>Internet Options</td>
|
|
||||||
<td>&pref.pluralCaps;</td>
|
|
||||||
</tr>
|
|
||||||
<tr class="noMac">
|
|
||||||
<td>Temporary Internet Files</td>
|
|
||||||
<td>Cache</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Favorites</td>
|
|
||||||
<td>Bookmarks</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Address Bar</td>
|
|
||||||
<td>Location Bar</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Refresh</td>
|
|
||||||
<td>Reload</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><span class="noMac">Links Bar</span><span class="mac">Favorites Bar</span></td>
|
|
||||||
<td>Bookmarks Toolbar</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><span class="noMac">Copy Shortcut</span><span class="mac">Copy Link to Clipboard</span></td>
|
|
||||||
<td>Copy Link Location</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td><span class="noMac">Save Target As</span><span class="mac">Download Link to Disk</span></td>
|
|
||||||
<td>Save Link As</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
|
|
||||||
<h2 id="about_your_ie_settings">About Your IE Favorites and Settings</h2>
|
|
||||||
|
|
||||||
<p>When you first install &brandShortName;, it will import your existing
|
|
||||||
Internet Explorer settings, including your Favorites, cookies, stored
|
|
||||||
passwords, and a variety of other data. This saves you time customizing
|
|
||||||
&brandShortName; to fit your needs.</p>
|
|
||||||
|
|
||||||
<h2 id="firebirds_features">&brandShortName;'s Features</h2>
|
|
||||||
<ul>
|
|
||||||
<li><strong>Tabbed Browsing</strong>: Instead of opening a separate browser
|
|
||||||
window for each site you want to visit, you can open multiple sites within
|
|
||||||
the same window and tab between them. You can also set a group of tabs as
|
|
||||||
your home page. For more information see <a
|
|
||||||
href="tabbed_browsing.xhtml">Tabbed Browsing</a>.</li>
|
|
||||||
<li><strong>Pop-up Window Controls</strong>: Lets you allow or suppress both
|
|
||||||
pop-up and pop-under windows.</li>
|
|
||||||
<li><strong>Cookie Manager</strong>: Lets you change what &brandShortName; will
|
|
||||||
do when accepting cookies.</li>
|
|
||||||
<li><strong>Download Manager</strong>: Organizes your downloads by storing
|
|
||||||
them in a single window to minimize clutter. You have full access to
|
|
||||||
download statistics without using unnecessary multiple windows for each
|
|
||||||
download.</li>
|
|
||||||
<li><strong>Image Manager</strong>: Enables you to disable images from certain
|
|
||||||
web sites or disable them altogether. This is useful if you wish to decrease
|
|
||||||
the amount of time it takes for web sites to load.</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<h2 id="keyboard_shortcuts">Keyboard Shortcuts</h2>
|
|
||||||
<p>You will notice that Microsoft Internet Explorer and &brandShortName; share many of
|
|
||||||
the same shortcut keys. For a full list of shortcut keys, see the
|
|
||||||
<a href="shortcuts.xhtml">List of &brandShortName; Keyboard Shortcuts</a>.</p>
|
|
||||||
|
|
||||||
<div class="contentsBox"><em>10 December 2004</em></div>
|
|
||||||
<p>Copyright © ©right.years; Contributors to the Mozilla Help Viewer Project.</p>
|
|
||||||
|
|
||||||
</body>
|
|
||||||
</html>
|
|
@ -1,293 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"[
|
|
||||||
<!ENTITY % brandDTD SYSTEM "chrome://branding/locale/brand.dtd" >
|
|
||||||
%brandDTD;
|
|
||||||
<!ENTITY % platformDTD SYSTEM "chrome://browser/locale/help/platformStrings.dtd" >
|
|
||||||
%platformDTD;
|
|
||||||
]
|
|
||||||
>
|
|
||||||
|
|
||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
||||||
<head>
|
|
||||||
<title>Glossary</title>
|
|
||||||
<link rel="stylesheet" type="text/css" href="chrome://help/skin/helpFileLayout.css"/>
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body>
|
|
||||||
|
|
||||||
<p>This glossary is provided for your information only; it is not meant to be relied
|
|
||||||
upon as a complete or authoritative description of the terms defined below or of
|
|
||||||
the privacy and/or security ramifications of the technologies described.</p>
|
|
||||||
<hr/>
|
|
||||||
|
|
||||||
<h1 id="glossary">Glossary</h1>
|
|
||||||
|
|
||||||
<dl>
|
|
||||||
|
|
||||||
<dt id="authentication">authentication</dt>
|
|
||||||
<dd>The use of a password, certificate, personal identification number
|
|
||||||
(PIN), or other information to validate an identity over a computer
|
|
||||||
network.</dd>
|
|
||||||
|
|
||||||
<dt id="bookmark">bookmark</dt>
|
|
||||||
<dd>A stored web page address (<a href="#Uniform_Resource_Locator">URL</a>)
|
|
||||||
that you can go to easily by clicking a bookmark icon in the Bookmarks Toolbar
|
|
||||||
or choosing the bookmark's name from the Bookmarks menu.</dd>
|
|
||||||
|
|
||||||
<dt id="Bookmarks_Toolbar">Bookmarks Toolbar</dt>
|
|
||||||
<dd>The customizable toolbar that appears just below the Location Bar by
|
|
||||||
default in &brandShortName;. It contains buttons for your favorite bookmarks
|
|
||||||
(or folders containing groups of bookmarks) that you can add or remove.</dd>
|
|
||||||
|
|
||||||
<dt id="cache">cache</dt>
|
|
||||||
<dd>A collection of web page copies stored on your computer's hard disk or in
|
|
||||||
its random-access memory (RAM). &brandShortName; accumulates these copies as you
|
|
||||||
browse the Web. When you click a link or type a
|
|
||||||
<a href="#Uniform_Resource_Locator">URL</a> to fetch a particular web page for
|
|
||||||
which the cache already contains a copy, &brandShortName; compares the cached copy
|
|
||||||
to the original. If there have been no changes, &brandShortName; uses the cached
|
|
||||||
copy rather than refetching the original, saving processing and download time.</dd>
|
|
||||||
|
|
||||||
<dt id="certificate">certificate</dt>
|
|
||||||
<dd>The digital equivalent of an ID card. A certificate specifies the name of an
|
|
||||||
individual, company, or other entity and certifies that a public key, which
|
|
||||||
is included in the certificate, belongs to that entity. When you digitally
|
|
||||||
sign a message or other data, the digital signature for that message is
|
|
||||||
created with the aid of the private key that corresponds to the public key
|
|
||||||
in your certificate.</dd>
|
|
||||||
|
|
||||||
<dt id="client">client</dt>
|
|
||||||
<dd>Software (such as an Internet browser) that sends requests to and receives
|
|
||||||
information from a <a href="#server">server</a>, which is usually running
|
|
||||||
on a different computer. A computer on which client software runs is also
|
|
||||||
described as a client.</dd>
|
|
||||||
|
|
||||||
<dt id="cookie">cookie</dt>
|
|
||||||
<dd>A small bit of information stored on your computer by some web sites. When
|
|
||||||
you visit such a site, the site asks &brandShortName; to place one or more cookies
|
|
||||||
on your hard disk. Later, when you return to the site, &brandShortName; sends the
|
|
||||||
site the cookies that belong to it. Cookies help web sites keep track of
|
|
||||||
information about you, such as the contents of your shopping cart. You can set
|
|
||||||
your cookies options to control how cookies are used and how much information
|
|
||||||
you are willing to let web sites store on them.</dd>
|
|
||||||
|
|
||||||
<dt id="cryptography">cryptography</dt>
|
|
||||||
<dd>The art and practice of scrambling (encrypting) and unscrambling (decrypting)
|
|
||||||
information. For example, cryptographic techniques are used to scramble and unscramble
|
|
||||||
information flowing between commercial web sites and &brandShortName;.</dd>
|
|
||||||
|
|
||||||
<dt id="decryption">decryption</dt>
|
|
||||||
<dd>The process of unscrambling data that has been encrypted. See also
|
|
||||||
<a href="#encryption">encryption</a>.</dd>
|
|
||||||
|
|
||||||
<dt id="digital_ID">digital ID</dt>
|
|
||||||
<dd>See <a href="#certificate">certificate</a>.</dd>
|
|
||||||
|
|
||||||
<dt id="encryption">encryption</dt>
|
|
||||||
<dd>The process of scrambling information in a way that disguises its meaning.
|
|
||||||
For example, encrypted connections between computers make it very difficult
|
|
||||||
for third-parties to unscramble, or <em>decrypt,</em> information flowing
|
|
||||||
over the connection. Encrypted information can be decrypted only by someone
|
|
||||||
who possesses the appropriate key.</dd>
|
|
||||||
|
|
||||||
<dt id="XML">Extensible Markup Language (XML)</dt>
|
|
||||||
<dd>An open standard for describing data. Unlike HTML, XML allows the
|
|
||||||
developer of a web page to define special tags. For more information,
|
|
||||||
see the online W3C document <a href="http://www.w3.org/XML/">Extensible
|
|
||||||
Markup Language (XML)</a>.</dd>
|
|
||||||
|
|
||||||
<dt id="feed">feed</dt>
|
|
||||||
<dd>An <a href="#XML">XML</a> web page that contains a list of links to
|
|
||||||
other web pages. Special programs can read feeds to create a list
|
|
||||||
of headlines from the links, automatically updating the list as it changes.
|
|
||||||
News web sites use feeds to quickly publish the latest headlines, and
|
|
||||||
personal online journals often use feeds to quickly notify visitors about
|
|
||||||
new entries. See also <a href="#live_bookmark">Live Bookmark</a>.</dd>
|
|
||||||
|
|
||||||
<dt id="File_Transfer_Protocol">File Transfer Protocol (FTP)</dt>
|
|
||||||
<dd>A standard that allows users to transfer files from one computer to
|
|
||||||
another over a network. You can use &brandShortName; to fetch files
|
|
||||||
using FTP.</dd>
|
|
||||||
|
|
||||||
<dt id="FIPS_PUBS_140-1">FIPS PUBS 140-1</dt>
|
|
||||||
<dd>Federal Information Processing Standards Publications (FIPS PUBS) 140-1 is
|
|
||||||
a US government standard for implementations of cryptographic modules —
|
|
||||||
hardware or software that encrypts and decrypts data or performs other
|
|
||||||
cryptographic operations (such as creating or verifying digital signatures).
|
|
||||||
Many products sold to the US government must comply with one or more of the
|
|
||||||
FIPS standards.</dd>
|
|
||||||
|
|
||||||
<dt id="home_page">home page</dt>
|
|
||||||
<dd>The page &brandShortName; is set to display every time you launch it or when you
|
|
||||||
click the <em>Home</em> button. Also used to refer to the main page for a
|
|
||||||
web site from which you can explore the rest of the site.</dd>
|
|
||||||
|
|
||||||
<dt id="Hypertext_Markup_Language">Hypertext Markup Language (HTML)</dt>
|
|
||||||
<dd>The document format used for web pages. The HTML standard defines tags, or
|
|
||||||
codes, used to define the text layout, fonts, style, images, and other
|
|
||||||
elements that make up a web page.</dd>
|
|
||||||
|
|
||||||
<dt id="Internet">Internet</dt>
|
|
||||||
<dd>A worldwide network of millions of computers that communicate with each
|
|
||||||
other using standard protocols such as
|
|
||||||
<a href="#TCP_IP">TCP/IP</a>.
|
|
||||||
Originally developed for the US military in 1969, the Internet grew to include
|
|
||||||
educational and research institutions and, in the late 1990s, millions of
|
|
||||||
businesses, organizations, and individuals. Today the Internet is used for email,
|
|
||||||
browsing the <a href="#World_Wide_Web">World Wide Web</a>, instant messaging,
|
|
||||||
mailing lists and usegroups, and many other purposes.</dd>
|
|
||||||
|
|
||||||
<dt id="Internet_protocol_address">Internet protocol address (IP address)</dt>
|
|
||||||
<dd>The address of a computer on a
|
|
||||||
<a href="#TCP_IP">TCP/IP</a> network.
|
|
||||||
Every computer on the Internet has an IP address. <a href="#client">Clients</a>
|
|
||||||
have either a permanent IP address or one that is dynamically assigned to them
|
|
||||||
each time they connect with the network.</dd>
|
|
||||||
|
|
||||||
<dt id="Java">Java</dt>
|
|
||||||
<dd>A programming language developed by Sun Microsystems. A single Java program
|
|
||||||
can run on many different kinds of computers, thus avoiding the need for
|
|
||||||
programmers to create a separate version of each program for each kind of
|
|
||||||
computer. After Java is installed, &brandShortName; can automatically download
|
|
||||||
and run Java programs (also called applets).</dd>
|
|
||||||
|
|
||||||
<dt id="JavaScript">JavaScript</dt>
|
|
||||||
<dd>A scripting language commonly used to construct web pages. Programmers use
|
|
||||||
JavaScript to make web pages more interactive; JavaScript is often used to
|
|
||||||
dynamically validate forms and select buttons. JavaScript can be used with
|
|
||||||
Java, but it is technically a separate language. Java is not required for
|
|
||||||
JavaScript to work correctly.</dd>
|
|
||||||
|
|
||||||
<dt id="live_bookmark">Live Bookmark</dt>
|
|
||||||
<dd>A special type of bookmark that acts as a folder to contain the links in a
|
|
||||||
<a href="#feed">feed</a>. You can create a Live Bookmark by visiting a site
|
|
||||||
with a feed, clicking on the Live Bookmark icon in the Location Bar, and
|
|
||||||
selecting the feed you wish to use.</dd>
|
|
||||||
|
|
||||||
<dt id="location_bar">Location Bar</dt>
|
|
||||||
<dd>The field (and associated buttons) near the top of a &brandShortName; window
|
|
||||||
where you can type a <a href="#Uniform_Resource_Locator">URL</a> or search terms.</dd>
|
|
||||||
|
|
||||||
<dt id="master_password">master password</dt>
|
|
||||||
<dd>A password used to protect saved passwords and other private data.
|
|
||||||
&brandShortName; will prompt you for your master password when you wish to
|
|
||||||
access this data. If you have multiple security devices, each security device
|
|
||||||
will require a separate master password.</dd>
|
|
||||||
|
|
||||||
<dt id="navigation_toolbar">Navigation Toolbar</dt>
|
|
||||||
<dd>The toolbar near the top of the &brandShortName; window that includes
|
|
||||||
the <em>Back</em> and <em>Forward</em> buttons.</dd>
|
|
||||||
|
|
||||||
<dt id="Password_Manager">Password Manager</dt>
|
|
||||||
<dd>The part of &brandShortName; that can help you remember some or all of
|
|
||||||
your names and passwords by storing them on your computer's hard disk and
|
|
||||||
entering them for you automatically when you visit such sites.</dd>
|
|
||||||
|
|
||||||
<dt id="PKCS_11">PKCS #11</dt>
|
|
||||||
<dd>The public-key cryptography standard that governs security devices such
|
|
||||||
as smart cards.</dd>
|
|
||||||
|
|
||||||
<dt id="Plugin">Plugin</dt>
|
|
||||||
<dd>Plugins add new capabilities to &brandShortName;, such as the ability to
|
|
||||||
play audio or video clips. Unlike other kinds of helper applications, a Plugin
|
|
||||||
installs itself into the Plugins directory within the main
|
|
||||||
&brandShortName; installation directory and typically can be opened within
|
|
||||||
&brandShortName; itself (internally). For example, an audio Plugin lets you
|
|
||||||
listen to audio files on a web page or in an e-mail message. Macromedia
|
|
||||||
Flash Player and Java are both examples of Plugin applications.</dd>
|
|
||||||
|
|
||||||
<dt id="private_key">private key</dt>
|
|
||||||
<dd>One of a pair of keys used in public-key cryptography. The private key is
|
|
||||||
kept secret and is used to decrypt data that has been encrypted with the
|
|
||||||
corresponding public key.</dd>
|
|
||||||
|
|
||||||
<dt id="proxy">proxy</dt>
|
|
||||||
<dd>An intermediary or "go-between" program that acts as both a
|
|
||||||
<a href="#server">server</a> and a <a href="#client">client</a> for
|
|
||||||
the purpose of making requests on behalf of other clients.</dd>
|
|
||||||
|
|
||||||
<dt id="search_engine">search engine</dt>
|
|
||||||
<dd>A web-based program that allows users to search for and retrieve
|
|
||||||
specific information from the World Wide Web. The search engine may
|
|
||||||
search the full text of web documents or a list of keywords; it may
|
|
||||||
also use librarians who review web documents and index them manually
|
|
||||||
for retrieval. Typically, the user types a word or phrase into a
|
|
||||||
search box, and the search engine displays links to relevant web
|
|
||||||
pages.</dd>
|
|
||||||
|
|
||||||
<dt id="secure_site">secure site</dt>
|
|
||||||
<dd>A site that uses <a href="#encryption">encryption</a> in connections
|
|
||||||
with &brandShortName; to prevent other malicious Internet users from
|
|
||||||
viewing transmitted data. When you visit secure sites, &brandShortName;
|
|
||||||
displays a lock icon in the <a href="#Status_Bar">Status Bar</a> and the
|
|
||||||
<a href="#location_bar">Location Bar</a>. &brandShortName; also
|
|
||||||
displays the site's domain name in the Status Bar (to prevent malicious
|
|
||||||
sites from stealing your data) and turns the background of the Location
|
|
||||||
Bar to yellow.</dd>
|
|
||||||
<dd>Some sites may consist of both secure and insecure data; the insecure data
|
|
||||||
usually is non-private, although it isn't guaranteed to be so. For such
|
|
||||||
sites &brandShortName; will display a lock icon with a slash through it in
|
|
||||||
the Status Bar and Location Bar and will <em>not</em> display the site's
|
|
||||||
domain name in the Status Bar so that you know that the current web page
|
|
||||||
isn't completely secure.</dd>
|
|
||||||
|
|
||||||
<dt id="SSL">Secure Sockets Layer (SSL)</dt>
|
|
||||||
<dd>A protocol that allows mutual authentication between a
|
|
||||||
<a href="#client">client</a> and a <a href="#server">server</a>
|
|
||||||
for the purpose of establishing an authenticated and encrypted
|
|
||||||
connection. SSL runs above TCP/IP and below HTTP, LDAP, IMAP, NNTP,
|
|
||||||
and other high-level network protocols. The new Internet Engineering
|
|
||||||
Task Force (IETF) standard called Transport Layer Security (TLS) is
|
|
||||||
based on SSL. See also <a href="#authentication">authentication</a>,
|
|
||||||
<a href="#encryption">encryption</a>.</dd>
|
|
||||||
|
|
||||||
<dt id="server">server</dt>
|
|
||||||
<dd>Software (such as software that serves up web pages) that receives
|
|
||||||
requests from and sends information to a <a href="#client">client</a>,
|
|
||||||
which is usually running on a different computer. A computer on which
|
|
||||||
server software runs is also described as a server.</dd>
|
|
||||||
|
|
||||||
<dt id="Status_Bar">Status Bar</dt>
|
|
||||||
<dd>The toolbar that appears at the bottom of any &brandShortName; window. It
|
|
||||||
shows status icons on the right.</dd>
|
|
||||||
|
|
||||||
<dt id="TLS">TLS</dt>
|
|
||||||
<dd>See <a href="#SSL">Secure Sockets Layer (SSL)</a>.</dd>
|
|
||||||
|
|
||||||
<dt id="TCP_IP">Transmission Control Protocol/Internet Protocol (TCP/IP)</dt>
|
|
||||||
<dd>A Unix protocol used to connect computers running a variety of operating systems.
|
|
||||||
TCP/IP is an essential Internet protocol and has become a global standard.</dd>
|
|
||||||
|
|
||||||
<dt id="Uniform_Resource_Locator">Uniform Resource Locator (URL)</dt>
|
|
||||||
<dd>The standardized address that tells &brandShortName; how to locate a file or
|
|
||||||
other resource on the Web (for example, <tt>http://www.mozilla.org</tt>).
|
|
||||||
Type URLs into &brandShortName;'s Location Bar to access web pages. URLs
|
|
||||||
are also used in the links on web pages go to other web pages. Also known
|
|
||||||
as an Internet or Web address.</dd>
|
|
||||||
|
|
||||||
<dt id="web_page">web page</dt>
|
|
||||||
<dd>A single document on the World Wide Web that is specified by a unique
|
|
||||||
address or URL. A web page may contain text, hyperlinks, and graphics.</dd>
|
|
||||||
|
|
||||||
<dt id="web_site">web site</dt>
|
|
||||||
<dd>A group of related web pages linked by hyperlinks and managed by a single
|
|
||||||
company, organization, or individual. A web site may include text, graphics,
|
|
||||||
audio and video files, and links to other web sites.</dd>
|
|
||||||
|
|
||||||
<dt id="World_Wide_Web">World Wide Web</dt>
|
|
||||||
<dd>Also known as the Web. A portion of the Internet that is made up of web
|
|
||||||
pages stored by web <a href="#server">servers</a> and displayed by
|
|
||||||
<a href="#client">clients</a> called web browsers (such as
|
|
||||||
&brandShortName;).</dd>
|
|
||||||
|
|
||||||
</dl>
|
|
||||||
|
|
||||||
<p>
|
|
||||||
[ <a href="#glossary">Return to beginning of Glossary</a> ]
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<div class="contentsBox"><em>07 April 2005</em></div>
|
|
||||||
<p>Copyright © ©right.years; Contributors to the Mozilla Help Viewer Project.</p>
|
|
||||||
|
|
||||||
</body>
|
|
||||||
</html>
|
|
@ -1,432 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"[
|
|
||||||
<!ENTITY % brandDTD SYSTEM "chrome://branding/locale/brand.dtd" >
|
|
||||||
%brandDTD;
|
|
||||||
<!ENTITY % platformDTD SYSTEM "chrome://browser/locale/help/platformStrings.dtd" >
|
|
||||||
%platformDTD;
|
|
||||||
]>
|
|
||||||
<!--
|
|
||||||
Contributors:
|
|
||||||
David Tenser <david.tenser@comhem.se> (original author)
|
|
||||||
R.J. Keller <rlk@trfenv.com>
|
|
||||||
Jeff Walden <jwalden+code@mit.edu>
|
|
||||||
Steffen Wilberg <steffen.wilberg@web.de>
|
|
||||||
-->
|
|
||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
||||||
<head>
|
|
||||||
<title>&brandFullName; Menu Reference</title>
|
|
||||||
<link rel="stylesheet" type="text/css" href="chrome://help/skin/helpFileLayout.css"/>
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body>
|
|
||||||
|
|
||||||
<h1>&brandFullName; Menu Reference</h1>
|
|
||||||
<p>This menu reference describes each menu item in the main
|
|
||||||
&brandFullName; window.</p>
|
|
||||||
|
|
||||||
<div class="contentsBox">In this section:
|
|
||||||
<ul>
|
|
||||||
<li class="mac"><a href="#firefox">&brandShortName;</a></li>
|
|
||||||
<li><a href="#file">File</a></li>
|
|
||||||
<li><a href="#edit">Edit</a></li>
|
|
||||||
<li><a href="#view">View</a></li>
|
|
||||||
<li><a href="#go">History</a></li>
|
|
||||||
<li><a href="#bookmarks">Bookmarks</a></li>
|
|
||||||
<li><a href="#tools">Tools</a></li>
|
|
||||||
<li class="mac"><a href="#window">Window</a></li>
|
|
||||||
<li><a href="#help">Help</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="mac">
|
|
||||||
<h2 id="firefox">&brandShortName;</h2>
|
|
||||||
<h3 id="about_mac">About &brandFullName;</h3>
|
|
||||||
<p>Displays a dialog box with information about &brandShortName;, including
|
|
||||||
the current version and a brief list of credits.</p>
|
|
||||||
|
|
||||||
<h3 id="prefs_mac">Preferences…</h3>
|
|
||||||
<p>Displays the <a href="prefs.xhtml">&pref.pluralCaps; window</a>,
|
|
||||||
where you can change many &pref.plural; in &brandShortName;.</p>
|
|
||||||
|
|
||||||
<h3 id="quit_mac">Quit &brandShortName;</h3>
|
|
||||||
<p>Closes all &brandShortName; windows, cancels any active downloads, and exits
|
|
||||||
&brandShortName; completely. If you happen to select this menu item with
|
|
||||||
more than one tab or window open, &brandShortName; will ask you to confirm
|
|
||||||
your choice to prevent accidental exits. You can switch off this warning
|
|
||||||
by deselecting the <em>Warn me when closing multiple tabs</em> checkbox in
|
|
||||||
the <em>Tabs</em> panel of &pref.menuPath;. &brandShortName; will also
|
|
||||||
warn you if you are currently downloading any files.</p>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<h2 id="file">File</h2>
|
|
||||||
|
|
||||||
<h3 id="new_window">New Window</h3>
|
|
||||||
<p>Opens a new &brandShortName; window.</p>
|
|
||||||
|
|
||||||
<h3 id="new_tab">New Tab</h3>
|
|
||||||
<p>Opens a new browser tab in the current &brandShortName; window.</p>
|
|
||||||
|
|
||||||
<h3 id="open_location">Open Location…</h3>
|
|
||||||
<p>Focuses on the &brandShortName; URL bar so you can type in a new location to
|
|
||||||
visit.</p>
|
|
||||||
|
|
||||||
<h3 id="open_file">Open File…</h3>
|
|
||||||
<p>Displays an Open File dialog where you can select a file from your
|
|
||||||
local disks or network. You can view many file types in &brandShortName;,
|
|
||||||
including HTML/XML files, image files, text files and more.</p>
|
|
||||||
|
|
||||||
<h3 id="close">Close (Window)</h3>
|
|
||||||
<p>Closes the current window.</p>
|
|
||||||
|
|
||||||
<h3 id="close_tab">Close Tab</h3>
|
|
||||||
<p>Closes the current tab and selects the rightmost tab. This menu item is
|
|
||||||
visible only if more than one browser tab is currently open.</p>
|
|
||||||
|
|
||||||
<h3 id="save_page_as">Save Page As…</h3>
|
|
||||||
<p>Saves the page you are currently browsing. You can choose to save the
|
|
||||||
whole page (complete with graphics), just the current HTML page, or the
|
|
||||||
page text only.</p>
|
|
||||||
|
|
||||||
<h3 id="send_page">Send Link…</h3>
|
|
||||||
<p>Opens an email composition window using your computer's default email program
|
|
||||||
so you can send a message with a link to the current page.</p>
|
|
||||||
|
|
||||||
<h3 id="page_setup">Page Setup…</h3>
|
|
||||||
<p>Displays a Page Setup dialog where you can specify printing settings such as
|
|
||||||
margins, headers and footers, and page orientation.</p>
|
|
||||||
|
|
||||||
<div class="noMac">
|
|
||||||
<h3 id="print_preview">Print Preview</h3>
|
|
||||||
<p>Displays a preview of how the current document will appear when printed. It
|
|
||||||
reflects the settings in the Page Setup dialog and the page author's
|
|
||||||
intentions.</p>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<h3 id="print">Print…</h3>
|
|
||||||
<p>Displays the Print dialog, where you can specify the number of printed copies,
|
|
||||||
etc. Click <em>OK</em> to print the page.</p>
|
|
||||||
|
|
||||||
<h3 id="import">Import…</h3>
|
|
||||||
<p>Opens the Import Wizard dialog, which allows you to import &pref.plural;, bookmarks,
|
|
||||||
history, passwords and other data from browsers like Microsoft Internet
|
|
||||||
Explorer, Netscape, Mozilla or Opera.</p>
|
|
||||||
|
|
||||||
<h3 id="work_offline">Work Offline</h3>
|
|
||||||
<p>Toggles between online and offline mode. Offline mode allows you to view
|
|
||||||
web pages you've previously visited without being connected to the
|
|
||||||
Internet.</p>
|
|
||||||
|
|
||||||
<div class="noMac">
|
|
||||||
<h3 id="exit">
|
|
||||||
<span class="win">Exit</span>
|
|
||||||
<span class="noWin">Quit</span>
|
|
||||||
</h3>
|
|
||||||
<p>Closes all &brandShortName; windows, cancels any active downloads, and exits
|
|
||||||
&brandShortName; completely. If you happen to select this menu item with
|
|
||||||
more than one tab or window open, &brandShortName; will ask you to confirm
|
|
||||||
your choice to prevent accidental exits. You can switch off this warning
|
|
||||||
by deselecting the <em>Warn me when closing multiple tabs</em> checkbox in
|
|
||||||
the <em>Tabs</em> panel of &pref.menuPath;. &brandShortName; will also
|
|
||||||
warn you if you are currently downloading any files.</p>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<h2 id="edit">Edit</h2>
|
|
||||||
|
|
||||||
<h3 id="undo">Undo</h3>
|
|
||||||
<p>Undoes the last action in a text field. If you later decide you don't want to
|
|
||||||
undo an action, use the Redo command.</p>
|
|
||||||
|
|
||||||
<h3 id="redo">Redo</h3>
|
|
||||||
<p>Redoes the last Undo command.</p>
|
|
||||||
|
|
||||||
<h3 id="cut">Cut</h3>
|
|
||||||
<p>Cuts the selected text from a text field and stores it in the clipboard. Paste
|
|
||||||
the text elsewhere by using the Paste command.</p>
|
|
||||||
|
|
||||||
<h3 id="copy">Copy</h3>
|
|
||||||
<p>Copies the selected text to the clipboard. Paste the text in a text field by
|
|
||||||
using the Paste command.</p>
|
|
||||||
|
|
||||||
<h3 id="paste">Paste</h3>
|
|
||||||
<p>Pastes text stored in the clipboard into a text field.</p>
|
|
||||||
|
|
||||||
<h3 id="delete">Delete</h3>
|
|
||||||
<p>Deletes the selected text from a text field.</p>
|
|
||||||
|
|
||||||
<h3 id="select_all">Select All</h3>
|
|
||||||
<p>Selects all text and other items on the page.</p>
|
|
||||||
|
|
||||||
<h3 id="find_in_this_page">Find in This Page…</h3>
|
|
||||||
<p>Displays the Find Toolbar at the bottom of the browser window. Enter the
|
|
||||||
text you wish to find in the toolbar, and as you type &brandShortName; will
|
|
||||||
automatically find and select the first occurrence of the entered text on
|
|
||||||
the page. Click <em>Find Next</em> or <em>Find Previous</em> to find the
|
|
||||||
text at other locations in the page, and click <em>Highlight</em> to
|
|
||||||
highlight all occurrences of the text on the page.</p>
|
|
||||||
|
|
||||||
<h3 id="find_again">Find Again</h3>
|
|
||||||
<p>Searches for the next occurrence of the text specified when using the
|
|
||||||
<em>Find in This Page…</em> command.</p>
|
|
||||||
|
|
||||||
<h3 class="unix" id="prefs">&pref.pluralCaps;</h3>
|
|
||||||
<p class="unix">Displays the <a href="prefs.xhtml">&pref.pluralCaps; window</a>,
|
|
||||||
where you can change many &pref.plural; in &brandShortName;.</p>
|
|
||||||
|
|
||||||
<h2 id="view">View</h2>
|
|
||||||
|
|
||||||
<h3 id="toolbars">Toolbars</h3>
|
|
||||||
|
|
||||||
<h4 id="navigation_toolbar">Navigation Toolbar</h4>
|
|
||||||
<p>Toggles the visibility of the navigation toolbar, which usually contains
|
|
||||||
standard navigation buttons (Back, Forward, Stop, etc.).</p>
|
|
||||||
|
|
||||||
<h4 id="bookmarks_toolbar">Bookmarks Toolbar</h4>
|
|
||||||
<p>Toggles the visibility of the bookmarks toolbar, which contains bookmarks
|
|
||||||
to various sites.</p>
|
|
||||||
|
|
||||||
<h4 id="customize">Customize…</h4>
|
|
||||||
<p>Displays the toolbar customization dialog. You can drag and drop toolbar
|
|
||||||
buttons to or from the toolbars here. You can also <span
|
|
||||||
class="noMac">right-click</span><span class="mac">press &ctrlKey;,
|
|
||||||
click</span> on the navigation toolbar and select <em>Customize…</em>
|
|
||||||
to show this dialog.</p>
|
|
||||||
|
|
||||||
<h3 id="status_bar">Status Bar</h3>
|
|
||||||
<p>Toggles the visibility of the status bar, located at the bottom of the window.
|
|
||||||
The status bar displays useful information about the page but may not be
|
|
||||||
needed by everyone.</p>
|
|
||||||
|
|
||||||
<h3 id="sidebar">Sidebar</h3>
|
|
||||||
<p>The Sidebar can display your bookmarks or the browsing history. You can
|
|
||||||
always close the Sidebar by clicking on the X in the upper-right
|
|
||||||
corner.</p>
|
|
||||||
|
|
||||||
<h4 id="view_sidebar_bookmarks">Bookmarks</h4>
|
|
||||||
<p>Displays the Bookmarks Sidebar, which keeps your bookmarks visible all
|
|
||||||
the time. This can be very useful if you use bookmarks often.</p>
|
|
||||||
|
|
||||||
<h4 id="view_sidebar_history">History</h4>
|
|
||||||
<p>Displays the History Sidebar, which keeps track of the sites you have
|
|
||||||
visited. To change how many days a site should be remembered, select
|
|
||||||
&pref.menuPath; and select the <em>Privacy</em> panel.</p>
|
|
||||||
|
|
||||||
<h3 id="stop">Stop</h3>
|
|
||||||
<p>Stops loading of the current page you're browsing. This is the same as
|
|
||||||
clicking on the <em>Stop</em> button on the toolbar.</p>
|
|
||||||
|
|
||||||
<h3 id="reload">Reload</h3>
|
|
||||||
<p>Gets the most up-to-date version of the current page. This is the same
|
|
||||||
as clicking the <em>Reload</em> button on the toolbar.</p>
|
|
||||||
|
|
||||||
<h3 id="text_size">Text Size</h3>
|
|
||||||
<p>If the text on a web page is too small or too large, you can change it to
|
|
||||||
a more comfortable size.</p>
|
|
||||||
|
|
||||||
<h4 id="increase_text_size">Increase</h4>
|
|
||||||
<p>Displays the text on the web page one size larger. You can also do this
|
|
||||||
with the mouse (see <a href="mouse_shortcuts.xhtml">Mouse Shortcuts</a>
|
|
||||||
for instructions).</p>
|
|
||||||
|
|
||||||
<h4 id="decrease_text_size">Decrease</h4>
|
|
||||||
<p>Displays the text on the web page one size smaller. You can also do this
|
|
||||||
with the mouse (see <a href="mouse_shortcuts.xhtml">Mouse Shortcuts</a>
|
|
||||||
for instructions).</p>
|
|
||||||
|
|
||||||
<h4 id="reset_text_size">Normal</h4>
|
|
||||||
<p>Displays the text on the web page at its normal size.</p>
|
|
||||||
|
|
||||||
<h3 id="page_style">Page Style</h3>
|
|
||||||
<p>Allows you to select a style for the current web page. By default,
|
|
||||||
"Basic Page Style" is selected unless the author specifies a
|
|
||||||
different default.</p>
|
|
||||||
|
|
||||||
<h4 id="no_style">No Style</h4>
|
|
||||||
<p>Removes style formatting from the page.</p>
|
|
||||||
|
|
||||||
<h4 id="basic_page_style">Basic Page Style</h4>
|
|
||||||
<p>Displays the page with a general style specified by the author.</p>
|
|
||||||
|
|
||||||
<h4 id="alternate_style"></h4>
|
|
||||||
<p>If the author has specified additional page styles, &brandShortName;
|
|
||||||
will list them here for you to select.</p>
|
|
||||||
|
|
||||||
<h3 id="character_encoding">Character Encoding</h3>
|
|
||||||
<p>Allows you to manually change the character encoding on a web page.
|
|
||||||
&brandShortName; usually does this automatically.</p>
|
|
||||||
|
|
||||||
<h3 id="page_source">Page Source</h3>
|
|
||||||
<p>Displays the source code for the current document. <!--A future version of
|
|
||||||
&brandShortName; will be capable of launching an external program for
|
|
||||||
viewing the source.--></p>
|
|
||||||
|
|
||||||
<div class="noMac">
|
|
||||||
<h3 id="full_screen">Full Screen</h3>
|
|
||||||
<p>Displays the window in full screen. If you have the navigation toolbar
|
|
||||||
hidden, you can always restore the window anyway by pressing
|
|
||||||
<kbd>F11</kbd>.</p>
|
|
||||||
</div>
|
|
||||||
<h2 id="go">History</h2>
|
|
||||||
|
|
||||||
<p>The History menu contains a list of the most recently visited web sites and
|
|
||||||
closed tabs.</p>
|
|
||||||
|
|
||||||
<h3 id="back">Back</h3>
|
|
||||||
<p>Navigates back one page in history. This is the same as clicking on the
|
|
||||||
<em>Back</em> button on the toolbar.</p>
|
|
||||||
|
|
||||||
<h3 id="forward">Forward</h3>
|
|
||||||
<p>Navigates forward one page in history. This is the same as clicking on
|
|
||||||
the <em>Forward</em> button on the toolbar.</p>
|
|
||||||
|
|
||||||
<h3 id="home">Home</h3>
|
|
||||||
<p>Displays your home page. This is the same as clicking on the
|
|
||||||
<em>Home</em> button on the navigation toolbar. To change the home page,
|
|
||||||
select &pref.menuPath; and open the <em>Main</em> panel. You
|
|
||||||
can specify to use a blank page, the current page (or tab group), a
|
|
||||||
bookmark, or a manually entered address.</p>
|
|
||||||
|
|
||||||
<h3 id="closed_tabs">Recently Closed Tabs</h3>
|
|
||||||
<p>Allows you to restore a tab you closed recently in the current window by
|
|
||||||
selecting it from the list. See the <a href=
|
|
||||||
"tabbed_browsing.xhtml#closing_tabs">Closing and Restoring Tabs</a> topic
|
|
||||||
for more information.</p>
|
|
||||||
|
|
||||||
<h3 id="go_history">Show in Sidebar</h3>
|
|
||||||
<p>Displays the History Sidebar, which keeps track of the sites you have
|
|
||||||
visited. To change how many days a site should be remembered, select
|
|
||||||
&pref.menuPath; and select the <em>Privacy</em> panel.</p>
|
|
||||||
|
|
||||||
<h2 id="bookmarks">Bookmarks</h2>
|
|
||||||
|
|
||||||
<p>This menu contains all your stored bookmarks.</p>
|
|
||||||
|
|
||||||
<h3 id="add_to_bookmarks">Bookmark This Page</h3>
|
|
||||||
<p>Adds the current page to your bookmarks. A dialog will be displayed,
|
|
||||||
allowing you to choose a title for the bookmark and specify where you
|
|
||||||
want it to be stored.</p>
|
|
||||||
|
|
||||||
<h3 id="subscribe">Subscribe to This Page…</h3>
|
|
||||||
<p>Shows a preview of the <a href="glossary.xhtml#feed">feed</a> offered by
|
|
||||||
the current site. From the preview page, you can subscribe to the feed using
|
|
||||||
a <a href="glossary.xhtml#live_bookmark">Live Bookmark</a>, a feed reader
|
|
||||||
on your computer, or a web service. If you have chosen to always subscribe
|
|
||||||
using a Live Bookmark or a feed reader in the
|
|
||||||
<a href="prefs.xhtml#applications_options">Applications panel</a> of
|
|
||||||
&pref.menuPath;, the preview page will be skipped.</p>
|
|
||||||
|
|
||||||
<h3 id="bookmark_all_tabs">Bookmark All Tabs…</h3>
|
|
||||||
<p>Adds all the tabs in the current window to a new bookmark folder. A dialog
|
|
||||||
will be displayed, allowing you to choose the name of the folder and specify
|
|
||||||
where you want it to be stored.</p>
|
|
||||||
|
|
||||||
<h3 id="organize_bookmarks">Organize Bookmarks…</h3>
|
|
||||||
<p>Displays the Bookmarks Manager, a window where you can modify your
|
|
||||||
bookmarks. You can sort, rename and change the properties for your
|
|
||||||
bookmarks as well as add, remove, and move them.</p>
|
|
||||||
|
|
||||||
<h2 id="tools">Tools</h2>
|
|
||||||
|
|
||||||
<h3 id="web_search">Web Search</h3>
|
|
||||||
<p>Highlights the Web Search box. You can then type in the terms you
|
|
||||||
wish to find on the Web.</p>
|
|
||||||
|
|
||||||
<h3 id="downloads">Downloads</h3>
|
|
||||||
<p>Opens the Download Manager, where you can see the current, as well as
|
|
||||||
finished downloads.</p>
|
|
||||||
|
|
||||||
<h3 id="add_ons">Add-ons</h3>
|
|
||||||
<p>Opens the Add-ons manager, where you can view, install, configure, update,
|
|
||||||
and uninstall your extensions and themes. For more information, see the
|
|
||||||
<a href="customization.xhtml#add_ons">Add-ons</a> help topic.</p>
|
|
||||||
|
|
||||||
<h3 id="javascript_console">Error Console</h3>
|
|
||||||
<p>Opens the Error Console, which tracks problems with JavaScript code.
|
|
||||||
JavaScript is a scripting language commonly used to construct web pages.
|
|
||||||
Programmers use JavaScript to make web pages more interactive; JavaScript
|
|
||||||
is often used to dynamically validate forms and select buttons.</p>
|
|
||||||
|
|
||||||
<h3 id="page_info">Page Info</h3>
|
|
||||||
<p>Displays extensive information about the current web page, such as the
|
|
||||||
document type, encoding, size, and security information. The dialog also
|
|
||||||
displays lists of the media and links used on the page.</p>
|
|
||||||
|
|
||||||
<h3 id="clear_private_data">Clear Private Data…</h3>
|
|
||||||
<p>Clears the items which are selected in the Clear Private Data dialog in
|
|
||||||
the <em>Privacy</em> panel of &pref.menuPath;.
|
|
||||||
Displays a confirmation dialog by default.</p>
|
|
||||||
|
|
||||||
<h3 class="win" id="options">&pref.pluralCaps;</h3>
|
|
||||||
<p class="win">Displays the <a href="prefs.xhtml">&pref.pluralCaps; window</a>,
|
|
||||||
where you can change many &pref.plural; in &brandShortName;.</p>
|
|
||||||
|
|
||||||
<div class="mac">
|
|
||||||
<h2 id="window">Window</h2>
|
|
||||||
|
|
||||||
<h3 id="minimize">Minimize</h3>
|
|
||||||
<p>Minimizes the current window.</p>
|
|
||||||
|
|
||||||
<h3 id="zoom">Zoom</h3>
|
|
||||||
<p>Enlarges or restores the current window.</p>
|
|
||||||
|
|
||||||
<h3 id="open-windows">(Open Windows)</h3>
|
|
||||||
<p>Displays all the open windows by their title.</p>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<h2 id="help">Help</h2>
|
|
||||||
|
|
||||||
<h3 id="help_contents">
|
|
||||||
<span class="noMac">Help Contents</span>
|
|
||||||
<span class="mac">&brandShortName; Help</span>
|
|
||||||
</h3>
|
|
||||||
<p>Opens the &brandShortName; Help window, which contains useful information
|
|
||||||
that can help you browse the web.</p>
|
|
||||||
|
|
||||||
<div class="win">
|
|
||||||
<h3 id="for_ie_users">For Internet Explorer Users</h3>
|
|
||||||
<p>Opens this Help window displaying information that can
|
|
||||||
help Internet Explorer users transition to &brandShortName;.</p>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<h3 id="relnotes">Release Notes</h3>
|
|
||||||
<p>Provides information about installing, uninstalling and configuring
|
|
||||||
&brandShortName;, as well as other important information and late-breaking
|
|
||||||
notices. Requires an active Internet connection.</p>
|
|
||||||
|
|
||||||
<h3 id="reporter">Report Broken Web Site…</h3>
|
|
||||||
<p>Allows you to report web sites that do not work correctly in
|
|
||||||
&brandShortName; to the &brandShortName; developers.</p>
|
|
||||||
|
|
||||||
<h3 id="web_forgery">Report Web Forgery… / This isn't a web forgery…</h3>
|
|
||||||
<p><em>Report Web Forgery…</em> allows you to report what you believe are
|
|
||||||
forged or "phishing" sites. Phishing sites pretend to be sites you trust,
|
|
||||||
like your bank or online shopping or auction sites, to trick you into
|
|
||||||
submitting sensitive information (username/password, credit card information,
|
|
||||||
etc.) to them.</p>
|
|
||||||
|
|
||||||
<p>When displaying sites suspected for "phishing", the menu item is replaced
|
|
||||||
by <em>"This isn't a web forgery…"</em>, letting you report legitimate
|
|
||||||
sites which have been incorrectly marked as "phishing" sites.</p>
|
|
||||||
|
|
||||||
<p>Phishing Protection in &brandShortName; is powered by Google, and the
|
|
||||||
information you submit will be sent to Google and used to improve this
|
|
||||||
feature. Your report will be anonymous in accordance with Google's privacy
|
|
||||||
policy. Requires an active Internet connection.</p>
|
|
||||||
|
|
||||||
<h3 id="check_for_updates">Check for Updates…</h3>
|
|
||||||
<p>Displays a dialog which checks for updates to &brandShortName; and asks
|
|
||||||
you whether you want to download updates if any are available. After an
|
|
||||||
update has been downloaded, the dialog asks you to restart &brandShortName;
|
|
||||||
so that the update can be installed. Note that the name of this menu item
|
|
||||||
will change when an update is being downloaded or is ready to be installed.</p>
|
|
||||||
|
|
||||||
<div class="noMac">
|
|
||||||
<h3 id="about_mozilla_firebird">About &brandFullName;</h3>
|
|
||||||
<p>Displays a dialog box with information about &brandShortName;, including
|
|
||||||
the current version and a brief list of credits.</p>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="contentsBox"><em>29 September 2007</em></div>
|
|
||||||
<p>Copyright © ©right.years; Contributors to the Mozilla Help Viewer Project.</p>
|
|
||||||
|
|
||||||
</body>
|
|
||||||
</html>
|
|
@ -1,103 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"[
|
|
||||||
<!ENTITY % brandDTD SYSTEM "chrome://branding/locale/brand.dtd" >
|
|
||||||
%brandDTD;
|
|
||||||
<!ENTITY % platformDTD SYSTEM "chrome://browser/locale/help/platformStrings.dtd" >
|
|
||||||
%platformDTD;
|
|
||||||
]>
|
|
||||||
<!--
|
|
||||||
Contributors:
|
|
||||||
David Tenser <david.tenser@comhem.se> (original author)
|
|
||||||
-->
|
|
||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
||||||
<head>
|
|
||||||
<title>&brandFullName; Mouse Shortcuts</title>
|
|
||||||
<link rel="stylesheet" type="text/css"
|
|
||||||
href="chrome://help/skin/helpFileLayout.css"/>
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body>
|
|
||||||
|
|
||||||
<h1>&brandFullName; Mouse Shortcuts</h1>
|
|
||||||
|
|
||||||
<p class="noMargin">This is a list of the most common mouse shortcuts in
|
|
||||||
&brandFullName;.</p>
|
|
||||||
|
|
||||||
<table border="1">
|
|
||||||
<thead>
|
|
||||||
<tr>
|
|
||||||
<th>Command</th>
|
|
||||||
<th>Shortcut</th>
|
|
||||||
</tr>
|
|
||||||
</thead>
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<td>Back</td>
|
|
||||||
<td>
|
|
||||||
<span class="mac">&altKey;+Scroll Down</span>
|
|
||||||
<span class="noMac">&shiftKey;+Scroll Down</span>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Close Tab</td>
|
|
||||||
<td>Middle-click on Tab</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Decrease Text Size</td>
|
|
||||||
<td>&ctrlKey;+Scroll up</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Forward</td>
|
|
||||||
<td>
|
|
||||||
<span class="mac">&altKey;+Scroll up</span>
|
|
||||||
<span class="noMac">&shiftKey;+Scroll up</span>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Increase Text Size</td>
|
|
||||||
<td>&ctrlKey;+Scroll down</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>New Tab</td>
|
|
||||||
<td>Double-Click on Tab Bar</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Open in Background Tab</td>
|
|
||||||
<td>&accelKey;+Left-click<br/>Middle-click</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Open in Foreground Tab</td>
|
|
||||||
<td>&accelKey;+&shiftKey;+Left-click<br/>&shiftKey;+
|
|
||||||
Middle-click</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Open in New Window</td>
|
|
||||||
<td>&shiftKey;+Left-click</td>
|
|
||||||
</tr>
|
|
||||||
<tr class="unix">
|
|
||||||
<td>Paste URL and Go</td>
|
|
||||||
<td>Middle-click on Tab</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Reload (override cache)</td>
|
|
||||||
<td>&shiftKey;+Reload button</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Save Page As</td>
|
|
||||||
<td>&altKey;+Left-click</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Scroll line by line</td>
|
|
||||||
<td>
|
|
||||||
<span class="mac">&accelKey;+Scroll</span>
|
|
||||||
<span class="noMac">&altKey;+Scroll</span>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
|
|
||||||
<div class="contentsBox"><em>14 October 2005</em></div>
|
|
||||||
<p>Copyright © ©right.years; Contributors to the Mozilla Help Viewer Project.</p>
|
|
||||||
|
|
||||||
</body>
|
|
||||||
</html>
|
|
@ -1,43 +0,0 @@
|
|||||||
<!-- LOCALIZATION NOTE : This file contains platform-specific strings which
|
|
||||||
occur in large numbers throughout Help docs.
|
|
||||||
Generally, for these strings it's less code to store
|
|
||||||
them here than to hard-code the value of the entity
|
|
||||||
in every place it's used, or using an entity is less
|
|
||||||
confusing than typing a string like the jumbled messes
|
|
||||||
used below for "preference" and derivatives. Feel free
|
|
||||||
to add more strings here as long as you run them by the
|
|
||||||
Help module owner first (to prevent excessive use of
|
|
||||||
such strings when other methods are preferable). -->
|
|
||||||
|
|
||||||
<!-- Options -->
|
|
||||||
|
|
||||||
<!ENTITY pref.menuPath '<span class="win menuPath">Tools > Options</span><span
|
|
||||||
class="unix menuPath">Edit > Preferences</span><span
|
|
||||||
class="mac menuPath">&brandShortName; > Preferences</span>' >
|
|
||||||
<!ENTITY pref.singular '<span class="win">option</span><span
|
|
||||||
class="noWin">preference</span>' >
|
|
||||||
<!ENTITY pref.plural '<span class="win">options</span><span
|
|
||||||
class="noWin">preferences</span>' >
|
|
||||||
<!ENTITY pref.singularCaps '<span class="win">Option</span><span
|
|
||||||
class="noWin">Preference</span>' >
|
|
||||||
<!ENTITY pref.pluralCaps '<span class="win">Options</span><span
|
|
||||||
class="noWin">Preferences</span>' >
|
|
||||||
|
|
||||||
<!-- Keys -->
|
|
||||||
|
|
||||||
<!ENTITY ctrlKey '<kbd>Ctrl</kbd>' >
|
|
||||||
<!ENTITY accelKey '<kbd class="noMac">Ctrl</kbd><kbd
|
|
||||||
class="mac">Cmd</kbd>' >
|
|
||||||
<!ENTITY altKey '<kbd class="noMac">Alt</kbd><kbd
|
|
||||||
class="mac">Opt</kbd>' >
|
|
||||||
<!ENTITY shiftKey '<kbd>Shift</kbd>' >
|
|
||||||
<!ENTITY enterKey '<kbd class="noMac">Enter</kbd><kbd
|
|
||||||
class="mac">Return</kbd>' >
|
|
||||||
|
|
||||||
<!-- Image Location Base URL -->
|
|
||||||
|
|
||||||
<!ENTITY images.baseURL 'http://www.mozilla.org/projects/firefox/help/2.0'>
|
|
||||||
|
|
||||||
<!-- Copyright years -->
|
|
||||||
|
|
||||||
<!ENTITY copyright.years '2003-2008'>
|
|
@ -1,95 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"[
|
|
||||||
<!ENTITY % brandDTD SYSTEM "chrome://branding/locale/brand.dtd" >
|
|
||||||
%brandDTD;
|
|
||||||
<!ENTITY % platformDTD SYSTEM "chrome://browser/locale/help/platformStrings.dtd" >
|
|
||||||
%platformDTD;
|
|
||||||
]>
|
|
||||||
<!--
|
|
||||||
Contributors:
|
|
||||||
David Tenser <david.tenser@comhem.se> (original author)
|
|
||||||
Steffen Wilberg <steffen.wilberg@web.de>
|
|
||||||
-->
|
|
||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
||||||
<head>
|
|
||||||
<title>Controlling Pop-ups</title>
|
|
||||||
<link rel="stylesheet" type="text/css" href="chrome://help/skin/helpFileLayout.css"/>
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body>
|
|
||||||
|
|
||||||
<h1>Controlling Pop-ups</h1>
|
|
||||||
<p>This document explains all of the &pref.plural; available in &brandFullName;
|
|
||||||
for controlling pop-ups.</p>
|
|
||||||
|
|
||||||
<div class="contentsBox">
|
|
||||||
In this section:
|
|
||||||
<ul>
|
|
||||||
<li><a href="#what_are_popups">What are Pop-ups?</a></li>
|
|
||||||
<li><a href="#popup_blocker_preferences">Pop-up Blocker &pref.pluralCaps;</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<h2 id="what_are_popups">What are Pop-ups?</h2>
|
|
||||||
<p>Pop-up windows, or pop-ups, are windows that appear automatically without your
|
|
||||||
permission. They vary in size but usually don't cover the whole screen. Some pop-ups
|
|
||||||
open on top of the current &brandShortName; window, while others appear
|
|
||||||
underneath &brandShortName; (pop-unders).</p>
|
|
||||||
|
|
||||||
<p>&brandShortName; allows you to control both pop-ups and popunders through the
|
|
||||||
<a href="prefs.xhtml#content_options">Content panel</a> in &pref.pluralCaps;.
|
|
||||||
Pop-up blocking is turned on by default, so you don't have to worry about enabling it
|
|
||||||
to prevent pop-ups from appearing in &brandShortName;.</p>
|
|
||||||
|
|
||||||
<p>When blocking a pop-up, &brandShortName; displays an information bar, as well
|
|
||||||
as an icon <img src="chrome://browser/skin/Info.png" width="16" height="16"
|
|
||||||
alt=""/> in the status bar. When you click either the <em>&pref.pluralCaps;</em>
|
|
||||||
button in the information bar or the icon in the status bar, a menu is displayed
|
|
||||||
with the following choices:</p>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
<li>Allow/Block pop-ups for this site</li>
|
|
||||||
<li>Edit <a href="#popup_blocker_preferences">Pop-up Blocker
|
|
||||||
&pref.pluralCaps;…</a></li>
|
|
||||||
<li>Don't show this message (info message) when pop-ups are blocked</li>
|
|
||||||
<li>(show a blocked pop-up)</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<p><strong>Blocking pop-ups may interfere with some web sites</strong>: Some web sites,
|
|
||||||
including some banking sites, use pop-ups for important features. Blocking all pop-ups
|
|
||||||
disables such features. To allow specific web sites to use pop-ups, while blocking
|
|
||||||
all others, you can add specific web sites to the list of allowed sites.</p>
|
|
||||||
|
|
||||||
<p><strong>Blocking pop-ups doesn't always work</strong>: Although &brandShortName; blocks most
|
|
||||||
pop-ups, some web sites may show pop-ups using uncovered methods, even when blocked.</p>
|
|
||||||
|
|
||||||
<h2 id="popup_blocker_preferences">Pop-up Blocker &pref.pluralCaps;</h2>
|
|
||||||
|
|
||||||
<p>The Pop-up Blocker &pref.pluralCaps; are located in the <a
|
|
||||||
href="prefs.xhtml#content_options">Content panel</a> of &pref.menuPath;.</p>
|
|
||||||
|
|
||||||
<p>From there, you can do the following things:</p>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
<li><strong>Block pop-up windows</strong>: Deselect this &pref.singular; to
|
|
||||||
disable the pop-up blocker altogether.</li>
|
|
||||||
<li><strong>Exceptions dialog</strong>: This is a list of sites that you want to allow
|
|
||||||
to display pop-ups. The dialog has the following choices:
|
|
||||||
<ul>
|
|
||||||
<li><strong>Allow</strong>: Click this to add a web site to the exceptions list.</li>
|
|
||||||
<li><strong>Remove Site</strong>: Click this to remove a web site from the exceptions list.</li>
|
|
||||||
<li><strong>Remove All Sites</strong>: Click this to remove all of the web sites in
|
|
||||||
the exceptions list.</li>
|
|
||||||
</ul>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<p><strong>Note</strong>: Blocking pop-ups may not always work and may interfere with
|
|
||||||
some web sites. For more information about blocking pop-ups, see
|
|
||||||
<a href="#what_are_popups">What are Pop-ups</a>.</p>
|
|
||||||
|
|
||||||
<div class="contentsBox"><em>12 September 2005</em></div>
|
|
||||||
<p>Copyright © ©right.years; Contributors to the Mozilla Help Viewer Project.</p>
|
|
||||||
|
|
||||||
</body>
|
|
||||||
</html>
|
|
@ -1,697 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"[
|
|
||||||
<!ENTITY % brandDTD SYSTEM "chrome://branding/locale/brand.dtd" >
|
|
||||||
%brandDTD;
|
|
||||||
<!ENTITY % platformDTD SYSTEM "chrome://browser/locale/help/platformStrings.dtd" >
|
|
||||||
%platformDTD;
|
|
||||||
]>
|
|
||||||
<!--
|
|
||||||
Contributors:
|
|
||||||
David Tenser <tenser@comhem.se> (original author)
|
|
||||||
Steffen Wilberg <steffen.wilberg@web.de>
|
|
||||||
Ryan Flint <rflint@dslr.net>
|
|
||||||
Jeff Walden <jwalden+code@mit.edu>
|
|
||||||
Myk Melez <myk@mozilla.org>
|
|
||||||
-->
|
|
||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
||||||
<head>
|
|
||||||
<title>&brandFullName; Options</title>
|
|
||||||
<link rel="stylesheet" type="text/css" href="chrome://help/skin/helpFileLayout.css"/>
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body>
|
|
||||||
|
|
||||||
<h1>&brandFullName; &pref.pluralCaps;</h1>
|
|
||||||
<p>This document explains all of the &pref.plural; available in the
|
|
||||||
&pref.pluralCaps; window of &brandFullName;.</p>
|
|
||||||
|
|
||||||
<div class="contentsBox">In this section:
|
|
||||||
<ul>
|
|
||||||
<li><a href="#main_options">Main &pref.pluralCaps;</a></li>
|
|
||||||
<li><a href="#tabs_options">Tabs &pref.pluralCaps;</a></li>
|
|
||||||
<li><a href="#content_options">Content &pref.pluralCaps;</a></li>
|
|
||||||
<li><a href="#applications_options">Applications &pref.pluralCaps;</a></li>
|
|
||||||
<li><a href="#privacy_options">Privacy &pref.pluralCaps;</a></li>
|
|
||||||
<li><a href="#security_options">Security &pref.pluralCaps;</a></li>
|
|
||||||
<li><a href="#advanced_options">Advanced &pref.pluralCaps;</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<h2 id="main_options">Main &pref.pluralCaps;</h2>
|
|
||||||
|
|
||||||
<h3 id="startup">Startup</h3>
|
|
||||||
<p>When you open &brandShortName;, by default your <a
|
|
||||||
href="glossary.xhtml#home_page">home page</a> is displayed. Your home page
|
|
||||||
might be a commonly-visited web site, a search engine, or perhaps your email
|
|
||||||
account, but the choice is up to you. You can change your home page or
|
|
||||||
choose to display a different page or set of pages on startup in this
|
|
||||||
section.</p>
|
|
||||||
|
|
||||||
<p><em>When &brandShortName; starts</em><br/>
|
|
||||||
By default, when &brandShortName; starts it opens your home page (listed in
|
|
||||||
the textbox immediately below), which corresponds to the <em>Show my home
|
|
||||||
page</em> option. Alternately, you can choose to display a blank page on
|
|
||||||
startup (perhaps to eliminate the time required to load that page from the
|
|
||||||
Internet) by selecting the <em>Show a blank page</em> option.</p>
|
|
||||||
|
|
||||||
<p>As a final alternative, you can have &brandShortName; reopen the windows and
|
|
||||||
tabs you had open the last time you ran &brandShortName;, effectively
|
|
||||||
restoring you to where you were when you last stopped browsing the Internet.
|
|
||||||
This can be a handy way of saving what you were doing when you close
|
|
||||||
&brandShortName;, perhaps to install an operating system update. You can
|
|
||||||
choose this option by selecting <em>Show my windows and tabs from last
|
|
||||||
time</em>.</p>
|
|
||||||
|
|
||||||
<p><em>Home Page</em><br/>
|
|
||||||
If you've set &brandShortName; to show your home page when you start
|
|
||||||
&brandShortName;, you specify your home page by typing it here. You can
|
|
||||||
also click any of the buttons below the textbox to choose a special home
|
|
||||||
page:</p>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
<li><em>Use Current Page</em> sets the currently-displayed page (or pages,
|
|
||||||
if you have multiple tabs open) as your home page</li>
|
|
||||||
<li><em>Use Bookmark</em> sets the selected bookmark (or if you select a
|
|
||||||
folder, the set of bookmarks in that folder) as your home page</li>
|
|
||||||
<li><em>Restore to Default</em> resets your home page to the default home
|
|
||||||
page</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<h3 id="downloads">Downloads</h3>
|
|
||||||
<p>This section contains &pref.plural; determining how &brandShortName;
|
|
||||||
downloads files.</p>
|
|
||||||
|
|
||||||
<p><em>Show the Downloads window when downloading a file</em><br/>
|
|
||||||
With this &pref.singular; selected, &brandShortName; will open the <a
|
|
||||||
href="download_manager.xhtml">Downloads window</a> when you start
|
|
||||||
downloading a file.</p>
|
|
||||||
|
|
||||||
<p><em>Close it when all downloads are finished</em><br/>
|
|
||||||
Select this &pref.singular; to have &brandShortName; close the Downloads
|
|
||||||
window when all downloads currently in progress finish.</p>
|
|
||||||
|
|
||||||
<p><em id="download_folder">Save files to</em><br/>
|
|
||||||
By default downloaded files are automatically saved to the Desktop,
|
|
||||||
eliminating the hassle of specifying a download location for every file you
|
|
||||||
download. You can choose a different folder by clicking the <em><span
|
|
||||||
class="noMac">Browse…</span><span class="mac">Choose…</span></em>
|
|
||||||
button.</p>
|
|
||||||
|
|
||||||
<p><em>Always ask me where to save files</em><br/>
|
|
||||||
With this &pref.singular; selected, &brandShortName; will ask you where
|
|
||||||
you would like to save every downloaded file (instead of using the default
|
|
||||||
location specified above).</p>
|
|
||||||
|
|
||||||
<h3 id="system_defaults">System Defaults</h3>
|
|
||||||
<p><em>Always check to see if &brandShortName; is the default browser on
|
|
||||||
startup</em><br/>
|
|
||||||
Select this option if you want &brandShortName; to check whether it is the
|
|
||||||
default browser at startup. This will ensure &brandShortName; is used
|
|
||||||
whenever an application tries to display a web page. You can also click the
|
|
||||||
<em>Check Now</em> button to do a check right now.</p>
|
|
||||||
|
|
||||||
<h3 id="addons">Add-ons</h3>
|
|
||||||
<p><em>Manage Add-ons</em><br/>
|
|
||||||
To install or uninstall, update or configure add-ons, click the <em>Manage
|
|
||||||
Add-ons</em> button to open the Add-ons manager. This is also accessible
|
|
||||||
from <span class="menuPath">Tools > Add-ons</span>. A detailed
|
|
||||||
description of add-ons and the Add-on manager is available <a href=
|
|
||||||
"customization.xhtml#add_ons">here</a>.</p>
|
|
||||||
|
|
||||||
<h2 id="tabs_options">Tabs &pref.pluralCaps;</h2>
|
|
||||||
<p><em>New pages should be opened in:</em><br/>
|
|
||||||
This &pref.singular; controls whether links from other applications or from
|
|
||||||
web pages which request to open them in new windows are opened in <em>a new
|
|
||||||
window</em> or <em>a new tab</em> in the most recent window.</p>
|
|
||||||
|
|
||||||
<p><strong>Note:</strong> If you have chosen to open pages in new tabs,
|
|
||||||
&brandShortName; will ignore this &pref.singular; and will open a new window
|
|
||||||
from a link if the page author specified that the new window should have a
|
|
||||||
specific size, because some pages can only be displayed correctly at a
|
|
||||||
specific size.</p>
|
|
||||||
|
|
||||||
<p><em>Warn me when closing multiple tabs</em><br/>
|
|
||||||
When you close a window with multiple tabs, &brandShortName; will ask you
|
|
||||||
to confirm your choice. This prevents you from accidentally closing the
|
|
||||||
whole window when you intended to only close the current tab. Uncheck this
|
|
||||||
&pref.singular; to disable this warning and have &brandShortName;
|
|
||||||
automatically close the window.</p>
|
|
||||||
|
|
||||||
<p><em>Warn me when opening multiple tabs might slow down
|
|
||||||
&brandShortName;</em><br/>
|
|
||||||
When you open a large number of tabs at once, &brandShortName; will ask you
|
|
||||||
to confirm your choice. This prevents you from accidentally slowing down
|
|
||||||
your system while the pages are loading. Uncheck this &pref.singular; to
|
|
||||||
disable this warning.</p>
|
|
||||||
|
|
||||||
<p><em>Always show the tab bar</em><br/>
|
|
||||||
If you're only viewing one web page in a &brandShortName; window, the tab
|
|
||||||
bar is not normally shown. Check this &pref.singular; to always show the tab
|
|
||||||
bar, including when only the &brandShortName; window contains only one
|
|
||||||
page.</p>
|
|
||||||
|
|
||||||
<p><em>When I open a link in a new tab, switch to it immediately</em><br/>
|
|
||||||
When you middle-click on a Web link (or hold down &accelKey; while clicking
|
|
||||||
with the left mouse button), the page will be opened in a new tab. That page
|
|
||||||
will not be displayed and will load in a background tab. Check this
|
|
||||||
&pref.singular; to load and display the page in a new foreground tab
|
|
||||||
instead.</p>
|
|
||||||
|
|
||||||
|
|
||||||
<h2 id="content_options">Content &pref.pluralCaps;</h2>
|
|
||||||
<p><em>Block Pop-up Windows</em><br/>
|
|
||||||
By default, &brandShortName; blocks annoying pop-up windows on web sites.
|
|
||||||
Unchecking this &pref.singular; will disable pop-up blocking.</p>
|
|
||||||
|
|
||||||
<p>Some web sites make legitimate use of pop-up windows. Therefore, you can
|
|
||||||
allow these sites to open pop-ups anyway. To do so, click
|
|
||||||
<em>Exceptions…</em>, enter the site name, and click <em>Allow</em>. To
|
|
||||||
remove a web site from the list, select it and then click <em>Remove
|
|
||||||
Site</em>. To clear the list completely, click <em>Remove All Sites</em>.</p>
|
|
||||||
|
|
||||||
<p><em>Load images automatically</em><br/>
|
|
||||||
&brandShortName; displays images in web pages by default. Uncheck this
|
|
||||||
&pref.singular; to disable images in web pages.</p>
|
|
||||||
|
|
||||||
<p>If you enable loading images automatically, the <em>Exceptions…</em>
|
|
||||||
button lets you select sites from which images will not automatically load.
|
|
||||||
The <em>Exceptions…</em> button lets you specify web sites that you wish
|
|
||||||
to load (or not load) regardless of the setting of this preference. In the
|
|
||||||
exceptions list, enter the site from which you want to allow or block images
|
|
||||||
and click <em>Allow</em> to allow images, or click <em>Block</em> to block
|
|
||||||
the images.</p>
|
|
||||||
|
|
||||||
<p><em>Enable JavaScript</em><br/>
|
|
||||||
JavaScript is a scripting language commonly used to make web pages
|
|
||||||
interactive. However, it also makes certain annoying behaviors much easier to
|
|
||||||
perform. To disable JavaScript, uncheck this &pref.singular;. However, note
|
|
||||||
that disabling JavaScript may cause some sites to not work properly. For more
|
|
||||||
fine-grained control over what JavaScript can and cannot do, click
|
|
||||||
<em>Advanced…</em>.</p>
|
|
||||||
|
|
||||||
<h4 id="advanced_javascript">Advanced JavaScript Settings</h4>
|
|
||||||
<dl>
|
|
||||||
<dt>Move or resize existing windows</dt>
|
|
||||||
<dd>Uncheck this &pref.singular; to disable moving and resizing windows
|
|
||||||
using scripts.</dd>
|
|
||||||
|
|
||||||
<dt>Raise or lower windows</dt>
|
|
||||||
<dd>Uncheck this &pref.singular; to make sure scripts cannot raise (bring
|
|
||||||
to the front) or lower (send to the back) windows.</dd>
|
|
||||||
|
|
||||||
<dt>Disable or replace context menus</dt>
|
|
||||||
<dd>Uncheck this &pref.singular; to prevent web pages from disabling or
|
|
||||||
changing the &brandShortName; context menu.</dd>
|
|
||||||
|
|
||||||
<dt>Hide the status bar</dt>
|
|
||||||
<dd>Uncheck this &pref.singular; to force the status bar to be displayed in
|
|
||||||
pop-up windows.</dd>
|
|
||||||
|
|
||||||
<dt>Change status bar text</dt>
|
|
||||||
<dd>Uncheck this &pref.singular; to disable changes to status bar text (such
|
|
||||||
as displaying scrolling text messages or preventing the link address from
|
|
||||||
being displayed while the mouse is over a link).</dd>
|
|
||||||
</dl>
|
|
||||||
|
|
||||||
<p><em>Enable Java</em><br/>
|
|
||||||
Java is a popular programming language for the Web. A single Java program
|
|
||||||
can run on many different kinds of computers, thus avoiding the need for
|
|
||||||
programmers to create a separate version of a program for each kind of
|
|
||||||
computer. Uncheck this &pref.singular; to disable Java applets in
|
|
||||||
&brandShortName;. Note that in order for Java applets to work, you must
|
|
||||||
install the Java plugin.</p>
|
|
||||||
|
|
||||||
<h3 id="fonts_and_colors">Fonts & Colors</h3>
|
|
||||||
<p><em>Default font</em> and <em>Size</em><br/>
|
|
||||||
Web pages are usually displayed in the font and size specified here.
|
|
||||||
However, web pages can override these choices unless you specify otherwise
|
|
||||||
in the Fonts dialog. Click the <em>Advanced…</em> button to access the
|
|
||||||
Fonts dialog and to change this and other fonts &pref.plural;.</p>
|
|
||||||
|
|
||||||
<h4 id="fonts_dialog">Fonts Dialog</h4>
|
|
||||||
<ol>
|
|
||||||
<li>From the <em>Fonts for</em> drop-down list, choose a language
|
|
||||||
group/script. For instance, to set default fonts for the West
|
|
||||||
European languages/scripts (Latin), choose <em>Western</em>. For a
|
|
||||||
language/script not in the list, choose <em>Other Languages</em>.</li>
|
|
||||||
<li>Select whether proportional text should be serif (like "Times
|
|
||||||
New Roman") or sans-serif (like "Arial"). Then specify
|
|
||||||
the font size you want for proportional text.</li>
|
|
||||||
<li>Specify the font to use for Serif, Sans-serif and Monospace fonts.
|
|
||||||
You can also change the size for <code>Monospace fonts</code>.</li>
|
|
||||||
</ol>
|
|
||||||
|
|
||||||
<p>You can also set the minimum web page font size. This is useful to
|
|
||||||
prevent sites from use overly small fonts that are barely readable.</p>
|
|
||||||
|
|
||||||
<p><em>Allow pages to choose their own fonts, instead of my selections
|
|
||||||
above</em><br/>
|
|
||||||
By default &brandShortName; uses the fonts specified by the web page
|
|
||||||
author. Disabling this &pref.singular; will force all sites to use your
|
|
||||||
default fonts instead.</p>
|
|
||||||
|
|
||||||
<p><em>Character Encoding</em><br/>
|
|
||||||
The character encoding selected here will be used to display pages that
|
|
||||||
do not specify which encoding to use.</p>
|
|
||||||
|
|
||||||
<h4 id="colors_dialog">Colors Dialog</h4>
|
|
||||||
<p><strong>Text and Background</strong><br/>
|
|
||||||
Here you can change the default text and background color to be used on
|
|
||||||
web pages that haven't specified that information. Click on the color
|
|
||||||
samples to select colors.</p>
|
|
||||||
|
|
||||||
<p><em>Use system colors</em><br/>
|
|
||||||
Check this &pref.singular; to use the colors defined in your operating
|
|
||||||
system settings instead of the colors specified above.</p>
|
|
||||||
|
|
||||||
<p><strong>Link Colors</strong><br/>
|
|
||||||
Here you can change the default colors for Web links. Click on the color
|
|
||||||
samples to select colors.</p>
|
|
||||||
|
|
||||||
<p><em>Underline links</em><br/>
|
|
||||||
By default, links are underlined on web pages. Uncheck this &pref.singular;
|
|
||||||
to disable this. Note that many sites specify their own styling rules
|
|
||||||
and this &pref.singular; has no effect on those sites.</p>
|
|
||||||
|
|
||||||
<p><em>Allow pages to choose their own colors, instead of my selections
|
|
||||||
above</em><br/>
|
|
||||||
By default, &brandShortName; uses the colors specified by the web page
|
|
||||||
author. Disabling this &pref.singular; will force all sites to use your
|
|
||||||
default colors instead.</p>
|
|
||||||
|
|
||||||
<h3 id="languages">Languages</h3>
|
|
||||||
<p>Some web pages are offered in more than one language. Click the
|
|
||||||
<em>Choose…</em> button to specify your preferred language or
|
|
||||||
languages.</p>
|
|
||||||
|
|
||||||
<p><strong>Languages Dialog</strong><br/>
|
|
||||||
To add a language, click <em>Select a language to add…</em>, choose the
|
|
||||||
language, and click the <em>Add</em> button. Remove a language by
|
|
||||||
selecting it in the list of active languages and clicking the
|
|
||||||
<em>Remove</em> button. You can also reorder languages using the <em>Move
|
|
||||||
Up</em> and <em>Move Down</em> buttons to determine the most preferred one
|
|
||||||
in case a page is provided in multiple languages .</p>
|
|
||||||
|
|
||||||
<h2 id="applications_options">Applications &pref.pluralCaps;</h2>
|
|
||||||
|
|
||||||
<p>The <em>Applications</em> panel lets you choose applications and other
|
|
||||||
handlers to handle different types of content (e.g. PDF documents). It shows
|
|
||||||
you a list of content types and lets you select a handler for each type.</p>
|
|
||||||
|
|
||||||
<p>You can choose a local application to handle any type. For some types,
|
|
||||||
you can also choose a web application to handle the type, choose a feature
|
|
||||||
(like <a href="glossary.xhtml#live_bookmark">Live Bookmarks</a> for feeds)
|
|
||||||
or a <a href="glossary.xhtml#Plugin">plugin</a> in &brandShortName; to handle
|
|
||||||
the type, or save the type on your computer.</p>
|
|
||||||
|
|
||||||
<p>To choose a handler for a type, select the type from the list. The current
|
|
||||||
handler for the type will turn into a menu. Open the menu and select the
|
|
||||||
handler you want to handle the type.</p>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
<li><em>Choose an application</em><br/>
|
|
||||||
To choose a local or web application to handle a type, select the application
|
|
||||||
from the menu. If you want a local application that is not in the menu
|
|
||||||
to handle the type, select <em>Choose Application…</em> from the menu
|
|
||||||
and point &brandShortName; to its location.</li>
|
|
||||||
|
|
||||||
<li><em>Choose a feature or plugin</em><br/>
|
|
||||||
If you want a feature or a plugin in &brandShortName; to handle the type,
|
|
||||||
and one is available, select it from the menu.</li>
|
|
||||||
|
|
||||||
<li><em>Save on your computer</em><br/>
|
|
||||||
If you want to save the type on your computer, and it is possible to do so,
|
|
||||||
select <em>Save File</em> from the menu. If you have selected the <em>Save
|
|
||||||
files to</em> &pref.singular; in the <em>Main</em> panel, &brandShortName;
|
|
||||||
will save content of the type on your computer automatically. Otherwise,
|
|
||||||
when you encounter the type, &brandShortName; will prompt you for a location
|
|
||||||
on your computer to save it to.</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<p><strong>Note:</strong> When a plugin is available to handle a type, and you
|
|
||||||
choose another handler to handle that type, &brandShortName; will only use
|
|
||||||
your chosen handler when you access the type directly. When the type is
|
|
||||||
embedded inside a web page, &brandShortName; will continue to use the plugin
|
|
||||||
to handle the type.</p>
|
|
||||||
|
|
||||||
|
|
||||||
<h2 id="privacy_options">Privacy &pref.pluralCaps;</h2>
|
|
||||||
|
|
||||||
<h3 id="privacy_history">History</h3>
|
|
||||||
<p><em>Remember visited pages for the last … days</em><br/>
|
|
||||||
Here you can specify how long you want &brandShortName; to remember what
|
|
||||||
pages you have visited. The default is 9 days.</p>
|
|
||||||
|
|
||||||
<p><em>Remember what I enter in forms and the search bar</em><br/>
|
|
||||||
When you enter information in web forms or the search bar in
|
|
||||||
&brandShortName;, that information is saved so that &brandShortName; can
|
|
||||||
give suggestions when you enter information in forms in the future. To stop
|
|
||||||
this behavior, uncheck this &pref.singular;.</p>
|
|
||||||
|
|
||||||
<p><em>Remember what I've downloaded</em><br/>
|
|
||||||
This &pref.singular; controls whether or not past downloads show up in the
|
|
||||||
Downloads window. The Downloads window (accessible from <span
|
|
||||||
class="menuPath">Tools</span> or by pressing <span
|
|
||||||
class="noUnix">&accelKey;+<kbd>J</kbd></span><span
|
|
||||||
class="unix">&accelKey;+<kbd>Y</kbd></span>) displays a list of your recent
|
|
||||||
downloads. Downloads &pref.plural; are available in the <a
|
|
||||||
href="#main_options"><em>Main</em></a> panel.</p>
|
|
||||||
|
|
||||||
<h3 id="privacy_cookies">Cookies</h3>
|
|
||||||
<p>A cookie is a file created by a web site that stores information on your
|
|
||||||
computer, such as site-specific preferences when visiting that site.</p>
|
|
||||||
|
|
||||||
<p><em>Accept cookies from sites</em><br/>
|
|
||||||
By default cookies are enabled. Uncheck this &pref.singular; to disable the
|
|
||||||
use of cookies. Note that some sites may not work properly when cookies are
|
|
||||||
disabled.</p>
|
|
||||||
|
|
||||||
<p><em>Keep until:</em></p>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
<li><em>they expire</em><br/>
|
|
||||||
This is the default &pref.singular;. When set, this allows websites to
|
|
||||||
specify how long a cookie will be stored by &brandShortName;. This makes
|
|
||||||
it possible for a site to remember your preferences and login information
|
|
||||||
across browser sessions.</li>
|
|
||||||
<li><em>I close &brandShortName;</em><br/>
|
|
||||||
With this &pref.singular; selected, &brandShortName; will remove all
|
|
||||||
stored cookies when closed.</li>
|
|
||||||
<li><em>ask me every time</em><br/>
|
|
||||||
With this &pref.singular; enabled, &brandShortName; will ask you how long
|
|
||||||
you would like to keep a cookie (or refuse it entirely) every time a web
|
|
||||||
site attempts to set one.</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<p>To control which sites may or may not set cookies, click the
|
|
||||||
<em>Exceptions…</em> button.</p>
|
|
||||||
|
|
||||||
<p>To display the Cookie Manager click <em>Show Cookies…</em>.</p>
|
|
||||||
|
|
||||||
<p>Learn more about cookies, the individual &pref.plural;, and how you can
|
|
||||||
gain control over what sites are allowed to store cookies on your computer
|
|
||||||
by reading about <a href="cookies.xhtml">Managing Cookies</a>.</p>
|
|
||||||
|
|
||||||
<h3 id="private_data">Private Data</h3>
|
|
||||||
<p><em>Always clear my private data when I close &brandShortName;</em><br/>
|
|
||||||
You can choose to have &brandShortName; clear your private data when you
|
|
||||||
close it. To configure what data is cleared, click the <em>Settings…</em>
|
|
||||||
button.</p>
|
|
||||||
|
|
||||||
<p><em>Ask me before clearing private data</em><br/>
|
|
||||||
With this &pref.singular; selected, &brandShortName; will ask you before
|
|
||||||
before automatically clearing the data specified by clicking
|
|
||||||
<em>Settings…</em>.</p>
|
|
||||||
|
|
||||||
<p>If you wish to clear your private data right now, you can click the
|
|
||||||
<em>Clear Now…</em> button to do so. To clear your private data from
|
|
||||||
outside the preferences dialog, either press &accelKey;+&shiftKey;+<kbd>Del</kbd>
|
|
||||||
or select <span class="menuPath">Tools > Clear Private Data…</span>.</p>
|
|
||||||
|
|
||||||
|
|
||||||
<h2 id="security_options">Security &pref.pluralCaps;</h2>
|
|
||||||
<p><em>Warn me when sites try to install add-ons</em><br/>
|
|
||||||
&brandShortName; will always ask you to confirm installations of add-ons.
|
|
||||||
To prevent unrequested installation prompts which may lead to accidental
|
|
||||||
installations, &brandShortName; warns you when a web site tries to install
|
|
||||||
an add-on and blocks the installation prompt. To allow installations from
|
|
||||||
a specific site, click <em>Exceptions…</em>, enter the site name, and click
|
|
||||||
<em>Allow</em>. Uncheck this &pref.singular; to disable the warning for all
|
|
||||||
sites.</p>
|
|
||||||
|
|
||||||
<p id="phishing"><em>Tell me if the site I'm visiting is a suspected forgery</em><br/>
|
|
||||||
Check this &pref.singular; if you want &brandShortName; to actively check
|
|
||||||
whether the site you are visiting may be an attempt to mislead you into
|
|
||||||
providing personal information (this is often referred to as <em>phishing</em>).<br/>
|
|
||||||
Note that the absence of a warning does not guarantee that a site is trustworthy.
|
|
||||||
If you come across a "phishing" site which is not marked as such, please report
|
|
||||||
it using <span class="menuPath">Help > Report Web Forgery…</span>, as
|
|
||||||
explained in the <a href="menu_reference.xhtml#web_forgery">menu reference</a>.</p>
|
|
||||||
|
|
||||||
<p><em>Check using a downloaded list of suspected sites</em><br/>
|
|
||||||
With this &pref.singular; selected, &brandShortName; will check the current
|
|
||||||
site against a frequently updated list stored on your computer. No data about
|
|
||||||
the sites you visit is transferred to third-party anti-phishing providers
|
|
||||||
during normal browsing. Since phishing techniques and sites evolve quickly,
|
|
||||||
this mode of protection may not be as effective as having an anti-phishing
|
|
||||||
provider check every site you visit.</p>
|
|
||||||
|
|
||||||
<p><em>Check by asking … about each site I visit</em><br/>
|
|
||||||
With this &pref.singular; selected, &brandShortName; will send the address of
|
|
||||||
the current page over an encrypted connection to the selected third-party
|
|
||||||
anti-phishing provider in order to verify its identity. This method offers the
|
|
||||||
greatest protection, but information such as your IP address and browser
|
|
||||||
version may be transfered and stored by the selected provider. You will be
|
|
||||||
prompted to review and agree to the selected data provider's privacy policy
|
|
||||||
after selecting this &pref.singular;.</p>
|
|
||||||
|
|
||||||
<h3 id="security_passwords">Passwords</h3>
|
|
||||||
<p><em>Remember passwords for sites</em><br/>
|
|
||||||
&brandShortName; can securely save passwords you enter in web forms to
|
|
||||||
make it easier to log on to web sites. Clear this checkbox to prevent
|
|
||||||
&brandShortName; from remembering your passwords.</p>
|
|
||||||
|
|
||||||
<p>Even with this &pref.singular; checked, however, you'll still be asked
|
|
||||||
whether to save passwords for a site when you first visit it. If you select
|
|
||||||
<em>Never for This Site</em>, that site will be added to an exceptions list.
|
|
||||||
To access that list or to remove sites from it, click the
|
|
||||||
<em>Exceptions…</em> button.</p>
|
|
||||||
|
|
||||||
<p id="set_change_master_password"><em>Use a master password</em><br/>
|
|
||||||
&brandShortName; can protect sensitive information such as saved passwords
|
|
||||||
and certificates by encrypting them using a <a
|
|
||||||
href="glossary.xhtml#master_password">master password</a>. If you create a
|
|
||||||
master password, each time you start &brandShortName;, it will ask you to enter
|
|
||||||
the password the first time it needs to access a certificate or stored
|
|
||||||
password. You can set, change, or remove the master password by
|
|
||||||
by checking or unchecking this &pref.singular; or by clicking the
|
|
||||||
<em>Change Master Password…</em> button. If a master password is already
|
|
||||||
set, you will need to enter it in order to change or remove the master password.</p>
|
|
||||||
|
|
||||||
<p><em>Saved Passwords…</em><br/>
|
|
||||||
You can manage saved passwords and delete individual passwords by clicking
|
|
||||||
the <em>Saved Passwords</em> button.</p>
|
|
||||||
|
|
||||||
<h3 id="warning_messages">Warning Messages</h3>
|
|
||||||
<p>Click the <em>Settings…</em> button to configure the security warnings
|
|
||||||
&brandShortName; displays while you browse the web.</p>
|
|
||||||
|
|
||||||
<h4>Security Warnings Dialog</h4>
|
|
||||||
<!--XXX massive suck! do these provide *any* value whatsoever? -->
|
|
||||||
<dl>
|
|
||||||
<dt>I am about to view an encrypted page</dt>
|
|
||||||
<dd>When this &pref.singular; is enabled, &brandShortName; will notify you
|
|
||||||
every time you are about to view an encrypted page.</dd>
|
|
||||||
|
|
||||||
<dt>I am about to view a page that uses low-grade encryption</dt>
|
|
||||||
<dd>With this &pref.singular; enabled, &brandShortName; will warn you when
|
|
||||||
you visit a page which uses low-grade encryption.</dd>
|
|
||||||
|
|
||||||
<dt>I leave an encrypted page for one that isn't encrypted</dt>
|
|
||||||
<dd>With this &pref.singular; enabled, &brandShortName; will warn you
|
|
||||||
every time you move from an encrypted page to an unencrypted page either
|
|
||||||
by selecting a link on the page, selecting a bookmark or typing a new
|
|
||||||
address into the location bar.</dd>
|
|
||||||
|
|
||||||
<dt>I submit information that's not encrypted</dt>
|
|
||||||
<dd>When this &pref.singular; is enabled, &brandShortName; will warn you
|
|
||||||
when you submit data via a form that's not encrypted.</dd>
|
|
||||||
|
|
||||||
<dt>I'm about to view an encrypted page that contains some unencrypted
|
|
||||||
information</dt>
|
|
||||||
<dd>With this &pref.singular; enabled, &brandShortName; will warn you when
|
|
||||||
the page you're viewing contains a mixture of encrypted and
|
|
||||||
unencrypted content. If an encrypted page contains unencrypted data,
|
|
||||||
you should verify the identity of the page you're viewing prior to
|
|
||||||
entering sensitive data.</dd>
|
|
||||||
</dl>
|
|
||||||
|
|
||||||
|
|
||||||
<h2 id="advanced_options">Advanced &pref.pluralCaps;</h2>
|
|
||||||
<p>The advanced panel contains many &pref.plural; that are less likely to be
|
|
||||||
used by most people but are useful and sometimes critical &pref.plural; for
|
|
||||||
some people.</p>
|
|
||||||
|
|
||||||
<h3 id="advanced_general">General tab</h3>
|
|
||||||
<h4 id="accessibility">Accessibility</h4>
|
|
||||||
<p><em>Always use the cursor keys to navigate within pages</em><br/>
|
|
||||||
When this &pref.singular; is enabled, &brandShortName; will display a
|
|
||||||
movable cursor in web pages, allowing you to select text with the
|
|
||||||
keyboard. You can toggle this mode by pressing <kbd>F7</kbd>.</p>
|
|
||||||
|
|
||||||
<p><em>Search for text when I start typing</em><br/>
|
|
||||||
When this &pref.singular; is enabled, &brandShortName; will find within
|
|
||||||
the current web page what you type as you type it. While you are finding
|
|
||||||
typed text in the page, the Find Toolbar will automatically display at the
|
|
||||||
bottom of the window to show information about what you've found.</p>
|
|
||||||
|
|
||||||
<h4 id="browsing">Browsing</h4>
|
|
||||||
<p><em>Use autoscrolling</em><br/>
|
|
||||||
Autoscrolling is a useful feature which allows you to scroll the page by
|
|
||||||
clicking the middle mouse button (usually the scroll wheel) and moving the
|
|
||||||
mouse up or down. Some people find this annoying, so autoscrolling can be
|
|
||||||
disabled with this &pref.singular;.</p>
|
|
||||||
|
|
||||||
<p><em>Use smooth scrolling</em><br/>
|
|
||||||
Smooth scrolling can be very useful if you read a lot of long pages.
|
|
||||||
Normally, when you press <kbd>Page Down</kbd>, the view jumps directly
|
|
||||||
down one page. With smooth scrolling, it slides down smoothly, so you can
|
|
||||||
see how much it scrolls. This makes it easier to resume reading from where
|
|
||||||
you were before.</p>
|
|
||||||
|
|
||||||
<p><em>Check my spelling as I type</em><br/>
|
|
||||||
When this preference is enabled, &brandShortName; will check your spelling
|
|
||||||
and offer possible corrections as you type in web forms. Note that you
|
|
||||||
may need to download a dictionary; to do so, <span
|
|
||||||
class="noMac">right-click</span><span class="mac">press &ctrlKey; and
|
|
||||||
click</span> on any text field, enable spellchecking if necessary, and
|
|
||||||
then use the provided <span class="menuPath">Languages</span> menu to
|
|
||||||
download a dictionary.</p>
|
|
||||||
|
|
||||||
<h3 id="advanced_network">Network tab</h3>
|
|
||||||
|
|
||||||
<h4 id="connection_settings">Connection</h4>
|
|
||||||
<p>Your organization or Internet service provider may offer or require you
|
|
||||||
to use a proxy. A proxy acts as an intermediary between your computer and
|
|
||||||
the Internet. It intercepts all requests to the Internet to see if it can
|
|
||||||
fulfill the request using its cache. Proxies are used to improve
|
|
||||||
performance, filter requests, and hide your computer from the Internet to
|
|
||||||
improve security. Proxies are often part of corporate firewalls.</p>
|
|
||||||
|
|
||||||
<h4>Connection Settings Dialog</h4>
|
|
||||||
<dl>
|
|
||||||
<dt>Direct connection to the Internet</dt>
|
|
||||||
<dd>This is the default &pref.singular;. Choose this if you don't want
|
|
||||||
to use a proxy.</dd>
|
|
||||||
|
|
||||||
<dt>Auto-detect proxy settings for this network</dt>
|
|
||||||
<dd>Choose this if you want &brandShortName; to automatically detect the
|
|
||||||
proxy settings for your network.</dd>
|
|
||||||
|
|
||||||
<dt>Manual proxy configuration</dt>
|
|
||||||
<dd>Choose this if you don't have a proxy location (URL). Ask your
|
|
||||||
system administrator for the names and port numbers of the servers
|
|
||||||
running proxy software for each network service and enter the
|
|
||||||
information in the appropriate fields.</dd>
|
|
||||||
|
|
||||||
<dt>Automatic proxy configuration URL</dt>
|
|
||||||
<dd>If your workplace has a proxy configuration file, ask the system
|
|
||||||
administrator for its URL and enter it here. Click <em>Reload</em> to
|
|
||||||
load the settings.</dd>
|
|
||||||
</dl>
|
|
||||||
|
|
||||||
<h4 id="advanced_cache">Cache</h4>
|
|
||||||
<p>Pages you view are normally stored in a special cache folder for quicker
|
|
||||||
viewing the next time you visit the same page. You can specify the amount
|
|
||||||
of disk space the cache can use here. You can also immediately clear
|
|
||||||
the contents of the cache.</p>
|
|
||||||
|
|
||||||
<p><em>Use up to … MB of space for the cache</em><br/>
|
|
||||||
Allows you to specify the maximum size, in megabytes, of the cache on
|
|
||||||
your computer.</p>
|
|
||||||
|
|
||||||
<p><em>Clear Now</em><br/>
|
|
||||||
Immediately clears the current contents of the cache, freeing the disk
|
|
||||||
space used by the cache.</p>
|
|
||||||
|
|
||||||
<h3 id="advanced_update">Update tab</h3>
|
|
||||||
<p>&brandShortName; can check whether updates to installed add-ons or to
|
|
||||||
&brandShortName; itself are available.</p>
|
|
||||||
|
|
||||||
<p><em>Automatically check for updates to:</em><br/>
|
|
||||||
By default &brandShortName; automatically checks for updates to itself, to
|
|
||||||
add-ons, and to search engines so you'll always know you have the most
|
|
||||||
up-to-date version. You can change this behavior by changing the
|
|
||||||
appropriate checkboxes here.</p>
|
|
||||||
|
|
||||||
<p><em>When updates to &brandShortName; are found,</em></p>
|
|
||||||
|
|
||||||
<dl>
|
|
||||||
<dt>Ask me what I want to do</dt>
|
|
||||||
<dd>Updates to &brandShortName; are installed automatically by default.
|
|
||||||
Select this &pref.singular; to manually control how and when updates are
|
|
||||||
installed.</dd>
|
|
||||||
<dt>Automatically download and install the update</dt>
|
|
||||||
<dd>When this &pref.singular; is selected, &brandShortName; updates will
|
|
||||||
be automatically downloaded and will be installed the next time
|
|
||||||
&brandShortName; is restarted. The <em>Warn me if this will disable any
|
|
||||||
of my add-ons</em> &pref.singular; determines whether you will be warned
|
|
||||||
before the installation of an update which would require an incompatible
|
|
||||||
add-on to be disabled because no newer, compatible version exists. The
|
|
||||||
warning will allow you to postpone installation of the update, though at
|
|
||||||
the expense of improvements included in it.<br/><br/>
|
|
||||||
If all extensions and themes are compatible or can be updated to be
|
|
||||||
compatible, the &brandShortName; update will be installed. Upon restart
|
|
||||||
you will be asked to install any needed add-on updates so that you can
|
|
||||||
continue to use them.</dd>
|
|
||||||
</dl>
|
|
||||||
|
|
||||||
<p><em>Show Update History</em><br/>
|
|
||||||
&brandShortName; automatically records the updates you have installed.
|
|
||||||
You can view information about these updates by clicking this button.</p>
|
|
||||||
|
|
||||||
<p><strong>Note:</strong> You must be running &brandShortName; as
|
|
||||||
<span class="win">an administrator</span><span class="noWin">root</span>
|
|
||||||
or as the user who originally installed &brandShortName;
|
|
||||||
to install &brandShortName; updates.</p>
|
|
||||||
|
|
||||||
<h3 id="advanced_encryption">Encryption tab</h3>
|
|
||||||
|
|
||||||
<h4 id="protocols">Protocols</h4>
|
|
||||||
<p><em>Use SSL 3.0</em><br/>
|
|
||||||
Specifies whether you want to send and receive secured information through
|
|
||||||
SSL3 (Secure Sockets Layer, Level 3), a standard protocol for
|
|
||||||
communicating securely with web sites. Disabling it will prevent you from
|
|
||||||
visiting some sites.</p>
|
|
||||||
|
|
||||||
<p><em>Use TLS 1.0</em><br/>
|
|
||||||
Specifies whether you want to send and receive secured information through
|
|
||||||
TLS (Transport Layer Security), a security standard similar to SSL3
|
|
||||||
(Secure Sockets Layer). Disabling it will prevent you from visiting some
|
|
||||||
sites.</p>
|
|
||||||
|
|
||||||
<h4 id="certificates">Certificates</h4>
|
|
||||||
<p><a href="glossary.xhtml#certificate">Certificates</a> help perform
|
|
||||||
encryption and decryption of connections to <a
|
|
||||||
href="glossary.xhtml#secure_site">secure sites</a>.</p>
|
|
||||||
|
|
||||||
<p><em>When a web site requires a certificate:</em><br/>
|
|
||||||
Some servers ask you to identify yourself with a personal certificate. In
|
|
||||||
order to do so, they ask &brandShortName; to generate one for you. When
|
|
||||||
you visit the site in the future, &brandShortName; selects the certificate
|
|
||||||
without asking you by default. If you wish to manually choose a
|
|
||||||
certificate (for example, if you have multiple certificates stored for
|
|
||||||
multiple web sites), select the <em>Ask me every time</em> &pref.singular;
|
|
||||||
and you'll be in complete control of what certificates are being sent to
|
|
||||||
web sites while browsing.</p>
|
|
||||||
|
|
||||||
<p><em>View Certificates</em><br/>
|
|
||||||
Click this button to view stored certificates, import new certificates,
|
|
||||||
and back up or delete old certificates in &brandShortName;.</p>
|
|
||||||
|
|
||||||
<p><em>Revocation Lists</em><br/>
|
|
||||||
&brandShortName; can use Certificate Revocation Lists (also known as
|
|
||||||
CRLs) to ensure that your certificates are always valid. Click the
|
|
||||||
<em>Revocation Lists</em> button to manage the CRLs installed on your
|
|
||||||
computer.</p>
|
|
||||||
|
|
||||||
<p><em>Validation</em><br/>
|
|
||||||
&brandShortName; may ask an OCSP (Online Certificate Status Protocol)
|
|
||||||
server to confirm that a certificate is still valid. By default,
|
|
||||||
&brandShortName; validates a certificate if the certificate provides an
|
|
||||||
OCSP server. Alternately, you can choose an OCSP server against which to
|
|
||||||
validate all certificates. Click the <em>Validation</em> button to manage
|
|
||||||
these &pref.plural;. You will most likely only need to change this if your
|
|
||||||
Internet environment requires it.</p>
|
|
||||||
|
|
||||||
<p><em>Security Devices</em><br/>
|
|
||||||
Security devices can encrypt and decrypt connections and store
|
|
||||||
certificates and passwords. If you need to use a security device other
|
|
||||||
than the one in &brandShortName;, click the <em>Security Devices</em>
|
|
||||||
button.</p>
|
|
||||||
|
|
||||||
<div class="contentsBox"><em>09 October 2007</em></div>
|
|
||||||
<p>Copyright © ©right.years; Contributors to the Mozilla Help Viewer Project.</p>
|
|
||||||
|
|
||||||
</body>
|
|
||||||
</html>
|
|
@ -1,88 +0,0 @@
|
|||||||
<?xml version="1.0"?>
|
|
||||||
|
|
||||||
<RDF xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
|
||||||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
|
|
||||||
xmlns:nc="http://home.netscape.com/NC-rdf#">
|
|
||||||
|
|
||||||
<Description rdf:about="urn:root">
|
|
||||||
<nc:subheadings>
|
|
||||||
<Seq>
|
|
||||||
<!--
|
|
||||||
These nodes are used for searching purposes; they display in search results but do not
|
|
||||||
show up in the default listing displayed when the help viewer loads.
|
|
||||||
DO NOT CREATE NAME COLLISIONS BETWEEN THE ITEMS HERE AND THE ITEMS IN THE TOC!
|
|
||||||
-->
|
|
||||||
<li><Description nc:name="Accessibility Options" nc:link="prefs.xhtml#accessibility" nc:platform="win os2"/></li>
|
|
||||||
<li><Description nc:name="Accessibility Preferences" nc:link="prefs.xhtml#accessibility" nc:platform="unix mac"/></li>
|
|
||||||
<li><Description nc:name="Anti-Phishing Options" nc:link="prefs.xhtml#phishing" nc:platform="win os2"/></li>
|
|
||||||
<li><Description nc:name="Anti-Phishing Preferences" nc:link="prefs.xhtml#phishing" nc:platform="unix mac"/></li>
|
|
||||||
<li><Description nc:name="authentication (definition)" nc:link="glossary.xhtml#authentication"/></li>
|
|
||||||
<li><Description nc:name="Back Button" nc:link="using_firebird.xhtml#retracing_your_steps"/></li>
|
|
||||||
<li><Description nc:name="Block Pop-ups" nc:link="popup.xhtml"/></li>
|
|
||||||
<li><Description nc:name="bookmark (definition)" nc:link="glossary.xhtml#bookmark"/></li>
|
|
||||||
<li><Description nc:name="Bookmarks Toolbar (definition)" nc:link="glossary.xhtml#Bookmarks_Toolbar"/></li>
|
|
||||||
<li><Description nc:name="Browsing" nc:link="using_firebird.xhtml#navigating_web_pages"/></li>
|
|
||||||
<li><Description nc:name="cache (definition)" nc:link="glossary.xhtml#cache"/></li>
|
|
||||||
<li><Description nc:name="certificate (definition)" nc:link="glossary.xhtml#certificate"/></li>
|
|
||||||
<li><Description nc:name="Certificates" nc:link="prefs.xhtml#certificates"/></li>
|
|
||||||
<li><Description nc:name="Certificate Revocation Lists" nc:link="prefs.xhtml#certificates"/></li>
|
|
||||||
<li><Description nc:name="client (definition)" nc:link="glossary.xhtml#client"/></li>
|
|
||||||
<li><Description nc:name="Configuring Extensions" nc:link="customization.xhtml#add_ons_configuring_extensions"/></li>
|
|
||||||
<li><Description nc:name="cookie (definition)" nc:link="glossary.xhtml#cookie"/></li>
|
|
||||||
<li><Description nc:name="cryptography (definition)" nc:link="glossary.xhtml#cryptography"/></li>
|
|
||||||
<li><Description nc:name="decryption (definition)" nc:link="glossary.xhtml#decryption"/></li>
|
|
||||||
<li><Description nc:name="digital ID (definition)" nc:link="glossary.xhtml#digital_ID"/></li>
|
|
||||||
<li><Description nc:name="Disabling, Enabling, Uninstalling Add-ons" nc:link="customization.xhtml#add_ons_uninstalling"/></li>
|
|
||||||
<li><Description nc:name="encryption (definition)" nc:link="glossary.xhtml#encryption"/></li>
|
|
||||||
<li><Description nc:name="Extensible Markup Language (XML) (definition)" nc:link="glossary.xhtml#XML"/></li>
|
|
||||||
<li><Description nc:name="feed (definition)" nc:link="glossary.xhtml#feed"/></li>
|
|
||||||
<li><Description nc:name="File Transfer Protocol (FTP) (definition)" nc:link="glossary.xhtml#File_Transfer_Protocol"/></li>
|
|
||||||
<li><Description nc:name="FIPS PUBS 140-1 (definition)" nc:link="glossary.xhtml#FIPS_PUBS_140-1"/></li>
|
|
||||||
<li><Description nc:name="Forward Button" nc:link="using_firebird.xhtml#retracing_your_steps"/></li>
|
|
||||||
<li><Description nc:name="going back or forward" nc:link="using_firebird.xhtml#retracing_your_steps"/></li>
|
|
||||||
<li><Description nc:name="Home Button" nc:link="using_firebird.xhtml#viewing_your_home_page"/></li>
|
|
||||||
<li><Description nc:name="Home Page (definition)" nc:link="glossary.xhtml#home_page"/></li>
|
|
||||||
<li><Description nc:name="Hypertext Markup Language (HTML) (definition)" nc:link="glossary.xhtml#Hypertext_Markup_Language"/></li>
|
|
||||||
<li><Description nc:name="importing Internet Explorer Favorites" nc:link="forieusers.xhtml#about_your_ie_settings"/></li>
|
|
||||||
<li><Description nc:name="Internet (definition)" nc:link="glossary.xhtml#Internet"/></li>
|
|
||||||
<li><Description nc:name="Internet protocol (IP) address (definition)" nc:link="glossary.xhtml#Internet_protocol_address"/></li>
|
|
||||||
<li><Description nc:name="Java (definition)" nc:link="glossary.xhtml#Java"/></li>
|
|
||||||
<li><Description nc:name="JavaScript (definition)" nc:link="glossary.xhtml#JavaScript"/></li>
|
|
||||||
<li><Description nc:name="Languages" nc:link="prefs.xhtml#languages"/></li>
|
|
||||||
<li><Description nc:name="Live Bookmark (definition)" nc:link="glossary.xhtml#live_bookmark"/></li>
|
|
||||||
<li><Description nc:name="Location Bar (definition)" nc:link="glossary.xhtml#location_bar"/></li>
|
|
||||||
<li><Description nc:name="master password (definition)" nc:link="glossary.xhtml#master_password"/></li>
|
|
||||||
<li><Description nc:name="Navigation Toolbar (definition)" nc:link="glossary.xhtml#navigation_toolbar"/></li>
|
|
||||||
<li><Description nc:name="Password Manager (definition)" nc:link="glossary.xhtml#Password_Manager"/></li>
|
|
||||||
<li><Description nc:name="PKCS #11 (definition)" nc:link="glossary.xhtml#PKCS_11"/></li>
|
|
||||||
<li><Description nc:name="Plugin (definition)" nc:link="glossary.xhtml#Plugin"/></li>
|
|
||||||
<li><Description nc:name="Plugins" nc:link="using_firebird.xhtml#managing_different_file_types"/></li>
|
|
||||||
<li><Description nc:name="private key (definition)" nc:link="glossary.xhtml#private_key"/></li>
|
|
||||||
<li><Description nc:name="proxy (definition)" nc:link="glossary.xhtml#proxy"/></li>
|
|
||||||
<li><Description nc:name="recently visited web pages" nc:link="using_firebird.xhtml#moving_to_another_page"/></li>
|
|
||||||
<li><Description nc:name="Reload Button" nc:link="using_firebird.xhtml#stopping_and_reloading"/></li>
|
|
||||||
<li><Description nc:name="search engine (definition)" nc:link="glossary.xhtml#search_engine"/></li>
|
|
||||||
<li><Description nc:name="searching using the Location Bar" nc:link="using_firebird.xhtml#moving_to_another_page"/></li>
|
|
||||||
<li><Description nc:name="searching using the Search Bar" nc:link="using_firebird.xhtml#searching_the_web"/></li>
|
|
||||||
<li><Description nc:name="searching using text from the page" nc:link="using_firebird.xhtml#searching_on_selected_words_in_a_web_page"/></li>
|
|
||||||
<li><Description nc:name="secure site (definition)" nc:link="glossary.xhtml#secure_site"/></li>
|
|
||||||
<li><Description nc:name="Secure Sockets Layer (SSL) (definition)" nc:link="glossary.xhtml#SSL"/></li>
|
|
||||||
<li><Description nc:name="server (definition)" nc:link="glossary.xhtml#server"/></li>
|
|
||||||
<li><Description nc:name="Setting or Changing the Master Password" nc:link="prefs.xhtml#set_change_master_password"/></li>
|
|
||||||
<li><Description nc:name="Software Updates" nc:link="menu_reference.xhtml#check_for_updates"/></li>
|
|
||||||
<li><Description nc:name="Status Bar (definition)" nc:link="glossary.xhtml#Status_Bar"/></li>
|
|
||||||
<li><Description nc:name="Stop Button" nc:link="using_firebird.xhtml#stopping_and_reloading"/></li>
|
|
||||||
<li><Description nc:name="Switching Themes" nc:link="customization.xhtml#add_ons_switching_themes"/></li>
|
|
||||||
<li><Description nc:name="TLS (definition)" nc:link="glossary.xhtml#TLS"/></li>
|
|
||||||
<li><Description nc:name="TCP/IP (Transmission Control Protocol/Internet Protocol) (definition)" nc:link="glossary.xhtml#TCP_IP"/></li>
|
|
||||||
<li><Description nc:name="Uniform Resource Locator (URL) (definition)" nc:link="glossary.xhtml#Uniform_Resource_Locator"/></li>
|
|
||||||
<li><Description nc:name="Updating Add-ons" nc:link="customization.xhtml#add_ons_updating"/></li>
|
|
||||||
<li><Description nc:name="Verification" nc:link="prefs.xhtml#certificates"/></li>
|
|
||||||
<li><Description nc:name="Viewing HTML Source" nc:link="menu_reference.xhtml#page_source"/></li>
|
|
||||||
<li><Description nc:name="web page (definition)" nc:link="glossary.xhtml#web_page"/></li>
|
|
||||||
<li><Description nc:name="web site (definition)" nc:link="glossary.xhtml#web_site"/></li>
|
|
||||||
<li><Description nc:name="World Wide Web (definition)" nc:link="glossary.xhtml#World_Wide_Web"/></li>
|
|
||||||
</Seq>
|
|
||||||
</nc:subheadings>
|
|
||||||
</Description>
|
|
||||||
</RDF>
|
|
@ -1,383 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"[
|
|
||||||
<!ENTITY % brandDTD SYSTEM "chrome://branding/locale/brand.dtd" >
|
|
||||||
%brandDTD;
|
|
||||||
<!ENTITY % platformDTD SYSTEM "chrome://browser/locale/help/platformStrings.dtd" >
|
|
||||||
%platformDTD;
|
|
||||||
]>
|
|
||||||
<!--
|
|
||||||
Contributors:
|
|
||||||
David Tenser <david.tenser@comhem.se> (original author)
|
|
||||||
R.J. Keller <rlk@trfenv.com>
|
|
||||||
Sean Umphlet <nosebleed@umphlet.com> (minor bugfixes)
|
|
||||||
Jeff Walden <jwalden+code@mit.edu>
|
|
||||||
Steffen Wilberg <steffen.wilberg@web.de>
|
|
||||||
-->
|
|
||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
||||||
<head>
|
|
||||||
<title>&brandFullName; Keyboard Shortcuts</title>
|
|
||||||
<link rel="stylesheet" type="text/css"
|
|
||||||
href="chrome://help/skin/helpFileLayout.css"/>
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body>
|
|
||||||
|
|
||||||
<h1>&brandFullName; Keyboard Shortcuts</h1>
|
|
||||||
|
|
||||||
<p>This is a list of the most common keyboard shortcuts in &brandFullName;.
|
|
||||||
<span class="unix">If you have enabled Emacs-style text editing shortcuts
|
|
||||||
in GNOME, they will also work in &brandShortName;. When an Emacs text
|
|
||||||
editing shortcut conflicts with the default shortcuts (as occurs with
|
|
||||||
&accelKey;+<kbd>K</kbd>), the Emacs shortcut will take preference if
|
|
||||||
focus is inside a textbox (which would include the location bar and search
|
|
||||||
bar). In such cases you should use the alternate keyboard shortcut
|
|
||||||
if one is listed below.</span></p>
|
|
||||||
|
|
||||||
<table border="1">
|
|
||||||
<thead>
|
|
||||||
<tr>
|
|
||||||
<th>Command</th>
|
|
||||||
<th>Shortcut</th>
|
|
||||||
</tr>
|
|
||||||
</thead>
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<th colspan="2">Navigation</th>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Back</td>
|
|
||||||
<td>
|
|
||||||
<span class="win">
|
|
||||||
&altKey;+<kbd>Left Arrow</kbd><br/>
|
|
||||||
<kbd>Backspace</kbd>
|
|
||||||
</span>
|
|
||||||
<span class="unix">
|
|
||||||
&altKey;+<kbd>Left Arrow</kbd><br/>
|
|
||||||
&accelKey;+<kbd>[</kbd>
|
|
||||||
</span>
|
|
||||||
<span class="mac">
|
|
||||||
&accelKey;+<kbd>[</kbd><br/>
|
|
||||||
&accelKey;+<kbd>Left Arrow</kbd><br/>
|
|
||||||
<kbd>Delete</kbd>
|
|
||||||
</span>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Forward</td>
|
|
||||||
<td>
|
|
||||||
<span class="win">
|
|
||||||
&altKey;+<kbd>Right Arrow</kbd><br/>
|
|
||||||
&shiftKey;+<kbd>Backspace</kbd>
|
|
||||||
</span>
|
|
||||||
<span class="unix">
|
|
||||||
&altKey;+<kbd>Right Arrow</kbd><br/>
|
|
||||||
&accelKey;+<kbd>]</kbd>
|
|
||||||
</span>
|
|
||||||
<span class="mac">
|
|
||||||
&accelKey;+<kbd>]</kbd><br/>
|
|
||||||
&accelKey;+<kbd>Right Arrow</kbd><br/>
|
|
||||||
&shiftKey;+<kbd>Delete</kbd>
|
|
||||||
</span>
|
|
||||||
</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Home</td>
|
|
||||||
<td>&altKey;+<kbd>Home</kbd></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Open File</td>
|
|
||||||
<td>&accelKey;+<kbd>O</kbd></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Reload</td>
|
|
||||||
<td><kbd>F5<br/></kbd>
|
|
||||||
&accelKey;+<kbd>R</kbd></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Reload (override cache)</td>
|
|
||||||
<td><span class="noMac">&accelKey;+<kbd>F5</kbd><br/></span>
|
|
||||||
&accelKey;+&shiftKey;+<kbd>R</kbd></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Stop</td>
|
|
||||||
<td><span class="mac">&accelKey;+<kbd>.</kbd><br/></span>
|
|
||||||
<kbd>Esc</kbd></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<th colspan="2">Current Page</th>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Go to Bottom of Page</td>
|
|
||||||
<td><kbd>End</kbd></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Go to Top of Page</td>
|
|
||||||
<td><kbd>Home</kbd></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Move to Next Frame</td>
|
|
||||||
<td><kbd>F6</kbd></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Move to Previous Frame</td>
|
|
||||||
<td>&shiftKey;+<kbd>F6</kbd></td>
|
|
||||||
</tr>
|
|
||||||
<tr class="noWin">
|
|
||||||
<td>Page Info</td>
|
|
||||||
<td>&accelKey;+<kbd>I</kbd></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Page Source</td>
|
|
||||||
<td>&accelKey;+<kbd>U</kbd></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Print</td>
|
|
||||||
<td>&accelKey;+<kbd>P</kbd></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Save Page As</td>
|
|
||||||
<td>&accelKey;+<kbd>S</kbd></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Text Size: Decrease</td>
|
|
||||||
<td>&accelKey;+<kbd>-</kbd></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Text Size: Increase</td>
|
|
||||||
<td>&accelKey;+<kbd>+</kbd></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Text Size: Restore</td>
|
|
||||||
<td>&accelKey;+<kbd>0</kbd></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<th colspan="2">Editing</th>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Copy</td>
|
|
||||||
<td>&accelKey;+<kbd>C</kbd></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Cut</td>
|
|
||||||
<td>&accelKey;+<kbd>X</kbd></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Delete</td>
|
|
||||||
<td><kbd>Delete</kbd></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Paste</td>
|
|
||||||
<td>&accelKey;+<kbd>V</kbd></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Redo</td>
|
|
||||||
<td><span class="win">&accelKey;+<kbd>Y</kbd></span>
|
|
||||||
<span class="noWin">&accelKey;+&shiftKey;+<kbd>Z</kbd></span></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Select All</td>
|
|
||||||
<td>&accelKey;+<kbd>A</kbd></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Undo</td>
|
|
||||||
<td>&accelKey;+<kbd>Z</kbd></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<th colspan="2">Search</th>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Find</td>
|
|
||||||
<td>&accelKey;+<kbd>F</kbd></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Find Again</td>
|
|
||||||
<td><kbd>F3</kbd><br/>
|
|
||||||
&accelKey;+<kbd>G</kbd></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Find As You Type Link</td>
|
|
||||||
<td><kbd>'</kbd></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Find As You Type Text</td>
|
|
||||||
<td><kbd>/</kbd></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Find Previous</td>
|
|
||||||
<td>&shiftKey;+<kbd>F3</kbd></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Web Search</td>
|
|
||||||
<td>&accelKey;+<kbd>K</kbd>
|
|
||||||
<span class="win"><br/>&accelKey;+<kbd>E</kbd></span>
|
|
||||||
<span class="unix"><br/>&accelKey;+<kbd>J</kbd></span></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
<tbody id="windows_tabs">
|
|
||||||
<tr>
|
|
||||||
<th colspan="2">Windows & Tabs</th>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Close Tab</td>
|
|
||||||
<td>&accelKey;+<kbd>W</kbd>
|
|
||||||
<span class="noMac"><br/>&ctrlKey;+<kbd>F4</kbd></span></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Close Window</td>
|
|
||||||
<td>&accelKey;+&shiftKey;+<kbd>W</kbd>
|
|
||||||
<span class="noMac"><br/>&altKey;+<kbd>F4</kbd></span></td>
|
|
||||||
</tr>
|
|
||||||
<!-- LOCALIZATION NOTE:
|
|
||||||
"Left"/"Up" and "Right"/"Down" might need special treatment
|
|
||||||
for bidi locales, as used in the following two entries.
|
|
||||||
-->
|
|
||||||
<tr>
|
|
||||||
<td>Move Tab Left<br/>
|
|
||||||
(when tab is focused)</td>
|
|
||||||
<td>&accelKey;+<kbd>Left Arrow</kbd><br/>
|
|
||||||
&accelKey;+<kbd>Up Arrow</kbd></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Move Tab Right<br/>
|
|
||||||
(when tab is focused)</td>
|
|
||||||
<td>&accelKey;+<kbd>Right Arrow</kbd><br/>
|
|
||||||
&accelKey;+<kbd>Down Arrow</kbd></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Move Tab to Beginning<br/>
|
|
||||||
(when tab is focused)</td>
|
|
||||||
<td>&accelKey;+<kbd>Home</kbd></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Move Tab to End<br/>
|
|
||||||
(when tab is focused)</td>
|
|
||||||
<td>&accelKey;+<kbd>End</kbd></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>New Tab</td>
|
|
||||||
<td>&accelKey;+<kbd>T</kbd></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>New Window</td>
|
|
||||||
<td>&accelKey;+<kbd>N</kbd></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Next Tab</td>
|
|
||||||
<td>&ctrlKey;+<kbd>Tab</kbd><br/>
|
|
||||||
<span class="mac">&accelKey;+&altKey;+Right Arrow<br/></span>
|
|
||||||
&ctrlKey;+<kbd>Page Down</kbd></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Open Address in New Tab<br/>
|
|
||||||
(from Location Bar or Search Bar)</td>
|
|
||||||
<td>&altKey;+&enterKey;</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Previous Tab</td>
|
|
||||||
<td>&ctrlKey;+&shiftKey;+<kbd>Tab</kbd><br/>
|
|
||||||
<span class="mac">&accelKey;+&altKey;+Left Arrow<br/></span>
|
|
||||||
&ctrlKey;+<kbd>Page Up</kbd></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Restore Recently Closed Tab</td>
|
|
||||||
<td>&accelKey;+&shiftKey;+<kbd>T</kbd></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Select Tab (1 to 8)</td>
|
|
||||||
<td><span class="noUnix">&accelKey;</span><span
|
|
||||||
class="unix">&altKey;</span>+(<kbd>1</kbd> to <kbd>8</kbd>)</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Select Last Tab</td>
|
|
||||||
<td><span class="noUnix">&accelKey;</span><span
|
|
||||||
class="unix">&altKey;</span>+<kbd>9</kbd></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<th colspan="2">Tools</th>
|
|
||||||
</tr>
|
|
||||||
<tr class="noUnix">
|
|
||||||
<td>Bookmark All Tabs</td>
|
|
||||||
<td>&accelKey;+&shiftKey;+<kbd>D</kbd></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Bookmark This Page</td>
|
|
||||||
<td>&accelKey;+<kbd>D</kbd></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Bookmarks</td>
|
|
||||||
<td>&accelKey;+<kbd>B</kbd>
|
|
||||||
<span class="win"><br/>&accelKey;+<kbd>I</kbd></span></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Caret Browsing</td>
|
|
||||||
<td><kbd>F7</kbd></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Downloads</td>
|
|
||||||
<td><span class="noUnix">&accelKey;+<kbd>J</kbd></span>
|
|
||||||
<span class="unix">&accelKey;+<kbd>Y</kbd></span></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>History</td>
|
|
||||||
<td><span class="noMac">&accelKey;+<kbd>H</kbd></span>
|
|
||||||
<span class="mac">&accelKey;+&shiftKey;+<kbd>H</kbd></span></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Clear Private Data</td>
|
|
||||||
<td>&accelKey;+&shiftKey;+<kbd>Del</kbd></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
<tbody>
|
|
||||||
<tr>
|
|
||||||
<th colspan="2">Miscellaneous</th>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Complete .com Address</td>
|
|
||||||
<td>&accelKey;+&enterKey;</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Complete .net Address</td>
|
|
||||||
<td>&shiftKey;+&enterKey;</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Complete .org Address</td>
|
|
||||||
<td>&accelKey;+&shiftKey;+&enterKey;</td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Delete Selected Autocomplete Entry</td>
|
|
||||||
<td><span class="noMac"><kbd>Del</kbd></span>
|
|
||||||
<span class="mac">&shiftKey;+<kbd>Del</kbd></span></td>
|
|
||||||
</tr>
|
|
||||||
<tr class="noMac">
|
|
||||||
<td>Full Screen</td>
|
|
||||||
<td><kbd>F11</kbd></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Select Location Bar</td>
|
|
||||||
<td><span class="noMac">&altKey;+<kbd>D</kbd><br/></span>
|
|
||||||
<kbd>F6</kbd><br />
|
|
||||||
&accelKey;+<kbd>L</kbd></td>
|
|
||||||
</tr>
|
|
||||||
<tr>
|
|
||||||
<td>Select or Manage Search Engines<br/>
|
|
||||||
(when Search Bar is focused)</td>
|
|
||||||
<td>&altKey;+<kbd>Up Arrow</kbd><br/>
|
|
||||||
&altKey;+<kbd>Down Arrow</kbd><span class="noMac"><br/>
|
|
||||||
<kbd>F4</kbd></span></td>
|
|
||||||
</tr>
|
|
||||||
</tbody>
|
|
||||||
</table>
|
|
||||||
|
|
||||||
<div class="contentsBox"><em>07 October 2007</em></div>
|
|
||||||
<p>Copyright © ©right.years; Contributors to the Mozilla Help Viewer Project.</p>
|
|
||||||
|
|
||||||
</body>
|
|
||||||
</html>
|
|
@ -1,137 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"[
|
|
||||||
<!ENTITY % brandDTD SYSTEM "chrome://branding/locale/brand.dtd" >
|
|
||||||
%brandDTD;
|
|
||||||
<!ENTITY % platformDTD SYSTEM "chrome://browser/locale/help/platformStrings.dtd" >
|
|
||||||
%platformDTD;
|
|
||||||
]>
|
|
||||||
<!--
|
|
||||||
Contributors:
|
|
||||||
Daniel Wang (original author)
|
|
||||||
Jeff Walden <jwalden+code@mit.edu> (minor editorial nits, XHTML conversion)
|
|
||||||
Steffen Wilberg <steffen.wilberg@web.de> (minor editorial nits)
|
|
||||||
-->
|
|
||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
||||||
<head>
|
|
||||||
<title>Tabbed Browsing</title>
|
|
||||||
<link rel="stylesheet" type="text/css" href="chrome://help/skin/helpFileLayout.css"/>
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body>
|
|
||||||
<h1>Tabbed Browsing</h1>
|
|
||||||
|
|
||||||
<p>Tabbed browsing lets you open tabs, each displaying a web page, within a
|
|
||||||
single &brandShortName; window. You can open links in new tabs, where they
|
|
||||||
will load while you read the current page. You don't have to use tabbed
|
|
||||||
browsing, but if you do you might find tabbed browsing is a better, faster
|
|
||||||
way to browse the Web.</p>
|
|
||||||
|
|
||||||
<div class="contentsBox">In this section:
|
|
||||||
<ul>
|
|
||||||
<li><a href="#creating_loading_tabs">Creating and Loading Tabs</a></li>
|
|
||||||
<li><a href="#moving_tabs">Moving Tabs Within a Window</a></li>
|
|
||||||
<li><a href="#closing_tabs">Closing Tabs</a></li>
|
|
||||||
<li><a href="#customizing">Customizing Tabbed Browsing</a></li>
|
|
||||||
<li><a href="#tips_tricks">Tips and Tricks</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<h2 id="creating_loading_tabs">Creating and Loading Tabs</h2>
|
|
||||||
|
|
||||||
<p>To open a new tab, press &accelKey;+<kbd>T</kbd>, select <span
|
|
||||||
class="menuPath">File > New Tab</span>, or double-click an empty space in
|
|
||||||
the Tab Bar.</p>
|
|
||||||
|
|
||||||
<p>To load a link in a tab, you can do one of the following:</p>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
<li>Middle-click the link. (If you have a mouse wheel, clicking the wheel is
|
|
||||||
equivalent to middle-clicking.)</li>
|
|
||||||
<li>Drag the link and drop it on an empty space in the Tab Bar. (If only one
|
|
||||||
web page is open, the Tab Bar may be hidden. See <a
|
|
||||||
href="#customizing">Customizing Tabbed Browsing</a> for information on how
|
|
||||||
to change this.)</li>
|
|
||||||
<li>Drag and drop the link onto a tab to open the link in that tab.</li>
|
|
||||||
<li><span class="noMac">Right-click</span><span class="mac">Press &ctrlKey;,
|
|
||||||
click on</span> the link, and choose <span
|
|
||||||
class="menuPath">Open Link in New Tab</span> from the context menu.</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<p>To open a URL in the Location Bar in a new tab, enter the URL and press
|
|
||||||
&altKey;+&enterKey;.</p>
|
|
||||||
|
|
||||||
<h2 id="moving_tabs">Moving Tabs Within a Window</h2>
|
|
||||||
|
|
||||||
<p>Tabs are displayed in the order you open them, which may not always be what
|
|
||||||
you want. To move a tab to a different location within a &brandShortName;
|
|
||||||
window, simply drag it there using your mouse. While you are dragging the
|
|
||||||
tab, &brandShortName; displays a small indicator to show where the tab will be
|
|
||||||
moved. Alternately, you can use <a
|
|
||||||
href="shortcuts.xhtml#windows_tabs">keyboard shortcuts</a> to move tabs within
|
|
||||||
a window if desired.</p>
|
|
||||||
|
|
||||||
<h2 id="closing_tabs">Closing and Restoring Tabs</h2>
|
|
||||||
|
|
||||||
<p>To close the current tab, press &accelKey;+<kbd>W</kbd>, click the Close Tab
|
|
||||||
button, middle-click the tab, or select <span class="menuPath">File >
|
|
||||||
Close Tab</span>. To close all tabs other than the current one, <span
|
|
||||||
class="noMac">right-click</span><span class="mac">press &ctrlKey;,
|
|
||||||
click</span> on the tab and choose <span class="menuPath">Close Other
|
|
||||||
Tabs</span>.</p>
|
|
||||||
|
|
||||||
<p>&brandShortName; windows keep a list of tabs you closed recently. You can
|
|
||||||
restore any tab by selecting it from <span class="menuPath">History >
|
|
||||||
Recently Closed Tabs</span>. You can restore all tabs by selecting <span
|
|
||||||
class="menuPath">History > Recently Closed Tabs > Open All in Tabs
|
|
||||||
</span>. Press &accelKey;+&shiftKey;+<kbd>T</kbd> to open them one by one in
|
|
||||||
reverse order.</p>
|
|
||||||
|
|
||||||
<h2 id="customizing">Customizing Tabbed Browsing</h2>
|
|
||||||
<p>To change tabbed browsing &pref.plural; select &pref.menuPath; and open the
|
|
||||||
<a href="prefs.xhtml#tabs_options"><em>Tabs</em> panel</a>.</p>
|
|
||||||
|
|
||||||
<h2 id="tips_tricks">Tips and Tricks</h2>
|
|
||||||
|
|
||||||
<dl>
|
|
||||||
|
|
||||||
<dt id="bookmarking_tabbed_browsing">Bookmarks and Tabbed Browsing</dt>
|
|
||||||
<dd>To bookmark a set of tabs:</dd>
|
|
||||||
<dd>
|
|
||||||
<ol>
|
|
||||||
<li><span class="noUnix">Press &accelKey;+&shiftKey;+<kbd>D</kbd> or
|
|
||||||
select</span><span class="unix">Select</span>
|
|
||||||
<span class="menuPath">Bookmarks > Bookmark All Tabs</span> to add
|
|
||||||
all the tabs in the current window to a new bookmark folder.</li>
|
|
||||||
<li>To open bookmarks in tabs, open a bookmark folder menu and choose
|
|
||||||
<span class="menuPath">Open in Tabs</span>. You can also middle-click
|
|
||||||
on the folder to open its contents in tabs. The bookmarks will open in
|
|
||||||
existing tabs, not new ones.</li>
|
|
||||||
</ol>
|
|
||||||
</dd>
|
|
||||||
|
|
||||||
<dt id="home_page_as_tabs">Home Page as Tabs</dt>
|
|
||||||
<dd>Instead of using only one web page as your homepage, you can make your
|
|
||||||
home page a set of tabs. Select your favorite web sites and open them in
|
|
||||||
tabs in a single window. Select &pref.menuPath; and open the <a
|
|
||||||
href="prefs.xhtml#main_options"><em>Main</em> panel</a>. Under
|
|
||||||
<em>Startup</em>, press the <em>Use Current Pages</em> button. Now
|
|
||||||
when you press the Home button, your favorite web sites will load with just
|
|
||||||
a click.</dd>
|
|
||||||
|
|
||||||
<dt>Adding a New Tab Toolbar Button</dt>
|
|
||||||
<dd>You can add a New Tab button on the toolbar to easily open new tabs by <a
|
|
||||||
href="customization.xhtml#rearranging_toolbar_items">customizing your
|
|
||||||
toolbars</a>.</dd>
|
|
||||||
|
|
||||||
<dt id="keyboard_shortcuts">Keyboard shortcuts</dt>
|
|
||||||
<dd>&brandShortName; has an extensive set of shortcuts related to tabbed
|
|
||||||
browsing; see the full list in <a
|
|
||||||
href="shortcuts.xhtml#windows_tabs">Keyboard Shortcuts</a>.</dd>
|
|
||||||
|
|
||||||
</dl>
|
|
||||||
|
|
||||||
<div class="contentsBox"><em>12 September 2006</em></div>
|
|
||||||
<p>Copyright © ©right.years; Contributors to the Mozilla Help Viewer Project.</p>
|
|
||||||
|
|
||||||
</body>
|
|
||||||
</html>
|
|
@ -1,558 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="UTF-8"?>
|
|
||||||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"[
|
|
||||||
<!ENTITY % brandDTD SYSTEM "chrome://branding/locale/brand.dtd" >
|
|
||||||
%brandDTD;
|
|
||||||
<!ENTITY % platformDTD SYSTEM "chrome://browser/locale/help/platformStrings.dtd" >
|
|
||||||
%platformDTD;
|
|
||||||
]>
|
|
||||||
<!--
|
|
||||||
Contributors:
|
|
||||||
R.J. Keller <rlk@trfenv.com> (original author)
|
|
||||||
Nilson Cain <nilson@gmail.com>
|
|
||||||
Steffen Wilberg <steffen.wilberg@web.de>
|
|
||||||
-->
|
|
||||||
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
||||||
<head>
|
|
||||||
<title>Using &brandFullName;</title>
|
|
||||||
<link rel="stylesheet" type="text/css"
|
|
||||||
href="chrome://help/skin/helpFileLayout.css"/>
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body>
|
|
||||||
|
|
||||||
<h1>Using &brandFullName;</h1>
|
|
||||||
<p>Welcome to &brandFullName;! &brandShortName; is an Internet browser that
|
|
||||||
you can use to visit web pages and search the Web.</p>
|
|
||||||
|
|
||||||
<div class="contentsBox">In this section:
|
|
||||||
<ul>
|
|
||||||
<li><a href="#navigating_web_pages">Navigating Web Pages</a></li>
|
|
||||||
<li><a href="#searching">Searching</a></li>
|
|
||||||
<li><a href="#copying_saving_and_printing_pages">Copying, Saving, and
|
|
||||||
Printing Pages</a></li>
|
|
||||||
<li><a href="#improving_speed_and_efficiency">Improving Speed and
|
|
||||||
Efficiency</a></li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<h2 id="navigating_web_pages">Navigating Web Pages</h2>
|
|
||||||
|
|
||||||
<h3 id="viewing_your_home_page">Viewing Your Home Page</h3>
|
|
||||||
<p>When you start &brandShortName;, you will see your home page. By default,
|
|
||||||
you will see &brandShortName;'s home page.</p>
|
|
||||||
|
|
||||||
<div class="noMac"><p><strong>Tips</strong>:</p>
|
|
||||||
<ul>
|
|
||||||
<li>To display more web content on the screen, you can use Full Screen mode.
|
|
||||||
Full Screen mode condenses the &brandShortName;'s Toolbars into one small
|
|
||||||
toolbar. To enable Full Screen mode, simply select
|
|
||||||
<span class="menuPath">View > Full Screen</span> or press
|
|
||||||
<kbd>F11</kbd>.</li>
|
|
||||||
<li>To go to your home page quickly, press &altKey;+<kbd>Home</kbd>.</li>
|
|
||||||
</ul></div>
|
|
||||||
|
|
||||||
<h3><strong id="moving_to_another_page">Moving to Another Page</strong></h3>
|
|
||||||
<p>You can move to a new web page by typing in its Internet address or URL
|
|
||||||
into the Location Bar. URLs normally begin with "http://" followed
|
|
||||||
by one or more names that identify the address. One example is
|
|
||||||
"http://www.mozilla.org/".</p>
|
|
||||||
|
|
||||||
<ol>
|
|
||||||
<li>Click the Location Bar to select the URL that is already there.</li>
|
|
||||||
<li>Type the URL of the page you want to visit. The URL you type replaces
|
|
||||||
any text already in the Location Bar.</li>
|
|
||||||
<li>Press &enterKey;.</li>
|
|
||||||
</ol>
|
|
||||||
|
|
||||||
<p><strong>Tip:</strong> To quickly select the URL of the Location Bar, press
|
|
||||||
&accelKey;+<kbd>L</kbd>.</p>
|
|
||||||
|
|
||||||
<p><img src="&images.baseURL;/urlbar.png" alt=""/></p>
|
|
||||||
|
|
||||||
<p><strong>Don't know a URL</strong>? Try typing something specific to the page
|
|
||||||
you want to visit, e.g. a name, into the Location Bar and hit &enterKey;.
|
|
||||||
This will take you to the top result in Google for that term.</p>
|
|
||||||
|
|
||||||
<h3 id="clicking_a_link">Clicking a Link</h3>
|
|
||||||
<p>Most web pages contain links you can click to move to other pages.</p>
|
|
||||||
|
|
||||||
<ol>
|
|
||||||
<li>Move the mouse pointer until it changes to a pointing finger. This
|
|
||||||
happens whenever the pointer is over a link. Most links are underlined
|
|
||||||
text, but buttons and pictures can also be links.</li>
|
|
||||||
<li>Click the link once. While the network locates the link's page, status
|
|
||||||
messages will appear at the bottom of the window.</li>
|
|
||||||
</ol>
|
|
||||||
|
|
||||||
<h3 id="retracing_your_steps">Retracing Your Steps</h3>
|
|
||||||
<p>There are several ways to revisit pages:</p>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
<li>To go back or forward one page, click the <em>Back</em> or
|
|
||||||
<em>Forward</em> button.</li>
|
|
||||||
<li>To go back or forward more than one page, click the small triangles on
|
|
||||||
the <em>Back</em> and <em>Forward</em> buttons. You'll see a list of pages
|
|
||||||
you've recently visited; to return to a page, choose it from the list.</li>
|
|
||||||
<li>To see a list of any URLs you've typed into the Location Bar, click the
|
|
||||||
down arrow at the right end of the Location Bar. To view a page, choose it
|
|
||||||
from the list.<br/>
|
|
||||||
<img src="&images.baseURL;/urlbar.png" alt=""/></li>
|
|
||||||
<li>To choose from pages you've visited during the current session, open the
|
|
||||||
History menu and use the list in the bottom section of the menu.</li>
|
|
||||||
<li>To choose from pages you've visited during the past several sessions,
|
|
||||||
open the <em>History</em> menu and choose <em>Show in Sidebar</em>. You will see the
|
|
||||||
History Sidebar. The History Sidebar displays a list of folders.
|
|
||||||
Clicking the folders displays subfolders or titles of web pages.
|
|
||||||
You can click a page's title to view that page.</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<h3 id="stopping_and_reloading">Stopping and Reloading</h3>
|
|
||||||
<p>If a page is loading too slowly or you no longer wish to view a page,
|
|
||||||
click the <em>Stop</em> button.</p>
|
|
||||||
|
|
||||||
<p>To reload the current page or to get the most up-to-date version, click
|
|
||||||
the <em>Reload</em> button or press &accelKey;+<kbd>R</kbd>.</p>
|
|
||||||
|
|
||||||
<h3 id="tabbed_browsing">Tabbed Browsing</h3>
|
|
||||||
<p>When you visit more than one web page at a time, you can use Tabbed
|
|
||||||
Browsing to navigate the Web faster and easier.</p>
|
|
||||||
|
|
||||||
<p>Tabbed Browsing lets you open tabs, each displaying a web page, within a
|
|
||||||
single &brandShortName; window. You don't have to have several windows open
|
|
||||||
to visit several different web pages. This frees up space on your desktop.
|
|
||||||
You can open, close, and reload web pages conveniently in one place without
|
|
||||||
having to switch to another window.</p>
|
|
||||||
|
|
||||||
<p>For more info, see <a href="tabbed_browsing.xhtml">Tabbed Browsing</a>.</p>
|
|
||||||
|
|
||||||
<h3 id="using_the_sidebar">Using the Sidebar</h3>
|
|
||||||
<p>The Sidebar is an area on the left side of the screen that you can use for
|
|
||||||
viewing bookmarks or history. Extensions may add new ways to use the Sidebar
|
|
||||||
as well.</p>
|
|
||||||
|
|
||||||
<p>To view an item in the Sidebar, select <span class="menuPath">View >
|
|
||||||
Sidebar</span>. From there you can select the Sidebar tab you want.</p>
|
|
||||||
|
|
||||||
<h2 id="searching">Searching</h2>
|
|
||||||
|
|
||||||
<h3 id="searching_the_web">Searching the Web</h3>
|
|
||||||
|
|
||||||
<p>Searching for web pages on a particular topic is as easy as typing a few
|
|
||||||
words into &brandShortName;'s Search Bar.<br/>
|
|
||||||
<img src="&images.baseURL;/searchbar.png" alt=""/></p>
|
|
||||||
|
|
||||||
<p>For example, if you want to find information about baby dolls:</p>
|
|
||||||
<ol>
|
|
||||||
<li>Click in the Search Bar.</li>
|
|
||||||
<li>Type the phrase <kbd>baby doll</kbd>. Your typing replaces any text
|
|
||||||
currently in the search bar.</li>
|
|
||||||
<li>Hit &enterKey; to search.</li>
|
|
||||||
</ol>
|
|
||||||
|
|
||||||
<p>Search results for "baby doll" appear in the &brandShortName; window.</p>
|
|
||||||
|
|
||||||
<h4 id="selecting_the_search_engine">Selecting the Search Engine</h4>
|
|
||||||
|
|
||||||
<p>You can switch the Search Engine by clicking on its icon and selecting the
|
|
||||||
Search Engine of your choice. Some Search Engines, like Google, search the
|
|
||||||
whole web; others, like Amazon.com, only search specific sites.</p>
|
|
||||||
|
|
||||||
<h4 id="manage_search_engines">Manage Search Engines</h4>
|
|
||||||
<p>Click on the icon of the Search Engine and select <em>Manage Search
|
|
||||||
Engines…</em> to add, reorder, remove, or restore the default Search Engines.
|
|
||||||
Select a Search Engine and click the appropriate button to to move
|
|
||||||
it around within the list or remove it. You can install new search engines by
|
|
||||||
clicking the <em>Get more search engines…</em> link.</p>
|
|
||||||
|
|
||||||
<h3 id="searching_on_selected_words_in_a_web_page">Searching the Web for
|
|
||||||
Words Selected in a Web Page</h3>
|
|
||||||
|
|
||||||
<p>&brandShortName; allows you to search the web for words you select within
|
|
||||||
a web page:</p>
|
|
||||||
|
|
||||||
<ol>
|
|
||||||
<li>Select (highlight) any words in a web page.</li>
|
|
||||||
<li><span class="noMac">Right-click</span><span class="mac">Press &ctrlKey;,
|
|
||||||
click the mouse button,</span> and choose <em>Search [Search Engine] for
|
|
||||||
"[your selected words]"</em> from the pop-up menu.</li>
|
|
||||||
</ol>
|
|
||||||
|
|
||||||
<p>&brandShortName; opens a new tab and uses the currently selected Search
|
|
||||||
Engine to search for your selected words.</p>
|
|
||||||
|
|
||||||
<h3 id="searching_within_a_page">Searching Within a Page</h3>
|
|
||||||
|
|
||||||
<p>To find text within the page you are currently viewing in
|
|
||||||
&brandShortName;:</p>
|
|
||||||
|
|
||||||
<ol>
|
|
||||||
<li>Press &accelKey;+<kbd>F</kbd> or select <span class="menuPath">Edit >
|
|
||||||
Find in This Page…</span> to open the Find Toolbar at the bottom of
|
|
||||||
&brandShortName;.</li>
|
|
||||||
<li>Type the text you want to find. The search automatically begins as soon as
|
|
||||||
you type something into the search box.</li>
|
|
||||||
<li>The Find Toolbar offers the following choices:
|
|
||||||
<ul>
|
|
||||||
<li><strong>Next</strong>: find text in the page that is below the current
|
|
||||||
cursor position.</li>
|
|
||||||
<li><strong>Previous</strong>: find text that is above the current cursor
|
|
||||||
position.</li>
|
|
||||||
<li><strong>Highlight all</strong>: highlight occurrences of your search
|
|
||||||
string in the current page.</li>
|
|
||||||
<li><strong>Match case</strong>: limit the search to text that has the
|
|
||||||
same capitalization as your search string.</li>
|
|
||||||
</ul>
|
|
||||||
</li>
|
|
||||||
</ol>
|
|
||||||
|
|
||||||
<p>To find the same word or phrase again, press <kbd>F3</kbd> or select
|
|
||||||
<span class="menuPath">Edit > Find Again</span>.</p>
|
|
||||||
|
|
||||||
<p><strong>Tip</strong>: Enable the <em>Search for text when I start typing</em>
|
|
||||||
&pref.singular; in the <em>General</em> tab of the <em>Advanced</em> panel of
|
|
||||||
&pref.menuPath; to enable the <em>Quick Find</em> mode of the Find Toolbar.
|
|
||||||
When enabled, the <em>Quick Find</em> toolbar automatically opens and starts
|
|
||||||
searching as soon as you type something. Unlike the Find Toolbar, the
|
|
||||||
<em>Quick Find</em> toolbar will close automatically after a few seconds of
|
|
||||||
inactivity.</p>
|
|
||||||
|
|
||||||
<h2 id="copying_saving_and_printing_pages">Copying, Saving, and Printing
|
|
||||||
Pages</h2>
|
|
||||||
|
|
||||||
<h3 id="copying_part_of_a_page">Copying Part of a Page</h3>
|
|
||||||
|
|
||||||
<p>To copy text from a page:</p>
|
|
||||||
<ol>
|
|
||||||
<li>Select the text.</li>
|
|
||||||
<li>Select <span class="menuPath">Edit > Copy</span> from the Menu
|
|
||||||
Bar.</li>
|
|
||||||
</ol>
|
|
||||||
|
|
||||||
<p>You can paste the text into other programs.</p>
|
|
||||||
|
|
||||||
<p>To copy a link (URL) or an image link from a page:</p>
|
|
||||||
|
|
||||||
<ol>
|
|
||||||
<li>Position the pointer over the link or image.</li>
|
|
||||||
<li><span class="noMac">Right-click</span><span class="mac">Press &ctrlKey;
|
|
||||||
and click on</span> the link or image to display a pop-up menu.</li>
|
|
||||||
<li>Choose Copy Link Location or Copy Image Location. If an image is also a
|
|
||||||
link, you can choose either menu item.</li>
|
|
||||||
</ol>
|
|
||||||
|
|
||||||
<p>You can paste the link into other programs or into &brandShortName;'s
|
|
||||||
Location Bar.</p>
|
|
||||||
|
|
||||||
<h3 id="saving_all_or_part_of_a_page">Saving All or Part of a Page</h3>
|
|
||||||
|
|
||||||
<p>To save an entire page in &brandShortName;:</p>
|
|
||||||
|
|
||||||
<ol>
|
|
||||||
<li>Select <span class="menuPath">File > Save Page As</span>. You will see
|
|
||||||
the Save As dialog box.</li>
|
|
||||||
<li>Choose a location for the saved page.</li>
|
|
||||||
<li>Choose a format for the page you want to save:
|
|
||||||
<ul>
|
|
||||||
<li><strong>Web Page, Complete</strong>: Save the whole web page along
|
|
||||||
with pictures. This choice allows you to view it as originally shown
|
|
||||||
with pictures, but it may not keep the HTML link structure of the
|
|
||||||
original page. &brandShortName; creates a new directory where the
|
|
||||||
page is saved to save pictures and other files necessary to show the
|
|
||||||
whole web page.</li>
|
|
||||||
<li><strong>Web Page, HTML Only</strong>: Save the original page
|
|
||||||
without pictures. This choice preserves the original HTML link
|
|
||||||
structure in one file.</li>
|
|
||||||
<li><strong>Text file</strong>: Save the original page as a text file.
|
|
||||||
This choice will not preserve the original HTML link structure, but
|
|
||||||
will allow you to see a text version of the web page in any text
|
|
||||||
editor.</li>
|
|
||||||
</ul>
|
|
||||||
</li>
|
|
||||||
<li>Type a file name for the page and click <em>Save</em>.</li>
|
|
||||||
</ol>
|
|
||||||
|
|
||||||
<p>To save a frame from within a web page:</p>
|
|
||||||
|
|
||||||
<ol>
|
|
||||||
<li>Position the mouse pointer within the frame.</li>
|
|
||||||
<li><span class="mac">Press &ctrlKey; and click on</span><span
|
|
||||||
class="noMac">Right-click</span> the frame to display a pop-up menu.</li>
|
|
||||||
<li>Select <span class="menuPath">This Frame > Save Frame As</span> from
|
|
||||||
the submenu. You will see the Save As dialog box.</li>
|
|
||||||
<li>Choose a location for the saved page.</li>
|
|
||||||
<li>Choose a format for the page you want to save.</li>
|
|
||||||
<li>Type a file name for the page and click <em>Save</em>.</li>
|
|
||||||
</ol>
|
|
||||||
|
|
||||||
<p>Saving a file onto your hard drive lets you view the page when you aren't
|
|
||||||
connected to the Internet.</p>
|
|
||||||
|
|
||||||
<p>To save an image from a page:</p>
|
|
||||||
<ol>
|
|
||||||
<li>Position the mouse pointer over the image.</li>
|
|
||||||
<li><span class="noMac">Right-click</span><span class="mac">Press &ctrlKey;
|
|
||||||
and click on</span> the image to display a pop-up menu.</li>
|
|
||||||
<li>Select <span class="menuPath">Save Image As</span>. You will see the
|
|
||||||
Save Image dialog box.</li>
|
|
||||||
<li>Choose a location for the saved image.</li>
|
|
||||||
<li>Type a file name for the image and click <em>Save</em>.</li>
|
|
||||||
</ol>
|
|
||||||
|
|
||||||
<p>To save a page without displaying it (which is useful for retrieving a
|
|
||||||
nonformatted page that isn't intended for viewing):</p>
|
|
||||||
|
|
||||||
<ol>
|
|
||||||
<li>Position the mouse pointer over a link to the page.</li>
|
|
||||||
<li><span class="noMac">Right-click</span><span class="mac">Press &ctrlKey;
|
|
||||||
and click on</span> the link to display a pop-up menu.</li>
|
|
||||||
<li>Select <span class="menuPath">Save Link to Disk</span>. You will see the
|
|
||||||
Save As dialog box.</li>
|
|
||||||
<li>Choose a location for the saved page.</li>
|
|
||||||
<li>Type a file name for the page and click <em>Save</em>.</li>
|
|
||||||
</ol>
|
|
||||||
|
|
||||||
<p><strong>Important</strong>: Some links automatically download and save files
|
|
||||||
to your hard drive after you click them. The URLs for these links often
|
|
||||||
begin with "ftp" or end with a file-type extension such as
|
|
||||||
"au" or "mpeg." These links might transmit software,
|
|
||||||
sound, or movie files and can launch helper applications that support the
|
|
||||||
files.</p>
|
|
||||||
|
|
||||||
<p><strong>Tip</strong>: To set an image as your desktop background,
|
|
||||||
<span class="noMac">right-click</span><span class="mac">press &ctrlKey;,
|
|
||||||
click the mouse button</span> on an image and choose <em>Set As Desktop
|
|
||||||
Background…</em> from the pop-up menu.</p>
|
|
||||||
|
|
||||||
<h3 id="printing_a_page">Printing a Page</h3>
|
|
||||||
|
|
||||||
<p>To print the current page:</p>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
<li>Select <span class="menuPath">File > Print</span>.</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<p>To print selected text:</p>
|
|
||||||
<ul>
|
|
||||||
<li>Select the text in the current page.</li>
|
|
||||||
<li>Select <span class="menuPath">File > Print</span>. The print dialog
|
|
||||||
box will appear.</li>
|
|
||||||
<li>Under <em>Print Range</em>, click <em>Selection</em>.</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<p>The web page's author and the size of the printed page, not the size of the
|
|
||||||
onscreen window, determine placement of content on the printed page. Text is
|
|
||||||
wrapped and graphics are repositioned to accommodate paper size.</p>
|
|
||||||
|
|
||||||
<h3 id="using_print_preview">Using Print Preview</h3>
|
|
||||||
|
|
||||||
<p>To have an early look at how a page will look before it is printed, you can
|
|
||||||
use Print Preview:</p>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
<li>Select <span class="menuPath">File > Print Preview</span>.</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<p>In Print Preview, you can do the following with pages you want to print:</p>
|
|
||||||
<ul>
|
|
||||||
<li><strong>View a preview of each page</strong>: Click the
|
|
||||||
Next <img alt="" src="chrome://global/skin/arrow/arrow-rit-sharp.gif"/>,
|
|
||||||
Previous <img alt="" src="chrome://global/skin/arrow/arrow-lft-sharp.gif"/>,
|
|
||||||
First <img alt="" src="chrome://global/skin/arrow/arrow-lft-sharp-end.gif"/>,
|
|
||||||
or Last <img alt="" src="chrome://global/skin/arrow/arrow-rit-sharp-end.gif"/>
|
|
||||||
button to move between pages.</li>
|
|
||||||
<li><strong>Change the scale (size) of pages</strong>: In the <em>Scale</em>
|
|
||||||
drop-down menu, choose "50%" to make each page half the size of
|
|
||||||
the original page. To automatically resize pages so that they fit the width
|
|
||||||
of the paper, choose "Shrink to Fit". You can also type in your
|
|
||||||
own percentage by choosing "Custom…".</li>
|
|
||||||
<li><strong>Change the orientation of the page</strong>: Choose
|
|
||||||
<em>Portrait</em> <img alt="" src="chrome://global/skin/icons/Portrait.png"/>
|
|
||||||
to position the page with the shorter side facing up. Choose
|
|
||||||
<em>Landscape</em> <img alt="" src="chrome://global/skin/icons/Landscape.png"/>
|
|
||||||
to position the page sideways with the longer side facing up.</li>
|
|
||||||
<li><strong>Go to Page Setup</strong>: Click <em>Page Setup</em> to further
|
|
||||||
customize pages you want to print.</li>
|
|
||||||
<li><strong>Go to Print</strong>: Click <em>Print</em> to print the
|
|
||||||
pages.</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<p class="noWin"><strong>Note</strong>: Some Print Preview functions are different or
|
|
||||||
unavailable on Mac OS and Linux.</p>
|
|
||||||
|
|
||||||
<h3 id="using_page_setup">Using Page Setup</h3>
|
|
||||||
<p class="noWin"><strong>Note</strong>: Some Page Setup functions are different or
|
|
||||||
unavailable on Mac OS and Linux.</p>
|
|
||||||
|
|
||||||
<p>To customize how pages are printed in &brandShortName;, you can use Page Setup:</p>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
<li>Select <span class="menuPath">File > Page Setup</span>.</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<p>In Page Setup, you can change the following settings for pages you want to
|
|
||||||
print:</p>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
<li><strong>Format & Options</strong>: Choose the orientation, scale, and other
|
|
||||||
options:
|
|
||||||
<ul>
|
|
||||||
<li><strong>Orientation</strong>:
|
|
||||||
<ul>
|
|
||||||
<li><strong>Portrait</strong>: Choose this <img alt=""
|
|
||||||
src="chrome://global/skin/icons/Portrait.png"/> to position the page
|
|
||||||
normally, with the shorter side facing up.</li>
|
|
||||||
<li><strong>Landscape</strong>: Choose this <img alt=""
|
|
||||||
src="chrome://global/skin/icons/Landscape.png"/> to position the page
|
|
||||||
sideways, with the longer side facing up.</li>
|
|
||||||
</ul>
|
|
||||||
</li>
|
|
||||||
<li><strong>Scale</strong>: Type in a percentage of the original size. For example,
|
|
||||||
type "50" to make each page half the size of the original page.
|
|
||||||
<ul>
|
|
||||||
<li><strong>Shrink To Fit Page Width</strong>: Select this to automatically
|
|
||||||
resize the page to the width of the paper.</li>
|
|
||||||
</ul>
|
|
||||||
</li>
|
|
||||||
<li><strong>Options</strong>:
|
|
||||||
<ul>
|
|
||||||
<li><strong>Print Background (colors and images)</strong>: Select this to
|
|
||||||
print background images and colors. If unselected only pictures and color in the
|
|
||||||
foreground (in front) are printed.</li>
|
|
||||||
</ul>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</li>
|
|
||||||
<li><strong>Margins & Header/Footer</strong>: Click this tab to set up margins,
|
|
||||||
headers, and footers:
|
|
||||||
<ul>
|
|
||||||
<li><strong>Margins:</strong>
|
|
||||||
<ul>
|
|
||||||
<li><strong>Top, Bottom, Left, Right</strong>: Type a margin in the given units
|
|
||||||
for the top, bottom, left, and right margins.</li>
|
|
||||||
</ul>
|
|
||||||
</li>
|
|
||||||
<li><strong>Headers & Footers</strong>: Each drop-down list represents either
|
|
||||||
a header or a footer area. The top row of drop-down lists are for the left, center, and
|
|
||||||
right header areas. The bottom row are for the left, center, and right footer areas. In
|
|
||||||
each drop-down list, choose one of the following options:
|
|
||||||
<ul>
|
|
||||||
<li><strong>--blank--</strong>: Show nothing in this area.</li>
|
|
||||||
<li><strong>Title</strong>: Show the web page title.</li>
|
|
||||||
<li><strong>URL</strong>: Show the web page URL (URL's usually start with
|
|
||||||
"http://").</li>
|
|
||||||
<li><strong>Date/Time</strong>: Show the date and time when the web page is
|
|
||||||
printed.</li>
|
|
||||||
<li><strong>Page #</strong>: Show the page number of each page.</li>
|
|
||||||
<li><strong>Page # of #</strong>: Show the page number along with the total number
|
|
||||||
of pages. For example, if you print a five page web page, "3 of 5" would
|
|
||||||
be shown on the third page.</li>
|
|
||||||
<li><strong>Custom</strong>: Type your own text. You can include any of the
|
|
||||||
following codes to print specific information:
|
|
||||||
<ul>
|
|
||||||
<li><strong>&PT</strong>: Page Number with Total (Example: "3 of
|
|
||||||
5")</li>
|
|
||||||
<li><strong>&P</strong>: Page Number</li>
|
|
||||||
<li><strong>&D</strong>: Date</li>
|
|
||||||
<li><strong>&U</strong>: URL</li>
|
|
||||||
<li><strong>&T</strong>: Page Title</li>
|
|
||||||
</ul>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<p><strong>Tip</strong>: To see a preview of changes made to Page Setup, use
|
|
||||||
<a href="using_firebird.xhtml#using_print_preview">Print Preview</a>.</p>
|
|
||||||
|
|
||||||
<h2 id="improving_speed_and_efficiency">Improving Speed and Efficiency</h2>
|
|
||||||
|
|
||||||
<h3 id="managing_different_file_types">Managing Different File Types</h3>
|
|
||||||
<p>&brandShortName; can handle many types of files. However, for some files such
|
|
||||||
as movies or music, &brandShortName; needs Plugins or external applications
|
|
||||||
that can handle those files. If &brandShortName; doesn't have the needed
|
|
||||||
Plugin or doesn't know what application to use to open the file, it can still
|
|
||||||
save the file to your hard disk. When saving files, you can keep track of them
|
|
||||||
using the Download Manager.</p>
|
|
||||||
|
|
||||||
<p>Plugins extend &brandShortName;'s functionality and run within it.
|
|
||||||
Plugins like Sun Java, Macromedia Flash, and RealNetworks RealPlayer allow
|
|
||||||
&brandShortName; to show multimedia files and run small applications such as
|
|
||||||
movies, animations, and games. You can find common Plugins on the <a href=
|
|
||||||
"https://pfs.mozilla.org/plugins/" target="_blank">Plugins page</a>
|
|
||||||
at Mozilla Update.</p>
|
|
||||||
|
|
||||||
<p>When files cannot be opened within &brandShortName;, you can choose to open
|
|
||||||
them with applications outside of &brandShortName;. For example, you can use
|
|
||||||
the media player of your choice to play MP3 files.</p>
|
|
||||||
|
|
||||||
<p>You can specify how &brandShortName; handles files it can't display in the
|
|
||||||
<em>Download Actions</em> dialog. To open this dialog, select &pref.menuPath;,
|
|
||||||
open the <em>Content</em> panel, and click the <em>Manage…</em> button in
|
|
||||||
the <em>File Types</em> section. You can change the action for a file type or
|
|
||||||
remove it.
|
|
||||||
More information about this dialog is available in <a
|
|
||||||
href="prefs.xhtml#file_types">File Types &pref.plural;</a>.</p>
|
|
||||||
|
|
||||||
<p>When you click on a file and &brandShortName; doesn't know how to handle it,
|
|
||||||
an <em>Opening</em> dialog box is displayed, offering these choices:</p>
|
|
||||||
|
|
||||||
<ul>
|
|
||||||
<li><strong>Open with</strong>: &brandShortName; opens the file using the
|
|
||||||
default program in your system settings. You can also choose a different
|
|
||||||
program by selecting <em>Other…</em> in the drop-down list.</li>
|
|
||||||
<li><strong>Save to Disk</strong>: &brandShortName; allows you to select a
|
|
||||||
location to save the file. If you have selected <em>Save all files to (this
|
|
||||||
folder)</em> in the <em>Main</em> panel of &pref.pluralCaps;,
|
|
||||||
the file will automatically be saved to the default folder; otherwise
|
|
||||||
&brandShortName; will ask you where to save it.</li>
|
|
||||||
<li><strong>Do this automatically for files like this from now on</strong>:
|
|
||||||
When this is selected, &brandShortName; will automatically perform the
|
|
||||||
selected action the next time you download a file of this type.</li>
|
|
||||||
</ul>
|
|
||||||
|
|
||||||
<p><strong>Tip</strong>: You can clear your saved &pref.plural; for <em>Do this
|
|
||||||
automatically for files like this from now on</em> in the <em>Download
|
|
||||||
Actions</em> dialog.</p>
|
|
||||||
|
|
||||||
<h3 id="making_firebird_your_default_browser">Making &brandShortName; Your
|
|
||||||
Default Browser</h3>
|
|
||||||
|
|
||||||
<p>&brandShortName; displays web pages on the Internet and
|
|
||||||
on your computer. To easily open web pages, you can make &brandShortName;
|
|
||||||
your default browser.</p>
|
|
||||||
|
|
||||||
<p>To make &brandShortName; your default web browser, select &pref.menuPath;
|
|
||||||
and click the <em>Check Now</em> button in the <em>Main</em> panel.</p>
|
|
||||||
|
|
||||||
<h3 id="changing_cache_settings">Changing Cache Settings</h3>
|
|
||||||
<p>&brandShortName; stores copies of frequently accessed pages in the cache.
|
|
||||||
By doing this &brandShortName; doesn't have to retrieve the page from the
|
|
||||||
network each time you view the web page.</p>
|
|
||||||
|
|
||||||
<p>To set the size of the cache:</p>
|
|
||||||
|
|
||||||
<ol>
|
|
||||||
<li>Select &pref.menuPath;.</li>
|
|
||||||
<li>Open the <em>Advanced</em> panel and click the <em>Network</em> tab.</li>
|
|
||||||
<li>Enter a number in the <em>Use up to</em> field to specify the size of the
|
|
||||||
cache. The default size is 50MB.</li>
|
|
||||||
</ol>
|
|
||||||
|
|
||||||
<p><strong>Important</strong>: A larger cache allows more data to be quickly
|
|
||||||
retrieved, but more of your hard disk space is used.</p>
|
|
||||||
|
|
||||||
<p>When you quit &brandShortName;, it performs cache maintenance. If
|
|
||||||
maintenance takes longer than you wish, try reducing the size of the disk
|
|
||||||
cache.</p>
|
|
||||||
|
|
||||||
<p>To reload a page at any time, click the <em>Reload</em> button in
|
|
||||||
&brandShortName;'s <em>Navigation Toolbar</em>. &brandShortName; then loads
|
|
||||||
and displays the latest version of the page.</p>
|
|
||||||
|
|
||||||
<div class="contentsBox"><em>12 September 2006</em></div>
|
|
||||||
<p>Copyright © ©right.years; Contributors to the Mozilla Help Viewer Project.</p>
|
|
||||||
|
|
||||||
</body>
|
|
||||||
</html>
|
|
@ -1,4 +0,0 @@
|
|||||||
# this is an empty file
|
|
||||||
# locales can ship "extra" files from here, to ship a custom set
|
|
||||||
# of files for the help system
|
|
||||||
# do not put any blank lines in this file
|
|
@ -68,26 +68,6 @@
|
|||||||
locale/browser/sidebar/sidebar.properties (%chrome/browser/sidebar/sidebar.properties)
|
locale/browser/sidebar/sidebar.properties (%chrome/browser/sidebar/sidebar.properties)
|
||||||
% locale browser-region @AB_CD@ %locale/browser-region/
|
% locale browser-region @AB_CD@ %locale/browser-region/
|
||||||
locale/browser-region/region.properties (%chrome/browser-region/region.properties)
|
locale/browser-region/region.properties (%chrome/browser-region/region.properties)
|
||||||
#ifdef MOZ_HELP_VIEWER
|
|
||||||
locale/browser/help/help.rdf (%chrome/help/firebirdhelp.rdf)
|
|
||||||
locale/browser/help/firebird-toc.rdf (%chrome/help/firebird-toc.rdf)
|
|
||||||
locale/browser/help/search-db.rdf (%chrome/help/search-db.rdf)
|
|
||||||
locale/browser/help/accessibility.xhtml (%chrome/help/accessibility.xhtml)
|
|
||||||
locale/browser/help/cookies.xhtml (%chrome/help/cookies.xhtml)
|
|
||||||
locale/browser/help/forieusers.xhtml (%chrome/help/forieusers.xhtml)
|
|
||||||
locale/browser/help/menu_reference.xhtml (%chrome/help/menu_reference.xhtml)
|
|
||||||
locale/browser/help/mouse_shortcuts.xhtml (%chrome/help/mouse_shortcuts.xhtml)
|
|
||||||
locale/browser/help/popup.xhtml (%chrome/help/popup.xhtml)
|
|
||||||
locale/browser/help/prefs.xhtml (%chrome/help/prefs.xhtml)
|
|
||||||
locale/browser/help/shortcuts.xhtml (%chrome/help/shortcuts.xhtml)
|
|
||||||
locale/browser/help/using_firebird.xhtml (%chrome/help/using_firebird.xhtml)
|
|
||||||
locale/browser/help/customization.xhtml (%chrome/help/customization.xhtml)
|
|
||||||
locale/browser/help/firefox_welcome.xhtml (%chrome/help/firefox_welcome.xhtml)
|
|
||||||
locale/browser/help/download_manager.xhtml (%chrome/help/download_manager.xhtml)
|
|
||||||
locale/browser/help/platformStrings.dtd (%chrome/help/platformStrings.dtd)
|
|
||||||
locale/browser/help/tabbed_browsing.xhtml (%chrome/help/tabbed_browsing.xhtml)
|
|
||||||
locale/browser/help/glossary.xhtml (%chrome/help/glossary.xhtml)
|
|
||||||
#endif
|
|
||||||
# the following files are browser-specific overrides
|
# the following files are browser-specific overrides
|
||||||
* locale/browser/netError.dtd (%chrome/overrides/netError.dtd)
|
* locale/browser/netError.dtd (%chrome/overrides/netError.dtd)
|
||||||
* locale/browser/appstrings.properties (%chrome/overrides/appstrings.properties)
|
* locale/browser/appstrings.properties (%chrome/overrides/appstrings.properties)
|
||||||
@ -100,4 +80,3 @@
|
|||||||
locale/branding/brand.dtd (%chrome/branding/brand.dtd)
|
locale/branding/brand.dtd (%chrome/branding/brand.dtd)
|
||||||
locale/branding/brand.properties (%chrome/branding/brand.properties)
|
locale/branding/brand.properties (%chrome/branding/brand.properties)
|
||||||
#endif
|
#endif
|
||||||
#includesubst @LOCALE_SRCDIR@/extra-jar.mn
|
|
||||||
|
@ -1062,7 +1062,7 @@ toolbar[iconsize="small"] #paste-button[disabled="true"] {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.ac-url-text {
|
.ac-url-text {
|
||||||
color: GrayText;
|
color: -moz-nativehyperlinktext;
|
||||||
}
|
}
|
||||||
|
|
||||||
.autocomplete-treebody::-moz-tree-cell-text(treecolAutoCompleteComment) {
|
.autocomplete-treebody::-moz-tree-cell-text(treecolAutoCompleteComment) {
|
||||||
|
@ -1022,7 +1022,7 @@ richlistitem[selected="true"][current="true"] > hbox > .ac-result-type-bookmark,
|
|||||||
}
|
}
|
||||||
|
|
||||||
.ac-url-text {
|
.ac-url-text {
|
||||||
color: #144fae;
|
color: -moz-nativehyperlinktext;
|
||||||
font-size: 0.95em;
|
font-size: 0.95em;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -13,7 +13,7 @@
|
|||||||
/* ::::: Location Bar AutoComplete Styling ::::: */
|
/* ::::: Location Bar AutoComplete Styling ::::: */
|
||||||
|
|
||||||
.ac-url-text:-moz-system-metric(windows-default-theme) {
|
.ac-url-text:-moz-system-metric(windows-default-theme) {
|
||||||
color: #0055bb;
|
color: -moz-nativehyperlinktext;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* ::::: Identity Indicator Styling ::::: */
|
/* ::::: Identity Indicator Styling ::::: */
|
||||||
|
@ -1208,7 +1208,7 @@ statusbarpanel#statusbar-display {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.ac-url-text {
|
.ac-url-text {
|
||||||
color: MenuText;
|
color: -moz-nativehyperlinktext;
|
||||||
}
|
}
|
||||||
|
|
||||||
.ac-url-text:-moz-system-metric(windows-default-theme) {
|
.ac-url-text:-moz-system-metric(windows-default-theme) {
|
||||||
|
@ -124,6 +124,42 @@ JSValIDToString(JSContext *cx, const jsval idval)
|
|||||||
return reinterpret_cast<PRUnichar*>(JS_GetStringChars(str));
|
return reinterpret_cast<PRUnichar*>(JS_GetStringChars(str));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static
|
||||||
|
nsresult
|
||||||
|
GetPrincipalDomainOrigin(nsIPrincipal* aPrincipal,
|
||||||
|
nsACString& aOrigin)
|
||||||
|
{
|
||||||
|
aOrigin.Truncate();
|
||||||
|
|
||||||
|
nsCOMPtr<nsIURI> uri;
|
||||||
|
aPrincipal->GetDomain(getter_AddRefs(uri));
|
||||||
|
if (!uri) {
|
||||||
|
aPrincipal->GetURI(getter_AddRefs(uri));
|
||||||
|
}
|
||||||
|
NS_ENSURE_TRUE(uri, NS_ERROR_UNEXPECTED);
|
||||||
|
|
||||||
|
uri = NS_GetInnermostURI(uri);
|
||||||
|
NS_ENSURE_TRUE(uri, NS_ERROR_UNEXPECTED);
|
||||||
|
|
||||||
|
nsCAutoString hostPort;
|
||||||
|
|
||||||
|
nsresult rv = uri->GetHostPort(hostPort);
|
||||||
|
if (NS_SUCCEEDED(rv)) {
|
||||||
|
nsCAutoString scheme;
|
||||||
|
rv = uri->GetScheme(scheme);
|
||||||
|
NS_ENSURE_SUCCESS(rv, rv);
|
||||||
|
aOrigin = scheme + NS_LITERAL_CSTRING("://") + hostPort;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
// Some URIs (e.g., nsSimpleURI) don't support host. Just
|
||||||
|
// get the full spec.
|
||||||
|
rv = uri->GetSpec(aOrigin);
|
||||||
|
NS_ENSURE_SUCCESS(rv, rv);
|
||||||
|
}
|
||||||
|
|
||||||
|
return NS_OK;
|
||||||
|
}
|
||||||
|
|
||||||
// Inline copy of JS_GetPrivate() for better inlining and optimization
|
// Inline copy of JS_GetPrivate() for better inlining and optimization
|
||||||
// possibilities. Also doesn't take a cx argument as it's not
|
// possibilities. Also doesn't take a cx argument as it's not
|
||||||
// needed. We access the private data only on objects whose private
|
// needed. We access the private data only on objects whose private
|
||||||
@ -687,6 +723,8 @@ nsScriptSecurityManager::CheckPropertyAccessImpl(PRUint32 aAction,
|
|||||||
// We have native code or the system principal: just allow access
|
// We have native code or the system principal: just allow access
|
||||||
return NS_OK;
|
return NS_OK;
|
||||||
|
|
||||||
|
nsCOMPtr<nsIPrincipal> objectPrincipal;
|
||||||
|
|
||||||
// Hold the class info data here so we don't have to go back to virtual
|
// Hold the class info data here so we don't have to go back to virtual
|
||||||
// methods all the time
|
// methods all the time
|
||||||
ClassInfoData classInfoData(aClassInfo, aClassName);
|
ClassInfoData classInfoData(aClassInfo, aClassName);
|
||||||
@ -741,7 +779,6 @@ nsScriptSecurityManager::CheckPropertyAccessImpl(PRUint32 aAction,
|
|||||||
printf("sameOrigin ");
|
printf("sameOrigin ");
|
||||||
#endif
|
#endif
|
||||||
nsCOMPtr<nsIPrincipal> principalHolder;
|
nsCOMPtr<nsIPrincipal> principalHolder;
|
||||||
nsIPrincipal *objectPrincipal;
|
|
||||||
if(aJSObject)
|
if(aJSObject)
|
||||||
{
|
{
|
||||||
objectPrincipal = doGetObjectPrincipal(aJSObject);
|
objectPrincipal = doGetObjectPrincipal(aJSObject);
|
||||||
@ -751,10 +788,8 @@ nsScriptSecurityManager::CheckPropertyAccessImpl(PRUint32 aAction,
|
|||||||
else if(aTargetURI)
|
else if(aTargetURI)
|
||||||
{
|
{
|
||||||
if (NS_FAILED(GetCodebasePrincipal(
|
if (NS_FAILED(GetCodebasePrincipal(
|
||||||
aTargetURI, getter_AddRefs(principalHolder))))
|
aTargetURI, getter_AddRefs(objectPrincipal))))
|
||||||
return NS_ERROR_FAILURE;
|
return NS_ERROR_FAILURE;
|
||||||
|
|
||||||
objectPrincipal = principalHolder;
|
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@ -855,31 +890,53 @@ nsScriptSecurityManager::CheckPropertyAccessImpl(PRUint32 aAction,
|
|||||||
switch(aAction)
|
switch(aAction)
|
||||||
{
|
{
|
||||||
case nsIXPCSecurityManager::ACCESS_GET_PROPERTY:
|
case nsIXPCSecurityManager::ACCESS_GET_PROPERTY:
|
||||||
stringName.AssignLiteral("GetPropertyDenied");
|
stringName.AssignLiteral("GetPropertyDeniedOrigins");
|
||||||
break;
|
break;
|
||||||
case nsIXPCSecurityManager::ACCESS_SET_PROPERTY:
|
case nsIXPCSecurityManager::ACCESS_SET_PROPERTY:
|
||||||
stringName.AssignLiteral("SetPropertyDenied");
|
stringName.AssignLiteral("SetPropertyDeniedOrigins");
|
||||||
break;
|
break;
|
||||||
case nsIXPCSecurityManager::ACCESS_CALL_METHOD:
|
case nsIXPCSecurityManager::ACCESS_CALL_METHOD:
|
||||||
stringName.AssignLiteral("CallMethodDenied");
|
stringName.AssignLiteral("CallMethodDeniedOrigins");
|
||||||
}
|
}
|
||||||
|
|
||||||
NS_ConvertUTF8toUTF16 className(classInfoData.GetName());
|
NS_ConvertUTF8toUTF16 className(classInfoData.GetName());
|
||||||
const PRUnichar *formatStrings[] =
|
nsCAutoString subjectOrigin;
|
||||||
{
|
GetPrincipalDomainOrigin(subjectPrincipal, subjectOrigin);
|
||||||
className.get(),
|
NS_ConvertUTF8toUTF16 subjectOriginUnicode(subjectOrigin);
|
||||||
JSValIDToString(cx, aProperty)
|
|
||||||
};
|
nsCAutoString objectOrigin;
|
||||||
|
if (objectPrincipal) {
|
||||||
|
GetPrincipalDomainOrigin(objectPrincipal, objectOrigin);
|
||||||
|
}
|
||||||
|
NS_ConvertUTF8toUTF16 objectOriginUnicode(objectOrigin);
|
||||||
|
|
||||||
nsXPIDLString errorMsg;
|
nsXPIDLString errorMsg;
|
||||||
|
const PRUnichar *formatStrings[] =
|
||||||
|
{
|
||||||
|
subjectOriginUnicode.get(),
|
||||||
|
className.get(),
|
||||||
|
JSValIDToString(cx, aProperty),
|
||||||
|
objectOriginUnicode.get()
|
||||||
|
};
|
||||||
|
|
||||||
|
PRUint32 length = NS_ARRAY_LENGTH(formatStrings);
|
||||||
|
|
||||||
|
if (!objectPrincipal) {
|
||||||
|
stringName.AppendLiteral("OnlySubject");
|
||||||
|
--length;
|
||||||
|
}
|
||||||
|
|
||||||
// We need to keep our existing failure rv and not override it
|
// We need to keep our existing failure rv and not override it
|
||||||
// with a likely success code from the following string bundle
|
// with a likely success code from the following string bundle
|
||||||
// call in order to throw the correct security exception later.
|
// call in order to throw the correct security exception later.
|
||||||
nsresult rv2 = sStrBundle->FormatStringFromName(stringName.get(),
|
nsresult rv2 = sStrBundle->FormatStringFromName(stringName.get(),
|
||||||
formatStrings,
|
formatStrings,
|
||||||
NS_ARRAY_LENGTH(formatStrings),
|
length,
|
||||||
getter_Copies(errorMsg));
|
getter_Copies(errorMsg));
|
||||||
NS_ENSURE_SUCCESS(rv2, rv2);
|
if (NS_FAILED(rv2)) {
|
||||||
|
// Might just be missing the string... Do our best
|
||||||
|
errorMsg = stringName;
|
||||||
|
}
|
||||||
|
|
||||||
SetPendingException(cx, errorMsg.get());
|
SetPendingException(cx, errorMsg.get());
|
||||||
|
|
||||||
@ -1011,40 +1068,6 @@ nsScriptSecurityManager::CheckSameOriginDOMProp(nsIPrincipal* aSubject,
|
|||||||
return NS_ERROR_DOM_PROP_ACCESS_DENIED;
|
return NS_ERROR_DOM_PROP_ACCESS_DENIED;
|
||||||
}
|
}
|
||||||
|
|
||||||
static
|
|
||||||
nsresult
|
|
||||||
GetPrincipalDomainOrigin(nsIPrincipal* aPrincipal,
|
|
||||||
nsACString& aOrigin)
|
|
||||||
{
|
|
||||||
aOrigin.Truncate();
|
|
||||||
|
|
||||||
nsCOMPtr<nsIURI> uri;
|
|
||||||
aPrincipal->GetDomain(getter_AddRefs(uri));
|
|
||||||
if (!uri) {
|
|
||||||
aPrincipal->GetURI(getter_AddRefs(uri));
|
|
||||||
}
|
|
||||||
|
|
||||||
NS_ENSURE_TRUE(uri, NS_ERROR_UNEXPECTED);
|
|
||||||
|
|
||||||
nsCAutoString hostPort;
|
|
||||||
|
|
||||||
nsresult rv = uri->GetHostPort(hostPort);
|
|
||||||
if (NS_SUCCEEDED(rv)) {
|
|
||||||
nsCAutoString scheme;
|
|
||||||
rv = uri->GetScheme(scheme);
|
|
||||||
NS_ENSURE_SUCCESS(rv, rv);
|
|
||||||
aOrigin = scheme + NS_LITERAL_CSTRING("://") + hostPort;
|
|
||||||
}
|
|
||||||
else {
|
|
||||||
// Some URIs (e.g., nsSimpleURI) don't support host. Just
|
|
||||||
// get the full spec.
|
|
||||||
rv = uri->GetSpec(aOrigin);
|
|
||||||
NS_ENSURE_SUCCESS(rv, rv);
|
|
||||||
}
|
|
||||||
|
|
||||||
return NS_OK;
|
|
||||||
}
|
|
||||||
|
|
||||||
nsresult
|
nsresult
|
||||||
nsScriptSecurityManager::LookupPolicy(nsIPrincipal* aPrincipal,
|
nsScriptSecurityManager::LookupPolicy(nsIPrincipal* aPrincipal,
|
||||||
ClassInfoData& aClassData,
|
ClassInfoData& aClassData,
|
||||||
@ -2961,18 +2984,32 @@ nsScriptSecurityManager::CanCreateWrapper(JSContext *cx,
|
|||||||
if (NS_FAILED(rv))
|
if (NS_FAILED(rv))
|
||||||
{
|
{
|
||||||
//-- Access denied, report an error
|
//-- Access denied, report an error
|
||||||
|
NS_ConvertUTF8toUTF16 strName("CreateWrapperDenied");
|
||||||
NS_NAMED_LITERAL_STRING(strName, "CreateWrapperDenied");
|
nsCAutoString origin;
|
||||||
|
nsresult rv2;
|
||||||
|
nsIPrincipal* subjectPrincipal = doGetSubjectPrincipal(&rv2);
|
||||||
|
if (NS_SUCCEEDED(rv2) && subjectPrincipal) {
|
||||||
|
GetPrincipalDomainOrigin(subjectPrincipal, origin);
|
||||||
|
}
|
||||||
|
NS_ConvertUTF8toUTF16 originUnicode(origin);
|
||||||
NS_ConvertUTF8toUTF16 className(objClassInfo.GetName());
|
NS_ConvertUTF8toUTF16 className(objClassInfo.GetName());
|
||||||
const PRUnichar* formatStrings[] = { className.get() };
|
const PRUnichar* formatStrings[] = {
|
||||||
|
className.get(),
|
||||||
|
originUnicode.get()
|
||||||
|
};
|
||||||
|
PRUint32 length = NS_ARRAY_LENGTH(formatStrings);
|
||||||
|
if (originUnicode.IsEmpty()) {
|
||||||
|
--length;
|
||||||
|
} else {
|
||||||
|
strName.AppendLiteral("ForOrigin");
|
||||||
|
}
|
||||||
nsXPIDLString errorMsg;
|
nsXPIDLString errorMsg;
|
||||||
// We need to keep our existing failure rv and not override it
|
// We need to keep our existing failure rv and not override it
|
||||||
// with a likely success code from the following string bundle
|
// with a likely success code from the following string bundle
|
||||||
// call in order to throw the correct security exception later.
|
// call in order to throw the correct security exception later.
|
||||||
nsresult rv2 =
|
rv2 = sStrBundle->FormatStringFromName(strName.get(),
|
||||||
sStrBundle->FormatStringFromName(strName.get(),
|
|
||||||
formatStrings,
|
formatStrings,
|
||||||
NS_ARRAY_LENGTH(formatStrings),
|
length,
|
||||||
getter_Copies(errorMsg));
|
getter_Copies(errorMsg));
|
||||||
NS_ENSURE_SUCCESS(rv2, rv2);
|
NS_ENSURE_SUCCESS(rv2, rv2);
|
||||||
|
|
||||||
|
@ -106,6 +106,7 @@ MOZ_MEMORY = @MOZ_MEMORY@
|
|||||||
MOZ_JPROF = @MOZ_JPROF@
|
MOZ_JPROF = @MOZ_JPROF@
|
||||||
MOZ_SHARK = @MOZ_SHARK@
|
MOZ_SHARK = @MOZ_SHARK@
|
||||||
MOZ_CALLGRIND = @MOZ_CALLGRIND@
|
MOZ_CALLGRIND = @MOZ_CALLGRIND@
|
||||||
|
MOZ_VTUNE = @MOZ_VTUNE@
|
||||||
DEHYDRA_PATH = @DEHYDRA_PATH@
|
DEHYDRA_PATH = @DEHYDRA_PATH@
|
||||||
|
|
||||||
MOZ_XPCTOOLS = @MOZ_XPCTOOLS@
|
MOZ_XPCTOOLS = @MOZ_XPCTOOLS@
|
||||||
@ -164,6 +165,7 @@ MOZ_MORK = @MOZ_MORK@
|
|||||||
MOZ_MORKREADER = @MOZ_MORKREADER@
|
MOZ_MORKREADER = @MOZ_MORKREADER@
|
||||||
MOZ_NO_XPCOM_OBSOLETE = @MOZ_NO_XPCOM_OBSOLETE@
|
MOZ_NO_XPCOM_OBSOLETE = @MOZ_NO_XPCOM_OBSOLETE@
|
||||||
MOZ_NO_FAST_LOAD = @MOZ_NO_FAST_LOAD@
|
MOZ_NO_FAST_LOAD = @MOZ_NO_FAST_LOAD@
|
||||||
|
MOZ_OGG = @MOZ_OGG@
|
||||||
MOZ_MEDIA = @MOZ_MEDIA@
|
MOZ_MEDIA = @MOZ_MEDIA@
|
||||||
NS_PRINTING = @NS_PRINTING@
|
NS_PRINTING = @NS_PRINTING@
|
||||||
MOZ_CRASHREPORTER = @MOZ_CRASHREPORTER@
|
MOZ_CRASHREPORTER = @MOZ_CRASHREPORTER@
|
||||||
|
File diff suppressed because it is too large
Load Diff
@ -10,4 +10,4 @@
|
|||||||
# hardcoded milestones in the tree from these two files.
|
# hardcoded milestones in the tree from these two files.
|
||||||
#--------------------------------------------------------
|
#--------------------------------------------------------
|
||||||
|
|
||||||
1.9.1a1pre
|
1.9.1a2pre
|
||||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user