diff options
Diffstat (limited to 'files/uk/mozilla/add-ons/webextensions/api/sessions/restore/index.html')
| -rw-r--r-- | files/uk/mozilla/add-ons/webextensions/api/sessions/restore/index.html | 108 |
1 files changed, 108 insertions, 0 deletions
diff --git a/files/uk/mozilla/add-ons/webextensions/api/sessions/restore/index.html b/files/uk/mozilla/add-ons/webextensions/api/sessions/restore/index.html new file mode 100644 index 0000000000..f557ad46f1 --- /dev/null +++ b/files/uk/mozilla/add-ons/webextensions/api/sessions/restore/index.html @@ -0,0 +1,108 @@ +--- +title: sessions.restore() +slug: Mozilla/Add-ons/WebExtensions/API/sessions/restore +tags: + - API + - WebExtensions + - Додатки + - Розширення +translation_of: Mozilla/Add-ons/WebExtensions/API/sessions/restore +--- +<div>{{AddonSidebar()}}</div> + +<p>Відновлює закрите вікно або вкладку. Відновлення є не просто перевідкриттям: воно також повертає історію переходів, тож кнопки вперед/назад також працюватимуть. Відновлення вікна відновить всі вкладки, які вікно мало перед закриттям.</p> + +<p>Це асинхронна функція, що повертає <code><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise">Promise</a></code>.</p> + +<h2 id="Синтаксис">Синтаксис</h2> + +<pre class="syntaxbox brush:js">var restoringSession = browser.sessions.restore( + sessionId // рядок +) +</pre> + +<h3 id="Параметри">Параметри</h3> + +<dl> + <dt><code>sessionId</code></dt> + <dd>Рядок, що містить ідентифікатор сесії для відновлення вікна чи вкладки. Його можна дістати із властивості <code>sessionId</code> об'єкта {{WebExtAPIRef("tabs.Tab", "Tab")}} чи {{WebExtAPIRef("windows.Window", "Window")}}, взятого з котрогось із об'єктів {{WebExtAPIRef("sessions.Session", "Session")}}, що їх масив вертає {{WebExtAPIRef("sessions.getRecentlyClosed()")}}.</dd> +</dl> + +<h3 id="Вертає">Вертає</h3> + +<p>Об'єкт <code><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise">Promise</a></code>. Через нього буде передано об'єкт {{WebExtAPIRef("sessions.Session", "Session")}}, що відповідатиме відновленій сесії.</p> + +<h2 id="Підтримка_веб-переглядачами">Підтримка веб-переглядачами</h2> + +<div class="hidden">Таблиця сумісності на цій сторінці створена зі структурованих даних. Якщо ви хочете долучитися до розробки цих даних, пропонуйте нам свої pull request до репозиторію <a href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a>.</div> + +<p>{{Compat("webextensions.api.sessions.restore")}}</p> + +<h2 id="Приклади">Приклади</h2> + +<p>Цей код відновлює останню завершену сессію (вікно або вкладку):</p> + +<pre class="brush: js">function restoreMostRecent(sessionInfos) { + if (!sessionInfos.length) { + console.log("No sessions found") + return; + } + let sessionInfo = sessionInfos[0]; + if (sessionInfo.tab) { + browser.sessions.restore(sessionInfo.tab.sessionId); + } else { + browser.sessions.restore(sessionInfo.window.sessionId); + } +} + +function onError(error) { + console.log(error); +} + +browser.browserAction.onClicked.addListener(function() { + var gettingSessions = browser.sessions.getRecentlyClosed({ + maxResults: 1 + }); + gettingSessions.then(restoreMostRecent, onError); +}); +</pre> + +<p>{{WebExtExamples}}</p> + +<div class="note"><strong>Подяки</strong> + +<p>Цей API ґрунтується на <a href="https://developer.chrome.com/extensions/sessions"><code>chrome.sessions</code></a> API з Chromium.</p> + +<p>Дані про сумісність з Microsoft Edge надано корпорацією Microsoft і подано тут під ліцензією Creative Commons Attribution 3.0 United States License.</p> +</div> + +<div class="hidden"> +<pre>// Copyright 2015 The Chromium Authors. All rights reserved. +// +// Redistribution and use in source and binary forms, with or without +// modification, are permitted provided that the following conditions are +// met: +// +// * Redistributions of source code must retain the above copyright +// notice, this list of conditions and the following disclaimer. +// * Redistributions in binary form must reproduce the above +// copyright notice, this list of conditions and the following disclaimer +// in the documentation and/or other materials provided with the +// distribution. +// * Neither the name of Google Inc. nor the names of its +// contributors may be used to endorse or promote products derived from +// this software without specific prior written permission. +// +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +</pre> +</div> |
