mirror of
https://git.axenov.dev/mirrors/cursor-free-vip.git
synced 2026-01-14 05:47:47 +00:00
Big Change Update
This commit is contained in:
68
uBlock0.chromium/js/dom-inspector.js
Normal file
68
uBlock0.chromium/js/dom-inspector.js
Normal file
@@ -0,0 +1,68 @@
|
||||
/*******************************************************************************
|
||||
|
||||
uBlock Origin - a comprehensive, efficient content blocker
|
||||
Copyright (C) 2014-present Raymond Hill
|
||||
|
||||
This program is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see {http://www.gnu.org/licenses/}.
|
||||
|
||||
Home: https://github.com/gorhill/uBlock
|
||||
*/
|
||||
|
||||
'use strict';
|
||||
|
||||
/******************************************************************************/
|
||||
/******************************************************************************/
|
||||
|
||||
const svgRoot = document.querySelector('svg');
|
||||
let inspectorContentPort;
|
||||
|
||||
const shutdown = ( ) => {
|
||||
inspectorContentPort.close();
|
||||
inspectorContentPort.onmessage = inspectorContentPort.onmessageerror = null;
|
||||
inspectorContentPort = undefined;
|
||||
};
|
||||
|
||||
const contentInspectorChannel = ev => {
|
||||
const msg = ev.data || {};
|
||||
switch ( msg.what ) {
|
||||
case 'quitInspector': {
|
||||
shutdown();
|
||||
break;
|
||||
}
|
||||
case 'svgPaths': {
|
||||
const paths = svgRoot.children;
|
||||
paths[0].setAttribute('d', msg.paths[0]);
|
||||
paths[1].setAttribute('d', msg.paths[1]);
|
||||
paths[2].setAttribute('d', msg.paths[2]);
|
||||
paths[3].setAttribute('d', msg.paths[3]);
|
||||
break;
|
||||
}
|
||||
default:
|
||||
break;
|
||||
}
|
||||
};
|
||||
|
||||
// Wait for the content script to establish communication
|
||||
globalThis.addEventListener('message', ev => {
|
||||
const msg = ev.data || {};
|
||||
if ( msg.what !== 'startInspector' ) { return; }
|
||||
if ( Array.isArray(ev.ports) === false ) { return; }
|
||||
if ( ev.ports.length === 0 ) { return; }
|
||||
inspectorContentPort = ev.ports[0];
|
||||
inspectorContentPort.onmessage = contentInspectorChannel;
|
||||
inspectorContentPort.onmessageerror = shutdown;
|
||||
inspectorContentPort.postMessage({ what: 'startInspector' });
|
||||
}, { once: true });
|
||||
|
||||
/******************************************************************************/
|
||||
Reference in New Issue
Block a user