mirror of
https://github.com/gorhill/uBlock.git
synced 2024-11-16 23:42:39 +01:00
869a653fdf
This commit brings the following changes to the logger: All logging output generated by injected scriptlets are now sent to the logger, the developer console will no longer be used to log scriptlet logging information. When the logger is not opened, the scriplets will not output any logging information. The goal with this new approach is to allow filter authors to more easily assess the working of scriptlets without having to go through scriptlet parameters to enable logging. Consequently all the previous ways to tell scriptlets to log information are now obsolete: if the logger is opened, the scriptlets will log information to the logger. Another benefit of this approach is that the dev tools do not need to be open to obtain scriptlets logging information. Accordingly, new filter expressions have been added to the logger: "info" and "error". Selecting the "scriptlet" expression will also keep the logging information from scriptlets. A new button has been added to the logger (not yet i18n-ed): a "volume" icon, which allows to enable verbose mode. When verbose mode is enabled, the scriptlets may choose to output more information regarding their inner working. The entries in the logger will automatically expand on mouse hover. This allows to scroll through entries which text does not fit into a single row. Clicking anywhere on an entry in the logger will open the detailed view when applicable. Generic information/errors will now be rendered regardless of which tab is currently selected in the logger (similar to how tabless entries are already being rendered).
60 lines
2.0 KiB
JavaScript
60 lines
2.0 KiB
JavaScript
/*******************************************************************************
|
|
|
|
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';
|
|
|
|
/******************************************************************************/
|
|
/******************************************************************************/
|
|
|
|
(( ) => {
|
|
|
|
/******************************************************************************/
|
|
|
|
if ( typeof vAPI !== 'object' ) { return; }
|
|
|
|
const url = new URL(self.location.href);
|
|
const actualURL = url.searchParams.get('url');
|
|
const frameURL = url.searchParams.get('aliasURL') || actualURL;
|
|
const frameURLElem = document.getElementById('frameURL');
|
|
|
|
frameURLElem.children[0].textContent = actualURL;
|
|
|
|
frameURLElem.children[1].href = frameURL;
|
|
frameURLElem.children[1].title = frameURL;
|
|
|
|
document.body.setAttribute('title', actualURL);
|
|
|
|
document.body.addEventListener('click', ev => {
|
|
if ( ev.isTrusted === false ) { return; }
|
|
if ( ev.target.closest('#frameURL') !== null ) { return; }
|
|
vAPI.messaging.send('default', {
|
|
what: 'clickToLoad',
|
|
frameURL,
|
|
}).then(ok => {
|
|
if ( ok !== true ) { return; }
|
|
self.location.replace(frameURL);
|
|
});
|
|
});
|
|
|
|
/******************************************************************************/
|
|
|
|
})();
|