16 comments

  • orenlindsey 3 months ago

    Just thought you might know - Apple added a new feature in the latest MacOS update that does the same thing. It's called Video Viewer and you can turn it on when a video is playing by clicking the icon that looks like the rectangle with two lines under it.

    Yours is seamless and you don't have to turn it on every time, though.

    • whatsthatabout 3 months ago

      Hey man, yeah I actually saw that! Before this I used another safari extension for it but I thought I could automate it - born was AutoPiP!

  • nosequel 3 months ago

    Amazon has prior art on AutoPIP

  • whatsthatabout 3 months ago

    As stated in the readme, this is my first coding project using Swift and Xcode. As a beginner, I welcome any help, suggestions, or contributions to improve the code and functionality!

    • CharlesW 3 months ago

      Nice work! As someone who's about to try their hand at their first Safari extension (and first web extension period, something in the spirit of Tabs Outliner), do you have any tips or tricks you could share?

      • whatsthatabout 3 months ago

        I read a lot online and of course LLMs can probably help you there. I would suggest if it's nothing macOS/safari specific you want to build, start using chrome and develop the extension for it first. If you want to add safari to the list of supported browser later, you can easily adapt the code (as long as safari supports the apis for it).

    • bsimpson 3 months ago

      I'm surprised to see native code in a web extension.

      • dangus 3 months ago

        Safari doesn’t use the same extension architecture as Chrome and Firefox.

        https://developer.apple.com/documentation/SafariServices/saf...

        • whatsthatabout 3 months ago

          Thats true, but in the end the web extension itself can work with all browsers (if the apis are implemented of course). AutoPiP for example would work without any modifications in chrome/firefox but they implement their own PiP api so it doesn't activate the macOS native one...

  • ko3us 3 months ago

    Why do you need to have a lot of permissions for the extension?

    This extension would be able to read and alter web pages and see your browsing history on this website. This could include sensitive information, including passwords, phone numbers and credit cards.

    You can change this later in the Websites section of Safari Settings.

    • whatsthatabout 3 months ago

      Hi, I added a part to the GitHub repo explaining this, basically its this:

      - The extension requires permission to "Access all websites" solely to detect video players and enable Picture-in-Picture functionality across different websites

      - No data is collected, stored, or shared with third parties

      - All functionality operates locally on your device

  • cpressland 3 months ago

    This is amazing - I’ve not had a chance to test this yet but if it works as described then this is something I’ve been needing without realising it.

    Hopefully you’ll be able to get this on the Mac App Store at some point, I’d gladly pay for this.

    Edit: alternatively Homebrew / Nix.

  • kelvinjps10 3 months ago

    I thought this was the default for all browsers

    • 3 months ago
      [deleted]