From c6bc2f5d24e898f55cc345afdfaedc4af6f615e1 Mon Sep 17 00:00:00 2001 From: amarcu5 Date: Thu, 11 May 2017 22:40:09 +0100 Subject: [PATCH] Improved Metacafe support and refactored code Moved PiP mode button left of the Full screen button in Metacafe as well as refactored code for button hover styles and Twitch button tooltip --- out/PiPer.safariextz | Bin 8263 -> 8241 bytes src/scripts/main.js | 59 ++++++++++++++++++++++--------------------- update.plist | 2 +- 3 files changed, 31 insertions(+), 30 deletions(-) diff --git a/out/PiPer.safariextz b/out/PiPer.safariextz index ab053b9adb34aa818912952a7a1aa3b5946d5e3c..68d6f27c32baf481dec7327ad80ef72da7d05b6a 100644 GIT binary patch delta 7124 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 delta 7146 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 diff --git a/src/scripts/main.js b/src/scripts/main.js index d6cd43d..ce5759c 100644 --- a/src/scripts/main.js +++ b/src/scripts/main.js @@ -5,6 +5,7 @@ * buttonClassName: (string|undefined), * buttonDidAppear: (function(): undefined|undefined), * buttonElementType: (string|undefined), + * buttonHoverStyle: (string|undefined), * buttonImage: (string|undefined), * buttonInsertBefore: (function(Element): ?Node|undefined), * buttonParent: function(): ?Element, @@ -39,11 +40,17 @@ const addButton = function(/** Element */ parent) { const image = document.createElement('img'); image.src = safari.extension.baseURI + 'images/' + (currentResource.buttonImage || 'default') + '.svg'; - image.style.cssText = 'width:100%;height:100%'; - if (currentResource.buttonScale) image.style.cssText += ';transform:scale(' + currentResource.buttonScale + ')'; - + image.style.width = image.style.height = '100%'; + if (currentResource.buttonScale) image.style.transform = 'scale(' + currentResource.buttonScale + ')'; button.appendChild(image); + if (currentResource.buttonHoverStyle) { + const style = document.createElement('style'); + const css = '#' + BUTTON_ID + ':hover{' + currentResource.buttonHoverStyle + '}'; + style.appendChild(document.createTextNode(css)); + button.appendChild(style); + } + button.addEventListener('click', function(event) { event.preventDefault(); @@ -82,11 +89,7 @@ const buttonObserver = function() { const resources = { 'amazon': { - buttonDidAppear: function() { - const style = document.createElement('style'); - style.appendChild(document.createTextNode('#' + BUTTON_ID + ':hover{opacity:1!important}')); - document.getElementById(BUTTON_ID).appendChild(style); - }, + buttonHoverStyle: 'opacity:1!important', buttonInsertBefore: function(/** Element */ parent) { return parent.querySelector('.fullscreenButtonWrapper'); }, @@ -117,11 +120,7 @@ const resources = { }, 'curiositystream': { - buttonDidAppear: function() { - const style = document.createElement('style'); - style.appendChild(document.createTextNode('#' + BUTTON_ID + ':hover{opacity:1!important}')); - document.getElementById(BUTTON_ID).appendChild(style); - }, + buttonHoverStyle: 'opacity:1!important', buttonInsertBefore: function(/** Element */ parent) { return parent.lastChild; }, @@ -186,12 +185,14 @@ const resources = { 'metacafe': { buttonElementType: 'div', + buttonInsertBefore: function(/** Element */ parent) { + return parent.lastChild; + }, buttonParent: function() { const e = document.getElementById('player_place'); return e && e.querySelector('.tray'); }, - buttonScale: 0.9, - buttonStyle: 'left:-2px', + buttonScale: 0.85, videoElement: function() { const e = document.getElementById('player_place'); return e && e.querySelector('video'); @@ -245,11 +246,7 @@ const resources = { 'plex': { buttonClassName: 'btn-link', - buttonDidAppear: function() { - const style = document.createElement('style'); - style.appendChild(document.createTextNode('#' + BUTTON_ID + ':hover{opacity:1!important}')); - document.getElementById(BUTTON_ID).appendChild(style); - }, + buttonHoverStyle: 'opacity:1!important', buttonParent: function() { const e = document.getElementById('plex'); return e && e.querySelector('.player-dropups-container.video-controls-right'); @@ -279,16 +276,20 @@ const resources = { buttonClassName: 'player-button', buttonDidAppear: function() { const button = document.getElementById(BUTTON_ID); - const style = document.createElement('style'); - const span = /** @type {HTMLElement} */ (document.createElement('span')); - span.className = 'player-tip js-control-tip'; - span.style.cssText = 'margin-left:-14em'; - span.dataset['tip'] = button.title; - style.appendChild(document.createTextNode('#' + BUTTON_ID + ' img:hover{filter:brightness(50%)sepia(1)hue-rotate(219deg)saturate(117%)brightness(112%)}')); - button.appendChild(style); - button.appendChild(span); - button.title = ''; + const neighbourTooltip = /** @type {HTMLElement} */ (button.nextSibling.querySelector('.player-tip')); + const /** string */ previousTitle = neighbourTooltip.dataset['tip']; + button.addEventListener('mouseover', function(e){ + neighbourTooltip.dataset['tip'] = button.title; + neighbourTooltip.style.display = 'block'; + button.title = ''; + }); + button.addEventListener('mouseout', function(e){ + neighbourTooltip.style.display = ''; + button.title = neighbourTooltip.dataset['tip']; + neighbourTooltip.dataset['tip'] = previousTitle; + }); }, + buttonHoverStyle: 'filter:brightness(50%)sepia(1)hue-rotate(219deg)saturate(117%)brightness(112%)', buttonInsertBefore: function(/** Element */ parent) { return parent.querySelector('.player-button--fullscreen'); }, diff --git a/update.plist b/update.plist index 6d213bd..5abd070 100644 --- a/update.plist +++ b/update.plist @@ -10,7 +10,7 @@ CFBundleShortVersionString 0.1.3 CFBundleVersion - 21 + 23 Developer Identifier BQ6Q24MF9X URL