Skip to content
This repository was archived by the owner on Jul 9, 2025. It is now read-only.

Commit 3899149

Browse files
committed
Bug 1406161 - Part 5: Move LoadType convertion functions to nsDocShellLoadTypes.h. r=smaug
MozReview-Commit-ID: Ccw7cDE20m3 --HG-- extra : rebase_source : 950eee87d0c02a82aa5e0c62f8f1e0fa5e2cb72d
1 parent 837eb62 commit 3899149

3 files changed

Lines changed: 222 additions & 225 deletions

File tree

docshell/base/nsDocShell.cpp

Lines changed: 5 additions & 221 deletions
Original file line numberDiff line numberDiff line change
@@ -282,57 +282,6 @@ FavorPerformanceHint(bool aPerfOverStarvation)
282282
}
283283
}
284284

285-
static nsDOMNavigationTiming::Type
286-
ConvertLoadTypeToNavigationType(uint32_t aLoadType)
287-
{
288-
// Not initialized, assume it's normal load.
289-
if (aLoadType == 0) {
290-
aLoadType = LOAD_NORMAL;
291-
}
292-
293-
auto result = nsDOMNavigationTiming::TYPE_RESERVED;
294-
switch (aLoadType) {
295-
case LOAD_NORMAL:
296-
case LOAD_NORMAL_EXTERNAL:
297-
case LOAD_NORMAL_BYPASS_CACHE:
298-
case LOAD_NORMAL_BYPASS_PROXY:
299-
case LOAD_NORMAL_BYPASS_PROXY_AND_CACHE:
300-
case LOAD_NORMAL_REPLACE:
301-
case LOAD_NORMAL_ALLOW_MIXED_CONTENT:
302-
case LOAD_LINK:
303-
case LOAD_STOP_CONTENT:
304-
case LOAD_REPLACE_BYPASS_CACHE:
305-
result = nsDOMNavigationTiming::TYPE_NAVIGATE;
306-
break;
307-
case LOAD_HISTORY:
308-
result = nsDOMNavigationTiming::TYPE_BACK_FORWARD;
309-
break;
310-
case LOAD_RELOAD_NORMAL:
311-
case LOAD_RELOAD_CHARSET_CHANGE:
312-
case LOAD_RELOAD_CHARSET_CHANGE_BYPASS_PROXY_AND_CACHE:
313-
case LOAD_RELOAD_CHARSET_CHANGE_BYPASS_CACHE:
314-
case LOAD_RELOAD_BYPASS_CACHE:
315-
case LOAD_RELOAD_BYPASS_PROXY:
316-
case LOAD_RELOAD_BYPASS_PROXY_AND_CACHE:
317-
case LOAD_RELOAD_ALLOW_MIXED_CONTENT:
318-
result = nsDOMNavigationTiming::TYPE_RELOAD;
319-
break;
320-
case LOAD_STOP_CONTENT_AND_REPLACE:
321-
case LOAD_REFRESH:
322-
case LOAD_BYPASS_HISTORY:
323-
case LOAD_ERROR_PAGE:
324-
case LOAD_PUSHSTATE:
325-
result = nsDOMNavigationTiming::TYPE_RESERVED;
326-
break;
327-
default:
328-
// NS_NOTREACHED("Unexpected load type value");
329-
result = nsDOMNavigationTiming::TYPE_RESERVED;
330-
break;
331-
}
332-
333-
return result;
334-
}
335-
336285
static nsISHEntry* GetRootSHEntry(nsISHEntry* aEntry);
337286

338287
static void
@@ -710,171 +659,6 @@ nsDocShell::GetInterface(const nsIID& aIID, void** aSink)
710659
return *aSink ? NS_OK : NS_NOINTERFACE;
711660
}
712661

