From 9c126b069b0f3bf208650faff7baeecaaf317a05 Mon Sep 17 00:00:00 2001 From: "rpotts%netscape.com" Date: Mon, 1 Apr 2002 21:22:27 +0000 Subject: [PATCH] bug #40867 (r=bzarsky@mit.edu, sr=jst@netscape.com, a=asa@mozilla.org) Add new caching API to allow view-source to load from the cache and not the network. --- docshell/base/MANIFEST_IDL | 37 - docshell/base/Makefile.in | 1 + docshell/base/makefile.win | 97 - docshell/base/nsDocShell.cpp | 120 +- docshell/base/nsDocShell.h | 3 + docshell/base/nsIWebPageDescriptor.idl | 65 + docshell/macbuild/docshellIDL.xml | 1870 ----------------- xpfe/browser/resources/content/navigator.js | 54 +- .../resources/content/navigatorOverlay.xul | 2 +- xpfe/browser/resources/content/viewsource.js | 71 +- .../content/contentAreaContextOverlay.xul | 2 +- .../resources/content/nsContextMenu.js | 6 +- .../components/shistory/public/nsISHEntry.idl | 2 + xpfe/components/shistory/src/nsSHEntry.cpp | 33 +- 14 files changed, 293 insertions(+), 2070 deletions(-) create mode 100644 docshell/base/nsIWebPageDescriptor.idl diff --git a/docshell/base/MANIFEST_IDL b/docshell/base/MANIFEST_IDL index 13a5a0c9c55..e69de29bb2d 100644 --- a/docshell/base/MANIFEST_IDL +++ b/docshell/base/MANIFEST_IDL @@ -1,37 +0,0 @@ -# The contents of this file are subject to the Netscape Public -# License Version 1.1 (the "License"); you may not use this file -# except in compliance with the License. You may obtain a copy of -# the License at http://www.mozilla.org/NPL/ -# -# Software distributed under the License is distributed on an "AS -# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or -# implied. See the License for the specific language governing -# rights and limitations under the License. -# -# The Original Code is mozilla.org code. -# -# The Initial Developer of the Original Code is Netscape -# Communications Corporation. Portions created by Netscape are -# Copyright (C) 1998 Netscape Communications Corporation. All -# Rights Reserved. -# -# Contributor(s): -# -# This is a list of local files which get copied to the mozilla:idl directory -# - -nsCDocShell.idl -nsCDefaultURIFixup.idl -nsIDocShell.idl -nsIDocShellLoadInfo.idl -nsIDocShellTreeItem.idl -nsIDocShellTreeNode.idl -nsIDocShellTreeOwner.idl -nsIMarkupDocumentViewer.idl -nsIScrollable.idl -nsITextScroll.idl -nsIContentViewer.idl -nsIContentViewerEdit.idl -nsIContentViewerFile.idl -nsIURIFixup.idl -nsIEditorDocShell.idl \ No newline at end of file diff --git a/docshell/base/Makefile.in b/docshell/base/Makefile.in index abe28293f04..4ff0b362459 100644 --- a/docshell/base/Makefile.in +++ b/docshell/base/Makefile.in @@ -81,6 +81,7 @@ XPIDLSRCS = \ nsIContentViewerFile.idl \ nsIURIFixup.idl \ nsIEditorDocShell.idl \ + nsIWebPageDescriptor.idl \ $(NULL) CPPSRCS = \ diff --git a/docshell/base/makefile.win b/docshell/base/makefile.win index 3aac8caae4b..e69de29bb2d 100644 --- a/docshell/base/makefile.win +++ b/docshell/base/makefile.win @@ -1,97 +0,0 @@ -#!nmake -# -# The contents of this file are subject to the Mozilla Public -# License Version 1.1 (the "License"); you may not use this file -# except in compliance with the License. You may obtain a copy of -# the License at http://www.mozilla.org/MPL/ -# -# Software distributed under the License is distributed on an "AS -# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or -# implied. See the License for the specific language governing -# rights and limitations under the License. -# -# The Original Code is the Mozilla browser. -# -# The Initial Developer of the Original Code is Netscape -# Communications, Inc. Portions created by Netscape are -# Copyright (C) 1999, Mozilla. All Rights Reserved. -# -# Contributor(s): -# Travis Bogard - -DEPTH=..\.. -MODULE=docshell -XPIDL_MODULE=docshell_base -REQUIRES = xpcom \ - string \ - caps \ - necko \ - layout \ - dom \ - js \ - uriloader \ - exthandler \ - htmlparser \ - view \ - pref \ - locale \ - webBrowser_core \ - xpconnect \ - widget \ - shistory \ - intl \ - plugin \ - webshell \ - chardet \ - uconv \ - content_xul \ - find \ - nkcache \ - content \ - gfx \ - history \ - composer \ - commandhandler \ - editor \ - $(NULL) - -LIBRARY_NAME=basedocshell_s - -XPIDLSRCS= \ - .\nsCDocShell.idl \ - .\nsCDefaultURIFixup.idl \ - .\nsIDocShell.idl \ - .\nsIDocShellHistory.idl \ - .\nsIDocShellLoadInfo.idl \ - .\nsIDocShellTreeItem.idl \ - .\nsIDocShellTreeNode.idl \ - .\nsIDocShellTreeOwner.idl \ - .\nsIContentViewer.idl \ - .\nsIContentViewerEdit.idl \ - .\nsIContentViewerFile.idl \ - .\nsIMarkupDocumentViewer.idl \ - .\nsIScrollable.idl \ - .\nsITextScroll.idl \ - .\nsIWebNavigation.idl \ - .\nsIURIFixup.idl \ - .\nsIEditorDocShell.idl \ - $(NULL) - -CPP_OBJS= \ - .\$(OBJDIR)\nsDocShell.obj \ - .\$(OBJDIR)\nsDocShellEditorData.obj \ - .\$(OBJDIR)\nsWebShell.obj \ - .\$(OBJDIR)\nsDocShellEnumerator.obj \ - .\$(OBJDIR)\nsDocShellLoadInfo.obj \ - .\$(OBJDIR)\nsDSURIContentListener.obj \ - .\$(OBJDIR)\nsDefaultURIFixup.obj \ - $(NULL) - -include <$(DEPTH)\config\rules.mak> -include <$(DEPTH)\config\config.mak> - -nsDocShell.cpp : nsDocShell.h - -libs:: $(LIBRARY) - $(MAKE_INSTALL) $(LIBRARY) $(DIST)\lib - diff --git a/docshell/base/nsDocShell.cpp b/docshell/base/nsDocShell.cpp index 20e7d344f38..df86b1ada7b 100644 --- a/docshell/base/nsDocShell.cpp +++ b/docshell/base/nsDocShell.cpp @@ -271,6 +271,7 @@ NS_INTERFACE_MAP_BEGIN(nsDocShell) NS_INTERFACE_MAP_ENTRY(nsISupportsWeakReference) NS_INTERFACE_MAP_ENTRY(nsIContentViewerContainer) NS_INTERFACE_MAP_ENTRY(nsIEditorDocShell) + NS_INTERFACE_MAP_ENTRY(nsIWebPageDescriptor) NS_INTERFACE_MAP_END_THREADSAFE ///***************************************************************************** @@ -2552,6 +2553,83 @@ nsDocShell::GetSessionHistory(nsISHistory ** aSessionHistory) } +//***************************************************************************** +// nsDocShell::nsIWebPageDescriptor +//***************************************************************************** +NS_IMETHODIMP +nsDocShell::LoadPage(nsISupports *aPageDescriptor, PRUint32 aDisplayType) +{ + nsresult rv; + nsCOMPtr shEntry(do_QueryInterface(aPageDescriptor)); + + // Currently, the opaque 'page descriptor' is an nsISHEntry... + if (!shEntry) { + return NS_ERROR_INVALID_POINTER; + } + + // + // load the page as view-source + // + if (nsIWebPageDescriptor::DISPLAY_AS_SOURCE == aDisplayType) { + nsCOMPtr srcHE(do_QueryInterface(shEntry)); + nsCOMPtr oldUri, newUri; + nsCString spec, newSpec; + + // Create a new view-source URI and replace the original. + rv = srcHE->GetURI(getter_AddRefs(oldUri)); + if (NS_FAILED(rv)) + return rv; + + oldUri->GetSpec(spec); + newSpec.Append(NS_LITERAL_CSTRING("view-source:")); + newSpec.Append(spec); + + rv = NS_NewURI(getter_AddRefs(newUri), newSpec); + if (NS_FAILED(rv)) { + return rv; + } + shEntry->SetURI(newUri); + + // NULL out inappropriate cloned attributes... + shEntry->SetParent(nsnull); + shEntry->SetIsSubFrame(PR_FALSE); + } + + rv = LoadHistoryEntry(shEntry, LOAD_HISTORY); + return rv; +} + +NS_IMETHODIMP +nsDocShell::GetCurrentDescriptor(nsISupports **aPageDescriptor) +{ + nsresult rv; + nsCOMPtr src; + + if (!aPageDescriptor) { + return NS_ERROR_NULL_POINTER; + } + *aPageDescriptor = nsnull; + + src = mOSHE ? mOSHE : mLSHE; + if (src) { + nsCOMPtr sup;; + nsCOMPtr dest; + + rv = src->Clone(getter_AddRefs(dest)); + if (NS_FAILED(rv)) { + return rv; + } + + sup = do_QueryInterface(dest); + *aPageDescriptor = sup; + + NS_ADDREF(*aPageDescriptor); + } + + return (*aPageDescriptor) ? NS_OK : NS_ERROR_FAILURE; +} + + //***************************************************************************** // nsDocShell::nsIBaseWindow //***************************************************************************** @@ -5600,46 +5678,16 @@ nsDocShell::CloneAndReplace(nsISHEntry * src, PRUint32 aCloneID, NS_IF_ADDREF(*resultEntry); } else { - nsCOMPtr uri; - nsCOMPtr postdata; - nsCOMPtr LHS; - nsCOMPtr referrerURI; - PRUnichar *title = nsnull; - nsCOMPtr parent; - PRBool expirationStatus; - PRBool layoutStatus; - nsCOMPtr cacheKey; - PRUint32 id; - result = nsComponentManager::CreateInstance(NS_SHENTRY_CONTRACTID, NULL, - NS_GET_IID(nsISHEntry), - (void **) &dest); + // Clone the SHEntry... + result = src->Clone(&dest); if (NS_FAILED(result)) return result; - srcHE->GetURI(getter_AddRefs(uri)); - src->GetReferrerURI(getter_AddRefs(referrerURI)); - src->GetPostData(getter_AddRefs(postdata)); - srcHE->GetTitle(&title); - src->GetLayoutHistoryState(getter_AddRefs(LHS)); - //XXX Is this correct? parent is a weak ref in nsISHEntry - src->GetParent(getter_AddRefs(parent)); - src->GetID(&id); - src->GetExpirationStatus(&expirationStatus); - src->GetSaveLayoutStateFlag(&layoutStatus); - src->GetCacheKey(getter_AddRefs(cacheKey)); - - // XXX do we care much about valid values for these uri, title etc.... - dest->SetURI(uri); - dest->SetReferrerURI(referrerURI); - dest->SetPostData(postdata); - dest->SetLayoutHistoryState(LHS); - dest->SetTitle(title); - dest->SetParent(parent); - dest->SetID(id); + // This entry is for a frame... dest->SetIsSubFrame(PR_TRUE); - dest->SetExpirationStatus(expirationStatus); - dest->SetSaveLayoutStateFlag(layoutStatus); - dest->SetCacheKey(cacheKey); + + // Transfer the owning reference to 'resultEntry'. From this point on + // 'dest' is *not* an owning reference... *resultEntry = dest; PRInt32 childCount = 0; diff --git a/docshell/base/nsDocShell.h b/docshell/base/nsDocShell.h index 8157e0eb7fb..37d36eb4c28 100644 --- a/docshell/base/nsDocShell.h +++ b/docshell/base/nsDocShell.h @@ -71,6 +71,7 @@ #include "nsISupportsArray.h" #include "nsITimerCallback.h" #include "nsIWebNavigation.h" +#include "nsIWebPageDescriptor.h" #include "nsIWebProgressListener.h" #include "nsISHContainer.h" #include "nsIDocShellLoadInfo.h" @@ -154,6 +155,7 @@ class nsDocShell : public nsIDocShell, public nsIRefreshURI, public nsIWebProgressListener, public nsIEditorDocShell, + public nsIWebPageDescriptor, public nsSupportsWeakReference { friend class nsDSURIContentListener; @@ -179,6 +181,7 @@ public: NS_DECL_NSIREFRESHURI NS_DECL_NSICONTENTVIEWERCONTAINER NS_DECL_NSIEDITORDOCSHELL + NS_DECL_NSIWEBPAGEDESCRIPTOR nsresult SetLoadCookie(nsISupports * aCookie); nsresult GetLoadCookie(nsISupports ** aResult); diff --git a/docshell/base/nsIWebPageDescriptor.idl b/docshell/base/nsIWebPageDescriptor.idl new file mode 100644 index 00000000000..c3b13cc882f --- /dev/null +++ b/docshell/base/nsIWebPageDescriptor.idl @@ -0,0 +1,65 @@ +/* ***** BEGIN LICENSE BLOCK ***** + * Version: MPL 1.1/GPL 2.0/LGPL 2.1 + * + * The contents of this file are subject to the Mozilla Public License Version + * 1.1 (the "License"); you may not use this file except in compliance with + * the License. You may obtain a copy of the License at + * http://www.mozilla.org/MPL/ + * + * Software distributed under the License is distributed on an "AS IS" basis, + * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License + * for the specific language governing rights and limitations under the + * License. + * + * The Original Code is Mozilla. + * + * The Initial Developer of the Original Code is + * Netscape Communications Corp. + * Portions created by the Initial Developer are Copyright (C) 2002 + * the Initial Developer. All Rights Reserved. + * + * Contributor(s): + * + * 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 + * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), + * in which case the provisions of the GPL or the LGPL are applicable instead + * of those above. If you wish to allow use of your version of this file only + * under the terms of either the GPL or the LGPL, and not to allow others to + * use your version of this file under the terms of the MPL, indicate your + * decision by deleting the provisions above and replace them with the notice + * and other provisions required by the GPL or the LGPL. If you do not delete + * the provisions above, a recipient may use your version of this file under + * the terms of any one of the MPL, the GPL or the LGPL. + * + * ***** END LICENSE BLOCK ***** */ +#include "nsISupports.idl" + +/** + * The nsIWebPageDescriptor interface allows content being displayed in one + * window to be loaded into another window without refetching it from the + * network. + * + * @status UNDER_REVIEW + */ + +[scriptable, uuid(6f30b676-3710-4c2c-80b1-0395fb26516e)] +interface nsIWebPageDescriptor : nsISupports +{ + const unsigned long DISPLAY_AS_SOURCE = 0x0001; + const unsigned long DISPLAY_NORMAL = 0x0002; + + /** + * Tells the object to load the page specified by the page descriptor + * + * @return NS_OK - + * NS_ERROR_FAILURE - + */ + void LoadPage(in nsISupports aPageDescriptor, in unsigned long aDisplayType); + + + /** + * Retrieves the page descriptor for the curent document. + */ + readonly attribute nsISupports currentDescriptor; +}; diff --git a/docshell/macbuild/docshellIDL.xml b/docshell/macbuild/docshellIDL.xml index 1879e7f5943..e69de29bb2d 100644 --- a/docshell/macbuild/docshellIDL.xml +++ b/docshell/macbuild/docshellIDL.xml @@ -1,1870 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -]> - - - - - headers - - - - UserSourceTrees - - - AlwaysSearchUserPathsfalse - InterpretDOSAndUnixPathsfalse - RequireFrameworkStyleIncludesfalse - UserSearchPaths - - SearchPath - Path:::dist:idl: - PathFormatMacOS - PathRootProject - - Recursivetrue - FrameworkPathfalse - HostFlagsAll - - - SearchPath - Path::base: - PathFormatMacOS - PathRootProject - - Recursivetrue - FrameworkPathfalse - HostFlagsAll - - - SystemSearchPaths - - SearchPath - Path: - PathFormatMacOS - PathRootCodeWarrior - - Recursivetrue - FrameworkPathfalse - HostFlagsAll - - - - - MWRuntimeSettings_WorkingDirectory - MWRuntimeSettings_CommandLine - MWRuntimeSettings_HostApplication - Path - PathFormatGeneric - PathRootAbsolute - - MWRuntimeSettings_EnvVars - - - Linkerxpt Linker - PreLinker - PostLinker - Targetnameheaders - OutputDirectory - Path:::dist:docshell: - PathFormatMacOS - PathRootProject - - SaveEntriesUsingRelativePathsfalse - - - FileMappings - - FileTypeRSRC - FileExtension - CompilerRez - EditLanguage - Precompilefalse - Launchabletrue - ResourceFiletrue - IgnoredByMakefalse - - - FileTypeTEXT - FileExtension.bh - CompilerBalloon Help - EditLanguage - Precompilefalse - Launchablefalse - ResourceFilefalse - IgnoredByMakefalse - - - FileTypeTEXT - FileExtension.c - CompilerRunTSScript - EditLanguage - Precompilefalse - Launchablefalse - ResourceFilefalse - IgnoredByMakefalse - - - FileTypeTEXT - FileExtension.idl - Compilerxpidl - EditLanguage - Precompilefalse - Launchablefalse - ResourceFilefalse - IgnoredByMakefalse - - - FileTypeTEXT - FileExtension.r - CompilerRez - EditLanguageRez - Precompilefalse - Launchablefalse - ResourceFilefalse - IgnoredByMakefalse - - - FileTypersrc - FileExtension - CompilerRez - EditLanguage - Precompilefalse - Launchabletrue - ResourceFiletrue - IgnoredByMakefalse - - - FileExtension.xpt - Compiler - EditLanguage - Precompilefalse - Launchablefalse - ResourceFilefalse - IgnoredByMakefalse - - - - - CacheModDatestrue - ActivateBrowsertrue - DumpBrowserInfofalse - CacheSubprojectstrue - UseThirdPartyDebuggerfalse - DebuggerAppPath - Path - PathFormatGeneric - PathRootAbsolute - - DebuggerCmdLineArgs - DebuggerWorkingDir - Path - PathFormatGeneric - PathRootAbsolute - - - - LogSystemMessagestrue - AutoTargetDLLsfalse - StopAtWatchpointstrue - PauseWhileRunningfalse - PauseInterval5 - PauseUIFlags0 - AltExePath - Path - PathFormatGeneric - PathRootAbsolute - - StopAtTempBPOnLaunchtrue - CacheSymbolicstrue - TempBPFunctionNamemain - TempBPType0 - - - Enabledfalse - ConnectionName - DownloadPath - LaunchRemoteAppfalse - RemoteAppPath - - - OtherExecutables - - - CustomColor1 - Red0 - Green32767 - Blue0 - - CustomColor2 - Red0 - Green32767 - Blue0 - - CustomColor3 - Red0 - Green32767 - Blue0 - - CustomColor4 - Red0 - Green32767 - Blue0 - - - - MWFrontEnd_C_cplusplus0 - MWFrontEnd_C_checkprotos0 - MWFrontEnd_C_arm0 - MWFrontEnd_C_trigraphs0 - MWFrontEnd_C_onlystdkeywords0 - MWFrontEnd_C_enumsalwaysint0 - MWFrontEnd_C_mpwpointerstyle0 - MWFrontEnd_C_prefixname - MWFrontEnd_C_ansistrict0 - MWFrontEnd_C_mpwcnewline0 - MWFrontEnd_C_wchar_type1 - MWFrontEnd_C_enableexceptions1 - MWFrontEnd_C_dontreusestrings0 - MWFrontEnd_C_poolstrings0 - MWFrontEnd_C_dontinline0 - MWFrontEnd_C_useRTTI1 - MWFrontEnd_C_multibyteaware0 - MWFrontEnd_C_unsignedchars0 - MWFrontEnd_C_autoinline0 - MWFrontEnd_C_booltruefalse1 - MWFrontEnd_C_direct_to_som0 - MWFrontEnd_C_som_env_check0 - MWFrontEnd_C_alwaysinline0 - MWFrontEnd_C_inlinelevel0 - MWFrontEnd_C_ecplusplus0 - MWFrontEnd_C_objective_c0 - MWFrontEnd_C_defer_codegen0 - - - MWWarning_C_warn_illpragma0 - MWWarning_C_warn_emptydecl0 - MWWarning_C_warn_possunwant0 - MWWarning_C_warn_unusedvar0 - MWWarning_C_warn_unusedarg0 - MWWarning_C_warn_extracomma0 - MWWarning_C_pedantic0 - MWWarning_C_warningerrors0 - MWWarning_C_warn_hidevirtual0 - MWWarning_C_warn_implicitconv0 - MWWarning_C_warn_notinlined0 - MWWarning_C_warn_structclass0 - - - MWFTP_Post_hostName - MWFTP_Post_username - MWFTP_Post_password265jqwan65niha2ÀÑ“( - MWFTP_Post_remoteDir - MWFTP_Post_ftp_PathVersion1 - MWFTP_Post_ftp_PathType0 - MWFTP_Post_ftp_PathFormat0 - MWFTP_Post_ftp_tree - MWFTP_Post_uploadDir - MWFTP_Post_ftp_port21 - MWFTP_Post_SendBin1 - MWFTP_Post_ShouldLog1 - - - MWCommandLine_Java_clsName - MWCommandLine_Java_args - - - MWVJavaDebugging_Protocol1 - MWVJavaDebugging_JDKVersion1 - MWVJavaDebugging_TimeOut10 - MWVJavaDebugging_SupportSlowDevicesfalse - - - MWJava_Language_optimizefalse - MWJava_Language_warnDeprecatedfalse - MWJava_Language_emitMapfalse - MWJava_Language_strictFileNamesfalse - MWJava_Language_strictFileHierarchyfalse - MWJava_Language_1_1_Compatiblefalse - MWJava_Language_emitHeaders0 - MWJava_Language_headerTypeJNINativeHeaders - MWJava_Language_packageFilter - MWJava_Language_genCommentstrue - MWJava_Language_genHeadersfalse - - - MWJava_MRJAppBuilder_outFileMRJApplication - MWJava_MRJAppBuilder_mergefalse - MWJava_MRJAppBuilder_quitMenutrue - MWJava_MRJAppBuilder_growfalse - MWJava_MRJAppBuilder_stdoutTypeConsole - MWJava_MRJAppBuilder_stderrTypeConsole - MWJava_MRJAppBuilder_stdinTypeConsole - MWJava_MRJAppBuilder_appIconPVersion0 - MWJava_MRJAppBuilder_appIconPType0 - MWJava_MRJAppBuilder_appIconPFormat0 - MWJava_MRJAppBuilder_appIconPTree - MWJava_MRJAppBuilder_appIconFile - MWJava_MRJAppBuilder_splashScreenPVersion0 - MWJava_MRJAppBuilder_splashScreenPType0 - MWJava_MRJAppBuilder_splashScreenPFormat0 - MWJava_MRJAppBuilder_splashScreenPTree - MWJava_MRJAppBuilder_splashScreenPICTFile - MWJava_MRJAppBuilder_aboutName - MWJava_MRJAppBuilder_stdoutPVersion0 - MWJava_MRJAppBuilder_stdoutPType0 - MWJava_MRJAppBuilder_stdoutPFormat0 - MWJava_MRJAppBuilder_stdoutPTree - MWJava_MRJAppBuilder_stdoutFile - MWJava_MRJAppBuilder_stdoutAppendfalse - MWJava_MRJAppBuilder_stderrPType0 - MWJava_MRJAppBuilder_stderrPFormat0 - MWJava_MRJAppBuilder_stderrPTree - MWJava_MRJAppBuilder_stderrFile - MWJava_MRJAppBuilder_stderrAppendfalse - MWJava_MRJAppBuilder_stdinPType0 - MWJava_MRJAppBuilder_stdinPFormat0 - MWJava_MRJAppBuilder_stdinPTree - MWJava_MRJAppBuilder_stdinFile - - - MWJava_Output_outputtypeJarFile - MWJava_Output_outfileJavaClasses.jar - MWJava_Output_ftype1514754080 - MWJava_Output_fcreator1297570384 - MWJava_Output_compress0 - MWJava_Output_genManifest0 - MWJava_Output_trunctypeFront - MWJava_Output_deleteClasses0 - MWJava_Output_consoleApp1 - - - MWJava_Proj_projtypeApplet - MWJava_Proj_mainClassName - MWJava_Proj_HTMLAppCreator1145457748 - MWJava_Proj_HTMLAppNameMetrowerks Java - MWJava_Proj_PathVersion1 - MWJava_Proj_PathType0 - MWJava_Proj_PathFormat0 - MWJava_Proj_tree - MWJava_Proj_HTMLAppWin32NameInternet Explorer - MWJava_Proj_compress0 - MWJava_Proj_useVM1 - MWJava_Proj_vmarguments - MWJava_Proj_vmName - MWJava_Proj_simPropFile - - - MWJavaDoc_Proj_Version1 - MWJavaDoc_Proj_Depricated1 - MWJavaDoc_Proj_Author1 - MWJavaDoc_Proj_Index1 - MWJavaDoc_Proj_Tree1 - MWJavaDoc_Proj_SunResolveToSame0 - MWJavaDoc_Proj_Shortnames1 - MWJavaDoc_Proj_Folder0 - MWJavaDoc_Proj_GenerateAPILinks0 - MWJavaDoc_Proj_scopePublic - MWJavaDoc_Proj_fcreator1297303877 - MWJavaDoc_Proj_encodingName - MWJavaDoc_Proj_decodingName - MWJavaDoc_Proj_javaPackagePathhttp://java.sun.com/products/jdk/1.1/docs/api/ - - - MWMerge_MacOS_projectTypeApplication - MWMerge_MacOS_outputNameMerge Out - MWMerge_MacOS_outputCreator???? - MWMerge_MacOS_outputTypeAPPL - MWMerge_MacOS_suppressWarning0 - MWMerge_MacOS_copyFragments1 - MWMerge_MacOS_copyResources1 - MWMerge_MacOS_flattenResource0 - MWMerge_MacOS_flatFileNamea.rsrc - MWMerge_MacOS_flatFileOutputPath - Path: - PathFormatMacOS - PathRootProject - - MWMerge_MacOS_skipResources - DLGX - ckid - Proj - WSPC - - - - FileLockedfalse - ResourcesMapIsReadOnlyfalse - PrinterDriverIsMultiFinderCompatiblefalse - Invisiblefalse - HasBundlefalse - NameLockedfalse - Stationeryfalse - HasCustomIconfalse - Sharedfalse - HasBeenInitedfalse - Label0 - Comments - - - MWMacOSPackager_UsePackager0 - MWMacOSPackager_FolderToPackage - Path: - PathFormatMacOS - PathRootProject - - MWMacOSPackager_CreateClassicAlias0 - MWMacOSPackager_ClassicAliasMethodUseTargetOutput - MWMacOSPackager_ClassicAliasPath - Path: - PathFormatMacOS - PathRootProject - - MWMacOSPackager_CreatePkgInfo0 - MWMacOSPackager_PkgCreatorType???? - MWMacOSPackager_PkgFileTypeAPPL - - - MWCodeGen_PPC_structalignmentMC68K - MWCodeGen_PPC_tracebacktablesNone - MWCodeGen_PPC_processorGeneric - MWCodeGen_PPC_readonlystrings0 - MWCodeGen_PPC_tocdata1 - MWCodeGen_PPC_profiler0 - MWCodeGen_PPC_fpcontract1 - MWCodeGen_PPC_schedule0 - MWCodeGen_PPC_peephole1 - MWCodeGen_PPC_processorspecific0 - MWCodeGen_PPC_altivec0 - MWCodeGen_PPC_vectortocdata0 - MWCodeGen_PPC_vrsave0 - - - MWCodeGen_MachO_structalignmentPPC - MWCodeGen_MachO_tracebacktablesNone - MWCodeGen_MachO_processorGeneric - MWCodeGen_MachO_readonlystrings0 - MWCodeGen_MachO_profiler0 - MWCodeGen_MachO_fpcontract1 - MWCodeGen_MachO_schedule0 - MWCodeGen_MachO_peephole1 - MWCodeGen_MachO_processorspecific0 - MWCodeGen_MachO_altivec0 - MWCodeGen_MachO_vrsave1 - MWCodeGen_MachO_common0 - MWCodeGen_MachO_implicit_templates1 - - - MWDisassembler_PPC_showcode1 - MWDisassembler_PPC_extended1 - MWDisassembler_PPC_mix0 - MWDisassembler_PPC_nohex0 - MWDisassembler_PPC_showdata1 - MWDisassembler_PPC_showexceptions1 - MWDisassembler_PPC_showsym0 - MWDisassembler_PPC_shownames1 - - - GlobalOptimizer_PPC_optimizationlevelLevel0 - GlobalOptimizer_PPC_optforSpeed - - - MWLinker_PPC_linksym1 - MWLinker_PPC_symfullpath1 - MWLinker_PPC_linkmap0 - MWLinker_PPC_nolinkwarnings0 - MWLinker_PPC_dontdeadstripinitcode0 - MWLinker_PPC_permitmultdefs0 - MWLinker_PPC_linkmodeFast - MWLinker_PPC_initname - MWLinker_PPC_mainname__start - MWLinker_PPC_termname - - - MWLinker_MachO_exportsNone - MWLinker_MachO_mainnamestart - MWLinker_MachO_currentversion0 - MWLinker_MachO_compatibleversion0 - MWLinker_MachO_symfullpath0 - MWLinker_MachO_supresswarnings0 - MWLinker_MachO_multisymerror0 - MWLinker_MachO_prebind1 - MWLinker_MachO_deadstrip1 - MWLinker_MachO_objectivecsemantics0 - MWLinker_MachO_whichfileloaded0 - MWLinker_MachO_whyfileloaded0 - MWLinker_MachO_readonlyrelocsErrors - MWLinker_MachO_undefinedsymbolsErrors - MWLinker_MachO_twolevelnamespace1 - MWLinker_MachO_stripdebugsymbols0 - - - MWProject_MachO_typeExecutable - MWProject_MachO_outfilea.exe - MWProject_MachO_filecreator???? - MWProject_MachO_filetypeMEXE - MWProject_MachO_stacksize64 - MWProject_MachO_stackaddress0 - MWProject_MachO_flatrsrc1 - MWProject_MachO_flatrsrcfilenamea.rsrc - MWProject_MachO_flatrsrcoutputdir - Path: - PathFormatMacOS - PathRootProject - - MWProject_MachO_installpath./ - - - MWPEF_exportsNone - MWPEF_libfolder0 - MWPEF_sortcodeNone - MWPEF_expandbss0 - MWPEF_sharedata0 - MWPEF_olddefversion0 - MWPEF_oldimpversion0 - MWPEF_currentversion0 - MWPEF_fragmentname - MWPEF_collapsereloads0 - - - MWProject_PPC_typeApplication - MWProject_PPC_outfilea.out - MWProject_PPC_filecreator???? - MWProject_PPC_filetypeAPPL - MWProject_PPC_size384 - MWProject_PPC_minsize384 - MWProject_PPC_stacksize64 - MWProject_PPC_flags22720 - MWProject_PPC_symfilename - MWProject_PPC_rsrcname - MWProject_PPC_rsrcheaderNative - MWProject_PPC_rsrctype???? - MWProject_PPC_rsrcid0 - MWProject_PPC_rsrcflags0 - MWProject_PPC_rsrcstore0 - MWProject_PPC_rsrcmerge0 - MWProject_PPC_flatrsrc0 - MWProject_PPC_flatrsrcoutputdir - Path: - PathFormatMacOS - PathRootProject - - MWProject_PPC_flatrsrcfilename - - - MWAssembler_PPC_auxheader0 - MWAssembler_PPC_symmodeMac - MWAssembler_PPC_dialectPPC - MWAssembler_PPC_prefixfile - MWAssembler_PPC_typecheck0 - MWAssembler_PPC_warnings0 - MWAssembler_PPC_casesensitive0 - - - MWRez_Language_maxwidth80 - MWRez_Language_scriptRoman - MWRez_Language_alignmentAlign1 - MWRez_Language_filtermodeFilterSkip - MWRez_Language_suppresswarnings0 - MWRez_Language_escapecontrolchars1 - MWRez_Language_prefixname - MWRez_Language_filteredtypes'CODE' 'DATA' 'PICT' - - - MWWinRC_prefixname - - - MWCodeGen_X86_processorGeneric - MWCodeGen_X86_alignmentbytes8 - MWCodeGen_X86_exceptionsZeroOverhead - MWCodeGen_X86_extinst_mmx0 - MWCodeGen_X86_extinst_3dnow0 - MWCodeGen_X86_use_mmx_3dnow_convention0 - MWCodeGen_X86_machinecodelisting0 - MWCodeGen_X86_intrinsics0 - MWCodeGen_X86_syminfo0 - MWCodeGen_X86_codeviewinfo1 - MWCodeGen_X86_extinst_cmov_fcomi0 - MWCodeGen_X86_extinst_sse0 - - - PDisasmX86_showHeaderstrue - PDisasmX86_showSymTabtrue - PDisasmX86_showCodetrue - PDisasmX86_showSourcefalse - PDisasmX86_showHextrue - PDisasmX86_showRelocationtrue - PDisasmX86_showCommentsfalse - PDisasmX86_showDebugfalse - PDisasmX86_showExceptionsfalse - PDisasmX86_showDatatrue - PDisasmX86_showRawfalse - PDisasmX86_verbosefalse - - - MWDebugger_X86_Exceptions - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - GlobalOptimizer_X86_optimizationlevelLevel0 - GlobalOptimizer_X86_optforSpeed - - - MWLinker_X86_entrypointusageDefault - MWLinker_X86_entrypoint - MWLinker_X86_subsystemWinGUI - MWLinker_X86_subsysmajorid4 - MWLinker_X86_subsysminorid0 - MWLinker_X86_usrmajorid0 - MWLinker_X86_usrminorid0 - MWLinker_X86_commandfile - MWLinker_X86_generatemap0 - MWLinker_X86_linksym0 - MWLinker_X86_linkCV1 - - - MWProject_X86_typeApplication - MWProject_X86_outfilenoname.exe - MWProject_X86_baseaddress4194304 - MWProject_X86_maxstacksize1024 - MWProject_X86_minstacksize4 - MWProject_X86_size1024 - MWProject_X86_minsize4 - MWProject_X86_importlib - xpidl Settings - 0001000101010B646F6D2E686561646572730000000000000000000000000000 - 0000000000000000 - - - - - Name - nsCDocShell.idl - MacOS - Text - - - - Name - nsIDocShell.idl - MacOS - Text - - - - Name - nsIMarkupDocumentViewer.idl - MacOS - Text - - - - Name - nsIScrollable.idl - MacOS - Text - - - - Name - nsITextScroll.idl - MacOS - Text - - - - Name - nsIDocShellTreeItem.idl - MacOS - Text - - - - Name - nsIDocShellTreeNode.idl - MacOS - Text - - - - Name - nsIDocShellTreeOwner.idl - MacOS - Text - - - - Name - nsIWebNavigation.idl - MacOS - Text - - - - Name - nsIDocShellLoadInfo.idl - MacOS - Text - - - - Name - nsIDocShellHistory.idl - MacOS - Text - - - - Name - nsCDefaultURIFixup.idl - MacOS - Text - - - - Name - nsIURIFixup.idl - MacOS - Text - - - - Name - nsIContentViewer.idl - MacOS - Text - - - - Name - nsIContentViewerFile.idl - MacOS - Text - - - - Name - nsIEditorDocShell.idl - MacOS - Text - - - - - - Name - nsCDocShell.idl - MacOS - - - Name - nsIDocShell.idl - MacOS - - - Name - nsIMarkupDocumentViewer.idl - MacOS - - - Name - nsIScrollable.idl - MacOS - - - Name - nsITextScroll.idl - MacOS - - - Name - nsIDocShellTreeItem.idl - MacOS - - - Name - nsIDocShellTreeNode.idl - MacOS - - - Name - nsIDocShellTreeOwner.idl - MacOS - - - Name - nsIWebNavigation.idl - MacOS - - - Name - nsIDocShellLoadInfo.idl - MacOS - - - Name - nsIDocShellHistory.idl - MacOS - - - Name - nsCDefaultURIFixup.idl - MacOS - - - Name - nsIURIFixup.idl - MacOS - - - Name - nsIContentViewer.idl - MacOS - - - Name - nsIContentViewerFile.idl - MacOS - - - Name - nsIEditorDocShell.idl - MacOS - - - - - docshell.xpt - - - - UserSourceTrees - - - AlwaysSearchUserPathsfalse - InterpretDOSAndUnixPathsfalse - RequireFrameworkStyleIncludesfalse - UserSearchPaths - - SearchPath - Path:::dist:idl: - PathFormatMacOS - PathRootProject - - Recursivetrue - FrameworkPathfalse - HostFlagsAll - - - SearchPath - Path::base: - PathFormatMacOS - PathRootProject - - Recursivetrue - FrameworkPathfalse - HostFlagsAll - - - SystemSearchPaths - - SearchPath - Path: - PathFormatMacOS - PathRootCodeWarrior - - Recursivetrue - FrameworkPathfalse - HostFlagsAll - - - - - MWRuntimeSettings_WorkingDirectory - MWRuntimeSettings_CommandLine - MWRuntimeSettings_HostApplication - Path - PathFormatGeneric - PathRootAbsolute - - MWRuntimeSettings_EnvVars - - - Linkerxpt Linker - PreLinker - PostLinker - Targetnamedocshell.xpt - OutputDirectory - Path: - PathFormatMacOS - PathRootProject - - SaveEntriesUsingRelativePathsfalse - - - FileMappings - - FileTypeRSRC - FileExtension - CompilerRez - EditLanguage - Precompilefalse - Launchabletrue - ResourceFiletrue - IgnoredByMakefalse - - - FileTypeTEXT - FileExtension.bh - CompilerBalloon Help - EditLanguage - Precompilefalse - Launchablefalse - ResourceFilefalse - IgnoredByMakefalse - - - FileTypeTEXT - FileExtension.c - CompilerRunTSScript - EditLanguage - Precompilefalse - Launchablefalse - ResourceFilefalse - IgnoredByMakefalse - - - FileTypeTEXT - FileExtension.idl - Compilerxpidl - EditLanguage - Precompilefalse - Launchablefalse - ResourceFilefalse - IgnoredByMakefalse - - - FileTypeTEXT - FileExtension.r - CompilerRez - EditLanguageRez - Precompilefalse - Launchablefalse - ResourceFilefalse - IgnoredByMakefalse - - - FileTypersrc - FileExtension - CompilerRez - EditLanguage - Precompilefalse - Launchabletrue - ResourceFiletrue - IgnoredByMakefalse - - - FileExtension.xpt - Compiler - EditLanguage - Precompilefalse - Launchablefalse - ResourceFilefalse - IgnoredByMakefalse - - - - - CacheModDatestrue - ActivateBrowsertrue - DumpBrowserInfofalse - CacheSubprojectstrue - UseThirdPartyDebuggerfalse - DebuggerAppPath - Path - PathFormatGeneric - PathRootAbsolute - - DebuggerCmdLineArgs - DebuggerWorkingDir - Path - PathFormatGeneric - PathRootAbsolute - - - - LogSystemMessagestrue - AutoTargetDLLsfalse - StopAtWatchpointstrue - PauseWhileRunningfalse - PauseInterval5 - PauseUIFlags0 - AltExePath - Path - PathFormatGeneric - PathRootAbsolute - - StopAtTempBPOnLaunchtrue - CacheSymbolicstrue - TempBPFunctionNamemain - TempBPType0 - - - Enabledfalse - ConnectionName - DownloadPath - LaunchRemoteAppfalse - RemoteAppPath - - - OtherExecutables - - - CustomColor1 - Red0 - Green32767 - Blue0 - - CustomColor2 - Red0 - Green32767 - Blue0 - - CustomColor3 - Red0 - Green32767 - Blue0 - - CustomColor4 - Red0 - Green32767 - Blue0 - - - - MWFrontEnd_C_cplusplus0 - MWFrontEnd_C_checkprotos0 - MWFrontEnd_C_arm0 - MWFrontEnd_C_trigraphs0 - MWFrontEnd_C_onlystdkeywords0 - MWFrontEnd_C_enumsalwaysint0 - MWFrontEnd_C_mpwpointerstyle0 - MWFrontEnd_C_prefixname - MWFrontEnd_C_ansistrict0 - MWFrontEnd_C_mpwcnewline0 - MWFrontEnd_C_wchar_type1 - MWFrontEnd_C_enableexceptions1 - MWFrontEnd_C_dontreusestrings0 - MWFrontEnd_C_poolstrings0 - MWFrontEnd_C_dontinline0 - MWFrontEnd_C_useRTTI1 - MWFrontEnd_C_multibyteaware0 - MWFrontEnd_C_unsignedchars0 - MWFrontEnd_C_autoinline0 - MWFrontEnd_C_booltruefalse1 - MWFrontEnd_C_direct_to_som0 - MWFrontEnd_C_som_env_check0 - MWFrontEnd_C_alwaysinline0 - MWFrontEnd_C_inlinelevel0 - MWFrontEnd_C_ecplusplus0 - MWFrontEnd_C_objective_c0 - MWFrontEnd_C_defer_codegen0 - - - MWWarning_C_warn_illpragma0 - MWWarning_C_warn_emptydecl0 - MWWarning_C_warn_possunwant0 - MWWarning_C_warn_unusedvar0 - MWWarning_C_warn_unusedarg0 - MWWarning_C_warn_extracomma0 - MWWarning_C_pedantic0 - MWWarning_C_warningerrors0 - MWWarning_C_warn_hidevirtual0 - MWWarning_C_warn_implicitconv0 - MWWarning_C_warn_notinlined0 - MWWarning_C_warn_structclass0 - - - MWFTP_Post_hostName - MWFTP_Post_username - MWFTP_Post_password265jqwan65niha2ÀÑ“( - MWFTP_Post_remoteDir - MWFTP_Post_ftp_PathVersion1 - MWFTP_Post_ftp_PathType0 - MWFTP_Post_ftp_PathFormat0 - MWFTP_Post_ftp_tree - MWFTP_Post_uploadDir - MWFTP_Post_ftp_port21 - MWFTP_Post_SendBin1 - MWFTP_Post_ShouldLog1 - - - MWCommandLine_Java_clsName - MWCommandLine_Java_args - - - MWVJavaDebugging_Protocol1 - MWVJavaDebugging_JDKVersion1 - MWVJavaDebugging_TimeOut10 - MWVJavaDebugging_SupportSlowDevicesfalse - - - MWJava_Language_optimizefalse - MWJava_Language_warnDeprecatedfalse - MWJava_Language_emitMapfalse - MWJava_Language_strictFileNamesfalse - MWJava_Language_strictFileHierarchyfalse - MWJava_Language_1_1_Compatiblefalse - MWJava_Language_emitHeaders0 - MWJava_Language_headerTypeJNINativeHeaders - MWJava_Language_packageFilter - MWJava_Language_genCommentstrue - MWJava_Language_genHeadersfalse - - - MWJava_MRJAppBuilder_outFileMRJApplication - MWJava_MRJAppBuilder_mergefalse - MWJava_MRJAppBuilder_quitMenutrue - MWJava_MRJAppBuilder_growfalse - MWJava_MRJAppBuilder_stdoutTypeConsole - MWJava_MRJAppBuilder_stderrTypeConsole - MWJava_MRJAppBuilder_stdinTypeConsole - MWJava_MRJAppBuilder_appIconPVersion0 - MWJava_MRJAppBuilder_appIconPType0 - MWJava_MRJAppBuilder_appIconPFormat0 - MWJava_MRJAppBuilder_appIconPTree - MWJava_MRJAppBuilder_appIconFile - MWJava_MRJAppBuilder_splashScreenPVersion0 - MWJava_MRJAppBuilder_splashScreenPType0 - MWJava_MRJAppBuilder_splashScreenPFormat0 - MWJava_MRJAppBuilder_splashScreenPTree - MWJava_MRJAppBuilder_splashScreenPICTFile - MWJava_MRJAppBuilder_aboutName - MWJava_MRJAppBuilder_stdoutPVersion0 - MWJava_MRJAppBuilder_stdoutPType0 - MWJava_MRJAppBuilder_stdoutPFormat0 - MWJava_MRJAppBuilder_stdoutPTree - MWJava_MRJAppBuilder_stdoutFile - MWJava_MRJAppBuilder_stdoutAppendfalse - MWJava_MRJAppBuilder_stderrPType0 - MWJava_MRJAppBuilder_stderrPFormat0 - MWJava_MRJAppBuilder_stderrPTree - MWJava_MRJAppBuilder_stderrFile - MWJava_MRJAppBuilder_stderrAppendfalse - MWJava_MRJAppBuilder_stdinPType0 - MWJava_MRJAppBuilder_stdinPFormat0 - MWJava_MRJAppBuilder_stdinPTree - MWJava_MRJAppBuilder_stdinFile - - - MWJava_Output_outputtypeJarFile - MWJava_Output_outfileJavaClasses.jar - MWJava_Output_ftype1514754080 - MWJava_Output_fcreator1297570384 - MWJava_Output_compress0 - MWJava_Output_genManifest0 - MWJava_Output_trunctypeFront - MWJava_Output_deleteClasses0 - MWJava_Output_consoleApp1 - - - MWJava_Proj_projtypeApplet - MWJava_Proj_mainClassName - MWJava_Proj_HTMLAppCreator1463898714 - MWJava_Proj_HTMLAppName - MWJava_Proj_PathVersion0 - MWJava_Proj_PathType0 - MWJava_Proj_PathFormat0 - MWJava_Proj_tree - MWJava_Proj_HTMLAppWin32Name - MWJava_Proj_compress0 - MWJava_Proj_useVM1 - MWJava_Proj_vmarguments - MWJava_Proj_vmName - MWJava_Proj_simPropFile - - - MWJavaDoc_Proj_Version1 - MWJavaDoc_Proj_Depricated1 - MWJavaDoc_Proj_Author1 - MWJavaDoc_Proj_Index1 - MWJavaDoc_Proj_Tree1 - MWJavaDoc_Proj_SunResolveToSame0 - MWJavaDoc_Proj_Shortnames1 - MWJavaDoc_Proj_Folder0 - MWJavaDoc_Proj_GenerateAPILinks0 - MWJavaDoc_Proj_scopePublic - MWJavaDoc_Proj_fcreator1297303877 - MWJavaDoc_Proj_encodingName - MWJavaDoc_Proj_decodingName - MWJavaDoc_Proj_javaPackagePathhttp://java.sun.com/products/jdk/1.1/docs/api/ - - - MWMerge_MacOS_projectTypeApplication - MWMerge_MacOS_outputNameMerge Out - MWMerge_MacOS_outputCreator???? - MWMerge_MacOS_outputTypeAPPL - MWMerge_MacOS_suppressWarning0 - MWMerge_MacOS_copyFragments1 - MWMerge_MacOS_copyResources1 - MWMerge_MacOS_flattenResource0 - MWMerge_MacOS_flatFileNamea.rsrc - MWMerge_MacOS_flatFileOutputPath - Path: - PathFormatMacOS - PathRootProject - - MWMerge_MacOS_skipResources - DLGX - ckid - Proj - WSPC - - - - FileLockedfalse - ResourcesMapIsReadOnlyfalse - PrinterDriverIsMultiFinderCompatiblefalse - Invisiblefalse - HasBundlefalse - NameLockedfalse - Stationeryfalse - HasCustomIconfalse - Sharedfalse - HasBeenInitedfalse - Label0 - Comments - - - MWMacOSPackager_UsePackager0 - MWMacOSPackager_FolderToPackage - Path: - PathFormatMacOS - PathRootProject - - MWMacOSPackager_CreateClassicAlias0 - MWMacOSPackager_ClassicAliasMethodUseTargetOutput - MWMacOSPackager_ClassicAliasPath - Path: - PathFormatMacOS - PathRootProject - - MWMacOSPackager_CreatePkgInfo0 - MWMacOSPackager_PkgCreatorType???? - MWMacOSPackager_PkgFileTypeAPPL - - - MWCodeGen_PPC_structalignmentMC68K - MWCodeGen_PPC_tracebacktablesNone - MWCodeGen_PPC_processorGeneric - MWCodeGen_PPC_readonlystrings0 - MWCodeGen_PPC_tocdata1 - MWCodeGen_PPC_profiler0 - MWCodeGen_PPC_fpcontract1 - MWCodeGen_PPC_schedule0 - MWCodeGen_PPC_peephole1 - MWCodeGen_PPC_processorspecific0 - MWCodeGen_PPC_altivec0 - MWCodeGen_PPC_vectortocdata0 - MWCodeGen_PPC_vrsave0 - - - MWCodeGen_MachO_structalignmentPPC - MWCodeGen_MachO_tracebacktablesNone - MWCodeGen_MachO_processorGeneric - MWCodeGen_MachO_readonlystrings0 - MWCodeGen_MachO_profiler0 - MWCodeGen_MachO_fpcontract1 - MWCodeGen_MachO_schedule0 - MWCodeGen_MachO_peephole1 - MWCodeGen_MachO_processorspecific0 - MWCodeGen_MachO_altivec0 - MWCodeGen_MachO_vrsave1 - MWCodeGen_MachO_common0 - MWCodeGen_MachO_implicit_templates1 - - - MWDisassembler_PPC_showcode1 - MWDisassembler_PPC_extended1 - MWDisassembler_PPC_mix0 - MWDisassembler_PPC_nohex0 - MWDisassembler_PPC_showdata1 - MWDisassembler_PPC_showexceptions1 - MWDisassembler_PPC_showsym0 - MWDisassembler_PPC_shownames1 - - - GlobalOptimizer_PPC_optimizationlevelLevel0 - GlobalOptimizer_PPC_optforSpeed - - - MWLinker_PPC_linksym1 - MWLinker_PPC_symfullpath1 - MWLinker_PPC_linkmap0 - MWLinker_PPC_nolinkwarnings0 - MWLinker_PPC_dontdeadstripinitcode0 - MWLinker_PPC_permitmultdefs0 - MWLinker_PPC_linkmodeFast - MWLinker_PPC_initname - MWLinker_PPC_mainname__start - MWLinker_PPC_termname - - - MWLinker_MachO_exportsNone - MWLinker_MachO_mainnamestart - MWLinker_MachO_currentversion0 - MWLinker_MachO_compatibleversion0 - MWLinker_MachO_symfullpath0 - MWLinker_MachO_supresswarnings0 - MWLinker_MachO_multisymerror0 - MWLinker_MachO_prebind1 - MWLinker_MachO_deadstrip1 - MWLinker_MachO_objectivecsemantics0 - MWLinker_MachO_whichfileloaded0 - MWLinker_MachO_whyfileloaded0 - MWLinker_MachO_readonlyrelocsErrors - MWLinker_MachO_undefinedsymbolsErrors - MWLinker_MachO_twolevelnamespace1 - MWLinker_MachO_stripdebugsymbols0 - - - MWProject_MachO_typeExecutable - MWProject_MachO_outfilea.exe - MWProject_MachO_filecreator???? - MWProject_MachO_filetypeMEXE - MWProject_MachO_stacksize64 - MWProject_MachO_stackaddress0 - MWProject_MachO_flatrsrc1 - MWProject_MachO_flatrsrcfilenamea.rsrc - MWProject_MachO_flatrsrcoutputdir - Path: - PathFormatMacOS - PathRootProject - - MWProject_MachO_installpath./ - - - MWPEF_exportsNone - MWPEF_libfolder0 - MWPEF_sortcodeNone - MWPEF_expandbss0 - MWPEF_sharedata0 - MWPEF_olddefversion0 - MWPEF_oldimpversion0 - MWPEF_currentversion0 - MWPEF_fragmentname - MWPEF_collapsereloads0 - - - MWProject_PPC_typeApplication - MWProject_PPC_outfilea.out - MWProject_PPC_filecreator???? - MWProject_PPC_filetypeAPPL - MWProject_PPC_size384 - MWProject_PPC_minsize384 - MWProject_PPC_stacksize64 - MWProject_PPC_flags22720 - MWProject_PPC_symfilename - MWProject_PPC_rsrcname - MWProject_PPC_rsrcheaderNative - MWProject_PPC_rsrctype???? - MWProject_PPC_rsrcid0 - MWProject_PPC_rsrcflags0 - MWProject_PPC_rsrcstore0 - MWProject_PPC_rsrcmerge0 - MWProject_PPC_flatrsrc0 - MWProject_PPC_flatrsrcoutputdir - Path: - PathFormatMacOS - PathRootProject - - MWProject_PPC_flatrsrcfilename - - - MWAssembler_PPC_auxheader0 - MWAssembler_PPC_symmodeMac - MWAssembler_PPC_dialectPPC - MWAssembler_PPC_prefixfile - MWAssembler_PPC_typecheck0 - MWAssembler_PPC_warnings0 - MWAssembler_PPC_casesensitive0 - - - MWRez_Language_maxwidth80 - MWRez_Language_scriptRoman - MWRez_Language_alignmentAlign1 - MWRez_Language_filtermodeFilterSkip - MWRez_Language_suppresswarnings0 - MWRez_Language_escapecontrolchars1 - MWRez_Language_prefixname - MWRez_Language_filteredtypes'CODE' 'DATA' 'PICT' - - - MWWinRC_prefixname - - - MWCodeGen_X86_processorGeneric - MWCodeGen_X86_alignmentbytes8 - MWCodeGen_X86_exceptionsZeroOverhead - MWCodeGen_X86_extinst_mmx0 - MWCodeGen_X86_extinst_3dnow0 - MWCodeGen_X86_use_mmx_3dnow_convention0 - MWCodeGen_X86_machinecodelisting0 - MWCodeGen_X86_intrinsics0 - MWCodeGen_X86_syminfo0 - MWCodeGen_X86_codeviewinfo1 - MWCodeGen_X86_extinst_cmov_fcomi0 - MWCodeGen_X86_extinst_sse0 - - - PDisasmX86_showHeaderstrue - PDisasmX86_showSymTabtrue - PDisasmX86_showCodetrue - PDisasmX86_showSourcefalse - PDisasmX86_showHextrue - PDisasmX86_showRelocationtrue - PDisasmX86_showCommentsfalse - PDisasmX86_showDebugfalse - PDisasmX86_showExceptionsfalse - PDisasmX86_showDatatrue - PDisasmX86_showRawfalse - PDisasmX86_verbosefalse - - - MWDebugger_X86_Exceptions - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - 0 - - - - GlobalOptimizer_X86_optimizationlevelLevel0 - GlobalOptimizer_X86_optforSpeed - - - MWLinker_X86_entrypointusageDefault - MWLinker_X86_entrypoint - MWLinker_X86_subsystemWinGUI - MWLinker_X86_subsysmajorid4 - MWLinker_X86_subsysminorid0 - MWLinker_X86_usrmajorid0 - MWLinker_X86_usrminorid0 - MWLinker_X86_commandfile - MWLinker_X86_generatemap0 - MWLinker_X86_linksym0 - MWLinker_X86_linkCV1 - - - MWProject_X86_typeApplication - MWProject_X86_outfilenoname.exe - MWProject_X86_baseaddress4194304 - MWProject_X86_maxstacksize1024 - MWProject_X86_minstacksize4 - MWProject_X86_size1024 - MWProject_X86_minsize4 - MWProject_X86_importlib - xpidl Settings - 0001000301010C646F637368656C6C2E78707474000000000000000000000000 - 0000000000000000 - - - - - Name - nsCDocShell.idl - MacOS - Text - - - - Name - nsIDocShell.idl - MacOS - Text - - - - Name - nsIMarkupDocumentViewer.idl - MacOS - Text - - - - Name - nsIScrollable.idl - MacOS - Text - - - - Name - nsITextScroll.idl - MacOS - Text - - - - Name - nsIDocShellTreeItem.idl - MacOS - Text - - - - Name - nsIDocShellTreeNode.idl - MacOS - Text - - - - Name - nsIDocShellTreeOwner.idl - MacOS - Text - - - - Name - nsIWebNavigation.idl - MacOS - Text - - - - Name - nsIDocShellLoadInfo.idl - MacOS - Text - - - - Name - nsIDocShellHistory.idl - MacOS - Text - - - - Name - nsCDefaultURIFixup.idl - MacOS - Text - - - - Name - nsIURIFixup.idl - MacOS - Text - - - - Name - nsIContentViewer.idl - MacOS - Text - - - - Name - nsIContentViewerFile.idl - MacOS - Text - - - - Name - nsIEditorDocShell.idl - MacOS - Text - - - - - - Name - nsCDocShell.idl - MacOS - - - Name - nsIDocShell.idl - MacOS - - - Name - nsIMarkupDocumentViewer.idl - MacOS - - - Name - nsIScrollable.idl - MacOS - - - Name - nsITextScroll.idl - MacOS - - - Name - nsIDocShellTreeItem.idl - MacOS - - - Name - nsIDocShellTreeNode.idl - MacOS - - - Name - nsIDocShellTreeOwner.idl - MacOS - - - Name - nsIWebNavigation.idl - MacOS - - - Name - nsIDocShellLoadInfo.idl - MacOS - - - Name - nsIDocShellHistory.idl - MacOS - - - Name - nsCDefaultURIFixup.idl - MacOS - - - Name - nsIURIFixup.idl - MacOS - - - Name - nsIContentViewer.idl - MacOS - - - Name - nsIContentViewerFile.idl - MacOS - - - Name - nsIEditorDocShell.idl - MacOS - - - - - - - headers - docshell.xpt - - - - public - - headers - Name - nsCDocShell.idl - MacOS - - - headers - Name - nsIDocShell.idl - MacOS - - - headers - Name - nsIMarkupDocumentViewer.idl - MacOS - - - headers - Name - nsIScrollable.idl - MacOS - - - headers - Name - nsITextScroll.idl - MacOS - - - - headers - Name - nsIDocShellHistory.idl - MacOS - - - headers - Name - nsIDocShellLoadInfo.idl - MacOS - - - headers - Name - nsIDocShellTreeItem.idl - MacOS - - - headers - Name - nsIDocShellTreeNode.idl - MacOS - - - headers - Name - nsIDocShellTreeOwner.idl - MacOS - - - headers - Name - nsIWebNavigation.idl - MacOS - - - headers - Name - nsCDefaultURIFixup.idl - MacOS - - - headers - Name - nsIURIFixup.idl - MacOS - - - headers - Name - nsIContentViewer.idl - MacOS - - - headers - Name - nsIEditorDocShell.idl - MacOS - - - headers - Name - nsIContentViewerFile.idl - MacOS - - - - diff --git a/xpfe/browser/resources/content/navigator.js b/xpfe/browser/resources/content/navigator.js index 2b8dd98c15d..f97875cdad5 100644 --- a/xpfe/browser/resources/content/navigator.js +++ b/xpfe/browser/resources/content/navigator.js @@ -1001,7 +1001,7 @@ function BrowserLoadURL(aTriggeringEvent) { var url = gURLBar.value; if (url.match(/^view-source:/)) { - BrowserViewSourceOfURL(url.replace(/^view-source:/, ""), null); + BrowserViewSourceOfURL(url.replace(/^view-source:/, ""), null, null); } else { if (pref && pref.getBoolPref("browser.tabs.opentabfor.urlbar") && getBrowser().localName == "tabbrowser" && @@ -1093,25 +1093,59 @@ function OpenAddressbook() "chrome,extrachrome,menubar,resizable,status,toolbar"); } -function BrowserViewSource() +function BrowserViewSourceOfDocument(aDocument) { - var focusedWindow = document.commandDispatcher.focusedWindow; - if (focusedWindow == window) - focusedWindow = _content; + var docCharset; + var pageCookie; + var webNav; - if (focusedWindow) - var docCharset = "charset=" + focusedWindow.document.characterSet; + // Get the document charset + docCharset = "charset=" + aDocument.characterSet; - BrowserViewSourceOfURL(getWebNavigation().currentURI.spec, docCharset); + // Get the nsIWebNavigation associated with the document + try { + var win; + var ifRequestor; + + // Get the DOMWindow for the requested document. If the DOMWindow + // cannot be found, then just use the _content window... + // + // XXX: This is a bit of a hack... + win = aDocument.defaultView; + if (win == window) { + win = _content; + } + ifRequestor = win.QueryInterface(Components.interfaces.nsIInterfaceRequestor); + + webNav = ifRequestor.getInterface(Components.interfaces.nsIWebNavigation); + } catch(err) { + // If nsIWebNavigation cannot be found, just get the one for the whole + // window... + webNav = getWebNavigation(); + } + // + // Get the 'PageDescriptor' for the current document. This allows the + // view-source to access the cached copy of the content rather than + // refetching it from the network... + // + try{ + var PageLoader = webNav.QueryInterface(Components.interfaces.nsIWebPageDescriptor); + + pageCookie = PageLoader.currentDescriptor; + } catch(err) { + // If no page descriptor is available, just use the view-source URL... + } + + BrowserViewSourceOfURL(webNav.currentURI.spec, docCharset, pageCookie); } -function BrowserViewSourceOfURL(url, charset) +function BrowserViewSourceOfURL(url, charset, pageCookie) { // try to open a view-source window while inheriting the charset (if any) openDialog("chrome://navigator/content/viewSource.xul", "_blank", "scrollbars,resizable,chrome,dialog=no", - url, charset); + url, charset, pageCookie); } // doc=null for regular page info, doc=owner document for frame info. diff --git a/xpfe/browser/resources/content/navigatorOverlay.xul b/xpfe/browser/resources/content/navigatorOverlay.xul index 3d2b9c5c7e7..181cfc85290 100644 --- a/xpfe/browser/resources/content/navigatorOverlay.xul +++ b/xpfe/browser/resources/content/navigatorOverlay.xul @@ -133,7 +133,7 @@ - + diff --git a/xpfe/browser/resources/content/viewsource.js b/xpfe/browser/resources/content/viewsource.js index 5799eb832b2..3e9b12ee01f 100644 --- a/xpfe/browser/resources/content/viewsource.js +++ b/xpfe/browser/resources/content/viewsource.js @@ -61,22 +61,69 @@ function viewSource(url) return false; } - try { - if ("arguments" in window && window.arguments.length >= 2) { - if (window.arguments[1].indexOf('charset=') != -1) { - var arrayArgComponents = window.arguments[1].split('='); - if (arrayArgComponents) { - //we should "inherit" the charset menu setting in a new window - getMarkupDocumentViewer().defaultCharacterSet = arrayArgComponents[1]; - } + var loadFromURL = true; + // + // Parse the 'arguments' supplied with the dialog. + // arg[0] - URL string. + // arg[1] - Charset value in the form 'charset=xxx'. + // arg[2] - Page descriptor used to load content from the cache. + // + if ("arguments" in window) { + var arg; + // + // Set the charset of the viewsource window... + // + if (window.arguments.length >= 2) { + arg = window.arguments[1]; + + try { + if (typeof(arg) == "string" && arg.indexOf('charset=') != -1) { + var arrayArgComponents = arg.split('='); + if (arrayArgComponents) { + //we should "inherit" the charset menu setting in a new window + getMarkupDocumentViewer().defaultCharacterSet = arrayArgComponents[1]; + } + } + } catch (ex) { + // Ignore the failure and keep processing arguments... + } + } + // + // Use the page descriptor to load the content from the cache (if + // available). + // + if (window.arguments.length >= 3) { + arg = window.arguments[2]; + + try { + if (typeof(arg) == "object" && arg != null) { + var pageLoaderIface = Components.interfaces.nsIWebPageDescriptor; + var PageLoader = getBrowser().webNavigation.QueryInterface(pageLoaderIface); + + // + // Load the page using the page descriptor rather than the URL. + // This allows the content to be fetched from the cache (if + // possible) rather than the network... + // + PageLoader.LoadPage(arg, pageLoaderIface.DISPLAY_AS_SOURCE); + // The content was successfully loaded from the page cookie. + loadFromURL = false; + } + } catch(ex) { + // Ignore the failure. The content will be loaded via the URL + // that was supplied in arg[0]. } } - } catch(ex) { } - var loadFlags = Components.interfaces.nsIWebNavigation.LOAD_FLAGS_NONE; - var viewSrcUrl = "view-source:" + url; - getBrowser().webNavigation.loadURI(viewSrcUrl, loadFlags, null, null, null); + if (loadFromURL) { + // + // Currently, an exception is thrown if the URL load fails... + // + var loadFlags = Components.interfaces.nsIWebNavigation.LOAD_FLAGS_NONE; + var viewSrcUrl = "view-source:" + url; + getBrowser().webNavigation.loadURI(viewSrcUrl, loadFlags, null, null, null); + } //check the view_source.wrap_long_lines pref and set the menuitem's checked attribute accordingly if (gPrefs) { diff --git a/xpfe/communicator/resources/content/contentAreaContextOverlay.xul b/xpfe/communicator/resources/content/contentAreaContextOverlay.xul index 01b70f1fe40..62628ce4ad1 100644 --- a/xpfe/communicator/resources/content/contentAreaContextOverlay.xul +++ b/xpfe/communicator/resources/content/contentAreaContextOverlay.xul @@ -88,7 +88,7 @@ + oncommand="BrowserViewSourceOfDocument(_content.document);"/>