NOTICE: By continued use of this site you understand and agree to the binding Terms of Service and Privacy Policy.
// ==UserScript==
// @name VK.COM Video PiP
// @description Картинка в картинке у видео на vk.com (only Safari)
// @namespace http://tampermonkey.net/
// @version 0.1
// @author Flyink13
// @copyright 2018, flyink13 (https://openuserjs.org/users/flyink13)
// @license MIT
// @match https://vk.com/*
// @grant none
// ==/UserScript==
(function() {
'use strict';
window.addEventListener("mousedown", function onMouseDown() { // Отслеживаем нажатия мышкой
// Получаем нужные элементы (Видео и контекстное меню видео)
var videoContextMenu = document.querySelector('.videoplayer_context_menu');
var video = document.querySelector('.videoplayer_media_provider');
// Проверяем поддерживает ли PiP видео и браузер и не добавили ли мы уже кнопку
if (!videoContextMenu || videoContextMenu.pip || !video || typeof video.webkitSetPresentationMode !== "function") return;
// Добавляем кнопку перехода в режим PiP
var pipButton = document.createElement('div');
pipButton.className = '_item';
pipButton.textContent = 'Картинка в картинке';
pipButton.addEventListener('click', function onClickPiP() {
// по умолчанию PiP
var mode = "picture-in-picture";
// Если уже в нем, то делаем обратно
if (video.webkitPresentationMode == mode) mode = "inline";
// Переключаем режим
video.webkitSetPresentationMode(mode);
});
// Добавляем кнопку перехода в PiP и запоминаем
videoContextMenu.appendChild(pipButton);
videoContextMenu.pip = true;
});
})();