chromium/components/sync/protocol/favicon_image_specifics.proto

// Copyright 2012 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
// DEPRECATED: This data type is no longer synced.
// TODO(crbug.com/41467918): Remove once the file is no longer used by the
// server. Sync protocol datatype extension for the favicon image specifics.

// If you change or add any fields in this file, update proto_visitors.h and
// potentially proto_enum_conversions.{h, cc}.

syntax = "proto2";

option java_multiple_files = true;
option java_package = "org.chromium.components.sync.protocol";

option optimize_for = LITE_RUNTIME;

package sync_pb;

message FaviconData {
  // The image data for the favicon (PNG encoded).
  optional bytes favicon = 1;
  // The favicon dimensions.
  optional int32 width = 2;
  optional int32 height = 3;
}

// Image data for favicons. Multiple resolutions are supported.
message FaviconImageSpecifics {
  // The url of the favicon image.
  optional string favicon_url = 1;

  // The favicons associated with this source, one per scale type.
  // Favicons images should be stored into the field that best corresponds to
  // their scale. If multiple favicons are appropriate, the highest resolution
  // that doesn't violate the maximum should be stored.

  // A normal low-resolution web favicon (max resolution 16x16).
  optional FaviconData favicon_web = 2;
  // A slightly higher-resolution web favicon (max resolution 32x32).
  optional FaviconData favicon_web_32 = 3;
  // A high-resolution touch favicon (not precomposed, max resolution 64x64).
  optional FaviconData favicon_touch_64 = 4;
  // A high-resolution touch favicon (precomposed, max resolution 64x64).
  optional FaviconData favicon_touch_precomposed_64 = 5;
}