Command Chain Recipes
-
A chain of commands to search for the selected text on the current site in GOOGLE :
Chain Name :
Search for the highlighted on the site in GOOGLECommand 1:
Open the link in the current tabTeam Parameter:
javascript:window.open(%22http://www.google.com/search?num=100&q=site:%22%20+%20escape(location.hostname)%20+%22%20%22+encodeURIComponent(document.getSelection()));history.pushState(null, null, null);
This chain is convenient to use as a context menu item for the selected text on the page.
-
@luetage Hi, does this still works? Whenever I try it the first page to open is always a Vivaldi help menu...
-
@Farturex Which command chain are you testing?
-
@luetage Follower Tab
-
@Farturex Yes, or the page just reloads or does some other weird stuff. I can’t tell you why right now. Something has changed. Will have to investigate. Do other chains which use javascript code work for you?
-
@luetage So yes it still works? Or yes it opens the help page? Ahaha sorry didn't get which one of those is. It's the only JavaScript chain that I have. Do you need me to test some other one?
-
@Farturex Wait, I think the chain clicks the first link automatically to create the follower tab and tile it. All the other links should open in this tab then. But something goes wrong along the way. I don’t use this chain
-
@luetage Yeah it's not opening the first link. It's instead opening vivaldi help page.
Edit: Ok it kinda works. It opens the first link on page (vivaldi.com cause we're in the forums ) then selects the original tab and the new one, stacks and tile them. But then I click in any link on the mother page and a third tab opens and behaves like the follower. The first page link is in between them doing nothing. Can you help?
-
@Farturex It used to work, or I wouldn’t have posted it. The code hasn’t changed. I don’t know what goes wrong. Maybe you can play with it a little and find out more about it.
-
Add POST search
- Open Link in New Tab
Parameter:vivaldi://settings/search/
- Previous Tab (Recent)
- Open Link in Current Tab
Parameter:javascript:(function()%7Bvar%20x,i%3Bx%3Ddocument.forms%3Bfor(i%3D0%3Bi%3Cx.length%3B++i)x%5Bi%5D.method%3D%22get%22%3Balert(%22Changed%20%22%20+%20x.length%20+%20%22%20forms%20to%20use%20the%20GET%20method.%5Cn%5CnDON'T%20USE%20THE%20ALTERED%20PAGE%20NOW!%5Cn%5Cn%20-%20Right-click%20in%20the%20search%20field%5Cn%20-%20select%20%5C%22Add%20as%20search%20engine%5C%22%5Cn%20-%20Open%20%5C%22Settings%5C%22%20%3E%20%5C%22Search%5C%22%5Cn%20-%20Click%20the%20edit%20button%20for%20the%20new%20search%5Cn%20-%20Check%20%5C%22Use%20Post%5C%22%5Cn%5CnEnjoy!%22)%3B%7D)()%3B
Gives you the option to add a search engine which uses POST method to Vivaldi. All credit goes to @QuHno, who wrote the bookmarklet. Please read his blog post about it ☛ https://quhno.vivaldi.net/2017/10/20/how-to-add-search-engines-that-use-post-to-vivaldi/. This command chain does nothing more than opening search settings for your convenience and then triggering the bookmarklet on the current page. Follow directions on screen.
- Open Link in New Tab
-
Follow PiP
- Open Link in Current Tab
Parameter:
javascript:(()=>{var visible=true;document.addEventListener("visibilitychange", (e) => {visible = !visible; if (!visible){[...document.querySelectorAll('video')].filter(v => !v.paused)[0].requestPictureInPicture();return;}document.pictureInPictureElement && document.exitPictureInPicture();});history.replaceState({},"",location.href)})();
(it uses a trick posted in previously in this post to revert the url back to its state)
Purpose : if you have a video running on the page you run this, when you switch tabs it triggers the picture-in-picture so you can keep looking at the video. If you return to the source tab, the pip disables.
It has a small "drawback" : when switching tabs out, to work, one has to have interacted with the page first (one click 'anywhere' will do)
- Open Link in Current Tab
-
@MasterLeo29 It’s an interesting idea, but it doesn’t work for me for some reason. I copy/pasted the code and ran it on a page with video. Tried to switch tabs with both shortcut and clicking and pip didn’t trigger.
-
@luetage Seems odd. Did you interact with the page after pasting the code ? (the "drawback" I mentioned).
Also, was the video running ? Was on a particular website, or in any ? (I tested on Youtube and Twitch) -
@MasterLeo29 Tested on youtube. When it reacts to switching tabs it doesn’t switch tabs, fullscreens the video and shows pip as empty overlay. When closing pip manually tab switches afterwards. This is completely broken in my case. Might depend on platform. Maybe it would work better listening for
tabs.onActivated
, checking whether it’s the video tab and then either showing pip or showing original video depending on the outcome. -
@luetage That's ... very weird. Next time I work on some mod/improv, I'll try improving it. Sorry that it doesnt work for your setup
-
@MasterLeo29 Might take a look at it at some point. Automatic pip is a good idea.
-
@luetage Thanks. The idea actually came from a friend of mine. He as a few "unique" ideas that I try to implement every so often with mods.
-
@MasterLeo29 I got this to work on a newer version, don’t know what went wrong before. The required click is absolutely annoying and makes this useless. But this is not your fault of course and I doubt there is something we can do about it. The pip api is user gesture restricted and simulating a user event isn’t possible. I tried different versions as page action and also wrote some of my own, but in the end they all have the same problem.
One interesting api would be
autopictureinpicture
, which is a boolean attribute that can be set on a video. Theoretically it should go into pip when tab or app is changed and exit pip when the tab is activated again. This would make the visibility-change event listener obsolete. I didn’t get it to work though… -
@luetage Well, Im glad it ended up working for you. As for the required click, I ended up "not noticing" it during my daily use because I usually switch tabs by right click + mouse wheel, which works just fine for this (the "right click" also acts as interacting with the page, so all ended well).
About that 'autopictureinpicture', after a quick search it seems like that currently is only implemented on safari browsers (mac/iOS), so its normal that you couldnt get it to work.
Maybe soon, when I pick up some other mod, I end up finding a solution for this.
-
@MasterLeo29 Yeah, when you change tabs like that, it doesn’t matter. A context click seems to be a user gesture. But if you don’t, the click matters, because you might as well have clicked the pip button and foregone the whole automation. Another problem is that focus seems to be on the pip window when it’s being triggered. It’s hard to get this to work in an effortless manner.