// ==UserScript== // @name Diggy's Adventure - Game in full window // @version 1.2 // @description Remove useless widgets/panels in Diggy's Adventure (for Facebook) // @author Vins // @match https://diggysadventure.com/miner/* // @match https://apps.facebook.com/diggysadventure/* // @match https://portal.pixelfederation.com/_da/miner/* // @match https://portal.pixelfederation.com/*/diggysadventure/* // @grant none // @namespace https://greasyfork.org/users/98672 // @downloadURL none // ==/UserScript== (function() { 'use strict'; function forceResize() { window.dispatchEvent(new Event('resize')); } function getById(id) { return document.getElementById(id); } function iterate(el, fn) { if(el) if(typeof el.length == "number") { for(var i = el.length - 1; i >= 0; i--) { iterate(el[i], fn); } } else { fn(el); } } var resize, elements; if(getById("miner")) { // inner IFRAME has a "miner" object // display news in a floating box iterate(document.getElementsByClassName("news"), function(el) { if(el && el.style) { el.style.position="fixed"; } }); elements = [document.getElementsByClassName("header-menu"), document.getElementsByClassName("cp_banner bottom_banner"), getById("bottom_news"), getById("footer"), getById("gems_banner")]; resize = function() { var t = getById("miner"); if(t) t.height = window.innerHeight; }; } else if(getById("skrollr-body")) { document.body.style.overflowY = "hidden"; // remove vertical scrollbar elements = [getById("header"), getById("footer")]; resize = function() { var t = document.getElementsByClassName("game-iframe game-iframe--da")[0]; if(t) t.style.height = window.innerHeight + "px"; }; } else { // main document (Facebook) document.body.style.overflowY = "hidden"; // remove vertical scrollbar elements = [getById("rightCol"),getById("pagelet_bluebar"),getById("pagelet_dock")]; resize = function() { var t = getById("iframe_canvas"); if(t) t.style.height = window.innerHeight + "px"; }; } iterate(elements, function(el) { if(el && el.style) { el.style.display = "none"; } }); if(resize) { window.addEventListener("resize", resize); setTimeout(forceResize, 2000); setTimeout(forceResize, 5000); } })();