1// Copyright 2014 The Chromium Authors. All rights reserved. 2// Use of this source code is governed by a BSD-style license that can be 3// found in the LICENSE file. 4 5// Internal, used by fileManagerPrivate's custom bindings. 6[platforms=("chromeos"), 7 implemented_in="chrome/browser/chromeos/extensions/file_manager/file_manager_private_api_functions.h"] 8namespace fileManagerPrivateInternal { 9 // Entry information that renderers need to create an Entry instance. 10 dictionary EntryDescription { 11 DOMString fileSystemName; 12 DOMString fileSystemRoot; 13 DOMString fileFullPath; 14 boolean fileIsDirectory; 15 }; 16 17 callback SimpleCallback = void(); 18 callback ResolveIsolatedEntriesCallback = void(EntryDescription[] entries); 19 callback GetEntryPropertiesCallback = void( 20 fileManagerPrivate.EntryProperties[] entryProperties); 21 callback AddFileWatchCallback = void(optional boolean success); 22 callback RemoveFileWatchCallback = void(optional boolean success); 23 callback GetCustomActionsCallback = void(fileSystemProvider.Action[] actions); 24 callback ComputeChecksumCallback = void(DOMString checksum); 25 callback GetMimeTypeCallback = void(DOMString result); 26 callback ExecuteTaskCallback = void(fileManagerPrivate.TaskResult result); 27 callback GetFileTasksCallback = void(fileManagerPrivate.FileTask[] tasks); 28 callback GetUrlCallback = void(DOMString url); 29 callback GetUrlCallback = void(DOMString url); 30 callback StartCopyCallback = void(long copyId); 31 callback ZipSelectionCallback = void(optional boolean success); 32 callback ValidatePathNameLengthCallback = void(boolean result); 33 callback GetDirectorySizeCallback = void(double size); 34 callback GetRecentFilesCallback = void(EntryDescription[] entries); 35 callback GetCrostiniSharedPathsCallback = 36 void(EntryDescription[] entries, boolean firstForSession); 37 callback GetLinuxPackageInfoCallback = 38 void(fileManagerPrivate.LinuxPackageInfo linux_package_info); 39 callback InstallLinuxPackageCallback = 40 void(fileManagerPrivate.InstallLinuxPackageResponse response); 41 callback GetThumbnailCallback = void(DOMString ThumbnailDataUrl); 42 43 interface Functions { 44 static void resolveIsolatedEntries(DOMString[] urls, 45 ResolveIsolatedEntriesCallback callback); 46 static void getEntryProperties( 47 DOMString[] urls, 48 fileManagerPrivate.EntryPropertyName[] names, 49 GetEntryPropertiesCallback callback); 50 static void addFileWatch( 51 DOMString url, 52 AddFileWatchCallback callback); 53 static void removeFileWatch( 54 DOMString url, 55 RemoveFileWatchCallback callback); 56 static void getCustomActions(DOMString[] urls, 57 GetCustomActionsCallback callback); 58 static void executeCustomAction(DOMString[] urls, 59 DOMString actionId, 60 SimpleCallback callback); 61 static void computeChecksum(DOMString url, 62 ComputeChecksumCallback callback); 63 static void getMimeType(DOMString url, 64 GetMimeTypeCallback callback); 65 static void pinDriveFile(DOMString url, 66 boolean pin, 67 SimpleCallback callback); 68 static void executeTask(DOMString taskId, 69 DOMString[] urls, 70 ExecuteTaskCallback callback); 71 static void setDefaultTask(DOMString taskId, 72 DOMString[] urls, 73 DOMString[] mimeTypes, 74 SimpleCallback callback); 75 static void getFileTasks(DOMString[] urls, 76 GetFileTasksCallback callback); 77 static void getDownloadUrl(DOMString url, GetUrlCallback callback); 78 static void startCopy(DOMString url, 79 DOMString parentUrl, 80 DOMString newName, 81 StartCopyCallback callback); 82 static void zipSelection(DOMString parentUrl, 83 DOMString[] urls, 84 DOMString destName, 85 ZipSelectionCallback callback); 86 static void validatePathNameLength( 87 DOMString parentUrl, 88 DOMString name, 89 ValidatePathNameLengthCallback callback); 90 static void getDirectorySize(DOMString url, 91 GetDirectorySizeCallback callback); 92 static void getRecentFiles(fileManagerPrivate.SourceRestriction restriction, 93 fileManagerPrivate.RecentFileType file_type, 94 GetRecentFilesCallback callback); 95 static void sharePathsWithCrostini(DOMString vmName, DOMString[] urls, 96 boolean persist, 97 SimpleCallback callback); 98 static void unsharePathWithCrostini(DOMString vmName, DOMString url, 99 SimpleCallback callback); 100 static void getCrostiniSharedPaths(boolean observeFirstForSession, 101 DOMString vmName, 102 GetCrostiniSharedPathsCallback callback); 103 static void getLinuxPackageInfo(DOMString url, 104 GetLinuxPackageInfoCallback callback); 105 static void installLinuxPackage(DOMString url, 106 InstallLinuxPackageCallback callback); 107 static void importCrostiniImage(DOMString url); 108 static void getThumbnail(DOMString url, 109 boolean cropToSquare, 110 GetThumbnailCallback callback); 111 }; 112}; 113