Index: chrome/common/extensions/api/sessions.json |
diff --git a/chrome/common/extensions/api/sessions.json b/chrome/common/extensions/api/sessions.json |
new file mode 100644 |
index 0000000000000000000000000000000000000000..2f5c85dfb2531605e3c6f55a207c5ae78dd42fcd |
--- /dev/null |
+++ b/chrome/common/extensions/api/sessions.json |
@@ -0,0 +1,117 @@ |
+// Copyright (c) 2012 The Chromium Authors. All rights reserved. |
+// Use of this source code is governed by a BSD-style license that can be |
+// found in the LICENSE file. |
+ |
+[ |
+ { |
+ "namespace": "sessions", |
+ "description": "Use the <code>chrome.sessions</code> API to query and restore tabs and windows from a browsing session.", |
+ "types": [ |
+ { |
+ "id": "Filter", |
+ "type": "object", |
+ "properties": { |
+ "maxResults": { |
+ "type": "integer", |
+ "minimum": 0, |
+ "maximum": 25, |
+ "optional": true, |
+ "description": "The maximum number of entries to be fetched in the requested list. Omit this parameter to fetch the maximum number of entries ($ref:MAX_SESSION_RESULTS)." |
+ } |
+ } |
+ }, |
+ { |
+ "id": "Session", |
+ "type": "object", |
+ "properties": { |
+ "lastModified": {"type": "integer", "description": "The time when the window or tab was closed or modified, represented in milliseconds since the epoch."}, |
+ "tab": {"$ref": "tabs.Tab", "optional": true, "description": "The $ref:tabs.Tab, if this entry describes a tab. Either this or $ref:Session.window will be set."}, |
+ "window": {"$ref": "windows.Window", "optional": true, "description": "The $ref:windows.Window, if this entry describes a window. Either this or $ref:Session.tab will be set."} |
+ } |
+ }, |
+ { |
+ "id": "Device", |
+ "type": "object", |
+ "properties": { |
+ "info": {"type": "string", "description": "Represents all information about a foreign device."}, |
+ "sessions": {"type": "array", "items": {"$ref": "Session"}, "description": "A list of open window sessions for the foreign device, sorted from most recently to least recently modified session."} |
+ } |
+ } |
+ ], |
+ "functions": [ |
+ { |
+ "name": "getRecentlyClosed", |
+ "type": "function", |
+ "description": "Gets the list of recently closed tabs and/or windows.", |
+ "parameters": [ |
+ { |
+ "$ref": "Filter", |
+ "name": "filter", |
+ "optional": true |
+ }, |
+ { |
+ "type": "function", |
+ "name": "callback", |
+ "parameters": [ |
+ { |
+ "name": "sessions", "type": "array", "items": { "$ref": "Session" }, "description": "The list of closed entries in reverse order that they were closed (the most recently closed tab or window will be at index <code>0</code>).The entries may contain either tabs or windows." |
+ } |
+ ] |
+ } |
+ ] |
+ }, |
+ { |
+ "name": "getDevices", |
+ "type": "function", |
+ "description": "Retrieves all devices with synced sessions.", |
+ "parameters": [ |
+ { |
+ "$ref": "Filter", |
+ "name": "filter", |
+ "optional": true |
+ }, |
+ { |
+ "type": "function", |
+ "name": "callback", |
+ "parameters": [ |
+ { |
+ "name": "devices", "type": "array", "items": { "$ref": "Device" }, "description": "The list of $ref:Device objects for each synced session, sorted in order from device with most recently modified session to device with least recently modified session. $ref:tabs.Tab objects are sorted by recency in the $ref:windows.Window of the $ref:Session objects." |
+ } |
+ ] |
+ } |
+ ] |
+ }, |
+ { |
+ "name": "restore", |
+ "type": "function", |
+ "description": "Reopens a $ref:windows.Window or $ref:tabs.Tab, with an optional callback to run when the entry has been restored.", |
+ "parameters": [ |
+ { |
+ "type": "string", |
+ "name": "sessionId", |
+ "optional": true, |
+ "description": "The $ref:windows.Window.sessionId, or $ref:tabs.Tab.sessionId to restore." |
+ }, |
+ { |
+ "type": "function", |
+ "name": "callback", |
+ "optional": true, |
+ "parameters": [ |
+ { |
+ "$ref": "Session", |
+ "name": "restoredSession", |
+ "description": "A $ref:Session containing the restored $ref:windows.Window or $ref:tabs.Tab object." |
+ } |
+ ] |
+ } |
+ ] |
+ } |
+ ], |
+ "properties": { |
+ "MAX_SESSION_RESULTS": { |
+ "value": 25, |
+ "description": "The maximum number of $ref:Session that will be included in a requested list." |
+ } |
+ } |
+ } |
+] |