| // Copyright 2023 The Chromium Authors |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| // imageLoaderPrivate API. |
| // This is a private API used by the ChromeOS FilesApp ImageLoader extension. |
| [platforms=("chromeos"), |
| implemented_in="chrome/browser/ash/extensions/file_manager/image_loader_private_api.h"] |
| namespace imageLoaderPrivate { |
| // |thumbnailDataUrl| A data URL for the thumbnail; |thumbnailDataUrl| is |
| // empty if no thumbnail was available. |
| callback GetThumbnailCallback = void(DOMString thumbnailDataUrl); |
| |
| interface Functions { |
| // For a file in DriveFS, retrieves its thumbnail. If |cropToSquare| is |
| // true, returns a thumbnail appropriate for file list or grid views; |
| // otherwise, returns a thumbnail appropriate for quickview. |
| [doesNotSupportPromises] |
| static void getDriveThumbnail(DOMString url, |
| boolean cropToSquare, |
| GetThumbnailCallback callback); |
| |
| // For a local PDF file, retrieves its thumbnail with a given |width| and |
| // |height|. |
| [doesNotSupportPromises] |
| static void getPdfThumbnail(DOMString url, |
| long width, |
| long height, |
| GetThumbnailCallback callback); |
| |
| // Retrieves a thumbnail of an ARC DocumentsProvider file, closely matching |
| // the hinted size specified by |widthHint| and |heightHint|, but not |
| // necessarily the exact size. |callback| is called with thumbnail data |
| // encoded as a data URL. If the document does not support thumbnails, |
| // |callback| is called with an empty string. |
| // Note: The thumbnail data may originate from third-party application code, |
| // and is untrustworthy (Security). |
| [doesNotSupportPromises] |
| static void getArcDocumentsProviderThumbnail(DOMString url, |
| long widthHint, |
| long heightHint, |
| GetThumbnailCallback callback); |
| }; |
| }; |
| |