Revert "Only store leading 13 bits of password hash."
[chromium-blink-merge.git] / chrome / common / extensions / api / file_manager_private.idl
blob7053b695995f6239948e26a67a6afb4eb73b9934
1 // Copyright 2013 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.
5 // fileManagerPrivate API.
6 // This is a private API used by the file browser of ChromeOS.
7 [platforms=("chromeos"),
8 implemented_in="chrome/browser/chromeos/extensions/file_manager/file_manager_private_api_functions.h"]
9 namespace fileManagerPrivate {
10 // Type of the mounted volume.
11 enum VolumeType { drive, downloads, removable, archive, cloud_device, provided,
12 mtp, testing };
14 // Device type. Available if this is removable volume.
15 enum DeviceType { usb, sd, optical, mobile, unknown };
17 // Additional data about mount, for example, that the filesystem is not
18 // supported.
19 enum MountCondition { unknown, unsupported };
21 // Is the event raised for mounting or unmounting.
22 enum MountCompletedEventType { mount, unmount };
24 // Event type that tells listeners if mount was successful or an error
25 // occurred. It also specifies the error.
26 enum MountCompletedStatus {
27 success,
28 error_unknown,
29 error_internal,
30 error_invalid_argument,
31 error_invalid_path,
32 error_path_already_mounted,
33 error_path_not_mounted,
34 error_directory_creation_failed,
35 error_invalid_mount_options,
36 error_invalid_unmount_options,
37 error_insufficient_permissions,
38 error_mount_program_not_found,
39 error_mount_program_failed,
40 error_invalid_device_path,
41 error_unknown_filesystem,
42 error_unsupported_filesystem,
43 error_invalid_archive,
44 error_authentication,
45 error_path_unmounted
48 // File transfer progress state.
49 enum TransferState { added, started, in_progress, completed, failed };
51 // Defines file transfer direction.
52 enum TransferType { upload, download };
54 // The type of the progress event.
55 enum CopyProgressStatusType {
56 // "begin_copy_entry" is fired for each entry (file or directory) before
57 // starting the copy operation.
58 begin_copy_entry,
60 // "end_copy_entry" is fired for each entry (file or directory) after ending
61 // the copy operation.
62 end_copy_entry,
64 // "progress" is fired periodically to report progress of a file copy (not
65 // directory).
66 progress,
68 // "success" is fired after all entries are copied.
69 success,
71 // "error" is fired when an error occurs.
72 error
75 // Specifies type of event that is raised.
76 enum FileWatchEventType { changed, error };
78 // Specifies type of change in file watch event.
79 enum ChangeType { add_or_update, delete };
81 // The type of entry that is needed. Default to ALL.
82 enum SearchType { EXCLUDE_DIRECTORIES, SHARED_WITH_ME, OFFLINE, ALL };
84 // Zooming mode.
85 enum ZoomOperationType { in, out, reset };
87 // Specifies how to open inspector.
88 enum InspectionType {
89 // Open inspector for foreground page.
90 normal,
91 // Open inspector for foreground page and bring focus to the console.
92 console,
93 // Open inspector for foreground page in inspect element mode.
94 element,
95 // Open inspector for background page.
96 background
99 // Device event type.
100 enum DeviceEventType {
101 // If the device is disabled by preference.
102 disabled,
103 // Device is removed.
104 removed,
105 // Device is hard unplugged.
106 hard_unplugged,
107 // Format started.
108 format_start,
109 // Format succeeded.
110 format_success,
111 // Format failed.
112 format_fail
115 // Drive sync error type.
116 // Keep it synced with DriveSyncErrorType in operation_observer.h.
117 enum DriveSyncErrorType {
118 // Request to delete a file without permission.
119 delete_without_permission,
120 // Google Drive is temporarily unavailable.
121 service_unavailable,
122 // Miscellaneous errors other than listed above.
123 misc
126 // Result of task execution.
127 enum TaskResult {
128 // The task execution succeeded and a new window/tab was opened.
129 opened,
130 // The task execution succeeded and the message was sent to the proper
131 // extension.
132 message_sent,
133 // The task execution failed.
134 failed,
135 // No URL is specified.
136 empty
139 // Drive share type.
140 enum DriveShareType {
141 can_edit,
142 can_comment,
143 can_view
146 // A file task represents an action that the file manager can perform over the
147 // currently selected files. See
148 // chrome/browser/chromeos/extensions/file_manager/file_tasks.h for details
149 // about how file tasks are handled.
150 dictionary FileTask {
151 // The unique identifier of the task.
152 DOMString taskId;
154 // Task title (ex. App name).
155 DOMString title;
157 // Task icon url (from chrome://extension-icon/...)
158 DOMString iconUrl;
160 // True if this task is a default task for the selected files.
161 boolean isDefault;
163 // True if this task is from generic file handler. Generic file handler is a
164 // file handler which handles any type of files (e.g. extensions: ["*"],
165 // types: ["*/*"]). Partial wild card (e.g. types: ["image/*"]) is not
166 // generic file handler.
167 boolean isGenericFileHandler;
170 // Additional entry properties.
171 dictionary EntryProperties {
172 // Size of this file.
173 double? fileSize;
175 // Timestamp of entry update time, in milliseconds past the epoch.
176 double? lastModifiedTime;
178 // URL to the Drive thumbnail image for this file.
179 DOMString? thumbnailUrl;
181 // Width, if the entry is an image.
182 long? imageWidth;
184 // Height, if the entry is an image.
185 long? imageHeight;
187 // Rotation in clockwise degrees, if the entry is an image.
188 long? imageRotation;
190 // True if the file is pinned in cache.
191 boolean? isPinned;
193 // True if the file is present in cache.
194 boolean? isPresent;
196 // True if the file is hosted on a server instead of local.
197 boolean? isHosted;
199 // True if the file is available offline.
200 boolean? isAvailableOffline;
202 // True if the file is available on metered connection.
203 boolean? isAvailableWhenMetered;
205 // True if the file has local change (has not been fully synced to the cloud).
206 boolean? isDirty;
208 // URL to the custom icon for this file.
209 DOMString? customIconUrl;
211 // Drive MIME type for this file.
212 DOMString? contentMimeType;
214 // True if the entry is labeled as shared-with-me.
215 boolean? sharedWithMe;
217 // True if the entry is labeled as shared (either from me to others or to me
218 // by others.)
219 boolean? shared;
221 // External file URL to open the file in browser.
222 DOMString? externalFileUrl;
225 // Information about total and remaining size on the mount point.
226 dictionary MountPointSizeStats {
227 // Approximate total available size on the mount point.
228 double totalSize;
230 // Approximate remaining available size on the mount point.
231 double remainingSize;
234 // Information about a profile.
235 dictionary ProfileInfo {
236 // Profile ID. This is currently e-mail address of the profile.
237 DOMString profileId;
239 // The name of the profile for display purpose.
240 DOMString displayName;
242 // True if the profile is the one running the current file manager instance.
243 // TODO(hirono): Remove the property because of the design change of
244 // multi-profile suuport.
245 boolean isCurrentProfile;
248 // Mounted disk volume metadata.
249 dictionary VolumeMetadata {
250 // ID of the disk volume.
251 DOMString volumeId;
253 // Id the provided file system (for proviided file systems).
254 DOMString? fileSystemId;
256 // Extension providing this volume (for provided file systems).
257 DOMString? extensionId;
259 // Label of the volume (if available).
260 DOMString? volumeLabel;
262 // Description of the profile where the volume belongs.
263 // TODO(hirono): Remove the property because of the design change of
264 // multi-profile support.
265 ProfileInfo profile;
267 // The path to the mounted device, archive file or network resource.
268 DOMString? sourcePath;
270 // Type of the mounted volume.
271 VolumeType volumeType;
273 // Device type. Available if this is removable volume.
274 DeviceType? deviceType;
276 // Path to identify the device. This is consistent with DeviceEvent's
277 // devicePath.
278 DOMString? devicePath;
280 // Whether the device is parent or not (i.e. sdb rather than sdb1).
281 boolean? isParentDevice;
283 // Flag that specifies if volume is mounted in read-only mode.
284 boolean isReadOnly;
286 // Flag that specifies whether the volume contains media.
287 boolean hasMedia;
289 // Additional data about mount, for example, that the filesystem is not
290 // supported.
291 MountCondition? mountCondition;
294 // Payload data for mount event.
295 dictionary MountCompletedEvent {
296 // Is the event raised for mounting or unmounting.
297 MountCompletedEventType eventType;
299 // Event type that tells listeners if mount was successful or an error
300 // occurred. It also specifies the error.
301 MountCompletedStatus status;
303 // Metadata of the mounted volume.
304 VolumeMetadata volumeMetadata;
306 // Whether the volume event should be notified or not.
307 boolean shouldNotify;
310 // Payload data for file transfer status updates.
311 dictionary FileTransferStatus {
312 // URL of file that is being transfered.
313 DOMString fileUrl;
315 // File transfer progress state.
316 TransferState transferState;
318 // Defines file transfer direction.
319 TransferType transferType;
321 // Approximated completed portion of the transfer operation.
322 double? processed;
324 // Approximated total size of transfer operation.
325 double? total;
327 // Total number of jobs.
328 long num_total_jobs;
331 // Error during the drive sync.
332 dictionary DriveSyncErrorEvent {
333 // Error type.
334 DriveSyncErrorType type;
336 // File URL of the entry that the error happens to.
337 DOMString fileUrl;
340 // Payload data for copy status progress updates.
341 dictionary CopyProgressStatus {
342 // The type of the progress event.
343 CopyProgressStatusType type;
345 // URL for the entry currently being copied. This field is particularly useful
346 // when a directory copy is initiated with startCopy(). The field tells what
347 // file/directory in that directory is now being copied.
348 DOMString? sourceUrl;
350 // URL for the entry currently being created. This field is particularly
351 // useful when a directory copy is initiated with startCopy(). The field tells
352 // what file/directory in that directory is being created. Available only for
353 // end_copy_entry and success.
354 DOMString? destinationUrl;
356 // Number of processed bytes for the file currently being copied. Available
357 // only for "progress" event. To show the progress bar, a caller needs to
358 // pre-compute the size of files being copied for the file (not directory).
359 double? size;
361 // DOMError's name. Available only for ERROR event.
362 DOMString? error;
365 // Payload data for file transfer cancel response.
366 dictionary FileTransferCancelStatus {
367 // URL of file that is being transfered.
368 DOMString fileUrl;
370 // True if ongoing transfer operation was found and canceled.
371 boolean canceled;
374 // Detailed information of change.
375 dictionary FileChange {
376 // URL of changed file (or directory).
377 DOMString url;
379 // Type of change, which may be multiple.
380 ChangeType[] changes;
383 // Directory change notification details.
384 dictionary FileWatchEvent {
385 // Specifies type of event that is raised.
386 FileWatchEventType eventType;
388 // An Entry object which represents a changed directory. The conversion into a
389 // kind of FileEntry object is done in
390 // file_browser_handler_custom_bindings.cc. For filesystem API's Entry
391 // interface, see <a
392 // href='http://www.w3.org/TR/file-system-api/#the-entry-interface'>The Entry
393 // interface</a>.
394 [instanceOf=Entry] object entry;
396 // Detailed change information of change. It would be null if the detailed
397 // information is not available.
398 FileChange[]? changedFiles;
401 dictionary Preferences {
402 boolean driveEnabled;
403 boolean cellularDisabled;
404 boolean hostedFilesDisabled;
405 boolean use24hourClock;
406 boolean allowRedeemOffers;
409 dictionary PreferencesChange {
410 boolean? cellularDisabled;
411 boolean? hostedFilesDisabled;
414 dictionary SearchParams {
415 // Search query.
416 DOMString query;
418 // ID of the search feed that should be fetched next. Value passed here should
419 // be gotten from previous searchDrive call. It can be empty for the initial
420 // search request.
421 DOMString nextFeed;
424 dictionary SearchMetadataParams {
425 // Search query. It can be empty. Any filename matches to an empty query.
426 DOMString query;
428 // The type of entry that is needed. Default to ALL.
429 SearchType types;
431 // Maximum number of results.
432 long maxResults;
435 // Entry and Drive-related properties representing a search result.
436 dictionary SearchResult {
437 // A dictionary object which represents a Drive file. This will be converted
438 // into a kind of FileEntry object. See
439 // file_browser_handler_custom_bindings.cc for details. For filesystem API's
440 // Entry interface, see <a
441 // href='http://www.w3.org/TR/file-system-api/#the-entry-interface'>The Entry
442 // interface</a>.
443 [instanceOf=Entry] object entry;
445 // The base name of a Drive file that matched the search query. The matched
446 // sub strings are highlighted with <b> element. Meta characters are escaped
447 // like &lt;.
448 DOMString highlightedBaseName;
451 dictionary DriveConnectionState {
452 DOMString type;
454 // Reasons of offline.
455 DOMString? reason;
457 // Whether the device has a cellular network access or not. i.e. the |type|
458 // can be 'metered' or not.
459 boolean hasCellularNetworkAccess;
462 // Device event dispatched to listeners of onDeviceChaged. See also
463 // DeviceEventType to know when the event dispatched.
464 dictionary DeviceEvent {
465 // Event type of the device event.
466 DeviceEventType type;
467 // Device path to identify the device.
468 DOMString devicePath;
471 // Callback that does not take arguments.
472 callback SimpleCallback = void();
474 // |result| Result of the task execution.
475 callback ExecuteTaskCallback = void(TaskResult result);
477 // |tasks| The list of matched file URL patterns for this task.
478 callback GetFileTasksCallback = void(FileTask[] tasks);
480 // |result| Mime type of the file.
481 callback GetMimeTypeCallback = void(DOMString result);
483 // |result| Hash containing the string assets.
484 callback GetStringsCallback = void(object result);
486 // |success| True when file watch is successfully added.
487 callback AddFileWatchCallback = void(optional boolean success);
489 // |success| True when file watch is successfully removed.
490 callback RemoveFileWatchCallback = void(optional boolean success);
492 // |fileSystem| A DOMFileSystem instance for local file system access. null if
493 // the caller has no appropriate permissions.
494 callback RequestFileSystemCallback = void(optional object fileSystem);
496 // |entryProperties| A dictionary containing properties of the requested
497 // entries.
498 callback GetEntryPropertiesCallback =
499 void(EntryProperties[] entryProperties);
501 // |sourcePath| Source path of the mount.
502 callback AddMountCallback = void(DOMString sourcePath);
504 // |volumeMetadataList| The list of VolumeMetadata representing mounted volumes.
505 callback GetVolumeMetadataListCallback =
506 void(VolumeMetadata[] volumeMetadataList);
508 // |fileTransferCancelStatuses| The list of FileTransferCancelStatus.
509 callback CancelFileTransfersCallback =
510 void(FileTransferCancelStatus[] fileTransferCancelStatuses);
512 // |copyId| ID of the copy task. Can be used to identify the progress, and to
513 // cancel the task.
514 callback StartCopyCallback = void(long copyId);
516 // |sizeStats| Name/value pairs of size stats. Will be undefined if stats could
517 // not be determined.
518 callback GetSizeStatsCallback = void(optional MountPointSizeStats sizeStats);
520 callback GetPreferencesCallback = void(Preferences result);
522 // |entries|
523 // |nextFeed| ID of the feed that contains next chunk of the search result.
524 // Should be sent to the next searchDrive request to perform
525 // incremental search.
526 callback SearchDriveCallback =
527 void([instanceOf=Entry] object[] entries, DOMString nextFeed);
529 callback SearchDriveMetadataCallback = void(SearchResult[] results);
531 // |urls| The map of hash and array of FileEntry's URL. The array can be empty
532 // if the corresponding file is not found.
533 callback SearchFilesByHashesCallback = void(object urls);
535 callback ZipSelectionCallback = void(optional boolean success);
537 callback GetDriveConnectionStateCallback = void(DriveConnectionState result);
539 // |result| true if the length is in the valid range, false otherwise.
540 callback ValidatePathNameLengthCallback = void(boolean result);
542 // |accessToken| OAuth2 access token, or an empty string if failed to fetch.
543 callback RequestAccessTokenCallback = void(DOMString accessToken);
545 // |accessToken| OAuth2 access token, or an empty string if failed to fetch.
546 callback RequestWebStoreAccessTokenCallback = void(DOMString accessToken);
548 // |url| Result url.
549 callback GetUrlCallback = void(DOMString url);
551 // |profiles| List of profile information.
552 // |runningProfile| ID of the profile that runs the application instance.
553 // |showingProfile| ID of the profile that shows the application window.
554 callback GetProfilesCallback = void(ProfileInfo[] profiles,
555 DOMString runningProfile,
556 DOMString displayProfile);
558 // |entryUrl| URL of an entry in a normal file system.
559 callback ResolveEntriesCallback =
560 void([instanceOf=FileEntry] object[] entries);
562 // |checksum| Result checksum.
563 callback ComputeChecksumCallback = void(DOMString checksum);
565 interface Functions {
566 // Logout the current user for navigating to the re-authentication screen for
567 // the Google account.
568 static void logoutUserForReauthentication();
570 // Cancels file selection.
571 static void cancelDialog();
573 // Executes file browser task over selected files.
574 // |taskId| The unique identifier of task to execute.
575 // |fileUrls| Array of file URLs
576 // |callback|
577 static void executeTask(DOMString taskId,
578 DOMString[] fileUrls,
579 optional ExecuteTaskCallback callback);
581 // Sets the default task for the supplied MIME types and suffixes of the
582 // supplied file URLs. Lists of MIME types and URLs may contain duplicates.
583 // |taskId| The unique identifier of task to mark as default.
584 // |fileUrls| Array of selected file URLs to extract suffixes from.
585 // |mimeTypes| Array of selected file MIME types.
586 // |callback|
587 static void setDefaultTask(DOMString taskId,
588 DOMString[] fileUrls,
589 optional DOMString[] mimeTypes,
590 optional SimpleCallback callback);
592 // Gets the list of tasks that can be performed over selected files.
593 // |fileUrls| Array of selected file URLs
594 // |callback|
595 static void getFileTasks(DOMString[] fileUrls,
596 GetFileTasksCallback callback);
598 // Gets the MIME type of a file.
599 // |fileUrl| File url
600 // |callback|
601 static void getMimeType(DOMString fileUrl,
602 GetMimeTypeCallback callback);
604 // Gets localized strings and initialization data.
605 // |callback|
606 static void getStrings(GetStringsCallback callback);
608 // Adds file watch.
609 // |fileUrl| URL of file to watch
610 // |callback|
611 static void addFileWatch(DOMString fileUrl, AddFileWatchCallback callback);
613 // Removes file watch.
614 // |fileUrl| URL of watched file to remove
615 // |callback|
616 static void removeFileWatch(DOMString fileUrl,
617 RemoveFileWatchCallback callback);
619 // Requests access to a file system volume.
620 // |volumeId| The ID of the file system volume to request. The volume ID is
621 // delivered to JavaScript as part of VolumeMetadata. By specifying
622 // "compatible", this function behaves in the compatible mode, where the
623 // returned FileSystem object gives access to all file system volumes such
624 // as Downloads folder and removal media like SD cards (i.e. all volumes
625 // are provided inside the single FileSystem object). In the new
626 // "per-volume FileSystem object model" crbug.com/322305, a separate
627 // FileSystem object is created for each volume. "compatible" parameter
628 // will be removed once Files.app is switched to the per-volume FileSystem
629 // object model.
630 // |callback|
631 static void requestFileSystem(DOMString volumeId,
632 RequestFileSystemCallback callback);
634 // Selects multiple files.
635 // |selectedPaths| Array of selected paths
636 // |shouldReturnLocalPath| true if paths need to be resolved to local paths.
637 // |callback|
638 static void selectFiles(DOMString[] selectedPaths,
639 boolean shouldReturnLocalPath,
640 SimpleCallback callback);
642 // Selects a file.
643 // |selectedPath| A selected path
644 // |index| Index of Filter
645 // |forOpening| true if paths are selected for opening. false if for saving.
646 // |shouldReturnLocalPath| true if paths need to be resolved to local paths.
647 // |callback|
648 static void selectFile(DOMString selectedPath,
649 long index,
650 boolean forOpening,
651 boolean shouldReturnLocalPath,
652 SimpleCallback callback);
654 // Requests additional properties for files.
655 // |fileUrls| list of URLs of files
656 // |callback|
657 static void getEntryProperties(
658 DOMString[] fileUrls,
659 GetEntryPropertiesCallback callback);
661 // Pins/unpins a Drive file in the cache.
662 // |fileUrl| URL of a file to pin/unpin.
663 // |pin| Pass true to pin the file.
664 // |callback| Completion callback. $(ref:runtime.lastError) will be set if
665 // there was an error.
666 static void pinDriveFile(DOMString fileUrl,
667 boolean pin,
668 optional SimpleCallback callback);
670 // Resolves file entries in the isolated file system and returns corresponding
671 // entries in the external file system mounted to Chrome OS file manager
672 // backend. If resolving entry fails, the entry will be just ignored and the
673 // corresponding entry does not appear in the result.
674 [nocompile]
675 static void resolveIsolatedEntries(
676 [instanceOf=FileEntry] object[] entries,
677 ResolveEntriesCallback callback);
679 // Mount a resource or a file.
680 // |source| Mount point source. For compressed files it is relative file path
681 // within external file system
682 // |callback|
683 static void addMount(DOMString source, AddMountCallback callback);
685 // Unmounts a mounted resource.
686 // |volumeId| An ID of the volume.
687 static void removeMount(DOMString volumeId);
689 // Get the list of mounted volumes.
690 // |callback|
691 static void getVolumeMetadataList(GetVolumeMetadataListCallback callback);
693 // Cancels ongoing file transfers for selected files.
694 // |fileUrls| Array of files for which ongoing transfer should be canceled.
695 // If this is absent, all jobs are canceled.
696 // |callback| Completion callback of the cancel.
697 static void cancelFileTransfers(
698 optional DOMString[] fileUrls,
699 optional CancelFileTransfersCallback callback);
701 // Starts to copy an entry. If the source is a directory, the copy is done
702 // recursively.
703 // |sourceUrl| URL of the source entry to be copied.
704 // |parent| URL of the destination directory.
705 // |newName| Name of the new entry. It shouldn't contain '/'.
706 // |callback| Completion callback.
707 static void startCopy(DOMString sourceUrl,
708 DOMString parent,
709 DOMString newName,
710 StartCopyCallback callback);
712 // Cancels the running copy task.
713 // |copyId| ID of the copy task to be cancelled.
714 // |callback| Completion callback of the cancel.
715 static void cancelCopy(long copyId, optional SimpleCallback callback);
717 // Retrieves total and remaining size of a mount point.
718 // |volumeId| ID of the volume to be checked.
719 // |callback|
720 static void getSizeStats(DOMString volumeId, GetSizeStatsCallback callback);
722 // Formats a mounted volume.
723 // |volumeId| ID of the volume to be formatted.
724 static void formatVolume(DOMString volumeId);
726 // Retrieves file manager preferences.
727 // |callback|
728 static void getPreferences(GetPreferencesCallback callback);
730 // Sets file manager preferences.
731 // |changeInfo|
732 static void setPreferences(PreferencesChange changeInfo);
734 // Performs drive content search.
735 // |searchParams|
736 // |callback|
737 static void searchDrive(SearchParams searchParams,
738 SearchDriveCallback callback);
740 // Performs drive metadata search.
741 // |searchParams|
742 // |callback|
743 static void searchDriveMetadata(SearchMetadataParams searchParams,
744 SearchDriveMetadataCallback callback);
746 // Search files in the volume having |volumeId| by using |hashList|.
747 // sub-directories) the given |targetDirectoryUrl|.
748 static void searchFilesByHashes(DOMString volumeId,
749 DOMString[] hashList,
750 SearchFilesByHashesCallback callback);
752 // Create a zip file for the selected files.
753 // |dirURL| URL of the directory containing the selected files.
754 // |selectionUrls| URLs of the selected files. The files must be under the
755 // directory specified by dirURL.
756 // |destName| Name of the destination zip file. The zip file will be created
757 // under the directory specified by dirURL.
758 // |callback|
759 static void zipSelection(DOMString dirURL,
760 DOMString[] selectionUrls,
761 DOMString destName,
762 optional ZipSelectionCallback callback);
764 // Retrieves the state of the current drive connection.
765 // |callback|
766 static void getDriveConnectionState(GetDriveConnectionStateCallback callback);
768 // Checks whether the path name length fits in the limit of the filesystem.
769 // |parent_directory_url| The URL of the parent directory entry.
770 // |name| The name of the file.
771 // |callback| Called back when the check is finished.
772 static void validatePathNameLength(DOMString parent_directory_url,
773 DOMString name,
774 ValidatePathNameLengthCallback callback);
776 // Changes the zoom factor of the Files.app.
777 // |operation| Zooming mode.
778 static void zoom(ZoomOperationType operation);
780 // Requests a Drive API OAuth2 access token.
781 // |refresh| Whether the token should be refetched instead of using the cached
782 // one.
783 // |callback|
784 static void requestAccessToken(boolean refresh,
785 RequestAccessTokenCallback callback);
787 // Requests a Webstore API OAuth2 access token.
788 // |callback|
789 static void requestWebStoreAccessToken(
790 RequestWebStoreAccessTokenCallback callback);
792 // Requests a share dialog url for the specified file.
793 // |url| Url for the file.
794 // |callback|
795 static void getShareUrl(DOMString url, GetUrlCallback callback);
797 // Requests a download url to download the file contents.
798 // |url| Url for the file.
799 // |callback|
800 static void getDownloadUrl(DOMString url, GetUrlCallback callback);
802 // Requests to share drive files.
803 // |url| URL of a file to be shared.
804 // |shareType| Type of access that is getting granted.
805 static void requestDriveShare(DOMString url,
806 DriveShareType shareType,
807 SimpleCallback callback);
809 // Requests to install a webstore item.
810 // |item_id| The id of the item to install.
811 // |silentInstallation| False to show installation prompt. True not to show.
812 // |callback|
813 static void installWebstoreItem(DOMString itemId,
814 boolean silentInstallation,
815 SimpleCallback callback);
817 // Obtains a list of profiles that are logged-in.
818 static void getProfiles(GetProfilesCallback callback);
820 // Opens inspector window.
821 // |type| InspectionType which specifies how to open inspector.
822 static void openInspector(InspectionType type);
824 // Computes an MD5 checksum for the given file.
825 // |fileURL| The URL of the file to checksum.
826 // |callback|
827 static void computeChecksum(DOMString fileURL,
828 ComputeChecksumCallback callback);
831 interface Events {
832 static void onMountCompleted(MountCompletedEvent event);
834 static void onFileTransfersUpdated(FileTransferStatus event);
836 static void onCopyProgress(long copyId, CopyProgressStatus status);
838 static void onDirectoryChanged(FileWatchEvent event);
840 static void onPreferencesChanged();
842 static void onDriveConnectionStatusChanged();
844 static void onDeviceChanged(DeviceEvent event);
846 static void onDriveSyncError(DriveSyncErrorEvent event);