gecko-dev/parser/nsCharsetSource.h
Henri Sivonen 8dca2aaa89 Bug 1712928 - Gather telemetry about encoding-unlabeled pages and about Repair Text Encoding usage situations. r=emk
In particular, gather telemetry to evaluate the impact of unlabeled UTF-8
and how detector-triggered reloads would change if ASCII-only at initial
guess was treated as UTF-8.

Differential Revision: https://phabricator.services.mozilla.com/D140818
2022-03-29 08:04:25 +00:00

48 lines
2.2 KiB
C

/* This Source Code Form is subject to the terms of the Mozilla Public
* License, v. 2.0. If a copy of the MPL was not distributed with this file,
* You can obtain one at http://mozilla.org/MPL/2.0/. */
#ifndef nsCharsetSource_h_
#define nsCharsetSource_h_
// note: the value order defines the priority; higher numbers take priority
enum nsCharsetSource {
kCharsetUninitialized,
kCharsetFromFallback,
kCharsetFromDocTypeDefault, // This and up confident for XHR
// Start subdividing source for telemetry purposes
kCharsetFromInitialAutoDetectionASCII,
kCharsetFromInitialAutoDetectionWouldHaveBeenUTF8,
kCharsetFromInitialAutoDetectionWouldNotHaveBeenUTF8Generic,
kCharsetFromInitialAutoDetectionWouldNotHaveBeenUTF8Content,
kCharsetFromInitialAutoDetectionWouldNotHaveBeenUTF8DependedOnTLD,
// End subdividing source for telemetry purposes
kCharsetFromParentFrame, // Same-origin parent takes precedence over detector
// to avoid breaking tests. (Also, the HTML spec
// says so.)
kCharsetFromXmlDeclaration,
kCharsetFromMetaTag,
kCharsetFromChannel,
kCharsetFromOtherComponent,
kCharsetFromInitialUserForcedAutoDetection,
// Start subdividing source for telemetry purposes
// Deliberately no Final version of ASCII
kCharsetFromFinalAutoDetectionWouldHaveBeenUTF8InitialWasASCII,
kCharsetFromFinalAutoDetectionWouldNotHaveBeenUTF8Generic,
kCharsetFromFinalAutoDetectionWouldNotHaveBeenUTF8GenericInitialWasASCII,
kCharsetFromFinalAutoDetectionWouldNotHaveBeenUTF8Content,
kCharsetFromFinalAutoDetectionWouldNotHaveBeenUTF8ContentInitialWasASCII,
kCharsetFromFinalAutoDetectionWouldNotHaveBeenUTF8DependedOnTLD,
kCharsetFromFinalAutoDetectionWouldNotHaveBeenUTF8DependedOnTLDInitialWasASCII,
kCharsetFromFinalAutoDetectionFile,
// End subdividing source for telemetry purposes
kCharsetFromFinalUserForcedAutoDetection,
kCharsetFromXmlDeclarationUtf16, // This one is overridden by
// kCharsetFromChannel
kCharsetFromByteOrderMark,
kCharsetFromUtf8OnlyMime, // For JSON, WebVTT and such
kCharsetFromBuiltIn, // resource: URLs
};
#endif /* nsCharsetSource_h_ */