713-
uint32_t
714-
nsDocShell::ConvertDocShellLoadInfoToLoadType(
715-
nsDocShellInfoLoadType aDocShellLoadType)
716-
{
717-
uint32_t loadType = LOAD_NORMAL;
718-
719-
switch (aDocShellLoadType) {
720-
case nsIDocShellLoadInfo::loadNormal:
721-
loadType = LOAD_NORMAL;
722-
break;
723-
case nsIDocShellLoadInfo::loadNormalReplace:
724-
loadType = LOAD_NORMAL_REPLACE;
725-
break;
726-
case nsIDocShellLoadInfo::loadNormalExternal:
727-
loadType = LOAD_NORMAL_EXTERNAL;
728-
break;
729-
case nsIDocShellLoadInfo::loadHistory:
730-
loadType = LOAD_HISTORY;
731-
break;
732-
case nsIDocShellLoadInfo::loadNormalBypassCache:
733-
loadType = LOAD_NORMAL_BYPASS_CACHE;
734-
break;
735-
case nsIDocShellLoadInfo::loadNormalBypassProxy:
736-
loadType = LOAD_NORMAL_BYPASS_PROXY;
737-
break;
738-
case nsIDocShellLoadInfo::loadNormalBypassProxyAndCache:
739-
loadType = LOAD_NORMAL_BYPASS_PROXY_AND_CACHE;
740-
break;
741-
case nsIDocShellLoadInfo::loadNormalAllowMixedContent:
742-
loadType = LOAD_NORMAL_ALLOW_MIXED_CONTENT;
743-
break;
744-
case nsIDocShellLoadInfo::loadReloadNormal:
745-
loadType = LOAD_RELOAD_NORMAL;
746-
break;
747-
case nsIDocShellLoadInfo::loadReloadCharsetChange:
748-
loadType = LOAD_RELOAD_CHARSET_CHANGE;
749-
break;
750-
case nsIDocShellLoadInfo::loadReloadCharsetChangeBypassCache:
751-
loadType = LOAD_RELOAD_CHARSET_CHANGE_BYPASS_CACHE;
752-
break;
753-
case nsIDocShellLoadInfo::loadReloadCharsetChangeBypassProxyAndCache:
754-
loadType = LOAD_RELOAD_CHARSET_CHANGE_BYPASS_PROXY_AND_CACHE;
755-
break;
756-
case nsIDocShellLoadInfo::loadReloadBypassCache:
757-
loadType = LOAD_RELOAD_BYPASS_CACHE;
758-
break;
759-
case nsIDocShellLoadInfo::loadReloadBypassProxy:
760-
loadType = LOAD_RELOAD_BYPASS_PROXY;
761-
break;
762-
case nsIDocShellLoadInfo::loadReloadBypassProxyAndCache:
763-
loadType = LOAD_RELOAD_BYPASS_PROXY_AND_CACHE;
764-
break;
765-
case nsIDocShellLoadInfo::loadLink:
766-
loadType = LOAD_LINK;
767-
break;
768-
case nsIDocShellLoadInfo::loadRefresh:
769-
loadType = LOAD_REFRESH;
770-
break;
771-
case nsIDocShellLoadInfo::loadBypassHistory:
772-
loadType = LOAD_BYPASS_HISTORY;
773-
break;
774-
case nsIDocShellLoadInfo::loadStopContent:
775-
loadType = LOAD_STOP_CONTENT;
776-
break;
777-
case nsIDocShellLoadInfo::loadStopContentAndReplace:
778-
loadType = LOAD_STOP_CONTENT_AND_REPLACE;
779-
break;
780-
case nsIDocShellLoadInfo::loadPushState:
781-
loadType = LOAD_PUSHSTATE;
782-
break;
783-
case nsIDocShellLoadInfo::loadReplaceBypassCache:
784-
loadType = LOAD_REPLACE_BYPASS_CACHE;
785-
break;
786-
case nsIDocShellLoadInfo::loadReloadMixedContent:
787-
loadType = LOAD_RELOAD_ALLOW_MIXED_CONTENT;
788-
break;
789-
default:
790-
NS_NOTREACHED("Unexpected nsDocShellInfoLoadType value");
791-
}
792-
793-
return loadType;
794-
}
795-
796-
nsDocShellInfoLoadType
797-
nsDocShell::ConvertLoadTypeToDocShellLoadInfo(uint32_t aLoadType)
798-
{
799-
nsDocShellInfoLoadType docShellLoadType = nsIDocShellLoadInfo::loadNormal;
800-
switch (aLoadType) {
801-
case LOAD_NORMAL:
802-
docShellLoadType = nsIDocShellLoadInfo::loadNormal;
803-
break;
804-
case LOAD_NORMAL_REPLACE:
805-
docShellLoadType = nsIDocShellLoadInfo::loadNormalReplace;
806-
break;
807-
case LOAD_NORMAL_EXTERNAL:
808-
docShellLoadType = nsIDocShellLoadInfo::loadNormalExternal;
809-
break;
810-
case LOAD_NORMAL_BYPASS_CACHE:
811-
docShellLoadType = nsIDocShellLoadInfo::loadNormalBypassCache;
812-
break;
813-
case LOAD_NORMAL_BYPASS_PROXY:
814-
docShellLoadType = nsIDocShellLoadInfo::loadNormalBypassProxy;
815-
break;
816-
case LOAD_NORMAL_BYPASS_PROXY_AND_CACHE:
817-
docShellLoadType = nsIDocShellLoadInfo::loadNormalBypassProxyAndCache;
818-
break;
819-
case LOAD_NORMAL_ALLOW_MIXED_CONTENT:
820-
docShellLoadType = nsIDocShellLoadInfo::loadNormalAllowMixedContent;
821-
break;
822-
case LOAD_HISTORY:
823-
docShellLoadType = nsIDocShellLoadInfo::loadHistory;
824-
break;
825-
case LOAD_RELOAD_NORMAL:
826-
docShellLoadType = nsIDocShellLoadInfo::loadReloadNormal;
827-
break;
828-
case LOAD_RELOAD_CHARSET_CHANGE:
829-
docShellLoadType = nsIDocShellLoadInfo::loadReloadCharsetChange;
830-
break;
831-
case LOAD_RELOAD_CHARSET_CHANGE_BYPASS_CACHE:
832-
docShellLoadType = nsIDocShellLoadInfo::loadReloadCharsetChangeBypassCache;
833-
break;
834-
case LOAD_RELOAD_CHARSET_CHANGE_BYPASS_PROXY_AND_CACHE:
835-
docShellLoadType = nsIDocShellLoadInfo::loadReloadCharsetChangeBypassProxyAndCache;
836-
break;
837-
case LOAD_RELOAD_BYPASS_CACHE:
838-
docShellLoadType = nsIDocShellLoadInfo::loadReloadBypassCache;
839-
break;
840-
case LOAD_RELOAD_BYPASS_PROXY:
841-
docShellLoadType = nsIDocShellLoadInfo::loadReloadBypassProxy;
842-
break;
843-
case LOAD_RELOAD_BYPASS_PROXY_AND_CACHE:
844-
docShellLoadType = nsIDocShellLoadInfo::loadReloadBypassProxyAndCache;
845-
break;
846-
case LOAD_LINK:
847-
docShellLoadType = nsIDocShellLoadInfo::loadLink;
848-
break;
849-
case LOAD_REFRESH:
850-
docShellLoadType = nsIDocShellLoadInfo::loadRefresh;
851-
break;
852-
case LOAD_BYPASS_HISTORY:
853-
case LOAD_ERROR_PAGE:
854-
docShellLoadType = nsIDocShellLoadInfo::loadBypassHistory;
855-
break;
856-
case LOAD_STOP_CONTENT:
857-
docShellLoadType = nsIDocShellLoadInfo::loadStopContent;
858-
break;
859-
case LOAD_STOP_CONTENT_AND_REPLACE:
860-
docShellLoadType = nsIDocShellLoadInfo::loadStopContentAndReplace;
861-
break;
862-
case LOAD_PUSHSTATE:
863-
docShellLoadType = nsIDocShellLoadInfo::loadPushState;
864-
break;
865-
case LOAD_REPLACE_BYPASS_CACHE:
866-
docShellLoadType = nsIDocShellLoadInfo::loadReplaceBypassCache;
867-
break;
868-
case LOAD_RELOAD_ALLOW_MIXED_CONTENT:
869-
docShellLoadType = nsIDocShellLoadInfo::loadReloadMixedContent;
870-
break;
871-
default:
872-
NS_NOTREACHED("Unexpected load type value");
873-
}
874-
875-
return docShellLoadType;
876-
}
877-
878662
NS_IMETHODIMP
879663
nsDocShell::LoadURI(nsIURI* aURI,
880664
nsIDocShellLoadInfo* aLoadInfo,
@@ -932,7 +716,7 @@ nsDocShell::LoadURI(nsIURI* aURI,
932716
nsDocShellInfoLoadType lt = nsIDocShellLoadInfo::loadNormal;
933717
aLoadInfo->GetLoadType(&lt);
934718
// Get the appropriate loadType from nsIDocShellLoadInfo type
935-
loadType = ConvertDocShellLoadInfoToLoadType(lt);
719+
loadType = ConvertDocShellInfoLoadTypeToLoadType(lt);
936720

937721
aLoadInfo->GetTriggeringPrincipal(getter_AddRefs(triggeringPrincipal));
938722
aLoadInfo->GetInheritPrincipal(&inheritPrincipal);
@@ -1276,7 +1060,7 @@ nsDocShell::LoadStream(nsIInputStream* aStream, nsIURI* aURI,
12761060
nsDocShellInfoLoadType lt = nsIDocShellLoadInfo::loadNormal;
12771061
(void)aLoadInfo->GetLoadType(&lt);
12781062
// Get the appropriate LoadType from nsIDocShellLoadInfo type
1279-
loadType = ConvertDocShellLoadInfoToLoadType(lt);
1063+
loadType = ConvertDocShellInfoLoadTypeToLoadType(lt);
12801064
aLoadInfo->GetTriggeringPrincipal(getter_AddRefs(triggeringPrincipal));
12811065
}
12821066

@@ -4631,7 +4415,7 @@ nsDocShell::LoadURIWithOptions(const char16_t* aURI,
46314415
aLoadFlags & LOAD_FLAGS_FORCE_ALLOW_DATA_URI;
46324416

46334417
// Don't pass certain flags that aren't needed and end up confusing
4634-
// ConvertLoadTypeToDocShellLoadInfo. We do need to ensure that they are
4418+
// ConvertLoadTypeToDocShellInfoLoadType. We do need to ensure that they are
46354419
// passed to LoadURI though, since it uses them.
46364420
uint32_t extraFlags = (aLoadFlags & EXTRA_LOAD_FLAGS);
46374421
aLoadFlags &= ~EXTRA_LOAD_FLAGS;
@@ -4653,7 +4437,7 @@ nsDocShell::LoadURIWithOptions(const char16_t* aURI,
46534437
loadType = MAKE_LOAD_TYPE(LOAD_NORMAL, aLoadFlags);
46544438
}
46554439

4656-
loadInfo->SetLoadType(ConvertLoadTypeToDocShellLoadInfo(loadType));
4440+
loadInfo->SetLoadType(ConvertLoadTypeToDocShellInfoLoadType(loadType));
46574441
loadInfo->SetPostDataStream(postStream);
46584442
loadInfo->SetReferrer(aReferringURI);
46594443
loadInfo->SetReferrerPolicy(aReferrerPolicy);
@@ -9929,7 +9713,7 @@ nsDocShell::InternalLoad(nsIURI* aURI,
99299713
// Explicit principal because we do not want any guesses as to what the
99309714
// principal to inherit is: it should be aTriggeringPrincipal.
99319715
loadInfo->SetPrincipalIsExplicit(true);
9932-
loadInfo->SetLoadType(ConvertLoadTypeToDocShellLoadInfo(LOAD_LINK));
9716+
loadInfo->SetLoadType(ConvertLoadTypeToDocShellInfoLoadType(LOAD_LINK));
99339717
loadInfo->SetForceAllowDataURI(aFlags & INTERNAL_LOAD_FLAGS_FORCE_ALLOW_DATA_URI);
99349718

99359719
rv = win->Open(NS_ConvertUTF8toUTF16(spec),

docshell/base/nsDocShell.h

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -234,10 +234,6 @@ class nsDocShell final
234234
const char16_t* aTargetSpec) override;
235235
NS_IMETHOD OnLeaveLink() override;
236236

237-
nsDocShellInfoLoadType ConvertLoadTypeToDocShellLoadInfo(uint32_t aLoadType);
238-
uint32_t ConvertDocShellLoadInfoToLoadType(
239-
nsDocShellInfoLoadType aDocShellLoadType);
240-
241237
// Don't use NS_DECL_NSILOADCONTEXT because some of nsILoadContext's methods
242238
// are shared with nsIDocShell (appID, etc.) and can't be declared twice.
243239
NS_IMETHOD GetAssociatedWindow(mozIDOMWindowProxy**) override;

0 commit comments

Comments
 (0)