Show HN: A browser extension to use picture-in-picture with any website
Hello everybody! I created a browser extension called TabFloater, which can replicate the picture-in-picture functionality with any website. It moves a chosen tab into a smaller window, which is going to remain always on top, so you can interact with both websites at the same time.<p>This is my very first post on HN. I have been working on this pet project for a bit over a year now. The motivation for it was simple: because I use my browser in a single, fully maximized window, many times I found myself switching back and forth between two tabs, for example to copy something from one website and use it on another. I know there are many extensions that can rearrange tabs for you, but I wanted something a little bit different. I really liked how picture-in-picture works for videos - I wanted to do the same!<p>Easy enough, I thought. I just need to create a new browser window, move the given tab into it, then... I just need to make it always on top. Right? Well, turns out, the browser API doesn&#x27;t allow you to do that. So after a lot of trial end error, I came up with a way to achieve it: I implemented a small app in C++ that can manipulate the browser window and set the always-on-top property. Then &quot;all I needed&quot; was to hook it up with the browser extension and voila.<p>I also implemented a feature I call &quot;Smart positioning&quot;: if you enable it, the extension will analyze the DOM structure of a given site and tries to identify the largest empty area and puts the floating tab there. This way, it doesn&#x27;t cover up any text, pictures or videos. It more or less works :)<p>Sounds pretty simple, but I spent a LOT of time trying out different things. I use Linux, so naturally I implemented it for that platform first, but I knew it would never be useful for other people if there wasn&#x27;t a Windows version as well - so I did that too. I worked on this project on evenings and weekends, and I learned a lot. This was my first proper pet project and I&#x27;m really glad I was able to see it through!<p>The extension is available for Chrome and Firefox, and you can use it on Windows and most Linux distros. The native application doesn&#x27;t have an OS&#x2F;X version - sorry :) I don&#x27;t own a Mac and I don&#x27;t know anything about the Apple ecosystem. I&#x27;m looking for help in that department, if you&#x27;re interested! :)<p>Reminder: in addition to the browser extension, you must also install the native application (called Companion).<p>Site: <a href="https:&#x2F;&#x2F;www.tabfloater.io&#x2F;" rel="nofollow">https:&#x2F;&#x2F;www.tabfloater.io&#x2F;</a><p>GitHub: <a href="https:&#x2F;&#x2F;github.com&#x2F;tabfloater&#x2F;tabfloater" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;tabfloater&#x2F;tabfloater</a><p>Chrome Web Store: <a href="https:&#x2F;&#x2F;chrome.google.com&#x2F;webstore&#x2F;detail&#x2F;iojgbjjdoanmhcmmihbapiejfbbadhjd" rel="nofollow">https:&#x2F;&#x2F;chrome.google.com&#x2F;webstore&#x2F;detail&#x2F;iojgbjjdoanmhcmmih...</a><p>Firefox Addon: <a href="https:&#x2F;&#x2F;addons.mozilla.org&#x2F;en-US&#x2F;firefox&#x2F;addon&#x2F;tabfloater&#x2F;" rel="nofollow">https:&#x2F;&#x2F;addons.mozilla.org&#x2F;en-US&#x2F;firefox&#x2F;addon&#x2F;tabfloater&#x2F;</a><p>Thanks!