buttercup-browser-extension icon indicating copy to clipboard operation
buttercup-browser-extension copied to clipboard

Safari support

Open perry-mitchell opened this issue 6 years ago • 10 comments

Add support for Safari: https://developer.apple.com/library/content/documentation/UserExperience/Conceptual/SafariExtensionsConversionGuide/Chapters/Chrome.html

perry-mitchell avatar Jan 20 '18 21:01 perry-mitchell

So where is this available at?

muellmaa avatar May 26 '18 18:05 muellmaa

@muellmaa What do you mean? The status is "Available", as in yet-to-be-implemented.

perry-mitchell avatar May 26 '18 21:05 perry-mitchell

Things to do to make this work:

  • ~~Remove the persistent link between tabs for state sharing. This is not supported in Safari and could easily just be sendMessage()~~ (completed in #166)
  • Polyfill, on Safari only, some API calls: https://github.com/kritollm/chrome-extension-api-for-safari-and-firefox/blob/master/chromeAPISafari/chromeAPIForSafari.js

perry-mitchell avatar Jul 10 '18 07:07 perry-mitchell

Hi, is anyone interested or currently developing the safari extension for buttercup? If not I would love to try a stab at if anyone else doesn't object. or already is building a solution currently that I'm not aware of.

agustif avatar Feb 25 '19 19:02 agustif

@agustif That’d be swell! It’s not currently in development. It should be extended off of the current extension repo, perhaps using another webpack entry point if needed.

We’d really appreciate the help!

perry-mitchell avatar Feb 26 '19 15:02 perry-mitchell

Is the Safari support still planned? It's the only thing that prevents me from trying Buttercup! :)

Vinz87 avatar May 27 '19 14:05 Vinz87

Is the Safari support still planned? It's the only thing that prevents me from trying Buttercup! :)

For me the same.

Any update here?

ziulev avatar Aug 18 '20 14:08 ziulev

This issue might become irrelevant in its current form when it's possible to port web extensions to the new Safari (article). I don't think we'll bother supporting older versions of Safari if this is possible.

perry-mitchell avatar Sep 05 '20 19:09 perry-mitchell

Converting an existing web extension is easy with the Xcode cli tool safari-web-extension-converter: https://developer.apple.com/documentation/safariservices/safari_web_extensions/converting_a_web_extension_for_safari

david-shortman avatar Nov 24 '20 02:11 david-shortman

A great thing about Safari extensions based on web extensions is that the directory for the macOS code can be kept in the same repo as the extension without holding duplicate JS/manifest/other extension files. The project.pbxproj file is set up with references to the extension files when the cli converter tool is used in the repo, like so: https://github.com/david-shortman/readable/blob/main/Readable/Readable.xcodeproj/project.pbxproj#L64

david-shortman avatar Nov 24 '20 02:11 david-shortman