#include "components/ntp_tiles/webui/ntp_tiles_internals_message_handler.h"
#include <array>
#include <memory>
#include <utility>
#include <vector>
#include "base/check_op.h"
#include "base/files/file_util.h"
#include "base/functional/bind.h"
#include "base/functional/callback.h"
#include "base/i18n/time_formatting.h"
#include "base/json/json_reader.h"
#include "base/json/json_writer.h"
#include "base/values.h"
#include "components/favicon/core/favicon_service.h"
#include "components/ntp_tiles/constants.h"
#include "components/ntp_tiles/most_visited_sites.h"
#include "components/ntp_tiles/pref_names.h"
#include "components/ntp_tiles/webui/ntp_tiles_internals_message_handler_client.h"
#include "components/prefs/pref_service.h"
#include "components/url_formatter/url_fixer.h"
#include "url/gurl.h"
namespace ntp_tiles {
namespace {
FaviconResultMap;
struct IconTypeAndName { … };
constexpr std::array<IconTypeAndName, 4> kIconTypesAndNames{ … };
std::string FormatJson(const base::Value::List& value) { … }
}
NTPTilesInternalsMessageHandler::NTPTilesInternalsMessageHandler(
favicon::FaviconService* favicon_service)
: … { … }
NTPTilesInternalsMessageHandler::~NTPTilesInternalsMessageHandler() = default;
void NTPTilesInternalsMessageHandler::RegisterMessages(
NTPTilesInternalsMessageHandlerClient* client) { … }
void NTPTilesInternalsMessageHandler::HandleRegisterForEvents(
const base::Value::List& args) { … }
void NTPTilesInternalsMessageHandler::HandleUpdate(
const base::Value::List& args) { … }
void NTPTilesInternalsMessageHandler::HandleViewPopularSitesJson(
const base::Value::List& args) { … }
void NTPTilesInternalsMessageHandler::SendSourceInfo() { … }
void NTPTilesInternalsMessageHandler::SendTiles(
const NTPTilesVector& tiles,
const FaviconResultMap& result_map) { … }
void NTPTilesInternalsMessageHandler::OnURLsAvailable(
const std::map<SectionType, NTPTilesVector>& sections) { … }
void NTPTilesInternalsMessageHandler::OnIconMadeAvailable(
const GURL& site_url) { … }
void NTPTilesInternalsMessageHandler::OnFaviconLookupDone(
const NTPTilesVector& tiles,
FaviconResultMap* result_map,
size_t* num_pending_lookups,
const GURL& page_url,
const favicon_base::FaviconRawBitmapResult& result) { … }
}