App: Floating: Picture in Picture
Developer: Pranoy Chowdhury
Genres: Productivity, Utilities

Floating is a very simple yet powerful app which lets you picture in picture (pin/stick/float) as many videos or photos on top of all windows. 

YouTube, YouTube playlists, Netflix, Vimeo, Twitch.TV*, Prime Video, Bitchute, Rumble, Odysee, Dailymotion, Video files and photos are supported.

Simple steps:

- Tap the menu bar icon and manually enter the urls.

- To float the link from the front most browser's tab, use shortcut: Control + Shift + Command + 9.

+ 8 will close it

This method relies on AppleScript to work and only supports Safari, Chrome, Brave and Opera. Firefox doesn't have proper AppleScript support. First time using this shortcut, MacOS will ask for permission to read browser's URL for privacy and security reasons. All this happens locally and is not logged anywhere from the app

OR drag video links or images into the menu bar icon or use the shortcut method:

- Copy as many video links or images or online image links to your clipboard. Alternatively you can take a screenshot or portion screenshot and put it in your clipboard using Control + Shift + Command + 4.

- Use the shortcut: Control + Shift + Command + 0
to float the items from clipboard always on top of all windows.

- Command+Control+Shit+M to hide/minimize/maximize the floating windows.

- You can scroll up or down on the floating window's top area to change transparency. Windows can be resized too and they maintain the image's aspect ratio.

- Use pinch to zoom (resize the window)

- Double tap the photo or top of a video window to zoom

--

Btw, if you aren't aware of MacOS shortcuts for screenshots, there are multiple ways to take them:

1. To take a screenshot of the full screen, press and hold these three keys together: Shift, Command and 3

2. To take a screenshot of a portion of the screen by selecting the area, press and hold these three keys together: Shift, Command and 4

3. To capture a window or menu, open the window or menu that you want to capture. Press and hold these keys together: Shift, Command, 4 and Space bar. The pointer changes to a camera icon

4. In any of the above methods, instead of saving the screenshot, if you want to copy the screenshot directly to the Clipboard, press and hold the Control key while you take the screenshot with the above steps.

I use Control + Shift + Command + 4 often in my workflow.

---------

I offer an ad and analytics free and simple app for the absolute best experience for my users. If you are finding my app useful, please leave me a positive rating on the app store as that helps get the word out to others!

If you have any feedback or feature requests or any other video platform which you would like to be added, please email Pran at:

pran@pranapps.com

------

IMPORTANT REGARDING TWITCH & YouTube:

Twitch has recently started showing a purple screen with note about third party tools every 5 minutes for 2 minutes. This is beyond my control. I found many other developers complaining about this too on Twitch's own forums:

https://discuss.dev.twitch.tv/t/getting-a-message-on-my-embeds-that-goes-away-after-a-while/29592/31

The response by Twitch staff "jbulava" seems to indicate that this is intentional and they intentionally cause this breaking change on embeds: "...it’s effect on the Twitch viewing experience, but showing the message in all embeds was the intended effect in order to address it."

This is quite disappointing. I will have to wait for Twitch to see if they decide to change this policy as they are intentionally breaking developer tools. Until then, I can't do anything to get around it for Twitch URLs. 

As a workaround for twitch to work - you can enable the "Use browser instead of embeder" setting by clicking my app's menu bar icon. This is also useful for certain YouTube URLs when embedding is disabled.

------

The idea for this app was inspired by this Reddit post:

https://www.reddit.com/r/AppIdeas/comments/g1usmh/screen_select_tool_floating_and_adjustable_in_size/

Release notes:
- Added a new "History" option in the menu bar drop down. The app will remember the last 100 links for easy access.
- Fixed a bug with Rumble videos not working.

I offer an ad and analytics free and simple app for the absolute best experience for my users. If you are finding my app useful, please support me by purchasing the one time only in app purchase and you can also leave me a positive rating on the app store as that helps get the word out to others!
I improve my apps based on user feedback. If you have any feedback or feature requests or any other video platform which you would like to be added, please email Pran at:
pran@pranapps.com

----

Previous:

- The app now remembers the previous location and size of the window and opens new window with same size and location. This can be disabled with new setting "Don't use previously saved window location and size"
- Added support for Prime Video
- Fixed a bug where content wasn't playing as well as playlist links weren't working.
- Added a useful new setting "Cursor hover hole & pass through activated with Option ⌥ key press". This is OFF by default and you will manually need to switch it ON. Switching it ON makes it so that the hole mask and pass through click can be toggled by pressing the option key on your keyboard.
- Now you can use the "Share" menu in browser to open the browser link in a floating window.
- Fixed a bug where YouTube videos were using the "browser" mode instead of embedder even when "Use browser instead of embedder" was disabled.
- The "enter link manually" button has been removed. This option is available in the "Settings" button on top right of a floating window as "Manually enter URL".
- Changed icon for the settings button and it's grey in color until hovered. Hope this is less distracting.
- New Control + Shift + Command + 8 shortcut in a browser opens the front tab as well as closes the front tab of the browser.
-  The app now supports Safari Technology Preview too for "float from front browser" shortcut.
- New setting to enable "Resize freely". When enabled, the floating window can be resized without the aspect ratio. This is off by default.
- Now you can enter the URL directly in the app without requiring a browser opened first. You can either click the menu bar icon and pick "Manually enter URL" and enter multiple URLs. Or if you already have a floating window opened WITH a website opened, you can tap the new blue link icon on the top left (next to the close/min/max buttons) and enter a single url there to open the link in the current window.
- New "Use browser instead of embeder" setting which is useful for platforms like YouTube and Twitch which disable embedding on some videos. If you are getting an error from the webpage, try this setting.

- Note regarding Twitch.TV links: Twitch has recently started showing a purple screen with note about third party tools every 5 minutes for 2 minutes. This is beyond my control. I found many other developers complaining about this too on Twitch's own forums:
https://discuss.dev.twitch.tv/t/getting-a-message-on-my-embeds-that-goes-away-after-a-while/29592/31
The response by Twitch staff "jbulava" seems to indicate that this is intentional and they intentionally cause this breaking change on embeds: "...it’s effect on the Twitch viewing experience, but showing the message in all embeds was the intended effect in order to address it."
This is quite disappointing. I will have to wait for Twitch to see if they decide to change this policy as they are intentionally breaking developer tools. Until then, I can't do anything to get around it for Twitch URLs. As a workaround - you can enable the "Use browser instead of embeder" setting by clicking my app's menu bar icon.