Skip to content

Commit 46d7f8a

Browse files
committed
Fine tune click-to-load widget
Notably, add clickable link to open the widget in its own tab. Also, allows the URL to be text- selected so that it becomes possible to use the selection in a browser contextual menu's "Open in a new tab" option.
1 parent 54c8a0a commit 46d7f8a

File tree

3 files changed

+10
-4
lines changed

3 files changed

+10
-4
lines changed

src/css/click2load.css

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,10 @@ body {
4242
overflow: hidden;
4343
word-break: break-all;
4444
}
45-
45+
#frameURL > a {
46+
font-size: 1rem;
47+
}
48+
4649
#clickToLoad {
4750
cursor: default;
4851
margin-bottom: 1em;

src/js/click2load.js

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,8 @@ const url = new URL(self.location.href);
3434
const frameURL = url.searchParams.get('url');
3535
const frameURLElem = document.getElementById('frameURL');
3636

37-
frameURLElem.textContent = frameURL;
37+
frameURLElem.children[0].textContent = frameURL;
38+
frameURLElem.children[1].href = frameURL;
3839

3940
const onWindowResize = function() {
4041
document.body.style.width = `${self.innerWidth}px`;
@@ -47,7 +48,7 @@ self.addEventListener('resize', onWindowResize);
4748

4849
document.body.addEventListener('click', ev => {
4950
if ( ev.isTrusted === false ) { return; }
50-
//if ( ev.target === frameURLElem ) { return; }
51+
if ( ev.target.closest('#frameURL') !== null ) { return; }
5152
vAPI.messaging.send('default', {
5253
what: 'clickToLoad',
5354
frameURL,

src/web_accessible_resources/click2load.html

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,15 +6,17 @@
66
<title>uBlock Origin Click-to-Load</title>
77
<link rel="stylesheet" href="../css/themes/default.css">
88
<link rel="stylesheet" href="../css/common.css">
9+
<link rel="stylesheet" href="../css/fa-icons.css">
910
<link rel="stylesheet" href="../css/click2load.css">
1011
</head>
1112

1213
<body>
1314

1415
<span class="logo"><img src="../img/ublock.svg"></span>
1516
<span id="clickToLoad" data-i18n="clickToLoad"></span>
16-
<div id="frameURL"></div>
17+
<div id="frameURL"><span></span>&nbsp;<a class="fa-icon" href="" rel="noreferrer noopener" target="_blank">external-link</a></div>
1718

19+
<script src="../js/fa-icons.js"></script>
1820
<script src="../js/vapi.js"></script>
1921
<script src="../js/vapi-common.js"></script>
2022
<script src="../js/vapi-client.js"></script>

0 commit comments

Comments
 (0)